summaryrefslogtreecommitdiffstats
path: root/source/smbd
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2002-01-10 00:28:09 +0000
committerJeremy Allison <jra@samba.org>2002-01-10 00:28:09 +0000
commit6210d4aa196c944e47076e316980f76ac9c6b02d (patch)
treebaa95fa62c579b24178a1282688486e2a26b0b7c /source/smbd
parent38cfffea5f0d7f5ff676f83204a2923247dce9d5 (diff)
downloadsamba-6210d4aa196c944e47076e316980f76ac9c6b02d.tar.gz
samba-6210d4aa196c944e47076e316980f76ac9c6b02d.tar.xz
samba-6210d4aa196c944e47076e316980f76ac9c6b02d.zip
Getting ready to add UNIX extensions in HEAD also.
Jeremy
Diffstat (limited to 'source/smbd')
-rw-r--r--source/smbd/vfs-wrap.c30
-rw-r--r--source/smbd/vfs.c2
2 files changed, 32 insertions, 0 deletions
diff --git a/source/smbd/vfs-wrap.c b/source/smbd/vfs-wrap.c
index eff72c1f107..b2d73561afc 100644
--- a/source/smbd/vfs-wrap.c
+++ b/source/smbd/vfs-wrap.c
@@ -589,6 +589,36 @@ int vfswrap_readlink(connection_struct *conn, const char *path, char *buf, size_
return result;
}
+int vfswrap_link(connection_struct *conn, const char *oldpath, const char *newpath)
+{
+ int result;
+
+ START_PROFILE(syscall_link);
+
+#ifdef VFS_CHECK_NULL
+ if ((oldpath == NULL) || (newpath == NULL))
+ smb_panic("NULL pointer passed to vfswrap_link()\n");
+#endif
+ result = sys_link(oldpath, newpath);
+ END_PROFILE(syscall_link);
+ return result;
+}
+
+int vfswrap_mknod(connection_struct *conn, const char *pathname, mode_t mode, SMB_DEV_T dev)
+{
+ int result;
+
+ START_PROFILE(syscall_mknod);
+
+#ifdef VFS_CHECK_NULL
+ if (pathname == NULL)
+ smb_panic("NULL pointer passed to vfswrap_mknod()\n");
+#endif
+ result = sys_mknod(pathname, mode, dev);
+ END_PROFILE(syscall_mknod);
+ return result;
+}
+
size_t vfswrap_fget_nt_acl(files_struct *fsp, int fd, SEC_DESC **ppdesc)
{
size_t result;
diff --git a/source/smbd/vfs.c b/source/smbd/vfs.c
index afdfe8c48ff..2396a43d48b 100644
--- a/source/smbd/vfs.c
+++ b/source/smbd/vfs.c
@@ -72,6 +72,8 @@ static struct vfs_ops default_vfs_ops = {
vfswrap_lock,
vfswrap_symlink,
vfswrap_readlink,
+ vfswrap_link,
+ vfswrap_mknod,
vfswrap_fget_nt_acl,
vfswrap_get_nt_acl,