From owner-trustedbsd-cvs@FreeBSD.ORG Wed May 3 15:23:45 2006 Return-Path: X-Original-To: trustedbsd-cvs@freebsd.org Delivered-To: trustedbsd-cvs@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1A1C916A416 for ; Wed, 3 May 2006 15:23:45 +0000 (UTC) (envelope-from owner-perforce@freebsd.org) Received: from cyrus.watson.org (cyrus.watson.org [209.31.154.42]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8830543D48 for ; Wed, 3 May 2006 15:23:44 +0000 (GMT) (envelope-from owner-perforce@freebsd.org) Received: from mx2.freebsd.org (mx2.freebsd.org [216.136.204.119]) by cyrus.watson.org (Postfix) with ESMTP id F0DD746CE0 for ; Wed, 3 May 2006 11:23:43 -0400 (EDT) Received: from hub.freebsd.org (hub.freebsd.org [216.136.204.18]) by mx2.freebsd.org (Postfix) with ESMTP id 65E165541F; Wed, 3 May 2006 15:23:42 +0000 (GMT) (envelope-from owner-perforce@freebsd.org) Received: by hub.freebsd.org (Postfix, from userid 32767) id 5EB5B16A404; Wed, 3 May 2006 15:23:42 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0490016A402 for ; Wed, 3 May 2006 15:23:42 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BDD9543D48 for ; Wed, 3 May 2006 15:23:41 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k43FNfnj047961 for ; Wed, 3 May 2006 15:23:41 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k43FNfaf047958 for perforce@freebsd.org; Wed, 3 May 2006 15:23:41 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 3 May 2006 15:23:41 GMT Message-Id: <200605031523.k43FNfaf047958@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 96593 for review X-BeenThere: trustedbsd-cvs@FreeBSD.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: TrustedBSD CVS and Perforce commit message list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 May 2006 15:23:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=96593 Change 96593 by rwatson@rwatson_zoo on 2006/05/03 15:23:36 Rename pipe preselect ioctls to all include the word 'PRESELECT'. Implement simple pipe preselect audit ioctls, but not per-auid ioctls yet. Affected files ... .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_ioctl.h#6 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_pipe.c#15 edit Differences ... ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_ioctl.h#6 (text+ko) ==== @@ -51,15 +51,15 @@ #define AUDITPIPE_SET_QLIMIT _IOW(AUDITPIPE_IOBASE, 3, u_int) #define AUDITPIPE_GET_QLIMIT_MIN _IOR(AUDITPIPE_IOBASE, 4, u_int) #define AUDITPIPE_GET_QLIMIT_MAX _IOR(AUDITPIPE_IOBASE, 5, u_int) -#define AUDITPIPE_GET_FLAGS _IOR(AUDITPIPE_IOBASE, 6, au_mask_t) -#define AUDITPIPE_SET_FLAGS _IOW(AUDITPIPE_IOBASE, 7, au_mask_t) -#define AUDITPIPE_GET_NAFLAGS _IOR(AUDITPIPE_IOBASE, 8, au_mask_t) -#define AUDITPIPE_SET_NAFLAGS _IOW(AUDITPIPE_IOBASE, 9, au_mask_t) -#define AUDITPIPE_GET_PRESELECT _IOR(AUDITPIPE_IOBASE, 10, \ +#define AUDITPIPE_GET_PRESELECT_FLAGS _IOR(AUDITPIPE_IOBASE, 6, au_mask_t) +#define AUDITPIPE_SET_PRESELECT_FLAGS _IOW(AUDITPIPE_IOBASE, 7, au_mask_t) +#define AUDITPIPE_GET_PRESELECT_NAFLAGS _IOR(AUDITPIPE_IOBASE, 8, au_mask_t) +#define AUDITPIPE_SET_PRESELECT_NAFLAGS _IOW(AUDITPIPE_IOBASE, 9, au_mask_t) +#define AUDITPIPE_GET_PRESELECT_AUID _IOR(AUDITPIPE_IOBASE, 10, \ struct auditpipe_preselect) -#define AUDITPIPE_SET_PRESELECT _IOW(AUDITPIPE_IOBASE, 11, \ +#define AUDITPIPE_SET_PRESELECT_AUID _IOW(AUDITPIPE_IOBASE, 11, \ struct auditpipe_preselect) -#define AUDITPIPE_FLUSH_PRESELECT _IO(AUDITPIPE_IOBASE, 11) +#define AUDITPIPE_FLUSH_PRESELECT_AUID _IO(AUDITPIPE_IOBASE, 11) /* * Ioctls to retrieve audit pipe statistics. ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_pipe.c#15 (text+ko) ==== @@ -499,11 +499,19 @@ audit_pipe_ioctl(struct cdev *dev, u_long cmd, caddr_t data, int flag, struct thread *td) { + struct auditpipe_preselect *aps; struct audit_pipe *ap; + au_mask_t *maskp; int error; ap = dev->si_drv1; KASSERT(ap != NULL, ("audit_pipe_ioctl: ap == NULL")); + + /* + * Audit pipe ioctls: first come standard device node ioctls, then + * manipulation of pipe settings, and finally, statistics query + * ioctls. + */ switch (cmd) { case FIONBIO: mtx_lock(&audit_pipe_mtx); @@ -575,6 +583,44 @@ error = 0; break; + case AUDITPIPE_GET_PRESELECT_FLAGS: + maskp = (au_mask_t *)data; + *maskp = ap->ap_preselect_flags; + error = 0; + break; + + case AUDITPIPE_SET_PRESELECT_FLAGS: + maskp = (au_mask_t *)data; + ap->ap_preselect_flags = *maskp; + error = 0; + break; + + case AUDITPIPE_GET_PRESELECT_NAFLAGS: + maskp = (au_mask_t *)data; + *maskp = ap->ap_preselect_naflags; + error = 0; + break; + + case AUDITPIPE_SET_PRESELECT_NAFLAGS: + maskp = (au_mask_t *)data; + ap->ap_preselect_naflags = *maskp; + error = 0; + break; + + case AUDITPIPE_GET_PRESELECT_AUID: + aps = (struct auditpipe_preselect *)data; + error = EOPNOTSUPP; + break; + + case AUDITPIPE_SET_PRESELECT_AUID: + aps = (struct auditpipe_preselect *)data; + error = EOPNOTSUPP; + break; + + case AUDITPIPE_FLUSH_PRESELECT_AUID: + error = EOPNOTSUPP; + break; + case AUDITPIPE_GET_INSERTS: *(u_int *)data = ap->ap_inserts; error = 0;