20#include <winpr/config.h>
24#include <winpr/crypto.h>
26#if !defined(_WIN32) || defined(_UWP)
29#define TAG WINPR_TAG("rpc")
31RPC_STATUS RpcBindingCopy(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE SourceBinding,
32 WINPR_ATTR_UNUSED RPC_BINDING_HANDLE* DestinationBinding)
34 WLog_ERR(TAG,
"Not implemented");
38RPC_STATUS RpcBindingFree(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE* Binding)
40 WLog_ERR(TAG,
"Not implemented");
44RPC_STATUS RpcBindingSetOption(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE hBinding,
45 WINPR_ATTR_UNUSED
unsigned long option,
46 WINPR_ATTR_UNUSED ULONG_PTR optionValue)
48 WLog_ERR(TAG,
"Not implemented");
52RPC_STATUS RpcBindingInqOption(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE hBinding,
53 WINPR_ATTR_UNUSED
unsigned long option,
54 WINPR_ATTR_UNUSED ULONG_PTR* pOptionValue)
56 WLog_ERR(TAG,
"Not implemented");
60RPC_STATUS RpcBindingFromStringBindingA(WINPR_ATTR_UNUSED RPC_CSTR StringBinding,
61 WINPR_ATTR_UNUSED RPC_BINDING_HANDLE* Binding)
63 WLog_ERR(TAG,
"Not implemented");
67RPC_STATUS RpcBindingFromStringBindingW(WINPR_ATTR_UNUSED RPC_WSTR StringBinding,
68 WINPR_ATTR_UNUSED RPC_BINDING_HANDLE* Binding)
70 WLog_ERR(TAG,
"Not implemented");
74RPC_STATUS RpcSsGetContextBinding(WINPR_ATTR_UNUSED
void* ContextHandle,
75 WINPR_ATTR_UNUSED RPC_BINDING_HANDLE* Binding)
77 WLog_ERR(TAG,
"Not implemented");
81RPC_STATUS RpcBindingInqObject(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
82 WINPR_ATTR_UNUSED
UUID* ObjectUuid)
84 WLog_ERR(TAG,
"Not implemented");
88RPC_STATUS RpcBindingReset(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding)
90 WLog_ERR(TAG,
"Not implemented");
94RPC_STATUS RpcBindingSetObject(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
95 WINPR_ATTR_UNUSED
UUID* ObjectUuid)
97 WLog_ERR(TAG,
"Not implemented");
101RPC_STATUS RpcMgmtInqDefaultProtectLevel(WINPR_ATTR_UNUSED
unsigned long AuthnSvc,
102 WINPR_ATTR_UNUSED
unsigned long* AuthnLevel)
104 WLog_ERR(TAG,
"Not implemented");
108RPC_STATUS RpcBindingToStringBindingA(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
109 WINPR_ATTR_UNUSED RPC_CSTR* StringBinding)
111 WLog_ERR(TAG,
"Not implemented");
115RPC_STATUS RpcBindingToStringBindingW(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
116 WINPR_ATTR_UNUSED RPC_WSTR* StringBinding)
118 WLog_ERR(TAG,
"Not implemented");
124 WLog_ERR(TAG,
"Not implemented");
128RPC_STATUS RpcStringBindingComposeA(WINPR_ATTR_UNUSED RPC_CSTR ObjUuid,
129 WINPR_ATTR_UNUSED RPC_CSTR Protseq,
130 WINPR_ATTR_UNUSED RPC_CSTR NetworkAddr,
131 WINPR_ATTR_UNUSED RPC_CSTR Endpoint,
132 WINPR_ATTR_UNUSED RPC_CSTR Options,
133 WINPR_ATTR_UNUSED RPC_CSTR* StringBinding)
135 WLog_ERR(TAG,
"Not implemented");
139RPC_STATUS RpcStringBindingComposeW(WINPR_ATTR_UNUSED RPC_WSTR ObjUuid,
140 WINPR_ATTR_UNUSED RPC_WSTR Protseq,
141 WINPR_ATTR_UNUSED RPC_WSTR NetworkAddr,
142 WINPR_ATTR_UNUSED RPC_WSTR Endpoint,
143 WINPR_ATTR_UNUSED RPC_WSTR Options,
144 WINPR_ATTR_UNUSED RPC_WSTR* StringBinding)
146 WLog_ERR(TAG,
"Not implemented");
150RPC_STATUS RpcStringBindingParseA(WINPR_ATTR_UNUSED RPC_CSTR StringBinding,
151 WINPR_ATTR_UNUSED RPC_CSTR* ObjUuid,
152 WINPR_ATTR_UNUSED RPC_CSTR* Protseq,
153 WINPR_ATTR_UNUSED RPC_CSTR* NetworkAddr,
154 WINPR_ATTR_UNUSED RPC_CSTR* Endpoint,
155 WINPR_ATTR_UNUSED RPC_CSTR* NetworkOptions)
157 WLog_ERR(TAG,
"Not implemented");
161RPC_STATUS RpcStringBindingParseW(WINPR_ATTR_UNUSED RPC_WSTR StringBinding,
162 WINPR_ATTR_UNUSED RPC_WSTR* ObjUuid,
163 WINPR_ATTR_UNUSED RPC_WSTR* Protseq,
164 WINPR_ATTR_UNUSED RPC_WSTR* NetworkAddr,
165 WINPR_ATTR_UNUSED RPC_WSTR* Endpoint,
166 WINPR_ATTR_UNUSED RPC_WSTR* NetworkOptions)
168 WLog_ERR(TAG,
"Not implemented");
172RPC_STATUS RpcStringFreeA(RPC_CSTR* String)
180RPC_STATUS RpcStringFreeW(RPC_WSTR* String)
188RPC_STATUS RpcIfInqId(WINPR_ATTR_UNUSED RPC_IF_HANDLE RpcIfHandle,
191 WLog_ERR(TAG,
"Not implemented");
195RPC_STATUS RpcNetworkIsProtseqValidA(WINPR_ATTR_UNUSED RPC_CSTR Protseq)
197 WLog_ERR(TAG,
"Not implemented");
201RPC_STATUS RpcNetworkIsProtseqValidW(WINPR_ATTR_UNUSED RPC_WSTR Protseq)
203 WLog_ERR(TAG,
"Not implemented");
207RPC_STATUS RpcMgmtInqComTimeout(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
208 WINPR_ATTR_UNUSED
unsigned int* Timeout)
210 WLog_ERR(TAG,
"Not implemented");
214RPC_STATUS RpcMgmtSetComTimeout(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
215 WINPR_ATTR_UNUSED
unsigned int Timeout)
217 WLog_ERR(TAG,
"Not implemented");
221RPC_STATUS RpcMgmtSetCancelTimeout(WINPR_ATTR_UNUSED
long Timeout)
223 WLog_ERR(TAG,
"Not implemented");
229 WLog_ERR(TAG,
"Not implemented");
235 WLog_ERR(TAG,
"Not implemented");
239RPC_STATUS RpcObjectInqType(WINPR_ATTR_UNUSED
UUID* ObjUuid, WINPR_ATTR_UNUSED
UUID* TypeUuid)
241 WLog_ERR(TAG,
"Not implemented");
245RPC_STATUS RpcObjectSetInqFn(WINPR_ATTR_UNUSED RPC_OBJECT_INQ_FN* InquiryFn)
247 WLog_ERR(TAG,
"Not implemented");
251RPC_STATUS RpcObjectSetType(WINPR_ATTR_UNUSED
UUID* ObjUuid, WINPR_ATTR_UNUSED
UUID* TypeUuid)
253 WLog_ERR(TAG,
"Not implemented");
259 WLog_ERR(TAG,
"Not implemented");
265 WLog_ERR(TAG,
"Not implemented");
271 WLog_ERR(TAG,
"Not implemented");
275RPC_STATUS RpcServerInqIf(WINPR_ATTR_UNUSED RPC_IF_HANDLE IfSpec,
276 WINPR_ATTR_UNUSED
UUID* MgrTypeUuid,
277 WINPR_ATTR_UNUSED RPC_MGR_EPV** MgrEpv)
279 WLog_ERR(TAG,
"Not implemented");
283RPC_STATUS RpcServerListen(WINPR_ATTR_UNUSED
unsigned int MinimumCallThreads,
284 WINPR_ATTR_UNUSED
unsigned int MaxCalls,
285 WINPR_ATTR_UNUSED
unsigned int DontWait)
287 WLog_ERR(TAG,
"Not implemented");
291RPC_STATUS RpcServerRegisterIf(WINPR_ATTR_UNUSED RPC_IF_HANDLE IfSpec,
292 WINPR_ATTR_UNUSED
UUID* MgrTypeUuid,
293 WINPR_ATTR_UNUSED RPC_MGR_EPV* MgrEpv)
295 WLog_ERR(TAG,
"Not implemented");
299RPC_STATUS RpcServerRegisterIfEx(WINPR_ATTR_UNUSED RPC_IF_HANDLE IfSpec,
300 WINPR_ATTR_UNUSED
UUID* MgrTypeUuid,
301 WINPR_ATTR_UNUSED RPC_MGR_EPV* MgrEpv,
302 WINPR_ATTR_UNUSED
unsigned int Flags,
303 WINPR_ATTR_UNUSED
unsigned int MaxCalls,
304 WINPR_ATTR_UNUSED RPC_IF_CALLBACK_FN* IfCallback)
306 WLog_ERR(TAG,
"Not implemented");
310RPC_STATUS RpcServerRegisterIf2(WINPR_ATTR_UNUSED RPC_IF_HANDLE IfSpec,
311 WINPR_ATTR_UNUSED
UUID* MgrTypeUuid,
312 WINPR_ATTR_UNUSED RPC_MGR_EPV* MgrEpv,
313 WINPR_ATTR_UNUSED
unsigned int Flags,
314 WINPR_ATTR_UNUSED
unsigned int MaxCalls,
315 WINPR_ATTR_UNUSED
unsigned int MaxRpcSize,
316 WINPR_ATTR_UNUSED RPC_IF_CALLBACK_FN* IfCallbackFn)
318 WLog_ERR(TAG,
"Not implemented");
322RPC_STATUS RpcServerUnregisterIf(WINPR_ATTR_UNUSED RPC_IF_HANDLE IfSpec,
323 WINPR_ATTR_UNUSED
UUID* MgrTypeUuid,
324 WINPR_ATTR_UNUSED
unsigned int WaitForCallsToComplete)
326 WLog_ERR(TAG,
"Not implemented");
330RPC_STATUS RpcServerUnregisterIfEx(WINPR_ATTR_UNUSED RPC_IF_HANDLE IfSpec,
331 WINPR_ATTR_UNUSED
UUID* MgrTypeUuid,
332 WINPR_ATTR_UNUSED
int RundownContextHandles)
334 WLog_ERR(TAG,
"Not implemented");
338RPC_STATUS RpcServerUseAllProtseqs(WINPR_ATTR_UNUSED
unsigned int MaxCalls,
339 WINPR_ATTR_UNUSED
void* SecurityDescriptor)
341 WLog_ERR(TAG,
"Not implemented");
345RPC_STATUS RpcServerUseAllProtseqsEx(WINPR_ATTR_UNUSED
unsigned int MaxCalls,
346 WINPR_ATTR_UNUSED
void* SecurityDescriptor,
349 WLog_ERR(TAG,
"Not implemented");
353RPC_STATUS RpcServerUseAllProtseqsIf(WINPR_ATTR_UNUSED
unsigned int MaxCalls,
354 WINPR_ATTR_UNUSED RPC_IF_HANDLE IfSpec,
355 WINPR_ATTR_UNUSED
void* SecurityDescriptor)
357 WLog_ERR(TAG,
"Not implemented");
361RPC_STATUS RpcServerUseAllProtseqsIfEx(WINPR_ATTR_UNUSED
unsigned int MaxCalls,
362 WINPR_ATTR_UNUSED RPC_IF_HANDLE IfSpec,
363 WINPR_ATTR_UNUSED
void* SecurityDescriptor,
366 WLog_ERR(TAG,
"Not implemented");
370RPC_STATUS RpcServerUseProtseqA(WINPR_ATTR_UNUSED RPC_CSTR Protseq,
371 WINPR_ATTR_UNUSED
unsigned int MaxCalls,
372 WINPR_ATTR_UNUSED
void* SecurityDescriptor)
374 WLog_ERR(TAG,
"Not implemented");
378RPC_STATUS RpcServerUseProtseqExA(WINPR_ATTR_UNUSED RPC_CSTR Protseq,
379 WINPR_ATTR_UNUSED
unsigned int MaxCalls,
380 WINPR_ATTR_UNUSED
void* SecurityDescriptor,
383 WLog_ERR(TAG,
"Not implemented");
387RPC_STATUS RpcServerUseProtseqW(WINPR_ATTR_UNUSED RPC_WSTR Protseq,
388 WINPR_ATTR_UNUSED
unsigned int MaxCalls,
389 WINPR_ATTR_UNUSED
void* SecurityDescriptor)
391 WLog_ERR(TAG,
"Not implemented");
395RPC_STATUS RpcServerUseProtseqExW(WINPR_ATTR_UNUSED RPC_WSTR Protseq,
396 WINPR_ATTR_UNUSED
unsigned int MaxCalls,
397 WINPR_ATTR_UNUSED
void* SecurityDescriptor,
400 WLog_ERR(TAG,
"Not implemented");
404RPC_STATUS RpcServerUseProtseqEpA(WINPR_ATTR_UNUSED RPC_CSTR Protseq,
405 WINPR_ATTR_UNUSED
unsigned int MaxCalls,
406 WINPR_ATTR_UNUSED RPC_CSTR Endpoint,
407 WINPR_ATTR_UNUSED
void* SecurityDescriptor)
409 WLog_ERR(TAG,
"Not implemented");
413RPC_STATUS RpcServerUseProtseqEpExA(WINPR_ATTR_UNUSED RPC_CSTR Protseq,
414 WINPR_ATTR_UNUSED
unsigned int MaxCalls,
415 WINPR_ATTR_UNUSED RPC_CSTR Endpoint,
416 WINPR_ATTR_UNUSED
void* SecurityDescriptor,
419 WLog_ERR(TAG,
"Not implemented");
423RPC_STATUS RpcServerUseProtseqEpW(WINPR_ATTR_UNUSED RPC_WSTR Protseq,
424 WINPR_ATTR_UNUSED
unsigned int MaxCalls,
425 WINPR_ATTR_UNUSED RPC_WSTR Endpoint,
426 WINPR_ATTR_UNUSED
void* SecurityDescriptor)
428 WLog_ERR(TAG,
"Not implemented");
432RPC_STATUS RpcServerUseProtseqEpExW(WINPR_ATTR_UNUSED RPC_WSTR Protseq,
433 WINPR_ATTR_UNUSED
unsigned int MaxCalls,
434 WINPR_ATTR_UNUSED RPC_WSTR Endpoint,
435 WINPR_ATTR_UNUSED
void* SecurityDescriptor,
438 WLog_ERR(TAG,
"Not implemented");
442RPC_STATUS RpcServerUseProtseqIfA(WINPR_ATTR_UNUSED RPC_CSTR Protseq,
443 WINPR_ATTR_UNUSED
unsigned int MaxCalls,
444 WINPR_ATTR_UNUSED RPC_IF_HANDLE IfSpec,
445 WINPR_ATTR_UNUSED
void* SecurityDescriptor)
447 WLog_ERR(TAG,
"Not implemented");
451RPC_STATUS RpcServerUseProtseqIfExA(WINPR_ATTR_UNUSED RPC_CSTR Protseq,
452 WINPR_ATTR_UNUSED
unsigned int MaxCalls,
453 WINPR_ATTR_UNUSED RPC_IF_HANDLE IfSpec,
454 WINPR_ATTR_UNUSED
void* SecurityDescriptor,
457 WLog_ERR(TAG,
"Not implemented");
461RPC_STATUS RpcServerUseProtseqIfW(WINPR_ATTR_UNUSED RPC_WSTR Protseq,
462 WINPR_ATTR_UNUSED
unsigned int MaxCalls,
463 WINPR_ATTR_UNUSED RPC_IF_HANDLE IfSpec,
464 WINPR_ATTR_UNUSED
void* SecurityDescriptor)
466 WLog_ERR(TAG,
"Not implemented");
470RPC_STATUS RpcServerUseProtseqIfExW(WINPR_ATTR_UNUSED RPC_WSTR Protseq,
471 WINPR_ATTR_UNUSED
unsigned int MaxCalls,
472 WINPR_ATTR_UNUSED RPC_IF_HANDLE IfSpec,
473 WINPR_ATTR_UNUSED
void* SecurityDescriptor,
476 WLog_ERR(TAG,
"Not implemented");
480void RpcServerYield(
void)
482 WLog_ERR(TAG,
"Not implemented");
485RPC_STATUS RpcMgmtStatsVectorFree(WINPR_ATTR_UNUSED
RPC_STATS_VECTOR** StatsVector)
487 WLog_ERR(TAG,
"Not implemented");
491RPC_STATUS RpcMgmtInqStats(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
494 WLog_ERR(TAG,
"Not implemented");
498RPC_STATUS RpcMgmtIsServerListening(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding)
500 WLog_ERR(TAG,
"Not implemented");
504RPC_STATUS RpcMgmtStopServerListening(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding)
506 WLog_ERR(TAG,
"Not implemented");
510RPC_STATUS RpcMgmtWaitServerListen(
void)
512 WLog_ERR(TAG,
"Not implemented");
516RPC_STATUS RpcMgmtSetServerStackSize(WINPR_ATTR_UNUSED
unsigned long ThreadStackSize)
518 WLog_ERR(TAG,
"Not implemented");
522void RpcSsDontSerializeContext(
void)
524 WLog_ERR(TAG,
"Not implemented");
527RPC_STATUS RpcMgmtEnableIdleCleanup(
void)
529 WLog_ERR(TAG,
"Not implemented");
533RPC_STATUS RpcMgmtInqIfIds(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
536 WLog_ERR(TAG,
"Not implemented");
540RPC_STATUS RpcIfIdVectorFree(WINPR_ATTR_UNUSED
RPC_IF_ID_VECTOR** IfIdVector)
542 WLog_ERR(TAG,
"Not implemented");
546RPC_STATUS RpcMgmtInqServerPrincNameA(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
547 WINPR_ATTR_UNUSED
unsigned long AuthnSvc,
548 WINPR_ATTR_UNUSED RPC_CSTR* ServerPrincName)
550 WLog_ERR(TAG,
"Not implemented");
554RPC_STATUS RpcMgmtInqServerPrincNameW(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
555 WINPR_ATTR_UNUSED
unsigned long AuthnSvc,
556 WINPR_ATTR_UNUSED RPC_WSTR* ServerPrincName)
558 WLog_ERR(TAG,
"Not implemented");
562RPC_STATUS RpcServerInqDefaultPrincNameA(WINPR_ATTR_UNUSED
unsigned long AuthnSvc,
563 WINPR_ATTR_UNUSED RPC_CSTR* PrincName)
565 WLog_ERR(TAG,
"Not implemented");
569RPC_STATUS RpcServerInqDefaultPrincNameW(WINPR_ATTR_UNUSED
unsigned long AuthnSvc,
570 WINPR_ATTR_UNUSED RPC_WSTR* PrincName)
572 WLog_ERR(TAG,
"Not implemented");
576RPC_STATUS RpcEpResolveBinding(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
577 WINPR_ATTR_UNUSED RPC_IF_HANDLE IfSpec)
579 WLog_ERR(TAG,
"Not implemented");
583RPC_STATUS RpcNsBindingInqEntryNameA(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
584 WINPR_ATTR_UNUSED
unsigned long EntryNameSyntax,
585 WINPR_ATTR_UNUSED RPC_CSTR* EntryName)
587 WLog_ERR(TAG,
"Not implemented");
591RPC_STATUS RpcNsBindingInqEntryNameW(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
592 WINPR_ATTR_UNUSED
unsigned long EntryNameSyntax,
593 WINPR_ATTR_UNUSED RPC_WSTR* EntryName)
595 WLog_ERR(TAG,
"Not implemented");
599RPC_STATUS RpcImpersonateClient(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE BindingHandle)
601 WLog_ERR(TAG,
"Not implemented");
605RPC_STATUS RpcRevertToSelfEx(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE BindingHandle)
607 WLog_ERR(TAG,
"Not implemented");
611RPC_STATUS RpcRevertToSelf(
void)
613 WLog_ERR(TAG,
"Not implemented");
617RPC_STATUS RpcBindingInqAuthClientA(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE ClientBinding,
618 WINPR_ATTR_UNUSED RPC_AUTHZ_HANDLE* Privs,
619 WINPR_ATTR_UNUSED RPC_CSTR* ServerPrincName,
620 WINPR_ATTR_UNUSED
unsigned long* AuthnLevel,
621 WINPR_ATTR_UNUSED
unsigned long* AuthnSvc,
622 WINPR_ATTR_UNUSED
unsigned long* AuthzSvc)
624 WLog_ERR(TAG,
"Not implemented");
628RPC_STATUS RpcBindingInqAuthClientW(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE ClientBinding,
629 WINPR_ATTR_UNUSED RPC_AUTHZ_HANDLE* Privs,
630 WINPR_ATTR_UNUSED RPC_WSTR* ServerPrincName,
631 WINPR_ATTR_UNUSED
unsigned long* AuthnLevel,
632 WINPR_ATTR_UNUSED
unsigned long* AuthnSvc,
633 WINPR_ATTR_UNUSED
unsigned long* AuthzSvc)
635 WLog_ERR(TAG,
"Not implemented");
639RPC_STATUS RpcBindingInqAuthClientExA(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE ClientBinding,
640 WINPR_ATTR_UNUSED RPC_AUTHZ_HANDLE* Privs,
641 WINPR_ATTR_UNUSED RPC_CSTR* ServerPrincName,
642 WINPR_ATTR_UNUSED
unsigned long* AuthnLevel,
643 WINPR_ATTR_UNUSED
unsigned long* AuthnSvc,
644 WINPR_ATTR_UNUSED
unsigned long* AuthzSvc,
645 WINPR_ATTR_UNUSED
unsigned long Flags)
647 WLog_ERR(TAG,
"Not implemented");
651RPC_STATUS RpcBindingInqAuthClientExW(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE ClientBinding,
652 WINPR_ATTR_UNUSED RPC_AUTHZ_HANDLE* Privs,
653 WINPR_ATTR_UNUSED RPC_WSTR* ServerPrincName,
654 WINPR_ATTR_UNUSED
unsigned long* AuthnLevel,
655 WINPR_ATTR_UNUSED
unsigned long* AuthnSvc,
656 WINPR_ATTR_UNUSED
unsigned long* AuthzSvc,
657 WINPR_ATTR_UNUSED
unsigned long Flags)
659 WLog_ERR(TAG,
"Not implemented");
663RPC_STATUS RpcBindingInqAuthInfoA(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
664 WINPR_ATTR_UNUSED RPC_CSTR* ServerPrincName,
665 WINPR_ATTR_UNUSED
unsigned long* AuthnLevel,
666 WINPR_ATTR_UNUSED
unsigned long* AuthnSvc,
667 WINPR_ATTR_UNUSED RPC_AUTH_IDENTITY_HANDLE* AuthIdentity,
668 WINPR_ATTR_UNUSED
unsigned long* AuthzSvc)
670 WLog_ERR(TAG,
"Not implemented");
674RPC_STATUS RpcBindingInqAuthInfoW(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
675 WINPR_ATTR_UNUSED RPC_WSTR* ServerPrincName,
676 WINPR_ATTR_UNUSED
unsigned long* AuthnLevel,
677 WINPR_ATTR_UNUSED
unsigned long* AuthnSvc,
678 WINPR_ATTR_UNUSED RPC_AUTH_IDENTITY_HANDLE* AuthIdentity,
679 WINPR_ATTR_UNUSED
unsigned long* AuthzSvc)
681 WLog_ERR(TAG,
"Not implemented");
685RPC_STATUS RpcBindingSetAuthInfoA(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
686 WINPR_ATTR_UNUSED RPC_CSTR ServerPrincName,
687 WINPR_ATTR_UNUSED
unsigned long AuthnLevel,
688 WINPR_ATTR_UNUSED
unsigned long AuthnSvc,
689 WINPR_ATTR_UNUSED RPC_AUTH_IDENTITY_HANDLE AuthIdentity,
690 WINPR_ATTR_UNUSED
unsigned long AuthzSvc)
692 WLog_ERR(TAG,
"Not implemented");
696RPC_STATUS RpcBindingSetAuthInfoExA(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
697 WINPR_ATTR_UNUSED RPC_CSTR ServerPrincName,
698 WINPR_ATTR_UNUSED
unsigned long AuthnLevel,
699 WINPR_ATTR_UNUSED
unsigned long AuthnSvc,
700 WINPR_ATTR_UNUSED RPC_AUTH_IDENTITY_HANDLE AuthIdentity,
701 WINPR_ATTR_UNUSED
unsigned long AuthzSvc,
704 WLog_ERR(TAG,
"Not implemented");
708RPC_STATUS RpcBindingSetAuthInfoW(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
709 WINPR_ATTR_UNUSED RPC_WSTR ServerPrincName,
710 WINPR_ATTR_UNUSED
unsigned long AuthnLevel,
711 WINPR_ATTR_UNUSED
unsigned long AuthnSvc,
712 WINPR_ATTR_UNUSED RPC_AUTH_IDENTITY_HANDLE AuthIdentity,
713 WINPR_ATTR_UNUSED
unsigned long AuthzSvc)
715 WLog_ERR(TAG,
"Not implemented");
719RPC_STATUS RpcBindingSetAuthInfoExW(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
720 WINPR_ATTR_UNUSED RPC_WSTR ServerPrincName,
721 WINPR_ATTR_UNUSED
unsigned long AuthnLevel,
722 WINPR_ATTR_UNUSED
unsigned long AuthnSvc,
723 WINPR_ATTR_UNUSED RPC_AUTH_IDENTITY_HANDLE AuthIdentity,
724 WINPR_ATTR_UNUSED
unsigned long AuthzSvc,
727 WLog_ERR(TAG,
"Not implemented");
731RPC_STATUS RpcBindingInqAuthInfoExA(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
732 WINPR_ATTR_UNUSED RPC_CSTR* ServerPrincName,
733 WINPR_ATTR_UNUSED
unsigned long* AuthnLevel,
734 WINPR_ATTR_UNUSED
unsigned long* AuthnSvc,
735 WINPR_ATTR_UNUSED RPC_AUTH_IDENTITY_HANDLE* AuthIdentity,
736 WINPR_ATTR_UNUSED
unsigned long* AuthzSvc,
737 WINPR_ATTR_UNUSED
unsigned long RpcQosVersion,
740 WLog_ERR(TAG,
"Not implemented");
744RPC_STATUS RpcBindingInqAuthInfoExW(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
745 WINPR_ATTR_UNUSED RPC_WSTR* ServerPrincName,
746 WINPR_ATTR_UNUSED
unsigned long* AuthnLevel,
747 WINPR_ATTR_UNUSED
unsigned long* AuthnSvc,
748 WINPR_ATTR_UNUSED RPC_AUTH_IDENTITY_HANDLE* AuthIdentity,
749 WINPR_ATTR_UNUSED
unsigned long* AuthzSvc,
750 WINPR_ATTR_UNUSED
unsigned long RpcQosVersion,
753 WLog_ERR(TAG,
"Not implemented");
757RPC_STATUS RpcServerRegisterAuthInfoA(WINPR_ATTR_UNUSED RPC_CSTR ServerPrincName,
758 WINPR_ATTR_UNUSED
unsigned long AuthnSvc,
759 WINPR_ATTR_UNUSED RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn,
760 WINPR_ATTR_UNUSED
void* Arg)
762 WLog_ERR(TAG,
"Not implemented");
766RPC_STATUS RpcServerRegisterAuthInfoW(WINPR_ATTR_UNUSED RPC_WSTR ServerPrincName,
767 WINPR_ATTR_UNUSED
unsigned long AuthnSvc,
768 WINPR_ATTR_UNUSED RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn,
769 WINPR_ATTR_UNUSED
void* Arg)
771 WLog_ERR(TAG,
"Not implemented");
775RPC_STATUS RpcBindingServerFromClient(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE ClientBinding,
776 WINPR_ATTR_UNUSED RPC_BINDING_HANDLE* ServerBinding)
778 WLog_ERR(TAG,
"Not implemented");
782void RpcRaiseException(RPC_STATUS exception)
784 WLog_ERR(TAG,
"RpcRaiseException: 0x%08luX", exception);
786 exit((
int)exception);
789RPC_STATUS RpcTestCancel(
void)
791 WLog_ERR(TAG,
"Not implemented");
795RPC_STATUS RpcServerTestCancel(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE BindingHandle)
797 WLog_ERR(TAG,
"Not implemented");
801RPC_STATUS RpcCancelThread(WINPR_ATTR_UNUSED
void* Thread)
803 WLog_ERR(TAG,
"Not implemented");
807RPC_STATUS RpcCancelThreadEx(WINPR_ATTR_UNUSED
void* Thread, WINPR_ATTR_UNUSED
long Timeout)
809 WLog_ERR(TAG,
"Not implemented");
817static UUID UUID_NIL = {
818 0x00000000, 0x0000, 0x0000, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }
821RPC_STATUS UuidCreate(
UUID* Uuid)
823 winpr_RAND_pseudo(Uuid, 16);
827RPC_STATUS UuidCreateSequential(
UUID* Uuid)
829 winpr_RAND_pseudo(Uuid, 16);
833RPC_STATUS UuidToStringA(
const UUID* Uuid, RPC_CSTR* StringUuid)
835 *StringUuid = (RPC_CSTR)malloc(36 + 1);
838 return RPC_S_OUT_OF_MEMORY;
847 (void)sprintf_s((
char*)*StringUuid, 36 + 1,
"%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x",
848 Uuid->Data1, Uuid->Data2, Uuid->Data3, Uuid->Data4[0], Uuid->Data4[1],
849 Uuid->Data4[2], Uuid->Data4[3], Uuid->Data4[4], Uuid->Data4[5], Uuid->Data4[6],
854RPC_STATUS UuidToStringW(WINPR_ATTR_UNUSED
const UUID* Uuid, WINPR_ATTR_UNUSED RPC_WSTR* StringUuid)
856 WLog_ERR(TAG,
"Not implemented");
860RPC_STATUS UuidFromStringA(RPC_CSTR StringUuid,
UUID* Uuid)
862 BYTE bin[36] = { 0 };
865 return UuidCreateNil(Uuid);
867 const size_t slen = 2 *
sizeof(
UUID) + 4;
868 if (strnlen(StringUuid, slen) != slen)
869 return RPC_S_INVALID_STRING_UUID;
871 if ((StringUuid[8] !=
'-') || (StringUuid[13] !=
'-') || (StringUuid[18] !=
'-') ||
872 (StringUuid[23] !=
'-'))
874 return RPC_S_INVALID_STRING_UUID;
877 for (
size_t index = 0; index < 36; index++)
879 if ((index == 8) || (index == 13) || (index == 18) || (index == 23))
882 if ((StringUuid[index] >=
'0') && (StringUuid[index] <=
'9'))
883 bin[index] = (StringUuid[index] -
'0') & 0xFF;
884 else if ((StringUuid[index] >=
'a') && (StringUuid[index] <=
'f'))
885 bin[index] = (StringUuid[index] -
'a' + 10) & 0xFF;
886 else if ((StringUuid[index] >=
'A') && (StringUuid[index] <=
'F'))
887 bin[index] = (StringUuid[index] -
'A' + 10) & 0xFF;
889 return RPC_S_INVALID_STRING_UUID;
892 Uuid->Data1 = (UINT32)((bin[0] << 28) | (bin[1] << 24) | (bin[2] << 20) | (bin[3] << 16) |
893 (bin[4] << 12) | (bin[5] << 8) | (bin[6] << 4) | bin[7]);
894 Uuid->Data2 = (UINT16)((bin[9] << 12) | (bin[10] << 8) | (bin[11] << 4) | bin[12]);
895 Uuid->Data3 = (UINT16)((bin[14] << 12) | (bin[15] << 8) | (bin[16] << 4) | bin[17]);
896 Uuid->Data4[0] = (UINT8)((bin[19] << 4) | bin[20]);
897 Uuid->Data4[1] = (UINT8)((bin[21] << 4) | bin[22]);
898 Uuid->Data4[2] = (UINT8)((bin[24] << 4) | bin[25]);
899 Uuid->Data4[3] = (UINT8)((bin[26] << 4) | bin[27]);
900 Uuid->Data4[4] = (UINT8)((bin[28] << 4) | bin[29]);
901 Uuid->Data4[5] = (UINT8)((bin[30] << 4) | bin[31]);
902 Uuid->Data4[6] = (UINT8)((bin[32] << 4) | bin[33]);
903 Uuid->Data4[7] = (UINT8)((bin[34] << 4) | bin[35]);
907RPC_STATUS UuidFromStringW(WINPR_ATTR_UNUSED RPC_WSTR StringUuid, WINPR_ATTR_UNUSED
UUID* Uuid)
909 WLog_ERR(TAG,
"Not implemented");
913signed int UuidCompare(
const UUID* Uuid1,
const UUID* Uuid2, RPC_STATUS* Status)
923 if (Uuid1->Data1 != Uuid2->Data1)
924 return (Uuid1->Data1 < Uuid2->Data1) ? -1 : 1;
926 if (Uuid1->Data2 != Uuid2->Data2)
927 return (Uuid1->Data2 < Uuid2->Data2) ? -1 : 1;
929 if (Uuid1->Data3 != Uuid2->Data3)
930 return (Uuid1->Data3 < Uuid2->Data3) ? -1 : 1;
932 for (
int index = 0; index < 8; index++)
934 if (Uuid1->Data4[index] != Uuid2->Data4[index])
935 return (Uuid1->Data4[index] < Uuid2->Data4[index]) ? -1 : 1;
941RPC_STATUS UuidCreateNil(
UUID* NilUuid)
943 CopyMemory((
void*)NilUuid, (
void*)&UUID_NIL, 16);
947int UuidEqual(
const UUID* Uuid1,
const UUID* Uuid2, RPC_STATUS* Status)
949 return ((UuidCompare(Uuid1, Uuid2, Status) == 0) ? TRUE : FALSE);
952unsigned short UuidHash(WINPR_ATTR_UNUSED
const UUID* Uuid, WINPR_ATTR_UNUSED RPC_STATUS* Status)
954 WLog_ERR(TAG,
"Not implemented");
958int UuidIsNil(
const UUID* Uuid, RPC_STATUS* Status)
960 return UuidEqual(Uuid, &UUID_NIL, Status);
963RPC_STATUS RpcEpRegisterNoReplaceA(WINPR_ATTR_UNUSED RPC_IF_HANDLE IfSpec,
966 WINPR_ATTR_UNUSED RPC_CSTR Annotation)
968 WLog_ERR(TAG,
"Not implemented");
972RPC_STATUS RpcEpRegisterNoReplaceW(WINPR_ATTR_UNUSED RPC_IF_HANDLE IfSpec,
975 WINPR_ATTR_UNUSED RPC_WSTR Annotation)
977 WLog_ERR(TAG,
"Not implemented");
981RPC_STATUS RpcEpRegisterA(WINPR_ATTR_UNUSED RPC_IF_HANDLE IfSpec,
984 WINPR_ATTR_UNUSED RPC_CSTR Annotation)
986 WLog_ERR(TAG,
"Not implemented");
990RPC_STATUS RpcEpRegisterW(WINPR_ATTR_UNUSED RPC_IF_HANDLE IfSpec,
993 WINPR_ATTR_UNUSED RPC_WSTR Annotation)
995 WLog_ERR(TAG,
"Not implemented");
999RPC_STATUS RpcEpUnregister(WINPR_ATTR_UNUSED RPC_IF_HANDLE IfSpec,
1003 WLog_ERR(TAG,
"Not implemented");
1007RPC_STATUS DceErrorInqTextA(WINPR_ATTR_UNUSED RPC_STATUS RpcStatus,
1008 WINPR_ATTR_UNUSED RPC_CSTR ErrorText)
1010 WLog_ERR(TAG,
"Not implemented");
1014RPC_STATUS DceErrorInqTextW(WINPR_ATTR_UNUSED RPC_STATUS RpcStatus,
1015 WINPR_ATTR_UNUSED RPC_WSTR ErrorText)
1017 WLog_ERR(TAG,
"Not implemented");
1021RPC_STATUS RpcMgmtEpEltInqBegin(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE EpBinding,
1022 WINPR_ATTR_UNUSED
unsigned long InquiryType,
1024 WINPR_ATTR_UNUSED
unsigned long VersOption,
1025 WINPR_ATTR_UNUSED
UUID* ObjectUuid,
1026 WINPR_ATTR_UNUSED RPC_EP_INQ_HANDLE* InquiryContext)
1028 WLog_ERR(TAG,
"Not implemented");
1032RPC_STATUS RpcMgmtEpEltInqDone(WINPR_ATTR_UNUSED RPC_EP_INQ_HANDLE* InquiryContext)
1034 WLog_ERR(TAG,
"Not implemented");
1038RPC_STATUS RpcMgmtEpEltInqNextA(WINPR_ATTR_UNUSED RPC_EP_INQ_HANDLE InquiryContext,
1040 WINPR_ATTR_UNUSED RPC_BINDING_HANDLE* Binding,
1041 WINPR_ATTR_UNUSED
UUID* ObjectUuid,
1042 WINPR_ATTR_UNUSED RPC_CSTR* Annotation)
1044 WLog_ERR(TAG,
"Not implemented");
1048RPC_STATUS RpcMgmtEpEltInqNextW(WINPR_ATTR_UNUSED RPC_EP_INQ_HANDLE InquiryContext,
1050 WINPR_ATTR_UNUSED RPC_BINDING_HANDLE* Binding,
1051 WINPR_ATTR_UNUSED
UUID* ObjectUuid,
1052 WINPR_ATTR_UNUSED RPC_WSTR* Annotation)
1054 WLog_ERR(TAG,
"Not implemented");
1058RPC_STATUS RpcMgmtEpUnregister(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE EpBinding,
1060 WINPR_ATTR_UNUSED RPC_BINDING_HANDLE Binding,
1061 WINPR_ATTR_UNUSED
UUID* ObjectUuid)
1063 WLog_ERR(TAG,
"Not implemented");
1067RPC_STATUS RpcMgmtSetAuthorizationFn(WINPR_ATTR_UNUSED RPC_MGMT_AUTHORIZATION_FN AuthorizationFn)
1069 WLog_ERR(TAG,
"Not implemented");
1073RPC_STATUS RpcServerInqBindingHandle(WINPR_ATTR_UNUSED RPC_BINDING_HANDLE* Binding)
1075 WLog_ERR(TAG,
"Not implemented");