diff options
Diffstat (limited to 'source4/client/client.c')
-rw-r--r-- | source4/client/client.c | 22 |
1 files changed, 6 insertions, 16 deletions
diff --git a/source4/client/client.c b/source4/client/client.c index 10d027b5e0b..1182e5be013 100644 --- a/source4/client/client.c +++ b/source4/client/client.c @@ -302,27 +302,17 @@ static int cmd_cd(struct smbclient_context *ctx, const char **args) static bool mask_match(struct smbcli_state *c, const char *string, const char *pattern, bool is_case_sensitive) { - char *p2, *s2; - bool ret; + int ret; if (ISDOTDOT(string)) string = "."; if (ISDOT(pattern)) return false; - - if (is_case_sensitive) - return ms_fnmatch_protocol( - pattern, string, c->transport->negotiate.protocol, - true) == 0; - - p2 = strlower_talloc(NULL, pattern); - s2 = strlower_talloc(NULL, string); - ret = ms_fnmatch_protocol(p2, s2, c->transport->negotiate.protocol, - true) == 0; - talloc_free(p2); - talloc_free(s2); - - return ret; + + ret = ms_fnmatch_protocol(pattern, string, + c->transport->negotiate.protocol, + is_case_sensitive); + return (ret == 0); } |