Commit Graph

292 Commits

Author SHA1 Message Date
drochner f458367b3f cosmetics: remove double semicolon, whitespace 2000-02-03 19:53:03 +00:00
cgd fbf9177d1b provide stat() and fstat() here for standalone programs' use 2000-02-03 02:00:31 +00:00
tsutsui 11c8f56d48 Revert STRIPPROG -> STRIP 2000-02-01 05:25:24 +00:00
tsutsui e61f177ab1 STRIP -> STRIPPROG 2000-01-19 16:29:54 +00:00
hannken 2b8c4ea32e Fix IS_DATA and IS_TEXT. PF_X and PF_W are valid on p_pflags, not p_ptype. 1999-12-29 11:08:02 +00:00
simonb a09d3191a0 Remove leading '/' from pathnames, using same logic as ufs.c. Allows new
style (but not yet committed) pmax bootblocks to open "/boot.pmax" on an
ISO image.  Same problem reported for NFS by Jason Thorpe.
1999-11-23 12:20:53 +00:00
thorpej ee03a4e035 Backout my libsa changes. 1999-11-13 21:29:12 +00:00
thorpej 36ff5d93e8 Backout my libsa changes. 1999-11-13 21:17:56 +00:00
thorpej 1e544cc5eb Backout my libsa changes. 1999-11-13 21:06:46 +00:00
lukem e8dc21a13a add -DNET_DEBUG to the list of commented-out debug options 1999-11-12 13:13:59 +00:00
lukem 053d3c3702 fix pointer size in debug message 1999-11-12 13:12:09 +00:00
simonb 7a03e8cda8 Add memset() prototype. 1999-11-12 12:24:42 +00:00
simonb 3f691021a6 Add strncpy().
Add prototypes for bcmp(), bzero() so the libsa compiles with WARNS=1
1999-11-12 01:26:28 +00:00
thorpej ab395306cd Small, MI strcat() and strcpy(). 1999-11-11 21:23:27 +00:00
thorpej a7abffa1f2 The hack needed to work around gcc lameness. 1999-11-11 20:36:52 +00:00
thorpej 471a3aa8e4 Update for the improvements to libsa, and don't reference libkern.h. 1999-11-11 20:23:16 +00:00
thorpej 38200dd3e4 Networking routines needed for libsa to be self-contained. 1999-11-11 20:21:59 +00:00
thorpej c29af30c3c Minimal quad routines needed for libsa to be self-contained. The compiler
emits a reference to this one in the UFS code.
1999-11-11 20:20:35 +00:00
thorpej cad7e97082 Add small, MI strcmp(), strlen(), and strncmp() functions. Modules within
libsa depend on them, to it seems rather silly to have to build an additional
library (e.g. libkern) to get them.
1999-11-11 18:11:25 +00:00
kleink 522cbf0248 Update to match new SVR4-style definition names in <sys/exec_elf.h>. 1999-10-25 13:55:06 +00:00
itohy e72ef17380 - a.out header is not a part of text segment in NMAGIC.
- Fix section alignment code.
Patch supplied by Izumi Tsutsui, PR #8575.
1999-10-08 03:55:06 +00:00
ross 80fd51b82b Fix error flow that was broken 10 days ago in the previous commit.
Fixes the broken i386 boot blocks and closes port-i386/8432.
1999-09-20 11:58:15 +00:00
ross 54ab5cdc54 * Fix the volume zero recognition bug; it was interacting with a
feature to avoid rereads (which was added to work around bugs in
  old SRM versions that wouldn't rewind DATs, but would return no
  error on rewind callbacks)
* Initialize the volzero signature in ustarfs_open(), rather than as a
  side effect of the first read.
* Centralize error retry.
1999-09-10 07:22:03 +00:00
drochner 9b5129f15a add a function to verify a password against an in-core md5 sum 1999-09-09 15:52:37 +00:00
ross ad3beb5695 Fix read retry error case. Closes kern/8300.
While here, add automatic error retry up to 3 times.
1999-09-01 02:32:26 +00:00
simonb 9e0209e2c8 Remove prototype for find_inode(). 1999-08-19 00:19:16 +00:00
cgd b43600a96e note that these files should be easily diffable (until they share common code 1999-08-18 21:33:50 +00:00
cgd b4ecb1b468 Add a standalone LFS implementation. Currently not merged with ufs (FFS),
but should be (and will be before too long).  Until then, it and ufs.?
should be easily diffable.
1999-08-18 20:04:39 +00:00
cgd cd10ee60f6 set f_seekp to 0 in ufs_open() before returning. It ended up being 0
in most situations, but not always: if the terminal path name component
being opened couldn't be found in the first fs block of the directory
that contained it, f_seekp would be non-zero (and Bad Things would result).
1999-08-17 02:26:32 +00:00
drochner 756fbc1ee8 fix damage in error handling crept in in 1.4 1999-07-12 12:34:57 +00:00
christos b953fb0414 bring back my friend the twiddle. 1999-06-22 22:44:16 +00:00
christos 16e8020994 Nuke obsolete printf comment. 1999-06-22 22:09:49 +00:00
cgd bb7cdd7c0b don't bother initializing 'freelist' -- it can be bss 1999-05-28 19:31:51 +00:00
drochner e6b49c7863 move intoa() from libsa:net.c to libkern, turn inet_ntoa() into a macro,
nuke ip_convertaddr()
1999-05-07 14:49:52 +00:00
drochner 192b3c733c Build libraries for kernel/standalone code from within their compilation
directories and use .PATH to lookup the source files.
(Formerly, the libs were built from the source dirs, with MAKEOBJDIR
set to the compilation directory.)
This solves 2 problems:
-"mkdep" and "make" are now consistent about the file lookup, this fixes
 bad interactions with amd reported in PR bin/7374 (Arne Juul) and
 lossage reported by Andrew Gillham ("obj" dirs and relative paths still
 don't work well together)
-kernel compile trees can be moved around without forcing a new
 "make depend" - fixing PR kern/4021 by Martin Husemann
1999-05-07 14:28:50 +00:00
christos a2c49bf69e Nuke local prototype for closeall(). Add a new define LIBSA_NO_CLOSE so that
we don't try to close files, if we are not using any other I/O.
1999-04-28 13:24:12 +00:00
christos 2da63ed66f cosmetic printf change 1999-04-28 09:12:24 +00:00
christos 0fdd24ecdc MI loadfile (used by i386, pmax and sparc shortly) 1999-04-28 09:08:50 +00:00
cgd 227295dad5 set lflag when printing pointers with %p 1999-04-20 23:04:17 +00:00
christos d15d073dcf add getopt prototype, and externs 1999-04-14 15:23:27 +00:00
drochner b7c510645f move "ls" utility from i386/stand/libsa here 1999-04-14 11:32:50 +00:00
ross 4634c0e3d4 libkern just got an inet_addr(), but it won't compile, no prototype. Cleanup...
* Add prototype to libkern.h.
* Remove the almost-identical-copy from libsa/net.[ch].
* Change its type back to the (wrong, but harmless) historical one. (u_long)
* Kill the XXX local prototype in nfs_bootparam.c
1999-04-12 01:05:01 +00:00
simonb fa38a5236c The "found" label is not used if ALLOC_FIRST_FIT is defined. 1999-04-11 04:02:37 +00:00
simonb 6db650781c Don't compile in sanity checks for old file systems if
LIBSA_NO_COMPAT_UFS is defined.
1999-04-01 05:27:54 +00:00
simonb 8f8c1f41d9 It's no use having a memcmp() that calls bcmp() if there's no bcmp() in
the SA library.  Basically copied from ../libkern with a few less #if's
and #include's.
1999-04-01 05:12:20 +00:00
simonb e46b652af6 bestsize is unused if ALLOC_FIRST_FIT is defined. 1999-04-01 02:41:08 +00:00
simonb ff2206f6df G/C UFS_NOSYMLINK, UFS_NOCLOSE and UFS_NOWRITE and use new LIBSA_NO_FS_*. 1999-03-31 07:43:39 +00:00
cgd 309213477a Make a bunch of backward-compatible changes to the boot blocks which allow
size to be reduced substantially.  (backward compatibility verified
by compiling one of the alpha boot blocks which uses all of the code
before and after, diffing the object files, and manually verifying that
the differences were 'correct'.  some differences were "unavoidable,"
it wanting to avoid a double-commit, because e.g. local variables which
were previously used were no longer used.)  a README which describes
supported options (or at least the ones mentioned below) is forthcoming.

add support for the preprocessor macro LIBSA_NO_TWIDDLE, which
  causes calls to twiddle() to be omitted if it's defined.
add support for the preprocessor macros:
	LIBSA_NO_FS_CLOSE
	LIBSA_NO_FS_WRITE
	LIBSA_NO_FS_SEEK
  which, if defined, cause the corresponding file system operations
  in the individual file system implementations to be omitted.  (note
  that all of those macros are not supported by all file systems at
  this point.  comments were added to individual file system files
  to indicate lack of support, and should be cleaned up later.  Backward
  compatibility options e.g. UFS_NOCLOSE, etc., are supported.)
add support for the preprocessor macro LIBSA_NO_FS_SYMLINK, which
  removes support for symbolic links from the file system support
  functions.  (same notes as for the macros above apply.)
add support for the preprocessor macro LIBSA_FS_SINGLECOMPONENT which
  removes all subdirectory and symlink support from the file system
  support functions.  (same notes as for the macros above apply.)
add support for the preprocessor macro LIBSA_NO_FD_CHECKING, which
  causes code relating to libsa file descriptor checks (e.g. range
  checking and checking that a file descriptor is valid) to be
  omitted if it's defined.
add support for the preprocessor macro LIBSA_NO_RAW_ACCESS, which
  causes code relating to raw device access to be omitted if it's
  defined.
change some structure copies to use bcopy() instead.  that way
  use of bcopy vs. memcpy() can easily be selected by
  LIBSA_USE_MEMCPY.  (without changes like these, you could end up
  having both bcopy() and memcpy() included.  eventually, all
  calls to bcopy should be changed to calls to memcpy() or memmove()
  as appropriate -- hopefully never the latter -- with an option to
  use bcopy instead.)
add support for the preprocessor macro LIBSA_NO_DISKLABEL_MSGS, which
  causes disklabel() to return '1' as msg rather than a string.  Can
  be used if the boot blocks don't care about the string, and need to
  save the space.
add support for the preprocessor macro LIBSA_SINGLE_FILESYSTEM, which
  if defined causes all of the file system switch code to be removed.
  Its value should be the name of the file system supported by the
  boot block, e.g. "ufs" for the FFS file system.  calls to the
  file system functions open, close, etc., which were previously
  done through a function switch are then done via direct invocation
  of <fs>_open, <fs>_close, etc. (e.g. ufs_open, ...).
add support for the preprocessor macro LIBSA_SINGLE_DEVICE, which
  does the equivalent of LIBSA_SINGLE_FILESYSTEM but for the device
  switch table.  Device entry pointes are expected to be named
  <dev>foo, e.g. the 'strategy' routine used when LIBSA_SINGLE_DEVICE
  is set to 'disk' is diskstrategy.
make ufs.c f_nindir array be unsigned ints.  the fact that it was signed
  caused ufs.c to require signed division routines (which were otherwise
  unnecessary for a small boot block).
1999-03-31 01:50:25 +00:00
cgd e5ce91e0f3 replace memcpy() implementation (which just called bcopy()) with
a small implementation of memcpy().  libsa memcpy() wouldn't
do the right thing if LIBSA_USE_MEMCPY was defined, and the whole
point of that define is to get rid of either bcopy() or memcpy().
(cloned from the bcopy() code.)
1999-03-31 01:39:16 +00:00
cgd 8aa0c52d66 #undef bcopy, so that this will still compile if LIBSA_USE_MEMCPY is defined 1999-03-30 22:03:47 +00:00