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
|
# File 'lib/rex/post/meterpreter/extensions/stdapi/railgun/def/windows/def_wldap32.rb', line 12
def self.create_library(constant_manager, library_path = 'wldap32')
dll = Library.new(library_path, constant_manager)
dll.add_function('ldap_sslinitA', 'LPVOID',[
['PCHAR', 'HostName', 'in'],
['ULONG', 'PortNumber', 'in'],
['DWORD', 'secure', 'in']
], 'ldap_sslinitA', "cdecl")
dll.add_function('ldap_bind_sA', 'ULONG',[
['LPVOID', 'ld', 'in'],
['PCHAR', 'dn', 'in'],
['PCHAR', 'cred', 'in'],
['ULONG', 'method', 'in']
], 'ldap_bind_sA', "cdecl")
dll.add_function('ldap_search_sA', 'ULONG',[
['LPVOID', 'ld', 'in'],
['PCHAR', 'base', 'in'],
['ULONG', 'scope', 'in'],
['PCHAR', 'filter', 'in'],
['PCHAR', 'attrs[]', 'in'],
['ULONG', 'attrsonly', 'in'],
['PLPVOID', 'res', 'out']
], 'ldap_search_sA', "cdecl")
dll.add_function('ldap_set_option', 'ULONG',[
['LPVOID', 'ld', 'in'],
['DWORD', 'option', 'in'],
['PBLOB', 'invalue', 'in']
], 'ldap_set_option', "cdecl")
dll.add_function('ldap_search_ext_sA', 'ULONG',[
['LPVOID', 'ld', 'in'],
['PCHAR', 'base', 'in'],
['ULONG', 'scope', 'in'],
['PCHAR', 'filter', 'in'],
['PCHAR', 'attrs[]', 'in'],
['ULONG', 'attrsonly', 'in'],
['LPVOID', 'pServerControls', 'in'],
['LPVOID', 'pClientControls', 'in'],
['PBLOB', 'pTimeout', 'in'],
['ULONG', 'SizeLimit', 'in'],
['PLPVOID', 'res', 'out']
], 'ldap_search_ext_sA', "cdecl")
dll.add_function('ldap_count_entries', 'ULONG',[
['LPVOID', 'ld', 'in'],
['LPVOID', 'res', 'in']
], "ldap_count_entries", "cdecl")
dll.add_function('ldap_first_entry', 'LPVOID',[
['LPVOID', 'ld', 'in'],
['LPVOID', 'res', 'in']
], 'ldap_first_entry', "cdecl")
dll.add_function('ldap_next_entry', 'LPVOID',[
['LPVOID', 'ld', 'in'],
['LPVOID', 'entry', 'in']
], 'ldap_next_entry', "cdecl")
dll.add_function('ldap_first_attributeA', 'PCHAR',[
['LPVOID', 'ld', 'in'],
['LPVOID', 'entry', 'in'],
['PLPVOID', 'ptr', 'out']
], 'ldap_first_attributeA', "cdecl")
dll.add_function('ldap_next_attributeA', 'PCHAR',[
['LPVOID', 'ld', 'in'],
['LPVOID', 'entry', 'in'],
['LPVOID', 'ptr', 'inout']
], 'ldap_next_attributeA', "cdecl")
dll.add_function('ldap_count_values', 'ULONG',[
['LPVOID', 'vals', 'in'],
], 'ldap_count_values', "cdecl")
dll.add_function('ldap_get_values', 'LPVOID',[
['LPVOID', 'ld', 'in'],
['LPVOID', 'entry', 'in'],
['PCHAR', 'attr', 'in']
], 'ldap_get_values', "cdecl")
dll.add_function('ldap_value_free', 'ULONG',[
['LPVOID', 'vals', 'in'],
], 'ldap_value_free', "cdecl")
dll.add_function('ldap_memfree', 'VOID',[
['PCHAR', 'block', 'in'],
], 'ldap_memfree', "cdecl")
dll.add_function('ber_free', 'VOID',[
['LPVOID', 'pBerElement', 'in'],
['DWORD', 'fbuf', 'in'],
], 'ber_free', "cdecl")
dll.add_function('LdapGetLastError', 'ULONG', [], 'LdapGetLastError', "cdecl")
dll.add_function('ldap_err2string', 'PCHAR',[
['ULONG', 'err', 'in']
], 'ldap_err2string', "cdecl")
dll.add_function('ldap_msgfree', 'ULONG', [
['LPVOID', 'res', 'in']
], 'ldap_msgfree', "cdecl")
dll.add_function('ldap_unbind', 'ULONG', [
['LPVOID', 'ld', 'in']
], 'ldap_unbind', "cdecl")
return dll
end
|