s3-kerberos: add smb_krb5_principal_get_realm().
[ira/wip.git] / source3 / include / includes.h
index 92a37053ce7c131884fc6d8b4241bc4c062d4c12..cbf30d6158b4c60d551c9aa40dbc4561130023c3 100644 (file)
@@ -612,6 +612,7 @@ struct smb_iconv_convenience *lp_iconv_convenience(void *lp_ctx);
 
 /* Lists, trees, caching, database... */
 #include "../lib/util/util.h"
+#include "../lib/util/util_net.h"
 #include "../lib/util/xfile.h"
 #include "../lib/util/memory.h"
 #include "../lib/util/attr.h"
@@ -620,7 +621,7 @@ struct smb_iconv_convenience *lp_iconv_convenience(void *lp_ctx);
 #include "tdb.h"
 #include "util_tdb.h"
 
-#include "../talloc/talloc.h"
+#include "talloc.h"
 
 #include "event.h"
 #include "../lib/util/tevent_unix.h"
@@ -653,6 +654,7 @@ struct smb_iconv_convenience *lp_iconv_convenience(void *lp_ctx);
 #include "privileges.h"
 #include "rpc_misc.h"
 #include "rpc_dce.h"
+#include "../librpc/gen_ndr/schannel.h"
 #include "mapping.h"
 #include "passdb.h"
 #include "rpc_secdes.h"
@@ -670,8 +672,7 @@ struct smb_iconv_convenience *lp_iconv_convenience(void *lp_ctx);
 #include "ntdomain.h"
 #include "reg_objects.h"
 #include "reg_db.h"
-#include "rpc_perfcount.h"
-#include "rpc_perfcount_defs.h"
+#include "librpc/gen_ndr/perfcount.h"
 #include "librpc/gen_ndr/notify.h"
 #include "librpc/gen_ndr/xattr.h"
 #include "librpc/gen_ndr/messaging.h"
@@ -686,7 +687,6 @@ struct smb_iconv_convenience *lp_iconv_convenience(void *lp_ctx);
 #include "mangle.h"
 #include "module.h"
 #include "nsswitch/winbind_client.h"
-#include "spnego.h"
 #include "rpc_client.h"
 #include "dbwrap.h"
 #include "packet.h"
@@ -1032,8 +1032,11 @@ krb5_error_code smb_krb5_parse_name_norealm(krb5_context context,
 bool smb_krb5_principal_compare_any_realm(krb5_context context, 
                                          krb5_const_principal princ1, 
                                          krb5_const_principal princ2);
-int cli_krb5_get_ticket(const char *principal, time_t time_offset, 
-                       DATA_BLOB *ticket, DATA_BLOB *session_key_krb5, uint32 extra_ap_opts, const char *ccname, time_t *tgs_expire);
+int cli_krb5_get_ticket(const char *principal, time_t time_offset,
+                       DATA_BLOB *ticket, DATA_BLOB *session_key_krb5,
+                       uint32 extra_ap_opts, const char *ccname,
+                       time_t *tgs_expire,
+                       const char *impersonate_princ_s);
 krb5_error_code smb_krb5_renew_ticket(const char *ccache_string, const char *client_string, const char *service_string, time_t *expire_time);
 krb5_error_code kpasswd_err_to_krb5_err(krb5_error_code res_code);
 krb5_error_code smb_krb5_gen_netbios_krb5_address(smb_krb5_addresses **kerb_addr);
@@ -1072,7 +1075,19 @@ int smb_krb5_kt_add_entry_ext(krb5_context context,
                              krb5_data password,
                              bool no_salt,
                              bool keep_old_entries);
-
+krb5_error_code smb_krb5_get_credentials(krb5_context context,
+                                        krb5_ccache ccache,
+                                        krb5_principal me,
+                                        krb5_principal server,
+                                        krb5_principal impersonate_princ,
+                                        krb5_creds **out_creds);
+krb5_error_code smb_krb5_get_creds(const char *server_s,
+                                  time_t time_offset,
+                                  const char *cc,
+                                  const char *impersonate_princ_s,
+                                  krb5_creds **creds_p);
+char *smb_krb5_principal_get_realm(krb5_context context,
+                                  krb5_principal principal);
 #endif /* HAVE_KRB5 */