Commit Graph

292 Commits

Author SHA1 Message Date
cgd 9d06bcdcfe Add bzero.c, errno.c, and memset.c to SRCS 1999-03-30 22:02:39 +00:00
cgd 9ce004e069 add simple (small) implementations of memset and bzero. the versions
in libkern are fine for the kernel, but the versions here are smaller
and in libsa the point is size.
1999-03-30 22:01:15 +00:00
cgd 1611da0c3c move errno to its own file; if you just need errno, you don't need dev.c's fns 1999-03-30 21:59:58 +00:00
dbj 82347ce33e Changes to compile the next68k bootblocks with
egcs -Wpointer-arith -Wstrict-prototypes
This closes pr 6653
1999-03-26 15:41:38 +00:00
simonb 5d23f12467 Don't call f_dev->dv_close if it's a null pointer when an open() call
fails.
1999-03-26 03:16:15 +00:00
simonb 9913b7202b Revert SA_NOPUTCHAR - the pmax was the only port using it and the new
pmax bootblocks provide a putchar().
1999-03-23 22:25:31 +00:00
kim cc6ca72465 Made this compile:
- fifth arg to recvtftp should be size_t (not ssize_t)
- the path is passed tftp_makereq as a part of the handle structure
1999-02-28 00:57:07 +00:00
christos dd247aa44e Add missing prototypes for static functions. 1999-02-26 22:46:32 +00:00
ross 91d91ef1b2 XXX include libkern.h for strlen() XXX 1999-02-25 20:21:08 +00:00
drochner 0633616d7a build tftp filesystem, rearrange .ifdef slightly so that network stuff
is not built if ${SA_INCLUDE_NET} is not set
1999-02-24 19:31:03 +00:00
drochner 03497d6478 move TFTP filesystem from i386/stand/libsa here, it is mi 1999-02-24 19:24:56 +00:00
simonb e7d831fa31 Define bzero()/bcopy() in terms of memset()/memcpy() if LIBSA_USE_MEMSET
or LIBSA_USE_MEMCPY is defined.  Most everything pulls in stand.h so
this should cover ports that only use memset/memcpy but still want to
pull in as much as possible from sys/lib/libsa.
1999-02-22 10:08:42 +00:00
simonb 99c7714a77 Drop support for symlinks of UFS_NOSYMLINK is defined.
Don't compile in ufs_close/ufs_write if UFS_NOCLOSE/UFS_NOWRITE is defined.
Remove trailing whitespace.
1999-02-22 07:59:09 +00:00
simonb f60844a657 Use printf() instead of putchar() if SA_NOPUTCHAR is defined (for the
pmax).
Also don't include stdarg.h/varargs.h - we don't use them here.
1999-02-22 07:53:52 +00:00
pk bae33b3ad6 Split the printf variants into separate files. 1999-02-13 20:56:57 +00:00
lukem dcab0210a0 convert from NOxxx= to MKxxx=no.
include <bsd.own.mk> if testing a MKxxx variable.
1999-02-13 02:54:17 +00:00
drochner ccc6fbda81 Add some #ifdef SUPPORT_LINUX code which specifies a BOOTP tag to pass
a command line for that kernel.
Minor sizeof() sanity.
1999-02-12 10:56:18 +00:00
drochner 836a315463 We can't prototype exit() publically because it might take an argument or
not, depending on the port-specific environment.
Separate panic() and exit() so that the mi/default panic() can be used
without conflicting with a local exit() definition, move exit(void)
prototype to the default exit() implementation.
Closes PR bin/6990 by Wolfgang Helbig <helbig@Informatik.BA-Stuttgart.DE>.
1999-02-12 10:51:28 +00:00
drochner ee57895586 That got broken in KNFifying. 1999-02-12 10:44:07 +00:00
pk ac01ce3a75 sprintf() now produces a return value, like the standard counterpart does.
Also, implement vsprintf(), snprintf() and vsnprintf().
1999-02-11 14:32:00 +00:00
pk eee0165e87 Add missing prototypes. 1999-02-11 09:10:43 +00:00
pk 08f1cf6408 Add missing prototypes and KNF the lot. 1999-02-11 09:09:06 +00:00
kleink 22fc60a59a Separate the userland and libsa errno declarations from <sys/errno.h> into
their canonical places.
1999-01-12 03:08:14 +00:00
he 02cf5984b5 Retry ustarfs_cylinder_read after disk change, apparently required on i386. 1998-12-19 19:24:32 +00:00
matt 2e00799098 Conditionalize include of <lib/libkern/libkern.h> with _STANDALONE (like
libsa/nfs.c does).  Fixes VAX libsa build problem.
1998-10-30 16:56:30 +00:00
bad 34f348a9e4 Work around gcc warning. 1998-10-15 18:01:49 +00:00
ross 0450169fae 1. Avoid snarfing label areas unless necessary; read with monotonically
increasing block numbers and don't reread cylinder 0.

2. Recognize the USTAR.... meta-info file...kind of like a super-block,
   it makes the volume size and label info programmable.
1998-10-15 01:11:46 +00:00
ross 4d17a0bfee Reserve an 8K label area on every disk, not just the first. Rewrite the block
addressing and disk changing code. Separate disk addressing into three layers.
(virtual: ustar format space spanning volumes, logical: format space relative
to current volume, and physical: standard meaning). Compute a checksum of the
disk 0 8k label area, and define a label for disk 2, 3.... Detect incorrect
disk changing order and attempt to recognize our disk 0 from its checksum.
1998-10-05 04:56:36 +00:00
ross f7ef9b367f tfs -> ustarfs 1998-09-24 05:23:33 +00:00
ross aeccd73ce4 Remove memset() prototype. 1998-09-22 20:29:03 +00:00
ross 141a463d8f Prototype memset(). 1998-09-22 00:37:08 +00:00
ross 05330db703 Make sure ctags(1) indexes oopen(). 1998-09-22 00:36:45 +00:00
ross 71ddd906d4 Add tfs.c to SRCS. 1998-09-22 00:36:01 +00:00
ross fb0dcdaee2 Add `tfs', a USTAR-format FS, featuring fast floppy loads, 5% better
space efficiency, and (the real reason) multiple-volume files.
1998-09-22 00:35:15 +00:00
lukem c9db84ecc9 distclean is a synonym for cleandir 1998-09-05 15:15:14 +00:00
is 4c3784857e back out last change 1998-07-27 15:10:05 +00:00
is aaa6d634aa write prototype: void * -> const void *.
[Else the Amiga bootblock can't be built.]
1998-07-27 06:17:49 +00:00
gwr 5afda96fca Be quiet if bootparamd gives us an empty gateway spec.
(which is quite normal).  Just make noise if it was
missing, which explains the very long timeout...
(Would be nice if sendrecv said "retrying...")
1998-06-29 20:25:59 +00:00
gwr e655461e32 Add support for "%p" format (easy). 1998-06-16 19:10:15 +00:00
gwr d63354072c When the gateway bootparam is missing, be clear about that
in the error message instead of showing zero or nothing.
1998-06-16 19:08:10 +00:00
drochner 8b4cd5f3da egcs -Wall -Werror 1998-05-14 18:08:58 +00:00
drochner 2cca6a1757 -catch zero and broadcast IP addresses sent by a DHCP server
-KNF
1998-04-24 18:50:23 +00:00
ross 331fee623e Sweep up some miscellaneous leftover lite2 integration shrapnel. 1998-03-01 07:15:39 +00:00
drochner 642cbc64e2 Always set own IP address to 0.0.0.0 before BOOTP or DHCP. 1998-02-16 11:10:54 +00:00
cgd 26d7b63bd3 make sure that LORDER, TSORT, AR, NM, RANLIB, and SIZE are correctly
and consistently set when doing kernel library builds.
1998-02-07 00:11:29 +00:00
thorpej 60c3299e3e Fix some debugging printf formats. 1998-01-23 19:27:44 +00:00
perry 1a80fd799d RCSID Police. 1998-01-05 19:19:41 +00:00
scottr d8f027887d If the send routine returns an error (-1), wait and retry using the same
backoff mechanism we use for receiving the response.  This is particularly
helpful when we have transient errors on transmit, e.g. a very busy
network or router.
1997-12-26 22:41:30 +00:00
gwr 2031003c9b Oops - forgot to set netmask=smask 1997-12-10 20:38:37 +00:00
gwr ecd43c7870 Request the "gateway" parameter and use its contents
to determine our gateway and subnet mask, consistent
with what is done by nfs_mountroot.
1997-12-10 20:19:00 +00:00
lukem 3acbcabd91 use COPTS instead of CFLAGS (entry currently commented out) 1997-10-26 22:08:38 +00:00
cjs 4b97411a80 Change sd.transparent to sd.compressed, so that we default to non-
compressed mode when we zero out the structure. Check_header() now
does not force us to uncompressed mode if we read no data (EOF);
it leaves the default, so that if we check at the end of a file,
we don't set the file to uncompressed mode and blow up later lseeks
on it.
1997-10-18 22:27:15 +00:00
thorpej 176a81b2c5 Copyright assigned to The NetBSD Foundation. 1997-10-05 18:37:01 +00:00
drochner b65a5212c3 Save some bytes by keeping the number of byteswaps minimal.
Allow to switch off UDP checksum generation and check via compile time
option (for the really desperade).
1997-09-17 16:30:51 +00:00
drochner 74c59c27a2 Keep a copy of the original BOOTP bp_siaddr field, in case we want to
use it later for TFTP.
1997-09-17 16:25:29 +00:00
drochner 9f58a1a9bb fix printf() format warnings in debug output 1997-09-17 16:24:00 +00:00
drochner 93bb01fe6d -Wall fixes 1997-09-06 13:57:14 +00:00
drochner 616ee86daf -add DHCP support - this option also extends the vendor extension area
to 312 bytes (The classical 64 bytes are likely to be too small if a
  rootpath is transferred.)
-make CMU vendor extension support optional
-remove code handling domain name/server (unneeded for boot code)
- -Wall fixes in debug code
1997-09-06 13:55:56 +00:00
drochner 25c68ee4f2 Remove this relict, it's not needed anymore. 1997-07-22 17:51:51 +00:00
drochner bcf29dc4be Don't use "if_ether.h", it's not used. 1997-07-22 17:50:37 +00:00
drochner 64cd693ada Don't use private copy of old netinet/if_ether.h.
Use <net/if_ether.h> for ethernet specific definitions, and insert private
definitions for ARP if needed. (The new ARP macros in <net/if_arp.h> are
not used because they create larger code, and we really don't need more
than ethernet/ip support here.)
1997-07-07 15:52:49 +00:00
drochner a8ac47dd1b Fix syntax error which appeared #ifdef DEBUG ("end[]").
Simplify the heap location stuff.
1997-07-04 18:47:25 +00:00
drochner d9fbb6e1eb Catch errors from underlying reads, ie where oread() returns -1.
(Original code used fread() which never returns -1, so this case was
not handled.)
1997-07-04 18:45:11 +00:00
thorpej fee80fcee9 - Fix ZMAGIC image loading.
- Deal with stripped kernels.
- Let machine-dependent code frob the start address.
- General cleanup.
From Matthias Pfaller <matthias@netbsd.org>
1997-06-28 07:17:56 +00:00
drochner a1d00666ac Allow to define the location of the heap at runtime #if HEAP_VARIABLE.
That helps to test libsa code in user space.
1997-06-26 19:17:40 +00:00
drochner 96dde15c3f Don't define STANDALONE here, it is not used by sys/lib/libsa code.
Port dependant code depending on it must define it in its own Makefile.
1997-06-26 19:14:53 +00:00
drochner ed2ca9f1fa Avoid user space headers for standalone programs.
Don't use sys/lib/libkern or sys/lib/libz if not standalone
 (ie, user space test programs).
1997-06-26 19:11:30 +00:00
thorpej a2694f54d8 Don't run off the end of the format string if the caller botched for
format modifier.  Pointed out by Daniel G. Pouzzner in PR #2633.
1997-06-26 06:20:30 +00:00
drochner f504cf88e8 Conditionally compile without symlink support (#ifdef NFS_NOSYMLINK).
Saves 708 bytes (i386). (close pr misc/3335)
1997-06-16 20:47:11 +00:00
drochner bc7d1ebcfb Don't #include <string.h>, needed prototypes are in libkern.h. 1997-06-13 14:32:24 +00:00
drochner a0c4d8cb61 Add prototype for strerror(). 1997-06-13 14:30:44 +00:00
drochner 319cc90118 -Wall fixes 1997-06-13 14:29:50 +00:00
drochner 8347a7476f Bring prototypes into scope. 1997-06-13 14:28:52 +00:00
cjs 7a66732d34 Back out BUILDDIR and NOINSTALL changes. 1997-05-31 21:21:13 +00:00
cjs 75380e08a1 Use new NOINSTALL option for libraries that are used only during the build
of a program, and not installed into the final system.
1997-05-30 01:55:09 +00:00
mycroft 185b24dd5b Use libinstall::, not install:, to prevent instaling LIB. 1997-05-07 16:20:26 +00:00
is 07b064e02e New ARP system, supports IPv4 over any hardware link.
Some of the stuff (e.g., rarpd, bootpd, dhcpd etc., libsa) still will
only support Ethernet. Tcpdump itself should be ok, but libpcap needs
lot of work.

For the detailed change history, look at the commit log entries for
the is-newarp branch.
1997-03-15 18:09:08 +00:00
gwr 4478e618ee Fix a warning. 1997-03-14 21:03:43 +00:00
gwr 2cf7613010 Sun RPC/bootparams always enabled (No -DSUN_BOOTPARAMS needed)
Add SUPPORT_BOOTP (and global try_bootp) to allow MD code to
determine whether BOOTP is used (compile-time and run-time).
Thanks to Matthias Drochner for the SUPPORT_BOOTP ideas.
Copyright asigned to The NetBSD Foundation.
1997-03-14 20:34:48 +00:00
gwr 8f0295e7f0 Moved here (via repository copy) so they are more easily shared.
I did not add them to the library, but rather compile them where
the netboot program is built so I can add -DSUN_BOOTPARAMS, etc.
1997-03-11 18:23:55 +00:00
cgd 72a6422a5e allow includers to specify library-specific CPP flags via ${LIB}MISCCPPFLAGS 1997-02-16 21:25:18 +00:00
leo 2242daf790 Initialize 'bestf' to make this compile again with -Wall. 1997-02-16 13:02:59 +00:00
thorpej 9a6b12944d In close(), if the file descriptor was used for writing, don't free
data structures that weren't allocated.  Fix sanity-checked
by Matthias Drochner.
1997-02-04 18:38:20 +00:00
thorpej 63930d7db4 Add some debugging code to free(), to catch frees before the
start of the heap and beyond the end of the heap (if a heap limit
is defined).
1997-02-04 18:36:33 +00:00
pk 01bd8a8ca8 Initialize `f_offset'. 1997-01-28 09:41:03 +00:00
cgd 981d496969 Change file system file-open semantics slightly: if file system returns
EINVAL, that error code is ignored, leaving whatever other meaningful
error code that might have previously been returned intact.  Stand-alone
file system implementations return EINVAL typically when the file system
is not recognized (i.e. cd9660_open on a UFS file system, ufs_open on a
cd9660 file system, etc.).  This meant that if you had multiple file
systems in a file system switch, the first returned ENOENT (because
it recognized the file system type, but the file wasn't there) and
the second returned EINVAL (because it didn't recognize the file system
type), errno would be set to EINVAL.  Now it'll be set to ENOENT.

It would probably make sense to have file systems return a special
error code to indicate "this file system is unrecognized," which
could then be special-cased, but that's a fair bit more invasive.
1997-01-25 01:13:41 +00:00
cgd da4932bff2 add EINVAL and ENOTDIR, as suggested by Matthias Drochner 1997-01-25 00:37:50 +00:00
cgd 192e22f5b7 isonum_722 and isonum_732 are now back in iso.h 1997-01-24 00:53:40 +00:00
cgd 6f0de181b1 update for iso.h changes which remove the need for the nastiness that was here 1997-01-24 00:29:19 +00:00
cgd 3ca5f41d59 clean up substantially. Transform clean, depend, cleandir targets from ::
to :, so they can be used e.g. with <bsd.prog.mk>.  Standardize variable
names used to configure kernel libraries.

Variables used by these Makefile.inc's are:

S		must be set to the top of the 'sys' tree.
${LIB}DST	may be set to the location of the directory where library
		objects are to be built.  Defaults to ${.OBJDIR}/lib/${lib}.
${LIB}_AS	may be set to 'obj' to build a object from the library's
		object files.  (Otherwise, a library will be built.)
		Defaults to 'library'.
${LIB}MISCMAKEFLAGS
		Miscellaneous flags to be passed to the library's Makefile when
		building.  See library's Makefile for more details about
		supported flags and their default values.

(where LIB is KERN, SA, or Z, and lib is kern, sa, or z, depending on which
library's Makefile.inc is being discussed.)
1997-01-23 22:29:07 +00:00
cgd 2ce4559663 clean up variable use, standardize with other kernel library Makefiles.
rename 'NO_NET' variable to SA_INCLUDE_NET, which defaults to 'yes' but can
be set differently.  kill EXTRACFLAGS, add SACPPFLAGS (generated from
CPPFLAGS by Makefile.inc) to CFLAGS.  Add support for including gzipped-file
read support, enabled by setting SA_USE_CREAD to yes (defaults to no).
1997-01-23 22:19:56 +00:00
cgd ea27b7aa31 Add a whole bunch of features, from Matthias Drochner:
best-fit, rather than first-fit, algorithm.
	ability to handle free()s with zero size (needed for gzip read
	    support).
	ability to start the heap someplace else (defined by HEAP_START).
	ability to limit growth of the heap (via HEAP_LIMIT).
	debugging sanity checks (ifdef DEBUG).
	allocation tracing support, to help debugging (ifdef ALLOC_TRACE).
and from me:
	ability to pick a (smaller) first-fit algorithm (via ALLOC_FIRST_FIT).
	lots of comments.

If heap limits and all of the debugging features are disabled (the default),
and ALLOC_FIRST_FIT is defined (not the default), compiled with -O on the
alpha the new version is the same (object) size as the old version.
1997-01-22 01:18:23 +00:00
cgd 862c1d585c code to open/close/read/lseek gzipped files, from Matthias Drochner. 1997-01-22 00:40:07 +00:00
cgd 21979e8d6b define these functions with an 'o' prepended to their names if
__INTERNAL_LIBSA_CREAD is defined (so that they can be used by the
compressed-read code).
1997-01-22 00:38:09 +00:00
cgd b581a80665 prototype lseek(). also, prototype oopen(), oclose(), oread(), and olseek()
if __INTERNAL_LIBSA_CREAD is defined.
1997-01-22 00:37:23 +00:00
cgd 493bd9e110 fix file system buffer leak that occurs if an error occurs (e.g. file not
found) during the file system open function after having read some data
from the disk.  From  Matthias Drochner (PR 3120).
1997-01-17 20:17:58 +00:00
cgd 9596fd8a77 only call the device close routine on a (fall-through) error if
F_NODEV isn't set in the file flags for the file being opened.
Pointed out by Matthias Drochner in PR 3122.  (fix equivalent to
the one he included, but stylistically different.)
1997-01-17 20:03:53 +00:00
mikel 9be91c7fb4 fix my typo; found by Klaus Klein <kleink@layla.inka.de> 1997-01-17 17:06:06 +00:00
mikel 313f6180e6 add prototypes for ethers(3) functions; fixes PR 2471.
fix suggested by Jason Thorpe.
1997-01-17 08:17:57 +00:00
cgd b1f42c3a13 add memcmp, implemented as a wrapper around bcmp() (like memcpy() is
implemented as a wrapper around bcopy()).
1997-01-16 04:06:15 +00:00