Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
38e95ed2
Commit
38e95ed2
authored
Apr 07, 2020
by
Dmitry Timoshkov
Committed by
Alexandre Julliard
Apr 07, 2020
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
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
>
parent
c7656ffd
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
19 additions
and
6 deletions
+19
-6
adsldp.c
dlls/adsldp/adsldp.c
+17
-6
schema.c
dlls/adsldp/schema.c
+2
-0
No files found.
dlls/adsldp/adsldp.c
View file @
38e95ed2
...
...
@@ -1478,26 +1478,37 @@ static HRESULT add_column_values(LDAP_namespace *ldap, struct ldap_search_contex
}
case
ADSTYPE_INTEGER
:
case
ADSTYPE_LARGE_INTEGER
:
{
WCHAR
**
values
=
ldap_get_values
W
(
ldap
->
ld
,
ldap_ctx
->
entry
,
name
);
struct
berval
**
values
=
ldap_get_values_len
W
(
ldap
->
ld
,
ldap_ctx
->
entry
,
name
);
if
(
!
values
)
return
E_ADS_COLUMN_NOT_SET
;
count
=
ldap_count_values
W
(
values
);
count
=
ldap_count_values
_len
(
values
);
col
->
pADsValues
=
heap_alloc_zero
(
count
*
sizeof
(
col
->
pADsValues
[
0
]));
if
(
!
col
->
pADsValues
)
{
ldap_value_free
W
(
values
);
ldap_value_free
_len
(
values
);
return
E_OUTOFMEMORY
;
}
for
(
i
=
0
;
i
<
count
;
i
++
)
{
col
->
pADsValues
[
i
].
u
.
Integer
=
wcstol
(
values
[
i
],
NULL
,
10
);
TRACE
(
"%s => %d
\n
"
,
debugstr_w
(
values
[
i
]),
col
->
pADsValues
[
i
].
u
.
Integer
);
col
->
pADsValues
[
i
].
dwType
=
type
;
if
(
type
==
ADSTYPE_LARGE_INTEGER
)
{
col
->
pADsValues
[
i
].
u
.
LargeInteger
.
QuadPart
=
_atoi64
(
values
[
i
]
->
bv_val
);
TRACE
(
"%s => %s
\n
"
,
debugstr_an
(
values
[
i
]
->
bv_val
,
values
[
i
]
->
bv_len
),
wine_dbgstr_longlong
(
col
->
pADsValues
[
i
].
u
.
LargeInteger
.
QuadPart
));
}
else
{
col
->
pADsValues
[
i
].
u
.
Integer
=
atol
(
values
[
i
]
->
bv_val
);
TRACE
(
"%s => %d
\n
"
,
debugstr_an
(
values
[
i
]
->
bv_val
,
values
[
i
]
->
bv_len
),
col
->
pADsValues
[
i
].
u
.
Integer
);
}
}
ldap_value_free
W
(
values
);
ldap_value_free
_len
(
values
);
col
->
hReserved
=
NULL
;
break
;
}
...
...
dlls/adsldp/schema.c
View file @
38e95ed2
...
...
@@ -101,6 +101,8 @@ ADSTYPEENUM get_schema_type(const WCHAR *name, const struct attribute_type *at,
return
ADSTYPE_CASE_IGNORE_STRING
;
if
(
!
wcscmp
(
type
->
syntax
,
L"1.3.6.1.4.1.1466.115.121.1.40"
))
return
ADSTYPE_OCTET_STRING
;
if
(
!
wcscmp
(
type
->
syntax
,
L"1.2.840.113556.1.4.906"
))
return
ADSTYPE_LARGE_INTEGER
;
if
(
!
wcscmp
(
type
->
syntax
,
L"1.2.840.113556.1.4.907"
))
return
ADSTYPE_NT_SECURITY_DESCRIPTOR
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment