diff --git a/sys/nfsserver/nfs_syscalls.c b/sys/nfsserver/nfs_syscalls.c index 0c936c90ff3f..98244773e860 100644 --- a/sys/nfsserver/nfs_syscalls.c +++ b/sys/nfsserver/nfs_syscalls.c @@ -137,6 +137,8 @@ nfssvc(struct thread *td, struct nfssvc_args *uap) KASSERT(!mtx_owned(&Giant), ("nfssvc(): called with Giant")); + AUDIT_ARG(cmd, uap->flag); + error = priv_check(td, PRIV_NFS_DAEMON); if (error) return (error); diff --git a/sys/security/audit/audit_bsm.c b/sys/security/audit/audit_bsm.c index c1e0494bcb46..c4acf16f399b 100644 --- a/sys/security/audit/audit_bsm.c +++ b/sys/security/audit/audit_bsm.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1999-2005 Apple Inc. + * Copyright (c) 1999-2009 Apple Inc. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -639,7 +639,6 @@ kaudit_to_bsm(struct kaudit_record *kar, struct au_record **pau) case AUE_MODLOAD: case AUE_MODUNLOAD: case AUE_MSGSYS: - case AUE_NFS_SVC: case AUE_NTP_ADJTIME: case AUE_PIPE: case AUE_PROFILE: @@ -1017,6 +1016,13 @@ kaudit_to_bsm(struct kaudit_record *kar, struct au_record **pau) } /* FALLTHROUGH */ + case AUE_NFS_SVC: + if (ARG_IS_VALID(kar, ARG_CMD)) { + tok = au_to_arg32(1, "request", ar->ar_arg_cmd); + kau_write(rec, tok); + } + break; + case AUE_UMOUNT: UPATH1_VNODE1_TOKENS; break;