auth: Generate a human readable Authentication log message.
[nivanova/samba-autobuild/.git] / source4 / kdc / wscript_build
index 902868331d54d6dd2cd6d0322151b0bf49408875..76efb1f02ca206b25be7989e4a20ebd649223f2f 100644 (file)
 #!/usr/bin/env python
 
-bld.SAMBA_MODULE('KDC',
-       source='kdc.c kpasswdd.c proxy.c',
-       subsystem='service',
-       init_function='server_service_kdc_init',
-       deps='kdc HDB_SAMBA4 WDC_SAMBA4 samba-hostconfig LIBTSOCKET LIBSAMBA_TSOCKET com_err samba_server_gensec',
-       )
+# We do this because we do not want to depend on the KDC, only find and use it's header files.  We do not want 
+if not bld.CONFIG_SET("USING_SYSTEM_KDC"):
+    kdc_include = "../heimdal/kdc"
+else:
+    kdc_include = getattr(bld.env, "CPPPATH_KDC")
 
+bld.SAMBA_MODULE('service_kdc',
+                 source='kdc-heimdal.c',
+                 subsystem='service',
+                 init_function='server_service_kdc_init',
+                 deps='''
+                      kdc
+                      HDB_SAMBA4
+                      WDC_SAMBA4
+                      samba-hostconfig
+                      com_err
+                      samba_server_gensec
+                      PAC_GLUE
+                      KDC-GLUE
+                      KDC-SERVER
+                      KPASSWD-SERVICE
+                      KPASSWD_GLUE
+                 ''',
+                 internal_module=False)
 
-bld.SAMBA_SUBSYSTEM('HDB_SAMBA4',
-       source='hdb-samba4.c',
-       deps='ldb auth_sam auth_sam_reply credentials hdb db-glue samba-hostconfig com_err',
-       includes='../heimdal/kdc',
-       )
+bld.SAMBA_LIBRARY('HDB_SAMBA4',
+                  source='hdb-samba4.c hdb-samba4-plugin.c',
+                  deps='ldb auth4_sam common_auth samba-credentials hdb db-glue samba-hostconfig com_err sdb_hdb',
+                  includes=kdc_include,
+                  private_library=True,
+                  enabled=bld.CONFIG_SET('SAMBA4_USES_HEIMDAL')
+                  )
+
+# A plugin for Heimdal's kadmin for users who need to operate that tool
+bld.SAMBA_LIBRARY('HDB_SAMBA4_PLUGIN',
+                  source='hdb-samba4-plugin.c',
+                  deps='hdb HDB_SAMBA4 samba-util samba-hostconfig ',
+                  includes=kdc_include,
+                  link_name='modules/hdb/hdb_samba4.so',
+                  realname='hdb_samba4.so',
+                  install_path='${MODULESDIR}/hdb',
+                  enabled = (bld.CONFIG_SET("USING_SYSTEM_KRB5") and bld.CONFIG_SET("USING_SYSTEM_HDB"))
+                  )
+
+bld.SAMBA_SUBSYSTEM('KDC-SERVER',
+                    source='kdc-server.c kdc-proxy.c',
+                    includes=kdc_include,
+                    deps='''
+                         krb5samba
+                         ldb
+                         LIBTSOCKET
+                         LIBSAMBA_TSOCKET
+                    ''',
+                    enabled=bld.CONFIG_SET('SAMBA4_USES_HEIMDAL'))
 
+kpasswd_flavor_src = 'kpasswd-service.c kpasswd-helper.c'
+if bld.CONFIG_SET('SAMBA4_USES_HEIMDAL'):
+    kpasswd_flavor_src = kpasswd_flavor_src + ' kpasswd-service-heimdal.c'
+
+bld.SAMBA_SUBSYSTEM('KPASSWD-SERVICE',
+                    source=kpasswd_flavor_src,
+                    includes=kdc_include,
+                    deps='''
+                         krb5samba
+                         samba_server_gensec
+                         KPASSWD_GLUE
+                         ''')
+
+bld.SAMBA_SUBSYSTEM('KDC-GLUE',
+       source='kdc-glue.c',
+        includes=kdc_include,
+       deps='hdb PAC_GLUE',
+       enabled=bld.CONFIG_SET('SAMBA4_USES_HEIMDAL')
+       )
 
 bld.SAMBA_SUBSYSTEM('WDC_SAMBA4',
        source='wdc-samba4.c',
-       includes='../heimdal/kdc',
-       deps='ldb auth_sam auth_sam_reply credentials hdb PAC_GLUE samba-hostconfig com_err'
+        includes=kdc_include,
+       deps='ldb auth4_sam common_auth samba-credentials hdb PAC_GLUE samba-hostconfig com_err KDC-GLUE',
+       enabled=bld.CONFIG_SET('SAMBA4_USES_HEIMDAL')
+       )
+
+bld.SAMBA_SUBSYSTEM('sdb',
+       source='sdb.c',
+       includes=kdc_include,
+       deps='talloc krb5',
+       )
+
+bld.SAMBA_SUBSYSTEM('sdb_hdb',
+       source='sdb_to_hdb.c',
+       includes=kdc_include,
+       deps='talloc sdb hdb',
+       autoproto='sdb_hdb.h',
+       enabled=bld.CONFIG_SET('SAMBA4_USES_HEIMDAL')
        )
 
+bld.SAMBA_SUBSYSTEM('sdb_kdb',
+       source='sdb_to_kdb.c',
+       includes=kdc_include,
+       deps='sdb kdb5',
+       autoproto='sdb_kdb.h',
+       enabled=bld.CONFIG_SET('HAVE_KDB_H')
+       )
 
 bld.SAMBA_SUBSYSTEM('PAC_GLUE',
        source='pac-glue.c',
-       includes='../heimdal/kdc',
-       deps='ldb auth_sam auth_sam_reply credentials hdb samba-hostconfig com_err'
+        includes=kdc_include,
+       deps='ldb auth4_sam common_auth samba-credentials samba-hostconfig com_err'
        )
 
 bld.SAMBA_LIBRARY('pac',
@@ -37,21 +119,36 @@ bld.SAMBA_LIBRARY('pac',
 
 bld.SAMBA_LIBRARY('db-glue',
        source='db-glue.c',
-       deps='ldb auth_sam auth_sam_reply credentials hdb samba-hostconfig com_err',
-       private_library=True
+       deps='ldb auth4_sam common_auth samba-credentials sdb samba-hostconfig com_err',
+       private_library=True,
+        includes=kdc_include,
        )
 
+bld.SAMBA_SUBSYSTEM('KPASSWD_GLUE',
+        source='kpasswd_glue.c',
+        includes=kdc_include,
+        deps='ldb com_err')
 
 bld.SAMBA_SUBSYSTEM('MIT_SAMBA',
-       source='mit_samba.c',
-       deps='ldb auth_sam auth_sam_reply credentials hdb db-glue PAC_GLUE samba-hostconfig com_err'
-       )
+                    source='mit_samba.c',
+                    deps='''
+                         ldb
+                         auth4_sam
+                         common_auth
+                         samba-credentials
+                         db-glue
+                         PAC_GLUE
+                         KPASSWD_GLUE
+                         samba-hostconfig
+                         com_err
+                         sdb_kdb
+                         kdb5
+                         ''',
+                    enabled=(not bld.CONFIG_SET('SAMBA4_USES_HEIMDAL') and bld.CONFIG_SET('HAVE_KDB_H')) )
 
+bld.SAMBA_BINARY('samba4ktutil',
+                 'ktutil.c',
+                 deps='krb5samba',
+                 install=False)
 
-bld.SAMBA_LIBRARY('mit-samba',
-       source='',
-       deps='MIT_SAMBA',
-       external_library=True,
-       realname='mit_samba.so'
-       )
-
+bld.RECURSE('mit-kdb')