Commit Graph

24641 Commits

Author SHA1 Message Date
cgd b1a10f6f23 change sockargs()'s second argument to be a const void *. It used
to be a caddr_t, but since it's being passed constant user argument pointers
it needs to be const, and since it's being passed a variety of argument
pointer types it makes sense to change it to void *.  That argument is
simply being handed to copyin().
1996-12-22 10:14:06 +00:00
cgd 90688fce27 Change the second and third args to struct vfsops' (*vfs_mount)() to
'const char *', and 'void *', respectively.  The second arg is taken directly
from user arguments, and is const there, so must be const in the prototypes
and functions.  The third arg is also taken directly from user arguments.
It doesn't have to be changed, but since it's cleaner to keep the type
the same as the user arg's type, and I'm already making the 'const char *'
change...
1996-12-22 10:10:12 +00:00
cgd 0396cad668 if __lint__ is defined, #define __builtin_saveregs() and
__builtin_classify_type() into harmless values, so that lint doesn't
get confused, think they're real functions, and that they're being
invoked in the wrong ways.
1996-12-22 08:57:23 +00:00
cjs 5678a13f1b Re-introduce some code from 1.14 (with modifications) to make the
shell's idea of the current working directory match reality when
symlinks (or anything else we can't stat) are traversed with the
cd command. However, this does not print out the cwd after cd
traverses symlinks, as it used to, though the capability is still
there should one want to use it.
1996-12-22 08:34:34 +00:00
cgd 50cb6df652 for now, -Wcast-qual is just not practical in the kernel 1996-12-22 08:33:19 +00:00
cgd 7e31391b10 update for new syscalls.master 1996-12-22 08:05:47 +00:00
cgd acad90d846 * (slight) general cleanup
* change in-kernel syscall prototypes to match user-land prototypes in
  the following ways:
    + add 'const' where appropriate.
    + make the following "safe" type changes where appropriate:
	caddr_t -> struct msghdr *
	caddr_t -> struct sockaddr *
	caddr_t -> void *
	char * -> void *
	int -> uid_t (safe because uid_t not used as index/count)
	int -> gid_t (safe because gid_t not used as index/count)
	u_int -> size_t
    + change "int" to "u_long" in flags arguments to chflags() and
      fchflags().  This is safe because the arguments are used as
      flag bits and there's nothing that would cause the top bit
      of the int to be set yet, and because the user-land definitions
      already specified u_long, so a u_long's worth of argument was
      already being passed in.
1996-12-22 08:04:06 +00:00
cgd 997ec138ad change ntp_gettime's struct ntptimeval *'s name to match kern_ntptime.c 1996-12-22 07:47:43 +00:00
cgd c99936a735 * fix return types. previously, most things returned 'int.' which was
wrong for a bunch of functions:
	void:		sys_exit, sys_sync
	ssize_t:	sys_read, sys_write, sys_recvmsg, sys_sendmsg,
			sys_recvfrom, sys_readv, sys_writev, sys_sendto
	long:		sys_pathconf, sys_fpathconf
	void *:		sys_shmat

* Note that sys_open, sys_ioctl, and sys_fcntl are defined such that their
  last argument is optional.

These changes should not have any real effect, because right now this
information is not actually used for anything.
1996-12-22 07:00:57 +00:00
cgd 8fac03afc3 regen for syscalls.master and makesyscalls.sh changes 1996-12-22 06:48:18 +00:00
cgd 747448fc3e mark syscall() and __syscall() as INDIR syscalls 1996-12-22 06:46:50 +00:00
cgd 0e9ddb9039 * Don't actually output args structure definitions for INDIR syscalls (typo).
* Don't output prototypes for INDIR syscalls (since they always show up as
  sys_nosys() in the syscall table).
* Add "indir" to the comment for INDIR syscalls in the syscalls table, so
  it's more obvious why they call sys_nosys().
1996-12-22 06:45:14 +00:00
cgd ba32ea9a68 update copyright date 1996-12-22 06:33:46 +00:00
cgd 286395d1b3 * remember (i.e. don't throw away) system call return types.
* Deal with multi-word system call return types (i.e. foo *, or
  struct foo *, or struct foo, etc.).
* Add a new class of system calls "INDIR" (for "indirect"), which
  is to be used to represent indirect syscalls like syscall() and
  __syscall() which are implemented in MD code and which don't want
  args structures defined.  (The old way of declaring this type of
  syscalls still works.)
* Allow system calls to be marked as having a variable number of
  arguments, by inserting "..." (no trailing comma) before the
  first hf the optional arguments in the syscall definition.  Because
  of the way syscall arguments are handled by MI code, _ALL_ syscall
  arguments must actually be included in the definition, i.e.
  "optional" arguments are either "are there or aren't," i.e. these
  aren't really varargs functions.  Therefore, for normal syscalls,
  there _must_ be arguments listed after the "...".  For INDIR
  syscalls, which really do have a variable number of arguments and
  which aren't handled via the normal mechanism, that requirement is
  not in force.
* output primitive (machine-parsable) syscall descriptions as comments
  in <sys/syscall.h>.  These can be used to easily build real function
  prototypes, or to build stub functions for use by lint.
1996-12-22 06:33:16 +00:00
cgd e9a07759c9 ntp_gettime()'s argument is a struct ntptimeval *, not a struct timex * 1996-12-22 06:23:38 +00:00
pk f867c23217 Don't include indirect symbols in global counter if imported from a
shared library (problem noticed by Thorsten Lockert).

Also, make sure not to overwrite predefined _DYNAMIC symbol type.
1996-12-22 01:10:37 +00:00
pk 49dc4d2fe7 Deal with weak symbols when looking up in shared libraries. 1996-12-21 21:53:16 +00:00
pk 85993bcea4 Set EXTERNAL bit on `.weak' declarations. 1996-12-21 21:48:20 +00:00
thorpej e2c6ed87ec Fix several semantic bugs:
- Always allow RAW_PART to be opened, regardless of the partition table.
- Never do partition translation on RAW_PART; it's always offset 0.
- Always make sure the disklabel is read from RAW_PART.
- Make *strategy() return values consistent.

This fixes a condition where a bogus partition table could be written
to the disk from SYS_INST, and the user had no way to rewrite with
a correct partition table, since RAW_PART would be invalid.
1996-12-21 21:34:40 +00:00
thorpej 0d58626f72 This wasn't just a spelling error... I invented a whole new word! 1996-12-21 21:23:43 +00:00
matthias a6c08e93f9 * revert broken handling of subcommands to the (working) 4.4Lite version. 1996-12-21 09:16:35 +00:00
thorpej e34f47039d XXX Stop-gap for larger MAXBSIZE: limit nbuf to 128, so we don't chew
XXX up all of the available pmegs lower-model SPARC CPUs.
1996-12-21 06:21:56 +00:00
cgd 1d8e0e8fda note that __syscall() is prototyped to return a quad_t 1996-12-21 01:38:56 +00:00
cgd 1530406723 __syscall() should return quad_t, not int; what was i thinking? 1996-12-21 01:30:48 +00:00
thorpej fca7fce17e Deal with targets > 7 on wide Buslogic controllers. Remember the "wide"
bit from the extended setup inquiry and key off it to:
- Force synchronous negotiation on targs > 7.
- Read additional information returned by wide cards on inquire setup.
- Read sync period on targs > 7.
- Display sync period/offset on targs > 7.
- Set scsi_link.max_target to 15.
cvs: ----------------------------------------------------------------------
1996-12-20 21:35:10 +00:00
cgd 77dab094a0 pull in netdb.h and arpa/inet.h, kill local decls. add interpret() proto 1996-12-20 20:49:47 +00:00
cgd 9fc875ff77 unistd.h for prototypes 1996-12-20 20:48:17 +00:00
cgd ebd5bdf6d5 string.h for prototypes 1996-12-20 20:47:53 +00:00
cgd 22eee680d6 ifdef YP, needs rpcsvc/ypclnt.h for protos 1996-12-20 20:46:19 +00:00
cgd c97004a9b9 string.h for prototypes 1996-12-20 20:44:55 +00:00
cgd f4b5c163ef __asm rather than asm, for lint 1996-12-20 20:35:48 +00:00
cgd 4bf7fe6145 const poisoning: __findenv()'s first arg should be const char * (lint) 1996-12-20 20:32:54 +00:00
cgd 54c7614104 don't confuse long and int; pointed out by lint 1996-12-20 20:32:02 +00:00
cgd 58f52170c8 args for _fmt(), _secs(), and _add() should all be const (!!) 1996-12-20 20:27:22 +00:00
cgd 316aac5b98 pull in local.h for prototypes. first arg to __sflags() is const char * 1996-12-20 20:26:00 +00:00
cgd 8d3c8a8f7c string.h for prototypes, replace K&R declarations with __P protos 1996-12-20 20:25:12 +00:00
cgd e8cd914914 unistd.h for prototypes, fix a couple of bogus casts to select()'s args 1996-12-20 20:24:36 +00:00
cgd 018a568c63 pull in rpc/pmap_clnt.h for protos 1996-12-20 20:23:22 +00:00
sommerfe cf49662b0f Longer login name support: increase MAXLOGNAME to 16 1996-12-20 20:18:53 +00:00
sommerfe 36da84b7df Longer login name support: use MAXLOGNAME, not UT_NAMESIZE 1996-12-20 20:17:30 +00:00
cgd d3b76936e9 pull in unistd.h for prototypes 1996-12-20 20:17:19 +00:00
sommerfe f218af3428 Longer login name support: use MAXLOGNAME, not UT_NAMESIZE 1996-12-20 20:16:05 +00:00
cgd 1656c8d473 don't include lshrdi3.c in MI sources, since they're already in MD sources 1996-12-20 19:44:12 +00:00
cgd 5a39204a94 _gethtbyname's arg should be const char *, not char * 1996-12-20 19:41:30 +00:00
cgd a1971a18d9 pull in unistd.h, const poisoning 1996-12-20 19:38:57 +00:00
cgd 7edc9015ae grscan()'s last arg has to be a const char *, not just a char * 1996-12-20 19:38:16 +00:00
cgd 3b26fee368 include unistd.h and fix up sethostid() return type (was long here, now int) 1996-12-20 19:36:30 +00:00
cgd 9974d54108 sethostid returns int not void, also add prototype for __syscall that
matches manual page.
1996-12-20 19:33:56 +00:00
veego c815213b05 Disable CD debug output. 1996-12-20 19:21:11 +00:00
veego 35d44f12b7 - Move SWAPPAGER, VNODEPAGER and DEVPAGER to std.draco.
- Remove not working KGDB.
- Remove unused PANICWAIT.
- Add ch and uk devices.
1996-12-20 19:18:16 +00:00