summaryrefslogtreecommitdiffstats
path: root/contrib/openbsm/bsm/libbsm.h
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/openbsm/bsm/libbsm.h')
-rw-r--r--contrib/openbsm/bsm/libbsm.h27
1 files changed, 20 insertions, 7 deletions
diff --git a/contrib/openbsm/bsm/libbsm.h b/contrib/openbsm/bsm/libbsm.h
index 5fea48c..34d9dbc 100644
--- a/contrib/openbsm/bsm/libbsm.h
+++ b/contrib/openbsm/bsm/libbsm.h
@@ -26,7 +26,7 @@
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
- * $P4: //depot/projects/trustedbsd/openbsm/bsm/libbsm.h#27 $
+ * $P4: //depot/projects/trustedbsd/openbsm/bsm/libbsm.h#29 $
*/
#ifndef _LIBBSM_H_
@@ -37,9 +37,6 @@
* solely to allow OpenSSH to compile; Darwin/Apple code should not use them.
*/
-#define AUDIT_MAX_ARGS 10
-#define AUDIT_MAX_ENV 10
-
#include <sys/types.h>
#include <sys/cdefs.h>
@@ -55,13 +52,25 @@
#include <mach/mach.h> /* audit_token_t */
#endif
-#define AU_PRS_SUCCESS 1
-#define AU_PRS_FAILURE 2
-#define AU_PRS_BOTH (AU_PRS_SUCCESS|AU_PRS_FAILURE)
+/*
+ * Size parsed token vectors for execve(2) arguments and environmental
+ * variables. Note: changing these sizes affects the ABI of the token
+ * structure, and as the token structure is often placed in the caller stack,
+ * this is undesirable.
+ */
+#define AUDIT_MAX_ARGS 128
+#define AUDIT_MAX_ENV 128
+/*
+ * Arguments to au_preselect(3).
+ */
#define AU_PRS_USECACHE 0
#define AU_PRS_REREAD 1
+#define AU_PRS_SUCCESS 1
+#define AU_PRS_FAILURE 2
+#define AU_PRS_BOTH (AU_PRS_SUCCESS|AU_PRS_FAILURE)
+
#define AUDIT_EVENT_FILE "/etc/security/audit_event"
#define AUDIT_CLASS_FILE "/etc/security/audit_class"
#define AUDIT_CONTROL_FILE "/etc/security/audit_control"
@@ -71,6 +80,7 @@
#define MINFREE_CONTROL_ENTRY "minfree"
#define FLAGS_CONTROL_ENTRY "flags"
#define NA_CONTROL_ENTRY "naflags"
+#define POLICY_CONTROL_ENTRY "policy"
#define AU_CLASS_NAME_MAX 8
#define AU_CLASS_DESC_MAX 72
@@ -711,11 +721,14 @@ int getacdir(char *name, int len);
int getacmin(int *min_val);
int getacflg(char *auditstr, int len);
int getacna(char *auditstr, int len);
+int getacpol(char *auditstr, size_t len);
int getauditflagsbin(char *auditstr, au_mask_t *masks);
int getauditflagschar(char *auditstr, au_mask_t *masks,
int verbose);
int au_preselect(au_event_t event, au_mask_t *mask_p,
int sorf, int flag);
+ssize_t au_poltostr(long policy, size_t maxsize, char *buf);
+int au_strtopol(const char *polstr, long *policy);
/*
* Functions relating to querying audit event information.
OpenPOWER on IntegriCloud