Commit Graph

9402 Commits

Author SHA1 Message Date
wpaul
df43a2fd36 Grrr. Put the right .PATH statements in the right Makefiles. 2003-12-11 23:22:44 +00:00
wpaul
4b660977b3 Commit the ndiscvt(8) utility too. (Missed it in the last import.) 2003-12-11 22:38:14 +00:00
wpaul
97c86c25fc Commit the first cut of Project Evil, also known as the NDISulator.
Yes, it's what you think it is. Yes, you should run away now.

This is a special compatibility module for allowing Windows NDIS
miniport network drivers to be used with FreeBSD/x86. This provides
_binary_ NDIS compatibility (not source): you can run NDIS driver
code, but you can't build it. There are three main parts:

sys/compat/ndis: the NDIS compat API, which provides binary
compatibility functions for many routines in NDIS.SYS, HAL.dll
and ntoskrnl.exe in Windows (these are the three modules that
most NDIS miniport drivers use). The compat module also contains
a small PE relocator/dynalinker which relocates the Windows .SYS
image and then patches in our native routines.

sys/dev/if_ndis: the if_ndis driver wrapper. This module makes
use of the ndis compat API and can be compiled with a specially
prepared binary image file (ndis_driver_data.h) containing the
Windows .SYS image and registry key information parsed out of the
accompanying .INF file. Once if_ndis.ko is built, it can be loaded
and unloaded just like a native FreeBSD kenrel module.

usr.sbin/ndiscvt: a special utility that converts foo.sys and foo.inf
into an ndis_driver_data.h file that can be compiled into if_ndis.o.
Contains an .inf file parser graciously provided by Matt Dodd (and
mercilessly hacked upon by me) that strips out device ID info and
registry key info from a .INF file and packages it up with a binary
image array. The ndiscvt(8) utility also does some manipulation of
the segments within the .sys file to make life easier for the kernel
loader. (Doing the manipulation here saves the kernel code from having
to move things around later, which would waste memory.)

ndiscvt is only built for the i386 arch. Only files.i386 has been
updated, and none of this is turned on in GENERIC. It should probably
work on pc98. I have no idea about amd64 or ia64 at this point.

This is still a work in progress. I estimate it's about %85 done, but
I want it under CVS control so I can track subsequent changes. It has
been tested with exactly three drivers: the LinkSys LNE100TX v4 driver
(Lne100v4.sys), the sample Intel 82559 driver from the Windows DDK
(e100bex.sys) and the Broadcom BCM43xx wireless driver (bcmwl5.sys). It
still needs to have a net80211 stuff added to it. To use it, you would
do something like this:

# cd /sys/modules/ndis
# make; make load
# cd /sys/modules/if_ndis
# ndiscvt -i /path/to/foo.inf -s /path/to/foo.sys -o ndis_driver_data.h
# make; make load
# sysctl -a | grep ndis

All registry keys are mapped to sysctl nodes. Sometimes drivers refer
to registry keys that aren't mentioned in foo.inf. If this happens,
the NDIS API module creates sysctl nodes for these keys on the fly so
you can tweak them.

An example usage of the Broadcom wireless driver would be:

# sysctl hw.ndis0.EnableAutoConnect=1
# sysctl hw.ndis0.SSID="MY_SSID"
# sysctl hw.ndis0.NetworkType=0 (0 for bss, 1 for adhoc)
# ifconfig ndis0 <my ipaddr> netmask 0xffffff00 up

Things to be done:

- get rid of debug messages
- add in ndis80211 support
- defer transmissions until after a status update with
  NDIS_STATUS_CONNECTED occurs
- Create smarter lookaside list support
- Split off if_ndis_pci.c and if_ndis_pccard.c attachments
- Make sure PCMCIA support works
- Fix ndiscvt to properly parse PCMCIA device IDs from INF files
- write ndisapi.9 man page

PR:
Submitted by:
Reviewed by:
Approved by:
Obtained from:
MFC after:
2003-12-11 22:34:36 +00:00
obrien
1bf6892caf Add just enough of i386/include/pcvt_ioctl.h to amd64/include/pcvt_ioctl.h
such that 'ispcvt' can build.  Unforunately 'ispcvt' is needed in order for
/etc/rc.d/syscons to run.  This fixes the bug where I could not get my
keymap effective at boot.
2003-12-10 02:49:17 +00:00
tjr
5f6ddde944 Add IPv6 support to pppctl by using getaddrinfo() and trying each address
it returns. This allows it to connect to the server side again, which
has been listening on IPv6 addresses exclusively for more than 2 years.

PR:		59369
2003-12-07 08:39:29 +00:00
phk
f9608ecffb Fix our kernel support for Basic Block Profiling to work with GCC33.
Approved by:	re@
2003-12-03 07:43:03 +00:00
brooks
2b3284fdce Reconnect ipfstat, ipnat, and ipftest to the build now that if_xname
support is enabled.

Approved by:	re (scottl)
2003-12-02 21:52:14 +00:00
marcus
76b226be4b Replace the KDE and GNOME 2 desktops with KDE (Lite Edition) and GNOME 2
(Lite Edition) respectively.  These "lite" packages are streamlined to
provide users with the core essentials for each desktop and to fit on the
release disc 1.

Approved by:	re (scottl)
2003-12-02 20:49:46 +00:00
rwatson
ef88c2c50a Spell SSHd as sshd.
Requested by:	jhb
Approved by:	re (jhb)
2003-12-01 18:58:14 +00:00
phk
66faa6a3a2 The new "spec against spec" comparison code was yet another time
victim of the special sort order employed where files come before
directories and alphabetic inside these two groups.

Approved by:	re@
2003-11-30 18:06:02 +00:00
rwatson
f02bee695e Add a Securelevel sub-menu to the Security configuration menu,
permitting the administrator to select a securelevel top operate
at.  Include a helpfile summarizing some of the information from
init(8).  This allows for explicit configuration of securelevels,
which was previously implicit in Security Profile selection.
Currently, there are no checkboxes for the active securelevel,
because sysinstall's facilities for deriving "current settings"
from rc.conf may use only one variable, not two, and I opted for
the simplest approach at this point.

Approved by:	re (scottl)
2003-11-29 21:44:51 +00:00
olgeni
c22fdb1a5b Cosmetic fix: a message was mixed with a dialog box border line.
Approved by:	re (rwatson)
2003-11-28 20:44:25 +00:00
rwatson
e983c8d12d Remove security profiles from sysinstall. Currently, security profile
selection is used to drive two configuration parameters:

(1) Default enable/disable for sshd
(2) Default enable/disable for securelevels

Replace this with an explicit choice to enable/disable sshd.  A
follow-up commit will add a configuration option to the Security
post-install configuration menu to set the securelevel in rc.conf
explicitly.  This should reduce the level of foot-shooting associated
with accidental enabling of securelevels, make the nature and
implications of the securelevel configuration options more explicit,
as well as make the choice to enable/disable sshd more explicit.

Approved by:	re (scottl)
2003-11-28 18:47:45 +00:00
kensmith
d615638d00 - Drop down to one snapshots FTP site since that's all we have now
- Adjust names of IPv6 FTP hosts a bit
	- Sync list of FTP sites with reality

Approved by:	rwatson (re@)
2003-11-24 15:27:20 +00:00
jhb
39caffc9b9 Add Greek keymaps to sysinstall.
PR:		bin/59078
Submitted by:	Panagiotis Astithas <past@noc.ntua.gr>
Approved by:	re (rwatson)
2003-11-20 20:43:06 +00:00
rwatson
b7bf2a8dfd A variety of content cleanups:
(1) Document the notion of using jail(8) to run "virtual servers" or
    just to constrain specific applications.  If only running specific
    applications, some configuration steps are unnecessary (such as
    editing rc.conf).

(2) Add some more subsection headers to break up the bigger chunks of
    text.

(3) Clarify the problems associated with applications binding all IP
    addresses in the host, and attempt to be more specific about
    potential application problems.  Document how to force sshd to
    bind the the right socket.

(4) Suggest that in a jailed application scenario, you might want to
    have the host syslogd listen on the socket in the jail, rather
    than running syslogd in the jail.

(5) Catch another reference to /stand/sysinstall.

Approved by:	re (bmah implicitly)
2003-11-20 03:47:50 +00:00
rwatson
6b9c80ba7a No need to copy sysinstall into a jail with -CURRENT, since in
-CURRENT, we have /usr/sbin/sysinstall.

Approved by:	re (bmah implicitly)
2003-11-20 02:46:44 +00:00
phk
2a56ea9233 Off by one error in malloc.
Approved by:	re@
2003-11-19 15:28:21 +00:00
obrien
156325cd78 Catch up with the latest in device naming. 2003-11-18 02:33:27 +00:00
eivind
1043231f84 * Auto-detect what device to use if none is specified
* Replace references to mcd0 with acd0 (doc only)
* Remove references to the "c" partition (doc only - code was already fixed)
2003-11-17 14:02:04 +00:00
des
ded472a318 __FBSDID; remove duplicate <ctype.h>; try to reduce style inconsistencies. 2003-11-17 11:26:51 +00:00
des
ef53be6069 Sort includes, and remove superfluous <sys/types.h> 2003-11-17 11:14:34 +00:00
des
6c6b3db302 Instead of blindly loading the ums module and bailing out if that fails,
check if it's already loaded or compiled into the kernel, and only try to
load it if it isn't.

PR:		bin/59368
Submitted by:	Jens Rehsack <rehsack@liwing.de>
2003-11-17 11:08:28 +00:00
das
701bcfabb9 Remove the BUGS section introduced in rev 1.11 now that the problem
has been addressed.
2003-11-17 06:39:54 +00:00
das
9c28e36b31 Reimplement nologin(8) as a C program. This allows us to statically
link it at low cost and avoid environment poisoning attacks associated
with LD_LIBRARY_PATH.

Suggested by:	rwatson
2003-11-17 06:39:38 +00:00
das
8f7c80b0f5 Document nologin(8) as being insecure in conjunction with a dynamic
root and suggest alternatives.
2003-11-17 00:08:28 +00:00
dwmalone
0146715061 logerror is used in syslogd to log errors from syslogd itself. It
is possible for an error to occur while trying to log an error, and
this can result in infinite recursion (or at least until we run out
of stack).

Rather than this, we ignore requests to log an error while logging an
error.

PR:		51253
MFC after:	2 weeks
2003-11-16 21:51:06 +00:00
dwmalone
898b9151c2 Remove an argument to printf that is unused. 2003-11-16 21:42:00 +00:00
njl
4ebfba3818 Remove an annoying printf that somehow leaked into rev 1.21. 2003-11-16 08:41:24 +00:00
trhodes
d3fc111f85 Make this WARNS 2 clean, and fix up the manual page:
Avoid implicit function calls by adding the proper include files.
Use const char copyright.
Fix some fprint formatting.

In the manual page:

Use the .Pa macro for filenames and locations.
Kill hard setence breaks.
Make use of the .Tn and .Dq macros.
Add some to text to the otherwise blank HISTORY section (taken from CVS).
2003-11-15 17:10:56 +00:00
harti
91fb8e3f9c Replace all uses of the old netgraph constants NG_*LEN by the new
constants NG_*SIZ that include the trailing NUL byte. This change
is mostly mechanical except for the replacement of a couple of snprintf()
and sprintf() calls with strlcpy.
2003-11-15 15:26:35 +00:00
ume
1cc5ee037b - poll(2) support.
- simplify by strdup.
- set ai_protocol in hints to TCP.
- g/c FAITH_NS (no description, not maintained for years)
- warn if connection from IPv4 mapped is reached.
- IPV6_V6ONLY if possible.
- unifdef -UFAITH4.
- drop rsh/rlogin support.
- deal with negative return value from wait3.

Obtained from:	KAME
2003-11-14 17:34:08 +00:00
ume
6260ac2844 - need_trigger/idx should be u_int, not ssize_t.
- realloc pedant.
- set sin6_scope_id before sending (link-local/multicast) packets
- removed an incorrect comment
- don't age non-gateway host routes.
- not remove global addresses on loopback interface from routing table
  by route aging.

Obtained from:	KAME
2003-11-14 17:16:50 +00:00
ume
aa599c4b2a - interface minimum MTU = 1280 in IPv6.
- simplify.

Obtained from:	KAME
2003-11-14 17:16:12 +00:00
ume
5b31c30634 our netstat is installed in /usr/bin. 2003-11-14 16:57:04 +00:00
bde
3debe8bd3d Fixed spurious syntax errors for including files that don't begin with
a SEMICOLON token (a newline or semicolon, or one of these preceded
by a comment and/or whitespace).  The input stream was switched too
early and the parser was expecting a SEMICOLON in the included file
instead of after the filename in the include directive.

Submitted by:	Stefan Farfeleder <stefan@fafoe.narf.at>
Kept alive by:	Adam C. Migus <adam@migus.org>
2003-11-14 11:23:25 +00:00
des
6f2fab737b If the name of the mouse device starts with "/dev/ums", try to load the
ums module, and allow for up to five attempts to open the device, with
two-second pauses in between, to allow time for USB controllers and
devices to probe and attach.  My Gigabyte P4 Titan 848P motherboard has
a total of 15 ports on four hubs hanging off four controllers, and needs
at least half of that ten-second allowance to get ready.

MFC after:	7 days
2003-11-13 21:25:12 +00:00
ume
59af8d55c7 - make command line argument parsing POSIX compliant. comment from
deraadt NOTE: -I needs to take an arg (there's no way we can take no
  arg/an arg with a single option)
- sscanf overrun
- no variable name on prototype.
- u_int32_t may not be u_long.
- skipped non-host route when printing neighbor cache entries.
- valid and preferred lifetimes are unsigned.
- wording.

Obtained from:	KAME
2003-11-13 16:02:44 +00:00
phk
818684532e Fix a bug relating to the "files before directories" sort order when
comparing two spec files.
2003-11-13 11:02:57 +00:00
harti
a13d5675bc Add an empty definition of the MIBS variable so that the makefile does
not try to use a MIBS definition from the environment.

Submitted by:	Joe Marcus Clarke <marcus@marcuscom.com>
2003-11-13 10:18:16 +00:00
des
eefd37c4bf Whitespace cleanup. 2003-11-13 08:26:29 +00:00
ume
2dad2898ac - setsockopt/sysctl takes int, not u_long.
- be more picky about argument parsing - like ERANGE.
- use u_long for args, not to lose accuracy/prevent overflow.
- socklen_t audit.
- Add -I (use icmp) option.
- warn if multiple addresses are present for dest.
- no need to pass tz.
- type pedant.  check -p range.
- grab hlim from sysctl.
- typo in port number setting.

Obtained from:	KAME
2003-11-12 18:56:59 +00:00
harti
336e573a13 The snmp_netgraph module depends on libnetgraph. So add a dependency and
add libnetgraph to the list of prebuilt libraries in the main Makefile.

Reviewed by:	ru
2003-11-12 17:09:13 +00:00
harti
173237aab3 Get rid of the old constants which did not include the trailing NUL
and use the new constants which do.
2003-11-12 13:04:44 +00:00
kensmith
b7f1084c7b - Add a note that there are two MIB variables that have per-jail
settings.

Reviewed by:	rwatson
Approved by:	blackend (mentor)
2003-11-11 18:34:29 +00:00
emax
de7e59e1a7 Fix few typos
Reviewed by: imp, julian, ru
Approved by: imp (mentor)
2003-11-11 02:43:10 +00:00
brian
ba7b98841d Ignore case when comparing CHAP/CHAP81 responses
PR:		31771
2003-11-10 21:56:02 +00:00
harti
a5fa8ea082 Correct the include path so that the include files are found
with include "...".
2003-11-10 14:04:34 +00:00
harti
944e5099fb Fix the build by adjusting the include directives. The problem was
that the sources use "..." includes to get at include files that
later on reside in an include sub-directory.
2003-11-10 13:43:26 +00:00
ume
13591e26f2 enable aes-xcbc-mac and aes-ctr, again. 2003-11-10 10:39:14 +00:00