smbd: Fix CID 1504457 Resource leak
[Samba.git] / source4 / kdc / wscript_build
blob5c16e68ee0a61b38858a43cc54260c738e32d5ee
1 #!/usr/bin/env python
3 # 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
4 if not bld.CONFIG_SET("USING_SYSTEM_KDC"):
5 kdc_include = "../../third_party/heimdal/kdc ../../third_party/heimdal/lib/gssapi"
6 else:
7 kdc_include = getattr(bld.env, "CPPPATH_KDC")
9 if bld.CONFIG_SET('SAMBA4_USES_HEIMDAL'):
10 bld.SAMBA_MODULE('service_kdc',
11 source='kdc-heimdal.c',
12 subsystem='service',
13 init_function='server_service_kdc_init',
14 deps='''
15 kdc
16 HDB_SAMBA4
17 WDC_SAMBA4
18 samba-hostconfig
19 com_err
20 samba_server_gensec
21 PAC_GLUE
22 KDC-GLUE
23 KDC-SERVER
24 KPASSWD-SERVICE
25 KPASSWD_GLUE
26 ''',
27 internal_module=False)
29 if bld.CONFIG_GET('SAMBA_USES_MITKDC'):
30 bld.SAMBA_MODULE('service_kdc',
31 source='kdc-service-mit.c',
32 cflags_end='-Wno-strict-prototypes',
33 subsystem='service',
34 init_function='server_service_mitkdc_init',
35 deps='''
36 samba-hostconfig
37 service
38 talloc
39 UTIL_RUNCMD
40 MIT_KDC_IRPC
41 KDC-SERVER
42 KPASSWD-SERVICE
43 com_err
44 kadm5srv_mit
45 kdb5
46 ''',
47 internal_module=False)
49 bld.SAMBA_LIBRARY('HDB_SAMBA4',
50 source='hdb-samba4.c hdb-samba4-plugin.c',
51 deps='ldb auth4_sam common_auth samba-credentials hdb kdc db-glue samba-hostconfig com_err sdb_hdb RPC_NDR_WINBIND',
52 includes=kdc_include,
53 private_library=True,
54 enabled=bld.CONFIG_SET('SAMBA4_USES_HEIMDAL')
57 # A plugin for Heimdal's kadmin for users who need to operate that tool
58 bld.SAMBA_LIBRARY('HDB_SAMBA4_PLUGIN',
59 source='hdb-samba4-plugin.c',
60 deps='hdb HDB_SAMBA4 samba-util samba-hostconfig ',
61 link_name='modules/hdb/hdb_samba4.so',
62 realname='hdb_samba4.so',
63 install_path='${MODULESDIR}/hdb',
64 enabled = (bld.CONFIG_SET("USING_SYSTEM_KRB5") and bld.CONFIG_SET("USING_SYSTEM_HDB"))
67 bld.SAMBA_SUBSYSTEM('KDC-SERVER',
68 source='kdc-server.c kdc-proxy.c',
69 deps='''
70 krb5samba
71 ldb
72 LIBTSOCKET
73 LIBSAMBA_TSOCKET
74 ''')
76 kpasswd_flavor_src = 'kpasswd-service.c kpasswd-helper.c'
77 if bld.CONFIG_SET('SAMBA4_USES_HEIMDAL'):
78 kpasswd_flavor_src = kpasswd_flavor_src + ' kpasswd-service-heimdal.c'
79 elif bld.CONFIG_GET('SAMBA_USES_MITKDC'):
80 kpasswd_flavor_src = kpasswd_flavor_src + ' kpasswd-service-mit.c'
82 bld.SAMBA_SUBSYSTEM('KPASSWD-SERVICE',
83 source=kpasswd_flavor_src,
84 deps='''
85 krb5samba
86 samba_server_gensec
87 KPASSWD_GLUE
88 ''')
90 bld.SAMBA_SUBSYSTEM('KDC-GLUE',
91 source='kdc-glue.c',
92 includes=kdc_include,
93 deps='hdb PAC_GLUE',
94 enabled=bld.CONFIG_SET('SAMBA4_USES_HEIMDAL')
97 bld.SAMBA_SUBSYSTEM('WDC_SAMBA4',
98 source='wdc-samba4.c',
99 includes=kdc_include,
100 deps='ldb auth4_sam common_auth samba-credentials hdb PAC_GLUE samba-hostconfig com_err KDC-GLUE',
101 enabled=bld.CONFIG_SET('SAMBA4_USES_HEIMDAL')
104 bld.SAMBA_SUBSYSTEM('sdb',
105 source='sdb.c',
106 deps='talloc krb5',
109 bld.SAMBA_SUBSYSTEM('sdb_hdb',
110 source='sdb_to_hdb.c',
111 deps='talloc sdb hdb',
112 autoproto='sdb_hdb.h',
113 enabled=bld.CONFIG_SET('SAMBA4_USES_HEIMDAL')
116 bld.SAMBA_SUBSYSTEM('sdb_kdb',
117 source='sdb_to_kdb.c',
118 deps='sdb kdb5',
119 autoproto='sdb_kdb.h',
120 enabled=bld.CONFIG_SET('HAVE_KDB_H')
123 bld.SAMBA_SUBSYSTEM('PAC_GLUE',
124 source='pac-glue.c',
125 deps='ldb auth4_sam common_auth samba-credentials samba-hostconfig com_err'
128 bld.SAMBA_LIBRARY('pac',
129 source=[],
130 deps='PAC_GLUE',
131 private_library=True,
132 grouping_library=True)
135 bld.SAMBA_LIBRARY('db-glue',
136 source='db-glue.c',
137 deps='ldb auth4_sam common_auth samba-credentials sdb samba-hostconfig com_err RPC_NDR_IRPC MESSAGING PAC_GLUE',
138 private_library=True,
141 bld.SAMBA_SUBSYSTEM('KPASSWD_GLUE',
142 source='kpasswd_glue.c',
143 deps='ldb com_err')
145 bld.SAMBA_SUBSYSTEM('MIT_KDC_IRPC',
146 source='mit_kdc_irpc.c',
147 deps='''
149 auth4_sam
150 samba-credentials
151 db-glue
152 samba-hostconfig
153 com_err
154 kdb5
155 ''',
156 enabled=(bld.CONFIG_SET('SAMBA_USES_MITKDC') and bld.CONFIG_SET('HAVE_KDB_H'))
159 bld.SAMBA_SUBSYSTEM('MIT_SAMBA',
160 source='mit_samba.c',
161 deps='''
163 auth4_sam
164 common_auth
165 samba-credentials
166 db-glue
167 PAC_GLUE
168 KPASSWD_GLUE
169 samba-hostconfig
170 com_err
171 sdb_kdb
172 kdb5
173 ''',
174 enabled=(not bld.CONFIG_SET('SAMBA4_USES_HEIMDAL') and bld.CONFIG_SET('HAVE_KDB_H')) )
176 bld.SAMBA_BINARY('samba4ktutil',
177 'ktutil.c',
178 deps='krb5samba',
179 install=False)
181 bld.RECURSE('mit-kdb')