diff options
author | Steve French <stfrench@microsoft.com> | 2020-12-12 05:22:04 +0300 |
---|---|---|
committer | Steve French <stfrench@microsoft.com> | 2020-12-14 18:16:22 +0300 |
commit | 047092ffe2b1774ab456e0eff0e40e0eb4b6600e (patch) | |
tree | a8ecb029fff1a354a5ec96b6d1e16be8ed8bd0d5 /fs/cifs/misc.c | |
parent | bc04499477d9f01034c2afb6097e835c705ac3bd (diff) | |
download | linux-047092ffe2b1774ab456e0eff0e40e0eb4b6600e.tar.xz |
cifs: cleanup misc.c
misc.c was getting a little large, move two of the UNC parsing relating
functions to a new C file unc.c which makes the coding of the
upcoming witness protocol patch series a little cleaner as well.
Suggested-by: Rafal Szczesniak <rafal@elbingbrewery.org>
Reviewed-by: Aurelien Aptel <aaptel@suse.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
Diffstat (limited to 'fs/cifs/misc.c')
-rw-r--r-- | fs/cifs/misc.c | 56 |
1 files changed, 0 insertions, 56 deletions
diff --git a/fs/cifs/misc.c b/fs/cifs/misc.c index f0a1c24751b2..1c14cf01dbef 100644 --- a/fs/cifs/misc.c +++ b/fs/cifs/misc.c @@ -1195,59 +1195,3 @@ out: cifs_put_tcon_super(sb); return rc; } - -/* extract the host portion of the UNC string */ -char *extract_hostname(const char *unc) -{ - const char *src; - char *dst, *delim; - unsigned int len; - - /* skip double chars at beginning of string */ - /* BB: check validity of these bytes? */ - if (strlen(unc) < 3) - return ERR_PTR(-EINVAL); - for (src = unc; *src && *src == '\\'; src++) - ; - if (!*src) - return ERR_PTR(-EINVAL); - - /* delimiter between hostname and sharename is always '\\' now */ - delim = strchr(src, '\\'); - if (!delim) - return ERR_PTR(-EINVAL); - - len = delim - src; - dst = kmalloc((len + 1), GFP_KERNEL); - if (dst == NULL) - return ERR_PTR(-ENOMEM); - - memcpy(dst, src, len); - dst[len] = '\0'; - - return dst; -} - -char *extract_sharename(const char *unc) -{ - const char *src; - char *delim, *dst; - int len; - - /* skip double chars at the beginning */ - src = unc + 2; - - /* share name is always preceded by '\\' now */ - delim = strchr(src, '\\'); - if (!delim) - return ERR_PTR(-EINVAL); - delim++; - len = strlen(delim); - - /* caller has to free the memory */ - dst = kstrndup(delim, len, GFP_KERNEL); - if (!dst) - return ERR_PTR(-ENOMEM); - - return dst; -} |