add ntfs.sys standalone driver target, change default usb vhd layout formatting to ntfs, implement Fat32CreateDir for directory creation support in the fat32 file system driver, add a dedicated HAL serial output endpoint for COM1 writes in hal_serial.c and subscribe serial to HAL text streams, introduce waitable kernel timers with KeTimerCreate, KeTimerSet, and KeTimerCancel alongside spinlock-protected global timer list initialization and scheduler tick tracking, implement SyscallWriteFileAsync system call for asynchronous non-blocking file writes, refactor NetSocketConnect and NetSocketSendTo to use generic SYS_SOCKET_ADDRESS_K structures instead of being hardcoded to IPv4, update gethostbyname and DNS name resolution to support IPv6 parsing via ResolveNameFamily, update tcpserve.exe with -4 and -6 command-line flags to accept and display IPv6 addresses, append size and version headers to all kernel telemetry and statistics structures including SYS_PMM_STATS, SYS_CPU_STATS, and SYS_SCHEDULER_STATS, update winmm timeGetTime to look up high-resolution hardware frequencies via SysGetTickFrequency, integrate 14 native smoke test applications.
This commit is contained in:
1 parent
2c4a68a75f
commit
ed3d065abd
156 files changed
+10509
-2643
No files matched your search
@@ -70,17 +70,21 @@ static uint32_t open_first_existing(uint32_t* fileOut, const char** pathOut) {
|
||||
|
||||
for (size_t i = 0; i < sizeof(candidates) / sizeof(candidates[0]); ++i) {
|
||||
uint32_t file = 0;
|
||||
SYS_PATH_HANDLE_REQUEST openReq = { SysSvFromCstr(candidates[i]), &file };
|
||||
SYS_OPEN_FILE_REQUEST openReq = SysMakeOpenFileRequest(SysSvFromCstr(candidates[i]),
|
||||
SYS_FILE_ACCESS_READ | SYS_FILE_ACCESS_QUERY,
|
||||
SYS_FILE_OPEN_EXISTING,
|
||||
SYS_FILE_FLAG_NONE,
|
||||
&file);
|
||||
uint32_t s = SysOpenFile(&openReq);
|
||||
if (s == SYS_STATUS_SUCCESS) {
|
||||
if (s == STATUS_SUCCESS) {
|
||||
*fileOut = file;
|
||||
if (pathOut)
|
||||
*pathOut = candidates[i];
|
||||
return SYS_STATUS_SUCCESS;
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
}
|
||||
|
||||
return SYS_STATUS_NOT_FOUND;
|
||||
return STATUS_NOT_FOUND;
|
||||
}
|
||||
|
||||
int main(void) {
|
||||
@@ -89,7 +93,7 @@ int main(void) {
|
||||
uint32_t file = 0;
|
||||
const char* openedPath = 0;
|
||||
uint32_t s = open_first_existing(&file, &openedPath);
|
||||
if (s != SYS_STATUS_SUCCESS)
|
||||
if (s != STATUS_SUCCESS)
|
||||
fail_status("open test file", s);
|
||||
|
||||
print("mmap_smoke: using ");
|
||||
@@ -101,7 +105,7 @@ int main(void) {
|
||||
|
||||
SYS_FILE_IO_REQUEST ioReq = SysMakeFileIoRequest(file, gExpected, sizeof(gExpected), &got);
|
||||
s = SysReadFile(&ioReq);
|
||||
if (s != SYS_STATUS_SUCCESS)
|
||||
if (s != STATUS_SUCCESS)
|
||||
fail_status("read baseline", s);
|
||||
if (got < 64)
|
||||
fail_msg("baseline read was unexpectedly short");
|
||||
@@ -114,7 +118,7 @@ int main(void) {
|
||||
SYS_MAP_FLAG_NONE,
|
||||
sizeof(gExpected),
|
||||
&mapping);
|
||||
if (s != SYS_STATUS_SUCCESS)
|
||||
if (s != STATUS_SUCCESS)
|
||||
fail_status("create file mapping", s);
|
||||
|
||||
print("mmap_smoke: mapping created\n");
|
||||
@@ -137,7 +141,7 @@ int main(void) {
|
||||
SysCloseHandle(mapping);
|
||||
mapping = 0;
|
||||
|
||||
if (s != SYS_STATUS_SUCCESS)
|
||||
if (s != STATUS_SUCCESS)
|
||||
fail_status("map file view", s);
|
||||
if (!base)
|
||||
fail_msg("map returned null base");
|
||||
@@ -187,7 +191,7 @@ int main(void) {
|
||||
print("mmap_smoke: EOF fill OK\n");
|
||||
|
||||
s = SysFreeVm(base);
|
||||
if (s != SYS_STATUS_SUCCESS)
|
||||
if (s != STATUS_SUCCESS)
|
||||
fail_status("unmap", s);
|
||||
|
||||
print("mmap_smoke: PASS\n");
|
||||
|
||||
Reference in new issue
Block a user