ReactOS 0.4.16-dev-1946-g52006dd
rpcserver.c
Go to the documentation of this file.
1/*
2 * ReactOS Services
3 * Copyright (C) 2015 ReactOS Team
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License along
16 * with this program; if not, write to the Free Software Foundation, Inc.,
17 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18 */
19/*
20 * COPYRIGHT: See COPYING in the top level directory
21 * PROJECT: ReactOS Services
22 * FILE: base/services/srvsvc/rpcserver.c
23 * PURPOSE: Server service
24 * PROGRAMMER: Eric Kohl
25 */
26
27/* INCLUDES *****************************************************************/
28
29#include "precomp.h"
30
31#include "ndk/kefuncs.h"
32#include "ndk/rtlfuncs.h"
33#include "winerror.h"
34#include "lmerr.h"
35
37
38/* FUNCTIONS *****************************************************************/
39
43 LPVOID lpParameter)
44{
46
47 Status = RpcServerUseProtseqEpW(L"ncacn_np", 20, L"\\pipe\\srvsvc", NULL);
48 if (Status != RPC_S_OK)
49 {
50 ERR("RpcServerUseProtseqEpW() failed (Status %lx)\n", Status);
51 return 0;
52 }
53
54 Status = RpcServerRegisterIf(srvsvc_v3_0_s_ifspec, NULL, NULL);
55 if (Status != RPC_S_OK)
56 {
57 ERR("RpcServerRegisterIf() failed (Status %lx)\n", Status);
58 return 0;
59 }
60
62 if (Status != RPC_S_OK)
63 {
64 ERR("RpcServerListen() failed (Status %lx)\n", Status);
65 }
66
67 return 0;
68}
69
70
72{
74}
75
76
78{
80}
81
82
84{
85}
86
87
88/* Function 0 */
89void
92{
94}
95
96
97/* Function 1 */
98void
101{
103}
104
105
106/* Function 2 */
107void
110{
112}
113
114
115/* Function 3 */
116void
119{
121}
122
123
124/* Function 4 */
125void
128{
130}
131
132/* Function 5 */
133void
136{
138}
139
140
141/* Function 6 */
142void
145{
147}
148
149
150/* Function 7 */
151void
154{
156}
157
158
159/* Function 8 */
163 SRVSVC_HANDLE ServerName,
164 WCHAR *Qualifier,
165 LPCONNECT_ENUM_STRUCT InfoStruct,
166 DWORD PreferedMaximumLength,
167 DWORD *TotalEntries,
168 DWORD *ResumeHandle)
169{
171 return 0;
172}
173
174
175/* Function 9 */
179 SRVSVC_HANDLE ServerName,
180 WCHAR *BasePath,
181 WCHAR *UserName,
182 PFILE_ENUM_STRUCT InfoStruct,
183 DWORD PreferedMaximumLength,
184 DWORD *TotalEntries,
185 DWORD *ResumeHandle)
186{
188 return 0;
189}
190
191
192/* Function 10 */
196 SRVSVC_HANDLE ServerName,
197 DWORD FileId,
198 DWORD Level,
199 LPFILE_INFO InfoStruct)
200{
202 return 0;
203}
204
205
206/* Function 11 */
210 SRVSVC_HANDLE ServerName,
211 DWORD FileId)
212{
214 return 0;
215}
216
217
218/* Function 12 */
222 SRVSVC_HANDLE ServerName,
223 WCHAR *ClientName,
224 WCHAR *UserName,
225 PSESSION_ENUM_STRUCT InfoStruct,
226 DWORD PreferedMaximumLength,
227 DWORD *TotalEntries,
228 DWORD *ResumeHandle)
229{
231 return 0;
232}
233
234
235/* Function 13 */
239 SRVSVC_HANDLE ServerName,
240 WCHAR *ClientName,
241 WCHAR *UserName)
242{
245}
246
247
248/* Function 14 */
252 SRVSVC_HANDLE ServerName,
253 DWORD Level,
254 LPSHARE_INFO InfoStruct,
255 DWORD *ParmErr)
256{
259}
260
261
262/* Function 15 */
266 SRVSVC_HANDLE ServerName,
267 LPSHARE_ENUM_STRUCT InfoStruct,
268 DWORD PreferedMaximumLength,
269 DWORD *TotalEntries,
270 DWORD *ResumeHandle)
271{
274}
275
276
277/* Function 16 */
281 SRVSVC_HANDLE ServerName,
282 WCHAR *NetName,
283 DWORD Level,
284 LPSHARE_INFO InfoStruct)
285{
288}
289
290
291/* Function 17 */
295 SRVSVC_HANDLE ServerName,
296 WCHAR *NetName,
297 DWORD Level,
298 LPSHARE_INFO ShareInfo,
299 DWORD *ParmErr)
300{
303}
304
305
306/* Function 18 */
310 SRVSVC_HANDLE ServerName,
311 WCHAR *NetName,
313{
316}
317
318
319/* Function 19 */
323 SRVSVC_HANDLE ServerName,
324 WCHAR *NetName,
326{
329}
330
331
332/* Function 20 */
336 SRVSVC_HANDLE ServerName,
337 WCHAR *Device,
338 DWORD *Type)
339{
342}
343
344
345/* Function 21 */
349 SRVSVC_HANDLE ServerName,
350 DWORD Level,
351 LPSERVER_INFO *InfoStruct)
352{
353 WCHAR szComputerName[MAX_COMPUTERNAME_LENGTH + 1];
354 DWORD dwComputerNameLength, dwSize;
355 PSERVER_INFO pServerInfo = NULL;
357
358 TRACE("NetrServerGetInfo(%p %lu %p)\n",
359 ServerName, Level, InfoStruct);
360
361 dwComputerNameLength = MAX_COMPUTERNAME_LENGTH + 1;
362 GetComputerNameW(szComputerName, &dwComputerNameLength);
363 dwComputerNameLength++; /* include NULL terminator */
364
367
368 switch (Level)
369 {
370 case 100:
371 dwSize = sizeof(SERVER_INFO_100) +
372 dwComputerNameLength * sizeof(WCHAR);
373 pServerInfo = midl_user_allocate(dwSize);
374 if (pServerInfo == NULL)
376
378 pServerInfo->ServerInfo100.sv100_name = (LPWSTR)((ULONG_PTR)pServerInfo + sizeof(SERVER_INFO_100));
379 wcscpy(pServerInfo->ServerInfo100.sv100_name, szComputerName);
380
381 *InfoStruct = pServerInfo;
382 break;
383
384 case 101:
385 dwSize = sizeof(SERVER_INFO_101) +
386 dwComputerNameLength * sizeof(WCHAR);
387 pServerInfo = midl_user_allocate(dwSize);
388 if (pServerInfo == NULL)
390
392 pServerInfo->ServerInfo101.sv101_name = (LPWSTR)((ULONG_PTR)pServerInfo + sizeof(SERVER_INFO_101));
393 wcscpy(pServerInfo->ServerInfo101.sv101_name, szComputerName);
394
398 pServerInfo->ServerInfo101.sv101_comment = NULL; /* FIXME */
399
400 *InfoStruct = pServerInfo;
401 break;
402
403 case 102:
404 dwSize = sizeof(SERVER_INFO_102) +
405 dwComputerNameLength * sizeof(WCHAR);
406 pServerInfo = midl_user_allocate(dwSize);
407 if (pServerInfo == NULL)
409
411 pServerInfo->ServerInfo102.sv102_name = (LPWSTR)((ULONG_PTR)pServerInfo + sizeof(SERVER_INFO_102));
412 wcscpy(pServerInfo->ServerInfo102.sv102_name, szComputerName);
413
417 pServerInfo->ServerInfo102.sv102_comment = NULL; /* FIXME */
418
419 pServerInfo->ServerInfo102.sv102_users = 0; /* FIXME */
420 pServerInfo->ServerInfo102.sv102_disc = 0; /* FIXME */
421 pServerInfo->ServerInfo102.sv102_hidden = SV_VISIBLE; /* FIXME */
422 pServerInfo->ServerInfo102.sv102_announce = 0; /* FIXME */
423 pServerInfo->ServerInfo102.sv102_anndelta = 0; /* FIXME */
424 pServerInfo->ServerInfo102.sv102_licenses = 0; /* FIXME */
425 pServerInfo->ServerInfo102.sv102_userpath = NULL; /* FIXME */
426
427 *InfoStruct = pServerInfo;
428 break;
429
430 default:
431 FIXME("level %d unimplemented\n", Level);
432 return ERROR_INVALID_LEVEL;
433 }
434
435 return NERR_Success;
436}
437
438
439/* Function 22 */
443 SRVSVC_HANDLE ServerName,
444 DWORD Level,
445 LPSERVER_INFO ServerInfo,
446 DWORD *ParmErr)
447{
450}
451
452
453/* Function 23 */
457 SRVSVC_HANDLE ServerName,
458 DWORD Level,
459 DISK_ENUM_CONTAINER *DiskInfoStruct,
460 DWORD PreferedMaximumLength,
461 DWORD *TotalEntries,
462 DWORD *ResumeHandle)
463{
466}
467
468
469/* Function 24 */
473 SRVSVC_HANDLE ServerName,
474 WCHAR *Service,
475 DWORD Level,
477 LPSTAT_SERVER_0 *InfoStruct)
478{
479 SYSTEM_TIMEOFDAY_INFORMATION TimeOfDayInfo;
480 PSTAT_SERVER_0 pStatBuffer = NULL;
482
483 TRACE("NetrServerStatisticsGet(%p %p %lu 0x%lx %p)\n",
484 ServerName, Service, Level, Options, InfoStruct);
485
486 if (Level != 0)
487 return ERROR_INVALID_LEVEL;
488
489 if (Options != 0)
491
492 pStatBuffer = midl_user_allocate(sizeof(STAT_SERVER_0));
493 if (pStatBuffer == NULL)
495
496 ZeroMemory(pStatBuffer, sizeof(STAT_SERVER_0));
497
498 /* Query the boot time */
500 &TimeOfDayInfo,
501 sizeof(TimeOfDayInfo),
502 NULL);
503 if (NT_SUCCESS(Status))
504 {
505 ULONG Seconds = 0;
506 if (RtlTimeToSecondsSince1970(&TimeOfDayInfo.BootTime, &Seconds))
507 {
508 pStatBuffer->sts0_start = Seconds;
509 }
510 }
511
512 // FIXME: Return the actual statistcs data!
513
514 *InfoStruct = pStatBuffer;
515
516 return NERR_Success;
517}
518
519
520/* Function 25 */
524 SRVSVC_HANDLE ServerName,
525 DWORD Level,
527{
530}
531
532
533/* Function 26 */
537 SRVSVC_HANDLE ServerName,
539 DWORD PreferedMaximumLength,
540 DWORD *TotalEntries,
541 DWORD *ResumeHandle)
542{
545}
546
547
548/* Function 27 */
552 SRVSVC_HANDLE ServerName,
553 DWORD Level,
555{
558}
559
560
561/* Function 28 */
565 SRVSVC_HANDLE ServerName,
566 LPTIME_OF_DAY_INFO *BufferPtr)
567{
568 SYSTEMTIME SystemTime;
570 TIME_ZONE_INFORMATION TimeZoneInfo;
571 DWORD TimeZoneId;
572 LPTIME_OF_DAY_INFO lpTod;
573
574 TRACE("NetrRemoteTOD(%p %p)\n", ServerName, BufferPtr);
575
576 *BufferPtr = midl_user_allocate(sizeof(TIME_OF_DAY_INFO));
577 if (*BufferPtr == NULL)
579
580 lpTod = *BufferPtr;
581
582 /* Set the seconds since 1970 */
585 &lpTod->tod_elapsedt);
586
587 /* Set the tick count */
588 lpTod->tod_msecs = GetTickCount();
589
590 /* Set the timezone */
591 TimeZoneId = GetTimeZoneInformation(&TimeZoneInfo);
592
593 switch (TimeZoneId)
594 {
596 lpTod->tod_timezone = TimeZoneInfo.Bias;
597 break;
598
600 lpTod->tod_timezone = TimeZoneInfo.Bias + TimeZoneInfo.StandardBias;
601 break;
602
604 lpTod->tod_timezone = TimeZoneInfo.Bias + TimeZoneInfo.DaylightBias;
605 break;
606
607 default:
608 lpTod->tod_timezone = 0;
609 }
610
611 /* Set the ??? */
612 lpTod->tod_tinterval = 310;
613
614 /* Set the date and time */
615 GetSystemTime(&SystemTime);
616 lpTod->tod_hours = SystemTime.wHour;
617 lpTod->tod_mins = SystemTime.wMinute;
618 lpTod->tod_secs = SystemTime.wSecond;
619 lpTod->tod_hunds = SystemTime.wMilliseconds / 10;
620 lpTod->tod_day = SystemTime.wDay;
621 lpTod->tod_month = SystemTime.wMonth;
622 lpTod->tod_year = SystemTime.wYear;
623 lpTod->tod_weekday = SystemTime.wDayOfWeek;
624
625 return NERR_Success;
626}
627
628
629/* Function 29 - Not used on wire */
633 SRVSVC_HANDLE ServerName,
634 WCHAR *Transport,
635 DWORD ServiceBits,
636 DWORD UpdateImmediately)
637{
638 FIXME("NetrServerSetServiceBits(%p %s %lx %lu)\n",
639 ServerName, debugstr_w(Transport), ServiceBits, UpdateImmediately);
640
641 /* FIXME: Support Transport */
642 /* FIXME: Support UpdateImmdiately */
643
644 dwServiceBits = ServiceBits;
645
646 return NERR_Success;
647}
648
649
650/* Function 30 */
654 SRVSVC_HANDLE ServerName,
655 WCHAR *PathName,
657 DWORD Flags)
658{
661}
662
663
664/* Function 31 */
668 SRVSVC_HANDLE ServerName,
669 WCHAR *PathName,
670 unsigned char *Outbuf,
671 DWORD OutbufLen,
672 WCHAR *Prefix,
674 DWORD Flags)
675{
678}
679
680
681/* Function 32 */
682long
685 SRVSVC_HANDLE ServerName,
686 WCHAR *PathName1,
687 WCHAR *PathName2,
689 DWORD Flags)
690{
693}
694
695
696/* Function 33 */
700 SRVSVC_HANDLE ServerName,
701 WCHAR * Name,
703 DWORD Flags)
704{
707}
708
709
710/* Function 34 */
714 SRVSVC_HANDLE ServerName,
715 WCHAR *Name,
716 WCHAR *Outbuf,
717 DWORD OutbufLen,
719 DWORD Flags)
720{
723}
724
725
726/* Function 35 */
727long
730 SRVSVC_HANDLE ServerName,
731 WCHAR *Name1,
732 WCHAR *Name2,
734 DWORD Flags)
735{
738}
739
740
741/* Function 36 */
745 SRVSVC_HANDLE ServerName,
746 LPSHARE_ENUM_STRUCT InfoStruct,
747 DWORD PreferedMaximumLength,
748 DWORD *TotalEntries,
749 DWORD *ResumeHandle)
750{
753}
754
755
756/* Function 37 */
760 SRVSVC_HANDLE ServerName,
761 WCHAR *NetName,
763 PSHARE_DEL_HANDLE ContextHandle)
764{
767}
768
769
770/* Function 38 */
774 PSHARE_DEL_HANDLE ContextHandle)
775{
778}
779
780
781/* Function 39 */
782DWORD
785 SRVSVC_HANDLE ServerName,
786 WCHAR *ShareName,
788 SECURITY_INFORMATION RequestedInformation,
790{
793}
794
795
796/* Function 40 */
797DWORD
800 SRVSVC_HANDLE ServerName,
801 WCHAR *ShareName,
805{
808}
809
810
811/* Function 41 */
815 SRVSVC_HANDLE ServerName,
816 DWORD Level,
818{
821}
822
823
824/* Function 42 - Not used on wire */
828 SRVSVC_HANDLE ServerName,
829 WCHAR *EmulatedServer,
830 WCHAR *Transport,
831 DWORD ServiceBitsOfInterest,
832 DWORD ServiceBits,
833 DWORD UpdateImmediately)
834{
837}
838
839
840/* Function 43 */
844 SRVSVC_HANDLE ServerName,
845 DWORD *Version)
846{
849}
850
851
852/* Function 44 */
856 SRVSVC_HANDLE ServerName,
857 WCHAR *ShareName,
858 GUID *EntryUid,
859 WCHAR *EntryPrefix,
861 LPNET_DFS_ENTRY_ID_CONTAINER RelationInfo,
862 int Force)
863{
866}
867
868
869/* Function 45 */
873 SRVSVC_HANDLE ServerName,
874 GUID *Uid,
875 WCHAR *Prefix)
876{
879}
880
881
882/* Function 46 */
886 SRVSVC_HANDLE ServerName,
887 GUID *Uid,
888 WCHAR *Prefix,
889 unsigned long State)
890{
893}
894
895
896/* Function 47 - Not used on wire */
900{
903}
904
905
906/* Function 48 */
910 SRVSVC_HANDLE ServerName,
911 GUID *Uid,
912 WCHAR *Prefix,
913 unsigned long Type,
914 DWORD ShortPrefixLen,
915 WCHAR *ShortPrefix)
916{
919}
920
921
922/* Function 49 */
926 SRVSVC_HANDLE ServerName,
927 GUID *Uid,
928 WCHAR *Prefix,
929 unsigned long Type)
930{
933}
934
935
936/* Function 50 */
940 SRVSVC_HANDLE ServerName,
941 GUID *Uid,
942 WCHAR *Prefix)
943{
946}
947
948
949/* Function 51 */
953 SRVSVC_HANDLE ServerName,
955 unsigned long EntryType,
956 unsigned long ServiceType,
957 WCHAR *StgId,
958 GUID *EntryUid,
959 WCHAR *EntryPrefix,
960 LPNET_DFS_ENTRY_ID_CONTAINER RelationInfo,
961 unsigned long CreateDisposition)
962{
965}
966
967
968/* Function 52 */
972 SRVSVC_HANDLE ServerName,
973 LPDFS_SITELIST_INFO *ppSiteInfo)
974{
977}
978
979
980/* Function 53 */
984 SRVSVC_HANDLE ServerName,
985 DWORD Level,
987{
990}
991
992/* EOF */
static IN ULONG IN PWSTR OUT PCWSTR OUT PBOOLEAN OUT PATH_TYPE_AND_UNKNOWN * PathType
Type
Definition: Type.h:7
ACPI_PHYSICAL_ADDRESS ACPI_SIZE BOOLEAN Warn UINT32 *TableIdx UINT32 ACPI_TABLE_HEADER *OutTableHeader ACPI_TABLE_HEADER **OutTable ACPI_HANDLE UINT32 ACPI_WALK_CALLBACK ACPI_WALK_CALLBACK void void **ReturnValue UINT32 NameType
Definition: acpixf.h:658
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
Definition: precomp.h:23
LONG NTSTATUS
Definition: precomp.h:26
DWORD WINAPI RpcThreadRoutine(LPVOID lpParameter)
Definition: rpcserver.c:20
DWORD dwServiceBits
Definition: srvsvc.c:40
NET_API_STATUS __stdcall NetrFileEnum(SRVSVC_HANDLE ServerName, WCHAR *BasePath, WCHAR *UserName, PFILE_ENUM_STRUCT InfoStruct, DWORD PreferedMaximumLength, DWORD *TotalEntries, DWORD *ResumeHandle)
Definition: rpcserver.c:178
NET_API_STATUS __stdcall NetrShareCheck(SRVSVC_HANDLE ServerName, WCHAR *Device, DWORD *Type)
Definition: rpcserver.c:335
NET_API_STATUS __stdcall NetrDfsDeleteLocalPartition(SRVSVC_HANDLE ServerName, GUID *Uid, WCHAR *Prefix)
Definition: rpcserver.c:872
NET_API_STATUS __stdcall NetrServerGetInfo(SRVSVC_HANDLE ServerName, DWORD Level, LPSERVER_INFO *InfoStruct)
Definition: rpcserver.c:348
NET_API_STATUS __stdcall NetrServerTransportDel(SRVSVC_HANDLE ServerName, DWORD Level, LPSERVER_TRANSPORT_INFO_0 Buffer)
Definition: rpcserver.c:551
NET_API_STATUS __stdcall NetrDfsCreateLocalPartition(SRVSVC_HANDLE ServerName, WCHAR *ShareName, GUID *EntryUid, WCHAR *EntryPrefix, WCHAR *ShortName, LPNET_DFS_ENTRY_ID_CONTAINER RelationInfo, int Force)
Definition: rpcserver.c:855
NET_API_STATUS __stdcall NetrShareDel(SRVSVC_HANDLE ServerName, WCHAR *NetName, DWORD Reserved)
Definition: rpcserver.c:309
NET_API_STATUS __stdcall NetrServerTransportEnum(SRVSVC_HANDLE ServerName, LPSERVER_XPORT_ENUM_STRUCT InfoStruct, DWORD PreferedMaximumLength, DWORD *TotalEntries, DWORD *ResumeHandle)
Definition: rpcserver.c:536
NET_API_STATUS __stdcall NetrDfsSetLocalVolumeState(SRVSVC_HANDLE ServerName, GUID *Uid, WCHAR *Prefix, unsigned long State)
Definition: rpcserver.c:885
DWORD __stdcall NetrpSetFileSecurity(SRVSVC_HANDLE ServerName, WCHAR *ShareName, WCHAR *lpFileName, SECURITY_INFORMATION SecurityInformation, PADT_SECURITY_DESCRIPTOR SecurityDescriptor)
Definition: rpcserver.c:799
void __stdcall Opnum7NotUsedOnWire(void)
Definition: rpcserver.c:153
long __stdcall NetprPathCompare(SRVSVC_HANDLE ServerName, WCHAR *PathName1, WCHAR *PathName2, DWORD PathType, DWORD Flags)
Definition: rpcserver.c:684
DWORD __stdcall NetrpGetFileSecurity(SRVSVC_HANDLE ServerName, WCHAR *ShareName, WCHAR *lpFileName, SECURITY_INFORMATION RequestedInformation, PADT_SECURITY_DESCRIPTOR *SecurityDescriptor)
Definition: rpcserver.c:784
NET_API_STATUS __stdcall NetrRemoteTOD(SRVSVC_HANDLE ServerName, LPTIME_OF_DAY_INFO *BufferPtr)
Definition: rpcserver.c:564
NET_API_STATUS __stdcall NetrDfsSetServerInfo(void)
Definition: rpcserver.c:899
NET_API_STATUS __stdcall NetrServerSetServiceBitsEx(SRVSVC_HANDLE ServerName, WCHAR *EmulatedServer, WCHAR *Transport, DWORD ServiceBitsOfInterest, DWORD ServiceBits, DWORD UpdateImmediately)
Definition: rpcserver.c:827
NET_API_STATUS __stdcall NetrShareDelStart(SRVSVC_HANDLE ServerName, WCHAR *NetName, DWORD Reserved, PSHARE_DEL_HANDLE ContextHandle)
Definition: rpcserver.c:759
void __stdcall Opnum3NotUsedOnWire(void)
Definition: rpcserver.c:118
NET_API_STATUS __stdcall NetprNameCanonicalize(SRVSVC_HANDLE ServerName, WCHAR *Name, WCHAR *Outbuf, DWORD OutbufLen, DWORD NameType, DWORD Flags)
Definition: rpcserver.c:713
NET_API_STATUS __stdcall NetrServerStatisticsGet(SRVSVC_HANDLE ServerName, WCHAR *Service, DWORD Level, DWORD Options, LPSTAT_SERVER_0 *InfoStruct)
Definition: rpcserver.c:472
NET_API_STATUS __stdcall NetrServerTransportAdd(SRVSVC_HANDLE ServerName, DWORD Level, LPSERVER_TRANSPORT_INFO_0 Buffer)
Definition: rpcserver.c:523
NET_API_STATUS __stdcall NetrFileGetInfo(SRVSVC_HANDLE ServerName, DWORD FileId, DWORD Level, LPFILE_INFO InfoStruct)
Definition: rpcserver.c:195
NET_API_STATUS __stdcall NetprNameValidate(SRVSVC_HANDLE ServerName, WCHAR *Name, DWORD NameType, DWORD Flags)
Definition: rpcserver.c:699
void __stdcall Opnum6NotUsedOnWire(void)
Definition: rpcserver.c:144
NET_API_STATUS __stdcall NetrDfsFixLocalVolume(SRVSVC_HANDLE ServerName, WCHAR *VolumeName, unsigned long EntryType, unsigned long ServiceType, WCHAR *StgId, GUID *EntryUid, WCHAR *EntryPrefix, LPNET_DFS_ENTRY_ID_CONTAINER RelationInfo, unsigned long CreateDisposition)
Definition: rpcserver.c:952
NET_API_STATUS __stdcall NetrDfsCreateExitPoint(SRVSVC_HANDLE ServerName, GUID *Uid, WCHAR *Prefix, unsigned long Type, DWORD ShortPrefixLen, WCHAR *ShortPrefix)
Definition: rpcserver.c:909
void __stdcall Opnum5NotUsedOnWire(void)
Definition: rpcserver.c:135
NET_API_STATUS __stdcall NetrServerSetInfo(SRVSVC_HANDLE ServerName, DWORD Level, LPSERVER_INFO ServerInfo, DWORD *ParmErr)
Definition: rpcserver.c:442
NET_API_STATUS __stdcall NetrServerDiskEnum(SRVSVC_HANDLE ServerName, DWORD Level, DISK_ENUM_CONTAINER *DiskInfoStruct, DWORD PreferedMaximumLength, DWORD *TotalEntries, DWORD *ResumeHandle)
Definition: rpcserver.c:456
NET_API_STATUS __stdcall NetrDfsModifyPrefix(SRVSVC_HANDLE ServerName, GUID *Uid, WCHAR *Prefix)
Definition: rpcserver.c:939
void __stdcall Opnum2NotUsedOnWire(void)
Definition: rpcserver.c:109
NET_API_STATUS __stdcall NetrShareEnumSticky(SRVSVC_HANDLE ServerName, LPSHARE_ENUM_STRUCT InfoStruct, DWORD PreferedMaximumLength, DWORD *TotalEntries, DWORD *ResumeHandle)
Definition: rpcserver.c:744
NET_API_STATUS __stdcall NetrServerTransportAddEx(SRVSVC_HANDLE ServerName, DWORD Level, LPTRANSPORT_INFO Buffer)
Definition: rpcserver.c:814
NET_API_STATUS __stdcall NetprPathCanonicalize(SRVSVC_HANDLE ServerName, WCHAR *PathName, unsigned char *Outbuf, DWORD OutbufLen, WCHAR *Prefix, DWORD *PathType, DWORD Flags)
Definition: rpcserver.c:667
long __stdcall NetprNameCompare(SRVSVC_HANDLE ServerName, WCHAR *Name1, WCHAR *Name2, DWORD NameType, DWORD Flags)
Definition: rpcserver.c:729
void __stdcall Opnum0NotUsedOnWire(void)
Definition: rpcserver.c:91
NET_API_STATUS __stdcall NetrDfsDeleteExitPoint(SRVSVC_HANDLE ServerName, GUID *Uid, WCHAR *Prefix, unsigned long Type)
Definition: rpcserver.c:925
NET_API_STATUS __stdcall NetrShareDelSticky(SRVSVC_HANDLE ServerName, WCHAR *NetName, DWORD Reserved)
Definition: rpcserver.c:322
NET_API_STATUS __stdcall NetrSessionDel(SRVSVC_HANDLE ServerName, WCHAR *ClientName, WCHAR *UserName)
Definition: rpcserver.c:238
NET_API_STATUS __stdcall NetrServerTransportDelEx(SRVSVC_HANDLE ServerName, DWORD Level, LPTRANSPORT_INFO Buffer)
Definition: rpcserver.c:983
NET_API_STATUS __stdcall NetrShareGetInfo(SRVSVC_HANDLE ServerName, WCHAR *NetName, DWORD Level, LPSHARE_INFO InfoStruct)
Definition: rpcserver.c:280
void __stdcall Opnum4NotUsedOnWire(void)
Definition: rpcserver.c:127
void __RPC_USER SHARE_DEL_HANDLE_rundown(SHARE_DEL_HANDLE hClientHandle)
Definition: rpcserver.c:83
NET_API_STATUS __stdcall NetrFileClose(SRVSVC_HANDLE ServerName, DWORD FileId)
Definition: rpcserver.c:209
NET_API_STATUS __stdcall NetrConnectionEnum(SRVSVC_HANDLE ServerName, WCHAR *Qualifier, LPCONNECT_ENUM_STRUCT InfoStruct, DWORD PreferedMaximumLength, DWORD *TotalEntries, DWORD *ResumeHandle)
Definition: rpcserver.c:162
NET_API_STATUS __stdcall NetrDfsGetVersion(SRVSVC_HANDLE ServerName, DWORD *Version)
Definition: rpcserver.c:843
NET_API_STATUS __stdcall NetrShareEnum(SRVSVC_HANDLE ServerName, LPSHARE_ENUM_STRUCT InfoStruct, DWORD PreferedMaximumLength, DWORD *TotalEntries, DWORD *ResumeHandle)
Definition: rpcserver.c:265
NET_API_STATUS __stdcall NetrShareSetInfo(SRVSVC_HANDLE ServerName, WCHAR *NetName, DWORD Level, LPSHARE_INFO ShareInfo, DWORD *ParmErr)
Definition: rpcserver.c:294
NET_API_STATUS __stdcall NetrShareAdd(SRVSVC_HANDLE ServerName, DWORD Level, LPSHARE_INFO InfoStruct, DWORD *ParmErr)
Definition: rpcserver.c:251
NET_API_STATUS __stdcall NetrShareDelCommit(PSHARE_DEL_HANDLE ContextHandle)
Definition: rpcserver.c:773
void __stdcall Opnum1NotUsedOnWire(void)
Definition: rpcserver.c:100
NET_API_STATUS __stdcall NetrSessionEnum(SRVSVC_HANDLE ServerName, WCHAR *ClientName, WCHAR *UserName, PSESSION_ENUM_STRUCT InfoStruct, DWORD PreferedMaximumLength, DWORD *TotalEntries, DWORD *ResumeHandle)
Definition: rpcserver.c:221
NET_API_STATUS __stdcall NetprPathType(SRVSVC_HANDLE ServerName, WCHAR *PathName, DWORD *PathType, DWORD Flags)
Definition: rpcserver.c:653
NET_API_STATUS __stdcall NetrDfsManagerReportSiteInfo(SRVSVC_HANDLE ServerName, LPDFS_SITELIST_INFO *ppSiteInfo)
Definition: rpcserver.c:971
NET_API_STATUS __stdcall NetrServerSetServiceBits(SRVSVC_HANDLE ServerName, WCHAR *Transport, DWORD ServiceBits, DWORD UpdateImmediately)
Definition: rpcserver.c:632
OSVERSIONINFOW VersionInfo
Definition: wkssvc.c:40
#define FIXME(fmt,...)
Definition: precomp.h:53
#define ERR(fmt,...)
Definition: precomp.h:57
#define UNIMPLEMENTED
Definition: ntoskrnl.c:15
_Inout_ PVCB _In_ BOOLEAN Force
Definition: cdprocs.h:1417
Definition: bufpool.h:45
BOOL WINAPI GetComputerNameW(LPWSTR lpBuffer, LPDWORD lpnSize)
Definition: compname.c:446
wcscpy
#define ERROR_NOT_ENOUGH_MEMORY
Definition: dderror.h:7
LPWSTR Name
Definition: desk.c:124
#define NULL
Definition: types.h:112
#define FALSE
Definition: types.h:117
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:33
#define GetProcessHeap()
Definition: compat.h:736
#define ERROR_CALL_NOT_IMPLEMENTED
Definition: compat.h:102
#define ERROR_INVALID_PARAMETER
Definition: compat.h:101
#define HeapAlloc
Definition: compat.h:733
#define HeapFree(x, y, z)
Definition: compat.h:735
#define HEAP_ZERO_MEMORY
Definition: compat.h:134
VOID WINAPI GetSystemTime(OUT LPSYSTEMTIME lpSystemTime)
Definition: time.c:327
BOOL WINAPI GetVersionExW(IN LPOSVERSIONINFOW lpVersionInformation)
Definition: version.c:37
DWORD WINAPI GetTimeZoneInformation(LPTIME_ZONE_INFORMATION lpTimeZoneInformation)
Definition: timezone.c:262
ULONG WINAPI DECLSPEC_HOTPATCH GetTickCount(void)
Definition: sync.c:182
#define L(x)
Definition: resources.c:13
IN PDCB IN POEM_STRING IN PUNICODE_STRING IN OUT POEM_STRING ShortName
Definition: fatprocs.h:1307
unsigned long DWORD
Definition: ntddk_ex.h:95
@ SystemTimeOfDayInformation
Definition: ntddk_ex.h:14
_Must_inspect_result_ _Inout_opt_ PUNICODE_STRING VolumeName
Definition: fltkernel.h:1117
_Must_inspect_result_ _In_ PFILE_OBJECT _In_ SECURITY_INFORMATION SecurityInformation
Definition: fltkernel.h:1340
_Must_inspect_result_ _In_ PCUNICODE_STRING Name2
Definition: fsrtlfuncs.h:796
Status
Definition: gdiplustypes.h:25
GLenum GLsizei len
Definition: glext.h:6722
BOOLEAN NTAPI RtlTimeToSecondsSince1970(PLARGE_INTEGER Time, PULONG ElapsedSeconds)
#define debugstr_w
Definition: kernel32.h:32
#define PLATFORM_ID_NT
Definition: lmcons.h:60
#define NERR_Success
Definition: lmerr.h:5
#define SV_TYPE_NT
Definition: lmserver.h:440
struct _SERVER_INFO_101 SERVER_INFO_101
#define SV_VISIBLE
Definition: lmserver.h:459
struct _SERVER_INFO_102 SERVER_INFO_102
struct _SERVER_INFO_100 SERVER_INFO_100
#define ZeroMemory
Definition: minwinbase.h:31
PSDBQUERYRESULT_VISTA PVOID DWORD * dwSize
Definition: env.c:56
static PVOID ptr
Definition: dispmode.c:27
static PLARGE_INTEGER Time
Definition: time.c:105
DWORD SECURITY_INFORMATION
Definition: ms-dtyp.idl:311
DWORD NET_API_STATUS
Definition: ms-dtyp.idl:91
#define TIME_ZONE_ID_UNKNOWN
Definition: rtltypes.h:252
#define TIME_ZONE_ID_STANDARD
Definition: rtltypes.h:253
#define TIME_ZONE_ID_DAYLIGHT
Definition: rtltypes.h:254
NTSTATUS NTAPI NtQuerySystemTime(OUT PLARGE_INTEGER SystemTime)
Definition: time.c:569
@ Service
Definition: ntsecapi.h:292
RPC_STATUS WINAPI RpcServerListen(UINT MinimumCallThreads, UINT MaxCalls, UINT DontWait)
Definition: rpc_server.c:1520
RPC_STATUS WINAPI RpcServerRegisterIf(RPC_IF_HANDLE IfSpec, UUID *MgrTypeUuid, RPC_MGR_EPV *MgrEpv)
Definition: rpc_server.c:1116
RPC_STATUS WINAPI RpcServerUseProtseqEpW(RPC_WSTR Protseq, UINT MaxCalls, RPC_WSTR Endpoint, LPVOID SecurityDescriptor)
Definition: rpc_server.c:927
#define RPC_C_LISTEN_MAX_CALLS_DEFAULT
Definition: rpcdce.h:122
#define RPC_S_OK
Definition: rpcnterr.h:22
#define midl_user_free
Definition: rpc.h:41
#define __RPC_FAR
Definition: rpc.h:52
long RPC_STATUS
Definition: rpc.h:48
#define __RPC_USER
Definition: rpc.h:61
#define midl_user_allocate
Definition: rpc.h:40
#define TRACE(s)
Definition: solgame.cpp:4
wchar_t * SRVSVC_HANDLE
Definition: srvsvc.idl:7
NTSYSAPI NTSTATUS NTAPI NtQuerySystemInformation(IN SYSTEM_INFORMATION_CLASS SystemInfoClass, OUT PVOID SystemInfoBuffer, IN ULONG SystemInfoBufferSize, OUT PULONG BytesReturned OPTIONAL)
Definition: srvsvc.idl:1010
ULONG dwMinorVersion
Definition: rtltypes.h:248
ULONG dwOSVersionInfoSize
Definition: rtltypes.h:246
ULONG dwMajorVersion
Definition: rtltypes.h:247
DWORD sv100_platform_id
Definition: lmserver.h:12
LPWSTR sv100_name
Definition: lmserver.h:13
DWORD sv101_version_minor
Definition: lmserver.h:20
LPWSTR sv101_name
Definition: lmserver.h:18
LPWSTR sv101_comment
Definition: lmserver.h:22
DWORD sv101_version_major
Definition: lmserver.h:19
DWORD sv101_platform_id
Definition: lmserver.h:17
DWORD sv101_type
Definition: lmserver.h:21
LPWSTR sv102_name
Definition: lmserver.h:27
LPWSTR sv102_comment
Definition: lmserver.h:31
DWORD sv102_platform_id
Definition: lmserver.h:26
DWORD sv102_version_major
Definition: lmserver.h:28
DWORD sv102_anndelta
Definition: lmserver.h:36
DWORD sv102_licenses
Definition: lmserver.h:37
DWORD sv102_version_minor
Definition: lmserver.h:29
DWORD sv102_type
Definition: lmserver.h:30
DWORD sv102_users
Definition: lmserver.h:32
BOOL sv102_hidden
Definition: lmserver.h:34
DWORD sv102_announce
Definition: lmserver.h:35
LPWSTR sv102_userpath
Definition: lmserver.h:38
DWORD sts0_start
Definition: lmstats.h:11
WORD wMilliseconds
Definition: minwinbase.h:263
WORD wSecond
Definition: minwinbase.h:262
WORD wMinute
Definition: minwinbase.h:261
WORD wDayOfWeek
Definition: minwinbase.h:258
DWORD tod_tinterval
Definition: lmremutl.h:30
DWORD tod_elapsedt
Definition: lmremutl.h:23
DWORD tod_weekday
Definition: lmremutl.h:34
ULONG_PTR SIZE_T
Definition: typedefs.h:80
#define __stdcall
Definition: typedefs.h:25
uint32_t ULONG_PTR
Definition: typedefs.h:65
uint32_t ULONG
Definition: typedefs.h:59
SERVER_INFO_101 ServerInfo101
Definition: srvsvc.idl:796
SERVER_INFO_102 ServerInfo102
Definition: srvsvc.idl:797
SERVER_INFO_100 ServerInfo100
Definition: srvsvc.idl:795
_Must_inspect_result_ _In_ WDFDEVICE Device
Definition: wdfchildlist.h:474
_In_ PWDFDEVICE_INIT _In_ PWDF_REMOVE_LOCK_OPTIONS Options
Definition: wdfdevice.h:3540
_Must_inspect_result_ _In_ WDFDEVICE _In_ LPCGUID _Out_ PINTERFACE _In_ USHORT _In_ USHORT Version
Definition: wdffdo.h:469
_Must_inspect_result_ _In_opt_ WDFKEY _In_ PCUNICODE_STRING _In_ ACCESS_MASK _In_ ULONG _Out_opt_ PULONG CreateDisposition
Definition: wdfregistry.h:120
_In_ LPCSTR lpFileName
Definition: winbase.h:2824
#define MAX_COMPUTERNAME_LENGTH
Definition: winbase.h:267
_Reserved_ PVOID Reserved
Definition: winddi.h:3974
#define WINAPI
Definition: msvc.h:6
#define ERROR_INVALID_LEVEL
Definition: winerror.h:318
_IRQL_requires_same_ typedef _In_ ULONG _In_ UCHAR Level
Definition: wmitypes.h:56
_In_ USHORT _In_ ULONG _In_ PSOCKADDR _In_ PSOCKADDR _Reserved_ ULONG _In_opt_ PVOID _In_opt_ const WSK_CLIENT_CONNECTION_DISPATCH _In_opt_ PEPROCESS _In_opt_ PETHREAD _In_opt_ PSECURITY_DESCRIPTOR SecurityDescriptor
Definition: wsk.h:191
_Must_inspect_result_ _In_ ULONG Flags
Definition: wsk.h:170
_In_ __drv_aliasesMem PSTRING Prefix
Definition: rtlfuncs.h:1647
__wchar_t WCHAR
Definition: xmlstorage.h:180
WCHAR * LPWSTR
Definition: xmlstorage.h:184