modules/vfs_full_audit.c

ソースコードを見る。

データ構造

struct  vfs_full_audit_private_data

関数

static int smb_full_audit_connect (vfs_handle_struct *handle, const char *svc, const char *user)
static void smb_full_audit_disconnect (vfs_handle_struct *handle)
static SMB_BIG_UINT smb_full_audit_disk_free (vfs_handle_struct *handle, const char *path, BOOL small_query, SMB_BIG_UINT *bsize, SMB_BIG_UINT *dfree, SMB_BIG_UINT *dsize)
static int smb_full_audit_get_quota (struct vfs_handle_struct *handle, enum SMB_QUOTA_TYPE qtype, unid_t id, SMB_DISK_QUOTA *qt)
static int smb_full_audit_set_quota (struct vfs_handle_struct *handle, enum SMB_QUOTA_TYPE qtype, unid_t id, SMB_DISK_QUOTA *qt)
static int smb_full_audit_get_shadow_copy_data (struct vfs_handle_struct *handle, struct files_struct *fsp, SHADOW_COPY_DATA *shadow_copy_data, BOOL labels)
static int smb_full_audit_statvfs (struct vfs_handle_struct *handle, const char *path, struct vfs_statvfs_struct *statbuf)
static SMB_STRUCT_DIR * smb_full_audit_opendir (vfs_handle_struct *handle, const char *fname, const char *mask, uint32 attr)
static SMB_STRUCT_DIRENT * smb_full_audit_readdir (vfs_handle_struct *handle, SMB_STRUCT_DIR *dirp)
static void smb_full_audit_seekdir (vfs_handle_struct *handle, SMB_STRUCT_DIR *dirp, long offset)
static long smb_full_audit_telldir (vfs_handle_struct *handle, SMB_STRUCT_DIR *dirp)
static void smb_full_audit_rewinddir (vfs_handle_struct *handle, SMB_STRUCT_DIR *dirp)
static int smb_full_audit_mkdir (vfs_handle_struct *handle, const char *path, mode_t mode)
static int smb_full_audit_rmdir (vfs_handle_struct *handle, const char *path)
static int smb_full_audit_closedir (vfs_handle_struct *handle, SMB_STRUCT_DIR *dirp)
static int smb_full_audit_open (vfs_handle_struct *handle, const char *fname, files_struct *fsp, int flags, mode_t mode)
static int smb_full_audit_close (vfs_handle_struct *handle, files_struct *fsp, int fd)
static ssize_t smb_full_audit_read (vfs_handle_struct *handle, files_struct *fsp, int fd, void *data, size_t n)
static ssize_t smb_full_audit_pread (vfs_handle_struct *handle, files_struct *fsp, int fd, void *data, size_t n, SMB_OFF_T offset)
static ssize_t smb_full_audit_write (vfs_handle_struct *handle, files_struct *fsp, int fd, const void *data, size_t n)
static ssize_t smb_full_audit_pwrite (vfs_handle_struct *handle, files_struct *fsp, int fd, const void *data, size_t n, SMB_OFF_T offset)
static SMB_OFF_T smb_full_audit_lseek (vfs_handle_struct *handle, files_struct *fsp, int filedes, SMB_OFF_T offset, int whence)
static ssize_t smb_full_audit_sendfile (vfs_handle_struct *handle, int tofd, files_struct *fsp, int fromfd, const DATA_BLOB *hdr, SMB_OFF_T offset, size_t n)
static int smb_full_audit_rename (vfs_handle_struct *handle, const char *oldname, const char *newname)
static int smb_full_audit_fsync (vfs_handle_struct *handle, files_struct *fsp, int fd)
static int smb_full_audit_stat (vfs_handle_struct *handle, const char *fname, SMB_STRUCT_STAT *sbuf)
static int smb_full_audit_fstat (vfs_handle_struct *handle, files_struct *fsp, int fd, SMB_STRUCT_STAT *sbuf)
static int smb_full_audit_lstat (vfs_handle_struct *handle, const char *path, SMB_STRUCT_STAT *sbuf)
static int smb_full_audit_unlink (vfs_handle_struct *handle, const char *path)
static int smb_full_audit_chmod (vfs_handle_struct *handle, const char *path, mode_t mode)
static int smb_full_audit_fchmod (vfs_handle_struct *handle, files_struct *fsp, int fd, mode_t mode)
static int smb_full_audit_chown (vfs_handle_struct *handle, const char *path, uid_t uid, gid_t gid)
static int smb_full_audit_fchown (vfs_handle_struct *handle, files_struct *fsp, int fd, uid_t uid, gid_t gid)
static int smb_full_audit_chdir (vfs_handle_struct *handle, const char *path)
static char * smb_full_audit_getwd (vfs_handle_struct *handle, char *path)
static int smb_full_audit_ntimes (vfs_handle_struct *handle, const char *path, const struct timespec ts[2])
static int smb_full_audit_ftruncate (vfs_handle_struct *handle, files_struct *fsp, int fd, SMB_OFF_T len)
static BOOL smb_full_audit_lock (vfs_handle_struct *handle, files_struct *fsp, int fd, int op, SMB_OFF_T offset, SMB_OFF_T count, int type)
static int smb_full_audit_kernel_flock (struct vfs_handle_struct *handle, struct files_struct *fsp, int fd, uint32 share_mode)
static int smb_full_audit_linux_setlease (vfs_handle_struct *handle, files_struct *fsp, int fd, int leasetype)
static BOOL smb_full_audit_getlock (vfs_handle_struct *handle, files_struct *fsp, int fd, SMB_OFF_T *poffset, SMB_OFF_T *pcount, int *ptype, pid_t *ppid)
static int smb_full_audit_symlink (vfs_handle_struct *handle, const char *oldpath, const char *newpath)
static int smb_full_audit_readlink (vfs_handle_struct *handle, const char *path, char *buf, size_t bufsiz)
static int smb_full_audit_link (vfs_handle_struct *handle, const char *oldpath, const char *newpath)
static int smb_full_audit_mknod (vfs_handle_struct *handle, const char *pathname, mode_t mode, SMB_DEV_T dev)
static char * smb_full_audit_realpath (vfs_handle_struct *handle, const char *path, char *resolved_path)
static NTSTATUS smb_full_audit_notify_watch (struct vfs_handle_struct *handle, struct sys_notify_context *ctx, struct notify_entry *e, void(*callback)(struct sys_notify_context *ctx, void *private_data, struct notify_event *ev), void *private_data, void *handle_p)
static int smb_full_audit_chflags (vfs_handle_struct *handle, const char *path, uint flags)
static size_t smb_full_audit_fget_nt_acl (vfs_handle_struct *handle, files_struct *fsp, int fd, uint32 security_info, SEC_DESC **ppdesc)
static size_t smb_full_audit_get_nt_acl (vfs_handle_struct *handle, files_struct *fsp, const char *name, uint32 security_info, SEC_DESC **ppdesc)
static BOOL smb_full_audit_fset_nt_acl (vfs_handle_struct *handle, files_struct *fsp, int fd, uint32 security_info_sent, SEC_DESC *psd)
static BOOL smb_full_audit_set_nt_acl (vfs_handle_struct *handle, files_struct *fsp, const char *name, uint32 security_info_sent, SEC_DESC *psd)
static int smb_full_audit_chmod_acl (vfs_handle_struct *handle, const char *path, mode_t mode)
static int smb_full_audit_fchmod_acl (vfs_handle_struct *handle, files_struct *fsp, int fd, mode_t mode)
static int smb_full_audit_sys_acl_get_entry (vfs_handle_struct *handle, SMB_ACL_T theacl, int entry_id, SMB_ACL_ENTRY_T *entry_p)
static int smb_full_audit_sys_acl_get_tag_type (vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry_d, SMB_ACL_TAG_T *tag_type_p)
static int smb_full_audit_sys_acl_get_permset (vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry_d, SMB_ACL_PERMSET_T *permset_p)
static void * smb_full_audit_sys_acl_get_qualifier (vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry_d)
static SMB_ACL_T smb_full_audit_sys_acl_get_file (vfs_handle_struct *handle, const char *path_p, SMB_ACL_TYPE_T type)
static SMB_ACL_T smb_full_audit_sys_acl_get_fd (vfs_handle_struct *handle, files_struct *fsp, int fd)
static int smb_full_audit_sys_acl_clear_perms (vfs_handle_struct *handle, SMB_ACL_PERMSET_T permset)
static int smb_full_audit_sys_acl_add_perm (vfs_handle_struct *handle, SMB_ACL_PERMSET_T permset, SMB_ACL_PERM_T perm)
static char * smb_full_audit_sys_acl_to_text (vfs_handle_struct *handle, SMB_ACL_T theacl, ssize_t *plen)
static SMB_ACL_T smb_full_audit_sys_acl_init (vfs_handle_struct *handle, int count)
static int smb_full_audit_sys_acl_create_entry (vfs_handle_struct *handle, SMB_ACL_T *pacl, SMB_ACL_ENTRY_T *pentry)
static int smb_full_audit_sys_acl_set_tag_type (vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry, SMB_ACL_TAG_T tagtype)
static int smb_full_audit_sys_acl_set_qualifier (vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry, void *qual)
static int smb_full_audit_sys_acl_set_permset (vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry, SMB_ACL_PERMSET_T permset)
static int smb_full_audit_sys_acl_valid (vfs_handle_struct *handle, SMB_ACL_T theacl)
static int smb_full_audit_sys_acl_set_file (vfs_handle_struct *handle, const char *name, SMB_ACL_TYPE_T acltype, SMB_ACL_T theacl)
static int smb_full_audit_sys_acl_set_fd (vfs_handle_struct *handle, files_struct *fsp, int fd, SMB_ACL_T theacl)
static int smb_full_audit_sys_acl_delete_def_file (vfs_handle_struct *handle, const char *path)
static int smb_full_audit_sys_acl_get_perm (vfs_handle_struct *handle, SMB_ACL_PERMSET_T permset, SMB_ACL_PERM_T perm)
static int smb_full_audit_sys_acl_free_text (vfs_handle_struct *handle, char *text)
static int smb_full_audit_sys_acl_free_acl (vfs_handle_struct *handle, SMB_ACL_T posix_acl)
static int smb_full_audit_sys_acl_free_qualifier (vfs_handle_struct *handle, void *qualifier, SMB_ACL_TAG_T tagtype)
static ssize_t smb_full_audit_getxattr (struct vfs_handle_struct *handle, const char *path, const char *name, void *value, size_t size)
static ssize_t smb_full_audit_lgetxattr (struct vfs_handle_struct *handle, const char *path, const char *name, void *value, size_t size)
static ssize_t smb_full_audit_fgetxattr (struct vfs_handle_struct *handle, struct files_struct *fsp, int fd, const char *name, void *value, size_t size)
static ssize_t smb_full_audit_listxattr (struct vfs_handle_struct *handle, const char *path, char *list, size_t size)
static ssize_t smb_full_audit_llistxattr (struct vfs_handle_struct *handle, const char *path, char *list, size_t size)
static ssize_t smb_full_audit_flistxattr (struct vfs_handle_struct *handle, struct files_struct *fsp, int fd, char *list, size_t size)
static int smb_full_audit_removexattr (struct vfs_handle_struct *handle, const char *path, const char *name)
static int smb_full_audit_lremovexattr (struct vfs_handle_struct *handle, const char *path, const char *name)
static int smb_full_audit_fremovexattr (struct vfs_handle_struct *handle, struct files_struct *fsp, int fd, const char *name)
static int smb_full_audit_setxattr (struct vfs_handle_struct *handle, const char *path, const char *name, const void *value, size_t size, int flags)
static int smb_full_audit_lsetxattr (struct vfs_handle_struct *handle, const char *path, const char *name, const void *value, size_t size, int flags)
static int smb_full_audit_fsetxattr (struct vfs_handle_struct *handle, struct files_struct *fsp, int fd, const char *name, const void *value, size_t size, int flags)
static int smb_full_audit_aio_read (struct vfs_handle_struct *handle, struct files_struct *fsp, SMB_STRUCT_AIOCB *aiocb)
static int smb_full_audit_aio_write (struct vfs_handle_struct *handle, struct files_struct *fsp, SMB_STRUCT_AIOCB *aiocb)
static ssize_t smb_full_audit_aio_return (struct vfs_handle_struct *handle, struct files_struct *fsp, SMB_STRUCT_AIOCB *aiocb)
static int smb_full_audit_aio_cancel (struct vfs_handle_struct *handle, struct files_struct *fsp, int fd, SMB_STRUCT_AIOCB *aiocb)
static int smb_full_audit_aio_error (struct vfs_handle_struct *handle, struct files_struct *fsp, SMB_STRUCT_AIOCB *aiocb)
static int smb_full_audit_aio_fsync (struct vfs_handle_struct *handle, struct files_struct *fsp, int op, SMB_STRUCT_AIOCB *aiocb)
static int smb_full_audit_aio_suspend (struct vfs_handle_struct *handle, struct files_struct *fsp, const SMB_STRUCT_AIOCB *const aiocb[], int n, const struct timespec *ts)
static int audit_syslog_facility (vfs_handle_struct *handle)
static int audit_syslog_priority (vfs_handle_struct *handle)
static char * audit_prefix (connection_struct *conn)
static BOOL log_success (vfs_handle_struct *handle, vfs_op_type op)
static BOOL log_failure (vfs_handle_struct *handle, vfs_op_type op)
static void init_bitmap (struct bitmap **bm, const char **ops)
static const char * audit_opname (vfs_op_type op)
static void do_log (vfs_op_type op, BOOL success, vfs_handle_struct *handle, const char *format,...)
static void free_private_data (void **p_data)
NTSTATUS vfs_full_audit_init (void)

変数

userdom_struct current_user_info
static int vfs_full_audit_debug_level = DBGC_VFS
static vfs_op_tuple audit_op_tuples []
struct {
   vfs_op_type   type
   const char *   name
vfs_op_names []


関数

static int smb_full_audit_connect ( vfs_handle_struct handle,
const char *  svc,
const char *  user 
) [static]

vfs_full_audit.c821 行で定義されています。

参照先 audit_syslog_facility()do_log()vfs_full_audit_private_data::failure_opsfree_private_data()handleinit_bitmap()lp_parm_string_list()resultSMB_VFS_OP_CONNECTvfs_full_audit_private_data::success_ops.

00823 {
00824         int result;
00825         struct vfs_full_audit_private_data *pd = NULL;
00826         const char *none[] = { NULL };
00827         const char *all [] = { "all" };
00828 
00829         if (!handle) {
00830                 return -1;
00831         }
00832 
00833         pd = SMB_MALLOC_P(struct vfs_full_audit_private_data);
00834         if (!pd) {
00835                 return -1;
00836         }
00837         ZERO_STRUCTP(pd);
00838 
00839         openlog("smbd_audit", 0, audit_syslog_facility(handle));
00840 
00841         init_bitmap(&pd->success_ops,
00842                     lp_parm_string_list(SNUM(handle->conn), "full_audit", "success",
00843                                         none));
00844         init_bitmap(&pd->failure_ops,
00845                     lp_parm_string_list(SNUM(handle->conn), "full_audit", "failure",
00846                                         all));
00847 
00848         /* Store the private data. */
00849         SMB_VFS_HANDLE_SET_DATA(handle, pd, free_private_data,
00850                                 struct vfs_full_audit_private_data, return -1);
00851 
00852         result = SMB_VFS_NEXT_CONNECT(handle, svc, user);
00853 
00854         do_log(SMB_VFS_OP_CONNECT, True, handle,
00855                "%s", svc);
00856 
00857         return result;
00858 }

static void smb_full_audit_disconnect ( vfs_handle_struct handle  )  [static]

vfs_full_audit.c860 行で定義されています。

参照先 do_log()handleSMB_VFS_OP_DISCONNECT.

00861 {
00862         SMB_VFS_NEXT_DISCONNECT(handle);
00863 
00864         do_log(SMB_VFS_OP_DISCONNECT, True, handle,
00865                "%s", lp_servicename(SNUM(handle->conn)));
00866 
00867         /* The bitmaps will be disconnected when the private
00868            data is deleted. */
00869 
00870         return;
00871 }

static SMB_BIG_UINT smb_full_audit_disk_free ( vfs_handle_struct handle,
const char *  path,
BOOL  small_query,
SMB_BIG_UINT *  bsize,
SMB_BIG_UINT *  dfree,
SMB_BIG_UINT *  dsize 
) [static]

vfs_full_audit.c873 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_DISK_FREE.

00877 {
00878         SMB_BIG_UINT result;
00879 
00880         result = SMB_VFS_NEXT_DISK_FREE(handle, path, small_query, bsize,
00881                                         dfree, dsize);
00882 
00883         /* Don't have a reasonable notion of failure here */
00884 
00885         do_log(SMB_VFS_OP_DISK_FREE, True, handle, "%s", path);
00886 
00887         return result;
00888 }

static int smb_full_audit_get_quota ( struct vfs_handle_struct handle,
enum SMB_QUOTA_TYPE  qtype,
unid_t  id,
SMB_DISK_QUOTA qt 
) [static]

vfs_full_audit.c890 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_GET_QUOTA.

00893 {
00894         int result;
00895 
00896         result = SMB_VFS_NEXT_GET_QUOTA(handle, qtype, id, qt);
00897 
00898         do_log(SMB_VFS_OP_GET_QUOTA, (result >= 0), handle, "");
00899 
00900         return result;
00901 }

static int smb_full_audit_set_quota ( struct vfs_handle_struct handle,
enum SMB_QUOTA_TYPE  qtype,
unid_t  id,
SMB_DISK_QUOTA qt 
) [static]

vfs_full_audit.c904 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SET_QUOTA.

00907 {
00908         int result;
00909 
00910         result = SMB_VFS_NEXT_SET_QUOTA(handle, qtype, id, qt);
00911 
00912         do_log(SMB_VFS_OP_SET_QUOTA, (result >= 0), handle, "");
00913 
00914         return result;
00915 }

static int smb_full_audit_get_shadow_copy_data ( struct vfs_handle_struct handle,
struct files_struct fsp,
SHADOW_COPY_DATA shadow_copy_data,
BOOL  labels 
) [static]

vfs_full_audit.c917 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_GET_SHADOW_COPY_DATA.

00920 {
00921         int result;
00922 
00923         result = SMB_VFS_NEXT_GET_SHADOW_COPY_DATA(handle, fsp, shadow_copy_data, labels);
00924 
00925         do_log(SMB_VFS_OP_GET_SHADOW_COPY_DATA, (result >= 0), handle, "");
00926 
00927         return result;
00928 }

static int smb_full_audit_statvfs ( struct vfs_handle_struct handle,
const char *  path,
struct vfs_statvfs_struct statbuf 
) [static]

vfs_full_audit.c930 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_STATVFS.

00933 {
00934         int result;
00935 
00936         result = SMB_VFS_NEXT_STATVFS(handle, path, statbuf);
00937 
00938         do_log(SMB_VFS_OP_STATVFS, (result >= 0), handle, "");
00939 
00940         return result;
00941 }

static SMB_STRUCT_DIR * smb_full_audit_opendir ( vfs_handle_struct handle,
const char *  fname,
const char *  mask,
uint32  attr 
) [static]

vfs_full_audit.c943 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_OPENDIR.

00945 {
00946         SMB_STRUCT_DIR *result;
00947 
00948         result = SMB_VFS_NEXT_OPENDIR(handle, fname, mask, attr);
00949 
00950         do_log(SMB_VFS_OP_OPENDIR, (result != NULL), handle, "%s", fname);
00951 
00952         return result;
00953 }

static SMB_STRUCT_DIRENT * smb_full_audit_readdir ( vfs_handle_struct handle,
SMB_STRUCT_DIR *  dirp 
) [static]

vfs_full_audit.c955 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_READDIR.

00957 {
00958         SMB_STRUCT_DIRENT *result;
00959 
00960         result = SMB_VFS_NEXT_READDIR(handle, dirp);
00961 
00962         /* This operation has no reasonable error condition
00963          * (End of dir is also failure), so always succeed.
00964          */
00965         do_log(SMB_VFS_OP_READDIR, True, handle, "");
00966 
00967         return result;
00968 }

static void smb_full_audit_seekdir ( vfs_handle_struct handle,
SMB_STRUCT_DIR *  dirp,
long  offset 
) [static]

vfs_full_audit.c970 行で定義されています。

参照先 do_log()handleSMB_VFS_OP_SEEKDIR.

00972 {
00973         SMB_VFS_NEXT_SEEKDIR(handle, dirp, offset);
00974 
00975         do_log(SMB_VFS_OP_SEEKDIR, True, handle, "");
00976         return;
00977 }

static long smb_full_audit_telldir ( vfs_handle_struct handle,
SMB_STRUCT_DIR *  dirp 
) [static]

vfs_full_audit.c979 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_TELLDIR.

00981 {
00982         long result;
00983 
00984         result = SMB_VFS_NEXT_TELLDIR(handle, dirp);
00985 
00986         do_log(SMB_VFS_OP_TELLDIR, True, handle, "");
00987 
00988         return result;
00989 }

static void smb_full_audit_rewinddir ( vfs_handle_struct handle,
SMB_STRUCT_DIR *  dirp 
) [static]

vfs_full_audit.c991 行で定義されています。

参照先 do_log()handleSMB_VFS_OP_REWINDDIR.

00993 {
00994         SMB_VFS_NEXT_REWINDDIR(handle, dirp);
00995 
00996         do_log(SMB_VFS_OP_REWINDDIR, True, handle, "");
00997         return;
00998 }

static int smb_full_audit_mkdir ( vfs_handle_struct handle,
const char *  path,
mode_t  mode 
) [static]

vfs_full_audit.c1000 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_MKDIR.

01002 {
01003         int result;
01004         
01005         result = SMB_VFS_NEXT_MKDIR(handle, path, mode);
01006         
01007         do_log(SMB_VFS_OP_MKDIR, (result >= 0), handle, "%s", path);
01008 
01009         return result;
01010 }

static int smb_full_audit_rmdir ( vfs_handle_struct handle,
const char *  path 
) [static]

vfs_full_audit.c1012 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_RMDIR.

01014 {
01015         int result;
01016         
01017         result = SMB_VFS_NEXT_RMDIR(handle, path);
01018 
01019         do_log(SMB_VFS_OP_RMDIR, (result >= 0), handle, "%s", path);
01020 
01021         return result;
01022 }

static int smb_full_audit_closedir ( vfs_handle_struct handle,
SMB_STRUCT_DIR *  dirp 
) [static]

vfs_full_audit.c1024 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_CLOSEDIR.

01026 {
01027         int result;
01028 
01029         result = SMB_VFS_NEXT_CLOSEDIR(handle, dirp);
01030         
01031         do_log(SMB_VFS_OP_CLOSEDIR, (result >= 0), handle, "");
01032 
01033         return result;
01034 }

static int smb_full_audit_open ( vfs_handle_struct handle,
const char *  fname,
files_struct fsp,
int  flags,
mode_t  mode 
) [static]

vfs_full_audit.c1036 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_OPEN.

01038 {
01039         int result;
01040         
01041         result = SMB_VFS_NEXT_OPEN(handle, fname, fsp, flags, mode);
01042 
01043         do_log(SMB_VFS_OP_OPEN, (result >= 0), handle, "%s|%s",
01044                ((flags & O_WRONLY) || (flags & O_RDWR))?"w":"r",
01045                fname);
01046 
01047         return result;
01048 }

static int smb_full_audit_close ( vfs_handle_struct handle,
files_struct fsp,
int  fd 
) [static]

vfs_full_audit.c1050 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_CLOSE.

01051 {
01052         int result;
01053         
01054         result = SMB_VFS_NEXT_CLOSE(handle, fsp, fd);
01055 
01056         do_log(SMB_VFS_OP_CLOSE, (result >= 0), handle, "%s", fsp->fsp_name);
01057 
01058         return result;
01059 }

static ssize_t smb_full_audit_read ( vfs_handle_struct handle,
files_struct fsp,
int  fd,
void *  data,
size_t  n 
) [static]

vfs_full_audit.c1061 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_READ.

01063 {
01064         ssize_t result;
01065 
01066         result = SMB_VFS_NEXT_READ(handle, fsp, fd, data, n);
01067 
01068         do_log(SMB_VFS_OP_READ, (result >= 0), handle, "%s", fsp->fsp_name);
01069 
01070         return result;
01071 }

static ssize_t smb_full_audit_pread ( vfs_handle_struct handle,
files_struct fsp,
int  fd,
void *  data,
size_t  n,
SMB_OFF_T  offset 
) [static]

vfs_full_audit.c1073 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_PREAD.

01075 {
01076         ssize_t result;
01077 
01078         result = SMB_VFS_NEXT_PREAD(handle, fsp, fd, data, n, offset);
01079 
01080         do_log(SMB_VFS_OP_PREAD, (result >= 0), handle, "%s", fsp->fsp_name);
01081 
01082         return result;
01083 }

static ssize_t smb_full_audit_write ( vfs_handle_struct handle,
files_struct fsp,
int  fd,
const void *  data,
size_t  n 
) [static]

vfs_full_audit.c1085 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_WRITE.

01087 {
01088         ssize_t result;
01089 
01090         result = SMB_VFS_NEXT_WRITE(handle, fsp, fd, data, n);
01091 
01092         do_log(SMB_VFS_OP_WRITE, (result >= 0), handle, "%s", fsp->fsp_name);
01093 
01094         return result;
01095 }

static ssize_t smb_full_audit_pwrite ( vfs_handle_struct handle,
files_struct fsp,
int  fd,
const void *  data,
size_t  n,
SMB_OFF_T  offset 
) [static]

vfs_full_audit.c1097 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_PWRITE.

01100 {
01101         ssize_t result;
01102 
01103         result = SMB_VFS_NEXT_PWRITE(handle, fsp, fd, data, n, offset);
01104 
01105         do_log(SMB_VFS_OP_PWRITE, (result >= 0), handle, "%s", fsp->fsp_name);
01106 
01107         return result;
01108 }

static SMB_OFF_T smb_full_audit_lseek ( vfs_handle_struct handle,
files_struct fsp,
int  filedes,
SMB_OFF_T  offset,
int  whence 
) [static]

vfs_full_audit.c1110 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_LSEEK.

01112 {
01113         ssize_t result;
01114 
01115         result = SMB_VFS_NEXT_LSEEK(handle, fsp, filedes, offset, whence);
01116 
01117         do_log(SMB_VFS_OP_LSEEK, (result != (ssize_t)-1), handle,
01118                "%s", fsp->fsp_name);
01119 
01120         return result;
01121 }

static ssize_t smb_full_audit_sendfile ( vfs_handle_struct handle,
int  tofd,
files_struct fsp,
int  fromfd,
const DATA_BLOB hdr,
SMB_OFF_T  offset,
size_t  n 
) [static]

vfs_full_audit.c1123 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_SENDFILE.

01127 {
01128         ssize_t result;
01129 
01130         result = SMB_VFS_NEXT_SENDFILE(handle, tofd, fsp, fromfd, hdr,
01131                                        offset, n);
01132 
01133         do_log(SMB_VFS_OP_SENDFILE, (result >= 0), handle,
01134                "%s", fsp->fsp_name);
01135 
01136         return result;
01137 }

static int smb_full_audit_rename ( vfs_handle_struct handle,
const char *  oldname,
const char *  newname 
) [static]

vfs_full_audit.c1139 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_RENAME.

01141 {
01142         int result;
01143         
01144         result = SMB_VFS_NEXT_RENAME(handle, oldname, newname);
01145 
01146         do_log(SMB_VFS_OP_RENAME, (result >= 0), handle, "%s|%s", oldname, newname);
01147 
01148         return result;    
01149 }

static int smb_full_audit_fsync ( vfs_handle_struct handle,
files_struct fsp,
int  fd 
) [static]

vfs_full_audit.c1151 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_FSYNC.

01152 {
01153         int result;
01154         
01155         result = SMB_VFS_NEXT_FSYNC(handle, fsp, fd);
01156 
01157         do_log(SMB_VFS_OP_FSYNC, (result >= 0), handle, "%s", fsp->fsp_name);
01158 
01159         return result;    
01160 }

static int smb_full_audit_stat ( vfs_handle_struct handle,
const char *  fname,
SMB_STRUCT_STAT *  sbuf 
) [static]

vfs_full_audit.c1162 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_STAT.

01164 {
01165         int result;
01166         
01167         result = SMB_VFS_NEXT_STAT(handle, fname, sbuf);
01168 
01169         do_log(SMB_VFS_OP_STAT, (result >= 0), handle, "%s", fname);
01170 
01171         return result;    
01172 }

static int smb_full_audit_fstat ( vfs_handle_struct handle,
files_struct fsp,
int  fd,
SMB_STRUCT_STAT *  sbuf 
) [static]

vfs_full_audit.c1174 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_FSTAT.

01176 {
01177         int result;
01178         
01179         result = SMB_VFS_NEXT_FSTAT(handle, fsp, fd, sbuf);
01180 
01181         do_log(SMB_VFS_OP_FSTAT, (result >= 0), handle, "%s", fsp->fsp_name);
01182 
01183         return result;
01184 }

static int smb_full_audit_lstat ( vfs_handle_struct handle,
const char *  path,
SMB_STRUCT_STAT *  sbuf 
) [static]

vfs_full_audit.c1186 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_LSTAT.

01188 {
01189         int result;
01190         
01191         result = SMB_VFS_NEXT_LSTAT(handle, path, sbuf);
01192 
01193         do_log(SMB_VFS_OP_LSTAT, (result >= 0), handle, "%s", path);
01194 
01195         return result;    
01196 }

static int smb_full_audit_unlink ( vfs_handle_struct handle,
const char *  path 
) [static]

vfs_full_audit.c1198 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_UNLINK.

01200 {
01201         int result;
01202         
01203         result = SMB_VFS_NEXT_UNLINK(handle, path);
01204 
01205         do_log(SMB_VFS_OP_UNLINK, (result >= 0), handle, "%s", path);
01206 
01207         return result;
01208 }

static int smb_full_audit_chmod ( vfs_handle_struct handle,
const char *  path,
mode_t  mode 
) [static]

vfs_full_audit.c1210 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_CHMOD.

01212 {
01213         int result;
01214 
01215         result = SMB_VFS_NEXT_CHMOD(handle, path, mode);
01216 
01217         do_log(SMB_VFS_OP_CHMOD, (result >= 0), handle, "%s|%o", path, mode);
01218 
01219         return result;
01220 }

static int smb_full_audit_fchmod ( vfs_handle_struct handle,
files_struct fsp,
int  fd,
mode_t  mode 
) [static]

vfs_full_audit.c1222 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_FCHMOD.

01224 {
01225         int result;
01226         
01227         result = SMB_VFS_NEXT_FCHMOD(handle, fsp, fd, mode);
01228 
01229         do_log(SMB_VFS_OP_FCHMOD, (result >= 0), handle,
01230                "%s|%o", fsp->fsp_name, mode);
01231 
01232         return result;
01233 }

static int smb_full_audit_chown ( vfs_handle_struct handle,
const char *  path,
uid_t  uid,
gid_t  gid 
) [static]

vfs_full_audit.c1235 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_CHOWN.

01237 {
01238         int result;
01239 
01240         result = SMB_VFS_NEXT_CHOWN(handle, path, uid, gid);
01241 
01242         do_log(SMB_VFS_OP_CHOWN, (result >= 0), handle, "%s|%ld|%ld",
01243                path, (long int)uid, (long int)gid);
01244 
01245         return result;
01246 }

static int smb_full_audit_fchown ( vfs_handle_struct handle,
files_struct fsp,
int  fd,
uid_t  uid,
gid_t  gid 
) [static]

vfs_full_audit.c1248 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_FCHOWN.

01250 {
01251         int result;
01252 
01253         result = SMB_VFS_NEXT_FCHOWN(handle, fsp, fd, uid, gid);
01254 
01255         do_log(SMB_VFS_OP_FCHOWN, (result >= 0), handle, "%s|%ld|%ld",
01256                fsp->fsp_name, (long int)uid, (long int)gid);
01257 
01258         return result;
01259 }

static int smb_full_audit_chdir ( vfs_handle_struct handle,
const char *  path 
) [static]

vfs_full_audit.c1261 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_CHDIR.

01263 {
01264         int result;
01265 
01266         result = SMB_VFS_NEXT_CHDIR(handle, path);
01267 
01268         do_log(SMB_VFS_OP_CHDIR, (result >= 0), handle, "chdir|%s", path);
01269 
01270         return result;
01271 }

static char * smb_full_audit_getwd ( vfs_handle_struct handle,
char *  path 
) [static]

vfs_full_audit.c1273 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_GETWD.

01275 {
01276         char *result;
01277 
01278         result = SMB_VFS_NEXT_GETWD(handle, path);
01279         
01280         do_log(SMB_VFS_OP_GETWD, (result != NULL), handle, "%s", path);
01281 
01282         return result;
01283 }

static int smb_full_audit_ntimes ( vfs_handle_struct handle,
const char *  path,
const struct timespec  ts[2] 
) [static]

vfs_full_audit.c1285 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_NTIMES.

01287 {
01288         int result;
01289 
01290         result = SMB_VFS_NEXT_NTIMES(handle, path, ts);
01291 
01292         do_log(SMB_VFS_OP_NTIMES, (result >= 0), handle, "%s", path);
01293 
01294         return result;
01295 }

static int smb_full_audit_ftruncate ( vfs_handle_struct handle,
files_struct fsp,
int  fd,
SMB_OFF_T  len 
) [static]

vfs_full_audit.c1297 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_FTRUNCATE.

01299 {
01300         int result;
01301 
01302         result = SMB_VFS_NEXT_FTRUNCATE(handle, fsp, fd, len);
01303 
01304         do_log(SMB_VFS_OP_FTRUNCATE, (result >= 0), handle,
01305                "%s", fsp->fsp_name);
01306 
01307         return result;
01308 }

static BOOL smb_full_audit_lock ( vfs_handle_struct handle,
files_struct fsp,
int  fd,
int  op,
SMB_OFF_T  offset,
SMB_OFF_T  count,
int  type 
) [static]

vfs_full_audit.c1310 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_LOCK.

01312 {
01313         BOOL result;
01314 
01315         result = SMB_VFS_NEXT_LOCK(handle, fsp, fd, op, offset, count, type);
01316 
01317         do_log(SMB_VFS_OP_LOCK, (result >= 0), handle, "%s", fsp->fsp_name);
01318 
01319         return result;
01320 }

static int smb_full_audit_kernel_flock ( struct vfs_handle_struct handle,
struct files_struct fsp,
int  fd,
uint32  share_mode 
) [static]

vfs_full_audit.c1322 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_KERNEL_FLOCK.

01325 {
01326         int result;
01327 
01328         result = SMB_VFS_NEXT_KERNEL_FLOCK(handle, fsp, fd, share_mode);
01329 
01330         do_log(SMB_VFS_OP_KERNEL_FLOCK, (result >= 0), handle, "%s",
01331                fsp->fsp_name);
01332 
01333         return result;
01334 }

static int smb_full_audit_linux_setlease ( vfs_handle_struct handle,
files_struct fsp,
int  fd,
int  leasetype 
) [static]

vfs_full_audit.c1336 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_LINUX_SETLEASE.

01338 {
01339         int result;
01340 
01341         result = SMB_VFS_NEXT_LINUX_SETLEASE(handle, fsp, fd, leasetype);
01342 
01343         do_log(SMB_VFS_OP_LINUX_SETLEASE, (result >= 0), handle, "%s",
01344                fsp->fsp_name);
01345 
01346         return result;
01347 }

static BOOL smb_full_audit_getlock ( vfs_handle_struct handle,
files_struct fsp,
int  fd,
SMB_OFF_T *  poffset,
SMB_OFF_T *  pcount,
int *  ptype,
pid_t *  ppid 
) [static]

vfs_full_audit.c1349 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_GETLOCK.

01351 {
01352         BOOL result;
01353 
01354         result = SMB_VFS_NEXT_GETLOCK(handle, fsp, fd, poffset, pcount, ptype, ppid);
01355 
01356         do_log(SMB_VFS_OP_GETLOCK, (result >= 0), handle, "%s", fsp->fsp_name);
01357 
01358         return result;
01359 }

static int smb_full_audit_symlink ( vfs_handle_struct handle,
const char *  oldpath,
const char *  newpath 
) [static]

vfs_full_audit.c1361 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYMLINK.

01363 {
01364         int result;
01365 
01366         result = SMB_VFS_NEXT_SYMLINK(handle, oldpath, newpath);
01367 
01368         do_log(SMB_VFS_OP_SYMLINK, (result >= 0), handle,
01369                "%s|%s", oldpath, newpath);
01370 
01371         return result;
01372 }

static int smb_full_audit_readlink ( vfs_handle_struct handle,
const char *  path,
char *  buf,
size_t  bufsiz 
) [static]

vfs_full_audit.c1374 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_READLINK.

01376 {
01377         int result;
01378 
01379         result = SMB_VFS_NEXT_READLINK(handle, path, buf, bufsiz);
01380 
01381         do_log(SMB_VFS_OP_READLINK, (result >= 0), handle, "%s", path);
01382 
01383         return result;
01384 }

static int smb_full_audit_link ( vfs_handle_struct handle,
const char *  oldpath,
const char *  newpath 
) [static]

vfs_full_audit.c1386 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_LINK.

01388 {
01389         int result;
01390 
01391         result = SMB_VFS_NEXT_LINK(handle, oldpath, newpath);
01392 
01393         do_log(SMB_VFS_OP_LINK, (result >= 0), handle,
01394                "%s|%s", oldpath, newpath);
01395 
01396         return result;
01397 }

static int smb_full_audit_mknod ( vfs_handle_struct handle,
const char *  pathname,
mode_t  mode,
SMB_DEV_T  dev 
) [static]

vfs_full_audit.c1399 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_MKNOD.

01401 {
01402         int result;
01403 
01404         result = SMB_VFS_NEXT_MKNOD(handle, pathname, mode, dev);
01405 
01406         do_log(SMB_VFS_OP_MKNOD, (result >= 0), handle, "%s", pathname);
01407 
01408         return result;
01409 }

static char * smb_full_audit_realpath ( vfs_handle_struct handle,
const char *  path,
char *  resolved_path 
) [static]

vfs_full_audit.c1411 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_REALPATH.

01413 {
01414         char *result;
01415 
01416         result = SMB_VFS_NEXT_REALPATH(handle, path, resolved_path);
01417 
01418         do_log(SMB_VFS_OP_REALPATH, (result != NULL), handle, "%s", path);
01419 
01420         return result;
01421 }

static NTSTATUS smb_full_audit_notify_watch ( struct vfs_handle_struct handle,
struct sys_notify_context ctx,
struct notify_entry e,
void(*)(struct sys_notify_context *ctx, void *private_data, struct notify_event *ev)  callback,
void *  private_data,
void *  handle_p 
) [static]

vfs_full_audit.c1423 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_NOTIFY_WATCH.

01430 {
01431         NTSTATUS result;
01432 
01433         result = SMB_VFS_NEXT_NOTIFY_WATCH(handle, ctx, e, callback, private_data, handle_p);
01434 
01435         do_log(SMB_VFS_OP_NOTIFY_WATCH, NT_STATUS_IS_OK(result), handle, "");
01436 
01437         return result;
01438 }

static int smb_full_audit_chflags ( vfs_handle_struct handle,
const char *  path,
uint  flags 
) [static]

vfs_full_audit.c1440 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_CHFLAGS.

01442 {
01443         int result;
01444 
01445         result = SMB_VFS_NEXT_CHFLAGS(handle, path, flags);
01446 
01447         do_log(SMB_VFS_OP_CHFLAGS, (result != 0), handle, "%s", path);
01448 
01449         return result;
01450 }

static size_t smb_full_audit_fget_nt_acl ( vfs_handle_struct handle,
files_struct fsp,
int  fd,
uint32  security_info,
SEC_DESC **  ppdesc 
) [static]

vfs_full_audit.c1452 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_FGET_NT_ACL.

01455 {
01456         size_t result;
01457 
01458         result = SMB_VFS_NEXT_FGET_NT_ACL(handle, fsp, fd, security_info,
01459                                           ppdesc);
01460 
01461         do_log(SMB_VFS_OP_FGET_NT_ACL, (result > 0), handle,
01462                "%s", fsp->fsp_name);
01463 
01464         return result;
01465 }

static size_t smb_full_audit_get_nt_acl ( vfs_handle_struct handle,
files_struct fsp,
const char *  name,
uint32  security_info,
SEC_DESC **  ppdesc 
) [static]

vfs_full_audit.c1467 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_GET_NT_ACL.

01470 {
01471         size_t result;
01472 
01473         result = SMB_VFS_NEXT_GET_NT_ACL(handle, fsp, name, security_info,
01474                                          ppdesc);
01475 
01476         do_log(SMB_VFS_OP_GET_NT_ACL, (result > 0), handle,
01477                "%s", fsp->fsp_name);
01478 
01479         return result;
01480 }

static BOOL smb_full_audit_fset_nt_acl ( vfs_handle_struct handle,
files_struct fsp,
int  fd,
uint32  security_info_sent,
SEC_DESC psd 
) [static]

vfs_full_audit.c1482 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_FSET_NT_ACL.

01485 {
01486         BOOL result;
01487 
01488         result = SMB_VFS_NEXT_FSET_NT_ACL(handle, fsp, fd, security_info_sent,
01489                                           psd);
01490 
01491         do_log(SMB_VFS_OP_FSET_NT_ACL, result, handle, "%s", fsp->fsp_name);
01492 
01493         return result;
01494 }

static BOOL smb_full_audit_set_nt_acl ( vfs_handle_struct handle,
files_struct fsp,
const char *  name,
uint32  security_info_sent,
SEC_DESC psd 
) [static]

vfs_full_audit.c1496 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_SET_NT_ACL.

01499 {
01500         BOOL result;
01501 
01502         result = SMB_VFS_NEXT_SET_NT_ACL(handle, fsp, name, security_info_sent,
01503                                          psd);
01504 
01505         do_log(SMB_VFS_OP_SET_NT_ACL, result, handle, "%s", fsp->fsp_name);
01506 
01507         return result;
01508 }

static int smb_full_audit_chmod_acl ( vfs_handle_struct handle,
const char *  path,
mode_t  mode 
) [static]

vfs_full_audit.c1510 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_CHMOD_ACL.

01512 {
01513         int result;
01514         
01515         result = SMB_VFS_NEXT_CHMOD_ACL(handle, path, mode);
01516 
01517         do_log(SMB_VFS_OP_CHMOD_ACL, (result >= 0), handle,
01518                "%s|%o", path, mode);
01519 
01520         return result;
01521 }

static int smb_full_audit_fchmod_acl ( vfs_handle_struct handle,
files_struct fsp,
int  fd,
mode_t  mode 
) [static]

vfs_full_audit.c1523 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_FCHMOD_ACL.

01525 {
01526         int result;
01527         
01528         result = SMB_VFS_NEXT_FCHMOD_ACL(handle, fsp, fd, mode);
01529 
01530         do_log(SMB_VFS_OP_FCHMOD_ACL, (result >= 0), handle,
01531                "%s|%o", fsp->fsp_name, mode);
01532 
01533         return result;
01534 }

static int smb_full_audit_sys_acl_get_entry ( vfs_handle_struct handle,
SMB_ACL_T  theacl,
int  entry_id,
SMB_ACL_ENTRY_T entry_p 
) [static]

vfs_full_audit.c1536 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_GET_ENTRY.

01540 {
01541         int result;
01542 
01543         result = SMB_VFS_NEXT_SYS_ACL_GET_ENTRY(handle, theacl, entry_id,
01544                                                 entry_p);
01545 
01546         do_log(SMB_VFS_OP_SYS_ACL_GET_ENTRY, (result >= 0), handle,
01547                "");
01548 
01549         return result;
01550 }

static int smb_full_audit_sys_acl_get_tag_type ( vfs_handle_struct handle,
SMB_ACL_ENTRY_T  entry_d,
SMB_ACL_TAG_T tag_type_p 
) [static]

vfs_full_audit.c1552 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_GET_TAG_TYPE.

01556 {
01557         int result;
01558 
01559         result = SMB_VFS_NEXT_SYS_ACL_GET_TAG_TYPE(handle, entry_d,
01560                                                    tag_type_p);
01561 
01562         do_log(SMB_VFS_OP_SYS_ACL_GET_TAG_TYPE, (result >= 0), handle,
01563                "");
01564 
01565         return result;
01566 }

static int smb_full_audit_sys_acl_get_permset ( vfs_handle_struct handle,
SMB_ACL_ENTRY_T  entry_d,
SMB_ACL_PERMSET_T permset_p 
) [static]

vfs_full_audit.c1568 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_GET_PERMSET.

01572 {
01573         int result;
01574 
01575         result = SMB_VFS_NEXT_SYS_ACL_GET_PERMSET(handle, entry_d,
01576                                                   permset_p);
01577 
01578         do_log(SMB_VFS_OP_SYS_ACL_GET_PERMSET, (result >= 0), handle,
01579                "");
01580 
01581         return result;
01582 }

static void * smb_full_audit_sys_acl_get_qualifier ( vfs_handle_struct handle,
SMB_ACL_ENTRY_T  entry_d 
) [static]

vfs_full_audit.c1584 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_GET_QUALIFIER.

01587 {
01588         void *result;
01589 
01590         result = SMB_VFS_NEXT_SYS_ACL_GET_QUALIFIER(handle, entry_d);
01591 
01592         do_log(SMB_VFS_OP_SYS_ACL_GET_QUALIFIER, (result != NULL), handle,
01593                "");
01594 
01595         return result;
01596 }

static SMB_ACL_T smb_full_audit_sys_acl_get_file ( vfs_handle_struct handle,
const char *  path_p,
SMB_ACL_TYPE_T  type 
) [static]

vfs_full_audit.c1598 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_GET_FILE.

01601 {
01602         SMB_ACL_T result;
01603 
01604         result = SMB_VFS_NEXT_SYS_ACL_GET_FILE(handle, path_p, type);
01605 
01606         do_log(SMB_VFS_OP_SYS_ACL_GET_FILE, (result != NULL), handle,
01607                "%s", path_p);
01608 
01609         return result;
01610 }

static SMB_ACL_T smb_full_audit_sys_acl_get_fd ( vfs_handle_struct handle,
files_struct fsp,
int  fd 
) [static]

vfs_full_audit.c1612 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_SYS_ACL_GET_FD.

01614 {
01615         SMB_ACL_T result;
01616 
01617         result = SMB_VFS_NEXT_SYS_ACL_GET_FD(handle, fsp, fd);
01618 
01619         do_log(SMB_VFS_OP_SYS_ACL_GET_FD, (result != NULL), handle,
01620                "%s", fsp->fsp_name);
01621 
01622         return result;
01623 }

static int smb_full_audit_sys_acl_clear_perms ( vfs_handle_struct handle,
SMB_ACL_PERMSET_T  permset 
) [static]

vfs_full_audit.c1625 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_CLEAR_PERMS.

01628 {
01629         int result;
01630 
01631         result = SMB_VFS_NEXT_SYS_ACL_CLEAR_PERMS(handle, permset);
01632 
01633         do_log(SMB_VFS_OP_SYS_ACL_CLEAR_PERMS, (result >= 0), handle,
01634                "");
01635 
01636         return result;
01637 }

static int smb_full_audit_sys_acl_add_perm ( vfs_handle_struct handle,
SMB_ACL_PERMSET_T  permset,
SMB_ACL_PERM_T  perm 
) [static]

vfs_full_audit.c1639 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_ADD_PERM.

01643 {
01644         int result;
01645 
01646         result = SMB_VFS_NEXT_SYS_ACL_ADD_PERM(handle, permset, perm);
01647 
01648         do_log(SMB_VFS_OP_SYS_ACL_ADD_PERM, (result >= 0), handle,
01649                "");
01650 
01651         return result;
01652 }

static char * smb_full_audit_sys_acl_to_text ( vfs_handle_struct handle,
SMB_ACL_T  theacl,
ssize_t *  plen 
) [static]

vfs_full_audit.c1654 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_TO_TEXT.

01657 {
01658         char * result;
01659 
01660         result = SMB_VFS_NEXT_SYS_ACL_TO_TEXT(handle, theacl, plen);
01661 
01662         do_log(SMB_VFS_OP_SYS_ACL_TO_TEXT, (result != NULL), handle,
01663                "");
01664 
01665         return result;
01666 }

static SMB_ACL_T smb_full_audit_sys_acl_init ( vfs_handle_struct handle,
int  count 
) [static]

vfs_full_audit.c1668 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_INIT.

01671 {
01672         SMB_ACL_T result;
01673 
01674         result = SMB_VFS_NEXT_SYS_ACL_INIT(handle, count);
01675 
01676         do_log(SMB_VFS_OP_SYS_ACL_INIT, (result != NULL), handle,
01677                "");
01678 
01679         return result;
01680 }

static int smb_full_audit_sys_acl_create_entry ( vfs_handle_struct handle,
SMB_ACL_T pacl,
SMB_ACL_ENTRY_T pentry 
) [static]

vfs_full_audit.c1682 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_CREATE_ENTRY.

01685 {
01686         int result;
01687 
01688         result = SMB_VFS_NEXT_SYS_ACL_CREATE_ENTRY(handle, pacl, pentry);
01689 
01690         do_log(SMB_VFS_OP_SYS_ACL_CREATE_ENTRY, (result >= 0), handle,
01691                "");
01692 
01693         return result;
01694 }

static int smb_full_audit_sys_acl_set_tag_type ( vfs_handle_struct handle,
SMB_ACL_ENTRY_T  entry,
SMB_ACL_TAG_T  tagtype 
) [static]

vfs_full_audit.c1696 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_SET_TAG_TYPE.

01700 {
01701         int result;
01702 
01703         result = SMB_VFS_NEXT_SYS_ACL_SET_TAG_TYPE(handle, entry,
01704                                                    tagtype);
01705 
01706         do_log(SMB_VFS_OP_SYS_ACL_SET_TAG_TYPE, (result >= 0), handle,
01707                "");
01708 
01709         return result;
01710 }

static int smb_full_audit_sys_acl_set_qualifier ( vfs_handle_struct handle,
SMB_ACL_ENTRY_T  entry,
void *  qual 
) [static]

vfs_full_audit.c1712 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_SET_QUALIFIER.

01716 {
01717         int result;
01718 
01719         result = SMB_VFS_NEXT_SYS_ACL_SET_QUALIFIER(handle, entry, qual);
01720 
01721         do_log(SMB_VFS_OP_SYS_ACL_SET_QUALIFIER, (result >= 0), handle,
01722                "");
01723 
01724         return result;
01725 }

static int smb_full_audit_sys_acl_set_permset ( vfs_handle_struct handle,
SMB_ACL_ENTRY_T  entry,
SMB_ACL_PERMSET_T  permset 
) [static]

vfs_full_audit.c1727 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_SET_PERMSET.

01731 {
01732         int result;
01733 
01734         result = SMB_VFS_NEXT_SYS_ACL_SET_PERMSET(handle, entry, permset);
01735 
01736         do_log(SMB_VFS_OP_SYS_ACL_SET_PERMSET, (result >= 0), handle,
01737                "");
01738 
01739         return result;
01740 }

static int smb_full_audit_sys_acl_valid ( vfs_handle_struct handle,
SMB_ACL_T  theacl 
) [static]

vfs_full_audit.c1742 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_VALID.

01745 {
01746         int result;
01747 
01748         result = SMB_VFS_NEXT_SYS_ACL_VALID(handle, theacl);
01749 
01750         do_log(SMB_VFS_OP_SYS_ACL_VALID, (result >= 0), handle,
01751                "");
01752 
01753         return result;
01754 }

static int smb_full_audit_sys_acl_set_file ( vfs_handle_struct handle,
const char *  name,
SMB_ACL_TYPE_T  acltype,
SMB_ACL_T  theacl 
) [static]

vfs_full_audit.c1756 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_SET_FILE.

01760 {
01761         int result;
01762 
01763         result = SMB_VFS_NEXT_SYS_ACL_SET_FILE(handle, name, acltype,
01764                                                theacl);
01765 
01766         do_log(SMB_VFS_OP_SYS_ACL_SET_FILE, (result >= 0), handle,
01767                "%s", name);
01768 
01769         return result;
01770 }

static int smb_full_audit_sys_acl_set_fd ( vfs_handle_struct handle,
files_struct fsp,
int  fd,
SMB_ACL_T  theacl 
) [static]

vfs_full_audit.c1772 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_SYS_ACL_SET_FD.

01774 {
01775         int result;
01776 
01777         result = SMB_VFS_NEXT_SYS_ACL_SET_FD(handle, fsp, fd, theacl);
01778 
01779         do_log(SMB_VFS_OP_SYS_ACL_SET_FD, (result >= 0), handle,
01780                "%s", fsp->fsp_name);
01781 
01782         return result;
01783 }

static int smb_full_audit_sys_acl_delete_def_file ( vfs_handle_struct handle,
const char *  path 
) [static]

vfs_full_audit.c1785 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_DELETE_DEF_FILE.

01788 {
01789         int result;
01790 
01791         result = SMB_VFS_NEXT_SYS_ACL_DELETE_DEF_FILE(handle, path);
01792 
01793         do_log(SMB_VFS_OP_SYS_ACL_DELETE_DEF_FILE, (result >= 0), handle,
01794                "%s", path);
01795 
01796         return result;
01797 }

static int smb_full_audit_sys_acl_get_perm ( vfs_handle_struct handle,
SMB_ACL_PERMSET_T  permset,
SMB_ACL_PERM_T  perm 
) [static]

vfs_full_audit.c1799 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_GET_PERM.

01803 {
01804         int result;
01805 
01806         result = SMB_VFS_NEXT_SYS_ACL_GET_PERM(handle, permset, perm);
01807 
01808         do_log(SMB_VFS_OP_SYS_ACL_GET_PERM, (result >= 0), handle,
01809                "");
01810 
01811         return result;
01812 }

static int smb_full_audit_sys_acl_free_text ( vfs_handle_struct handle,
char *  text 
) [static]

vfs_full_audit.c1814 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_FREE_TEXT.

01817 {
01818         int result;
01819 
01820         result = SMB_VFS_NEXT_SYS_ACL_FREE_TEXT(handle, text);
01821 
01822         do_log(SMB_VFS_OP_SYS_ACL_FREE_TEXT, (result >= 0), handle,
01823                "");
01824 
01825         return result;
01826 }

static int smb_full_audit_sys_acl_free_acl ( vfs_handle_struct handle,
SMB_ACL_T  posix_acl 
) [static]

vfs_full_audit.c1828 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_FREE_ACL.

01831 {
01832         int result;
01833 
01834         result = SMB_VFS_NEXT_SYS_ACL_FREE_ACL(handle, posix_acl);
01835 
01836         do_log(SMB_VFS_OP_SYS_ACL_FREE_ACL, (result >= 0), handle,
01837                "");
01838 
01839         return result;
01840 }

static int smb_full_audit_sys_acl_free_qualifier ( vfs_handle_struct handle,
void *  qualifier,
SMB_ACL_TAG_T  tagtype 
) [static]

vfs_full_audit.c1842 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SYS_ACL_FREE_QUALIFIER.

01845 {
01846         int result;
01847 
01848         result = SMB_VFS_NEXT_SYS_ACL_FREE_QUALIFIER(handle, qualifier,
01849                                                      tagtype);
01850 
01851         do_log(SMB_VFS_OP_SYS_ACL_FREE_QUALIFIER, (result >= 0), handle,
01852                "");
01853 
01854         return result;
01855 }

static ssize_t smb_full_audit_getxattr ( struct vfs_handle_struct handle,
const char *  path,
const char *  name,
void *  value,
size_t  size 
) [static]

vfs_full_audit.c1857 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_GETXATTR.

01860 {
01861         ssize_t result;
01862 
01863         result = SMB_VFS_NEXT_GETXATTR(handle, path, name, value, size);
01864 
01865         do_log(SMB_VFS_OP_GETXATTR, (result >= 0), handle,
01866                "%s|%s", path, name);
01867 
01868         return result;
01869 }

static ssize_t smb_full_audit_lgetxattr ( struct vfs_handle_struct handle,
const char *  path,
const char *  name,
void *  value,
size_t  size 
) [static]

vfs_full_audit.c1871 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_LGETXATTR.

01874 {
01875         ssize_t result;
01876 
01877         result = SMB_VFS_NEXT_LGETXATTR(handle, path, name, value, size);
01878 
01879         do_log(SMB_VFS_OP_LGETXATTR, (result >= 0), handle,
01880                "%s|%s", path, name);
01881 
01882         return result;
01883 }

static ssize_t smb_full_audit_fgetxattr ( struct vfs_handle_struct handle,
struct files_struct fsp,
int  fd,
const char *  name,
void *  value,
size_t  size 
) [static]

vfs_full_audit.c1885 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_FGETXATTR.

01888 {
01889         ssize_t result;
01890 
01891         result = SMB_VFS_NEXT_FGETXATTR(handle, fsp, fd, name, value, size);
01892 
01893         do_log(SMB_VFS_OP_FGETXATTR, (result >= 0), handle,
01894                "%s|%s", fsp->fsp_name, name);
01895 
01896         return result;
01897 }

static ssize_t smb_full_audit_listxattr ( struct vfs_handle_struct handle,
const char *  path,
char *  list,
size_t  size 
) [static]

vfs_full_audit.c1899 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_LISTXATTR.

01901 {
01902         ssize_t result;
01903 
01904         result = SMB_VFS_NEXT_LISTXATTR(handle, path, list, size);
01905 
01906         do_log(SMB_VFS_OP_LISTXATTR, (result >= 0), handle, "%s", path);
01907 
01908         return result;
01909 }

static ssize_t smb_full_audit_llistxattr ( struct vfs_handle_struct handle,
const char *  path,
char *  list,
size_t  size 
) [static]

vfs_full_audit.c1911 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_LLISTXATTR.

01913 {
01914         ssize_t result;
01915 
01916         result = SMB_VFS_NEXT_LLISTXATTR(handle, path, list, size);
01917 
01918         do_log(SMB_VFS_OP_LLISTXATTR, (result >= 0), handle, "%s", path);
01919 
01920         return result;
01921 }

static ssize_t smb_full_audit_flistxattr ( struct vfs_handle_struct handle,
struct files_struct fsp,
int  fd,
char *  list,
size_t  size 
) [static]

vfs_full_audit.c1923 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_FLISTXATTR.

01926 {
01927         ssize_t result;
01928 
01929         result = SMB_VFS_NEXT_FLISTXATTR(handle, fsp, fd, list, size);
01930 
01931         do_log(SMB_VFS_OP_FLISTXATTR, (result >= 0), handle,
01932                "%s", fsp->fsp_name);
01933 
01934         return result;
01935 }

static int smb_full_audit_removexattr ( struct vfs_handle_struct handle,
const char *  path,
const char *  name 
) [static]

vfs_full_audit.c1937 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_REMOVEXATTR.

01940 {
01941         int result;
01942 
01943         result = SMB_VFS_NEXT_REMOVEXATTR(handle, path, name);
01944 
01945         do_log(SMB_VFS_OP_REMOVEXATTR, (result >= 0), handle,
01946                "%s|%s", path, name);
01947 
01948         return result;
01949 }

static int smb_full_audit_lremovexattr ( struct vfs_handle_struct handle,
const char *  path,
const char *  name 
) [static]

vfs_full_audit.c1951 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_LREMOVEXATTR.

01954 {
01955         int result;
01956 
01957         result = SMB_VFS_NEXT_LREMOVEXATTR(handle, path, name);
01958 
01959         do_log(SMB_VFS_OP_LREMOVEXATTR, (result >= 0), handle,
01960                "%s|%s", path, name);
01961 
01962         return result;
01963 }

static int smb_full_audit_fremovexattr ( struct vfs_handle_struct handle,
struct files_struct fsp,
int  fd,
const char *  name 
) [static]

vfs_full_audit.c1965 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_FREMOVEXATTR.

01968 {
01969         int result;
01970 
01971         result = SMB_VFS_NEXT_FREMOVEXATTR(handle, fsp, fd, name);
01972 
01973         do_log(SMB_VFS_OP_FREMOVEXATTR, (result >= 0), handle,
01974                "%s|%s", fsp->fsp_name, name);
01975 
01976         return result;
01977 }

static int smb_full_audit_setxattr ( struct vfs_handle_struct handle,
const char *  path,
const char *  name,
const void *  value,
size_t  size,
int  flags 
) [static]

vfs_full_audit.c1979 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_SETXATTR.

01983 {
01984         int result;
01985 
01986         result = SMB_VFS_NEXT_SETXATTR(handle, path, name, value, size,
01987                                        flags);
01988 
01989         do_log(SMB_VFS_OP_SETXATTR, (result >= 0), handle,
01990                "%s|%s", path, name);
01991 
01992         return result;
01993 }

static int smb_full_audit_lsetxattr ( struct vfs_handle_struct handle,
const char *  path,
const char *  name,
const void *  value,
size_t  size,
int  flags 
) [static]

vfs_full_audit.c1995 行で定義されています。

参照先 do_log()handleresultSMB_VFS_OP_LSETXATTR.

01999 {
02000         int result;
02001 
02002         result = SMB_VFS_NEXT_LSETXATTR(handle, path, name, value, size,
02003                                         flags);
02004 
02005         do_log(SMB_VFS_OP_LSETXATTR, (result >= 0), handle,
02006                "%s|%s", path, name);
02007 
02008         return result;
02009 }

static int smb_full_audit_fsetxattr ( struct vfs_handle_struct handle,
struct files_struct fsp,
int  fd,
const char *  name,
const void *  value,
size_t  size,
int  flags 
) [static]

vfs_full_audit.c2011 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_FSETXATTR.

02014 {
02015         int result;
02016 
02017         result = SMB_VFS_NEXT_FSETXATTR(handle, fsp, fd, name, value, size,
02018                                         flags);
02019 
02020         do_log(SMB_VFS_OP_FSETXATTR, (result >= 0), handle,
02021                "%s|%s", fsp->fsp_name, name);
02022 
02023         return result;
02024 }

static int smb_full_audit_aio_read ( struct vfs_handle_struct handle,
struct files_struct fsp,
SMB_STRUCT_AIOCB *  aiocb 
) [static]

vfs_full_audit.c2026 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_AIO_READ.

02027 {
02028         int result;
02029 
02030         result = SMB_VFS_NEXT_AIO_READ(handle, fsp, aiocb);
02031         do_log(SMB_VFS_OP_AIO_READ, (result >= 0), handle,
02032                 "%s", fsp->fsp_name);
02033 
02034         return result;
02035 }

static int smb_full_audit_aio_write ( struct vfs_handle_struct handle,
struct files_struct fsp,
SMB_STRUCT_AIOCB *  aiocb 
) [static]

vfs_full_audit.c2037 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_AIO_WRITE.

02038 {
02039         int result;
02040 
02041         result = SMB_VFS_NEXT_AIO_WRITE(handle, fsp, aiocb);
02042         do_log(SMB_VFS_OP_AIO_WRITE, (result >= 0), handle,
02043                 "%s", fsp->fsp_name);
02044 
02045         return result;
02046 }

static ssize_t smb_full_audit_aio_return ( struct vfs_handle_struct handle,
struct files_struct fsp,
SMB_STRUCT_AIOCB *  aiocb 
) [static]

vfs_full_audit.c2048 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_AIO_RETURN.

02049 {
02050         int result;
02051 
02052         result = SMB_VFS_NEXT_AIO_RETURN(handle, fsp, aiocb);
02053         do_log(SMB_VFS_OP_AIO_RETURN, (result >= 0), handle,
02054                 "%s", fsp->fsp_name);
02055 
02056         return result;
02057 }

static int smb_full_audit_aio_cancel ( struct vfs_handle_struct handle,
struct files_struct fsp,
int  fd,
SMB_STRUCT_AIOCB *  aiocb 
) [static]

vfs_full_audit.c2059 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_AIO_CANCEL.

02060 {
02061         int result;
02062 
02063         result = SMB_VFS_NEXT_AIO_CANCEL(handle, fsp, fd, aiocb);
02064         do_log(SMB_VFS_OP_AIO_CANCEL, (result >= 0), handle,
02065                 "%s", fsp->fsp_name);
02066 
02067         return result;
02068 }

static int smb_full_audit_aio_error ( struct vfs_handle_struct handle,
struct files_struct fsp,
SMB_STRUCT_AIOCB *  aiocb 
) [static]

vfs_full_audit.c2070 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_AIO_ERROR.

02071 {
02072         int result;
02073 
02074         result = SMB_VFS_NEXT_AIO_ERROR(handle, fsp, aiocb);
02075         do_log(SMB_VFS_OP_AIO_ERROR, (result >= 0), handle,
02076                 "%s", fsp->fsp_name);
02077 
02078         return result;
02079 }

static int smb_full_audit_aio_fsync ( struct vfs_handle_struct handle,
struct files_struct fsp,
int  op,
SMB_STRUCT_AIOCB *  aiocb 
) [static]

vfs_full_audit.c2081 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_AIO_FSYNC.

02082 {
02083         int result;
02084 
02085         result = SMB_VFS_NEXT_AIO_FSYNC(handle, fsp, op, aiocb);
02086         do_log(SMB_VFS_OP_AIO_FSYNC, (result >= 0), handle,
02087                 "%s", fsp->fsp_name);
02088 
02089         return result;
02090 }

static int smb_full_audit_aio_suspend ( struct vfs_handle_struct handle,
struct files_struct fsp,
const SMB_STRUCT_AIOCB *const   aiocb[],
int  n,
const struct timespec *  ts 
) [static]

vfs_full_audit.c2092 行で定義されています。

参照先 do_log()files_struct::fsp_namehandleresultSMB_VFS_OP_AIO_SUSPEND.

02093 {
02094         int result;
02095 
02096         result = SMB_VFS_NEXT_AIO_SUSPEND(handle, fsp, aiocb, n, ts);
02097         do_log(SMB_VFS_OP_AIO_SUSPEND, (result >= 0), handle,
02098                 "%s", fsp->fsp_name);
02099 
02100         return result;
02101 }

static int audit_syslog_facility ( vfs_handle_struct handle  )  [static]

vfs_full_audit.c628 行で定義されています。

参照先 handlelp_parm_enum().

00629 {
00630         static const struct enum_list enum_log_facilities[] = {
00631                 { LOG_USER, "USER" },
00632                 { LOG_LOCAL0, "LOCAL0" },
00633                 { LOG_LOCAL1, "LOCAL1" },
00634                 { LOG_LOCAL2, "LOCAL2" },
00635                 { LOG_LOCAL3, "LOCAL3" },
00636                 { LOG_LOCAL4, "LOCAL4" },
00637                 { LOG_LOCAL5, "LOCAL5" },
00638                 { LOG_LOCAL6, "LOCAL6" },
00639                 { LOG_LOCAL7, "LOCAL7" }
00640         };
00641 
00642         int facility;
00643 
00644         facility = lp_parm_enum(SNUM(handle->conn), "full_audit", "facility", enum_log_facilities, LOG_USER);
00645 
00646         return facility;
00647 }

static int audit_syslog_priority ( vfs_handle_struct handle  )  [static]

vfs_full_audit.c649 行で定義されています。

参照先 handlelp_parm_enum().

00650 {
00651         static const struct enum_list enum_log_priorities[] = {
00652                 { LOG_EMERG, "EMERG" },
00653                 { LOG_ALERT, "ALERT" },
00654                 { LOG_CRIT, "CRIT" },
00655                 { LOG_ERR, "ERR" },
00656                 { LOG_WARNING, "WARNING" },
00657                 { LOG_NOTICE, "NOTICE" },
00658                 { LOG_INFO, "INFO" },
00659                 { LOG_DEBUG, "DEBUG" }
00660         };
00661 
00662         int priority;
00663 
00664         priority = lp_parm_enum(SNUM(handle->conn), "full_audit", "priority", enum_log_priorities, LOG_NOTICE);
00665 
00666         return priority;
00667 }

static char* audit_prefix ( connection_struct conn  )  [static]

vfs_full_audit.c669 行で定義されています。

参照先 connection_struct::connectpathcurrent_user_infouserdom_struct::domainget_current_username()connection_struct::gidlp_parm_const_string()standard_sub_advanced()connection_struct::user.

参照元 do_log().

00670 {
00671         static pstring prefix;
00672 
00673         pstrcpy(prefix, lp_parm_const_string(SNUM(conn), "full_audit",
00674                                              "prefix", "%u|%I"));
00675         standard_sub_advanced(lp_servicename(SNUM(conn)), conn->user,
00676                               conn->connectpath, conn->gid,
00677                               get_current_username(),
00678                               current_user_info.domain,
00679                               prefix, sizeof(prefix));
00680         return prefix;
00681 }

static BOOL log_success ( vfs_handle_struct handle,
vfs_op_type  op 
) [static]

vfs_full_audit.c683 行で定義されています。

参照先 bitmap_query()handlevfs_full_audit_private_data::success_ops.

参照元 do_log().

00684 {
00685         struct vfs_full_audit_private_data *pd = NULL;
00686 
00687         SMB_VFS_HANDLE_GET_DATA(handle, pd,
00688                 struct vfs_full_audit_private_data,
00689                 return True);
00690 
00691         if (pd->success_ops == NULL) {
00692                 return True;
00693         }
00694 
00695         return bitmap_query(pd->success_ops, op);
00696 }

static BOOL log_failure ( vfs_handle_struct handle,
vfs_op_type  op 
) [static]

vfs_full_audit.c698 行で定義されています。

参照先 bitmap_query()vfs_full_audit_private_data::failure_opshandle.

参照元 do_log().

00699 {
00700         struct vfs_full_audit_private_data *pd = NULL;
00701 
00702         SMB_VFS_HANDLE_GET_DATA(handle, pd,
00703                 struct vfs_full_audit_private_data,
00704                 return True);
00705 
00706         if (pd->failure_ops == NULL)
00707                 return True;
00708 
00709         return bitmap_query(pd->failure_ops, op);
00710 }

static void init_bitmap ( struct bitmap **  bm,
const char **  ops 
) [static]

vfs_full_audit.c712 行で定義されています。

参照先 bitmap_allocate()bitmap_free()bitmap_set()namesmb_panic()SMB_VFS_OP_LASTstrequal()vfs_op_names.

参照元 smb_full_audit_connect().

00713 {
00714         BOOL log_all = False;
00715 
00716         if (*bm != NULL)
00717                 return;
00718 
00719         *bm = bitmap_allocate(SMB_VFS_OP_LAST);
00720 
00721         if (*bm == NULL) {
00722                 DEBUG(0, ("Could not alloc bitmap -- "
00723                           "defaulting to logging everything\n"));
00724                 return;
00725         }
00726 
00727         while (*ops != NULL) {
00728                 int i;
00729                 BOOL found = False;
00730 
00731                 if (strequal(*ops, "all")) {
00732                         log_all = True;
00733                         break;
00734                 }
00735 
00736                 if (strequal(*ops, "none")) {
00737                         break;
00738                 }
00739 
00740                 for (i=0; i<SMB_VFS_OP_LAST; i++) {
00741                         if (vfs_op_names[i].name == NULL) {
00742                                 smb_panic("vfs_full_audit.c: name table not "
00743                                           "in sync with vfs.h\n");
00744                         }
00745 
00746                         if (strequal(*ops, vfs_op_names[i].name)) {
00747                                 bitmap_set(*bm, i);
00748                                 found = True;
00749                         }
00750                 }
00751                 if (!found) {
00752                         DEBUG(0, ("Could not find opname %s, logging all\n",
00753                                   *ops));
00754                         log_all = True;
00755                         break;
00756                 }
00757                 ops += 1;
00758         }
00759 
00760         if (log_all) {
00761                 /* The query functions default to True */
00762                 bitmap_free(*bm);
00763                 *bm = NULL;
00764         }
00765 }

static const char* audit_opname ( vfs_op_type  op  )  [static]

vfs_full_audit.c767 行で定義されています。

参照先 SMB_VFS_OP_LASTvfs_op_names.

参照元 do_log().

00768 {
00769         if (op >= SMB_VFS_OP_LAST)
00770                 return "INVALID VFS OP";
00771         return vfs_op_names[op].name;
00772 }

static void do_log ( vfs_op_type  op,
BOOL  success,
vfs_handle_struct handle,
const char *  format,
  ... 
) [static]

vfs_full_audit.c774 行で定義されています。

参照先 audit_opname()audit_prefix()audit_syslog_priority()errnofstr_sprintf()handlelog_failure()log_success()strerror()vsnprintf().

参照元 smb_full_audit_aio_cancel()smb_full_audit_aio_error()smb_full_audit_aio_fsync()smb_full_audit_aio_read()smb_full_audit_aio_return()smb_full_audit_aio_suspend()smb_full_audit_aio_write()smb_full_audit_chdir()smb_full_audit_chflags()smb_full_audit_chmod()smb_full_audit_chmod_acl()smb_full_audit_chown()smb_full_audit_close()smb_full_audit_closedir()smb_full_audit_connect()smb_full_audit_disconnect()smb_full_audit_disk_free()smb_full_audit_fchmod()smb_full_audit_fchmod_acl()smb_full_audit_fchown()smb_full_audit_fget_nt_acl()smb_full_audit_fgetxattr()smb_full_audit_flistxattr()smb_full_audit_fremovexattr()smb_full_audit_fset_nt_acl()smb_full_audit_fsetxattr()smb_full_audit_fstat()smb_full_audit_fsync()smb_full_audit_ftruncate()smb_full_audit_get_nt_acl()smb_full_audit_get_quota()smb_full_audit_get_shadow_copy_data()smb_full_audit_getlock()smb_full_audit_getwd()smb_full_audit_getxattr()smb_full_audit_kernel_flock()smb_full_audit_lgetxattr()smb_full_audit_link()smb_full_audit_linux_setlease()smb_full_audit_listxattr()smb_full_audit_llistxattr()smb_full_audit_lock()smb_full_audit_lremovexattr()smb_full_audit_lseek()smb_full_audit_lsetxattr()smb_full_audit_lstat()smb_full_audit_mkdir()smb_full_audit_mknod()smb_full_audit_notify_watch()smb_full_audit_ntimes()smb_full_audit_open()smb_full_audit_opendir()smb_full_audit_pread()smb_full_audit_pwrite()smb_full_audit_read()smb_full_audit_readdir()smb_full_audit_readlink()smb_full_audit_realpath()smb_full_audit_removexattr()smb_full_audit_rename()smb_full_audit_rewinddir()smb_full_audit_rmdir()smb_full_audit_seekdir()smb_full_audit_sendfile()smb_full_audit_set_nt_acl()smb_full_audit_set_quota()smb_full_audit_setxattr()smb_full_audit_stat()smb_full_audit_statvfs()smb_full_audit_symlink()smb_full_audit_sys_acl_add_perm()smb_full_audit_sys_acl_clear_perms()smb_full_audit_sys_acl_create_entry()smb_full_audit_sys_acl_delete_def_file()smb_full_audit_sys_acl_free_acl()smb_full_audit_sys_acl_free_qualifier()smb_full_audit_sys_acl_free_text()smb_full_audit_sys_acl_get_entry()smb_full_audit_sys_acl_get_fd()smb_full_audit_sys_acl_get_file()smb_full_audit_sys_acl_get_perm()smb_full_audit_sys_acl_get_permset()smb_full_audit_sys_acl_get_qualifier()smb_full_audit_sys_acl_get_tag_type()smb_full_audit_sys_acl_init()smb_full_audit_sys_acl_set_fd()smb_full_audit_sys_acl_set_file()smb_full_audit_sys_acl_set_permset()smb_full_audit_sys_acl_set_qualifier()smb_full_audit_sys_acl_set_tag_type()smb_full_audit_sys_acl_to_text()smb_full_audit_sys_acl_valid()smb_full_audit_telldir()smb_full_audit_unlink()smb_full_audit_write().

00776 {
00777         fstring err_msg;
00778         pstring op_msg;
00779         va_list ap;
00780 
00781         if (success && (!log_success(handle, op)))
00782                 return;
00783 
00784         if (!success && (!log_failure(handle, op)))
00785                 return;
00786 
00787         if (success)
00788                 fstrcpy(err_msg, "ok");
00789         else
00790                 fstr_sprintf(err_msg, "fail (%s)", strerror(errno));
00791 
00792         va_start(ap, format);
00793         vsnprintf(op_msg, sizeof(op_msg), format, ap);
00794         va_end(ap);
00795 
00796         syslog(audit_syslog_priority(handle), "%s|%s|%s|%s\n",
00797                audit_prefix(handle->conn), audit_opname(op), err_msg, op_msg);
00798 
00799         return;
00800 }

static void free_private_data ( void **  p_data  )  [static]

vfs_full_audit.c804 行で定義されています。

参照先 bitmap_free()vfs_full_audit_private_data::failure_opsvfs_full_audit_private_data::success_ops.

参照元 pdb_init_ldapsam_common()smb_full_audit_connect().

00805 {
00806         struct vfs_full_audit_private_data *pd = *(struct vfs_full_audit_private_data **)p_data;
00807 
00808         if (pd->success_ops) {
00809                 bitmap_free(pd->success_ops);
00810         }
00811         if (pd->failure_ops) {
00812                 bitmap_free(pd->failure_ops);
00813         }
00814         SAFE_FREE(pd);
00815         *p_data = NULL;
00816 }

NTSTATUS vfs_full_audit_init ( void   ) 

vfs_full_audit.c2105 行で定義されています。

参照先 audit_op_tuplesdebug_add_class()smb_register_vfs()vfs_full_audit_debug_level.

02106 {
02107         NTSTATUS ret = smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
02108                                         "full_audit", audit_op_tuples);
02109         
02110         if (!NT_STATUS_IS_OK(ret))
02111                 return ret;
02112 
02113         vfs_full_audit_debug_level = debug_add_class("full_audit");
02114         if (vfs_full_audit_debug_level == -1) {
02115                 vfs_full_audit_debug_level = DBGC_VFS;
02116                 DEBUG(0, ("vfs_full_audit: Couldn't register custom debugging "
02117                           "class!\n"));
02118         } else {
02119                 DEBUG(10, ("vfs_full_audit: Debug class number of "
02120                            "'full_audit': %d\n", vfs_full_audit_debug_level));
02121         }
02122         
02123         return ret;
02124 }


変数

userdom_struct current_user_info

substitute.c29 行で定義されています。

int vfs_full_audit_debug_level = DBGC_VFS [static]

vfs_full_audit.c65 行で定義されています。

参照元 vfs_full_audit_init().

vfs_op_tuple audit_op_tuples[] [static]

vfs_full_audit.c307 行で定義されています。

vfs_op_type type

vfs_full_audit.c527 行で定義されています。

参照元 _lsa_lookup_names2()_lsa_open_account()_pam_log_state_datum()_samr_lookup_names()_samr_open_alias()_spoolss_getprinterdata()_spoolss_getprinterdataex()_spoolss_setprinterdata()_spoolss_setprinterdataex()_srv_net_share_add()_srv_net_share_set_info()add_expanded_sid()aixjfs2_get_nfs4_acl()api_NetUserGetGroups()api_RNetServerGetInfo()cac_LsaAddPrivileges()cac_LsaClearPrivileges()cac_LsaEnumAccountRights()cac_LsaOpenAccount()cac_LsaRemovePrivileges()cac_LsaSetPrivileges()cac_SvcEnumServices()can_create()cli_RNetShareEnum()cmd_lock()complete_sync()construct_notify_jobs_info()construct_notify_printer_info()construct_reply()convert_in_un_alloc()convert_in_un_remote()convert_un_in()copy_service()create_builtin_administrators()create_token_from_username()display_sam_sync()dopr()dump_a_service()fetch_database_to_ldif()fill_grent_mem()fill_share_info()filter_reply()filter_request()find_forced_group()free_service()from_struct()get_path()get_share_type()idmap_ldap_allocate_id()idmap_ldap_get_hwm()idmap_ldap_set_hwm()idmap_ldap_set_mapping()idmap_ldap_sids_to_unixids()idmap_ldap_unixids_to_sids()idmap_nss_sids_to_unixids()idmap_nss_unixids_to_sids()idmap_pdb_sids_to_unixids()init_globals()init_registry_data()initialise_wins()is_default()ldapsam_enum_aliasmem()ldapsam_modify_aliasmem()legacy_sid_to_gid()legacy_sid_to_uid()lookup()lookup_as_domain()lookup_lsa_rids()lookup_lsa_sids()lookup_name()lookup_sids()lookupname_recv()lookupname_recv2()lookupsid_recv()lp_do_parameter()lp_next_parameter()lp_save_defaults()make_server_info_pw()merge_default_aces()net_groupmap_add()net_groupmap_modify()net_lookup_name()net_lookup_sid()net_sam_createbuiltingroup()net_sam_set_comment()net_sam_set_pwdmustchangenow()net_sam_set_userflag()net_sam_show()net_sam_userset()new_afs_ace()notify_printer_byname()open_udp_socket()parse_node_status()parse_usershare_acl()pdb_create_builtin_alias()pdb_default_create_alias()pdb_get_group_sid()pdb_new_rid()print_queue_update()py_to_SECDESC()regdb_unpack_values()reply_unknown()rids_to_names()rpc_registry_enumerate_internal()rpc_sh_handle_user()rpc_share_add_internals()rpc_share_migrate_shares_internals()sec_desc_add_sid()sec_desc_del_sid()send_host_announcement()send_lm_host_announcement()send_local_master_announcement()setup_return_cc_name()show_parameter_list()smb_io_notify_option_type()smb_io_notify_option_type_data()smbacl4_fill_ace4()swrap_auto_bind()swrap_sendto()to_struct()token_contains_name()unpack_values()vfs_init_custom()wb_aix_attrlist()winbind_sids_to_unixids()winbindd_dual_lookupname()winbindd_dual_lookupsid()winbindd_dual_pam_auth_cached()winbindd_dual_sids2xids()winbindd_getgrent()winbindd_store_creds()winbindd_wins_byip().

const char* name

vfs_full_audit.c528 行で定義されています。

struct { ... } vfs_op_names[] [static]

参照元 audit_opname()init_bitmap().


Sambaに対してSat Aug 29 21:23:52 2009に生成されました。  doxygen 1.4.7