summaryrefslogtreecommitdiff
path: root/source3/smbd/mangle_hash2.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2005-06-22 21:20:41 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 10:57:59 -0500
commit7e509e9b99a18495bde01a990e37de70bae35aac (patch)
tree36cb4800a573693b66ec270baf9c5d609fa4801c /source3/smbd/mangle_hash2.c
parentbc8954c4fce89992eb31bcb88e27728859aa7132 (diff)
downloadsamba-7e509e9b99a18495bde01a990e37de70bae35aac.tar.gz
samba-7e509e9b99a18495bde01a990e37de70bae35aac.tar.bz2
samba-7e509e9b99a18495bde01a990e37de70bae35aac.zip
r7842: With the patch I sent Steve yesterday this gives us complete POSIX pathnames.
ie. files containing : and \ can be accessed from Linux. Jeremy. (This used to be commit e9b8d23d6138d909a65ea70b2e801881e8333b38)
Diffstat (limited to 'source3/smbd/mangle_hash2.c')
-rw-r--r--source3/smbd/mangle_hash2.c39
1 files changed, 39 insertions, 0 deletions
diff --git a/source3/smbd/mangle_hash2.c b/source3/smbd/mangle_hash2.c
index 4325c07f58..e44aaf17e7 100644
--- a/source3/smbd/mangle_hash2.c
+++ b/source3/smbd/mangle_hash2.c
@@ -716,3 +716,42 @@ struct mangle_fns *mangle_hash2_init(void)
return &mangle_fns;
}
+
+static void posix_mangle_reset(void)
+{;}
+
+static BOOL posix_is_mangled(const char *s, int snum)
+{
+ return False;
+}
+
+static BOOL posix_is_8_3(const char *fname, BOOL check_case, BOOL allow_wildcards, int snum)
+{
+ return False;
+}
+
+static BOOL posix_check_cache( char *s, size_t maxlen, int snum )
+{
+ return False;
+}
+
+static void posix_name_map(char *OutName, BOOL need83, BOOL cache83, int default_case, int snum)
+{
+ if (need83) {
+ memset(OutName, '\0', 13);
+ }
+}
+
+/* POSIX paths backend - no mangle. */
+static struct mangle_fns posix_mangle_fns = {
+ posix_mangle_reset,
+ posix_is_mangled,
+ posix_is_8_3,
+ posix_check_cache,
+ posix_name_map
+};
+
+struct mangle_fns *posix_mangle_init(void)
+{
+ return &posix_mangle_fns;
+}