Commit Graph

1562 Commits

Author SHA1 Message Date
thorpej cf89ccf13e Add uipc_ctloutput(). 1998-01-07 22:50:42 +00:00
thorpej b981fc4d34 Fix bug in recvit() that would cause recvmsg() to only receive one
control message, even if there were multiple control messages on
the queue.  From Jean-Luc Richier <Jean-Luc.Richier@imag.fr>, in
bug report kern/4700.
1998-01-07 05:49:25 +00:00
thorpej e918c058f1 Fix passing of multiple file descriptors (was broken when code was made
64-bit safe).
1998-01-07 04:03:38 +00:00
thorpej 974b59d07c Happy new year! 1998-01-07 00:41:43 +00:00
thorpej 052b639ac1 Clean up the forking of init and the pagedaemon slightly: call fork1()
directly (which provides a pointer to the new process).
1998-01-06 21:18:00 +00:00
thorpej 07216d15fc Allow retval to be NULL, filling it in only if it was passed. 1998-01-06 21:15:41 +00:00
thorpej c2768af3d4 Garbage-collect cpu_set_init_frame(); it hasn't been needed for some time
now.
1998-01-06 08:06:45 +00:00
perry 3a47434df3 regened with RCSIDs in place 1998-01-05 19:14:39 +00:00
perry 02e9346e57 fix RCS ids insertion so it really works 1998-01-05 19:13:04 +00:00
perry 9b0894473d make script insert RCS ids into generated files 1998-01-05 18:45:02 +00:00
perry 8309b37a61 ugh. escape rcs tags so that the script doesn't get messed up. 1998-01-05 18:19:35 +00:00
perry 4dc846816b put RCS ids in the output files. Not essential, but useful. 1998-01-05 18:09:44 +00:00
perry a69b5af889 regened with RCSID 1998-01-05 18:06:27 +00:00
thorpej 2e85747e9e From 4.4BSD-Lite2 (noted by Frank van der Linden):
so_linger is used as an argument to tsleep(), so was stuffed with
clockticks for the TCP linger time.  However, so_linger is set directly from
l_linger if the linger time is specified, and l_linger is seconds (although
this is not currently documented anywhere).  Fix this to set the TCP
linger time in seconds, and multiply so_linger by hz when tsleep() is
called to actually perform the linger.
1998-01-05 09:12:29 +00:00
thorpej ce340c6ca5 Also pass fork1() a struct proc **, in case the caller wants a pointer
to the newly created process.
1998-01-05 05:16:26 +00:00
thorpej 5703397593 Initialize proc0's file descriptor table with fdinit1(). 1998-01-05 04:52:48 +00:00
thorpej 6382d6dd79 Implement file descriptor table sharing. Partially from FreeBSD. 1998-01-05 04:51:15 +00:00
thorpej 740f872797 New vfork(2) implementation, whith semantics matching those of the original
3BSD vfork(2), i.e. share address space w/ parent and block parent.

Keep statistics on the total number of forks, the number of forks that
block the parent, and the number of forks that share the address space
with the parent.
1998-01-04 03:52:02 +00:00
thorpej 43677af399 Regen: add __vfork14() at #282. 1998-01-04 03:47:05 +00:00
thorpej d36ffe9822 Add __vfork14() system call at #282. 1998-01-04 03:45:21 +00:00
thorpej 36780f9243 Make shmexit() and shmfork() take struct vmspace *'s, not struct proc *'s,
and update internal interfaces appropriately.
1998-01-03 02:50:32 +00:00
thorpej b1cf620cfe Update for additional argument to vm_fork() ("shared" boolean). 1998-01-03 02:49:30 +00:00
thorpej bb2d5987ff Don't call shmexit() if the vmspace ref count is not 1. Update for new
argument to shmexit().
1998-01-03 02:48:43 +00:00
enami 74a36a05ae No longer needs to include sys/shm.h. 1998-01-01 02:43:18 +00:00
thorpej a322314f51 Split out the code that prepares a VM space for exec into a new
vmspace_exec() function.
1997-12-31 07:47:41 +00:00
thorpej d3eaf8a978 Rearrange disk_detach() slightly, and make a small run-time cosmetic
change in disk_unbusy().
1997-12-30 09:51:24 +00:00
kleink 087ac96d12 Update to last commit: do not pass the accounting flag to suser(), since the call does not actually *use* super-user privileges. Pointed out by Charles. 1997-12-21 18:50:57 +00:00
kleink aa4d1febf1 Due to the feedback received, change chown(), fchown() and lchown() not to
clear the setgid and setuid bits if called by the superuser.  Addresses
PR kern/4662.
1997-12-21 17:49:18 +00:00
pk 327c0046f9 Memory pool resource utility. 1997-12-15 11:14:57 +00:00
drochner a9006ce5b9 Make ttyblock() work as intended and documented in canonical mode.
(operator precedence problem)
closes PR kern/2131 (Matthias Pfaller)
1997-12-12 12:49:40 +00:00
tv 0a558b3f1f Standardize COMPAT_SUNOS -- remove all references to
sunos_exec_aout_makecmds() in machdep.c for various architectures and put
it in exec_conf.c like the other emulations; rename exec.h to
sunos_exec.h.
1997-12-04 15:33:17 +00:00
kleink 5f6a03cb5b Regen. 1997-11-29 18:43:25 +00:00
kleink 5d7a8f4a16 Modify the recent sigaltstack() interface change to use the __RENAME() scheme;
add __sigaltstack14().
1997-11-29 18:38:20 +00:00
kleink 08ca830d3b Regen again to reflect correct syscalls.master version. 1997-11-25 21:10:48 +00:00
kleink ef0caa8755 Regen. 1997-11-25 19:40:52 +00:00
kleink a255f23ee3 In XPG4.2, the ss_size member of type stack_t (struct sigaltstack) is specified
to be of type size_t; since this imposes an interface change on the Alpha
(sizeof(int) != sizeof(size_t)), allocate a new system call number and make
the previous version a compatibility system call.
1997-11-25 19:32:15 +00:00
kleink 96dd101e9b Add compat_13. 1997-11-25 19:02:50 +00:00
thorpej e78682a0e2 In m_split(), restore m_pkthdr.len if an error occurs. From Koji Imada,
PR #3986.
1997-11-20 04:28:18 +00:00
ross 3877611a5c Put it back the way it was. 1997-11-17 00:59:56 +00:00
ross 42046e9698 A new kprintf was imported on 10/24, and it will cause a kernel panic
whenever the %: format is used on NetBSD/Alpha. Disable %: for __alpha__.
Note: the "correct" (but untested on other architectures) fix is to
change the wrong: kprintf(cp, oflags, tp, NULL, va_arg(ap, va_list));
    to the right: kprintf(cp, oflags, tp, NULL, ap);
1997-11-15 09:27:33 +00:00
mycroft 402ecc3fed Clean up code from last commit. 1997-11-10 08:26:09 +00:00
thorpej e51d1d566c Regen - syscalls.master changed. 1997-11-04 21:26:18 +00:00
thorpej 97d2a58201 Fix slight argument bogosity with getgroups(), setgroups(), select(),
and swapctl().  For the former three, they use an 'int' in their user-land
prototype which was a 'u_int' in the kernel, which screwed up automatic
generation/checking of lint syscall stubs.  For the latter, the user-land
prototype uses a "const char *", but the syscall just used "char *".

From Chris Demetriou <cgd@pa.dec.com>.
1997-11-04 21:24:14 +00:00
gwr d68fdf7187 Oops... That was meant for the head. 1997-11-04 20:45:22 +00:00
mjacob 91ea08e3cf relocate where scsi devices are 1997-11-02 22:44:42 +00:00
enami 4589c896eb Conditionalize the recognition of symbolic link permission by
per fs mount option `symperm'.
1997-10-30 22:47:06 +00:00
thorpej 3569d48361 defopt UCONSOLE 1997-10-28 01:53:50 +00:00
chuck 94fa91f862 import chris torek's vfprintf() from libc [renamed to kprintf and all
floating point stuff removed].

the new kprintf replaces the 3 different (and buggy) versions of
printf that were in the kernel before (kprintf, sprintf, and db_printf),
thus reducing duplicated code by 2/3's.   this fixes (or adds) several
printf formats.  examples:
 %#x   - previously only supported by db_printf [not printf/sprintf]
 %8.8s - printf would print "000chuck" for "chuck" before
 %5p   - printf would print "0x    1" for value 1 before

XXX: new kprintf still supports several non-standard '%' formats that
are supposed to eventually be removed:
  %: - passes an additional format string and argument list recursively
  %b - used to decode error registers
  %r - int, but print in radix "db_radix" [DDB only]
  %z - 'signed hex' [DDB only]
  %n - unsigned int, but print in radix "db_radix" [DDB only]

note that DDB's "%n" conflicts with standard "%n" which takes the
number of characters written so far and stores it into the integer
indicated by the "int *" pointer arg.  yuck!

while here, add comments for each function explaining what it is
supposed to do.
1997-10-24 18:14:25 +00:00
sommerfe 436b905aba Fix PR4313: kern.maxvnodes setting was a psychotic placebo 1997-10-21 18:51:06 +00:00
thorpej fa87c324dc Regen, syscalls.master changed. 1997-10-20 22:06:52 +00:00
thorpej 14cd99880c Fix the shared library versioning snafu caused by the recent changes
to the stat(2) family and msync(2).  This uses a primitive function
versioning scheme.

This reverts the libc shared library major version from 13 to 12, and
adds a few new interfaces to bring us to libc version 12.20.

From Frank van der Linden <fvdl@NetBSD.ORG>.
1997-10-20 22:05:06 +00:00
is c7a9bfc5b5 Allow more than 4 (up to 16 now) virtual filesystems to be loaded.
Patch from Matthias Scheler, pr4299.
1997-10-20 17:40:07 +00:00
mycroft b8267c1737 Count characters even when !OPOST and FLUSHO.
Don't output the \r for ONLCR if FLUSHO.
1997-10-19 20:35:21 +00:00
mycroft 9341cad610 After conversion of the file flags, if neither FREAD nor FWRITE is set,
return EINVAL.
1997-10-19 17:18:10 +00:00
mycroft 11c9f28f0e Update comment. 1997-10-19 03:29:20 +00:00
mycroft e704745a3c Regen. 1997-10-19 03:26:22 +00:00
mycroft 606346112c umask(2) accepts and returns a mode_t. 1997-10-19 03:25:55 +00:00
mycroft 04daee4f9c Add const where appropriate. 1997-10-19 02:00:19 +00:00
mycroft 16519602c5 Minor change; remove unnecessary casts. 1997-10-19 01:50:33 +00:00
christos 0f4b4471a8 Regen. 1997-10-18 16:36:49 +00:00
christos 3130feba6d Fixed missed const char * in lstat (thanks enami) and changed caddr_t -> void *
in the mman family.
1997-10-18 16:35:25 +00:00
christos 3c07a14a75 Separate assigments of tv_sec and tv_nsec since tv_sec is a time_t (int on
the alpha) and tv_nsec is a long.
1997-10-18 16:34:17 +00:00
enami acd4cefee0 In the function vattr_null(), assign each member individually
to prevent unintended conversion due to different sign and size.
1997-10-18 11:51:32 +00:00
jonathan e12d00b5e4 Add #include <sys/sysctl.h>, which in turn needs #include <vm/vm.h>. 1997-10-17 22:37:38 +00:00
thorpej 73b56bd5b0 Display The NetBSD Foundation, Inc.'s copyright notice at boot time. 1997-10-17 21:40:00 +00:00
christos 3f60774556 PR/4280: Chris Jones: Sending more than one fd over AF_UNIX sockets causes
panic. Bug in the fd -> struct file * conversion...
1997-10-17 17:35:08 +00:00
christos bf5e4c3957 Regen 1997-10-16 23:42:20 +00:00
christos 9b763cbe70 change char *path to const char *path
change int to mode_t's and to dev_t's as appropriate
add new new stat syscem calls and make the old ones compatibility.
1997-10-16 23:41:31 +00:00
mycroft d0a1101d26 Disable an effectively no-op reference to u_kproc, with an explanation of what
should be done with it eventually.
1997-10-16 02:45:39 +00:00
mycroft 91395f0f4f Regen. 1997-10-15 17:28:40 +00:00
mycroft 5570f69778 Adjust u_int arguments of some system calls to int, to match user-level
prototypes.
1997-10-15 17:27:46 +00:00
mycroft 3a2dfc05e9 Regen. 1997-10-15 17:07:35 +00:00
mycroft 2587de6af9 Adjust u_int arguments of some system calls to int, to match user-level
prototypes.
1997-10-15 17:03:52 +00:00
explorer 80513cb5ae o Make usage of /dev/random dependant on
pseudo-device   rnd                     # /dev/random and in-kernel generator
  in config files.

o Add declaration to all architectures.

o Clean up copyright message in rnd.c, rnd.h, and rndpool.c to include
  that this code is derived in part from Ted Tyso's linux code.
1997-10-13 00:46:08 +00:00
enami 8092be0770 Check exec bit of symbolic link when traversing path and do it in vfs layer.
Suggested by der Mouse.  Ok'ed by Jason R. Thorpe.
1997-10-11 00:08:08 +00:00
enami db7f1ad2ad Check read permission of symbolic link in vfs layer, when doing readlink(2).
Suggested by der Mouse.  Ok'ed by Jason R. Thorpe.
1997-10-11 00:05:15 +00:00
mycroft 61a9f1c6a6 GC pageproc and bclnlist. 1997-10-10 08:19:41 +00:00
fvdl 541b204984 Add vn_readdir function for use in both the old getdirentries and
the new getdents(). Add getdents().
1997-10-10 02:09:30 +00:00
fvdl b691680ac4 Regen. 1997-10-10 02:07:55 +00:00
fvdl ab03b9752b Make last argument to VOP_READDIR off_t. 1997-10-10 02:07:00 +00:00
fvdl 5bfc60c1e5 Regen. 1997-10-10 02:05:21 +00:00
fvdl da29e54dfb Add getdents(). Rename getdirentries to compat_12_getdirentries. 1997-10-10 02:03:47 +00:00
explorer dac3eb2c9b make /dev/random standard, per message from Jason 1997-10-09 23:53:01 +00:00
explorer d8e4695634 add hooks to initialize the random driver 1997-10-09 23:17:37 +00:00
mycroft 57f5a4a68d Add another bit of const poisoning. 1997-10-09 13:05:59 +00:00
mycroft 8579e3480d Make memname[] const (but only shallow, since the array may be modified). 1997-10-09 13:02:18 +00:00
mycroft 64d080efe0 Make various standard wmesg strings const. 1997-10-09 12:59:50 +00:00
mycroft 7f35228e7e Make wmesg arguments to various functions const. 1997-10-09 12:49:44 +00:00
drochner 593f9e43c2 Fix error handling - call wakeup() in error case too. 1997-10-09 08:35:13 +00:00
jtc 324ce8d6cb Fix tipo inherited from old version of TNF copyright template. 1997-10-09 07:37:50 +00:00
enami d0c58d6217 Cosmetic changes;
- indent continuation line by four columns.
- delete whitespace after cast.
1997-10-09 01:07:46 +00:00
enami 9ad3575d65 - round up requested soft stack limit by vm page size.
- don't round up size and truncate addr.
1997-10-09 01:04:13 +00:00
thorpej b4b543bc6f In sys_mount(), use vfs_getopsbyname() rather than using an explicit
reference to vfssw[].
1997-10-09 00:39:19 +00:00
drochner fa79dfb77e Use a swap pager backed VM object for sysV shm instead of kernel VM.
Mostly from FreeBSD.
1997-10-07 10:02:03 +00:00
thorpej c28cf8c168 A few simple changes to make this closer to something that can be generated
by config(8):
- Make the vfs ops and vnodeop_opv symbols match the name of the
  file-system option used to configure the file system into the kernel.
- Now that sys_mount() has mountcompatnames[], remove the holes previously
  used to preserve ordering for COMPAT_09 and COMPAT_43 mount system calls.
Also, add a comment that describes how I feel about the existence of this
file.
1997-10-06 09:25:00 +00:00
thorpej c08ce9b419 If COMPAT_09 or COMPAT_43 are defined, include a table of "mount compatnames",
which maps the old file system index numbers to the new (well, since after
NetBSD 0.9) string-based method of finding a file system ops vector.  Use
this table rather than assuming the ordering of the vfssw[] array when
emulating the old mount system call.
1997-10-06 09:19:11 +00:00
thorpej 176a81b2c5 Copyright assigned to The NetBSD Foundation. 1997-10-05 18:37:01 +00:00
veego 43e67d00a1 Regen with the correct NetBSD RCS ID from syscalls.master. 1997-10-04 17:43:31 +00:00
gwr 0554a69f18 more comments 1997-10-04 16:56:49 +00:00
enami 45a77d9452 Regen. 1997-10-03 15:07:24 +00:00
enami 9ccb5d2e4d Add system call lchmod (#274), lchown (#275) and lutimes (#276). 1997-10-03 15:06:18 +00:00
enami 83d3cd0ec7 New function sys_lchmod(), sys_lchown() and sys_lutimes() to manipulate
symbolic links.
1997-10-03 14:44:26 +00:00
enami ea531316f0 - New function change_mode() to set mode given a vnode.
- New function change_utimes() to set access and modification times
  given a vnode.
- In the function sys_chmod() and sys_fchmod(), call change_mode().
- In the function sys_utimes() and sys_futimes(), call
  change_utimes().
1997-10-03 14:14:36 +00:00
enami a117f2d89b Reorder some piece of code;
In the function sys_utimes, do NDINIT() and namei() first.
In the function sys_futimes, do getvnode() first.
1997-10-03 13:46:02 +00:00
enami dec1d15959 In the function sys_chmod and sys_utimes, use VOP_UNLOCK(vp) and vrele(vp)
instead of vput(vp).
1997-10-03 13:37:33 +00:00
enami ba054536f8 Fold lone line to fit column < 80. 1997-10-03 13:32:06 +00:00
enami 9f882ea0ee Cosmetic change;
(error = ...) -> (error = ...) != 0, like other place.
1997-10-03 13:29:20 +00:00
thorpej a2721a0f1b In vfs_shutdown(), do the "sync and wait for it to finish" _before_
unmounting all of the file systems.  If we encounter a condition where
all of the dirty buffers could not flush, then don't unmount file systems,
since it might be likely to wedge.
1997-09-24 21:40:55 +00:00
pk 3aa9abb4d8 Use the copied-in string to pass to cpu_reboot(), not a pointer into user space. 1997-09-20 19:32:15 +00:00
drochner 7de20a5b45 Call device_register() on i386 too. 1997-09-20 14:16:43 +00:00
leo d4713d24c2 Implement the kernel part of pr-1891. This allows for a more flexible sized
msgbuf. Note that old 'dmesg' and 'syslogd' binaries will continue running,
though old 'dmesg' binaries will output a few bytes of junk at the start of
the buffer, and will miss a few bytes at the end of the buffer.
1997-09-19 13:52:37 +00:00
thorpej 27e54e6dc3 Prevent an extra newline from being printed if the root device is a network
interface.
1997-09-13 07:38:25 +00:00
mycroft 16a8787248 Fix execve(2) and *setregs() interfaces so emulations can set registers in a
more correct way.  (See tech-kern.)
1997-09-11 23:01:44 +00:00
pk ae6bc354b9 Use the macro PC_ADVANCE(), if defined, to skip over a breakpoint. 1997-09-10 19:37:31 +00:00
gwr b1fe1c2452 Generalize somewhat (now works for alpha too). 1997-09-10 16:25:07 +00:00
veego b79dba1b36 syscalls.master changed; regen. 1997-09-09 08:07:00 +00:00
veego 33a2f6fd68 Ups. 1997-09-09 08:05:35 +00:00
veego b6cefe68ad Move sys_minherit from 250 to 273 and add a comment why 240-269 are
reserved.
1997-09-09 08:04:11 +00:00
chuck 5ef067d288 syscalls.master changed; regen. 1997-09-08 18:12:29 +00:00
chuck bca26d18f9 add sys_minherit (from openbsd) 1997-09-08 18:03:32 +00:00
thorpej fc8c3e00e0 Bring changes from marc-pcmcia branch down to the trunk. 1997-08-29 00:47:18 +00:00
mycroft f31ed493f7 Fix a mbuf leak in sosend() when we have a negative residual count. 1997-08-27 07:10:01 +00:00
kleink 66105c37fc Lseek(2) usage cleanup: the use of L_SET/L_INCR/L_XTND is deprecated,
use SEEK_SET/SEEK_CUR/SEEK_END instead.
1997-08-25 19:31:43 +00:00
mikel ed1e33aac5 replace gawk-specific C-style comments with generic AWK comments; from
Yasufumi ITOH in PR kern/4011
1997-08-20 06:58:10 +00:00
drochner c6567d9100 eliminate unused variable warnings
closes PR kern/3946 by Erik Bertelsen
1997-08-06 16:57:33 +00:00
leo d37dfbd5c2 Allow for more than one md-device. 1997-08-03 20:36:03 +00:00
mrg e44b1e6182 add a patchable `lkmdebug' variable and only print debug messages
when certain bits are set.
1997-07-21 05:43:36 +00:00
fvdl 4ad51c2811 Allow multiple export requests for a filesystem, host pair if the flags and
anon cred are the same. Should probably be handled better in the mountd,
but this will do for now. Fixes PR 469, submitted Sept 1994 by
a certain "Jason R. Thorpe".. ;-)
1997-07-20 23:31:32 +00:00
phil b1bfdee5fe In sys_flock, change EBADF to EINVAL because error was generated by
a bad argument, not a bad file descriptor. (Found in response to
PR 2602.)
1997-07-17 17:54:40 +00:00
pk 37d77087e8 Check `b_dev' field in bdwrite() before using it as an index into bdevsw[].
`b_dev' value of NODEV happens and is normal if the buffer is on its way
to the underlying device strategy function for the first time.

Also, MFS sillily uses a major device number (255) which cannot be used
to index bdevsw[]. Check marked with XXXs.
1997-07-08 22:03:30 +00:00
pk b7b1073fd0 In bread() and breadn(): if getblk() returns a DELWRI buffer, don't
call biowait() but return `success' immediately. We can return `success'
because buffers with recorded errors are not returned by getblk().
(Takes care of PR#3694).
1997-07-08 21:42:59 +00:00
christos 2b0c0d95ab Make this work for SETUIDSCRIPTS:
- include <sys/stat.h> for S_ISUID, S_ISGID
- fix bug where shortcut to fail would use uninitialized variables.
- elide other warnings.
1997-07-08 02:32:02 +00:00
cgd c96fac46ea update for new vnode_if.sh 1997-07-07 20:19:54 +00:00
cgd 6542ece8e1 mark prototypes for static inline functions in the generated files as
possibly unused (with __attribute__ ((unused))), to avoid generating
warnings when compiling without optimization but with most ports' default
warning flags.
1997-07-07 20:17:36 +00:00
fvdl 6eecd789e6 There appear to be spinlock bugs in the VM code. They are not a problem
now, as we're always one on CPU (they will be later, though). With DEBUG,
they cause a lot of output, so DEBUG -> LOCKDEBUG for now.
1997-07-06 22:51:59 +00:00
fvdl 8f8988628d Add NetBSD RCS Id, and a few minor changes to make it compile. 1997-07-06 12:35:33 +00:00
fvdl f93a04da47 Import Lite2 locking code 1997-07-06 12:19:53 +00:00
thorpej 8dd0293cd3 Use UCHAR_MAX rather than "255" when sanity-checking the length of a
sockaddr in sockargs().
1997-06-26 06:13:36 +00:00
thorpej 1351e629b3 Several small changes to eliminate kludginess in dealing with unix domain
socket names:
- In unp_setsockaddr() and unp_setpeeraddr(), if the socket name can't
  fit into a single mbuf, allocate enough external storage space to
  hold it.
- In unp_bind() and unp_connect(), perform a similar operation, but allocate
  one extra byte, and ensure that the pathname is nul-terminated.
Many thanks to enami tsugutomo <enami@cv.sony.co.jp> for the sanity
checking.
1997-06-26 06:06:40 +00:00
thorpej e1fb68eb29 In sockargs():
- Add a comment describing my feelings about this interface, in general.
- Remove the COMPAT_OLDSOCK length hack.  Instead, if the socket argument
  is too long to fit in an mbuf, allocate enough external storage to
  hold it.
- If the socket argument is a sockaddr, don't allow the length to be
  greater than 255, as that would overflow sa_len.
Many thanks to enami tsugutomo <enami@cv.sony.co.jp> for his sanity checking.
1997-06-26 06:01:59 +00:00
thorpej 01cbda9800 In sbappendaddr(), if the sockaddr length is larger than will fit in
an mbuf, allocate enough external storage to hold the sockaddr.  Thanks
to enami tsugutomo <enami@cv.sony.co.jp> for providing sanity-checks.
1997-06-26 05:56:38 +00:00
thorpej 6043eb7d80 Avoid running off the end of the format string if the caller botched
the format modifer.  Reported by and suggested fix from Daniel G. Pouzzner
in PR #2633.  Final fix is slightly different now that we support the %q
modifier.  This fix also includes the equivalent fix for sprintf().
1997-06-26 05:17:45 +00:00
thorpej e14025e742 If KGDB is defined, pull in <sys/kgdb.h> for prototypes. 1997-06-26 00:43:10 +00:00
thorpej 319920c23a Add "struct", "member", and "export" keywords, per PR #3555, from
Ty Sarna <tsarna@endicor.com>.
1997-06-25 03:09:06 +00:00
fvdl b5e26aee04 Invalidate publicly exported FS info when unmounting it locally. 1997-06-24 23:44:57 +00:00
fvdl 4702f17abc Add functions to set/reset the info about the publicly exported
(WebNFS) filesystem. At first glance this should go into the
NFS code, but all the other export code is here as well.
1997-06-24 23:43:33 +00:00
thorpej cd730bdd50 In sosetopt():
- Disallow < 1 values for SO_SNDBUF, SO_RCVBUF, SO_SNDLOWAT, and
  SO_RCVLOWAT; return EINVAL if the user attempts to set <= 0.
  Inspired by PR #3770, from Havard Eidnes <he@vader.runit.sintef.no>.
- For SO_SNDLOWAT and SO_RCVLOWAT, don't let the low-water mark get
  set above the high-water mark.  Behavior is now consistent with
  BSD/OS: If such an attempt is made, silently truncate to the high-water
  value.
1997-06-24 20:04:45 +00:00
thorpej a149ed59e4 Eliminate use of dtom() in the handing of UNIX domain sockets. Add an
"unp_addrlen" member to the unpcb, and use it when copying the socket
name.  This eliminates that last uses of dtom() in the system.
1997-06-24 19:12:53 +00:00
kleink df14b3b830 Add some robustness to ttymodem(), e.g. do not SIGHUP when there hasn't been
an actual carrier transition; from Charles M. Hannum.
1997-06-20 10:50:11 +00:00
pk 98ce8ab879 Remove __FORK_BRAINDAMAGEd code; it's no longer needed. 1997-06-19 20:54:15 +00:00
kleink a0696b91ad When a background process attempts to TIOC[CS]BRK (a.k.a. tcsendbreak()) or
TIOCSTART (a.k.a tcflow()), send its process group a SIGTTOU.
1997-06-18 15:32:33 +00:00
kleink 93da19a2f1 Rewrote break/parity/framing error handling from spec. 1997-06-17 20:41:59 +00:00
drochner a52a25467d Implement quad_t (%qx, %qd, %qo) printf formats.
Closes pr kern/3747.
1997-06-16 15:02:27 +00:00
thorpej 3fc5bf341d Fix a slight botch in dumpdev configuration logic in the RB_ASKNAME
case if a network interface is selected as the root device.
1997-06-16 00:25:05 +00:00
thorpej e94c4d3f1c Call cpu_dumpconf() after cpu_rootconf(). 1997-06-14 04:18:34 +00:00
thorpej 91f7efbaf9 Fix crash dump device selection after the recent swap changes:
- If RB_ASKNAME, prompt for the dump device, defaulting to
  partition 'b' of the root device, if the root device is a disk.
- Else, if dumpspec is set to "none", do not configure a dump device.
- Else, if dumpspec is set by config(8), attempt to use that device.
- Else, dumpspec is wildcarded or unspecified; if the root device is
  a disk, select partition b.  (which was the previous default dump
  partition)

Note, dumps to a local disk now work even if root is on nfs.
1997-06-14 04:17:32 +00:00
mrg 5321ad5c6f regenerate. 1997-06-12 22:07:47 +00:00
mrg 9cee42ea7c swapon back to compat_12 syscall.. 1997-06-12 22:05:37 +00:00
mrg 32d6beee19 regenerate. 1997-06-12 21:47:09 +00:00
mrg abe622f20b for now, leave swapon(8) in place. 1997-06-12 21:41:56 +00:00
mrg 295af85e9e remove swap configuration. 1997-06-12 17:12:17 +00:00
mrg 8986bdf82d regenerate. 1997-06-12 14:49:11 +00:00
mrg c59ed4fd4d add sys_swapctl(), and deprecate, with COMPAT_12, sys_swapon 1997-06-12 14:23:46 +00:00
bouyer 276676cfbb Support ext2fs. 1997-06-11 10:40:16 +00:00
kleink 372bfc7c08 Calculate returned timeval correctly when using SO_SNDTIMEO/SO_RCVTIME;
from Koji Imada <koji@math.human.nagoya-u.ac.jp> in PR/3682.
1997-06-11 10:04:09 +00:00
cgd 21bbd49bf2 in vfs_shutdown(), print "syncing disks... " before dropping to spl0(),
so that if the drop to spl0() causes another panic (e.g. because there's
still some fatal hardware interrupt that's pending) we'll know that we
dropped IPL to sync the disks.
1997-06-07 17:27:57 +00:00
veego 118a503048 Add HW_MACHINE_ARCH for the new sysctl hw.machine_arch which contains the
cpu class of a machine.
1997-06-06 23:14:36 +00:00
pk f910dab2bd Get `canwait' argument to kmem_malloc() right. 1997-06-06 10:51:49 +00:00
thorpej f160cf5490 Prototype lkmdispatch() in <sys/lkm.h>; all LKMs use it. 1997-05-28 02:44:55 +00:00
thorpej cf30e3e3c9 Prototype lkmexists() in <sys/lkm.h> as some LKMs might need to use it. 1997-05-28 02:41:41 +00:00
thorpej 5b2dc97efd Move the test for "no rootspec and no bootdv" to after we've had a chance
to set rootspec in the case of "root on ? type nfs" and no bootdv was
found.  From maximum entropy <entropy@tanstaafl.bernstein.com>, PR #3669.
1997-05-25 19:20:30 +00:00
kleink b7ba6138b6 If the pgrp_id argument of TIOCSPGRP (a.k.a. tcsetpgrp()) does not specify
an existing process group, return EINVAL.
1997-05-22 17:35:42 +00:00
gwr 5e15995438 Moved db_kill_proc() and db_show_all_procs() to ddb/db_xxx.c 1997-05-21 19:56:50 +00:00
gwr 55f621803a Moved db_show_callout() to ddb/db_xxx.c 1997-05-21 19:55:45 +00:00
kleink 91830a9500 When a background process attempts to TIOCDRAIN (a.k.a. tcdrain()), send
its process group a SIGTTOU signal.
1997-05-20 13:11:33 +00:00
pk 153ccc307b Use PHOLD() and PRELE(), rather than manipulating p_holdcnt directly. 1997-05-19 10:43:28 +00:00
kleink 2509589972 Add posix_rename() syscall: regen. 1997-05-18 20:07:27 +00:00
kleink d3aadd8976 Add posix_rename() syscall. 1997-05-18 19:56:48 +00:00
thorpej 92c113aebb Fix printf format botch. 1997-05-17 00:19:02 +00:00
gwr 09da7e273e Eliminate vmspace.vm_pmap and all references to it unless
__VM_PMAP_HACK is defined (for temporary compatibility).
The __VM_PMAP_HACK code should be removed after all the
ports that define it have removed all vm_pmap references.
1997-05-16 21:39:50 +00:00
kleink 9827bd6dc6 When fstat(2)ing a file descriptor of a local communications domain socket,
fill the socket's creation time into the stat structure's st_[acm]time fields:
POSIX requires this behavior for pipe(2). N.B.: updating the st_[am]time fields
when reading/writing the pipe is neither required nor implemented, though.
1997-05-15 17:01:04 +00:00
thorpej e98c5a9b1c Fix two boundary/overflow errors in extent_alloc_subregion():
(1): "substart == ex->ex_end" and "subend == ex->ex_start"
     are completely legal parameters for extent_alloc_subregion()
(2): "(subend - substart) + 1" can cause an overflow if the whole
    numeric range is covered by the extent.
Submitted by Matthias Drochner <drochner@zelz26.zel.kfa-juelich.de>
in PR #3119.
1997-05-12 23:36:32 +00:00
kleink e7b98401d4 Pull in the declarations of db_expression() and db_error(), used by
db_kill_proc().
1997-05-08 17:22:05 +00:00
mycroft 8e39ee9dad Don't use vaccess() here. 1997-05-08 17:16:15 +00:00
mycroft ae5d73b594 Update for vaccess() change. 1997-05-08 17:08:31 +00:00
mycroft 06fb68217b Oops; fix reversed test for VDIR. 1997-05-08 16:34:54 +00:00
mycroft e3f99a9397 Pass the vnode type to vaccess(), and use it when checking VEXEC. Make sure
that the mode bits passed to vaccess() and returned by foo_getattr() contain
only permission bits.
1997-05-08 16:19:43 +00:00
mycroft 07ba5e5ac3 Snapshot of namei() cleanup:
1) Eliminate all of the null component name special cases; handle runs of
slashes and leading and trailing slashes completely differently.
2) Return ENOENT when doing a lookup through an empty symlink.
3) Enforce that we're doing a lookup through a directory in in chdir() and
lookup() rather than in foo_lookup().

Not yet finished.
1997-05-08 14:55:22 +00:00
mycroft 4d2eb6bb39 GC some code. 1997-05-08 12:17:47 +00:00
mycroft 837a72363d VEXEC -> VLOOKUP, as appropriate. 1997-05-08 10:57:17 +00:00
mycroft 8f5978a181 GC VS[UG]ID and VSVTX, and add a new VLOOKUP, since the semantics are now
different from VEXEC.
1997-05-08 10:21:35 +00:00
mycroft d7f33c5e60 va_mode contains stat bits. Use S_IS[UG]ID rather than VS[UG]ID. 1997-05-08 10:19:10 +00:00
gwr 9fa3dabef7 Moved db_show_all_procs() to kern_proc.c 1997-05-07 18:49:10 +00:00
gwr 48c524e63a Add db_kill_proc() for DDB (and move db_show_all_procs here so
all the "proc" debugging stuff is here in one place).
1997-05-07 18:48:15 +00:00
tls 02697a5d47 add case for 512Hz in NTP code 1997-05-05 19:25:26 +00:00
mjacob f67d760363 Ancient...needed a slight amount of fixing. 1997-05-04 01:54:24 +00:00
kleink 29c5707479 * Make chown()/fchown() use a piece of common code to set ownership.
* Setting the ownership of a file now implies clearing its set-{group,user}-id
  bits.
1997-04-30 19:29:43 +00:00
mycroft 103c7d360d Oops; forgot to GC the last mbuf allocated when out of clusters. 1997-04-28 17:03:58 +00:00
mycroft 2b65c6c346 Delay turning off P_TRACED until the process is actually waited on. It can't
have any signals delivered while exiting, so this should be okay.  Change the
test for a traced process in wait4() to exclude a process that was started by
the debugger; in this case, only one SIGCHLD should be delivered.
1997-04-28 13:17:05 +00:00
mycroft 701f15db33 Reinstate P_FSTRACE, with different semantics:
* Never send a SIGCHLD to the parent if P_FSTRACE is set.
* Do not permit mixing ptrace(2) and procfs; only permit using the one that
  was attached.
1997-04-28 04:49:27 +00:00