schannel_tdb: make code compilable in both trees
[samba.git] / libcli / auth / schannel_state.h
index e60f4d9891c46679699288ba1d70190973453f8c..8db0698a9d75e3ad02ecb90e6453368568397d01 100644 (file)
@@ -1,4 +1,4 @@
-/* 
+/*
    Unix SMB/CIFS implementation.
 
    module to store/fetch session keys for the schannel server
    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 _LIBCLI_AUTH_SCHANNEL_STATE_H__
+#define _LIBCLI_AUTH_SCHANNEL_STATE_H__
+
+NTSTATUS schannel_get_creds_state(TALLOC_CTX *mem_ctx,
+                                 struct smb_iconv_convenience *ic,
+                                 const char *db_priv_dir,
+                                 const char *computer_name,
+                                 struct netlogon_creds_CredentialState **creds);
+
+NTSTATUS schannel_save_creds_state(TALLOC_CTX *mem_ctx,
+                                  struct smb_iconv_convenience *ic,
+                                  const char *db_priv_dir,
+                                  struct netlogon_creds_CredentialState *creds);
+
+NTSTATUS schannel_check_creds_state(TALLOC_CTX *mem_ctx,
+                                   struct smb_iconv_convenience *ic,
+                                   const char *db_priv_dir,
+                                   const char *computer_name,
+                                   struct netr_Authenticator *received_authenticator,
+                                   struct netr_Authenticator *return_authenticator,
+                                   struct netlogon_creds_CredentialState **creds_out);
+
 struct ldb_context;
-struct tdb_context;
-#include "libcli/auth/schannel_state_proto.h"
+
+NTSTATUS schannel_store_session_key_ldb(struct ldb_context *ldb,
+                                       TALLOC_CTX *mem_ctx,
+                                       struct netlogon_creds_CredentialState *creds);
+NTSTATUS schannel_fetch_session_key_ldb(struct ldb_context *ldb,
+                                       TALLOC_CTX *mem_ctx,
+                                       const char *computer_name,
+                                       struct netlogon_creds_CredentialState **creds);
+NTSTATUS schannel_creds_server_step_check_ldb(struct ldb_context *ldb,
+                                             TALLOC_CTX *mem_ctx,
+                                             const char *computer_name,
+                                             struct netr_Authenticator *received_authenticator,
+                                             struct netr_Authenticator *return_authenticator,
+                                             struct netlogon_creds_CredentialState **creds_out);
+#endif