s3-libsmb: move smb encryption structs into own header.
authorGünther Deschner <gd@samba.org>
Wed, 2 Mar 2011 13:00:23 +0000 (14:00 +0100)
committerGünther Deschner <gd@samba.org>
Wed, 16 Mar 2011 09:11:16 +0000 (10:11 +0100)
Guenther

source3/include/client.h
source3/include/proto.h
source3/include/smb_crypt.h [new file with mode: 0644]
source3/libsmb/async_smb.c
source3/libsmb/clifsinfo.c
source3/libsmb/smb_seal.c
source3/smbd/seal.c

index 03d4c85583c9c3d114e03e1d34b1c162adf17f33..9f8f46c4ab621202732e4102fcc19cf8ed51ca92 100644 (file)
@@ -127,33 +127,6 @@ struct rpc_pipe_client {
        struct netlogon_creds_CredentialState *dc;
 };
 
-/* Transport encryption state. */
-enum smb_trans_enc_type {
-               SMB_TRANS_ENC_NTLM
-#if defined(HAVE_GSSAPI) && defined(HAVE_KRB5)
-               , SMB_TRANS_ENC_GSS
-#endif
-};
-
-#if defined(HAVE_GSSAPI) && defined(HAVE_KRB5)
-struct smb_tran_enc_state_gss {
-        gss_ctx_id_t gss_ctx;
-        gss_cred_id_t creds;
-};
-#endif
-
-struct smb_trans_enc_state {
-        enum smb_trans_enc_type smb_enc_type;
-        uint16 enc_ctx_num;
-        bool enc_on;
-        union {
-                struct ntlmssp_state *ntlmssp_state;
-#if defined(HAVE_GSSAPI) && defined(HAVE_KRB5)
-                struct smb_tran_enc_state_gss *gss_state;
-#endif
-        } s;
-};
-
 struct cli_state_seqnum {
        struct cli_state_seqnum *prev, *next;
        uint16_t mid;
index 233866e2afda4e704cc1d7cae2c77fa9dbed6c80..caa2d290464f3f8f7bc7335eb8c8a9b4234cd6a4 100644 (file)
@@ -2551,7 +2551,7 @@ NTSTATUS nt_status_string_to_code(const char *nt_status_str);
 NTSTATUS nt_status_squash(NTSTATUS nt_status);
 
 /* The following definitions come from libsmb/ntlmssp.c  */
-
+struct ntlmssp_state;
 NTSTATUS ntlmssp_set_username(struct ntlmssp_state *ntlmssp_state, const char *user) ;
 NTSTATUS ntlmssp_set_hashes(struct ntlmssp_state *ntlmssp_state,
                            const uint8_t lm_hash[16],
diff --git a/source3/include/smb_crypt.h b/source3/include/smb_crypt.h
new file mode 100644 (file)
index 0000000..a5930d1
--- /dev/null
@@ -0,0 +1,62 @@
+/*
+   Unix SMB/CIFS implementation.
+   SMB Transport encryption code.
+   Copyright (C) Jeremy Allison 2007.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#ifndef _HEADER_SMB_CRYPT_H
+#define _HEADER_SMB_CRYPT_H
+
+#if HAVE_GSSAPI_GSSAPI_H
+#include <gssapi/gssapi.h>
+#elif HAVE_GSSAPI_GSSAPI_GENERIC_H
+#include <gssapi/gssapi_generic.h>
+#elif HAVE_GSSAPI_H
+#include <gssapi.h>
+#endif
+
+#if HAVE_COM_ERR_H
+#include <com_err.h>
+#endif
+
+/* Transport encryption state. */
+enum smb_trans_enc_type {
+               SMB_TRANS_ENC_NTLM
+#if defined(HAVE_GSSAPI) && defined(HAVE_KRB5)
+               , SMB_TRANS_ENC_GSS
+#endif
+};
+
+#if defined(HAVE_GSSAPI) && defined(HAVE_KRB5)
+struct smb_tran_enc_state_gss {
+        gss_ctx_id_t gss_ctx;
+        gss_cred_id_t creds;
+};
+#endif
+
+struct smb_trans_enc_state {
+        enum smb_trans_enc_type smb_enc_type;
+        uint16 enc_ctx_num;
+        bool enc_on;
+        union {
+                struct ntlmssp_state *ntlmssp_state;
+#if defined(HAVE_GSSAPI) && defined(HAVE_KRB5)
+                struct smb_tran_enc_state_gss *gss_state;
+#endif
+        } s;
+};
+
+#endif /* _HEADER_SMB_CRYPT_H */
index 24df6a600a59b9bb79f9deb7fef9b85c335deaf7..9708e3ccd3061defae3120ed3cbae4a6457b130d 100644 (file)
@@ -20,6 +20,7 @@
 #include "includes.h"
 #include "../lib/async_req/async_sock.h"
 #include "async_smb.h"
+#include "smb_crypt.h"
 
 /*
  * Read an smb packet asynchronously, discard keepalives
index a5f58bba8a6500917f505401be42f8a4b6ac3682..7845a9de078d99633112a8491a4eab6ea208dc6d 100644 (file)
@@ -22,6 +22,7 @@
 #include "../libcli/auth/spnego.h"
 #include "../libcli/auth/ntlmssp.h"
 #include "async_smb.h"
+#include "smb_crypt.h"
 
 /****************************************************************************
  Get UNIX extensions version info.
index 4610850638a190ccddc0bd6f67a7dade70b013ad..0eed15d4a3c1ff28ae90d51914ee32612a3cf9e2 100644 (file)
@@ -19,6 +19,7 @@
 
 #include "includes.h"
 #include "../libcli/auth/ntlmssp.h"
+#include "smb_crypt.h"
 
 /******************************************************************************
  Pull out the encryption context for this packet. 0 means global context.
index 1d8d4641e795b251dfc458ccb8ed557090ae2a97..7fe44a0853dcd0f1c82f9ff404b9c69961b23a29 100644 (file)
@@ -22,6 +22,7 @@
 #include "../libcli/auth/spnego.h"
 #include "../libcli/auth/ntlmssp.h"
 #include "ntlmssp_wrap.h"
+#include "smb_crypt.h"
 
 /******************************************************************************
  Server side encryption.