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
e0acc8d2
Commit
e0acc8d2
authored
Nov 10, 2006
by
Rob Shearman
Committed by
Alexandre Julliard
Nov 10, 2006
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
rpcrt4: Fix a crash in RpcServerUseProtseqEpExA/W when using an unsupported protseq.
parent
44922d29
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
29 additions
and
20 deletions
+29
-20
rpc_server.c
dlls/rpcrt4/rpc_server.c
+29
-20
No files found.
dlls/rpcrt4/rpc_server.c
View file @
e0acc8d2
...
...
@@ -605,29 +605,31 @@ RPC_STATUS WINAPI RpcServerUseProtseqEpW( RPC_WSTR Protseq, UINT MaxCalls, RPC_W
/***********************************************************************
* alloc_serverprotoseq (internal)
*/
static
R
pcServerProtseq
*
alloc_serverprotoseq
(
UINT
MaxCalls
,
char
*
Protseq
,
char
*
Endpoint
)
static
R
PC_STATUS
alloc_serverprotoseq
(
UINT
MaxCalls
,
char
*
Protseq
,
char
*
Endpoint
,
RpcServerProtseq
**
ps
)
{
RpcServerProtseq
*
ps
;
const
struct
protseq_ops
*
ops
=
rpcrt4_get_protseq_ops
(
Protseq
);
if
(
!
ops
)
return
NULL
;
{
FIXME
(
"protseq %s not supported
\n
"
,
debugstr_a
(
Protseq
));
return
RPC_S_PROTSEQ_NOT_SUPPORTED
;
}
ps
=
ops
->
alloc
();
if
(
!
ps
)
return
NULL
;
ps
->
MaxCalls
=
MaxCalls
;
ps
->
Protseq
=
Protseq
;
ps
->
Endpoint
=
Endpoint
;
ps
->
ops
=
ops
;
ps
->
MaxCalls
=
0
;
ps
->
conn
=
NULL
;
InitializeCriticalSection
(
&
ps
->
cs
);
ps
->
is_listening
=
FALSE
;
ps
->
mgr_mutex
=
NULL
;
ps
->
server_ready_event
=
NULL
;
*
ps
=
ops
->
alloc
();
if
(
!
*
ps
)
return
RPC_S_OUT_OF_RESOURCES
;
(
*
ps
)
->
MaxCalls
=
MaxCalls
;
(
*
ps
)
->
Protseq
=
Protseq
;
(
*
ps
)
->
Endpoint
=
Endpoint
;
(
*
ps
)
->
ops
=
ops
;
(
*
ps
)
->
MaxCalls
=
0
;
(
*
ps
)
->
conn
=
NULL
;
InitializeCriticalSection
(
&
(
*
ps
)
->
cs
);
(
*
ps
)
->
is_listening
=
FALSE
;
(
*
ps
)
->
mgr_mutex
=
NULL
;
(
*
ps
)
->
server_ready_event
=
NULL
;
return
ps
;
return
RPC_S_OK
;
}
/***********************************************************************
...
...
@@ -638,12 +640,16 @@ RPC_STATUS WINAPI RpcServerUseProtseqEpExA( RPC_CSTR Protseq, UINT MaxCalls, RPC
{
char
*
szps
=
(
char
*
)
Protseq
,
*
szep
=
(
char
*
)
Endpoint
;
RpcServerProtseq
*
ps
;
RPC_STATUS
status
;
TRACE
(
"(%s,%u,%s,%p,{%u,%lu,%lu})
\n
"
,
debugstr_a
(
szps
),
MaxCalls
,
debugstr_a
(
szep
),
SecurityDescriptor
,
lpPolicy
->
Length
,
lpPolicy
->
EndpointFlags
,
lpPolicy
->
NICFlags
);
ps
=
alloc_serverprotoseq
(
MaxCalls
,
RPCRT4_strdupA
(
szps
),
RPCRT4_strdupA
(
szep
));
status
=
alloc_serverprotoseq
(
MaxCalls
,
RPCRT4_strdupA
(
szps
),
RPCRT4_strdupA
(
szep
),
&
ps
);
if
(
status
!=
RPC_S_OK
)
return
status
;
return
RPCRT4_use_protseq
(
ps
);
}
...
...
@@ -655,13 +661,16 @@ RPC_STATUS WINAPI RpcServerUseProtseqEpExW( RPC_WSTR Protseq, UINT MaxCalls, RPC
PRPC_POLICY
lpPolicy
)
{
RpcServerProtseq
*
ps
;
RPC_STATUS
status
;
TRACE
(
"(%s,%u,%s,%p,{%u,%lu,%lu})
\n
"
,
debugstr_w
(
Protseq
),
MaxCalls
,
debugstr_w
(
Endpoint
),
SecurityDescriptor
,
lpPolicy
->
Length
,
lpPolicy
->
EndpointFlags
,
lpPolicy
->
NICFlags
);
ps
=
alloc_serverprotoseq
(
MaxCalls
,
RPCRT4_strdupWtoA
(
Protseq
),
RPCRT4_strdupWtoA
(
Endpoint
));
status
=
alloc_serverprotoseq
(
MaxCalls
,
RPCRT4_strdupWtoA
(
Protseq
),
RPCRT4_strdupWtoA
(
Endpoint
),
&
ps
);
if
(
status
!=
RPC_S_OK
)
return
status
;
return
RPCRT4_use_protseq
(
ps
);
}
...
...
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