summaryrefslogtreecommitdiff
path: root/source4/smb_server/smb
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2006-07-31 14:05:08 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 14:15:17 -0500
commit7a845bcb0141a895d5685afcef1ffe7f93428d0f (patch)
tree536241140ed531f2d1a8d066053cbca54b73153e /source4/smb_server/smb
parent63aaa6b782bf6b8b2badabd41579fff2a235d526 (diff)
downloadsamba-7a845bcb0141a895d5685afcef1ffe7f93428d0f.tar.gz
samba-7a845bcb0141a895d5685afcef1ffe7f93428d0f.tar.bz2
samba-7a845bcb0141a895d5685afcef1ffe7f93428d0f.zip
r17341: pass a messaging context to auth_context_create()
and gensec_server_start(). calling them with NULL for event context or messaging context is no longer allowed! metze (This used to be commit 679ac74e71b111344f1097ab389c0b83a9247710)
Diffstat (limited to 'source4/smb_server/smb')
-rw-r--r--source4/smb_server/smb/negprot.c15
-rw-r--r--source4/smb_server/smb/sesssetup.c11
2 files changed, 16 insertions, 10 deletions
diff --git a/source4/smb_server/smb/negprot.c b/source4/smb_server/smb/negprot.c
index 0f55aaeae7..25684bee27 100644
--- a/source4/smb_server/smb/negprot.c
+++ b/source4/smb_server/smb/negprot.c
@@ -43,8 +43,9 @@ static NTSTATUS get_challenge(struct smbsrv_connection *smb_conn, uint8_t buff[8
DEBUG(10, ("get challenge: creating negprot_global_auth_context\n"));
nt_status = auth_context_create(smb_conn, lp_auth_methods(),
- &smb_conn->negotiate.auth_context,
- smb_conn->connection->event.ctx);
+ smb_conn->connection->event.ctx,
+ smb_conn->connection->msg_ctx,
+ &smb_conn->negotiate.auth_context);
if (!NT_STATUS_IS_OK(nt_status)) {
DEBUG(0, ("auth_context_create() returned %s", nt_errstr(nt_status)));
return nt_status;
@@ -340,10 +341,12 @@ static void reply_nt1(struct smbsrv_request *req, uint16_t choice)
DATA_BLOB null_data_blob = data_blob(NULL, 0);
DATA_BLOB blob;
const char *oid;
- NTSTATUS nt_status = gensec_server_start(req->smb_conn,
- &gensec_security,
- req->smb_conn->connection->event.ctx);
-
+ NTSTATUS nt_status;
+
+ nt_status = gensec_server_start(req->smb_conn,
+ req->smb_conn->connection->event.ctx,
+ req->smb_conn->connection->msg_ctx,
+ &gensec_security);
if (!NT_STATUS_IS_OK(nt_status)) {
DEBUG(0, ("Failed to start GENSEC: %s\n", nt_errstr(nt_status)));
smbsrv_terminate_connection(req->smb_conn, "Failed to start GENSEC\n");
diff --git a/source4/smb_server/smb/sesssetup.c b/source4/smb_server/smb/sesssetup.c
index fe75cce17e..25655fc14f 100644
--- a/source4/smb_server/smb/sesssetup.c
+++ b/source4/smb_server/smb/sesssetup.c
@@ -240,8 +240,9 @@ static void sesssetup_nt1(struct smbsrv_request *req, union smb_sesssetup *sess)
/* TODO: should we use just "anonymous" here? */
status = auth_context_create(req, lp_auth_methods(),
- &auth_context,
- req->smb_conn->connection->event.ctx);
+ req->smb_conn->connection->event.ctx,
+ req->smb_conn->connection->msg_ctx,
+ &auth_context);
if (!NT_STATUS_IS_OK(status)) goto failed;
} else {
auth_context = req->smb_conn->negotiate.auth_context;
@@ -368,8 +369,10 @@ static void sesssetup_spnego(struct smbsrv_request *req, union smb_sesssetup *se
if (!smb_sess) {
struct gensec_security *gensec_ctx;
- status = gensec_server_start(req, &gensec_ctx,
- req->smb_conn->connection->event.ctx);
+ status = gensec_server_start(req,
+ req->smb_conn->connection->event.ctx,
+ req->smb_conn->connection->msg_ctx,
+ &gensec_ctx);
if (!NT_STATUS_IS_OK(status)) {
DEBUG(1, ("Failed to start GENSEC server code: %s\n", nt_errstr(status)));
goto failed;