Commit Graph

57 Commits

Author SHA1 Message Date
Francois Gouget 0be09af819 adsldp: Fix the spelling of some FIXME() messages.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-14 22:04:07 +02:00
Dmitry Timoshkov b579f04998 adsldp: Add support for searching of deleted objects.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-13 21:33:30 +02:00
Dmitry Timoshkov 125414193f adsldp: Fix IDirectorySearch::FreeColumn() for ADSTYPE_NT_SECURITY_DESCRIPTOR.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-13 21:33:30 +02:00
Dmitry Timoshkov fc1cc8ef78 adsldp: Fix typos in ADSTYPE_BOOLEAN handling.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-09 21:04:04 +02:00
Dmitry Timoshkov 3eaecb2854 adsldp: Use correct format specifiers for SYSTEMTIME fields.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-09 21:04:04 +02:00
Dmitry Timoshkov cd1c8a328d adsldp: Recognize ADS_SEARCHPREF_TOMBSTONE in IDirectorySearch::SetSearchPreference().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-08 12:33:33 +02:00
Dmitry Timoshkov f94d6f72b3 adsldp: Add support for ADS_SEARCHPREF_ATTRIBTYPES_ONLY to IDirectorySearch::SetSearchPreference().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-08 12:33:31 +02:00
Dmitry Timoshkov 6f60151f5f adsldp: Map 1.2.840.113556.1.4.903 to ADSTYPE_DN_WITH_BINARY.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-08 12:33:28 +02:00
Dmitry Timoshkov 38e95ed222 adsldp: Map "1.2.840.113556.1.4.906" to ADSTYPE_LARGE_INTEGER.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-07 22:24:31 +02:00
Dmitry Timoshkov c7656ffd18 adsldp: Map "1.3.6.1.4.1.1466.115.121.1.24" to ADSTYPE_UTC_TIME.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-07 22:24:31 +02:00
Dmitry Timoshkov 220b871236 adsldp: Recognize ADS_SEARCHPREF_CACHE_RESULTS in IDirectorySearch::SetSearchPreference().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-06 21:21:42 +02:00
Dmitry Timoshkov 5c8f688f1a adsldp: Recognize ADS_SEARCHPREF_PAGESIZE in IDirectorySearch::SetSearchPreference().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-06 21:21:42 +02:00
Dmitry Timoshkov 0d15fb330d adsldp: Always fully initialize returned column values.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-06 21:21:42 +02:00
Dmitry Timoshkov bd34ffbdda adsldp: Fix a typo in IDirectorySearch::GetNextRow().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-06 21:21:42 +02:00
Dmitry Timoshkov ab54779c61 adsldp: Map 1.2.840.113556.1.4.907 to ADSTYPE_NT_SECURITY_DESCRIPTOR.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-02 11:42:51 +02:00
Dmitry Timoshkov af1c34294d adsldp: Add support for IDirectorySearch::SetSearchPreference(ADS_SEARCHPREF_SECURITY_MASK).
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-02 11:42:46 +02:00
Dmitry Timoshkov 0d49dcd39f adsldp: Forward IDirectoryObject::QueryInterface() to parent.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-02 11:42:40 +02:00
Dmitry Timoshkov 59c7e1977c adsldp: Add IDirectoryObject stubs.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-01 20:59:04 +02:00
Dmitry Timoshkov 5a6f56d3a2 adsldp: Sort the attribute types array.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-31 17:26:52 +02:00
Dmitry Timoshkov 4cdc333677 adsldp: Initialize also pADsValues->dwType field.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-31 17:26:16 +02:00
Dmitry Timoshkov f0f24b4be4 adsldp: Store original LDAP values pointer in hReserved.
AD Explorer depends on this.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-31 17:26:12 +02:00
Dmitry Timoshkov 6ae2d05fb7 adsldp: Blacklist serverless and rootDSE connections in QueryInterface(&IID_IDirectorySearch).
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-31 17:25:59 +02:00
Dmitry Timoshkov 57f3d503c4 adsldp: Fix IDirectorySearch::GetColumn() behaviour for not found case.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-30 23:10:07 +02:00
Dmitry Timoshkov 21959bf00a adsldp: Implement IDirectorySearch::FreeColumn().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-30 23:10:06 +02:00
Dmitry Timoshkov 7f98809173 adsldp: Map 1.3.6.1.4.1.1466.115.121.1.7 to ADSTYPE_BOOLEAN.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-30 23:10:06 +02:00
Dmitry Timoshkov 5a6c8359c9 adsldp: Map 1.3.6.1.4.1.1466.115.121.1.15 to ADSTYPE_CASE_IGNORE_STRING.
According to RFC4517 1.3.6.1.4.1.1466.115.121.1.15 is a Directory string
which should map to one of TeletextString, PrintableString or UniversalString.

Something else should map to ADSTYPE_NT_SECURITY_DESCRIPTOR.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-30 23:10:06 +02:00
Dmitry Timoshkov 5875a659c1 adsldp: Add initial version of attribute schema parser.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-27 21:16:13 +01:00
Dmitry Timoshkov dbe8d61c70 adsldp: Add more traces.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-27 21:16:13 +01:00
Dmitry Timoshkov e5ecd3b465 adsldp: Add support for special column name "ADsPath" to IDirectorySearch::GetColumn().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-26 18:37:02 +01:00
Dmitry Timoshkov 889e66c2fe adsldp: Implement IDirectorySearch::GetColumn().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-26 18:36:43 +01:00
Dmitry Timoshkov e53a00944e adsldp: Add special column "ADsPath" at the end of the entry.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-26 18:36:38 +01:00
Dmitry Timoshkov 3adc9c5b21 adsldp: Implement IDirectorySearch::GetNextColumnName().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-26 18:36:34 +01:00
Dmitry Timoshkov d2ab8296d4 adsldp: Improve IDirectorySearch::GetNextRow() end of entries detection logic.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-26 18:36:28 +01:00
Dmitry Timoshkov 7758d7a11c adsldp: Add a trace.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-26 18:36:20 +01:00
Dmitry Timoshkov 381b1396b9 adsldp: Fix a memory leak.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-26 18:36:14 +01:00
Dmitry Timoshkov 093616eede adsldp: Implement IDirectorySearch::GetNextRow().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-25 19:27:43 +01:00
Dmitry Timoshkov 6f14d858de adsldp: Implement IDirectorySearch::GetFirstRow().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-25 19:27:39 +01:00
Dmitry Timoshkov 17be7f3dad adsldp: Implement IDirectorySearch::CloseSearchHandle().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-25 19:27:36 +01:00
Dmitry Timoshkov a083fdab10 adsldp: Implement IDirectorySearch::ExecuteSearch().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-25 19:27:33 +01:00
Dmitry Timoshkov 88678882aa adsldp: Add support for ADS_SEARCHPREF_SEARCH_SCOPE to IDirectorySearch::SetSearchPreference().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-25 19:27:27 +01:00
Dmitry Timoshkov 66897b455c adsldp: Add IDirectorySearch stubs.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-25 19:27:21 +01:00
Dmitry Timoshkov 2512bf2c1d adsldp: Forward IADsOpenDSObject::AddRef/Release to base object.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-25 19:27:15 +01:00
Dmitry Timoshkov 0662aaaddc adsldp: Turn FIXME into a TRACE for IADsOpenDSObject::OpenDSObject().
It's in a good enough state already.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-25 19:27:10 +01:00
Dmitry Timoshkov fa4820c203 adsldp: Add support for multi-valued attributes to IADs::Get().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-24 12:39:24 +01:00
Dmitry Timoshkov afeb8edd9d adsldp: Implement IADs::Get().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-24 12:39:24 +01:00
Dmitry Timoshkov 9c3ca265ad adsldp: Implement IADs::GetInfoEx().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-24 12:39:24 +01:00
Dmitry Timoshkov 47982e3611 adsldp: Implement IADs::GetInfo().
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-24 12:39:24 +01:00
Dmitry Timoshkov 791791931c adsldp: Add support for IADsOpenDSObject::OpenDSObject(ADS_SECURE_AUTHENTICATION).
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-24 12:36:09 +01:00
Dmitry Timoshkov 3eb581db43 adsldp: Bind to an LDAP server after connection.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-19 22:09:32 +01:00
Dmitry Timoshkov e396c01a2b adsldp: If secure open object fails fallback to simple bind.
This matches ADsGetObject() behaviour described in MSDN.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-19 22:09:32 +01:00