summaryrefslogtreecommitdiffstats
path: root/source3/smbd/vfs-wrap.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2001-06-29 22:32:24 +0000
committerJeremy Allison <jra@samba.org>2001-06-29 22:32:24 +0000
commite2ced932dbd34384f1e3752cc073b2fb66467b46 (patch)
tree94bd92fca7c48416bd8d3ac55de72c0155eda2c0 /source3/smbd/vfs-wrap.c
parent2cddd5fe8ca05cd642428b4a7e2356f05cee6386 (diff)
downloadsamba-e2ced932dbd34384f1e3752cc073b2fb66467b46.tar.gz
samba-e2ced932dbd34384f1e3752cc073b2fb66467b46.tar.xz
samba-e2ced932dbd34384f1e3752cc073b2fb66467b46.zip
Ensured all the system calls in msdfs.c go through the vfs layer.
Added vfs calls to symlink() and readlink() with appropriate configure checks. Jeremy. (This used to be commit c24e6b41ea60ab4bac2fcd19da947851d6df3c7c)
Diffstat (limited to 'source3/smbd/vfs-wrap.c')
-rw-r--r--source3/smbd/vfs-wrap.c32
1 files changed, 32 insertions, 0 deletions
diff --git a/source3/smbd/vfs-wrap.c b/source3/smbd/vfs-wrap.c
index da8484e14ee..a0b4966c596 100644
--- a/source3/smbd/vfs-wrap.c
+++ b/source3/smbd/vfs-wrap.c
@@ -558,6 +558,38 @@ BOOL vfswrap_lock(files_struct *fsp, int fd, int op, SMB_OFF_T offset, SMB_OFF_T
return result;
}
+int vfswrap_symlink(connection_struct *conn, const char *oldpath, const char *newpath)
+{
+ int result;
+
+ START_PROFILE(syscall_symlink);
+
+#ifdef VFS_CHECK_NULL
+ if ((oldpath == NULL) || (newpath == NULL))
+ smb_panic("NULL pointer passed to vfswrap_symlink()\n");
+#endif
+
+ result = sys_symlink(oldpath, newpath);
+ END_PROFILE(syscall_symlink);
+ return result;
+}
+
+int vfswrap_readlink(connection_struct *conn, const char *path, char *buf, size_t bufsiz)
+{
+ int result;
+
+ START_PROFILE(syscall_readlink);
+
+#ifdef VFS_CHECK_NULL
+ if ((path == NULL) || (buf == NULL))
+ smb_panic("NULL pointer passed to vfswrap_readlink()\n");
+#endif
+
+ result = sys_readlink(path, buf, bufsiz);
+ END_PROFILE(syscall_readlink);
+ return result;
+}
+
size_t vfswrap_fget_nt_acl(files_struct *fsp, int fd, SEC_DESC **ppdesc)
{
return get_nt_acl(fsp, ppdesc);