From 6452c2e85d04e3efcaffbbd49b4c693d65e8c0ef Mon Sep 17 00:00:00 2001 From: jedgar Date: Thu, 21 Feb 2002 23:13:06 +0000 Subject: Add more argument checking Reviewed by: rwatson Obtained from: TrustedBSD Project --- lib/libc/posix1e/acl_set.c | 4 ++++ lib/libc/posix1e/acl_valid.c | 13 +++++++++++++ 2 files changed, 17 insertions(+) (limited to 'lib/libc/posix1e') diff --git a/lib/libc/posix1e/acl_set.c b/lib/libc/posix1e/acl_set.c index 6b7dded..39fa3a9 100644 --- a/lib/libc/posix1e/acl_set.c +++ b/lib/libc/posix1e/acl_set.c @@ -51,6 +51,10 @@ acl_set_file(const char *path_p, acl_type_t type, acl_t acl) { int error; + if (acl == NULL || path_p == NULL) { + errno = EINVAL; + return (-1); + } if (_posix1e_acl(acl, type)) { error = _posix1e_acl_sort(acl); if (error) { diff --git a/lib/libc/posix1e/acl_valid.c b/lib/libc/posix1e/acl_valid.c index 6eaa6ac..e8d2df7 100644 --- a/lib/libc/posix1e/acl_valid.c +++ b/lib/libc/posix1e/acl_valid.c @@ -34,6 +34,7 @@ #include #include "un-namespace.h" #include +#include #include "acl_support.h" @@ -54,6 +55,10 @@ acl_valid(acl_t acl) { int error; + if (acl == NULL) { + errno = EINVAL; + return (-1); + } _posix1e_acl_sort(acl); error = _posix1e_acl_check(acl); if (error) { @@ -70,6 +75,10 @@ acl_valid_file_np(const char *pathp, acl_type_t type, acl_t acl) { int error; + if (pathp == NULL || acl == NULL) { + errno = EINVAL; + return (-1); + } if (_posix1e_acl(acl, type)) { error = _posix1e_acl_sort(acl); if (error) { @@ -87,6 +96,10 @@ acl_valid_fd_np(int fd, acl_type_t type, acl_t acl) { int error; + if (acl == NULL) { + errno = EINVAL; + return (-1); + } if (_posix1e_acl(acl, type)) { error = _posix1e_acl_sort(acl); if (error) { -- cgit v1.1