|
ReactOS 0.4.16-dev-1946-g52006dd
|
#include <stdarg.h>#include <stdio.h>#include <stdlib.h>#include <string.h>#include <assert.h>#include "windef.h"#include "winbase.h"#include "winerror.h"#include "rpc.h"#include "rpcndr.h"#include "excpt.h"#include "wine/debug.h"#include "wine/exception.h"#include "rpc_server.h"#include "rpc_assoc.h"#include "rpc_message.h"#include "rpc_defs.h"#include "ncastatus.h"#include "secext.h"
Go to the source code of this file.
Classes | |
| struct | _RpcPacket |
| struct | _RpcObjTypeMap |
| struct | rpc_server_registered_auth_info |
Typedefs | |
| typedef struct _RpcPacket | RpcPacket |
| typedef struct _RpcObjTypeMap | RpcObjTypeMap |
Variables | |
| static RpcObjTypeMap * | RpcObjTypeMaps |
| static struct list | protseqs = LIST_INIT(protseqs) |
| static struct list | server_interfaces = LIST_INIT(server_interfaces) |
| static struct list | server_registered_auth_info = LIST_INIT(server_registered_auth_info) |
| static CRITICAL_SECTION | server_cs = { &server_cs_debug, -1, 0, 0, 0, 0 } |
| static CRITICAL_SECTION_DEBUG | server_cs_debug |
| static CRITICAL_SECTION | listen_cs = { &listen_cs_debug, -1, 0, 0, 0, 0 } |
| static CRITICAL_SECTION_DEBUG | listen_cs_debug |
| static CRITICAL_SECTION | server_auth_info_cs = { &server_auth_info_cs_debug, -1, 0, 0, 0, 0 } |
| static CRITICAL_SECTION_DEBUG | server_auth_info_cs_debug |
| static BOOL | std_listen |
| static LONG | listen_count |
| static HANDLE | listen_done_event |
| static UUID | uuid_nil |
| typedef struct _RpcObjTypeMap RpcObjTypeMap |
| typedef struct _RpcPacket RpcPacket |
|
static |
Definition at line 946 of file rpc_server.c.
Referenced by RPCRT4_get_or_create_serverprotseq().
|
static |
Definition at line 975 of file rpc_server.c.
Referenced by RPCRT4_destroy_all_protseqs().
|
static |
Definition at line 1334 of file rpc_server.c.
Referenced by RpcServerRegisterAuthInfoW().
|
static |
Definition at line 172 of file rpc_server.c.
Referenced by process_bind_packet().
| RPC_BINDING_HANDLE WINAPI I_RpcGetCurrentCallHandle | ( | void | ) |
Definition at line 1743 of file rpc_server.c.
Referenced by client_get_handle(), NDRSContextMarshall(), NDRSContextUnmarshall(), RpcBindingInqAuthClientExW(), RpcBindingServerFromClient(), RpcImpersonateClient(), RpcRevertToSelfEx(), s_authinfo_test(), and s_context_handle_test().
| RPC_STATUS WINAPI I_RpcServerStartListening | ( | HWND | hWnd | ) |
Definition at line 1620 of file rpc_server.c.
| RPC_STATUS WINAPI I_RpcServerStopListening | ( | void | ) |
Definition at line 1630 of file rpc_server.c.
Definition at line 1640 of file rpc_server.c.
Definition at line 122 of file rpc_server.c.
Referenced by RPCRT4_find_interface().
|
inlinestatic |
Definition at line 109 of file rpc_server.c.
Referenced by LookupObjType().
|
static |
Definition at line 475 of file rpc_server.c.
Referenced by RPCRT4_io_thread(), and RPCRT4_process_packet().
|
static |
Definition at line 337 of file rpc_server.c.
Referenced by RPCRT4_io_thread(), and RPCRT4_process_packet().
|
static |
Definition at line 205 of file rpc_server.c.
Referenced by process_bind_packet().
|
static |
Definition at line 362 of file rpc_server.c.
Referenced by RPCRT4_process_packet().
| RPC_STATUS WINAPI RpcMgmtEnableIdleCleanup | ( | void | ) |
Definition at line 1611 of file rpc_server.c.
| RPC_STATUS WINAPI RpcMgmtEpEltInqBegin | ( | RPC_BINDING_HANDLE | Binding, |
| ULONG | InquiryType, | ||
| RPC_IF_ID * | IfId, | ||
| ULONG | VersOption, | ||
| UUID * | ObjectUuid, | ||
| RPC_EP_INQ_HANDLE * | InquiryContext | ||
| ) |
Definition at line 1693 of file rpc_server.c.
| RPC_STATUS WINAPI RpcMgmtInqIfIds | ( | RPC_BINDING_HANDLE | Binding, |
| RPC_IF_ID_VECTOR ** | IfIdVector | ||
| ) |
Definition at line 1650 of file rpc_server.c.
| RPC_STATUS WINAPI RpcMgmtInqStats | ( | RPC_BINDING_HANDLE | Binding, |
| RPC_STATS_VECTOR ** | Statistics | ||
| ) |
Definition at line 1659 of file rpc_server.c.
| RPC_STATUS WINAPI RpcMgmtIsServerListening | ( | RPC_BINDING_HANDLE | Binding | ) |
Definition at line 1704 of file rpc_server.c.
Referenced by _test_is_server_listening(), and _test_is_server_listening2().
| RPC_STATUS WINAPI RpcMgmtSetAuthorizationFn | ( | RPC_MGMT_AUTHORIZATION_FN | fn | ) |
Definition at line 1725 of file rpc_server.c.
| RPC_STATUS WINAPI RpcMgmtSetServerStackSize | ( | ULONG | ThreadStackSize | ) |
Definition at line 1734 of file rpc_server.c.
Referenced by CallPerInstanceInitFunctions().
| RPC_STATUS WINAPI RpcMgmtStatsVectorFree | ( | RPC_STATS_VECTOR ** | StatsVector | ) |
| RPC_STATUS WINAPI RpcMgmtStopServerListening | ( | RPC_BINDING_HANDLE | Binding | ) |
Definition at line 1596 of file rpc_server.c.
Referenced by _ServiceControlHandlerEx(), RpcpStopRpcServer(), RpcpStopRpcServerEx(), s_stop(), SamrShutdownSamServer(), service_handler(), ServiceControlHandler(), ShutdownRpc(), test_rpc_ncacn_ip_tcp(), test_server_listening(), and test_stop_wait_for_call().
| RPC_STATUS WINAPI RpcMgmtWaitServerListen | ( | void | ) |
Definition at line 1539 of file rpc_server.c.
Referenced by RpcpStopRpcServer(), RpcpStopRpcServerEx(), RpcServerListen(), run_server(), server(), test_rpc_ncacn_ip_tcp(), test_server_listening(), and wait_listen_proc().
| RPC_STATUS WINAPI RpcObjectSetType | ( | UUID * | ObjUuid, |
| UUID * | TypeUuid | ||
| ) |
Definition at line 1281 of file rpc_server.c.
Definition at line 1094 of file rpc_server.c.
Referenced by DllMain().
|
static |
Definition at line 131 of file rpc_server.c.
Referenced by process_bind_packet_no_send(), and process_request_packet().
|
static |
Definition at line 987 of file rpc_server.c.
Referenced by RpcServerUseProtseqA(), RpcServerUseProtseqEpExA(), RpcServerUseProtseqEpExW(), and RpcServerUseProtseqW().
Definition at line 543 of file rpc_server.c.
Referenced by RPCRT4_new_client().
| void RPCRT4_new_client | ( | RpcConnection * | conn | ) |
Definition at line 626 of file rpc_server.c.
Referenced by rpcrt4_protseq_np_wait_for_new_connection(), and rpcrt4_protseq_sock_wait_for_new_connection().
|
static |
Definition at line 500 of file rpc_server.c.
Referenced by RPCRT4_worker_thread().
|
static |
Definition at line 819 of file rpc_server.c.
Referenced by RPCRT4_use_protseq().
|
static |
Definition at line 160 of file rpc_server.c.
Referenced by process_bind_packet_no_send(), and process_request_packet().
Definition at line 642 of file rpc_server.c.
Referenced by RPCRT4_start_listen_protseq().
Definition at line 1396 of file rpc_server.c.
Referenced by DllMain().
| RPC_STATUS RPCRT4_ServerGetRegisteredAuthInfo | ( | USHORT | auth_type, |
| CredHandle * | cred, | ||
| TimeStamp * | exp, | ||
| ULONG * | max_token | ||
| ) |
Definition at line 1365 of file rpc_server.c.
Referenced by RPCRT4_ServerConnectionAuth().
|
static |
Definition at line 743 of file rpc_server.c.
Referenced by RpcServerListen(), and RpcServerRegisterIf3().
|
static |
Definition at line 725 of file rpc_server.c.
Referenced by RPCRT4_start_listen(), and RPCRT4_use_protseq().
|
static |
Definition at line 781 of file rpc_server.c.
Referenced by RpcMgmtStopServerListening().
|
static |
Definition at line 710 of file rpc_server.c.
Referenced by RPCRT4_destroy_all_protseqs(), RPCRT4_start_listen(), RPCRT4_stop_listen(), and RPCRT4_use_protseq().
|
static |
Definition at line 834 of file rpc_server.c.
Referenced by RpcServerUseProtseqA(), RpcServerUseProtseqEpExA(), RpcServerUseProtseqEpExW(), and RpcServerUseProtseqW().
Definition at line 533 of file rpc_server.c.
Referenced by RPCRT4_io_thread().
| RPC_STATUS WINAPI RpcServerInqBindings | ( | RPC_BINDING_VECTOR ** | BindingVector | ) |
Definition at line 863 of file rpc_server.c.
Referenced by test_endpoint_mapper(), and test_RpcServerUseProtseq().
| RPC_STATUS RPC_ENTRY RpcServerInqDefaultPrincNameA | ( | ULONG | AuthnSvc, |
| RPC_CSTR * | PrincName | ||
| ) |
Definition at line 1481 of file rpc_server.c.
Referenced by test_RpcServerInqDefaultPrincName().
| RPC_STATUS RPC_ENTRY RpcServerInqDefaultPrincNameW | ( | ULONG | AuthnSvc, |
| RPC_WSTR * | PrincName | ||
| ) |
Definition at line 1499 of file rpc_server.c.
Referenced by RpcServerInqDefaultPrincNameA().
| RPC_STATUS WINAPI RpcServerListen | ( | UINT | MinimumCallThreads, |
| UINT | MaxCalls, | ||
| UINT | DontWait | ||
| ) |
Definition at line 1520 of file rpc_server.c.
Referenced by LrpcThreadProc(), LsarStartRpcServer(), main(), RpcpStartRpcServer(), RpcServerThread(), RPCSS_Initialize(), RpcThreadRoutine(), run_server(), SampStartRpcServer(), ScmStartRpcServer(), server(), StartRpcServer(), test_ndr_buffer(), test_rpc_ncacn_ip_tcp(), test_server_listening(), and test_stop_wait_for_call().
| RPC_STATUS WINAPI RpcServerRegisterAuthInfoA | ( | RPC_CSTR | ServerPrincName, |
| ULONG | AuthnSvc, | ||
| RPC_AUTH_KEY_RETRIEVAL_FN | GetKeyFn, | ||
| LPVOID | Arg | ||
| ) |
Definition at line 1414 of file rpc_server.c.
Referenced by test_RpcServerInqDefaultPrincName().
| RPC_STATUS WINAPI RpcServerRegisterAuthInfoW | ( | RPC_WSTR | ServerPrincName, |
| ULONG | AuthnSvc, | ||
| RPC_AUTH_KEY_RETRIEVAL_FN | GetKeyFn, | ||
| LPVOID | Arg | ||
| ) |
Definition at line 1434 of file rpc_server.c.
Referenced by RpcServerRegisterAuthInfoA(), and test_RpcServerRegisterAuthInfo().
| RPC_STATUS WINAPI RpcServerRegisterIf | ( | RPC_IF_HANDLE | IfSpec, |
| UUID * | MgrTypeUuid, | ||
| RPC_MGR_EPV * | MgrEpv | ||
| ) |
Definition at line 1116 of file rpc_server.c.
Referenced by DsSetupInit(), LrpcThreadProc(), LsarStartRpcServer(), main(), RpcpAddInterface(), RpcServerThread(), RPCSS_Initialize(), RpcThreadRoutine(), run_server(), SampStartRpcServer(), ScmStartRpcServer(), server(), StartRpcServer(), test_endpoint_mapper(), test_ndr_buffer(), test_rpc_ncacn_ip_tcp(), and test_server_listening().
| RPC_STATUS WINAPI RpcServerRegisterIf2 | ( | RPC_IF_HANDLE | IfSpec, |
| UUID * | MgrTypeUuid, | ||
| RPC_MGR_EPV * | MgrEpv, | ||
| UINT | Flags, | ||
| UINT | MaxCalls, | ||
| UINT | MaxRpcSize, | ||
| RPC_IF_CALLBACK_FN * | IfCallbackFn | ||
| ) |
Definition at line 1135 of file rpc_server.c.
| RPC_STATUS WINAPI RpcServerRegisterIf3 | ( | RPC_IF_HANDLE | IfSpec, |
| UUID * | MgrTypeUuid, | ||
| RPC_MGR_EPV * | MgrEpv, | ||
| UINT | Flags, | ||
| UINT | MaxCalls, | ||
| UINT | MaxRpcSize, | ||
| RPC_IF_CALLBACK_FN * | IfCallbackFn, | ||
| void * | SecurityDescriptor | ||
| ) |
Definition at line 1144 of file rpc_server.c.
Referenced by RpcServerRegisterIf(), RpcServerRegisterIf2(), and RpcServerRegisterIfEx().
| RPC_STATUS WINAPI RpcServerRegisterIfEx | ( | RPC_IF_HANDLE | IfSpec, |
| UUID * | MgrTypeUuid, | ||
| RPC_MGR_EPV * | MgrEpv, | ||
| UINT | Flags, | ||
| UINT | MaxCalls, | ||
| RPC_IF_CALLBACK_FN * | IfCallbackFn | ||
| ) |
Definition at line 1125 of file rpc_server.c.
Referenced by do_msidbCustomActionTypeDll(), and RPC_RegisterInterface().
| RPC_STATUS WINAPI RpcServerUnregisterIf | ( | RPC_IF_HANDLE | IfSpec, |
| UUID * | MgrTypeUuid, | ||
| UINT | WaitForCallsToComplete | ||
| ) |
Definition at line 1202 of file rpc_server.c.
Referenced by MSI_FreePackage(), RPC_UnregisterInterface(), RpcpStopRpcServer(), RPCSS_Initialize(), s_stop(), s_stop_autolisten(), server(), service_handler(), test_endpoint_mapper(), test_ndr_buffer(), and test_rpc_ncacn_ip_tcp().
| RPC_STATUS WINAPI RpcServerUnregisterIfEx | ( | RPC_IF_HANDLE | IfSpec, |
| UUID * | MgrTypeUuid, | ||
| int | RundownContextHandles | ||
| ) |
Definition at line 1253 of file rpc_server.c.
Referenced by RpcpStopRpcServerEx().
| RPC_STATUS WINAPI RpcServerUseProtseqA | ( | RPC_CSTR | Protseq, |
| unsigned int | MaxCalls, | ||
| void * | SecurityDescriptor | ||
| ) |
Definition at line 1060 of file rpc_server.c.
Referenced by test_RpcServerUseProtseq().
| RPC_STATUS WINAPI RpcServerUseProtseqEpA | ( | RPC_CSTR | Protseq, |
| UINT | MaxCalls, | ||
| RPC_CSTR | Endpoint, | ||
| LPVOID | SecurityDescriptor | ||
| ) |
Definition at line 910 of file rpc_server.c.
Referenced by run_server(), server(), test_ndr_buffer(), test_rpc_ncacn_ip_tcp(), test_RpcServerUseProtseq(), and test_server_listening().
| RPC_STATUS WINAPI RpcServerUseProtseqEpExA | ( | RPC_CSTR | Protseq, |
| UINT | MaxCalls, | ||
| RPC_CSTR | Endpoint, | ||
| LPVOID | SecurityDescriptor, | ||
| PRPC_POLICY | lpPolicy | ||
| ) |
Definition at line 1013 of file rpc_server.c.
Referenced by RpcServerUseProtseqEpA().
| RPC_STATUS WINAPI RpcServerUseProtseqEpExW | ( | RPC_WSTR | Protseq, |
| UINT | MaxCalls, | ||
| RPC_WSTR | Endpoint, | ||
| LPVOID | SecurityDescriptor, | ||
| PRPC_POLICY | lpPolicy | ||
| ) |
Definition at line 1033 of file rpc_server.c.
Referenced by RpcServerUseProtseqEpW().
| RPC_STATUS WINAPI RpcServerUseProtseqEpW | ( | RPC_WSTR | Protseq, |
| UINT | MaxCalls, | ||
| RPC_WSTR | Endpoint, | ||
| LPVOID | SecurityDescriptor | ||
| ) |
Definition at line 927 of file rpc_server.c.
Referenced by do_msidbCustomActionTypeDll(), LrpcThreadProc(), LsarStartRpcServer(), RPC_StartRemoting(), RpcpAddInterface(), RpcServerThread(), RPCSS_Initialize(), RpcThreadRoutine(), SampStartRpcServer(), ScmStartRpcServer(), and StartRpcServer().
| RPC_STATUS WINAPI RpcServerUseProtseqW | ( | RPC_WSTR | Protseq, |
| unsigned int | MaxCalls, | ||
| void * | SecurityDescriptor | ||
| ) |
Definition at line 1077 of file rpc_server.c.
| WINE_DEFAULT_DEBUG_CHANNEL | ( | rpc | ) |
|
static |
Definition at line 103 of file rpc_server.c.
Referenced by RpcMgmtWaitServerListen(), RPCRT4_destroy_all_protseqs(), RPCRT4_start_listen(), and RPCRT4_stop_listen().
|
static |
Definition at line 82 of file rpc_server.c.
Referenced by RpcMgmtIsServerListening(), RpcMgmtWaitServerListen(), RPCRT4_destroy_all_protseqs(), RPCRT4_start_listen(), RPCRT4_start_listen_protseq(), and RPCRT4_stop_listen().
|
static |
Definition at line 83 of file rpc_server.c.
|
static |
Definition at line 105 of file rpc_server.c.
Referenced by RpcMgmtIsServerListening(), RpcMgmtWaitServerListen(), RPCRT4_start_listen(), and RPCRT4_stop_listen().
Definition at line 69 of file rpc_server.c.
Referenced by alloc_serverprotoseq(), RpcMgmtWaitServerListen(), RpcNetworkInqProtseqsA(), RpcNetworkInqProtseqsW(), RpcProtseqVectorFreeA(), RpcProtseqVectorFreeW(), RPCRT4_destroy_all_protseqs(), RPCRT4_get_or_create_serverprotseq(), RPCRT4_start_listen(), RPCRT4_stop_listen(), RpcServerInqBindings(), and RpcServerListen().
|
static |
Definition at line 66 of file rpc_server.c.
Referenced by LookupObjTypeMap(), and RpcObjectSetType().
|
static |
Definition at line 91 of file rpc_server.c.
Referenced by RPCRT4_ServerFreeAllRegisteredAuthInfo(), RPCRT4_ServerGetRegisteredAuthInfo(), and RpcServerRegisterAuthInfoW().
|
static |
Definition at line 92 of file rpc_server.c.
|
static |
Definition at line 73 of file rpc_server.c.
Referenced by RpcMgmtWaitServerListen(), RPCRT4_destroy_all_protseqs(), RPCRT4_find_interface(), RPCRT4_get_or_create_serverprotseq(), RPCRT4_start_listen(), RPCRT4_stop_listen(), RpcServerInqBindings(), RpcServerRegisterIf3(), and RpcServerUnregisterIf().
|
static |
Definition at line 74 of file rpc_server.c.
Definition at line 70 of file rpc_server.c.
Referenced by RPCRT4_find_interface(), RpcServerRegisterIf3(), and RpcServerUnregisterIf().
Definition at line 71 of file rpc_server.c.
Referenced by RPCRT4_ServerFreeAllRegisteredAuthInfo(), RPCRT4_ServerGetRegisteredAuthInfo(), and RpcServerRegisterAuthInfoW().
|
static |
Definition at line 101 of file rpc_server.c.
Referenced by RpcMgmtIsServerListening(), RPCRT4_destroy_all_protseqs(), RPCRT4_find_interface(), RPCRT4_server_thread(), RPCRT4_start_listen(), RPCRT4_stop_listen(), and RPCRT4_use_protseq().
|
static |
Definition at line 107 of file rpc_server.c.
Referenced by LookupObjType().