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
2bde6ccd
Commit
2bde6ccd
authored
Jun 28, 2021
by
Huw Davies
Committed by
Alexandre Julliard
Jun 28, 2021
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
nsi: Add a stub implementation of NsiEnumerateObjectsAllParametersEx().
Signed-off-by:
Huw Davies
<
huw@codeweavers.com
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
687650db
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
67 additions
and
1 deletion
+67
-1
nsi.c
dlls/nsi/nsi.c
+27
-0
nsi.spec
dlls/nsi/nsi.spec
+1
-1
nsi.c
dlls/nsi/tests/nsi.c
+20
-0
nsi.h
include/wine/nsi.h
+19
-0
No files found.
dlls/nsi/nsi.c
View file @
2bde6ccd
...
...
@@ -43,8 +43,35 @@ DWORD WINAPI NsiEnumerateObjectsAllParameters( DWORD unk, DWORD unk2, const NPI_
void
*
dynamic_data
,
DWORD
dynamic_size
,
void
*
static_data
,
DWORD
static_size
,
DWORD
*
count
)
{
struct
nsi_enumerate_all_ex
params
;
DWORD
err
;
FIXME
(
"%d %d %p %d %p %d %p %d %p %d %p %d %p: stub
\n
"
,
unk
,
unk2
,
module
,
table
,
key_data
,
key_size
,
rw_data
,
rw_size
,
dynamic_data
,
dynamic_size
,
static_data
,
static_size
,
count
);
params
.
unknown
[
0
]
=
0
;
params
.
unknown
[
1
]
=
0
;
params
.
module
=
module
;
params
.
table
=
table
;
params
.
first_arg
=
unk
;
params
.
second_arg
=
unk2
;
params
.
key_data
=
key_data
;
params
.
key_size
=
key_size
;
params
.
rw_data
=
rw_data
;
params
.
rw_size
=
rw_size
;
params
.
dynamic_data
=
dynamic_data
;
params
.
dynamic_size
=
dynamic_size
;
params
.
static_data
=
static_data
;
params
.
static_size
=
static_size
;
params
.
count
=
*
count
;
err
=
NsiEnumerateObjectsAllParametersEx
(
&
params
);
*
count
=
params
.
count
;
return
err
;
}
DWORD
WINAPI
NsiEnumerateObjectsAllParametersEx
(
struct
nsi_enumerate_all_ex
*
params
)
{
return
ERROR_CALL_NOT_IMPLEMENTED
;
}
...
...
dlls/nsi/nsi.spec
View file @
2bde6ccd
...
...
@@ -4,7 +4,7 @@
@ stub NsiDeregisterChangeNotification
@ stub NsiDeregisterChangeNotificationEx
@ stdcall NsiEnumerateObjectsAllParameters(long long ptr long ptr long ptr long ptr long ptr long ptr)
@ st
ub NsiEnumerateObjectsAllParametersEx
@ st
dcall NsiEnumerateObjectsAllParametersEx(ptr)
@ stub NsiEnumerateObjectsAllPersistentParametersWithMask
@ stub NsiFreePersistentDataWithMaskTable
@ stdcall NsiFreeTable(ptr ptr ptr ptr)
...
...
dlls/nsi/tests/nsi.c
View file @
2bde6ccd
...
...
@@ -40,6 +40,7 @@ static void test_nsi_api( void )
struct
nsi_ndis_ifinfo_rw
*
rw_tbl
,
*
rw
,
get_rw
,
*
enum_rw_tbl
,
*
enum_rw
;
struct
nsi_ndis_ifinfo_dynamic
*
dyn_tbl
,
*
dyn
,
get_dyn
,
*
enum_dyn_tbl
,
*
enum_dyn
;
struct
nsi_ndis_ifinfo_static
*
stat_tbl
,
*
stat
,
get_stat
,
*
enum_stat_tbl
,
*
enum_stat
;
struct
nsi_enumerate_all_ex
enum_params
;
DWORD
err
,
count
,
i
,
rw_size
,
enum_count
;
NET_LUID
*
luid_tbl
,
*
enum_luid_tbl
;
...
...
@@ -159,6 +160,25 @@ todo_wine
ok
(
enum_luid_tbl
[
i
].
Value
==
luid_tbl
[
i
].
Value
,
"%d: mismatch
\n
"
,
i
);
}
memset
(
&
enum_params
,
0
,
sizeof
(
enum_params
)
);
enum_params
.
first_arg
=
1
;
enum_params
.
second_arg
=
1
;
enum_params
.
module
=
&
NPI_MS_NDIS_MODULEID
;
enum_params
.
table
=
NSI_NDIS_IFINFO_TABLE
;
enum_params
.
key_data
=
enum_luid_tbl
;
enum_params
.
key_size
=
sizeof
(
*
enum_luid_tbl
);
enum_params
.
rw_data
=
enum_rw_tbl
;
enum_params
.
rw_size
=
rw_size
;
enum_params
.
dynamic_data
=
enum_dyn_tbl
;
enum_params
.
dynamic_size
=
sizeof
(
*
enum_dyn_tbl
);
enum_params
.
static_data
=
enum_stat_tbl
;
enum_params
.
static_size
=
sizeof
(
*
enum_stat_tbl
);
enum_params
.
count
=
count
;
err
=
NsiEnumerateObjectsAllParametersEx
(
&
enum_params
);
ok
(
!
err
,
"got %d
\n
"
,
err
);
ok
(
enum_params
.
count
==
count
,
"mismatch
\n
"
);
free
(
enum_luid_tbl
);
free
(
enum_rw_tbl
);
free
(
enum_dyn_tbl
);
...
...
include/wine/nsi.h
View file @
2bde6ccd
...
...
@@ -98,6 +98,24 @@ struct nsi_ndis_ifinfo_static
#define NSI_PARAM_TYPE_DYNAMIC 1
#define NSI_PARAM_TYPE_STATIC 2
struct
nsi_enumerate_all_ex
{
void
*
unknown
[
2
];
const
NPI_MODULEID
*
module
;
DWORD_PTR
table
;
DWORD
first_arg
;
DWORD
second_arg
;
void
*
key_data
;
DWORD
key_size
;
void
*
rw_data
;
DWORD
rw_size
;
void
*
dynamic_data
;
DWORD
dynamic_size
;
void
*
static_data
;
DWORD
static_size
;
DWORD_PTR
count
;
};
DWORD
WINAPI
NsiAllocateAndGetTable
(
DWORD
unk
,
const
NPI_MODULEID
*
module
,
DWORD
table
,
void
**
key_data
,
DWORD
key_size
,
void
**
rw_data
,
DWORD
rw_size
,
void
**
dynamic_data
,
DWORD
dynamic_size
,
void
**
static_data
,
DWORD
static_size
,
DWORD
*
count
,
DWORD
unk2
);
...
...
@@ -105,6 +123,7 @@ DWORD WINAPI NsiEnumerateObjectsAllParameters( DWORD unk, DWORD unk2, const NPI_
void
*
key_data
,
DWORD
key_size
,
void
*
rw_data
,
DWORD
rw_size
,
void
*
dynamic_data
,
DWORD
dynamic_size
,
void
*
static_data
,
DWORD
static_size
,
DWORD
*
count
);
DWORD
WINAPI
NsiEnumerateObjectsAllParametersEx
(
struct
nsi_enumerate_all_ex
*
params
);
void
WINAPI
NsiFreeTable
(
void
*
key_data
,
void
*
rw_data
,
void
*
dynamic_data
,
void
*
static_data
);
DWORD
WINAPI
NsiGetAllParameters
(
DWORD
unk
,
const
NPI_MODULEID
*
module
,
DWORD
table
,
const
void
*
key
,
DWORD
key_size
,
void
*
rw_data
,
DWORD
rw_size
,
void
*
dynamic_data
,
DWORD
dynamic_size
,
...
...
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