Commit Graph
87910 Commits
Author SHA1 Message Date
Hervé Poussineau 5bfaecdab0 [E1000] Mark register bits as unsigned 2025-11-09 09:06:39 +01:00
Daniel Victor 9decadee83 [FREELDR] Adapt bootsectors and multiboot code for future base address change (#7785)
See also PRs #8439 and #7530.
CORE-19882
2025-11-08 20:40:01 +01:00
Eric Kohl 0362651eb8 [NETSH] Fix a type in the interpreter 2025-11-08 20:32:53 +01:00
Eric Kohl 3398506341 [NETSH] Implement alias, unalias and show alias commands
Alias processing in the command interpreter is not implemented yet.
2025-11-08 18:58:49 +01:00
Eric Kohl 97232454a5 [NETSH] Improve error message output 2025-11-08 18:26:11 +01:00
Serge Gautherie 239417296e [APPHELP] Sdb*DatabaseInformation*(): 2 minor tweaks (#8364)
Addendum to commit 0d11eb1e23.

- s/LPCTSTR/LPCWSTR/
- Fix comment indentation.
2025-11-08 18:19:40 +01:00
Matisse Rüdiger f0e888abb1 [NOTEPAD] Fix weird dot (colon) in French (fr-FR) translation of save box (#8252)
CORE-19803
2025-11-08 17:20:58 +01:00
Eric Kohl 500dcd3da5 [NETSH] Call a contexts connect function on a context change 2025-11-08 16:31:41 +01:00
Hermès Bélusca-Maïto 24e88af972 [VIDEOPRT][DDK] services.c: Reformat; update/fix SAL annotations (#8450)
NOTA: 2nd parameter `AgpServices` of `VideoPortGetAgpServices()` is
documented as "In", but should be "Out" as it receives information.
2025-11-06 22:36:42 +01:00
Hermès Bélusca-Maïto 267e3d8cf0 [VIDEOPRT] Improve IntAttachToCSRSS/IntDetachFromCSRSS() prototypes (#8449)
- Make `IntAttachToCSRSS()` return a BOOLEAN to distinguish calls made
  prior to `CsrProcess` being initialized.

- Adjust the callers of `IntAttachToCSRSS()` and make them returning a
  proper error value if attaching failed (if `CsrProcess == NULL`).

- Make `IntDetachFromCSRSS()` just take a `PKPROCESS` parameter instead a
  pointer to `PKPROCESS` -- the function won't need to modify its value.
  Adjust its callers to reflect the change.
2025-11-06 22:32:09 +01:00
Hermès Bélusca-Maïto a912f8900c [PSDK] Improve the DECLSPEC_NOINITALL definition (#8438)
Addendum to commit 73b54ce2a6.

Conditionally define it on the `_MSC_VER >= 1915, and add the other
`MIDL_PASS` and co. guard checks as in the official Windows PSDK.

Additionally, no-op the define for Clang to silence the following
warnings:
```
sdk\include\ddk\ntddk.h(2050,35): warning: __declspec attribute 'no_init_all' is not supported [-Wignored-attributes]
sdk\include\psdk\ntdef.h(40,95): note: expanded from macro 'DECLSPEC_NOINITALL'
```
Granted, this may be due to the fact our GitHub actions currently use
Clang 13.0.1:
```
-- The C compiler identification is Clang 13.0.1 with MSVC-like command-line
-- The CXX compiler identification is Clang 13.0.1 with MSVC-like command-line
```
while support for `no_init_all` may have been added for Clang 22.0.0,
if https://clang.llvm.org/docs/AttributeReference.html#no-init-all is correct.
(See PR https://github.com/llvm/llvm-project/pull/116847 )
2025-11-06 21:53:25 +01:00
Adam Słaboń 3000d45250 [NETKVM] Reduce log level and default to 10 Gbit/s connection (#8448)
Reduces debug spam and maybe improves network throughput a bit.

CORE-15841
2025-11-05 13:20:36 +03:00
Dmitry Borisov 19df2e65ff [INF] Add support for the NEC Star Alpha C-bus bridge device (#8446)
This device is present in some PC-98 models without C-bus slots
and has a SubClass ID of 0x80 (other bridge) instead of 0x01 (ISA bridge),
thus a critical device database entry is required.

00:06.0 Bridge [0680]: NEC Corporation Star Alpha 2 [1033:002c] (rev 01)
    Subsystem: Unknown [0000:0000]
    Flags: bus master, medium devsel, latency 0

Addendum to commit 84fabd819d.

CORE-17977
2025-11-05 12:48:41 +03:00
Eric Kohl 416c3a5efa [IFMON] Improve usage texts 2025-11-04 23:16:28 +01:00
Eric Kohl feb9ba9a7f [NETSH] Implement and use the PrintError function 2025-11-04 22:33:19 +01:00
Hermès Bélusca-Maïto 2a9a0d0438 [NTOS:CONFIG] CmpInitializeMachineDependentConfiguration(): Add missing OBJ_KERNEL_HANDLE (#8445) 2025-11-04 19:52:53 +01:00
Hermès Bélusca-Maïto 824a51e303 [VIDEOPRT] Minor maintenance for IntVideoPortGetProcAddress() (#8444)
- SAL-ify `IntVideoPortGetProcAddress()`. Sadly its 2nd parameter needs
  to stay `PUCHAR` to comply with the `PVIDEO_PORT_GET_PROC_ADDRESS` type.

- Append `VideoPortQuerySystemTime` to the array of exports (Vista+ compatibility).

Note that probably because of a copy-pasta error, Windows' VideoPrt
duplicates the `VideoPortMapDmaMemory` entry in between those of
`VideoPortFreeCommonBuffer` and `VideoPortReleaseBuffer`.
2025-11-04 19:50:23 +01:00
Mikhail Tyukin 44931d742b [VIDEOPRT] Fix incorrect return status (#8433)
IntVideoPortMapMemory incorrectly returned a successful result if it
failed to map video memory. This caused a bugcheck when using VirtualBox
with Guest Additions with more than 128MB of VRAM assigned to VM.

- Return ERROR_NOT_ENOUGH_MEMORY instead of NO_ERROR
  when mapping memory fails.
- Also add debug logging to help troubleshoot when MmMapIoSpace fails.

https://learn.microsoft.com/en-us/windows-hardware/drivers/ddi/video/nf-video-videoportmapmemory#return-value

This fixes the crash, however the desktop does not render correctly.
Using videoprt.sys from Windows XP still results in the same behavior.

CORE-12130
2025-11-04 13:30:12 +03:00
Hermès Bélusca-Maïto 106dbed40d [BOOT] Actually add the remastering scripts in the ISOs
Addendum to commit fdc4272b1a (#4988)
CORE-8872
2025-11-03 20:22:42 +01:00
Hermès Bélusca-Maïto fdc4272b1a [BOOT] Add an ISO remastering script (#4988)
CORE-8872

This is useful in the context of e.g. 3rd-party testers who want to
quickly add/remove/modify any file in a ReactOS ISO image and remastering
it without the need of our whole build environment.

remaster.cmd: Batch script.
remaster.sh : Almost-POSIX-compatible shell script version.
2025-11-03 20:08:39 +01:00
Hermès Bélusca-Maïto 6dd82ad146 [BOOT] Add the ISOMBR boot sector file in the ISO images (#4988)
This completes our set of provided boot sectors offered in the
ReactOS ISOs that can help for remastering those without our whole
build environment.
2025-11-03 20:06:48 +01:00
Justin MillerandStanislav Motylkov 18f9a03338 [PCIX] Fix a few easy bugs (#8443)
* [PCIX] Fix the weird text corruption in PciGetDescriptionMessage

* [PCIX] Return the buffer to the caller PciQueryBusInformation


Co-authored-by: Stanislav Motylkov <[email protected]>
2025-11-03 10:52:19 -08:00
3fe5b8b0bb [SDK][WDF][USBDEX][NTOSKRNL_VISTA] Fully enable KMDF (#8396)
[SDK][WDFLDR] Add kmdf loader driver
[SDK][WDF] Add kmdf drver init static library
[SDK][WDF] Modify kmdf driver for working with wdfldr driver
[SDK][CDROM] Cdrom driver dynamically linking with kmdf
[SDK][WDF] Add kmdfdriver module type
[SDK][WDF][USBDEX][NTOSKRNL_VISTA] Fully enable KMDF
[KMDF][WDFLDR][WDF01000] Fix Windows 10 Compatibility WDFLDR and WDF01000
[WDF01000] NO_KERNEL_LIST_ENTRY_CHECKS for wdf01000 3rd party code

This PR is an accumulation of three peoples work, with the goal of the trying to get WDF to work like it should.
This has been tested in combination with some extra NT6+ ntoskrnl against multiple drivers.

---------

Co-authored-by: Max Korostil <[email protected]>
Co-authored-by: Victor Perevertkin <[email protected]>
Co-authored-by: Adam Słaboń <[email protected]>
Co-authored-by: Hermès BÉLUSCA - MAÏTO <[email protected]>
2025-11-03 06:38:52 -08:00
Eric Kohl 420799228d [NETSH] Implement the -r (remote) option and set machine command
Also:
- Start all usage texts with a newline.
- Add some error messages.
- Fix a bug in the command interpreter.
2025-11-02 22:37:16 +01:00
Eric Kohl 4ad647fb5c [NETSH] Improvements to the command line evaluation and the command interpreter
- Interpreter functions return error code instead of boolean
2025-11-02 13:51:02 +01:00
Timo Kreuzer de5f284ae3 [HALX86] Fix x86BiosCall
Properly initialize the segment registers by calling Fast486SetSegment. Fixes graphics initialization on some hardware.
2025-11-02 14:46:54 +02:00
Timo Kreuzer 6b0ac35393 [HALx86] Fix annotations for x86BiosAllocateBuffer 2025-11-02 14:46:54 +02:00
Eric Kohl 20eee6d362 [NETSH] Support the -c (context) command line option 2025-11-01 21:30:08 +01:00
Eric Kohl 2e7a1768fb [NETSH] Implement the offline, online and related commands 2025-11-01 18:49:44 +01:00
Carl J. Bialorucki 773206851a [SHLWAPI_WINETEST] Sync to wine-10.0 (#8303)
- [SHLWAPI_WINETEST] Sync to wine-10.0
2025-10-29 14:10:07 -05:00
Eric Kohl 3e3f58324b [NETAPI32] Revert workaround for union _WKSTA_USER_INFO
Addendum to f2f057c0a1
2025-10-28 21:52:48 +01:00
Eric Kohl f2f057c0a1 [NETAPI32][WKSSVC][IDL] Revert workaround for union _WKSTA_USER_INFO
After fixing the union issue in the RPC runtime, revert all workarounds one by one.

Return to the original declaration of union _WKSTA_USER_INFO and fix NetrWkstaUserGetInfo.
2025-10-28 21:26:53 +01:00
Eric Kohl 5b5b1a2bbf [NETAPI32][WKSSVC][IDL] Revert workaround for union _WKSTA_INFO
After fixing the union issue in the RPC runtime, revert all workarounds one by one.

Return to the original declaration of union _WKSTA_INFO and fix NetrWkstaGetInfo
and NetrWkstaSetInfo.
2025-10-27 22:46:39 +01:00
Petru Răzvan 69ddd4e74b [WINESYNC][COMCTL32] Fix Exception in PROPSHEET_DoCommand (#7943)
CORE-20036

Import Wine commit:
comctl32: Avoid segfault in PROPSHEET_DoCommand when psInfo is NULL.
wine commit id affd5177bba907a015d1c6fc8ac9970731125268 by Yuri Hérouard <[email protected]>
2025-10-26 18:53:59 +01:00
Hermès Bélusca-Maïto df49026976 [NETWORK:NE2000] Move the NDIS_* defines to the CMakeFiles.txt 2025-10-26 18:23:54 +01:00
Serge Gautherie 5b1224b8a3 [NETWORK:DD][NDIS] Be explicit about NDIS_LEGACY_MINIPORT value (#8315)
Also, NDIS_LEGACY_DRIVER and NDIS_LEGACY_PROTOCOL.
2025-10-26 18:23:53 +01:00
Serge Gautherie 04f052bec8 [NETWORK:DD] NDIS_MINIPORT_DRIVER and NDIS51_MINIPORT do not need a value (#8315) 2025-10-26 18:23:48 +01:00
Eric Kohl 4a3bf41abb [NETCFGX][REACTOS] Add missing INetCfgComponentPrivate interface declaration 2025-10-26 18:21:10 +01:00
Serge Gautherie ca2fb5f666 [NDIS] NdisRegisterProtocol(): Add a comment about NDIS51 (#8314)
CORE-20300

- `NdisRegisterProtocol()`: Add a comment about `NDIS51`: the
  `NDIS50_PROTOCOL_CHARACTERISTICS` structure is common to both
  NDIS 5.0 and 5.1.
  This is in contrast to the `NDIS50/NDIS51_MINIPORT_CHARACTERISTICS`
  structures, see for example commit 3e169e3cb2 (r49961).

- Remove obsolete SOURCES file. Addendum to commit d9e83ed22d (r40142).
2025-10-26 17:28:51 +01:00
Serge Gautherie dd00ebdd51 [PCNET] CMakeLists.txt: Remove superseded -DNDIS50_MINIPORT (#8313)
Addendum to commit 74015adb69 (r20671).
CORE-20300
2025-10-26 17:17:07 +01:00
Serge Gautherie d1b1292429 [FMIFS][FORMAT][SDK] Improve/Fix QueryDeviceInformation() and related code (#7475)
- FMIFS: QueryDeviceInformation(): Use more specific types and improve documentation.
  Follow-up to commit 4838d7bd56.

- FORMAT: wmain():
  * Zero the correct variable. Addendum to commit c5a9f22d4e.
  * No need to zero the whole volumeName array. Follow-up to commit 358fecdcf0.
2025-10-26 16:42:01 +01:00
Eric Kohl 59afe4b0a2 [NETCFGX][UUID] Add private interface used by WinXPs ifmon.dll
When I loaded WinXPs ifmon.dll into our netsh.exe and ran the 'interface ip show address'
command ifmon tried to query an unknown interface. Google found a name for the GUID:
INetCfgComponentPrivate.
I implemented the three standard methods of the interface and ran some more tests.
After adding a 4th method with tree parameters to the interface, there are no more
failures.
2025-10-26 16:36:55 +01:00
Eric Kohl d6db7fb409 [RPCRT4] Fix buffer size calculation bug when unions of pointers are used in RPC interfaces
The size of the transfer buffer was always too small when a parameter of a
function was a pointer to a union of pointers. The buffer size calculation
function for the union only returned the size of the data the the pointer
in the union pointed to, omitting the size of the data for the union itself.
This caused a buffer overrun in the following marshal step which makes the
RPC call fail.

This fix will enable us to remove some workarounds in our RPC interfaces.
2025-10-26 11:55:34 +01:00
Eric Kohl d1f54aa5f7 [IFMON] combine the 'pushd' and context change commands in the dump output 2025-10-20 21:14:26 +02:00
Hermès Bélusca-Maïto c7d4040767 [FREELDR] ArcGetFileInformation(): Set Information->FileName, Length, and Attributes for filesystems (#8420)
CORE-9023

Add support for all the supported filesystems: FAT/FATX, NTFS,
ISO, EXT, BTRFS, as well as for files loaded via PXE.

arc.h:
- Add `FILEATTRIBUTES` enumeration;
- Remove non-existing `CreateReadOnly` and `SupersedeReadOnly`
  `OPENMODE` values; add missing `CreateReadWrite`.
2025-10-19 22:38:30 +02:00
Hermès Bélusca-Maïto eec9ca1305 [FREELDR] fs.c: Fix path device name lookup
Suppose the list of devices contains, for example listed in this order:

  `multi(0)disk(0)rdisk(0)partition(1)`,
followed by:
  `multi(0)disk(0)rdisk(0)`,

then if someone attempts to open `multi(0)disk(0)rdisk(0)`, the code
would erroneously open `multi(0)disk(0)rdisk(0)partition(1)` instead.

Device name lookup now verifies that the device name being tested has
the same length as the one being opened.

Noticed by user "Xen", see:
https://reactos.org/forum/viewtopic.php?p=144840#p144840
> Wrong name comparison in ArcOpen (can open "device()partition()"
> instead of "device()" that was really requested)
2025-10-19 21:23:12 +02:00
Hermès Bélusca-Maïto ad10c08b3d [SCSIPORT] Fix "Targed" typo 2025-10-19 17:13:51 +02:00
Hermès Bélusca-Maïto b51789c28d [FREELDR] scsiport.c: Set the Information->Type field (#8418)
CORE-9023

And more accurately detect and report disks:
using `InquiryBuffer.DeviceType`, differentiate between "rigid" disks,
floppy disks, and CD-ROM drives.
2025-10-19 17:13:50 +02:00
Hermès Bélusca-Maïto 246f2d29db [FREELDR] ArcGetFileInformation(): Set the Information->Type field for devices (#8418)
CORE-9023

Some of this determination is platform-specific (e.g. BIOS-based PC vs.
NEC PC-98 vs. Xbox), and is done in a per-platform `DiskGetConfigType()`
routine.
This routine is then invoked by `hwdisk.c!DiskOpen()` and `PcInitializeBootDevices()`.
2025-10-19 17:13:49 +02:00
Hermès Bélusca-Maïto e969fbeea8 [UDFS] Add missing NTAPI for PIO_APC_ROUTINE (#8417) 2025-10-19 17:11:55 +02:00