summaryrefslogtreecommitdiff
path: root/source3/smbd
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2012-05-03 16:13:08 +0200
committerStefan Metzmacher <metze@samba.org>2012-05-18 16:36:16 +0200
commitd58f7cd5469baba5b47bbd6923103aa4c6b42c91 (patch)
treee2034132652c4f6c439be4360cad5a79de5f7dc8 /source3/smbd
parent84ce4484e7cee8a1d32da698a23941d2ed429b0c (diff)
downloadsamba-d58f7cd5469baba5b47bbd6923103aa4c6b42c91.tar.gz
samba-d58f7cd5469baba5b47bbd6923103aa4c6b42c91.tar.bz2
samba-d58f7cd5469baba5b47bbd6923103aa4c6b42c91.zip
s3:smbd: allow creating new spnego sessions only with a 0 vuid
Found by the raw.context test. metze
Diffstat (limited to 'source3/smbd')
-rw-r--r--source3/smbd/sesssetup.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/source3/smbd/sesssetup.c b/source3/smbd/sesssetup.c
index 7d1535af5a..f9ba9769b5 100644
--- a/source3/smbd/sesssetup.c
+++ b/source3/smbd/sesssetup.c
@@ -202,6 +202,11 @@ static void reply_sesssetup_and_X_spnego(struct smb_request *req)
/* Do we have a valid vuid now ? */
if (!is_partial_auth_vuid(sconn, vuid)) {
+ if (vuid != 0) {
+ reply_force_doserror(req, ERRSRV, ERRbaduid);
+ return;
+ }
+
/* No, start a new authentication setup. */
vuid = register_initial_vuid(sconn);
if (vuid == UID_FIELD_INVALID) {