diff options
| author | Robert Watson <rwatson@FreeBSD.org> | 2001-01-09 05:45:03 +0000 |
|---|---|---|
| committer | Robert Watson <rwatson@FreeBSD.org> | 2001-01-09 05:45:03 +0000 |
| commit | 2137646abe4ae6c1bd9758ea36366d102178e549 (patch) | |
| tree | f75b0061b83bc71007bfb9b6c73e1bad13d77ceb /lib/libc | |
| parent | 5db6984b120b62307be2b7a4284f5c4a6867df71 (diff) | |
Notes
Diffstat (limited to 'lib/libc')
| -rw-r--r-- | lib/libc/posix1e/acl_from_text.c | 5 | ||||
| -rw-r--r-- | lib/libc/posix1e/acl_to_text.c | 29 |
2 files changed, 10 insertions, 24 deletions
diff --git a/lib/libc/posix1e/acl_from_text.c b/lib/libc/posix1e/acl_from_text.c index 72e2f96c9d5e..d4d9986d7808 100644 --- a/lib/libc/posix1e/acl_from_text.c +++ b/lib/libc/posix1e/acl_from_text.c @@ -117,15 +117,12 @@ acl_from_text(const char *buf_p) /* Local copy we can mess up. */ mybuf_p = strdup(buf_p); - if (!mybuf_p) { - errno = ENOMEM; + if (!mybuf_p) return(0); - } acl = acl_init(3); if (!acl) { free(mybuf_p); - errno = ENOMEM; return(0); } diff --git a/lib/libc/posix1e/acl_to_text.c b/lib/libc/posix1e/acl_to_text.c index 0dc3058fbff0..bb5a546fd073 100644 --- a/lib/libc/posix1e/acl_to_text.c +++ b/lib/libc/posix1e/acl_to_text.c @@ -60,6 +60,8 @@ acl_to_text(acl_t acl, ssize_t *len_p) acl_perm_t ae_perm, effective_perm, mask_perm; buf = strdup(""); + if (!buf) + return(0); mask_perm = ACL_PERM_BITS; /* effective is regular if no mask */ for (i = 0; i < acl->acl_cnt; i++) @@ -79,10 +81,8 @@ acl_to_text(acl_t acl, ssize_t *len_p) goto error_label; len = asprintf(&tmpbuf, "%suser::%s\n", buf, perm_buf); - if (len == -1) { - errno = ENOMEM; + if (len == -1) goto error_label; - } free(buf); buf = tmpbuf; break; @@ -113,10 +113,8 @@ acl_to_text(acl_t acl, ssize_t *len_p) len = asprintf(&tmpbuf, "%suser:%s:%s\n", buf, name_buf, perm_buf); } - if (len == -1) { - errno = ENOMEM; + if (len == -1) goto error_label; - } free(buf); buf = tmpbuf; break; @@ -141,10 +139,8 @@ acl_to_text(acl_t acl, ssize_t *len_p) len = asprintf(&tmpbuf, "%sgroup::%s\n", buf, perm_buf); } - if (len == -1) { - errno = ENOMEM; + if (len == -1) goto error_label; - } free(buf); buf = tmpbuf; break; @@ -174,10 +170,8 @@ acl_to_text(acl_t acl, ssize_t *len_p) len = asprintf(&tmpbuf, "%sgroup:%s:%s\n", buf, name_buf, perm_buf); } - if (len == -1) { - errno = ENOMEM; + if (len == -1) goto error_label; - } free(buf); buf = tmpbuf; break; @@ -190,10 +184,8 @@ acl_to_text(acl_t acl, ssize_t *len_p) len = asprintf(&tmpbuf, "%smask::%s\n", buf, perm_buf); - if (len == -1) { - errno = ENOMEM; + if (len == -1) goto error_label; - } free(buf); buf = tmpbuf; break; @@ -206,18 +198,15 @@ acl_to_text(acl_t acl, ssize_t *len_p) len = asprintf(&tmpbuf, "%sother::%s\n", buf, perm_buf); - if (len == -1) { - errno = ENOMEM; + if (len == -1) goto error_label; - } free(buf); buf = tmpbuf; break; default: - free(buf); errno = EINVAL; - return (0); + goto error_label; } } |
