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')
|