diff options
Diffstat (limited to 'source3/smbd')
-rw-r--r-- | source3/smbd/reply.c | 29 |
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); |