Commit graph

298 commits

Author SHA1 Message Date
Pierre Schweitzer ec9fc7fade
[CHKDSK] Add French translation 2018-10-21 11:06:06 +02:00
Stanislav Motylkov dd8766e67a [CHKDSK] Add russian translation 2018-10-20 23:29:15 +02:00
Adam Słaboń 7abc8be102 [TRANSLATION] Polish translation update
Polish translation of net, telnet, diskpart, devcpux, fontext, iernonce, lsasrv, themes, arping, frag, screensavers, ctm, fontsub, WinetestsGUI and localmon.
Update for dxdiag, msgina, msports, netcfgx, shell32 and syssetup.
2018-10-20 21:26:07 +02:00
Bișoc George 8e48f8f2dd [CHKDSK] Implement localization support (#891)
- Make the strings translatable.
- Include the English translation within the main resource file.
- Use ConResPrintf() and ConResPuts() for resource strings.
2018-10-20 21:21:51 +02:00
Hermès Bélusca-Maïto 8d78897384
[USERINIT] Enhancements for starting ReactOS GUI installer or Explorer shell.
- Transform TryToStartShell() into a StartProcess() function whose aim
  is just to start processes, since there is no extra initialization needed
  for starting a shell process.

- Modify StartInstaller() to call StartProcess() for starting the ReactOS GUI
  installer found on the installation media, from a path automatically expanded
  depending on the ambient CPU architecture.

svn path=/branches/setup_improvements/; revision=75331
2018-10-08 21:16:46 +02:00
Eric Kohl 9159190039 [SERVICES] Ignore the case when we compare account names 2018-10-05 12:04:21 +02:00
Eric Kohl 1820aa8fe6 [SERVICES] Revert f6d81f22 because it breaks the advapi32 LockServiceDatabase test. 2018-10-05 09:41:50 +02:00
Eric Kohl f6d81f2257 [SERVICES] Fix timeout when a service is stopped
RSetServiceStatus: Send the stop command for the dispatcher thread from a separate thread.

Fixes CORE-15064
2018-10-05 08:41:23 +02:00
Eric Kohl 8f939e057c [SERVICES] Control set code clean-up
- Flush the new control set after the control set has been created.
- Make sure that we create a new control set only on the first boot after setup.
- Move the control set copy code to a separate function.
- Get rid of the global control set values.
2018-09-29 01:31:58 +02:00
Eric Kohl 04683639f0 [SERVICES] RChangeServiceConfigW / RCreateServiceW: Use SecureZeroMemory to wipe clear-text passwords after use. 2018-09-28 17:51:12 +02:00
Eric Kohl b9aeb5bfbd [SERVICES] Fixed a missing comma 2018-09-28 17:29:31 +02:00
Eric Kohl ea6dac3438 [SERVICES] Create a new control set on a non-setup boot. 2018-09-28 16:24:07 +02:00
Hermès Bélusca-Maïto bf164caae8
[SERVICES] Simplify the implementation of RGetServiceDisplayNameA/W() and RGetServiceKeyNameA/W().
Also comment about the observed behaviour of the returned number of "characters"
returned by the ANSI versions of these APIs (which is tested by advapi32_winetest:service).

[ADVAPI32:SCM] Add a comment concerning wide characters vs. bytes mismatch.
2018-09-23 18:09:10 +02:00
Eric Kohl 76588be0d1 [ADVAPI32][SERVICES] Use the session key provided by SystemFunction028 to encrypt and decrypt the service passwords. 2018-09-19 12:30:33 +02:00
Eric Kohl e5fcda922b [ADVAPI32][SERVICES] Pass encrypted passwords to the service manager.
- Encrypt passwords before passing them to the service manager. Right now, we are using a fixed encryption key. This will be fixed later.
- Replace the calls to ZeroMemory which are used to wipe the password buffers by calls to SecureZeroMemory.
2018-09-18 21:33:29 +02:00
Eric Kohl 5e2c4657ca [ADVAPI32][SERVICES] Add (dummy) password encryption/decryption functions to CreateServiceA/W and ChangeServiceConfigA/W in order to prepare to pass encrypted passwords to the service manager 2018-09-17 16:34:48 +02:00
Hermès Bélusca-Maïto 9d43950db7
[SERVICES] Add basic support for setting lpServiceStartName via RChangeServiceConfigW(). 2018-09-17 01:22:59 +02:00
Hermès Bélusca-Maïto a987856e71
[SERVICES] Minor code style fixes; replace wcslen(xxx) ==/!= 0 and strcpy(string, 'empty-string') calls. 2018-09-17 01:22:55 +02:00
Katayama Hirofumi MZ 31019e8c0c [TRANSLATION] Update Romanian translation (#851)
Translation from Stefan Fulea.
CORE-15023
2018-09-14 11:04:36 +02:00
Pierre Schweitzer a06184a9a4
[WINLOGON] Fix build
Add a specific internal header for MPR and include it in WinLogon.

CORE-15012
2018-09-14 08:15:08 +02:00
Pierre Schweitzer cbff9a3046
[WINLOGON] On logoff, also disconnect from any remote location
This avoids keeping connections open and reopening them as soon
as the user reopens their session.
This fixes network shared being duplicated each time session
is reopened.

CORE-15012
2018-09-11 08:30:31 +02:00
Hermès Bélusca-Maïto 419e014675
[SERVICES] Only services starting under the LocalSystem account can run interactively. Otherwise ignore the interactive flag. 2018-09-09 23:24:08 +02:00
Hermès Bélusca-Maïto cccf26da74
[SERVICES] Re-implement RChangeServiceConfigA() around RChangeServiceConfigW(), much as what is done for RCreateServiceA(). 2018-09-09 23:24:04 +02:00
Hermès Bélusca-Maïto d6e577ced9
[SERVICES] RChangeServiceConfigW: Check valid usage of lpdwTagId when lpLoadOrderGroup is not specified. 2018-09-09 23:23:55 +02:00
Serge Gautherie e3a1c2c81b [SERVICES] RChangeServiceConfig2A(): Zero-Initialize InfoW variable
This lets forward NULL Info.psd/Info.psd->lpDescription/Info.psfa,
instead of an uninitialized value.

CORE-14521
2018-08-21 17:36:46 +02:00
Adam Słaboń af3d426685 [TRANSLATION] Polish translation update (#781)
In addition: fix the encoding of the comdlg32 and ntvdm polish resource files.
2018-08-20 17:00:33 +02:00
Hermès Bélusca-Maïto fd39f92fcb
[INCLUDE][WINLOGON] Rename the STARTF_SCRNSAVER flag to STARTF_SCREENSAVER,
as documented in "Advanced Windows NT" by Jeffrey M. Richter (Microsoft Press),
and in https://is.muni.cz/el/1433/jaro2010/PB167/um/cv5/undocumented_CreateProcess.pdf .

[INCLUDE][SERVICES][WIN32K:NTUSER] Add an undocumented STARTF_INHERITDESKTOP flag
for the STARTUPINFO::dwFlags structure member, whose purpose is to tell Win32k
that the created handles to the window station and desktop to which the
process is connecting to, can be inherited by its child processes.
It is used when starting interactive services.
Observed via API monitoring on Windows 2003.
2018-08-19 22:18:40 +02:00
Timo Kreuzer 094a90ad4e [NTOS:PS] Fix an issue with PROCESS_DEVICEMAP_INFORMATION size on 64 bit builds
The PROCESS_DEVICEMAP_INFORMATION  union has 2 fields, one is a handle, the other one is a structure of 36 bytes (independent of architecture). The handle forces 64 bit alignment on 64 bit builds, making the structure 4 bytes bigger than on 32 bit builds. The site is checked in NtQueryInformationProcess (case ProcessDeviceMap). The expected size on x64 is the size of the Query structure without alignment. autocheck correctly passes the site of the Query union member, while smss passes the full size of PROCESS_DEVICEMAP_INFORMATION. Packing the structure is not an option, since it is defined in public headers without packing. Using the original headers sizeof(PROCESS_DEVICEMAP_INFORMATION) is 0x28, sizeof(PROCESS_DEVICEMAP_INFORMATION::Query) is 0x24.
2018-08-17 22:08:37 +02:00
Eric Kohl 2bbac12427 [DLLHOST] Add dllhost to make the device driver extractor for my Lenovo T400 happy 2018-08-11 22:25:30 +02:00
Serge Gautherie 7d6bda16c6
[REACTOS] Improve how some ASSERTMSG() message values are printed: enforce ending "\n".
NB: Not touching calls in "third-party" code: class and classpnp.
2018-08-08 22:03:45 +02:00
Hermès Bélusca-Maïto 10c5bfb8fe
[WINLOGON] Hack-fix for CORE-14877 ; see commit bcec1fd6. 2018-08-06 17:38:00 +02:00
Hermès Bélusca-Maïto 40000a1716
[WINLOGON][MSGINA] Fix typo. 2018-08-06 17:37:38 +02:00
Timo Kreuzer cf77354dce [REACTOS] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Hermès Bélusca-Maïto 3b6faba11a
[AUTOCHK] Improvements: code + command-line handling.
- Add support for the following command-line arguments: /k, /p (and a little bit
  of /r), and add support for checking a particular volume.
  A description of these arguments can be found at:
  "Description of Enhanced Chkdsk, Autochk, and Chkntfs Tools in Windows 2000",
  https://web.archive.org/web/20150215210228/http://support.microsoft.com:80/kb/218461

- Slightly improve some messages.

- Get rid of legacy OpenDirectory() and simplify GetFileSystem().
2018-07-29 16:21:09 +02:00
Hermès Bélusca-Maïto 472d1d2f64
[AUTOCHK] Improve the timeout countdown prompt by displaying the actual remaining seconds before the disk check.
Make also keyboard availability optional.
2018-07-29 16:21:08 +02:00
Hermès Bélusca-Maïto 4225172506
[AUTOCHK] Minor code formatting; reduce indentation level of some blocks; use RTL_NUMBER_OF() macro; normalize file header. 2018-07-29 16:21:07 +02:00
David Knapp 7bbb6bd4b5 [AUTOCHK] Improve readability of messages 2018-07-26 07:28:42 +02:00
Eric Kohl 66981e1b07 [SERVICES] Keep a global service bits variable that combines the service bits of all running services 2018-07-23 01:48:49 +02:00
Hermès Bélusca-Maïto 02eee253b2
[WINLOGON] Allow WinSta0 access only when needed. Also, reset the WinSta0 user as soon as we have logged-off. 2018-07-22 19:03:17 +02:00
Eric Kohl 91a5ee334d [SERVICES] Add a checks for vaild info level to RChangeServiceConfig2A/W and RQueryServiceConfig2A/W
CORE-14837
2018-07-22 12:45:23 +02:00
Hermès Bélusca-Maïto bcec1fd6c3
[WINLOGON] When starting Setup (which runs with SYSTEM credentials), explicitly specify on which window station and desktop we start it, so as to avoid the default choice of the non-interactive Service-0x0-3e7$ window station.
Also, switch to the WinSta0\Default desktop just only before starting Setup, and restore Winlogon setup when it finishes.
2018-07-17 01:59:51 +02:00
Hermès Bélusca-Maïto fafcd50a35
[SERVICES] Minor additions.
- Remove a redundant ScmWaitForLsa() call.
- Remove the LSA_RPC_SERVER_ACTIVE macro (just use directly the string).
- Improve output of DPRINTs.
2018-06-28 23:34:08 +02:00
Hermès Bélusca-Maïto 75dc031080
[SERVICES] Remove the "Special service accounts initialization" hack, and enable per-service account logging.
This effectively removes the temporary hacks introduced in r73486 (a35a785b)
and in r73487 (0ce031f7) for the LocalService and NetworkService accounts.

Now these accounts (and their corresponding user profiles) are created
on the fly, the first time a service that needs these is started.
The code introduced in r73501 (ade0d2cd) is now re-enabled: this has
been made possible thanks to commit f42b4bbe (thanks Eric!).

Dedicated to Joachim Henze ;-)

CORE-12541, CORE-12279
2018-06-28 23:34:02 +02:00
David Knapp 893a3c9d03 [AUTOCHK] Improve autochk messages 2018-06-26 09:16:34 +02:00
Katayama Hirofumi MZ 0a8cd95cad [USERINIT][EXPLORER] Fix auto startup of Start Menu (#594)
- Remove code for Start-Menu auto-startup items from userinit and put it where it belongs: in explorer.

CORE-10839
2018-06-22 16:02:25 +02:00
Pierre Schweitzer 2149c3d0d0
[AUTOCHK] Let the timeout for disk repair to be configured 2018-06-09 00:19:09 +02:00
Pierre Schweitzer 79975ede26
[AUTOCHK] Allow users to skip disk checking if dirty
CORE-14692
2018-06-05 19:34:47 +02:00
Hermès Bélusca-Maïto 528e6339c2
[WINLOGON] Update Italian translation (#513) (by deleted user) 2018-05-31 15:41:09 +02:00
Eric Kohl 46dcab7ab1 [WINLOGON] Ignore the CTRL+SHIFT+ESC hotkey when the session is not in the logged-on state
Should fix CORE-13478
2018-05-22 18:14:42 +02:00
Eric Kohl 1f0fe38634 [WINLOGON] Prevent shell restart when the user is logged off 2018-05-22 14:36:55 +02:00
Pierre Schweitzer 3dc07c91f8
[WINLOGON] Fix build. 2018-05-21 11:33:02 +02:00
Eric Kohl 02f3cb5381 [WINLOGON] Close all dialog boxes on SAS
CORE-13593
2018-05-21 11:21:42 +02:00
Pierre Schweitzer 7662858670
[AUTOCHK] Statically link to FS libs.
This will help reducing the number of handles open.

CORE-13759
2018-05-10 10:49:17 +02:00
Wexpo Lyu 62a90470f8 [WINLOGON] Update simplified chinese translation (#528) 2018-05-02 14:12:59 +02:00
Hermès Bélusca-Maïto 44b5f652a5
[WINLOGON] Delimit the custom system shutdown message within a read-only edit control. 2018-05-02 00:24:11 +02:00
Eric Kohl fd090c6ca1 [SERVICES] Implement RI_ScSetServiceBitsA/W
- RI_ScSetServiceBitsA: Just call RI_ScSetServiceBitsW.
- RI_ScSetServiceBitsW: Store the service bits in the service list entry.
TODO: Merge all service bits in a global variable and pass it to the server service. Maybe use netapi.I_NetServerSetServiceBits(Ex)?
2018-05-01 21:33:37 +02:00
Hermès Bélusca-Maïto 37deb7593e
[WINLOGON] Update french translation of the system shutdown dialog. 2018-04-29 18:02:41 +02:00
Eric Kohl 153c645b2c [WINLOGON] Add german translation of the system shutdown dialog 2018-04-29 17:44:41 +02:00
Eric Kohl ec2bfa2e11 [WINLOGON] Localize the shutdown timeout 2018-04-29 17:09:37 +02:00
Hermès Bélusca-Maïto cb20bf8c90
[WINLOGON] Usability enhancement for the RPC SystemShutdown functionality.
- Perform an immediate system shutdown if the timeout is zero, otherwise
  display the countdown shutdown dialog.
- Cleanup pShutdownParams->pszMessage as soon as the dialog goes away.
- It actually appears (tested on Windows 2000 and 2003) that sending
  WM_CLOSE messages from a user-mode app to the shutdown dialog really
  do nothing (and in particular does not cancel the shutdown!), so modify
  the code to take this fact into account.
2018-04-29 01:02:05 +02:00
Bișoc George b3ff4f5f95 [WINLOGON] Romanian translation update 2018-04-14 21:11:48 +02:00
Adam Słaboń abe6bbabfb [TRANSLATION] Polish translation update for drwtsn32, winlogon and usersrv. (#475) 2018-04-10 22:54:34 +02:00
Eric Kohl 3318d8d5be [WINLOGON] Fix shutdown timeout format string for long timeout
- Use the "%d days" format for timeouts longer than a day.
- Fail if timeout is 10 years or longer.
- TODO: Replace format strings by resources. German WinXP uses "%d days" instead of "%d Tage". We can do better! ;-)
2018-04-02 19:09:13 +02:00
Hermès Bélusca-Maïto 2da4999011
[WINLOGON] Fix some dialog control dimensions. 2018-04-02 15:05:25 +02:00
Eric Kohl 9a6d4bf0c5 [WINLOGON] System shutdown dialog clean-up
- Replace the winlogon icon by the warning icon.
- Add more space for the main text.
- Move the shutdown time into a separate line to ensure it is always fully visible.
- Add more space for the shutdown message and keep the message empty by default.
- Clean up the resource IDs.
2018-04-02 13:33:41 +02:00
Eric Kohl 2ae4585250 [WINLOGON] Clean up part 2
- Replace the UNICODE_STRING usMessage by a PWSTR pszMessage.
- Use the "%02d:%02d:%02d" time format and get rid of the safe string printf because the string will NEVER be longer than 8 characters.
- Rename the timer id constant because it is NOT a resource id.
- Rename variables according to the coding style.
2018-04-02 12:47:15 +02:00
Eric Kohl 72dc173158 [WINLOGON] Clean up part 1
- Add empty lines to separate logical blocks of code.
- Add spaces according to our coding style.
- Move g_hShutdownDialog and g_bShuttingDown into the shutdown parameters struct.
- Pass a pointer to the shutdown parameters to the shutdown thread and the shutdown dialog and use the pointer instead of the global variables.
- Move the timer code into a separate function because it requires local variables.
2018-04-02 01:37:50 +02:00
Eric Kohl 1fac4b068f [WINLOGON] Missed this file 2018-04-02 00:42:15 +02:00
Eric Kohl f50d7749d0 [WINLOGON] Move the system shutdown code into a separate file 2018-04-02 00:38:52 +02:00
alpha5056 7ca90b50de [WINLOGON] Implement BaseInitiateSystemShutdownEx(). (#458) 2018-04-01 19:39:41 +02:00
Amine Khaldi 6e4ff4348a [MSIEXEC] Sync with Wine Staging 3.3. CORE-14434 2018-04-01 13:13:47 +01:00
Amine Khaldi f4ab01b670 [EXPAND] Sync with Wine Staging 3.3. CORE-14434 2018-04-01 13:12:40 +01:00
Li Keqing 5ddbd37371 [TRANSLATION] Update Simplified Chinese Translations (#417) 2018-03-21 22:27:04 +01:00
Luo Yufan 767e2419e9 [TRANSLATION][SUBST] Update Simplified Chinese translation. (#414) 2018-03-04 03:37:20 +01:00
Eric Kohl 9f0c54fcd3 [SC][SERVICES] Support SERVICE_CONTROL_PARAMCHANGE and SERVICE_CONTROL_NETBIND* control codes 2018-02-25 11:07:41 +01:00
Hermès Bélusca-Maïto c6d65fec69
[SERVICES] Use safe-string routines in some places, and do not hardcode buffer lengths. 2018-02-25 00:50:01 +01:00
Hermès Bélusca-Maïto 1aa359ec7f
[SERVICES] Send services shutdown notifications only if they accept them. 2018-02-25 00:49:58 +01:00
Hermès Bélusca-Maïto 6c097b4740
[SERVICES] Add french translation. 2018-02-25 00:49:55 +01:00
Eric Kohl 1dfbed9c3d [SERVICES][ADVAPI32] Fix the broken service stop sequence
services\database.c:
- Refactor ScmControlService() so that it can be used to send the dispatcher loop stop command.
- Separate the code to decrement the image run counter from the service image cleanup code.

services\rpcserver.c:
- RSetServiceStatus(): Stop the dispatcher loop when the image run counter is zero and remove the service image after that.

advapi32\service\sctrl.c:
- Do not terminate the service dispatcher loop when the last service is being stopped. Wait for an explicit dispatcher stop command (empty service name).

CORE-12413
2018-02-24 11:14:05 +01:00
Eric Kohl a8d256bf23 [SERVICES] Update a drivers status properly
- ScmUnloadDriver: Handle failed unload properly.
- ScmGetDriverStatus: A driver is running when its driver object was found. Otherwise it has been stopped.
- ScmControlDriver: Check a drivers status before and after unloading.

CORE-14317
2018-02-19 00:14:58 +01:00
Eric Kohl 6c9cdd84bb [SERVICES] Set a complete service status for running boot start or system start drivers 2018-02-12 15:50:30 +01:00
Eric Kohl e917471e04 [SERVICES] Fix the initial service status
- The initial dwWin32ExitCode for a disabled service is ERROR_SERVICE_DISABLED and ERROR_SRVICE_NEVER_STARTED for non-disabled services.
- The initial dwWaitHint is 2000 (2 seconds) for (user-mode) services and 0 for drivers.
- Move all driver-related code to driver.c.
2018-02-12 14:58:02 +01:00
Eric Kohl 85b71880fa [SERVICES] Update the service status after unloading a driver
Update the service status after unloading the driver and pass the new status to the caller.

CORE-14269
2018-02-10 17:02:23 +01:00
Eric Kohl 905d65b75b [SERVICES] Support the NoInteractiveServices registry value 2018-02-10 14:23:11 +01:00
Luo Yufan 19737a2cb9 [TRANSLATION] Simplified Chinese translation update for NETID and PING. (#369) 2018-02-07 14:03:42 +01:00
Eric Kohl f0c7db730c [SERVICES] Remove the synchronous service control pipe code
Remove the synchronous service control pipe code because we are using the asynchronous service control pipe code for years.
2018-02-04 22:30:33 +01:00
Eric Kohl 2d69520595 [SERVICES] Do not delete running services.
CORE-14260
2018-01-28 00:57:58 +01:00
Erdem Ersoy ba3f074320 [TRANSLATIONS] Update the email address and add a note in the Turkish translation document (#271) 2018-01-07 22:09:42 +01:00
Pierre Schweitzer 06abd3b480
[DISKPART] Don't crash on input if user provided no command
CORE-14018
2018-01-03 08:48:36 +01:00
Katayama Hirofumi MZ e9d8fa57c3
[TRANSLATION][BASE][FDEBUG][MODULES][WIN32SS] Use correct font name in Chinese resources, CORE-9566 (#227).
Localized resources should use the correct Traditional/Simplified Chinese fonts
that are most suitable for UI and compatible with Windows.
2017-12-29 01:51:06 +01:00
Markus Gothe e2e699118f Improve swedish translations and add new translations to swedish. 2017-12-25 11:31:22 +01:00
Pierre Schweitzer 48250aef6e
[CHKDSK] Don't continue repair if volume is in use
This makes use of previous commit vfatlib improvements that allow
caller to stop chkdsk if locking fail, which will happen if volume is in use.
That way, ReactOS users won't be able any longer to f*** up their C:\ volume
by attempting to chkdsk -f it!

CORE-14087
2017-12-09 21:12:09 +01:00
Pierre Schweitzer 9d91a2e8ce
[SERVICES] Fix querying the status of a registered but not started driver.
The current implementation was broken and some dead code was never called; always failing before.
This fix revives this dead code!
Extra fix: avoid derefencing potential null-ptr.
And also, as bonus, comment the function so that logic can be easily understood.

CORE-14062
2017-12-08 22:48:20 +01:00
Eric Kohl 7dd8ebcbbd [SERVICES] Use the STDCALL calling convention for all remote procedure calls. 2017-11-12 14:04:22 +01:00
Serge Gautherie ba507ba439 [SYSSETUP] [USERINIT] "sLanguage" relates to LOCALE_SABBREVLANGNAME actually, not LOCALE_SLANGUAGE. CORE-13128 #62 2017-10-17 13:59:18 +01:00
Amine Khaldi 0c6498fa67 [MSIEXEC] Sync with Wine Staging 2.16. CORE-13762
d73c38f msiexec: Fix parsing of command lines where quoted strings and properties are not separated by whitespace.
2017-10-08 12:08:41 +01:00
Hermès Bélusca-Maïto 221ed4cefe Remove unwanted .gitignore files. 2017-10-04 10:28:36 +02:00
Colin Finck c2c66aff7d Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00