From owner-trustedbsd-cvs@FreeBSD.ORG Mon Jul 3 20:35:42 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 4B63A16A4A0 for ; Mon, 3 Jul 2006 20:35:42 +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 AFF4443D5C for ; Mon, 3 Jul 2006 20:35:28 +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 393D046C1F for ; Mon, 3 Jul 2006 16:35:27 -0400 (EDT) Received: from hub.freebsd.org (hub.freebsd.org [216.136.204.18]) by mx2.freebsd.org (Postfix) with ESMTP id 37FD55553E; Mon, 3 Jul 2006 20:35:26 +0000 (GMT) (envelope-from owner-perforce@freebsd.org) Received: by hub.freebsd.org (Postfix, from userid 32767) id 3783516A4AB; Mon, 3 Jul 2006 20:35:26 +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 0B36F16A47C for ; Mon, 3 Jul 2006 20:35:26 +0000 (UTC) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4FC0443D79 for ; Mon, 3 Jul 2006 20:35:16 +0000 (GMT) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k63KZFjS033267 for ; Mon, 3 Jul 2006 20:35:15 GMT (envelope-from wsalamon@computer.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k63KZFwC033264 for perforce@freebsd.org; Mon, 3 Jul 2006 20:35:15 GMT (envelope-from wsalamon@computer.org) Date: Mon, 3 Jul 2006 20:35:15 GMT Message-Id: <200607032035.k63KZFwC033264@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wsalamon@computer.org using -f From: Wayne Salamon To: Perforce Change Reviews Cc: Subject: PERFORCE change 100524 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: Mon, 03 Jul 2006 20:35:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=100524 Change 100524 by wsalamon@vh3 on 2006/07/03 20:34:16 Break the handling of EXTATTR events into separate cases for clarity. Affected files ... .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm.c#17 edit Differences ... ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm.c#17 (text+ko) ==== @@ -238,6 +238,29 @@ } \ } while (0) \ +#define EXTATTR_TOKENS do { \ + if (ARG_IS_VALID(kar, ARG_VALUE)) { \ + switch (ar->ar_arg_value) { \ + case EXTATTR_NAMESPACE_USER: \ + tok = au_to_text(EXTATTR_NAMESPACE_USER_STRING);\ + break; \ + case EXTATTR_NAMESPACE_SYSTEM: \ + tok = au_to_text(EXTATTR_NAMESPACE_SYSTEM_STRING);\ + break; \ + default: \ + tok = au_to_arg32(3, "attrnamespace", \ + ar->ar_arg_value); \ + break; \ + } \ + kau_write(rec, tok); \ + } \ + /* attrname is in the text field */ \ + if (ARG_IS_VALID(kar, ARG_TEXT)) { \ + tok = au_to_text(ar->ar_arg_text); \ + kau_write(rec, tok); \ + } \ +} while (0) + /* * Implement auditing for the auditon() system call. The audit tokens that * are generated depend on the command that was sent into the auditon() @@ -626,6 +649,18 @@ UPATH1_VNODE1_TOKENS; break; + case AUE_EXTATTRCTL: + UPATH1_VNODE1_TOKENS; + if (ARG_IS_VALID(kar, ARG_CMD)) { + tok = au_to_arg32(2, "cmd", ar->ar_arg_cmd); + kau_write(rec, tok); + } + /* extattrctl(2) filename parameter is in upath2/vnode2 */ + UPATH2_TOKENS; + VNODE2_TOKENS; + EXTATTR_TOKENS; + break; + case AUE_EXTATTR_GET_FILE: case AUE_EXTATTR_SET_FILE: case AUE_EXTATTR_LIST_FILE: @@ -634,16 +669,10 @@ case AUE_EXTATTR_SET_LINK: case AUE_EXTATTR_LIST_LINK: case AUE_EXTATTR_DELETE_LINK: - case AUE_EXTATTRCTL: UPATH1_VNODE1_TOKENS; - if (ARG_IS_VALID(kar, ARG_CMD)) { - tok = au_to_arg32(2, "cmd", ar->ar_arg_cmd); - kau_write(rec, tok); - } - /* extattrctl(2) filename parameter is in upath2/vnode2 */ - UPATH2_TOKENS; - VNODE2_TOKENS; - /* fall through */ + EXTATTR_TOKENS; + break; + case AUE_EXTATTR_GET_FD: case AUE_EXTATTR_SET_FD: case AUE_EXTATTR_LIST_FD: @@ -652,26 +681,7 @@ tok = au_to_arg32(2, "fd", ar->ar_arg_fd); kau_write(rec, tok); } - if (ARG_IS_VALID(kar, ARG_VALUE)) { - switch (ar->ar_arg_value) { - case EXTATTR_NAMESPACE_USER: - tok = au_to_text(EXTATTR_NAMESPACE_USER_STRING); - break; - case EXTATTR_NAMESPACE_SYSTEM: - tok = au_to_text(EXTATTR_NAMESPACE_SYSTEM_STRING); - break; - default: - tok = au_to_arg32(3, "attrnamespace", - ar->ar_arg_value); - break; - } - kau_write(rec, tok); - } - /* attrname is in the text field */ - if (ARG_IS_VALID(kar, ARG_TEXT)) { - tok = au_to_text(ar->ar_arg_text); - kau_write(rec, tok); - } + EXTATTR_TOKENS; break; case AUE_FCHMOD: