--- vfs_extd_audit.c.ori 2006-02-16 03:57:12.000000000 -0300 +++ vfs_extd_audit.c 2006-02-16 03:51:55.000000000 -0300 @@ -120,6 +120,18 @@ return priority; } +/* + * Read the configuration parameter extd_audit:use_syslog and return it + */ +static int audit_syslog_use(vfs_handle_struct *handle) +{ + int use_syslog; + + use_syslog = lp_parm_int(SNUM(handle->conn), "extd_audit", "use_syslog", 1); + + return use_syslog; +} + /* Implementation of vfs_ops. Pass everything on to the default operation but log event first. */ @@ -129,10 +141,14 @@ openlog("smbd_audit", LOG_PID, audit_syslog_facility(handle)); - syslog(audit_syslog_priority(handle), "connect to service %s by user %s\n", - svc, user); + if(audit_syslog_use(handle)) { + syslog(audit_syslog_priority(handle), "connect to service %s by user %s\n", + svc, user); + } DEBUG(10, ("Connected to service %s as user %s\n", svc, user)); + DEBUG(0, ("Oliver Connected to service %s as user %s\n", + svc, user)); result = SMB_VFS_NEXT_CONNECT(handle, conn, svc, user); @@ -141,7 +157,9 @@ static void audit_disconnect(vfs_handle_struct *handle, connection_struct *conn) { - syslog(audit_syslog_priority(handle), "disconnected\n"); + if(audit_syslog_use(handle)) { + syslog(audit_syslog_priority(handle), "disconnected\n"); + } DEBUG(10, ("Disconnected from VFS module extd_audit\n")); SMB_VFS_NEXT_DISCONNECT(handle, conn); @@ -154,10 +172,12 @@ result = SMB_VFS_NEXT_OPENDIR(handle, conn, fname, mask, attr); - syslog(audit_syslog_priority(handle), "opendir %s %s%s\n", - fname, - (result == NULL) ? "failed: " : "", - (result == NULL) ? strerror(errno) : ""); + if(audit_syslog_use(handle)) { + syslog(audit_syslog_priority(handle), "opendir %s %s%s\n", + fname, + (result == NULL) ? "failed: " : "", + (result == NULL) ? strerror(errno) : ""); + } DEBUG(1, ("vfs_extd_audit: opendir %s %s %s\n", fname, (result == NULL) ? "failed: " : "", @@ -172,10 +192,12 @@ result = SMB_VFS_NEXT_MKDIR(handle, conn, path, mode); - syslog(audit_syslog_priority(handle), "mkdir %s %s%s\n", - path, - (result < 0) ? "failed: " : "", - (result < 0) ? strerror(errno) : ""); + if(audit_syslog_use(handle)) { + syslog(audit_syslog_priority(handle), "mkdir %s %s%s\n", + path, + (result < 0) ? "failed: " : "", + (result < 0) ? strerror(errno) : ""); + } DEBUG(0, ("vfs_extd_audit: mkdir %s %s %s\n", path, (result < 0) ? "failed: " : "", @@ -190,10 +212,12 @@ result = SMB_VFS_NEXT_RMDIR(handle, conn, path); - syslog(audit_syslog_priority(handle), "rmdir %s %s%s\n", - path, - (result < 0) ? "failed: " : "", - (result < 0) ? strerror(errno) : ""); + if(audit_syslog_use(handle)) { + syslog(audit_syslog_priority(handle), "rmdir %s %s%s\n", + path, + (result < 0) ? "failed: " : "", + (result < 0) ? strerror(errno) : ""); + } DEBUG(0, ("vfs_extd_audit: rmdir %s %s %s\n", path, (result < 0) ? "failed: " : "", @@ -208,11 +232,13 @@ result = SMB_VFS_NEXT_OPEN(handle, conn, fname, flags, mode); - syslog(audit_syslog_priority(handle), "open %s (fd %d) %s%s%s\n", - fname, result, - ((flags & O_WRONLY) || (flags & O_RDWR)) ? "for writing " : "", - (result < 0) ? "failed: " : "", - (result < 0) ? strerror(errno) : ""); + if(audit_syslog_use(handle)) { + syslog(audit_syslog_priority(handle), "open %s (fd %d) %s%s%s\n", + fname, result, + ((flags & O_WRONLY) || (flags & O_RDWR)) ? "for writing " : "", + (result < 0) ? "failed: " : "", + (result < 0) ? strerror(errno) : ""); + } DEBUG(2, ("vfs_extd_audit: open %s %s %s\n", fname, (result < 0) ? "failed: " : "", @@ -227,10 +253,12 @@ result = SMB_VFS_NEXT_CLOSE(handle, fsp, fd); - syslog(audit_syslog_priority(handle), "close fd %d %s%s\n", - fd, - (result < 0) ? "failed: " : "", - (result < 0) ? strerror(errno) : ""); + if(audit_syslog_use(handle)) { + syslog(audit_syslog_priority(handle), "close fd %d %s%s\n", + fd, + (result < 0) ? "failed: " : "", + (result < 0) ? strerror(errno) : ""); + } DEBUG(2, ("vfs_extd_audit: close fd %d %s %s\n", fd, (result < 0) ? "failed: " : "", @@ -245,10 +273,12 @@ result = SMB_VFS_NEXT_RENAME(handle, conn, oldname, newname); - syslog(audit_syslog_priority(handle), "rename %s -> %s %s%s\n", - oldname, newname, - (result < 0) ? "failed: " : "", - (result < 0) ? strerror(errno) : ""); + if(audit_syslog_use(handle)) { + syslog(audit_syslog_priority(handle), "rename %s -> %s %s%s\n", + oldname, newname, + (result < 0) ? "failed: " : "", + (result < 0) ? strerror(errno) : ""); + } DEBUG(1, ("vfs_extd_audit: rename old: %s newname: %s %s %s\n", oldname, newname, (result < 0) ? "failed: " : "", @@ -263,10 +293,12 @@ result = SMB_VFS_NEXT_UNLINK(handle, conn, path); - syslog(audit_syslog_priority(handle), "unlink %s %s%s\n", - path, - (result < 0) ? "failed: " : "", - (result < 0) ? strerror(errno) : ""); + if(audit_syslog_use(handle)) { + syslog(audit_syslog_priority(handle), "unlink %s %s%s\n", + path, + (result < 0) ? "failed: " : "", + (result < 0) ? strerror(errno) : ""); + } DEBUG(0, ("vfs_extd_audit: unlink %s %s %s\n", path, (result < 0) ? "failed: " : "", @@ -281,10 +313,12 @@ result = SMB_VFS_NEXT_CHMOD(handle, conn, path, mode); - syslog(audit_syslog_priority(handle), "chmod %s mode 0x%x %s%s\n", - path, mode, - (result < 0) ? "failed: " : "", - (result < 0) ? strerror(errno) : ""); + if(audit_syslog_use(handle)) { + syslog(audit_syslog_priority(handle), "chmod %s mode 0x%x %s%s\n", + path, mode, + (result < 0) ? "failed: " : "", + (result < 0) ? strerror(errno) : ""); + } DEBUG(1, ("vfs_extd_audit: chmod %s mode 0x%x %s %s\n", path, mode, (result < 0) ? "failed: " : "", @@ -299,10 +333,12 @@ result = SMB_VFS_NEXT_CHMOD_ACL(handle, conn, path, mode); - syslog(audit_syslog_priority(handle), "chmod_acl %s mode 0x%x %s%s\n", - path, mode, - (result < 0) ? "failed: " : "", - (result < 0) ? strerror(errno) : ""); + if(audit_syslog_use(handle)) { + syslog(audit_syslog_priority(handle), "chmod_acl %s mode 0x%x %s%s\n", + path, mode, + (result < 0) ? "failed: " : "", + (result < 0) ? strerror(errno) : ""); + } DEBUG(1, ("vfs_extd_audit: chmod_acl %s mode 0x%x %s %s\n", path, mode, (result < 0) ? "failed: " : "", @@ -317,10 +353,12 @@ result = SMB_VFS_NEXT_FCHMOD(handle, fsp, fd, mode); - syslog(audit_syslog_priority(handle), "fchmod %s mode 0x%x %s%s\n", - fsp->fsp_name, mode, - (result < 0) ? "failed: " : "", - (result < 0) ? strerror(errno) : ""); + if(audit_syslog_use(handle)) { + syslog(audit_syslog_priority(handle), "fchmod %s mode 0x%x %s%s\n", + fsp->fsp_name, mode, + (result < 0) ? "failed: " : "", + (result < 0) ? strerror(errno) : ""); + } DEBUG(1, ("vfs_extd_audit: fchmod %s mode 0x%x %s %s", fsp->fsp_name, mode, (result < 0) ? "failed: " : "", @@ -335,10 +373,12 @@ result = SMB_VFS_NEXT_FCHMOD_ACL(handle, fsp, fd, mode); - syslog(audit_syslog_priority(handle), "fchmod_acl %s mode 0x%x %s%s\n", - fsp->fsp_name, mode, - (result < 0) ? "failed: " : "", - (result < 0) ? strerror(errno) : ""); + if(audit_syslog_use(handle)) { + syslog(audit_syslog_priority(handle), "fchmod_acl %s mode 0x%x %s%s\n", + fsp->fsp_name, mode, + (result < 0) ? "failed: " : "", + (result < 0) ? strerror(errno) : ""); + } DEBUG(1, ("vfs_extd_audit: fchmod_acl %s mode 0x%x %s %s", fsp->fsp_name, mode, (result < 0) ? "failed: " : "",