Commit graph

64800 commits

Author SHA1 Message Date
Timo Kreuzer 1c0099452e [CREATESPEC]
- Implement retrieving export names from forwarders
- Add error() function to print errors
- Refactor image/symbol loading
- Fix some bugs and add some hacks, so that it compiles in out tree
- Add to build

svn path=/trunk/; revision=70569
2016-01-10 18:50:36 +00:00
Eric Kohl 3c1003aaf5 [LSASRV]
Add credential function stubs to the lsa dispatch table.

svn path=/trunk/; revision=70568
2016-01-10 13:01:29 +00:00
Eric Kohl 396b335764 [LSASRV]
Add missing exports.

svn path=/trunk/; revision=70567
2016-01-10 12:44:35 +00:00
Eric Kohl cc8ac23992 [ADVAPI32]
Implement LsaOpenPolicySce.
[LSASRV]
Update the LsarOpenPolicySce prototype.

svn path=/trunk/; revision=70566
2016-01-10 10:27:46 +00:00
Hermès Bélusca-Maïto 1dba309628 [CMLIB][NTOS:CONFIG]
- The BaseBlock->Length member is really the size in bytes of the full hive, minus the header (base) block size.
- Remove the last remnents of the "hack of doom" aka. the one similar in magnitude to the US national debt, addendum to r61621 and r26712. The FileSize can be computed with BaseBlock->Length.

svn path=/trunk/; revision=70565
2016-01-10 02:16:39 +00:00
Hermès Bélusca-Maïto a5ed535978 [NTOS:CONFIG]
- Use the standard "CmHive" naming (that is used in all the rest of the 'config' module) for the first parameter of CmpInitializeHive.
[CMLIB]
- Fix the order of the 'HiveFlags'/'FileType' parameters in HvInitialize (the function 'CmGetSystemControlValues' in ntoskrnl/config/cmcontrl.c got them right already).

svn path=/trunk/; revision=70564
2016-01-10 01:28:04 +00:00
Hermès Bélusca-Maïto 3182337569 [CMLIB]: Use the HvGetCell* macros where it's possible.
svn path=/trunk/; revision=70563
2016-01-09 23:50:10 +00:00
Hermès Bélusca-Maïto c8688507db [CMLIB]: Go from 3-space indentation to 4-space.
svn path=/trunk/; revision=70562
2016-01-09 23:42:45 +00:00
Hermès Bélusca-Maïto c55976dada [CMLIB]
- HV_BLOCK_SIZE and HBLOCK_SIZE are the same thing; prefer the newly introduced HBLOCK_SIZE define.
- Improve the HvGetCell* macros.
- Add next to the defined hive signatures what their corresponding strings are (for documentation purpose).
- Some whitespace fixes in the headers.

svn path=/trunk/; revision=70561
2016-01-09 23:15:05 +00:00
Eric Kohl 496764ad58 [DEVMGR]
Set the focus to the treeview when the main window recieves a WM_ACTIVATE message.
CORE-10769 #resolve #comment Fixed in r70560.

svn path=/trunk/; revision=70560
2016-01-09 22:22:17 +00:00
Timo Kreuzer 2a5c5c0c76 [CREATESPEC]
Small utility to auto-create spec files. Uses MS symbol server to evaluate data not available in the export table. Features:
- Parse export table for export names and forwarders
- Find function name for nameless exports
- Recognize calling convention / data exports
- Analyze function parameters

svn path=/trunk/; revision=70559
2016-01-09 19:05:14 +00:00
Hermès Bélusca-Maïto 6ed0a4c6b2 [USETUP]: Do not append an extra NULL-terminator when updating freeldr.ini
svn path=/trunk/; revision=70558
2016-01-09 11:39:56 +00:00
Hermès Bélusca-Maïto 119229c8fb [USETUP]: Since calling RtlAllocateHeap with the HEAP_ZERO_MEMORY flag works as expected, just use it instead of manually zero-out the newly-created buffer just after.
svn path=/trunk/; revision=70557
2016-01-09 11:22:20 +00:00
Alex Ionescu 9701df346f [BOOTMGFW]: Implement the final boot selection & launch loop.
[BOOTMLIB]: Implement a few more BCD option functions.
Minus a PE loader (BmpLaunchBootEntry) and some more BCD parsing (BmpGetSelectedBootEntry) with some glue in between, the UEFI Boot Manager is nearly done. Once it is, it will be time to implement the actual loader -- Winload.efi. The good news is that we'll have all of bootlib already good to go (with all its hacks). The bad news is that Winload will turn on paging, so all those unimplemented paths and UEFI mode switches will have to be made to work.

svn path=/trunk/; revision=70556
2016-01-09 05:39:18 +00:00
Hermès Bélusca-Maïto 5e7a5d0d57 [DEVMGR]: Keep the computer name as it is, don't lower-case it.
svn path=/trunk/; revision=70555
2016-01-08 21:14:13 +00:00
Hermès Bélusca-Maïto adec9641bc [CDMAKE]: Improve an error message.
svn path=/trunk/; revision=70554
2016-01-08 20:27:55 +00:00
Hermès Bélusca-Maïto 9c232dfd4f [CDMAKE]
- #if _WIN32 --> #ifdef _WIN32
- Define the "max" macro only if needed.
- Fix a comment.
- Plug a memory leak ('case_name' not freed in the "!*case_name" case of the dir_hash_create_dir function).
- Return a non-zero value (the file structure pointer) from dir_hash_add_file in case we succeed in creating the file in the ISO structure, and NULL otherwise (i.e. when the filename is empty). In that latter case we fail the hard way. No-named files are completely invalid in ISO archives. Now, the following testcase (e.g. to be added into bootcd.lst):
reactos/reactos.exe/=C:/test/reactos.exe
fails as expected (before, we were able to create a directory named "reactos/reactos.exe", and inside, a no-named file with the contents of C:/test/reactos.exe).

svn path=/trunk/; revision=70553
2016-01-08 20:25:30 +00:00
Hermès Bélusca-Maïto 509ec7bdab [CDMAKE]
- Optimize splitting paths (merge chop_dirname and chop_filename functions).
- Make the code working as expected for the following testcases (you can test these by adding the following lines into e.g. bootcd.lst):
testdir1   --> create "testdir1" in the root directory.
testdir2/  --> create "testdir2" in the root directory. No no-named subdirectory is created.
testdir3// --> create "testdir3" in the root directory. No no-named subdirectory is created.
dir1//\/dir14///\//\//   --> create "dir1" in the root directory, and "dir14" inside dir1. No no-named subdirectory is created.
EFI/ReactOS/Boot/Fonts//chs_boot.ttf=C:/somepath/chs_boot.ttf --> create the directories "EFI/ReactOS/Boot/Fonts", no no-named subdirectory is created, and create in the Fonts directory the file "chs_boot.ttf".

Before those changes, empty no-named (therefore, invalid) subdirectories were created in the second, third and fourth testcases, and an obscure error was returned in the fifth testcase.

svn path=/trunk/; revision=70552
2016-01-08 18:43:46 +00:00
Thomas Faber 9533d5eb74 [ACPICA]
- Update to version 20160108

svn path=/trunk/; revision=70551
2016-01-08 16:41:39 +00:00
Thomas Faber 3e7cd6e646 [ACPICA]
- Actually use the BSD/GPL licensed version as we should be, instead of the Intel license

svn path=/trunk/; revision=70550
2016-01-08 16:37:52 +00:00
Hermès Bélusca-Maïto 2aa1a8c21d [BOOTMGR]: Fix missing '\r' for EfiPrintf newlines, and few misspellings.
svn path=/trunk/; revision=70549
2016-01-08 15:01:11 +00:00
Hermès Bélusca-Maïto 6d8ed09fbe [FATTEN]: Set the directory volume label in addition to the bootsector label.
[FATFS]: For FAT12 volumes, do not expand the FAT size.

svn path=/trunk/; revision=70548
2016-01-08 13:51:45 +00:00
Hermès Bélusca-Maïto dce360ba2c [FATFS]: When creating a directory (or setting the volume label), the create time should be set correctly.
svn path=/trunk/; revision=70547
2016-01-08 13:22:23 +00:00
Hermès Bélusca-Maïto 248ec2d9f1 [FATTEN:FATFS]: Minor code reshuffling to make ease for syncing with future versions of the FatFS library (currently 0.11a).
svn path=/trunk/; revision=70546
2016-01-08 12:59:19 +00:00
Hermès Bélusca-Maïto 349c0d0361 [FATTEN]: FAT FS month is 1-based.
svn path=/trunk/; revision=70545
2016-01-08 12:14:53 +00:00
Alex Ionescu ae83268e16 [BOOTMGFW]: Last few straggling initialization checks.
[BOOTMGFW]: Recover the boot sequence from the BCD and entire the boot selection stage. Now the fun begins.

svn path=/trunk/; revision=70544
2016-01-08 06:19:14 +00:00
Alex Ionescu 44ab46cfa9 [BOOTMGFW]: Implement additional startup logic
[BOOTLIB]: Implement initial SecureBoot support.
[BOOTLIB]: Implement UEFI Variable query support.

svn path=/trunk/; revision=70543
2016-01-08 06:03:55 +00:00
Alex Ionescu 3bfe54c38c Three tiny squirmy subtle bugs combined themselves with the bug that was just fixed to make bootmgfw believe it was being booted from a raw removable disk (floppy). Because bootmgfw now correctly enumerates boot devices and detects the DVD/CDROM media, it could no longer 'find itself', believing it was on a floppy.
[BOOTLIB]: When failing to find a block device, keep going searching for more, instead of giving up (critical, because the CDROM FAT12 image is now device path #1, not #0).
[BOOTMGR]: Correctly use the right logical operator in EfiInitpGetDeviceNode to get the deepest-level media device node. We now get the CDROM node, not the raw node.
[CDMAKE]: Don't actually create an EFI/BOOT directory on the CDROM itself, but rather in the FAT12 image. Otherwise, this can confuse UEFI implementations to boot the boot manager off the raw CDROM, instead of the FAT12 image on the CDROM.

svn path=/trunk/; revision=70542
2016-01-08 01:18:08 +00:00
Alex Ionescu 79e72915d9 [BOOTLIB]: Fix a few subtle bugs which made us incorrectly believe that we were booting from a raw removable drive. We now correctly detect that we are booting off CDROM media. Of course, now everything else is hopelessly broken and we've regressed to die before we get anywhere. Progress.
svn path=/trunk/; revision=70540
2016-01-08 00:15:00 +00:00
Alex Ionescu e0df0d3663 [BOOTLIB]: ACPI support (RSDP, XSDT/RSDT and arbitrary table lookup + mapping)
[BOOTLIB]: Additional text and graphics console support. Among other things, we have now gained the ability to fill a buffer with a particular color.
[BOOTLIB]: OEM Bitmap (ACPI 5!) support.
[BOOTMGR]: Continue making a few more initialization calls now that bootlib supports more functionality.

svn path=/trunk/; revision=70539
2016-01-07 23:43:15 +00:00
Alex Ionescu 55ef8d7cd2 [ACPI.H]: Fix broken definition of RSDP_SIGNATURE
[ACPI.H]: Add BGRT_TABLE definition.

svn path=/trunk/; revision=70538
2016-01-07 23:25:49 +00:00
Pierre Schweitzer d31cc46a14 [ROSVBOXMGMT]
Update the registry configuration to reflect the recent changes to rosvboxmgmt.
Just uncomment the line matching the behavior you prefer.

CORE-10032
ROSAPPS-303

svn path=/trunk/; revision=70537
2016-01-07 22:44:33 +00:00
Pierre Schweitzer 5e903370dc [ROSVBOXMGMT]
Introduce another automagic thing. Instead of creating shortlinks once shared folders have been enumerated, just assign them a drive letter!
See it in action: https://twitter.com/HeisSpiter/status/685229912748371968

Choose the one you prefer for 0.4.0 :-)

CORE-10032
ROSAPPS-303

svn path=/trunk/; revision=70536
2016-01-07 22:43:00 +00:00
Hermès Bélusca-Maïto 63025d14ef [NTOS:PO]: Whitespace fixes only!
svn path=/trunk/; revision=70535
2016-01-07 20:00:05 +00:00
Pierre Schweitzer d5691eba70 [FDC]
Fix FdcPower() stub so that it doesn't leak IRP on shutdown
Dedicated to Thomas.

CORE-10117

svn path=/trunk/; revision=70531
2016-01-07 19:23:55 +00:00
Hermès Bélusca-Maïto 762e2a1af4 [SMSS]
- Reenable RTL_QUERY_REGISTRY_DELETE: the "PendingFileRenameOperations(2)" and "AllowProtectedRenames" registry values are deleted after being parsed: we don't retry at every reboot to remove/rename files that were already deleted/renamed.
- Remove superfluous parentheses.
- Warn a FIXME if SFC-protected file renames are allowed and we are processing file renames (the "protected file renames" stuff is unimplemented atm.)

svn path=/trunk/; revision=70530
2016-01-07 19:03:35 +00:00
Hermès Bélusca-Maïto ae0b31a24a [SMSS]
- Use CRT string functions to loop through multi-strings.
- Do not fail the full KnownDll setup if one dll fails to load. Instead, just properly skip the file (and related to that, fix a bug when skipping excluded known dll files).
- Page files should be created only when we are not in WinPE mode (aka. MiniNTBoot = FALSE).
- Formatting fix in smloop.c, no code change.

svn path=/trunk/; revision=70529
2016-01-07 16:57:05 +00:00
Hermès Bélusca-Maïto 8ec9b6100f [BOOTDATA]
- Add support for opening ICO, EMF, TIF and WMF files with the shell image viewer since it already implements what is needed (via gdiplus).
- Add some missing "Content Type" (MIME type) and "PerceivedType" values for the image extensions.

[SHIMGVW]
- Enable the resource strings for EMF, TIF and WMF files since we actually support them.

Should be merged for 0.4 branch.

svn path=/trunk/; revision=70528
2016-01-07 15:14:40 +00:00
Hermès Bélusca-Maïto b6c06cfb06 [SHELL32]: Nicely handle network drives in property dialog (and their icon). By Jared Smudde. To be synced for 0.4.0. CORE-10779
svn path=/trunk/; revision=70527
2016-01-07 14:04:07 +00:00
Hermès Bélusca-Maïto e28db0eef1 [USBEHCI]: Fix a wrong DPRINT string (caught by Thomas).
svn path=/trunk/; revision=70526
2016-01-07 13:44:20 +00:00
Hermès Bélusca-Maïto 4b3b08c1ca [BOOTDATA]: Fix encoding and broken french translation caused by r70375.
svn path=/trunk/; revision=70523
2016-01-07 13:31:46 +00:00
Aleksey Bragin d3d56d9cbc [LDR]
- Implement support for manifest prober routine in LdrpWalkImportDescriptor, in its simplest way
- Implement such routine in kernel32 (that's mostly a copy of Wine's create_module_activation_context which seems to nicely correspond to what Windows does).
- As create_module_activation_context is moved into kernel32, delete it from ntdll
- Improve debug output in RTL's Activation Context implementation to ease debugging
- Now, ReactOS indeed looks for and actually loads manifests when loading modules. Thanks to http://blog.tombowles.me.uk/2009/10/05/winsxs/ for a really good description of how activation contexts work
CORE-7313

svn path=/trunk/; revision=70522
2016-01-07 12:09:03 +00:00
Alex Ionescu b835d33a8c [BOOTLIB]: More debug print cleanups
[BOOTLIB]: Fix incorrect use of flag introduced a few revisions ago. This fixes <1MB RAM descriptors.
[BOOTLIB]: Enable BmFwMemoryInitialize, since it works now.
All (known) bugs are fixed, bootmgr is back on track.

svn path=/trunk/; revision=70516
2016-01-07 05:30:18 +00:00
Alex Ionescu 93d3cafa85 [BOOTLIB]: Cleanup some debug prints.
[BOOTLIB]: Fix two big device I/O bugs (it's a miracle it worked)
[BOOTLIB]: Use defined constants and comment some more device I/O code.

svn path=/trunk/; revision=70515
2016-01-07 05:14:26 +00:00
Alex Ionescu 69dbd65521 [BOOTLIB]: Add support for initializing the input console object.
[BOOTLIB]: Add a bunch more graphical console support functions.
[BOOTLIB]: Cleanup some older graphics-related code.
[BOOTLIB]: Support graphics re-initialization. We now correctly fallback to text mode since font loading is not implemented.

svn path=/trunk/; revision=70514
2016-01-07 04:28:13 +00:00
Hermès Bélusca-Maïto fc458c3371 [BOOTVID_FONGEN]
- Fix a comment;
- Less hardcoded values.

svn path=/trunk/; revision=70513
2016-01-07 01:23:51 +00:00
Hermès Bélusca-Maïto 4219c4eed0 [BOOTVID_FONT_GEN]
Improve the bootvid font generator of Colin (see r70507) in many ways:
- Allow the user to specify the font name (optional), and optionally a font size and x- and y-offset so that (s)he doesn't have to recompile the generator each time (s)he wants to test a new font.
- The default settings (in case the user doesn't specify all or part of the font definition) are those of Windows' bootvid font (i.e. "Lucida Console", font size 10, x_offset = y_offset = 0).
- Create only once the DC and the font handle (to be used for all the generated characters) instead of each time a character is being generated. I still keep the recreation of the HBITMAP for each character (I don't know if we can also improve there by creating it once and zeroing it out before generating each character).

svn path=/trunk/; revision=70512
2016-01-07 00:29:41 +00:00
Hermès Bélusca-Maïto 0f3e09ea77 [USB(E|O|U)HCI]: Handle failure cases of BuildTransferDescriptorChain. By contributor 'vgal'. This is needed for gracefully handling failure cases hit during diagnosing CORE-8046.
CORE-10776

svn path=/trunk/; revision=70511
2016-01-06 23:43:38 +00:00
Pierre Schweitzer b932a314ce [ROSVBOXMGMT]
Add a commented out way to automatically start `rosvboxmgmt auto' on start so that shortcuts for VBox shared folders are properly created.

This is to be enabled on 0.4.0.

CORE-10032
ROSAPPS-303 

svn path=/trunk/; revision=70510
2016-01-06 19:47:03 +00:00
Hermès Bélusca-Maïto f16214d4ed [BOOTVID]: CORE-10777 #comment Sync the Plan-9 font to ARM bootvid. Addendum to r70508.
svn path=/trunk/; revision=70509
2016-01-06 17:39:08 +00:00