Commit graph

141 commits

Author SHA1 Message Date
Victor Perevertkin
ff13301eb2
[UMPNPMGR] Set the data type in all cases of PNP_GetDeviceRegProp
CORE-14187
2020-12-06 19:48:38 +03:00
Hervé Poussineau
b483be4af2 [UMPNPMGR] Remove invalid prototype of inline function
This fixes eede1b9b7a.
2020-12-01 18:51:42 +01:00
Jérôme Gardou
ab825334dd Apply suggestions from code review
Beautification and clarity

Co-authored-by: Victor Perevertkin <victor@perevertkin.ru>
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-10-20 21:44:54 +02:00
Jérôme Gardou
c004b53d77 Apply suggestions from code review
Style fixes

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
Co-authored-by: Victor Perevertkin <victor@perevertkin.ru>
2020-10-20 21:44:54 +02:00
Jérôme Gardou
00ed72d7e8 [CMAKE] Get rid of add_compile_flags
Use add_compile_options and the like instead
2020-10-20 21:44:54 +02:00
Jérôme Gardou
7e116f0ef3 [CMAKE] Get rid of replace_compile_flags
Introduce a finer-grained remove_target_compile_option instead
2020-10-20 21:44:54 +02:00
Hermès Bélusca-Maïto
ffc96d26ec
[UMPNPMGR][USETUP] Fix the way device-install events are queued and dequeued. Fixes CORE-16103.
Dedicated to the hard work of Joachim Henze! xD

This reverts part of commit 043a98dd (see also commit b2aeafca).

Contrary to what I assumed in commit 043a98dd (and was also assumed in
the older commit b2aeafca), we cannot use the singled-linked lists to
queue and dequeue the PnP device-install events, because:

- the events must be treated from the oldest to the newest ones, for
  consistency, otherwise this creates problems, as shown by e.g. CORE-16103;

- the system singled-linked lists only offer access to the top of the
  list (like a stack) instead of to both the top and the bottom of the
  list, as would be required for a queue. Using the SLISTs would mean
  that only the newest-received events would be treated first, while the
  oldest (which were the first received) events would be treated last,
  and this is wrong.

Therefore one must use e.g. the standard doubly-linked list. Also, using
locked operations (insertion & removal) on the list of device-install
events is necessary, because these operations are done concurrently by
two different threads: PnpEventThread() and DeviceInstallThread().
Since the interlocked linked list functions are not available in user-mode,
we need to use instead locking access through e.g. a mutex.
2020-10-01 01:52:09 +02:00
Serge Gautherie
98bbe8358c
[REACTOS] Fix GetTokenInformation() usage (#2997)
The first call to GetTokenInformation is used to determine the size of a TokenInformation buffer.
It should fail and return ERROR_INSUFFICIENT_BUFFER
2020-07-21 15:39:11 +03:00
Serge Gautherie
b509658280
[CMAKE] Remove obsolete 'CMAKE_CXX_COMPILER_VERSION' checks (#2981)
Following upgrade to RosBE 2.2.0 support and GCC 8.4.
2020-07-18 15:37:29 +02:00
Serge Gautherie
353b544047 [AUDIOSRV] logmsg(): Disable its file part
Mininal workaround for
CORE-16814
2020-07-11 01:22:56 +02:00
Mark Jansen
6859348aea
[SVCHOST] Fix PSID initialization
CORE-17151
2020-07-04 19:39:06 +02:00
Oleg Dubinskiy
dcc5dd2a69
[SDK][SVCHOST] Move all global svchost declarations to public header.
Also update the includes.
It will allow to use those declarations globally where they are required (e. g. for SvchostPushServiceGlobals functions in some services).
No functional changes.
2020-06-27 14:54:22 +02:00
Joachim Henze
1b8b339aae [DNSRSLVR] Define NDEBUG in cache.c
To avoid leaking private data into logs by default.
Some testers may consider their DNS-suffix private data.
And DnsIntCacheAddEntry() logs that via Record->pName.
2020-06-14 20:03:33 +02:00
Amine Khaldi
139a3d6661
[CMAKE] Implement PCH builds with target_precompile_headers. CORE-16905 2020-06-06 21:58:41 +03:00
Serge Gautherie
1e861d9759
[NFSD] readdir_copy_shortname(): Add needed brackets to '*name_size_out' (#2856)
CORE-17078
2020-06-06 18:21:05 +02:00
Eric Kohl
505b9f8052 [SCHEDSVC] Implement the job start time calculation for given days of month 2020-05-31 22:33:49 +02:00
Eric Kohl
d70c64bde0 [SCHEDSVC] Fix the job start time calculation for given days of week. 2020-05-31 15:49:22 +02:00
Serge Gautherie
11345aedd8
[FORMATTING] [CMAKE] Remove space in 'if (' (#2847) 2020-05-26 20:24:02 +02:00
Eric Kohl
1b90e54242 [BROWSER] Add the browser service 2020-05-21 22:49:33 +02:00
Eric Kohl
80b139d726 [UMPNPMGR] Start work on PNP_GetNextResDes() 2020-05-21 21:51:06 +02:00
Eric Kohl
38494d0997 [UMPNPMGR] Improve some debug messages 2020-05-20 19:56:30 +02:00
Katayama Hirofumi MZ
fe9838f578
[SERVICES][DCOMLAUNCH] Don't hardcode C: drive (#2779)
CORE-13235
2020-05-17 17:45:56 +09:00
Eric Kohl
4246b64dcb [UMPNPMGR] Implement PNP_GetFirstLogConf and PNP_GetNextLogConf (WIP)
- PNP_GetFirstLogConf only works for resources lists.
- PNP_GetNextLogConf does not return a valid tag yet.
2020-05-10 20:46:41 +02:00
Thomas Faber
5a5ba1ad10
[SHSVCS] Don't call UnregisterWait from within the wait callback.
Doing this causes deadlocks, the process runs out of worker threads and
the system runs out of memory by allocating too many I/O completion ports
when using ntdll.dll from Windows.
2020-04-22 12:37:26 +02:00
Victor Perevertkin
7e069ccdb2
[CMAKE] Replace custom functions to built-in ones
add_target_compile_definitions -> target_compile_definitions
add_target_compile_flags -> target_compile_options
add_target_include_directories -> target_include_directories
2020-04-16 15:59:38 +03:00
Hermès Bélusca-Maïto
622c7ed609
[W32TIME][BOOTDATA] Export SvchostEntry_W32Time() as an alias to W32TmServiceMain, and use the former as the service entry point specified in the registry, for Windows compatibility. 2020-04-09 23:22:40 +02:00
Serge Gautherie
2712762538
[UMPNPMGR] rpcserver.c: Fix debug message copypastas (#2426)
Addendum to db02f87d.
2020-03-09 16:00:53 +01:00
Eric Kohl
b39c55e5d2 [UMPNPMGR] Implement PNP_DisableDevInst() 2020-03-08 10:36:02 +01:00
Eric Kohl
db02f87d7b [UMPNPMGR] Fix indentation and improve debug messages 2020-03-08 10:30:25 +01:00
Eric Kohl
c11491b750 [UMPNPMGR] Improve PNP_DeviceInstanceAction
- Rename parameters according to [MS_PNPR] (no longer available for download).
- Remove unsupported PNP_DEVINST_MOVE and PNP_DEVINST_DISABLE actions.
- Implement most of the PNP_DEVINST_SETUP action.
2020-02-23 10:44:43 +01:00
Eric Kohl
774a4252b9 [UMPNPMGR] Improve some DPRINTS and PNP_CreateKey
PNP_CreateKey creates the 'Device Parameters' key for a given device in the enum key
2020-02-16 22:08:34 +01:00
Eric Kohl
00a47324f2 [UMPNPMGR] Replace magic values and improve DPRINTS in exported function 2020-02-16 16:29:44 +01:00
Eric Kohl
f9160f7637 [UMPNPMGR] Implement PNP_RegisterDriver() 2020-02-16 11:13:10 +01:00
Eric Kohl
4f23b0c3df [W32TIME] Rename ServiceMain to W32TmServiceMain 2020-02-15 15:08:19 +01:00
Katayama Hirofumi MZ
214a9cb660
[NFSD][TELNETD][LIBTIRPC][MAN] Don't hardcode C:\ReactOS (#2334)
CORE-14747
2020-02-13 18:03:35 +01:00
Bișoc George
37349d7a0f
[TIMEDATE] Do not display a message box when NTP sync fails (#2305)
This PR merely checks if the string is empty and displaying (only) a debug information to the debugger, at disposal of displaying a message box. I might implement such dynamic resource string to the CPL later in a next PR.
CORE-16654
2020-02-06 03:54:33 +09:00
Eric Kohl
17f932d78e [DNSRSLVR] R_ResolverFlushCache should only flush cached records which were not read from the hosts file 2020-01-06 00:46:37 +01:00
Eric Kohl
6c7878f35e [DNSAPI][DNSRSLVR] Implement DnsGetCacheDataTable() 2019-12-22 11:21:04 +01:00
Eric Kohl
6499cf9e1a [DNSRSLVR] Set proper flags for the hosts file entries 2019-12-21 22:12:55 +01:00
Eric Kohl
7908e2e41f [NETAPI32][WKSSVC] Implement NetGetJoinInformation using the workstation service 2019-12-15 19:53:23 +01:00
Eric Kohl
989ee70d9d [WKSSVC] Implement parts of NetrJoinDomain2 to join a work group
NOTE: We can not connect to a work group yet!
2019-12-08 19:19:27 +01:00
Eric Kohl
c35ebdfeb6 [DNSRSLVR] Add support for IP6 hosts file entries 2019-12-01 17:18:47 +01:00
Eric Kohl
630f34a0d0 [DNSAPI][DNSRSLVR] Parse the hosts file when the resolver is initializing
- Move the hosts file handling from dnsapi.dll to the resolver service. Now, the hosts file is no longer parsed on each query.
- Add support for DNS_QUERY_WIRE_ONLY and DNS_QUERY_NO_WIRE_QUERY flags to R_ResolverQuery.
- GetCurrentTimeInSeconds() should return DWORD instead of DNS_STATUS.
2019-11-23 17:13:51 +01:00
Eric Kohl
e92ad7f309 [IDL][DNSRSLVR] Use the stdcall calling convention for remote functions 2019-11-10 17:16:17 +01:00
Eric Kohl
305035be7d [DNSRSLVR][DNSAPI] Enable the DNS resolver cache
- Fix the IDL file to return DNS records properly
- Reroute the DNS query call path: DNSQuery->R_ResolverQuery->Query_Main

DNS records get cached and 'ipconfig /flushdns' works as expected.

CORE-12159
2019-11-10 15:28:42 +01:00
Eric Kohl
2a2dd8f726 [UMPNPMGR] Add checks for the root device instance ID 2019-11-09 21:14:52 +01:00
Eric Kohl
8bf3f3feb9 [UMPNPMGR] Validate device instance IDs before use 2019-11-09 18:48:10 +01:00
Eric Kohl
a743e33bd8 [UMPNPMGR] Implement PNP_RequestEjectPC() 2019-11-09 12:32:34 +01:00
Eric Kohl
d49d7b3282 [DNSRSLVR] Add the DNS Resolver Cache Service
Patch written by Peter Hater and Christoph von Wittich.

Slightly modified by me in order to
- fix bit-rot
- fix header include issues
- disable integration with dnsapi because of confusing use of DnsQweryEx().

Integration with dnsapi will follow in a future commit.

CORE-12159
2019-10-27 13:48:04 +01:00
Serge Gautherie
e133817811 [CMAKE] Use modules instead of shared libraries
Follow-up to 23373acbb9.
2 missed cases: apisets, lunar.msstyles.
4 new cases: w32time, netplwiz, msxml3r, mizu.msstyles.
2019-10-27 09:51:28 +01:00