Commit Graph

98536 Commits

Author SHA1 Message Date
John Baldwin
acf7d97237 Fix the PCI attach routine to properly setup the IRQ and port resource
rid's and to deallocate resources if a failure occurs during attach.  This
patch also fixes the driver to return failure if bus_alloc_resource() for
the IRQ fails rather than panic'ing on the next line by passing a NULL
resource to bus_setup_intr().  The other attachments already do all this.

Submitted by:	Jun Su <csujun@263.net>
2004-01-22 16:07:03 +00:00
Mike Makonnen
dec04f43d9 o Implement the pthread_spin_* functions in libthr.
o Man pages
2004-01-22 15:31:56 +00:00
Hidetoshi Shimokawa
4c790222f6 Add missing free() in exception handlers.
Reported by:    Stanford Metacompilation research group
2004-01-22 14:41:17 +00:00
Ralf S. Engelschall
446655ac4f Fix generation of random multicast MAC address.
In case no real/physical IEEE 802 address is available, both the expired
"draft-leach-uuids-guids-01" (section "4. Node IDs when no IEEE 802
network card is available") and RFC 2518 (section "6.4.1 Node Field
Generation Without the IEEE 802 Address") recommend (quoted from RFC
2518):

  "The ideal solution is to obtain a 47 bit cryptographic quality random
  number, and use it as the low 47 bits of the node ID, with the _most_
  significant bit of the first octet of the node ID set to 1. This bit
  is the unicast/multicast bit, which will never be set in IEEE 802
  addresses obtained from network cards; hence, there can never be a
  conflict between UUIDs generated by machines with and without network
  cards."

Unfortunately, this incorrectly explains how to implement this and
the FreeBSD UUID generator code inherited this generation bug from
the broken reference code in the standards draft. They should instead
specify the "_least_ significant bit of the first octet of the node ID"
as the multicast bit in a memory and hexadecimal string representation
of a 48-bit IEEE 802 MAC address.

This standards bug arised from a false interpretation, as the multicast
bit is actually the _most_ significant bit in IEEE 802.3 (Ethernet)
_transmission order_ of an IEEE 802 MAC address. The standards authors
forgot that the bitwise order of an _octet_ from a MAC address _memory_
and hexadecimal string representation is still always from left (MSB,
bit 7) to right (LSB, bit 0).

Fortunately, this UUID generation bug could have occurred on systems
without any Ethernet NICs only.
2004-01-22 13:34:11 +00:00
Ruslan Ermilov
95d9bfd8d6 Only enforce -fno-strict-aliasing for optimization levels that
imply -fstrict-aliasing.

Reviewed by:	bde
2004-01-22 10:01:47 +00:00
Mike Makonnen
a039fbbf8c Since id(1) is in /usr, it may not be available until after filesystem
mounting.

Reminded by: bde
2004-01-22 08:46:03 +00:00
Ruslan Ermilov
bbe8270c50 - Run makewhatis(1) in etc/Makefile at the end of "install".
- Removed redundant and undocumented NO_MAKEDB_RUN knob.
2004-01-22 08:18:37 +00:00
Peter Grehan
5cfe0423e6 Userland signed char fixes for PPC build. Problems were using a char
return for getopt() and comparing to -1, ditto with fgetc() and EOF,
and using the kg_nice value from <sys/user.h>

Submitted by: Stefan Farfeleder <stefan@fafoe.narf.at>
Reviewed by: obrien, bde (a while back)
Tested lightly on: ppc, i386, make universe
2004-01-22 07:23:36 +00:00
Peter Grehan
53cd4099fb Make proc's kg_nice/ki_nice explicitly signed for PPC. This is a
no-op on {i386/alpha/ia64/sparc64} where chars are signed by
default. Should help ARM and S390 which also suffer from this.

Tested on: ppc, i386, objdump disasm before/after diffs
Reviewed by: obrien, bde (a while back)
2004-01-22 06:56:00 +00:00
Warner Losh
e6fb5181c4 Remove references to cryptotest 2004-01-22 05:57:48 +00:00
Colin Percival
d3b68bf14c Fix alignment of size field in ls -lh -- the width was being computed
from log[10](largest file size), but when outputting in human-friendly
format the width is always at most 4. (eg. "123K", " 12K", "1.2K".)

PR: bin/59320
Approved by: rwatson (mentor)
2004-01-22 04:33:00 +00:00
Colin Percival
54ca359425 Two fixes here:
1. If fgets fails, don't go into an infinite cpu-intensive loop.  Instead,
check to see if the terminal still exists, and sleep(1) otherwise.
2. When we check to see if the terminal still exists, make sure we're not
mislead by EINTR.  This could have been a security issue, but fortunately
the current implementation of tcgetattr doesn't EINTR.

PR: bin/60758
Approved by: rwatson (mentor)
2004-01-22 04:24:15 +00:00
Atsushi Onoe
c66380c122 Fix definition of IFM_MODE, which should be refrected the change of
IFM_IEEE80211_ mode.  Also ifconfig(8) must be recompiled.
Pointed out by Sam Leffeler.
2004-01-22 03:23:28 +00:00
Bill Paul
a6ef105236 Add suspend and resume methods. I'm not certain this work correctly
since I can't easily test them on my laptop right now, but they
should do the right thing.
2004-01-22 03:00:59 +00:00
Bill Paul
d74c903a6f Add support for TCP/IP checksum offload.
No, really.
2004-01-22 02:36:34 +00:00
Yaroslav Tykhiy
d4030ed6c5 Extend the description of the framework of interface capabilities. 2004-01-22 00:10:21 +00:00
Yaroslav Tykhiy
76f80df62e As I've been pointed out by Andrew Gallatin, there are some
network interface cards smart (or twisted?) enough to be able
to calculate a TCP/UDP checksum for a packet fragmented by the
host CPU.  Therefore the paragraph on the case has been revised.
2004-01-21 23:32:50 +00:00
John Baldwin
4939882522 If a transfer to or from a floppy disk crosses a 64k boundary, we have to
use a bounce buffer for the actual transfer to avoid crossing a 64k
boundary.  To do this, we malloc a buffer twice as big as we need and then
find an aligned block within that buffer to do the transfer.  The check
to see which part of the block we use used the wrong variable for part of
the condition meaning that in certain edge cases we would ask the BIOS to
cross a 64k boundary.  The BIOS request would then fail resulting in file
transfers that just magically fail in the middle without any apparent
reason.  Specifically, my tests for the splitfs boot floppies managed to
trigger this edge case.

MFC after:	1 week
X-MFC-info:	along with fixes to libstand filesystems
2004-01-21 23:22:29 +00:00
Bill Paul
94215c94fe Fix multicast and promiscuous mode handling for Yukon devices.
Submitted by:	Jung-uk Kim <jkim@niksun.com>
2004-01-21 22:32:15 +00:00
Bill Paul
9afca9391c Calculate the right register offset when clearing TX buffer pointer
registers in rl_stop().

PR:		kern/60250
2004-01-21 22:29:51 +00:00
Brooks Davis
772670ea02 Use the length of the interface name, not the length of its address when
printing the name.

Approved by:	brian
2004-01-21 22:00:50 +00:00
Søren Schmidt
ad836d50cb Cosmetics 2004-01-21 21:31:19 +00:00
Bill Paul
71a14876e1 Add structures and definitions for task offload (TCP/IP checksum,
IPSec, TCP large send).
2004-01-21 21:09:09 +00:00
Poul-Henning Kamp
4e74721cac Add a sysctl (default: off) which enables a log(LOG_INFO...) warning
if the clock is stepped.
2004-01-21 21:05:40 +00:00
John Baldwin
fb6b710c39 Clean up error handling in libstand filesystem code to be more consistent:
- bzipfs and gzipfs now properly return errno values directly from their
  read routines rather than returning -1.
- missing errno values on error returns for the seek routines on almost
  all filesystems were added.
- fstat() now returns -1 if an error occurs rather than ignoring it.
- nfs's readdir() routine now reports valid errno values if an error or
  EOF occurs rather than EPERM  (It was just returning 0 for success and
  1 for failure).
- nullfs used the wrong semantics for every function besides close() and
  seek().  Getting it right for close() appears to be an accident at that.
- read() for buffered files no longer returns 0 (EOF) if an error occurs,
  but returns -1 instead.
2004-01-21 20:12:23 +00:00
Poul-Henning Kamp
58d120f6d3 Simplify timing gymnastics a bit. 2004-01-21 19:20:57 +00:00
Bill Paul
dda13ca0ef Make sure to trap failures correctly in ndis_get_info() and ndis_set_info(). 2004-01-21 19:14:52 +00:00
Poul-Henning Kamp
d1bab139fe Remove #ifdef for ancient source FreeBSD compat. 2004-01-21 19:02:02 +00:00
Jens Schweikhardt
406b7fa3e0 DTRT, quote parens in an extended regular expression.
PR:	61668
Submitted by:	Oliver Eikemeier <eikemeier@fillmore-labs.com>
MFC after:	1 week
2004-01-21 18:57:45 +00:00
Philip Paeps
ad093bdc0a Add my birthday.
Approved by: njl (mentor)
2004-01-21 18:11:46 +00:00
Brooks Davis
b5897e3235 Don't leak softc's when destroying interfaces.
Init the softc list when loaded.

Noticed by:	Maurycy Pawlowski-Wieronski <maurycy at fouk dot org>
2004-01-21 18:05:38 +00:00
Colin Percival
9d0be84912 Fix style(9) of my previous commit.
Noticed by: nate
Approved by: nate, rwatson (mentor)
2004-01-21 18:03:54 +00:00
Jens Schweikhardt
ef6885585b Revert previous commit, ru has ideas how to better document this
elsewhere.
2004-01-21 17:58:33 +00:00
Robert Watson
679365e7b9 Reduce gratuitous includes: don't include jail.h if it's not needed.
Presumably, at some point, you had to include jail.h if you included
proc.h, but that is no longer required.

Result of:	self injury involving adding something to struct prison
2004-01-21 17:10:47 +00:00
Bruce A. Mah
99dfd6213f New errata: IPsec bugs. Source material for this errata note was...
Submitted by:	Bjoern A. Zeeb < bzeeb at Zabbadoz dot NeT >
2004-01-21 17:03:13 +00:00
Colin Percival
d3282d6eec Disable constant merging in isdnd and isdnmonitor. This is a "make my
life easier" patch: I doubt this will affect anyone else, but the FreeBSD
Update build code was getting very confused by this.

Approved by: rwatson (mentor)
PR: bin/61087
2004-01-21 16:49:05 +00:00
Warner Losh
60cfb6bcd7 Theo de Raadt has brought to our attention that he wrote at least part
file and that he has not released it under a free license.  Until the
matter can be resolved, honor his claim and remove it.

PR: misc/61676
2004-01-21 16:44:49 +00:00
Colin Percival
9f8ef8b8d1 Allow devfs path rules to work on directories. Without this fix,
devfs rule add path fd unhide
is a no-op, while it should unhide the fd subdirectory.

Approved by: phk, rwatson (mentor)
PR: kern/60897
2004-01-21 16:43:29 +00:00
Colin Percival
b991815bc0 After setting a ruleset on a new devfs mount, apply it.
Approved by: phk, rwatson (mentor)
PR: bin/61047
2004-01-21 16:36:17 +00:00
Jacques Vidrine
462959355e Merge security fix from vendor branch (revision 1.1.1.14). 2004-01-21 16:29:16 +00:00
Yoshihiro Takahashi
0461cbf76e MFi386: revisions from 1.1116 to 1.1119.
Remove NEWCARD related devices.
2004-01-21 16:28:19 +00:00
Jacques Vidrine
4db0ba50f1 This commit was generated by cvs2svn to compensate for changes in r124793,
which included commits to RCS files with non-trunk default branches.
2004-01-21 16:27:56 +00:00
Jacques Vidrine
c8ae5f0562 Incorporate two security fixes from later versions of CVS.
From the NEWS file of cvs 1.11.11:

  * pserver can no longer be configured to run as root via the
    $CVSROOT/CVSROOT/passwd file, so if your passwd file is
    compromised, it no longer leads directly to a root hack.  Attempts
    to root will also be logged via the syslog.

  * Malformed module requests could cause the CVS server to attempt
    to create directories and possibly files at the root of the
    filesystem holding the CVS repository.  Filesystem permissions
    usually prevent the creation of these misplaced directories, but
    nevertheless, the CVS server now rejects the malformed requests.

Obtained from:	ccvs.cvshome.org
2004-01-21 16:27:56 +00:00
Colin Percival
bcf85d6737 Bring ps.1 up to date with changes in the past seven years:
* Remove mention of '>', 'A', and 'S' states
* Mention 'W' state.
* List 'J' state in the correct location.
* Sync with flags in sys/proc.h

Approved by: rwatson (mentor)
MFC after: 7 days
2004-01-21 16:25:36 +00:00
Yoshihiro Takahashi
9ce630976e Merged from sys/dev/sio/sio.c revision 1.418. 2004-01-21 16:12:29 +00:00
Hajimu UMEMOTO
7a2e32cbe3 Sync to pccarddevs 1.81. 2004-01-21 16:03:40 +00:00
Hajimu UMEMOTO
a950ec6208 There is PANASONIC KXLC005 which has another product id. 2004-01-21 16:02:20 +00:00
Ruslan Ermilov
a16e3c18b2 This is Sparc64-only. 2004-01-21 14:06:25 +00:00
Ruslan Ermilov
cbaffca7e7 This is i386-only. 2004-01-21 14:01:29 +00:00
Ruslan Ermilov
1fdc189947 Mark APM manpages as i386-only. 2004-01-21 13:38:17 +00:00