From 14a8906e8ca491f3c7aa413daab1eaff29dad576 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Fri, 6 Oct 2000 03:41:48 +0000 Subject: Inlined many of the vfs_XXX calls as macros for speed. Jeremy. (This used to be commit 0811d080abd374f47c7c3c8a1ef007e443e5b79c) --- source3/include/proto.h | 7 ------- source3/include/smb_macros.h | 41 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+), 7 deletions(-) (limited to 'source3/include') diff --git a/source3/include/proto.h b/source3/include/proto.h index bb990a99a4..2457856425 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -3865,15 +3865,8 @@ BOOL vfswrap_lock(files_struct *fsp, int fd, int op, SMB_OFF_T offset, SMB_OFF_T int vfs_init_default(connection_struct *conn); BOOL vfs_init_custom(connection_struct *conn); -int vfs_stat(connection_struct *conn, char *fname, SMB_STRUCT_STAT *st); -int vfs_fstat(files_struct *fsp, int fd, SMB_STRUCT_STAT *st); BOOL vfs_directory_exist(connection_struct *conn, char *dname, SMB_STRUCT_STAT *st); int vfs_mkdir(connection_struct *conn, char *fname, mode_t mode); -int vfs_rmdir(connection_struct *conn, char *fname); -int vfs_unlink(connection_struct *conn, char *fname); -int vfs_chmod(connection_struct *conn, char *fname,mode_t mode); -int vfs_chown(connection_struct *conn, char *fname, uid_t uid, gid_t gid); -int vfs_chdir(connection_struct *conn, char *fname); char *vfs_getwd(connection_struct *conn, char *unix_path); BOOL vfs_file_exist(connection_struct *conn,char *fname,SMB_STRUCT_STAT *sbuf); ssize_t vfs_write_data(files_struct *fsp,char *buffer,size_t N); diff --git a/source3/include/smb_macros.h b/source3/include/smb_macros.h index fe0d15149b..a65b7048e9 100644 --- a/source3/include/smb_macros.h +++ b/source3/include/smb_macros.h @@ -215,5 +215,46 @@ copy an IP address from one buffer to another #define dos_format(fname) string_replace(fname,'/','\\') +/******************************************************************* + vfs stat wrapper that calls dos_to_unix. +********************************************************************/ + +#define vfs_stat(conn, fname, st) ((conn)->vfs_ops.stat((conn), dos_to_unix((fname),False),(st))) + +/******************************************************************* + vfs fstat wrapper that calls dos_to_unix. +********************************************************************/ + +#define vfs_fstat(fsp, fd, st) ((fsp)->conn->vfs_ops.fstat((fsp),(fd),(st))) + +/******************************************************************* + vfs rmdir wrapper that calls dos_to_unix. +********************************************************************/ + +#define vfs_rmdir(conn,fname) ((conn)->vfs_ops.rmdir((conn),dos_to_unix((fname),False))) + +/******************************************************************* + vfs Unlink wrapper that calls dos_to_unix. +********************************************************************/ + +#define vfs_unlink(conn, fname) ((conn)->vfs_ops.unlink((conn),dos_to_unix((fname),False))) + +/******************************************************************* + vfs chmod wrapper that calls dos_to_unix. +********************************************************************/ + +#define vfs_chmod(conn,fname,mode) ((conn)->vfs_ops.chmod((conn),dos_to_unix((fname),False),(mode))) + +/******************************************************************* + vfs chown wrapper that calls dos_to_unix. +********************************************************************/ + +#define vfs_chown(conn,fname,uid,gid) ((conn)->vfs_ops.chown((conn),dos_to_unix((fname),False),(uid),(gid))) + +/******************************************************************* + A wrapper for vfs_chdir(). +********************************************************************/ + +#define vfs_chdir(conn,fname) ((conn)->vfs_ops.chdir((conn),dos_to_unix((fname),False))) #endif /* _SMB_MACROS_H */ -- cgit