summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/smbd/reply.c29
1 files changed, 27 insertions, 2 deletions
diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c
index 852a2d867b..ca7bcb9c5f 100644
--- a/source3/smbd/reply.c
+++ b/source3/smbd/reply.c
@@ -3000,8 +3000,20 @@ NTSTATUS rename_internals(connection_struct *conn,
* Tine Smukavec <valentin.smukavec@hermes.si>.
*/
+#if 0
if (!rc && is_mangled(mask))
check_mangled_cache( mask );
+#endif
+ if (!rc)
+ {
+ char *unmangled;
+
+ unmangled = dos_unmangle(mask);
+ if (unmangled)
+ strncpy(mask, unmangled, strlen(unmangled) + 1);
+
+ SAFE_FREE(unmangled);
+ }
has_wild = ms_has_wild(mask);
@@ -3350,8 +3362,21 @@ int reply_copy(connection_struct *conn, char *inbuf,char *outbuf, int dum_size,
* Tine Smukavec <valentin.smukavec@hermes.si>.
*/
- if (!rc && is_mangled(mask))
- check_mangled_cache( mask );
+#if 0
+ if (!rc && is_mangled(mask))
+ check_mangled_cache( mask );
+#endif
+ if (!rc)
+ {
+ char *unmangled;
+
+ unmangled = dos_unmangle(mask);
+ if (unmangled)
+ strncpy(mask, unmangled, strlen(unmangled) + 1);
+
+ SAFE_FREE(unmangled);
+ }
+
has_wild = ms_has_wild(mask);