ref: f69f735ebcf41200cc3817019a862a8d7bd76961
parent: 746e0c9217ab9ee1884b721a955b712d59b13549
author: halfwit <michaelmisch1985@gmail.com>
date: Sun Nov 30 16:26:12 EST 2025
Last few changes for a mostly working rc
--- a/kern/chan.c
+++ b/kern/chan.c
@@ -1466,7 +1466,9 @@
c = cnew;
c->path = addelem(c->path, e.elems[e.nelems-1], nil);
break;
- }
+ } else
+ poperror();
+
/* create failed */
putmhead(m);
--- a/kern/stub.c
+++ b/kern/stub.c
@@ -31,19 +31,14 @@
long
hostdomainwrite(char *a, int n)
{- USED(a);
- USED(n);
- error(Eperm);
- return 0;
+
+ return (long)setdomainname(a, n);
}
long
hostownerwrite(char *a, int n)
{- USED(a);
- USED(n);
- error(Eperm);
- return 0;
+ return (long)sethostname(a, n);
}
void
@@ -60,7 +55,7 @@
USED(tag);
}
-/* TODO: We may want notes */
+/* TODO: We need this very soon */
int
postnote(Proc *p, int x, char *msg, int flag)
{--- a/kern/syscall.c
+++ b/kern/syscall.c
@@ -458,7 +458,7 @@
newfd = arg(1);
if(debug)
print("sysdup\n");- up->R[0] = noteerr(dup2(oldfd, newfd), 0);
+ up->R[0] = noteerr(dup(oldfd, newfd), 0);
}
static void
--- a/kern/sysproc.c
+++ b/kern/sysproc.c
@@ -550,10 +550,10 @@
poperror();
if(flag & (RFFDG|RFCFDG)) {- if(flag & RFFDG)
- p->fgrp = dupfgrp(up->fgrp);
- else
+ if(flag & RFCFDG)
p->fgrp = dupfgrp(nil);
+ else
+ p->fgrp = dupfgrp(up->fgrp);
}
else {p->fgrp = up->fgrp;
--- a/main.c
+++ b/main.c
@@ -74,6 +74,12 @@
if((fd = create("/env/nvram", ORDWR, 0666)) < 0) panic("open env/nvram: %r");fprint(fd, "%s", nvram);
+ close(fd);
+
+ // We need to set our actual nvlen
+ if((fd = open(nvram, OREAD)) < 0)
+ panic("open %d: %r", nvram);+
nvrlen = seek(fd, 0, SEEK_END);
close(fd);
@@ -87,7 +93,6 @@
fprint(fd, "%d", nvrlen);
close(fd);
-
if((fd = create("/env/cputype", ORDWR, 0666)) < 0) panic("open env/cputype: %r");fprint(fd, "arm");
@@ -187,10 +192,6 @@
}
envinit(nvram);
- //if(authsrv){- // if((fd = create("")))- //}
-
if(open("/dev/cons", OREAD) != 0) panic("open0: %r"); if(open("/dev/cons", OWRITE) != 1)--
⑨