From 02b9b79447be46835adf963cca14c618d0c435e6 Mon Sep 17 00:00:00 2001 From: Gregor Beck Date: Mon, 27 Aug 2012 09:21:58 +0200 Subject: [PATCH] s3:smbd: remove smbd_server_connection argument from session_claim() retrieve the server connection from the smbXsrv_session argument instead. Signed-off-by: Stefan Metzmacher Signed-off-by: Michael Adam --- source3/smbd/proto.h | 2 +- source3/smbd/session.c | 5 +++-- source3/smbd/sesssetup.c | 4 ++-- source3/smbd/smb2_sesssetup.c | 2 +- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/source3/smbd/proto.h b/source3/smbd/proto.h index 5f41957fc4d..ffbc8d808ee 100644 --- a/source3/smbd/proto.h +++ b/source3/smbd/proto.h @@ -995,7 +995,7 @@ void close_cnum(connection_struct *conn, uint64_t vuid); struct sessionid; struct smbXsrv_session; bool session_init(void); -bool session_claim(struct smbd_server_connection *sconn, struct smbXsrv_session *session); +bool session_claim(struct smbXsrv_session *session); void session_yield(struct smbXsrv_session *session); int list_sessions(TALLOC_CTX *mem_ctx, struct sessionid **session_list); diff --git a/source3/smbd/session.c b/source3/smbd/session.c index c931f8b8e13..abb1e316bca 100644 --- a/source3/smbd/session.c +++ b/source3/smbd/session.c @@ -40,9 +40,10 @@ called when a session is created ********************************************************************/ -bool session_claim(struct smbd_server_connection *sconn, struct smbXsrv_session *session) +bool session_claim(struct smbXsrv_session *session) { struct user_struct *vuser = session->compat; + struct smbd_server_connection *sconn = session->connection->sconn; struct server_id pid = messaging_server_id(sconn->msg_ctx); TDB_DATA data; int i = 0; @@ -137,7 +138,7 @@ bool session_claim(struct smbd_server_connection *sconn, struct smbXsrv_session SMB_ASSERT(rec != NULL); - raddr = tsocket_address_inet_addr_string(sconn->remote_address, + raddr = tsocket_address_inet_addr_string(session->connection->remote_address, talloc_tos()); if (raddr == NULL) { return false; diff --git a/source3/smbd/sesssetup.c b/source3/smbd/sesssetup.c index 16a71f74083..cd7928de505 100644 --- a/source3/smbd/sesssetup.c +++ b/source3/smbd/sesssetup.c @@ -326,7 +326,7 @@ static void reply_sesssetup_and_X_spnego(struct smb_request *req) register_homes_share(session_info->unix_info->unix_name); } - if (!session_claim(sconn, session)) { + if (!session_claim(session)) { DEBUG(1, ("smb1: Failed to claim session for vuid=%llu\n", (unsigned long long)session->compat->vuid)); data_blob_free(&out_blob); @@ -1008,7 +1008,7 @@ void reply_sesssetup_and_X(struct smb_request *req) register_homes_share(session_info->unix_info->unix_name); } - if (!session_claim(sconn, session)) { + if (!session_claim(session)) { DEBUG(1, ("smb1: Failed to claim session for vuid=%llu\n", (unsigned long long)session->compat->vuid)); data_blob_free(&nt_resp); diff --git a/source3/smbd/smb2_sesssetup.c b/source3/smbd/smb2_sesssetup.c index 29253d03217..171021a2589 100644 --- a/source3/smbd/smb2_sesssetup.c +++ b/source3/smbd/smb2_sesssetup.c @@ -330,7 +330,7 @@ static NTSTATUS smbd_smb2_auth_generic_return(struct smbXsrv_session *session, register_homes_share(session_info->unix_info->unix_name); } - if (!session_claim(smb2req->sconn, session)) { + if (!session_claim(session)) { DEBUG(1, ("smb2: Failed to claim session " "for vuid=%llu\n", (unsigned long long)session->compat->vuid)); -- 2.11.4.GIT