summaryrefslogtreecommitdiffstats
path: root/librpc/idl/wscript_build
blob: 1e53eec7dc0a25737fcf1aa9982d8e0aaae9bb1b (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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
#!/usr/bin/env python

bld.SAMBA_PIDL_LIST('PIDL',
                    '''drsuapi.idl epmapper.idl
                       eventlog.idl
                       browser.idl dssetup.idl frsapi.idl
                       spoolss.idl
                       dnsserver.idl
                       samr.idl srvsvc.idl winreg.idl
                       mgmt.idl netlogon.idl
                       svcctl.idl wkssvc.idl eventlog6.idl backupkey.idl
                       witness.idl clusapi.idl
                       mdssvc.idl''',
                    options='--header --ndr-parser --server-compat --server --client --python',
                    output_dir='../gen_ndr')

# The interface names here are not the same as the IDL name, so the
# auto-genration of the fuzzer fails to link
bld.SAMBA_PIDL_LIST('PIDL',
                    '''echo.idl
                       fsrvp.idl
                       lsa.idl
                       winspool.idl''',
                    options='--header --ndr-parser --server-compat --server --client --python',
                    output_dir='../gen_ndr',
                    generate_fuzzers=False)

# Services that we only have a client for
bld.SAMBA_PIDL_LIST('PIDL',
                    '''atsvc.idl''',
                    options='--header --ndr-parser --client --python',
                    output_dir='../gen_ndr')

# Services that we only have a server in the source3 style
bld.SAMBA_PIDL_LIST('PIDL',
                    '''initshutdown.idl ntsvcs.idl''',
                    options='--header --ndr-parser --client --python --server-compat',
                    output_dir='../gen_ndr')

# The interface names here are not the same as the IDL name, so the
# auto-genration of the fuzzer fails to link
bld.SAMBA_PIDL_LIST('PIDL',
                    '''dfs.idl''',
                    options='--header --ndr-parser --client --python --server-compat',
                    output_dir='../gen_ndr',
                    generate_fuzzers=False)

# Services that we only have a server in the source4 style. 

bld.SAMBA_PIDL_LIST('PIDL',
                    '''unixinfo.idl''',
                    options='--header --ndr-parser --client --python --server',
                    output_dir='../gen_ndr')

# DCOM stuff

# The interface names here are not the same as the IDL name, so the
# auto-genration of the fuzzer fails to link
bld.SAMBA_PIDL_LIST('PIDL',
                    '''oxidresolver.idl remact.idl''',
                    options='--header --ndr-parser --client',
                    output_dir='../gen_ndr',
                    generate_fuzzers=False)

# The interface names here are not the same as the IDL name, so the
# auto-genration of the fuzzer fails to link
bld.SAMBA_PIDL_LIST('PIDL',
                    'wmi.idl dcom.idl',
                    options='--header --ndr-parser --server --client --dcom-proxy --com-header',
                    output_dir='../gen_ndr',
                    generate_fuzzers=False)

# DCE/RPC protocols which Samba does not implement a client or server
# for.  We don't generate a fuzzer for these as they are unreachable
#
# Do not include IDL with public structures in this list as we want to
# fuzz those

bld.SAMBA_PIDL_LIST('PIDL',
                    '''
                    audiosrv.idl
                    dbgidl.idl
                    dsbackup.idl
                    efs.idl
                    frstrans.idl
                    frsrpc.idl
                    keysvc.idl
                    msgsvc.idl
                    orpc.idl
                    policyagent.idl
                    rot.idl
                    scerpc.idl
                    trkwks.idl
                    w32time.idl
                    winstation.idl
                    wzcsvc.idl
                    ''',
                    options='--header --ndr-parser',
                    generate_fuzzers=False,
                    output_dir='../gen_ndr')

# Non-DCE/RPC protocols encoded in IDL for Samba or helper IDLs for
# DCE/RPC protocols (eg defining constands or structures but not
# functions)
bld.SAMBA_PIDL_LIST('PIDL',
                    '''
                    bkupblobs.idl
                    cab.idl
                    file_id.idl
                    fscc.idl
                    fsrvp_state.idl
                    named_pipe_auth.idl
                    negoex.idl
                    notify.idl
                    ntprinting.idl
                    ODJ.idl
                    printcap.idl
                    rap.idl
                    schannel.idl
                    smb2_lease_struct.idl
                    ''',
                    options='--header --ndr-parser',
                    output_dir='../gen_ndr')

# The interface names here are not the same as the IDL name, so the
# auto-genration of the fuzzer fails to link

bld.SAMBA_PIDL_LIST('PIDL',
                    '''
                    ioctl.idl
                    nfs4acl.idl
                    quota.idl
                    ''',
                    options='--header --ndr-parser',
                    output_dir='../gen_ndr',
                    generate_fuzzers=False)

# Non-DCE/RPC protocls with Python bindings
# (for structures or constants)

bld.SAMBA_PIDL_LIST('PIDL',
		    '''
                    auth.idl
                    dcerpc.idl
                    dfsblobs.idl
                    dns.idl
                    dnsp.idl
                    drsblobs.idl
                    idmap.idl
                    krb5pac.idl
                    krb5ccache.idl
                    messaging.idl
                    misc.idl
                    nbt.idl
                    ntlmssp.idl
                    preg.idl
                    security.idl
                    server_id.idl
                    smb_acl.idl
                    xattr.idl
                    ''',
                    options='--header --ndr-parser --python',
                    output_dir='../gen_ndr')

bld.SAMBA_PIDL_LIST('PIDL',
		    '''
                    windows_event_ids.idl
                    ''',
                    options='--header --ndr-parser --python',
                    output_dir='../gen_ndr',
                    generate_tables=False)

bld.SAMBA_PIDL_LIST('PIDL',
                    'winbind.idl',
                    options='--header --ndr-parser --server-compat --client --python',
                    output_dir='../gen_ndr')