diff options
author | Ronnie Sahlberg <lsahlber@redhat.com> | 2021-07-13 05:22:59 +0300 |
---|---|---|
committer | Steve French <stfrench@microsoft.com> | 2021-07-14 18:06:33 +0300 |
commit | 50630b3f1ada0bf412d3f28e73bac310448d9d6f (patch) | |
tree | 9d2fa03b9efba7f24a45742cf2250aff51aa3809 | |
parent | 506c1da44fee32ba1d3a70413289ad58c772bba6 (diff) | |
download | linux-50630b3f1ada0bf412d3f28e73bac310448d9d6f.tar.xz |
cifs: Do not use the original cruid when following DFS links for multiuser mounts
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=213565
cruid should only be used for the initial mount and after this we should use the current
users credentials.
Ignore the original cruid mount argument when creating a new context for a multiuser mount
following a DFS link.
Fixes: 24e0a1eff9e2 ("cifs: switch to new mount api")
Cc: stable@vger.kernel.org # 5.11+
Reported-by: Xiaoli Feng <xifeng@redhat.com>
Signed-off-by: Ronnie Sahlberg <lsahlber@redhat.com>
Reviewed-by: Paulo Alcantara (SUSE) <pc@cjr.nz>
Signed-off-by: Steve French <stfrench@microsoft.com>
-rw-r--r-- | fs/cifs/cifs_dfs_ref.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/cifs/cifs_dfs_ref.c b/fs/cifs/cifs_dfs_ref.c index fa131da01a5f..007427ba75e5 100644 --- a/fs/cifs/cifs_dfs_ref.c +++ b/fs/cifs/cifs_dfs_ref.c @@ -211,6 +211,10 @@ char *cifs_compose_mount_options(const char *sb_mountdata, else noff = tkn_e - (sb_mountdata + off) + 1; + if (strncasecmp(sb_mountdata + off, "cruid=", 6) == 0) { + off += noff; + continue; + } if (strncasecmp(sb_mountdata + off, "unc=", 4) == 0) { off += noff; continue; |