Subject: Re: sysv ps(1) implementation [was: ps(1) sysv silliness]
To: Greywolf <greywolf@starwolf.com>
From: Andrew Brown <atatat@atatdot.net>
List: tech-userlevel
Date: 06/09/2000 14:52:10
>[mkdir/mknod not; i remember now it was that mkdir had to be setuid
> because the _rename_ call hadn't been implemented yet, that was it!
> so mkdir was, more or less (modulo GC and error checking)
>
> char *cp;
> mkdir(path);
> link(path, cp = strspl(path, "/."));
> link(getcwd(), cp = strspl(path, "/.."));
i'm sure someone will correct if i'm wrong, but wasn't it more like
system("mkdir path"); /* with some sprintf() magic */
chown(getuid(), path);
chgrp(getgid(), path);
because mkdir (the program) actually did
char *cp;
mknod(path, 0777, however_you_describe_a_directory);
link(path, cp = strspl(path, "/."));
link(getcwd(), cp = strspl(path, "/.."));
since mknod was used to make directories and was limited to use by
root processes?
ps - what's strspl()?
--
|-----< "CODE WARRIOR" >-----|
codewarrior@daemon.org * "ah! i see you have the internet
twofsonet@graffiti.com (Andrew Brown) that goes *ping*!"
andrew@crossbar.com * "information is power -- share the wealth."