summaryrefslogtreecommitdiff
path: root/usr/src/lib/libsecdb/common
diff options
context:
space:
mode:
authorjeanm <none@none>2006-11-27 13:19:44 -0800
committerjeanm <none@none>2006-11-27 13:19:44 -0800
commitd3186a0ed1990f6e0670c8e5b9b730e73984d3f5 (patch)
tree69a87857507a553bdf5e6ea1df586b25d25cd4a5 /usr/src/lib/libsecdb/common
parent2f1c59b18b4820d3f912c5465e37c28a93f9a5be (diff)
downloadillumos-joyent-d3186a0ed1990f6e0670c8e5b9b730e73984d3f5.tar.gz
5079387 _get_auth_policy() doesn't provide corresponding free function
6197467 svccfg segfaults on unmatched ( 6464928 *librestart* leaks memory in restarter_get_method_context()
Diffstat (limited to 'usr/src/lib/libsecdb/common')
-rw-r--r--usr/src/lib/libsecdb/common/chkauthattr.c17
-rw-r--r--usr/src/lib/libsecdb/common/mapfile-vers1
2 files changed, 12 insertions, 6 deletions
diff --git a/usr/src/lib/libsecdb/common/chkauthattr.c b/usr/src/lib/libsecdb/common/chkauthattr.c
index 9792f42164..5b9a05c1d3 100644
--- a/usr/src/lib/libsecdb/common/chkauthattr.c
+++ b/usr/src/lib/libsecdb/common/chkauthattr.c
@@ -2,9 +2,8 @@
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
+ * Common Development and Distribution License (the "License").
+ * You may not use this file except in compliance with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* or http://www.opensolaris.org/os/licensing.
@@ -20,7 +19,7 @@
* CDDL HEADER END
*/
/*
- * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -236,6 +235,13 @@ _get_auth_policy(char **def_auth, char **def_prof)
return (0);
}
+void
+_free_auth_policy(char *def_auth, char *def_prof)
+{
+ free(def_auth);
+ free(def_prof);
+}
+
/*
* read /etc/security/policy.conf for AUTHS_GRANTED.
* return 1 if found matching authname.
@@ -264,7 +270,6 @@ _chk_policy_auth(const char *authname, char **chkedprof, int *chkedprof_cnt)
ret = 0;
exit:
- free(auths);
- free(profs);
+ _free_auth_policy(auths, profs);
return (ret);
}
diff --git a/usr/src/lib/libsecdb/common/mapfile-vers b/usr/src/lib/libsecdb/common/mapfile-vers
index 63e8c70206..a6490cb988 100644
--- a/usr/src/lib/libsecdb/common/mapfile-vers
+++ b/usr/src/lib/libsecdb/common/mapfile-vers
@@ -64,6 +64,7 @@ SUNWprivate_1.1 {
_csl_to_argv;
_do_unescape;
_free_argv;
+ _free_auth_policy;
_get_auth_policy;
_insert2kva;
_kva2str;