peter [Sat, 18 Oct 1997 13:23:35 +0000 (13:23 +0000)]
Import Matt's current de driver... He appears to be maintaining it in
the NetBSD source tree now. This is slightly newer than the updated
.tar.gz on the 3am-software web site.
peter [Sat, 18 Oct 1997 13:23:35 +0000 (13:23 +0000)]
Import Matt's current de driver... He appears to be maintaining it in
the NetBSD source tree now. This is slightly newer than the updated
.tar.gz on the 3am-software web site.
joerg [Sat, 18 Oct 1997 10:59:47 +0000 (10:59 +0000)]
Make all the documented (in pcvt(4)) options supported options. While
i was at it, do no longer insist on `PCVT_FREEBSD' being declared in
the config file, but default it to a reasonable value.
More cleanup to follow, but this part is safe for RELENG_2_2, too.
joerg [Sat, 18 Oct 1997 10:40:02 +0000 (10:40 +0000)]
Something that should have been done 2.5 years ago: install pcvt's
accompanying doc files into /usr/share/pcvt/. (This goes to the `doc'
distribution, not `bin'.)
jkh [Sat, 18 Oct 1997 05:54:17 +0000 (05:54 +0000)]
- do string-magic on the right variable when trying
to find dependent packages on the local disk (i.e. package given as
filename, not URL)
- document $PKG_PATH
- use -v on pkg_add for dependent packages
peter [Sat, 18 Oct 1997 01:37:52 +0000 (01:37 +0000)]
Update Makefile to know about PPP_FILTER and fix the PPP_BSDCOMP and
PPP_DEFLATE options... The code uses #if defined(PPP_DEFLATE) etc, so the
original method of "#define PPP_DEFLATE 0" did not actually disable
anything. It was not possible to configure out bsdcomp or zlib
compression. Also, join the settings for PPP_FILTER and NBPFILTER together
since they are related here (can't have PPP_FILTER without NBPFILTER).
peter [Sat, 18 Oct 1997 01:29:18 +0000 (01:29 +0000)]
Don't say that the filtering options are only available under NetBSD, and
don't claim that _any_ serial speed is settable, mention that it has to
be supported by the device driver. Some have very flexible baud rate
selection (ie: based on divisors etc, such as the com ports), while others
have explicit baud rate choices.
peter [Sat, 18 Oct 1997 00:56:23 +0000 (00:56 +0000)]
Better fix for the bpf dependency that doesn't have such a large impact
on the code and pppd in userland. PPP_FILTER is meant to be an option (or
negatable option).
roberto [Fri, 17 Oct 1997 21:30:30 +0000 (21:30 +0000)]
Change PPP_FILTER into NBPFILTER to fix kernel compilation.
It should probably be changed in ppp_tty.c for consistency but I'll let
Brian deal with this.
phk [Fri, 17 Oct 1997 12:36:19 +0000 (12:36 +0000)]
Make a set of VOP standard lock, unlock & islocked VOP operators, which
depend on the lock being located at vp->v_data. Saves 3x3 identical
vop procs, more as the other filesystems becomes lock aware.
jdp [Fri, 17 Oct 1997 04:59:56 +0000 (04:59 +0000)]
Fix two bugs which caused various RPC programs (mountd, nfsd, ...)
to fail under certain circumstances.
1. In one spot, the ifr_flags member was being examined in the
wrong structure, thus it contained garbage. On a machine in which
only the loopback interface was up, this caused everything that
wanted to talk to the portmapper to fail -- a particular problem
with laptops, where the pccard ethernet interface is likely to come
up long after the attempt to start mountd, nfsd, amd, etc.
2. Compounding the above problem, get_myaddress() returned a
successful status even though it failed to find an address that it
considered good enough.
And remove identical functionality from filesystems
4. Add vop_stdpathconf, which returns the canonical stuff. Use
it in the filesystems. (XXX: It's probably wrong that specfs
and fifofs sets this vop, shouldn't it come from the "host"
filesystem, for instance ufs or cd9660 ?)
5. Try to make system wide VOP functions have vop_* names.
bde [Thu, 16 Oct 1997 14:58:30 +0000 (14:58 +0000)]
Handle machine-dependent (stdlib) sources more automatically.
This fixes bugs in the manual handling. abs.[cS] was handled too
specially and the wrong (.c) variant for each of div.[cS], labs.[cS]
and ldiv.[cS] was added to SRCS. This caused the .c variant to be
used if `depend' was made and the .S version to be used otherwise.
bde [Thu, 16 Oct 1997 14:26:13 +0000 (14:26 +0000)]
Removed the subdirectory paths from the definitions of MAN[1-9]. They
were a workaround for limitations in bsd.man.mk that were fixed about
2 years ago.
bde [Thu, 16 Oct 1997 13:46:50 +0000 (13:46 +0000)]
Handle machine-dependent (m-d) (string) sources more automatically.
The names of m-d variants are now added (manually) to MDSRCS instead
of to SRCS, and the names of all machine-independent (m-i) variants
that can reasonably be replaced by an m-d variant are now added
(manually) to MISRCS instead of to SRCS, so that a simple substitution
can be used to discard the unused m-i variants. MISRCS is potentially
all m-i sources, but the substitution is too simple to be fast, so
MISRCS should be kept reasonably small.
libc/Makefile.inc:
Do the substitution.
libc/i386/string/Makefile.inc:
Add to MDSRCS instead of to SRCS. Add the names of all sources in this
directory, but no others.
libc/string/Makefile.inc
Add to MISRCS instead of to SRCS. Add the names of all sources in this
directory. Don't use (broken) explicit rules for special cases.
phk [Thu, 16 Oct 1997 10:50:27 +0000 (10:50 +0000)]
VFS mega cleanup commit (x/N)
1. Add new file "sys/kern/vfs_default.c" where default actions for
VOPs go. Implement proper defaults for ABORTOP, BWRITE, LEASE,
POLL, REVOKE and STRATEGY. Various stuff spread over the entire
tree belongs here.
2. Change VOP_BLKATOFF to a normal function in cd9660.
3. Kill VOP_BLKATOFF, VOP_TRUNCATE, VOP_VFREE, VOP_VALLOC. These
are private interface functions between UFS and the underlying
storage manager layer (FFS/LFS/MFS/EXT2FS). The functions now
live in struct ufsmount instead.
4. Remove a kludge of VOP_ functions in all filesystems, that did
nothing but obscure the simplicity and break the expandability.
If a filesystem doesn't implement VOP_FOO, it shouldn't have an
entry for it in its vnops table. The system will try to DTRT
if it is not implemented. There are still some cruft left, but
the bulk of it is done.
5. Fix another VCALL in vfs_cache.c (thanks Bruce!)
julian [Thu, 16 Oct 1997 07:28:50 +0000 (07:28 +0000)]
1/ by default make all versions of the same device get the same vnode.
2/ Show the dummy mount in the mount list. it cannot be reached (that I know of)
but puting it there, means that disks mounted from devfs will have their things such as the superblock and the bitmaps, synced to disk :)
ache [Wed, 15 Oct 1997 22:49:19 +0000 (22:49 +0000)]
srandom(time()) is too weak even for joke, use srandom(time() ^ getpid())
at least. Note that srandomdev can't be used here since gawk preserve old
seed value.
bde [Wed, 15 Oct 1997 16:16:41 +0000 (16:16 +0000)]
Removed the subdirectory paths from the definitions of MAN[1-9]. They
were a workaround for limitations in bsd.man.mk that were fixed about
2 years ago.
bde [Wed, 15 Oct 1997 15:27:19 +0000 (15:27 +0000)]
Added some 2-line source files to get a direct correspondence
between sources and objects. This will be used to avoid messy
special cases in Makefile.inc.
peter [Wed, 15 Oct 1997 14:11:08 +0000 (14:11 +0000)]
Remove old SIGALRM absorbing back-compat code. It wasn't working at all
for the entire time that it was there, so obviously nothing needs it
anymore.
Note, unix98/single-unix spec v2 says that usleep() returns an int rather
than a void, to indicate whether the entire time period elapsed (0) or an
error (eg: signal handler) interrupted it (returns -1, errno = EINTR)
It is probably useful to make this change but I'll test it locally first
to see if this will break userland programs [much]...
peter [Wed, 15 Oct 1997 14:06:15 +0000 (14:06 +0000)]
Give up on the "try and compensate for broken programs" cruft and revert
back to the original single nanosleep() implementation. This is POSIX and
Unix98 (aka single-unix spec v2) compliant behavior. If a program sets
alarm(2) or an interval timer (setitimer(2)) without a SIGALRM handler
being active, sleep(3) will no longer absorb it, and the program will get
what it asked for..... :-]
The original reason for this in the first place (apache) doesn't seem to
need it anymore, according to Andrey.
peter [Wed, 15 Oct 1997 13:58:52 +0000 (13:58 +0000)]
Sigh. Signal handlers are executed on leaving the system call, not
at moment of delivery. Restoring the signal mask after the tsleep()
is next to useless since the signal is still queued.. This was interacting
with usleep(3) on receipt of a SIGALRM causing it to near busy loop.
Now, we set the new signal mask "permanently" for signanosleep().
phk [Wed, 15 Oct 1997 13:24:07 +0000 (13:24 +0000)]
vnops megacommit
1. Use the default function to access all the specfs operations.
2. Use the default function to access all the fifofs operations.
3. Use the default function to access all the ufs operations.
4. Fix VCALL usage in vfs_cache.c
5. Use VOCALL to access specfs functions in devfs_vnops.c
6. Staticize most of the spec and fifofs vnops functions.
7. Make UFS panic if it lacks bits of the underlying storage handling.
joerg [Wed, 15 Oct 1997 12:16:37 +0000 (12:16 +0000)]
One could be surprised how much bugs can still be found here...
Properlay clean the global RM variable if cgetstr() failed for it.
Otherwise, a connection attempt to a remote machine was made (and a
bogus result code printed) if a local printer followed a remote one in
printcap, and you did a `lpq -a', since checkremote() falsely assumed
the printer to be a remote one.
While i was at it, removed a gratuituous newline printed in front of
the remote machine's name, thus making the output more consistent (and
better machine-parseable) now.
phk [Wed, 15 Oct 1997 09:22:02 +0000 (09:22 +0000)]
Stylistic overhaul of vnops tables.
1. Remove comment stating the blatantly obvious.
2. Align in two columns.
3. Sort all but the default element alphabetically.
4. Remove XXX comments pointing out entries not needed.
phk [Wed, 15 Oct 1997 07:42:34 +0000 (07:42 +0000)]
When the default vnops funtion is vn_default_error(), there is no reason to
implement small functions that just return EOPNOTSUPP for things we don't do.
The removed functions only apply to UFS based filesystems anyway.
msmith [Wed, 15 Oct 1997 07:35:48 +0000 (07:35 +0000)]
Mention that the Zip driver (vpo) requires SCSI disk support, and works
best with EPP 1.9 mode selected.
Submitted by: Gianmarco Giovannelli <gmarco@giovannelli.it>
bde [Wed, 15 Oct 1997 07:32:45 +0000 (07:32 +0000)]
IN_HASHED goes in the in-core flags ip->i_flag, not in the on-disk flags
ip->i_flags.
Rev.1.18 completely broke ufs. My root directory went away about 10
seconds after booting. I think file system damage was null, since
IN_HASHED = 0x80 is not used in the disk flags (it would probably
be UF_SOMETHING if it were used).
brian [Wed, 15 Oct 1997 01:01:17 +0000 (01:01 +0000)]
Initialise LCP, IPCP and CCP as soon as LCP is down.
Without this, in -auto mode, we stay in ST_STOPPING
and never check our dial filters to see if it's time
to bring the line up again.
wpaul [Tue, 14 Oct 1997 21:50:17 +0000 (21:50 +0000)]
Correct a bug in the 'allow arbitrary number of socket descriptors' changes
made to the RPC code some months ago. The value of __svc_fdsetsize is being
calculated incorrectly.
Logically, one would assume that __svc_fdsetsize is being used as a
substitute for FD_SETSIZE, with the difference being that __svc_fdsetsize
can be expanded on the fly to accomodate more descriptors if need be.
There are two problems: first, __svc_fdsetsize is not initialized to 0.
Second, __svc_fdsetsize is being calculated in svc.c:xprt_registere() as:
__svc_fdsetsize = howmany(sock+1, NFDBITS);
This is wrong. If we are adding a socket with index value 4 to the
descriptor set, then __svc_fdsetsize will be 1 (since fds_bits is
an unsigned long, it can support any descriptor from 0 to 31, so we
only need one of them). In order for this to make sense with the
rest of the code though, it should be:
This bug causes 2 errors to occur. First, in xprt_register(), it
causes the __svc_fdset descriptor array to be freed and reallocated
unnecessarily. The code checks if it needs to expand the array using
the test: if (sock + 1 > __svc_fdsetsize). The very first time through,
__svc_fdsetsize is 0, which is fine: an array has to be allocated the
first time out. However __svc_fdsetsize is incorrectly set to 1, so
on the second time through, the test (sock + 1 > __svc_fdsetsize)
will still succeed, and the __svc_fdset array will be destroyed and
reallocated for no reason.
Second, the code in svc_run.c:svc_run() can become hopelessly confused.
The svc_run() routine malloc()s its own fd_set array using the value
of __svc_fdsetsize to decide how much memory to allocate. Once the
xprt_register() function expands the __svc_fdset array the first time,
the value for __svc_fdsetsize becomes 2, which is too small: the resulting
calculation causes the code to allocate an array that's only 32 bits wide
when it actually needs 64 bits. It also uses the valuse of __svc_fdsetsize
when copying the contents of the __svc_fdset array into the new array.
The end result is that all but the first 32 file descriptors get lost.
Note: from what I can tell, this bug originated in OpenBSD and was
brought over to us when the code was merged. The bug is still there
in the OpenBSD source.
Total nervous breakdown averted by: Electric Fence 2.0.5
jkh [Tue, 14 Oct 1997 18:17:35 +0000 (18:17 +0000)]
Add a new startup variables menu for tweaking rc.conf variables in more
detail (also added more of them to the networking services menu). Add
new dmenuISetVariable() function for interactive setting of non-boolean
flags.
joerg [Tue, 14 Oct 1997 16:01:02 +0000 (16:01 +0000)]
Improve my hack from rev 1.6 of displayq.c, and make the TCP
connection timeout controllable by a new printcap(5) capability named
`ct' (connectiom timeout), defaulting to 120 seconds (which is the
default TCP connection timeout).
Would anybody see a problem with merging all this into RELENG_2_2?