s3: Explicitly pass sconn to negprot_spnego()
authorVolker Lendecke <vl@samba.org>
Sat, 12 Jun 2010 09:25:41 +0000 (11:25 +0200)
committerVolker Lendecke <vl@samba.org>
Sat, 12 Jun 2010 13:42:50 +0000 (15:42 +0200)
source3/smbd/globals.h
source3/smbd/negprot.c
source3/smbd/smb2_negprot.c

index 91712ea3c91bb966a9998c39cf7783323c6f3e97..31d001b18577b3a96d8c161f341f032208841618 100644 (file)
@@ -136,7 +136,7 @@ struct smbd_smb2_request;
 struct smbd_smb2_session;
 struct smbd_smb2_tcon;
 
-DATA_BLOB negprot_spnego(void);
+DATA_BLOB negprot_spnego(struct smbd_server_connection *sconn);
 
 void smbd_lock_socket(struct smbd_server_connection *sconn);
 void smbd_unlock_socket(struct smbd_server_connection *sconn);
index 6c4646102ca431c8d39078342c69b78f0970f0a9..0a928a23d61cbfca0c3333afff0ba79f2c6b3857 100644 (file)
@@ -177,7 +177,7 @@ static void reply_lanman2(struct smb_request *req, uint16 choice)
  Generate the spnego negprot reply blob. Return the number of bytes used.
 ****************************************************************************/
 
-DATA_BLOB negprot_spnego(void)
+DATA_BLOB negprot_spnego(struct smbd_server_connection *sconn)
 {
        DATA_BLOB blob;
        nstring dos_name;
@@ -191,7 +191,6 @@ DATA_BLOB negprot_spnego(void)
                                   OID_NTLMSSP,
                                   NULL};
        const char *OIDs_plain[] = {OID_NTLMSSP, NULL};
-       struct smbd_server_connection *sconn = smbd_server_conn;
 
        sconn->smb1.negprot.spnego = true;
 
@@ -383,7 +382,7 @@ static void reply_nt1(struct smb_request *req, uint16 choice)
                }
                DEBUG(3,("not using SPNEGO\n"));
        } else {
-               DATA_BLOB spnego_blob = negprot_spnego();
+               DATA_BLOB spnego_blob = negprot_spnego(req->sconn);
 
                if (spnego_blob.data == NULL) {
                        reply_nterror(req, NT_STATUS_NO_MEMORY);
index 5a216b27e49e4ef0e012f60dc22a1d9de4c486f1..99eeb8fc6a1b56ab882a7dd32f0437073cd690da 100644 (file)
@@ -119,7 +119,7 @@ NTSTATUS smbd_smb2_request_process_negprot(struct smbd_smb2_request *req)
        }
 
        /* negprot_spnego() returns a the server guid in the first 16 bytes */
-       negprot_spnego_blob = negprot_spnego();
+       negprot_spnego_blob = negprot_spnego(req->sconn);
        if (negprot_spnego_blob.data == NULL) {
                return smbd_smb2_request_error(req, NT_STATUS_NO_MEMORY);
        }