summaryrefslogtreecommitdiff
path: root/lib/libpam/openpam_impl.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libpam/openpam_impl.h')
-rw-r--r--lib/libpam/openpam_impl.h39
1 files changed, 24 insertions, 15 deletions
diff --git a/lib/libpam/openpam_impl.h b/lib/libpam/openpam_impl.h
index c533acb77572..589a3b325539 100644
--- a/lib/libpam/openpam_impl.h
+++ b/lib/libpam/openpam_impl.h
@@ -32,7 +32,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: openpam_impl.h 648 2013-03-05 17:54:27Z des $
+ * $Id: openpam_impl.h 915 2017-02-07 12:03:19Z des $
*/
#ifndef OPENPAM_IMPL_H_INCLUDED
@@ -130,19 +130,28 @@ struct pam_handle {
/*
* Internal functions
*/
-int openpam_configure(pam_handle_t *, const char *);
-int openpam_dispatch(pam_handle_t *, int, int);
-int openpam_findenv(pam_handle_t *, const char *, size_t);
-pam_module_t *openpam_load_module(const char *);
-void openpam_clear_chains(pam_chain_t **);
-
-int openpam_check_desc_owner_perms(const char *, int);
-int openpam_check_path_owner_perms(const char *);
+int openpam_configure(pam_handle_t *, const char *)
+ OPENPAM_NONNULL((1));
+int openpam_dispatch(pam_handle_t *, int, int)
+ OPENPAM_NONNULL((1));
+int openpam_findenv(pam_handle_t *, const char *, size_t)
+ OPENPAM_NONNULL((1,2));
+pam_module_t *openpam_load_module(const char *)
+ OPENPAM_NONNULL((1));
+void openpam_clear_chains(pam_chain_t **)
+ OPENPAM_NONNULL((1));
+
+int openpam_check_desc_owner_perms(const char *, int)
+ OPENPAM_NONNULL((1));
+int openpam_check_path_owner_perms(const char *)
+ OPENPAM_NONNULL((1));
#ifdef OPENPAM_STATIC_MODULES
-pam_module_t *openpam_static(const char *);
+pam_module_t *openpam_static(const char *)
+ OPENPAM_NONNULL((1));
#endif
-pam_module_t *openpam_dynamic(const char *);
+pam_module_t *openpam_dynamic(const char *)
+ OPENPAM_NONNULL((1));
#define FREE(p) \
do { \
@@ -152,11 +161,11 @@ pam_module_t *openpam_dynamic(const char *);
#define FREEV(c, v) \
do { \
- while (c) { \
- --(c); \
- FREE((v)[(c)]); \
+ if ((v) != NULL) { \
+ while ((c)-- > 0) \
+ FREE((v)[(c)]); \
+ FREE(v); \
} \
- FREE(v); \
} while (0)
#include "openpam_constants.h"