summaryrefslogtreecommitdiff
path: root/source3/smbwrapper/wrapped.c
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>1998-10-04 06:44:20 +0000
committerAndrew Tridgell <tridge@samba.org>1998-10-04 06:44:20 +0000
commitaf4a13b37a1dbf7df8b246abc4f816f48d71c007 (patch)
tree1a5b064648ff0d2965a362007b3b11f30bd6246e /source3/smbwrapper/wrapped.c
parentf3db9286f98a8d5ab2310fca73e89f0f2732704e (diff)
downloadsamba-af4a13b37a1dbf7df8b246abc4f816f48d71c007.tar.gz
samba-af4a13b37a1dbf7df8b246abc4f816f48d71c007.tar.bz2
samba-af4a13b37a1dbf7df8b246abc4f816f48d71c007.zip
refuse symlinks to or from a smb path
(This used to be commit 83e93d2a4493546cb481f5c8187c64207b5901d1)
Diffstat (limited to 'source3/smbwrapper/wrapped.c')
-rw-r--r--source3/smbwrapper/wrapped.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/source3/smbwrapper/wrapped.c b/source3/smbwrapper/wrapped.c
index 30676ca3d0..13bd449db3 100644
--- a/source3/smbwrapper/wrapped.c
+++ b/source3/smbwrapper/wrapped.c
@@ -495,3 +495,17 @@ __asm__(".globl __write; __write = write");
return real_rmdir(name);
}
+
+ int symlink(const char *topath,const char *frompath)
+{
+ int p1, p2;
+ p1 = smbw_path(topath);
+ p2 = smbw_path(frompath);
+ if (p1 || p2) {
+ /* can't handle symlinks */
+ errno = EPERM;
+ return -1;
+ }
+
+ return real_symlink(topath, frompath);
+}