summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul M Roberts <Paul.M.Roberts@Sun.COM>2009-07-30 16:15:07 +0100
committerPaul M Roberts <Paul.M.Roberts@Sun.COM>2009-07-30 16:15:07 +0100
commit8780f632c8794e526157dc18c87834b2cc4f6592 (patch)
treed6be36d33818d65aea78455910f19d31044d6df7
parentc87b8fc5c906791122d9de2dab7eeb51f2e91049 (diff)
downloadillumos-joyent-8780f632c8794e526157dc18c87834b2cc4f6592.tar.gz
PSARC 2007/701 EOF and removal of auditconfig -[gs]etfsize
6704828 PSARC/2007/701: kernel-based audit statistic feature (-[gs]etfsize) should be EOF'd and removed
-rw-r--r--usr/src/cmd/auditconfig/auditconfig.c57
-rw-r--r--usr/src/uts/common/c2/audit.h12
-rw-r--r--usr/src/uts/common/c2/audit_kernel.h4
-rw-r--r--usr/src/uts/common/c2/audit_syscalls.c49
-rw-r--r--usr/src/uts/common/c2/audit_zone.c6
5 files changed, 4 insertions, 124 deletions
diff --git a/usr/src/cmd/auditconfig/auditconfig.c b/usr/src/cmd/auditconfig/auditconfig.c
index 444a95a7c2..f3e48f18cf 100644
--- a/usr/src/cmd/auditconfig/auditconfig.c
+++ b/usr/src/cmd/auditconfig/auditconfig.c
@@ -19,7 +19,7 @@
* CDDL HEADER END
*/
/*
- * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -74,7 +74,6 @@ enum commands {
AC_ARG_GETCOND,
AC_ARG_GETCWD,
AC_ARG_GETESTATE,
- AC_ARG_GETFSIZE,
AC_ARG_GETKAUDIT,
AC_ARG_GETKMASK,
AC_ARG_GETPINFO,
@@ -92,7 +91,6 @@ enum commands {
AC_ARG_SETAUDIT,
AC_ARG_SETAUID,
AC_ARG_SETCLASS,
- AC_ARG_SETFSIZE,
AC_ARG_SETKAUDIT,
AC_ARG_SETKMASK,
AC_ARG_SETPMASK,
@@ -161,7 +159,6 @@ static struct arg_entry arg_table[] = {
{ "-getcond", "", AC_ARG_GETCOND},
{ "-getcwd", "", AC_ARG_GETCWD},
{ "-getestate", "event", AC_ARG_GETESTATE},
- { "-getfsize", "", AC_ARG_GETFSIZE},
{ "-getkaudit", "", AC_ARG_GETKAUDIT},
{ "-getkmask", "", AC_ARG_GETKMASK},
{ "-getpinfo", "pid", AC_ARG_GETPINFO},
@@ -180,7 +177,6 @@ static struct arg_entry arg_table[] = {
AC_ARG_SETAUDIT},
{ "-setauid", "auid [cmd]", AC_ARG_SETAUID},
{ "-setclass", "event audit_flags", AC_ARG_SETCLASS},
- { "-setfsize", "filesize", AC_ARG_SETFSIZE},
{ "-setkaudit", "type IP_address", AC_ARG_SETKAUDIT},
{ "-setkmask", "audit_flags", AC_ARG_SETKMASK},
{ "-setpmask", "pid audit_flags", AC_ARG_SETPMASK},
@@ -284,8 +280,6 @@ static void do_setqdelay(char *delay);
static void do_setqhiwater(char *hiwater);
static void do_setqlowater(char *lowater);
static void do_setstat(void);
-static void do_getfsize(void);
-static void do_setfsize(char *size);
static void str2mask(char *mask_str, au_mask_t *mp);
static void str2tid(char *tid_str, au_tid_addr_t *tp);
static void strsplit(char *s, char *p1, char *p2, char c);
@@ -564,19 +558,6 @@ parse_args(char **argv)
str2mask(*argv, &mask);
break;
- case AC_ARG_GETFSIZE:
- break;
-
- case AC_ARG_SETFSIZE:
- ++argv;
- if (!*argv)
- exit_usage(1);
- if (!strisnum(*argv)) {
- exit_error(gettext(
- "Invalid hiwater specified."));
- }
- break;
-
default:
exit_error(gettext("Internal error #1."));
break;
@@ -867,13 +848,6 @@ do_args(char **argv)
do_setumask(auid_str, audit_flags);
}
break;
- case AC_ARG_GETFSIZE:
- do_getfsize();
- break;
- case AC_ARG_SETFSIZE:
- ++argv;
- do_setfsize(*argv);
- break;
default:
exit_error(gettext("Internal error #2."));
@@ -1447,21 +1421,6 @@ do_gettermid(void)
*/
static void
-do_getfsize(void)
-{
- au_fstat_t fstat;
-
- eauditon(A_GETFSIZE, (caddr_t)&fstat, 0);
- (void) printf(gettext("Maximum file size %d, current file size %d\n"),
- fstat.af_filesz, fstat.af_currsz);
-}
-
-/*
- * The returned value is for the global zone unless AUDIT_PERZONE is
- * set.
- */
-
-static void
do_lsevent(void)
{
register au_event_ent_t *evp;
@@ -1770,20 +1729,6 @@ do_setqlowater(char *lowater)
eauditon(A_SETQCTRL, (caddr_t)&qctrl, 0);
}
-/*
- * AUDIT_PERZONE set: valid in all zones
- * AUDIT_PERZONE not set: valid in global zone only
- */
-
-static void
-do_setfsize(char *size)
-{
- au_fstat_t fstat;
-
- fstat.af_filesz = atol(size);
- eauditon(A_SETFSIZE, (caddr_t)&fstat, 0);
-}
-
static void
eauditon(int cmd, caddr_t data, int length)
{
diff --git a/usr/src/uts/common/c2/audit.h b/usr/src/uts/common/c2/audit.h
index 05e11099ca..4ab4ad610e 100644
--- a/usr/src/uts/common/c2/audit.h
+++ b/usr/src/uts/common/c2/audit.h
@@ -250,8 +250,6 @@ typedef au_id_t auid_t;
#define A_SETCLASS 23 /* set audit event to class mapping */
#define A_GETPINFO 24 /* get audit info for an arbitrary pid */
#define A_SETPMASK 25 /* set preselection mask for an given pid */
-#define A_SETFSIZE 26 /* set audit file size */
-#define A_GETFSIZE 27 /* get audit file size */
#define A_GETPINFO_ADDR 28 /* get audit info for an arbitrary pid */
#define A_GETKAUDIT 29 /* get kernel audit characteristics */
#define A_SETKAUDIT 30 /* set kernel audit characteristics */
@@ -435,16 +433,6 @@ struct audit_stat {
};
typedef struct audit_stat au_stat_t;
-/*
- * Secondary stat structure for file size stuff. The stat structure was
- * not combined to preserve the semantics of the 5.1 - 5.3 A_GETSTAT call
- */
-struct audit_fstat {
- unsigned int af_filesz;
- unsigned int af_currsz;
-};
-typedef struct audit_fstat au_fstat_t;
-
/* get kernel audit context dependent on AUDIT_PERZONE policy */
#define GET_KCTX_PZ (audit_policy & AUDIT_PERZONE) ?\
curproc->p_zone->zone_audit_kctxt :\
diff --git a/usr/src/uts/common/c2/audit_kernel.h b/usr/src/uts/common/c2/audit_kernel.h
index f7d59881c2..9e145fffd0 100644
--- a/usr/src/uts/common/c2/audit_kernel.h
+++ b/usr/src/uts/common/c2/audit_kernel.h
@@ -19,7 +19,7 @@
* CDDL HEADER END
*/
/*
- * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -315,8 +315,6 @@ struct au_kcontext {
struct auditinfo_addr auk_info;
kmutex_t auk_eagain_mutex; /* door call retry */
kcondvar_t auk_eagain_cv;
- kmutex_t auk_fstat_lock; /* audit file statistics lock */
- au_fstat_t auk_file_stat; /* file statistics */
taskq_t *auk_taskq; /* output thread */
diff --git a/usr/src/uts/common/c2/audit_syscalls.c b/usr/src/uts/common/c2/audit_syscalls.c
index b503a66da6..2e930f12b3 100644
--- a/usr/src/uts/common/c2/audit_syscalls.c
+++ b/usr/src/uts/common/c2/audit_syscalls.c
@@ -19,7 +19,7 @@
* CDDL HEADER END
*/
/*
- * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -1822,46 +1822,6 @@ setpmask(caddr_t data)
return (0);
}
-static int
-getfsize(caddr_t data)
-{
- au_fstat_t fstat;
- au_kcontext_t *kctx = GET_KCTX_PZ;
-
- mutex_enter(&(kctx->auk_fstat_lock));
- fstat.af_filesz = kctx->auk_file_stat.af_filesz;
- fstat.af_currsz = kctx->auk_file_stat.af_currsz;
- mutex_exit(&(kctx->auk_fstat_lock));
-
- if (copyout(&fstat, data, sizeof (au_fstat_t)))
- return (EFAULT);
-
- return (0);
-}
-
-static int
-setfsize(caddr_t data)
-{
- au_fstat_t fstat;
- au_kcontext_t *kctx;
-
- if (!(audit_policy & AUDIT_PERZONE) && !INGLOBALZONE(curproc))
- return (EINVAL);
-
- kctx = GET_KCTX_NGZ;
-
- if (copyin(data, &fstat, sizeof (au_fstat_t)))
- return (EFAULT);
-
- if ((fstat.af_filesz != 0) && (fstat.af_filesz < AU_MIN_FILE_SZ))
- return (EINVAL);
-
- mutex_enter(&(kctx->auk_fstat_lock));
- kctx->auk_file_stat.af_filesz = fstat.af_filesz;
- mutex_exit(&(kctx->auk_fstat_lock));
-
- return (0);
-}
/*
* The out of control system call
* This is audit kitchen sink aka auditadm, aka auditon
@@ -1882,7 +1842,6 @@ auditctl(
case A_GETCAR:
case A_GETCLASS:
case A_GETCWD:
- case A_GETFSIZE:
case A_GETKAUDIT:
case A_GETKMASK:
case A_GETPINFO:
@@ -1963,12 +1922,6 @@ auditctl(
case A_SETPMASK:
result = setpmask(data);
break;
- case A_SETFSIZE:
- result = setfsize(data);
- break;
- case A_GETFSIZE:
- result = getfsize(data);
- break;
default:
result = EINVAL;
break;
diff --git a/usr/src/uts/common/c2/audit_zone.c b/usr/src/uts/common/c2/audit_zone.c
index 9b311d33da..dedc943f23 100644
--- a/usr/src/uts/common/c2/audit_zone.c
+++ b/usr/src/uts/common/c2/audit_zone.c
@@ -19,7 +19,7 @@
* CDDL HEADER END
*/
/*
- * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -81,8 +81,6 @@ au_zone_init(zoneid_t zone)
/* locks and cv's */
- mutex_init(&(kctx->auk_fstat_lock), NULL, MUTEX_DEFAULT, NULL);
-
mutex_init(&(kctx->auk_eagain_mutex), NULL, MUTEX_DEFAULT, NULL);
cv_init(&(kctx->auk_eagain_cv), NULL, CV_DRIVER, NULL);
@@ -128,8 +126,6 @@ au_zone_destroy(zoneid_t zone, void *arg)
ASSERT(kctx->auk_auditstate == AUC_NOAUDIT);
- mutex_destroy(&(kctx->auk_fstat_lock));
-
mutex_destroy(&(kctx->auk_eagain_mutex));
cv_destroy(&(kctx->auk_eagain_cv));