summaryrefslogtreecommitdiffstats
path: root/source4/auth/wscript_build
blob: 57bb9f751c6a70ad74dc7443f805bf8f09f1b6e9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
#!/usr/bin/env python

bld.RECURSE('gensec')
bld.RECURSE('kerberos')
bld.RECURSE('ntlm')

bld.SAMBA_SUBSYSTEM('auth_session',
	source='session.c',
	autoproto='session_proto.h',
	public_deps='samba-credentials',
	public_headers='session.h',
	header_path='samba',
	deps='samdb auth4_sam'
	)

bld.SAMBA_LIBRARY('auth_unix_token',
                  source='unix_token.c',
                  autoproto='unix_token_proto.h',
                  public_deps='LIBWBCLIENT_OLD',
                  private_library=True,
                  )


bld.SAMBA_SUBSYSTEM('samba_server_gensec',
	source='samba_server_gensec.c',
	public_deps='samba-credentials gensec auth4'
	)


bld.SAMBA_SUBSYSTEM('auth_system_session',
	source='system_session.c',
	autoproto='system_session_proto.h',
	public_deps='samba-credentials',
	deps='auth_session',
	)


bld.SAMBA_SUBSYSTEM('auth4_sam',
	source='sam.c',
	autoproto='auth_sam.h',
	public_deps='samdb samba-security ldb tevent',
	deps=''
	)

bld.SAMBA_BINARY('test_kerberos',
        source='tests/kerberos.c',
        deps='cmocka authkrb5 krb5samba com_err CREDENTIALS_KRB5',
        local_include=False,
        for_selftest=True
        )

bld.SAMBA_BINARY('test_auth_sam',
        source='tests/sam.c',
        deps='cmocka samdb samba-security ldb tevent',
        local_include=False,
        for_selftest=True,
        ldflags='''
            -Wl,--wrap,dsdb_search_dn
            -Wl,--wrap,samdb_msg_add_int64
        '''
        )

bld.SAMBA_BINARY('test_heimdal_gensec_unwrap_des',
                 source='tests/heimdal_unwrap_des.c',
                 deps='cmocka talloc gssapi-subsystem',
                 local_include=False,
                 for_selftest=True,
                 enabled=(bld.CONFIG_SET('SAMBA4_USES_HEIMDAL') and
                          not bld.CONFIG_SET('USING_SYSTEM_GSSAPI')),
                 ldflags='''
                 -Wl,--wrap,ct_memcmp
                 -Wl,--wrap,der_get_length
                 -Wl,--wrap,krb5_auth_con_getlocalsubkey
                 -Wl,--wrap,krb5_crypto_destroy
                 -Wl,--wrap,krb5_crypto_init
                 -Wl,--wrap,krb5_decrypt
                 -Wl,--wrap,krb5_decrypt_ivec
                 -Wl,--wrap,krb5_free_keyblock
                 -Wl,--wrap,krb5_verify_checksum
                 -Wl,--wrap,malloc
                 '''
)

pytalloc_util = bld.pyembed_libname('pytalloc-util')
pyparam_util = bld.pyembed_libname('pyparam_util')
pyldb_util = bld.pyembed_libname('pyldb-util')
pycredentials = 'pycredentials'
libpython = bld.pyembed_libname('LIBPYTHON')

bld.SAMBA_PYTHON('pyauth',
        source='pyauth.c',
        public_deps='auth_system_session',
        deps=f'samdb {pytalloc_util} {pyparam_util} {pyldb_util} {pycredentials} {libpython} auth4',
        realname='samba/auth.so'
        )