5 ads interface definition
10 cpp_quote
("#include <system/network.h>")
13 pointer_default(unique)
17 typedef [public] enum {
18 ADS_SASLWRAP_TYPE_PLAIN
= 1,
19 ADS_SASLWRAP_TYPE_SIGN
= 2,
20 ADS_SASLWRAP_TYPE_SEAL
= 4
23 /* ads auth control flags */
24 typedef [public] bitmap
{
25 ADS_AUTH_DISABLE_KERBEROS
= 0x0001,
26 ADS_AUTH_NO_BIND
= 0x0002,
27 ADS_AUTH_ANON_BIND
= 0x0004,
28 ADS_AUTH_ALLOW_NTLMSSP
= 0x0010,
29 ADS_AUTH_SASL_SIGN
= 0x0020,
30 ADS_AUTH_SASL_SEAL
= 0x0040,
31 ADS_AUTH_SASL_FORCE
= 0x0080,
32 ADS_AUTH_USER_CREDS
= 0x0100,
33 ADS_AUTH_SASL_STARTTLS
= 0x0200,
34 ADS_AUTH_SASL_LDAPS
= 0x0400,
35 ADS_AUTH_GENERATE_KRB5_CONFIG
= 0x0800
38 const int ADS_SASL_WRAPPING_IN_MAX_WRAPPED
= 0x0FFFFFFF;
39 const int ADS_SASL_WRAPPING_OUT_MAX_WRAPPED
= 0x00A00000;
41 typedef [nopull
,nopush
] struct {
45 boolean8 gc
; /* Is this a global catalog server? */
46 boolean8 no_fallback
; /* Bail if the ldap_server is not available */
49 typedef [nopull
,nopush
] struct {
61 typedef [nopull
,nopush
] struct {
62 nbt_server_type flags
; /* cldap flags identifying the services. */
66 string ldap_server_name
;
67 string server_site_name
;
68 string client_site_name
;
75 typedef [nopull
,nopush
] struct {
85 typedef [nopull
,nopush
] struct {
94 typedef [nopull
,nopush
] struct {
95 ads_saslwrap_type wrap_type
;
96 [ignore] ads_saslwrap_ops
*wrap_ops
;
98 [ignore] struct sockbuf_io_desc
*sbiod
; /* lowlevel state for LDAP wrapping */
100 [ignore] TALLOC_CTX
*mem_ctx
;
101 [ignore] void *wrap_private_data
;
103 ads_ldap_buf_out
out;
106 typedef [nopull
,nopush
] struct {
107 [ignore] TALLOC_CTX
*mem_ctx
;
108 [ignore] timeval endtime
;
110 [ignore] struct sockbuf_io_desc
*sbiod
; /* lowlevel state for LDAP wrapping */
111 [ignore] struct tstream_tls_params
*tls_params
;
112 [ignore] struct tstream_tls_sync
*tls_sync
;
113 #endif
/* HAVE_ADS */
116 typedef [nopull
,nopush
] struct {
118 sockaddr_storage ss
; /* the ip of the active connection, if any */
119 time_t last_attempt
; /* last attempt to reconnect, monotonic clock */
123 typedef [public,nopull
,nopush
] struct {
124 /* info needed to find the server */
127 /* info needed to authenticate */
130 /* info derived from the servers config */
134 ads_saslwrap ldap_wrap_data
;
135 ads_tlswrap ldap_tls_data
;
136 /* info about the current LDAP connection */
138 #endif
/* HAVE_ADS */