Commit graph

858 commits

Author SHA1 Message Date
Hermès Bélusca-Maïto 79c7b07668 [CONUTILS]: Remove that overengineered splitted library stuff, and just rely on the splitting of the source code files instead. This is simpler and does the same job as I wanted to do initially (thanks Amine and Thomas for the feedback).
CORE-10504 #resolve
[APPS]: Use again just the conutils library.
The effect of these two modifications above is to partly revert r73024 (the code splitting remains on the contrary).
[CMAKE]: Remove the "evil workaround" (revert r73027). See CORE-12206 for more details.

svn path=/trunk/; revision=73110
2016-11-03 15:47:45 +00:00
Mark Jansen 082463978d [REGSVR32] Disable error message boxes while loading a dll. CORE-12209
svn path=/trunk/; revision=73077
2016-10-30 11:50:10 +00:00
Hermès Bélusca-Maïto eb198b854d [CONUTILS]
- Introduce new functionalities related to console streams, a console screen management api (almost stubbed), a console pager api (adapted from code from CMD). This new functionality will be used in the future. See CORE-10504 for more details.
- As this library is therefore growing up, split it in small parts (sublibraries) that can be used, with the following dependency scheme: base utils (standalone); streams depending on base; screen depending on streams; pager depending on screen.

[APPS]: As a result, modify the CMakeLists of the different apps that use conutils to make them depend on the correct sublibrary.

svn path=/trunk/; revision=73024
2016-10-22 21:54:29 +00:00
Mark Jansen aef3f9c467 RegQueryValueExW and RegQueryValueExA calls accept bytes. Patch by Victor Martinez Calvo. CORE-9665 #comment Thanks!
svn path=/trunk/; revision=72947
2016-10-09 20:58:08 +00:00
Hermès Bélusca-Maïto 2bc77973f5 [FORMAT]: Fix ukrainian translation by Vort.
svn path=/trunk/; revision=72940
2016-10-08 13:55:30 +00:00
Hermès Bélusca-Maïto 3d9c96162e Fix commit synchronization issue (that's what happens when you work on a patch that somebody else worked on in parallel!!)
svn path=/trunk/; revision=72939
2016-10-08 13:13:38 +00:00
Hermès Bélusca-Maïto 8b14a4a88a [TRANSLATIONS]: Russian translation update by Sergey Stopkin.
CORE-12108 #comment Спасибо!

svn path=/trunk/; revision=72938
2016-10-08 13:12:35 +00:00
Amine Khaldi aec4ce26d4 [TRANSLATIONS] Russian translation update by Sergey Stopkin. CORE-12108
svn path=/trunk/; revision=72937
2016-10-08 12:57:53 +00:00
Hermès Bélusca-Maïto 330db984fe [DISKPART][NET][WLANCONF]
Make those command tools use the console uilities library, aka. solve all those problems of wrong characters on the console...
CORE-10584 #resolve

[CONUTILS]: Remove the now unneeded compatibility defines.
CORE-10504

svn path=/trunk/; revision=72933
2016-10-07 22:50:32 +00:00
Hermès Bélusca-Maïto cc5ded3854 [CACLS][CLIP][COMP][EVENTCREATE][HELP][LOGOFF][SHUTDOWN][CHKDSK][FORMAT][SUBST]
- Use Puts functions where needed;
- Fix a __stdcall that needs to be read __cdecl for a variadic function.

[CACLS]
Fix some resources so that the strings can hold on the width of a standard console screen (80 chars).

svn path=/trunk/; revision=72930
2016-10-07 21:57:12 +00:00
Hermès Bélusca-Maïto bf2828383e Fix build.
svn path=/trunk/; revision=72929
2016-10-07 20:44:15 +00:00
Hermès Bélusca-Maïto bc065fb271 [CACLS][CLIP][COMP][HELP][LOGOFF][SHUTDOWN][CHKDSK][FORMAT][SUBST]
Make those command tools use the console uilities library, aka. solve all those problems of wrong characters on the console...
Nitpickers may notice that at some places, the usage of a "Puts"-like function would be better than Printf. Don't worry, I'm on it, it's for another commit.
CORE-10504
CORE-11909 #resolve

svn path=/trunk/; revision=72928
2016-10-07 20:37:36 +00:00
Hermès Bélusca-Maïto 098c7ec631 [DISKPART]: Harmonize the source file info headers. No code changes.
svn path=/trunk/; revision=72885
2016-10-01 22:58:21 +00:00
Hermès Bélusca-Maïto 3eea4e5f2d [FORMAT]: Fix some resources.
svn path=/trunk/; revision=72884
2016-10-01 21:00:16 +00:00
Hermès Bélusca-Maïto 99b8a71b9d [USERINIT]: Addendum to r72823 (sorry for the redundant commits): Fix a use without initialization warning for the 'Success' variable: initialize it to TRUE so that we by default do not perform the main menu loop (in livecd mode).
svn path=/trunk/; revision=72824
2016-09-26 22:52:04 +00:00
Hermès Bélusca-Maïto 3f6ca86312 [USERINIT]: Usability commit: when in LiveCD mode, if we cannot start the shell or the installer, display again the main menu.
svn path=/trunk/; revision=72823
2016-09-26 22:49:13 +00:00
Hermès Bélusca-Maïto 6c90c67259 [USERINIT]: Addendum to r72821 + demote to WARNing the displayed message if the installer could not be started.
svn path=/trunk/; revision=72822
2016-09-26 22:47:25 +00:00
Hermès Bélusca-Maïto 0a81885192 [USERINIT]
- Use explicit unicode functions where possible.
- Use ARRAYSIZE(foo) instead of sizeof(foo)/sizeof(foo[0]).
- Don't hardcode some buffer sizes.
- Try reducing level of code indentation in some functions.
- Make StartShell and StartInstaller return a boolean (TRUE: success; FALSE: failure). Will be needed in the next commit.
- Remove a useless "#pragma warning".

svn path=/trunk/; revision=72821
2016-09-26 22:42:56 +00:00
Hermès Bélusca-Maïto 9481be0824 [WINLOGON]
- CreateUserEnvironment: if user impersonation fails, just fail the call.
- SetDefaultLanguage: Use the *correct* HKEY_CURRENT_USER key to retrieve the lang., that is, first impersonate the user, then, call RegOpenCurrentUser. We do that because otherwise calling RegOpenKey(Ex) for HKEY_CURRENT_USER just uses the process cached value of HKEY_CURRENT_USER, which does not change *even if* one impersonates an user.

[MSGINA]
- Correctly impersonate the user when opening & initializing the shutdown dialog (in the same way as winlogon does), i.e. call ImpersonateLoggedOnUser and use RegOpenCurrentUser.
- Fill few (but not all) code holes in WlxScreenSaverNotify.

svn path=/trunk/; revision=72737
2016-09-18 23:32:02 +00:00
Hermès Bélusca-Maïto 368cd76efb Of course, as soon as you see such typos in our code, you can be 90% sure they are repeated elsewhere. And indeed they are. Fix the typos in our code (I leave them in the 3rd party code).
Concerning the fix in the NDK header I've checked that publicly available information about this structure (NirSoft website, Windows Internals book, Windows symbols...) has the member correctly named.

svn path=/trunk/; revision=72679
2016-09-14 22:51:55 +00:00
Hermès Bélusca-Maïto 10c087b83b [TRANSLATIONS]: Update ReactOS russian translation, by Kudratov Olimjon. Part 1
CORE-11636

svn path=/trunk/; revision=72454
2016-08-25 10:22:26 +00:00
Eric Kohl fcf959d784 [INCLUDE]
Add the RtlLengthSecurityDescriptor prototype to the NDK.

svn path=/trunk/; revision=72420
2016-08-21 21:31:40 +00:00
Jérôme Gardou 3bae10b2bc [SERVICES]
- Properly invalidate service handles when closing/freeing them
Dedicated to Hermès and any regression chaser. FalsePositives--

svn path=/trunk/; revision=72396
2016-08-19 22:15:53 +00:00
Amine Khaldi c3e09eb2e6 [TRANSLATIONS] Russian translation update by Sergey Stopkin and co, with some fixes by me. CORE-11752
svn path=/trunk/; revision=72081
2016-08-02 09:16:16 +00:00
Eric Kohl bca3b5833c Ooops! These were not meant to be committed!
svn path=/trunk/; revision=71955
2016-07-16 17:41:44 +00:00
Eric Kohl 949bd4b625 [SERVICES]
Check for NULL pointers before derreferecing them in ScmIsSameServiceAccount().
Patch by Victor Martinez Calvo.
CORE-11599 #resolve #comment Thanks a lot!

svn path=/trunk/; revision=71954
2016-07-16 17:39:37 +00:00
Eric Kohl 8b24e1b048 [SERVICES]
Fix yet another MSDN bug: ChangeServiceConfig2 ALWAYS requires SERVICE_CHANGE_CONFIG and SERVICE_START access rights and an enabled SE_SHUTDOWN_PRIVILEGE privilege when you try to set the failure actions. Otherwise, you will just get a STATUS_ACCESS_DENIED.

- Remove the access and privilege checks from ScmSetFailureActions and move them to RChangeServiceConfig2W.

svn path=/trunk/; revision=71814
2016-07-04 21:37:24 +00:00
Eric Kohl 13c8b90fd3 [TRANSLATION]
Updating Turkish Translation
Patch by Erdem Ersoy.
CORE-11476 #resolve #comment Thanks a lot!

svn path=/trunk/; revision=71785
2016-07-03 11:50:29 +00:00
Eric Kohl 893c145538 [TRANSLATION]
Romanian resources maintenance.
Patch by Ștefan Fulea.

CORE-11439 #resolve #comment Thanks a lot!

svn path=/trunk/; revision=71774
2016-07-03 09:51:22 +00:00
Hermès Bélusca-Maïto c37ff9ea32 [SUBST]
- Update the resource program description.
- Convert to full UNICODE.
- Use Win32 functions where possible.
- Factor-out the usage of QueryDosDevice into a QuerySubstedDrive function, that returns error codes according to whether the specified drive is a mapped (substed) drive, or is just an existing drive that is not a mapping, or if the drive does not exist. This allows us to detect attempts to use a drive letter that is not a mapped drive, to define a new mapping, and if so we reject such attempt.
This fixes CORE-10681 #resolve #comment Fixed with another patch according to my last remark.

svn path=/trunk/; revision=71695
2016-06-29 00:38:51 +00:00
Hermès Bélusca-Maïto 38416a7c00 [SUBST]
- Headers reordering.
- Use ARRAYSIZE.
- Give the internal helper function IsSubstedDrive just the single letter of the drive to check for.
- AddSubst and DeleteSubst: both take a drive string of *exactly* two characters: the drive letter and the ':' (and of course there's the NULL terminator): fix the parameter check in this regard.
- AddSubst: It is possible on Windows to use the DefineDosDevice API to map a drive letter to a *file* (yes yes!!) (but the mapping made is unusable). Forbids this case in SUBST since it is not made for that.
CORE-10681

svn path=/trunk/; revision=71693
2016-06-28 20:22:07 +00:00
Hermès Bélusca-Maïto 6d8d3402b3 [SUBST]: CORE-10681 #comment Apply part of Peter Hater's patch proposed in CORE-10681, that is, fixing the usage of QueryDosDevice API, but without the new IsDriveUsed functionality. (r71692)
svn path=/trunk/; revision=71692
2016-06-28 19:21:08 +00:00
Eric Kohl def1d69426 [SERVICES]
RSetServiceObjectSecurity: Modify and store a service security descriptor.

svn path=/trunk/; revision=71686
2016-06-27 22:35:54 +00:00
Eric Kohl aa7b502c14 [SERVICES]
- Create the absolute default service security descriptor when services.exe starts up.
- Create a self-relative security descriptor whenever it is needed.

svn path=/trunk/; revision=71684
2016-06-27 22:19:19 +00:00
Hermès Bélusca-Maïto 0a1b24ef17 [SUBST]: Fix help message indentation in different languages.
svn path=/trunk/; revision=71683
2016-06-27 20:10:59 +00:00
Eric Kohl 86b93c239e [SERVICES]
Create an individual security descriptor for each service. We cannot use a common default security descriptor because RtlSetSecurityObject will free the old security descriptor when we try to set a new one.

svn path=/trunk/; revision=71679
2016-06-26 20:09:37 +00:00
Eric Kohl d8eb428154 [SERVICES]
Use self-relative security descriptors only:
- Convert the default service security descriptor to the self-relative format.
- Remove security descriptor format conversions from ScmReadSecurityDescriptor and ScmWriteSecurityDescriptor.

svn path=/trunk/; revision=71676
2016-06-26 15:02:48 +00:00
Eric Kohl 5965ffcd78 [SERVICES]
- Read the service security descriptors when the service list is created.
- Assign and write the default security descriptor when a service does not have its own security desciptor.
- Delete a service security desciptor when the service is deleted.

svn path=/trunk/; revision=71611
2016-06-11 09:41:05 +00:00
Eric Kohl 5a180609eb [SERVICES]
- Create a default service security descriptor.
- RCreateServiceW: Assign the default security descriptor to new services on service creation and store it in the registry.
- RQueryServiceObjectSecurity: Return the services security descriptor to the caller.

svn path=/trunk/; revision=71603
2016-06-09 21:30:48 +00:00
Eric Kohl 4c88138425 [SERVICES]
Prepare service logon.

svn path=/trunk/; revision=71449
2016-05-28 21:56:56 +00:00
Pierre Schweitzer 88f0e76715 [AUTOCHK]
Add support for FFS

CORE-11040

svn path=/trunk/; revision=71426
2016-05-27 12:11:15 +00:00
Pierre Schweitzer 89138635e9 [AUTOCHK]
Add support for ReiserFS

CORE-11005

svn path=/trunk/; revision=71415
2016-05-26 18:12:36 +00:00
Eric Kohl 51881431dd [SERVICES]
- RChangeServiceConfigA/W: Modify or delete password secrets.
[ADVAPI32]
- ChangeServiceConfigA, CreateServiceA: Convert passwords to Unicode before passing them to the remote functions.

svn path=/trunk/; revision=71394
2016-05-23 21:48:32 +00:00
Eric Kohl 197eafa50e [SERVICES]
RCreateServiceW: Store a given password as a secret.

svn path=/trunk/; revision=71386
2016-05-23 15:02:37 +00:00
Thomas Faber 6b27b08a69 [SERVICES]
- On service stop, set Service->lpImage to NULL after calling ScmDereferenceServiceImage, so the same image is not dereferenced again on service deletion
- Do not call ScmDereferenceServiceImage in CreateServiceListEntry, as the service should never have an image there
CORE-11273 #resolve

svn path=/trunk/; revision=71355
2016-05-19 13:01:04 +00:00
Christoph von Wittich d2a7e3aea8 [REGSRV32] accept '-' as command line delimiter symbol as well
svn path=/trunk/; revision=71340
2016-05-16 07:17:45 +00:00
Amine Khaldi 08a0346e9f [SDK] One step further towards ReactOS source code tree restructure: the sdk folder that groups includes, libraries and tools. CORE-9111
svn path=/trunk/; revision=71184
2016-04-20 12:36:25 +00:00
Daniel Reimer e85d20412c [USERINIT]
Fix Russian translation for userinit by BinaryTree
CORE-10936 #resolve #comment Committed, thx.

svn path=/trunk/; revision=71070
2016-03-28 21:26:21 +00:00
Sylvain Petreolle 69a888dc46 [SMSS]
Less debug, better diagnostis.

svn path=/trunk/; revision=71034
2016-03-22 18:34:18 +00:00
Amine Khaldi b7c126d10e [TREE][USERINIT] Italian Translation update by Riccardo Montanari with fixes by me. CORE-10970
svn path=/trunk/; revision=71010
2016-03-14 09:22:20 +00:00