path: root/src/providers/ad/ad_common.h
diff options
authorJakub Hrozek <>2013-05-15 17:36:44 +0200
committerJakub Hrozek <>2013-06-07 00:14:13 +0200
commit55d80b1301fe969fb4ba2b9481027887b9462dbb (patch)
tree7f4f7fdc4a1f913c08506452450ac2972b01acdb /src/providers/ad/ad_common.h
parentd27d7f2c270b69d0805633c4bedcf6d806acd5cd (diff)
AD: Add additional service to support Global Catalog lookups
When fixed host names of AD servers are configured in the config file, we can't know (unlike when service discovery is at play) if the servers are Global Catalogs or not. This patch adds a private data to servers read from the config file that denote whether the server can be tried for contacting the Global Catalog port or just LDAP. The GC or LDAP URIs are generated based on contents of this private data structure. Because SSSD sticks to a working server, we don't have to disable or remove the faulty GC servers from the list.
Diffstat (limited to 'src/providers/ad/ad_common.h')
1 files changed, 5 insertions, 0 deletions
diff --git a/src/providers/ad/ad_common.h b/src/providers/ad/ad_common.h
index 792f32e08..801815528 100644
--- a/src/providers/ad/ad_common.h
+++ b/src/providers/ad/ad_common.h
@@ -27,6 +27,8 @@
#include "providers/ldap/ldap_common.h"
+/* The port the Global Catalog runs on */
+#define AD_GC_PORT 3268
struct ad_options;
@@ -44,11 +46,14 @@ enum ad_basic_opt {
struct ad_id_ctx {
struct sdap_id_ctx *sdap_id_ctx;
+ struct sdap_id_conn_ctx *ldap_ctx;
+ struct sdap_id_conn_ctx *gc_ctx;
struct ad_options *ad_options;
struct ad_service {
struct sdap_service *sdap;
+ struct sdap_service *gc;
struct krb5_service *krb5_service;