s3-auth Use the common gensec_ntlmssp_update in gensec_ntlmssp3_server
authorAndrew Bartlett <abartlet@samba.org>
Tue, 31 Jan 2012 03:43:25 +0000 (14:43 +1100)
committerAndrew Bartlett <abartlet@samba.org>
Wed, 8 Feb 2012 11:18:23 +0000 (22:18 +1100)
auth/ntlmssp/ntlmssp.c
auth/ntlmssp/ntlmssp_private.h
source3/Makefile.in
source3/auth/auth_ntlmssp.c

index 85540bb9f93f2260a828f13a5f17ee4e3993dbf0..f6f18ddad9d2e39ae8ddaa7d8281c7911e103108 100644 (file)
@@ -138,10 +138,10 @@ static NTSTATUS gensec_ntlmssp_update_find(struct ntlmssp_state *ntlmssp_state,
  *                or NT_STATUS_OK if the user is authenticated. 
  */
 
-static NTSTATUS gensec_ntlmssp_update(struct gensec_security *gensec_security, 
-                                     TALLOC_CTX *out_mem_ctx, 
-                                     struct tevent_context *ev,
-                                     const DATA_BLOB input, DATA_BLOB *out)
+NTSTATUS gensec_ntlmssp_update(struct gensec_security *gensec_security, 
+                              TALLOC_CTX *out_mem_ctx, 
+                              struct tevent_context *ev,
+                              const DATA_BLOB input, DATA_BLOB *out)
 {
        struct gensec_ntlmssp_context *gensec_ntlmssp =
                talloc_get_type_abort(gensec_security->private_data,
index 872e2cd56d2371542d7e73b253bb8dd0b5a8b901..5ee6cfd73187558caa21583f242693a196b52ad0 100644 (file)
@@ -43,6 +43,13 @@ union ntlmssp_crypt_state {
 
 /* The following definitions come from auth/ntlmssp.c  */
 
+NTSTATUS gensec_ntlmssp_update(struct gensec_security *gensec_security, 
+                              TALLOC_CTX *out_mem_ctx, 
+                              struct tevent_context *ev,
+                              const DATA_BLOB input, DATA_BLOB *out);
+
+/* The following definitions come from auth/ntlmssp_util.c  */
+
 void debug_ntlmssp_flags(uint32_t neg_flags);
 void ntlmssp_handle_neg_flags(struct ntlmssp_state *ntlmssp_state,
                              uint32_t neg_flags, bool allow_lm);
index 43dface082caa919bf1574c3d4d9ce9c70d0bf6c..b999a5dd43411a73a607e823d246563b09ee1cdb 100644 (file)
@@ -567,8 +567,10 @@ LIBSMB_OBJ0 = \
               ../auth/credentials/credentials.o \
               ../auth/credentials/credentials_ntlm.o \
               ../auth/credentials/credentials_samba3.o \
+              ../auth/ntlmssp/ntlmssp.o \
               ../auth/ntlmssp/ntlmssp_util.o \
               ../auth/ntlmssp/ntlmssp_sign.o \
+              ../auth/ntlmssp/ntlmssp_client.o \
               ../auth/ntlmssp/gensec_ntlmssp.o \
               ../auth/ntlmssp/gensec_ntlmssp_server.o \
               $(LIBNDR_NTLMSSP_OBJ) \
index b208b19a140733a7a6d1996dde711c64ff8f68a1..b40571d60376b039a324aa11d27fd4c92f748a32 100644 (file)
@@ -57,26 +57,6 @@ NTSTATUS auth3_generate_session_info(TALLOC_CTX *mem_ctx,
        return NT_STATUS_OK;
 }
 
-static NTSTATUS gensec_ntlmssp3_server_update(struct gensec_security *gensec_security,
-                                             TALLOC_CTX *out_mem_ctx,
-                                             struct tevent_context *ev,
-                                             const DATA_BLOB request,
-                                             DATA_BLOB *reply)
-{
-       NTSTATUS status;
-       struct gensec_ntlmssp_context *gensec_ntlmssp =
-               talloc_get_type_abort(gensec_security->private_data,
-                                     struct gensec_ntlmssp_context);
-
-       status = ntlmssp_update(gensec_ntlmssp->ntlmssp_state, request, reply);
-       if (NT_STATUS_IS_OK(status) ||
-           NT_STATUS_EQUAL(status, NT_STATUS_MORE_PROCESSING_REQUIRED)) {
-               talloc_steal(out_mem_ctx, reply->data);
-       }
-
-       return status;
-}
-
 /**
  * Return the challenge as determined by the authentication subsystem 
  * @return an 8 byte random challenge
@@ -295,7 +275,7 @@ const struct gensec_security_ops gensec_ntlmssp3_server_ops = {
        .oid            = gensec_ntlmssp3_server_oids,
        .server_start   = gensec_ntlmssp3_server_start,
        .magic          = gensec_ntlmssp_magic,
-       .update         = gensec_ntlmssp3_server_update,
+       .update         = gensec_ntlmssp_update,
        .sig_size       = gensec_ntlmssp_sig_size,
        .sign_packet    = gensec_ntlmssp_sign_packet,
        .check_packet   = gensec_ntlmssp_check_packet,