Squash commits for public release

This commit is contained in:
2025-02-12 09:54:05 -05:00
commit 7118adc514
1108 changed files with 80873 additions and 0 deletions

View File

@@ -0,0 +1,8 @@
import("//build/test/TEMPLATE.gni")
xOS_test("dup") {
test_bundle = "kernel/fs/dup"
sources = [ "main.c" ]
configs = [ "//build/userland:userland_flags" ]
deplibs = [ "libc" ]
}

40
test/kernel/fs/dup/main.c Normal file
View File

@@ -0,0 +1,40 @@
#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/stat.h>
#include <unistd.h>
int main(int argc, char** argv)
{
int fd = -1;
fd = open("/boot/kernel.config", O_RDONLY);
if (fd < 0) {
TestErr("Can't open kernel.config");
}
int dupfd = dup(fd);
if (dupfd < 0) {
TestErr("Can't dup file");
}
int err = write(dupfd, "abcd", 5);
if (!err) {
TestErr("Succesfully write to read only file");
}
stat_t stat;
if (fstat(fd, &stat) < 0) {
TestErr("Can't read fstat of orig file");
}
stat_t newstat;
if (fstat(dupfd, &newstat) < 0) {
TestErr("Can't read fstat of dup file");
}
if (memcmp(&stat, &newstat, sizeof(stat_t)) != 0) {
TestErr("Different stat info of files");
}
return 0;
}