Commit Graph

9206 Commits

Author SHA1 Message Date
Jordan K. Hubbard
bbfd33649d Remove top secret version information from the banner by default.
Loose lips sink ships!  Man the firewall and look alert!
1995-08-02 02:45:46 +00:00
Andrey A. Chernov
271381b3b8 Optimize a bit valid speed search using fact that speed table sorted
Submitted by:
Obtained from:
1995-08-01 23:38:00 +00:00
Andrey A. Chernov
7a82fc7855 Check for valid speeds in TIOCSET* and return EINVAL for incorrect
values instead of setting garbadge.
1995-08-01 23:27:36 +00:00
Andrey A. Chernov
765d5b0d6f Make strtod conforms manpage, use isspace to skip initial whitespaces
instead of hardcoded whitespaces
1995-08-01 22:20:16 +00:00
Andrey A. Chernov
e7241b8ffe Similar changes like in strtol, all this family is VERY broken
in 8bit environment (isalpha at the end of digits)
1995-08-01 22:04:57 +00:00
Andreas Schulz
eb26b35651 Add the maybe_stripped to a CLEANFILES target to get a clean obj directory
after a clean or cleandir.
1995-08-01 21:53:35 +00:00
Andrey A. Chernov
2bdca0d9f0 strtol and atoi VERY broken in 8bit chars locale, i.e. if you pass something
like 38400<any 8bit char, isalpha> it not detect this stuff and
produce very big number instead. Fixed by operating with unsigned char
and checking for isascii. (secure/telnetd hits by it f.e.)
1995-08-01 21:38:00 +00:00
David Greenman
4777741358 Removed my special-case hack for VOP_LINK and fixed the problem with the
wrong vp's ops vector being used by changing the VOP_LINK's argument order.
The special-case hack doesn't go far enough and breaks the generic
bypass routine used in some non-leaf filesystems. Pointed out by Kirk
McKusick.
1995-08-01 18:51:02 +00:00
Jordan K. Hubbard
162efbb15c Add device support for the Matrox Meteor.
Submitted by:	james
1995-08-01 13:15:52 +00:00
Jordan K. Hubbard
d79e408656 Tweak the default entry a little to take advantage of new getty
feature.
1995-08-01 13:13:30 +00:00
Jordan K. Hubbard
4d7ccc95b4 A useful aid.. Add support for:
%r:	current release
	%m:	machine architecture type (i386 for now)
	%s:	OS name (FreeBSD)

from uname() in banner string.
1995-08-01 13:12:24 +00:00
Jordan K. Hubbard
156547674a Round this out. Now seems to transfer packages properly over ftp
as it was supposed to.  PKG_PATH more sorely needed than ever now..
Hmmmm.
1995-08-01 09:49:27 +00:00
Jordan K. Hubbard
118e410749 Argh! I hate my life! I can't seem to do anything right here today.
This should restore functionality to the pkg_install suite.
1995-08-01 07:16:51 +00:00
Jordan K. Hubbard
d660e3ae8d Sync to author's Version 1.3.
Submitted by:	james
1995-08-01 07:07:42 +00:00
Jordan K. Hubbard
a2048b9c26 Sync to reality for the Gravis Ultrasound MAX card. 1995-08-01 07:05:16 +00:00
Andrey A. Chernov
263ac6e4b1 Reduce passed speed to 38400, like telnet does too.
Remote rlogind may not understand speeds > 38400.
1995-08-01 02:23:21 +00:00
Bruce Evans
19829865ca Obtained from: partly from ancient patches of mine via 1.1.5
Change all short variables in `struct tty' to int.  Shorts were only
right on ancient systems with ints optimized for vaxness over
efficiency.
1995-07-31 22:50:08 +00:00
Bruce Evans
35b46c174c Obtained from: partly from ancient patches of mine via 1.1.5
Handle MDMBUF a little better.  Prepare to handle 4 different kinds of
output flow control.
1995-07-31 22:48:46 +00:00
Jordan K. Hubbard
8f5171930e Reserve space for Jim Lowe's impending Matrox Meteor card driver.
Submitted by:	james
1995-07-31 22:06:55 +00:00
Bruce Evans
0d0e55bbbd Obtained from: an ancient patch of mine via 1.1.5
Call output process whether or not there is any output.  The output
process may be overloaded to handle hardware flow control and
hardware output completions.
1995-07-31 21:54:46 +00:00
Bruce Evans
f91307e23d Obtained from: an ancient patch of mine via 1.1.5
Clear PENDIN when input is flushed so that the handling of future input
doesn't get pessimized.
1995-07-31 21:43:37 +00:00
Jordan K. Hubbard
8d542917cf Add Irish mirror site. 1995-07-31 21:39:47 +00:00
Bruce Evans
7922019b1c Eliminate the use of TS_TIMEOUT and ttstrt(). These are for handling
tab delays etc.  pcvt was using them to recover from a (rarely lost)
race.  Use a little more locking to avoid the race.
1995-07-31 21:35:17 +00:00
Bruce Evans
b42d2104dc Use tsleep() instead of ttysleep() to wait for carrier since a generation
change isn't an error.
1995-07-31 21:28:42 +00:00
Bruce Evans
1856afe955 Sleep on a better address to wait for output to drain out of the
hardware.  Set the sleep-on flag for the address so there is more
than a small chance that the sleep address is actually used (this
used to work by timing out).  Don't bother clearing the sleep-on
flag after a timeout here or elsewhere since leaving it set just
generates a few null calls to wakeup().
1995-07-31 21:10:36 +00:00
Bruce Evans
9fa18570a2 Obtained from: partly from ancient patches of mine via 1.1.5
Introduce TS_CONNECTED and TS_ZOMBIE states.  TS_CONNECTED is set
while a connection is established.  It is set while (TS_CARR_ON or
CLOCAL is set) and TS_ZOMBIE is clear.  TS_ZOMBIE is set for on to
off transitions of TS_CARR_ON that occur when CLOCAL is clear and
is cleared for off to on transitions of CLOCAL.  I/o can only occur
while TS_CONNECTED is set.  TS_ZOMBIE prevents further i/o.

Split the input-event sleep address TSA_CARR_ON(tp) into TSA_CARR_ON(tp)
and TSA_HUP_OR_INPUT(tp).  The former address is now used only for
off to on carrier transitions and equivalent CLOCAL transitions.
The latter is used for all input events, all carrier transitions
and certain CLOCAL transitions.  There are some harmless extra
wakeups for rare connection- related events.  Previously there were
too many extra wakeups for non-rare input events.

Drivers now call l_modem() instead of setting TS_CARR_ON directly
to handle even the initial off to on transition of carrier.  They
should always have done this.  l_modem() now handles TS_CONNECTED
and TS_ZOMBIE as well as TS_CARR_ON.

gnu/isdn/iitty.c:
Set TS_CONNECTED for first open ourself to go with bogusly setting
CLOCAL.

i386/isa/syscons.c, i386/isa/pcvt/pcvt_drv.c:
We fake carrier, so don't also fake CLOCAL.

kern/tty.c:
Testing TS_CONNECTED instead of TS_CARR_ON fixes TIOCCONS forgetting to
test CLOCAL.  TS_ISOPEN was tested instead, but that broke when we disabled
the clearing of TS_ISOPEN for certain transitions of CLOCAL.

Testing TS_CONNECTED fixes ttyselect() returning false success for output
to devices in state !TS_CARR_ON && !CLOCAL.

Optimize the other selwakeup() call (this is not related to the other
changes).

kern/tty_pty.c:
ptcopen() can be declared in traditional C now that dev_t isn't short.
1995-07-31 21:02:00 +00:00
Bruce Evans
177af312cd Assorted cosmetic changes:
Make more functions static.

tty.c:
Use tcflag_t (u_long) and cc_t instead of u_char and int/long.

Don't record values that are only evaluated once.

Compare ints using imin(), not min().  min() is for comparing u_ints.
Old versions of tty.c used the type-safe but multiple-evaluation-unsafe
macro MIN().  The args are apparently never negative; otherwise this
change would be non-cosmetic.

Don't repeat the loop test in ttywait().

tty.h:
Improve English in and formatting of comments.
1995-07-31 19:17:19 +00:00
Bruce Evans
f3b37f91c1 Improve input flow control.
Use input buffer watermarks of TTYHOG-512 (high) and (high)*7/8
(low) instead of TTYHOG/2 (high) and TTYHOG/5 (low) to agree with
some drivers.  512 is magic and some things depended on TTYHOG/2
>= TTYHOG-512 to work; now they depend on the 512 magic not changing
and TTYHOG-512 being significantly larger than 0.  This should be
handled in ttsetwater().

Separate the decision about whether to do input flow control from
doing it.  ttyblock() now just starts input flow control (hardware
and/or software) and there is a new function ttyunblock() to stop
it.  The decisions are the same except for the watermark changes
and allowing for input expansion for PARMRK.

When flushing input, try harder at first to send a start character
if required, but give up if the first attempt fails.

cy.c, rc.c, sio.c:
Simplify: let ttyinput() handle input flow control if it is not
being bypassed.  Use ttyblock() to start flow control otherwise.

rc.c:
Use same input flow control test as elsewhere: test in a more
efficient order and start flow control at >= highwater instead of
at > highwater.
1995-07-31 18:29:51 +00:00
Bill Paul
cca80d1fd8 The other day someone brought me an old Apple Laserwriter II with a serial
interface set at 57600 baud, and I found out the hard way that lpd doesn't
know about speeds greater than 38400, even though <sys/ttydev.h> also
permits 57600 and 115200 baud. Fix this by adding B57600 and B115200 to the
'bauds' table. (The Apple printer worked properly once I did this, BTW. :)
1995-07-31 13:59:45 +00:00
Gary Palmer
7d4aa0825d Try to make the `syn' blocking code act a bit more sensibly - don't
block `syn' packets that have `ack' set.
Reviewed by:
Submitted by:
Obtained from:
1995-07-31 13:58:35 +00:00
Peter Wemm
f0448ae4a2 Fix panic("ifpromisc failed") when shutting down a bpf tap when the attached
interface is no longer IFF_UP.
The test for IFF_UP in ifpromisc is only useful while enabling IFF_PROMISC
and the higher levels of the bpf code do not allow for the possibility of
failure while shutting down.  This is a trivial change.
Also, fixes PR#522.
1995-07-31 10:35:36 +00:00
Andras Olah
d3eede9d32 Remove a redundant `if' from tcp_reass().
Correct a typo in a comment (SEND_SYN -> NEEDSYN).

Reviewed by:	David Greenman
1995-07-31 10:24:22 +00:00
Mike Pritchard
a9680d7112 Null terminate all strings returned by the dummy uname() routine,
and make sure that the version string is somewhat sane.  This
closes out PR#462.

Reviewed by: Bruce Evans
1995-07-31 10:10:02 +00:00
Mike Pritchard
e145373611 Fix the sysctl string routines to return as much of the
string as possible and return ENOMEM if the entire string cannot
be returned.  This brings the routines in line with how the man
page says they work, and how the calling routines are expecting
them to work.  This allows the dummy uname() routine in libc to
obtain the version string, since the kernel version string is
longer than that normally returned by the uname() routine.
This is 3/4 of the fix for PR# 462.

Reviewed by: Bruce Evans
1995-07-31 10:07:31 +00:00
Mike Pritchard
3bc90ef89a Fix some incorrect comments that make reference to /dev/fd. 1995-07-31 09:52:21 +00:00
Peter Dufault
c8bb1269a8 Return the correct number of I/O ports as part of the probe so that the
conflict resolution works.
1995-07-31 09:38:21 +00:00
Mike Pritchard
f03dea9996 Fix various kernfs file system problems, which can result in
umountable file systems, hung processes, or system panics:

- Some operations could return without decrementing the vnode
  reference count.
- Some operations could leave the vnode locked.
- Generalize the /kern/rootdev & rrootdev files so that they
  are no longer special cased in kernfs_lookup().

Note: procfs, fdescfs, and most of the other miscfs/* file systems
also suffer from the same type of problems and I will work on
fixing them one at a time.
1995-07-31 08:52:02 +00:00
Justin T. Gibbs
185363acb2 Long overdue, more complete, reset code. These changes implement a
BUS DEVICE RESET followed by BUS RESET failure recovery strategy including
the necesary renegotiation of sync/wide transfers after recovery completes.

Clean up debugging code to make it more finely selectable.  Reset code
debugging is enabled for now so I can get more feedback on how this
code behaves in real life.
1995-07-31 08:25:36 +00:00
Justin T. Gibbs
4dc2fc9088 Pause the sequencer when message only requests complete. This allows the
kernel driver to know the exact state of the sequencer after a BUS DEVICE
RESET or ABORT completes so it can properly clean up the request.
1995-07-31 08:21:59 +00:00
Satoshi Asami
75f2898f9a Submitted by: Torbjorn Granlund <tege@matematik.su.se>
* /usr/bin/which doesn't work if a complete path is passed to it.  This is
  incompatible with other flavours of Unix, Here is a suggested patch:
1995-07-31 04:22:07 +00:00
Satoshi Asami
e7a7980c25 Sync this up with ftp.c. 1995-07-31 04:00:01 +00:00
Jordan K. Hubbard
d5285ad858 Remove dependency on sysinstall. 1995-07-31 02:27:58 +00:00
Jordan K. Hubbard
103ccee575 Add ftp.c to makefile - that might make it work better. Sheesh! 1995-07-31 01:26:58 +00:00
John Fieber
bf8f091b44 Minor corrections.
Submitted by:	joerg_wunsch@uriah.heep.sax.de (Joerg Wunsch)
1995-07-31 01:18:46 +00:00
Bruce Evans
70eec7420c Ignore trailing slashes in pathnames that "refer to a directory",
as is required to be POSIXLY_CORRECT and "right".  I interpret
"referring to a directory" as being a directory or becoming a
directory.  E.g., the trailing slashes in mkdir("/nonesuch/"),
rename("/tmp", /nonesuch/") and link("/tmp", "/root_can_like_dirs/")
are ignored because the target will become a directory if the
syscall succeeds.  A trailing slash on a symlink causes the symlink
to be followed (this is a bug if the symlink doesn't point to a
directory; fix later).
1995-07-31 00:35:58 +00:00
David Greenman
2d691d7dbc Correct the mangled English when mentioning that the kernel config-file
"dump on" is deprecated...by removing the note completely.
1995-07-30 18:33:01 +00:00
David Greenman
a705fd3e48 Fix a bug in my disabled version of trap_pfault()...curpcb may be NULL even
when curproc isn't. This condition occurs at system startup and perhaps
at other times.
1995-07-30 17:49:24 +00:00
David Greenman
887f41183e Rewrote shutdown_nice() to fix the init-not-yet-started panic(). 1995-07-30 17:10:36 +00:00
Gary Palmer
4545963cd1 Typo in log message : errros -> errors 1995-07-30 15:18:29 +00:00
Bruce Evans
79ccb9aff3 Don't swap the queue headers to implement concatenation of the
queues for TIOCSETA[W].  Swapping an even number of times broke
the queue resource limits.  This would have broken CRTSCTS flow
control if the clist slush list was used up.

Don'concatenate the queues for TIOCSETA[W] if one of the queues
has a resource limit of 0.  Concatenation would cause a panic if
one of the queues is nonempty and the other is limited to length
0.  This may have caused panics in PPPDISC.

Wake up readers after all transitions of ICANON.  When ICANON is
turned off it is quite likely that characters will become available
to be read.

Reduce indentation near these changes.
1995-07-30 13:52:56 +00:00