20060114: First patchset implementation. * Syscall interface was changed: - original: int varsym_set(int, const char *, const char *); int varsym_get(int, const char *, char *, int); int varsym_list(int, char *, int, int *); + new: int varsym_set(int, const char*, const char*); int varsym_get(int, const char*, char*, int*); int varsym_list(int, char*, int*, int*); * removed message-related things (sysmsg_result and etc.); * changed jail checking (use jailed() instead of (*_prison != NULL)); 20060118: * varsym's structures declarations moved from shared to _KERNEL; * varsymset initialization for the proc0 moved from /sys/i386/i386/machdep.c into /sys/kern/kern_varsym.c (use SYSINIT macro); * some small changes.. 20060120: * changed behaviour of varsym's syscalls for a per-user varsyms in jail (jailed process can not change or read VARSYM_USER varsyms, because currently we have not own uidinfo for an jailed users); * some changes in syscalls (return values); * removed from _KERNEL section unneeded functions; 20060121: * added new option -j to varsym(1) (set or read varsym's for specified jail); * changed -u option of varsym(1) (root can set/read varsyms of specified user); * changed behaviour of varsym(1) (in jail user can't set/read per-user varsyms) 20060122: * removed useless -p option from varsym(1) 20060124: * unbreak buildworld (move structures declaration back, needed for some userlevel programs and libs. Thanks to David Quattlebaum for the report) 20060125: * fix: include src/bin/Makefile diff into patch (Thanks to David Quattlebaum for the report) 20060216: (From David Quattlebaum and John DeBoskey) * new options added to varsym(1). * new "per parent process" basis, now we can set varsym's for parent process (e.g. for shell). 20060307: * fix WITNESS warning in fork1.