Commit Graph

2177 Commits

Author SHA1 Message Date
Peter Wemm
619b759747 Allow an optional setting to specify a .cf file to be built and installed
into /etc during the sendmail build.  Not for the feint hearted.
(I have been using something like this for some time since I only ever
 edit my system's .mc file)
1996-12-28 18:11:08 +00:00
Peter Wemm
4a4550eb01 Use the label that Bruce suggested, it seems the src/etc/Makefile "helpers"
are all prefixed with "etc-".
1996-12-28 18:02:06 +00:00
Peter Wemm
9ced612d99 Add a hook for installing the /etc/sendmail.cf file
Submitted by: bde
1996-12-28 17:57:28 +00:00
Poul-Henning Kamp
35c40fc2fa Be a little less fatalistic in case of problems.
Reviewed by:	phk
Submitted by:	wosch
1996-12-28 13:50:34 +00:00
Warner Losh
2519fdb867 Fix various buffer overflow cases in sliplogin. These might have been
able to be exploited, or might not.  However, it is better to be safe
than sorry.

Definitely a 2.2 fix, and a -stable if there is someone to commit it.

Reviewed by:	Jordan Hubbard <jkh@freebsd.org>
Submitted by:	Marc Slemko
1996-12-27 05:49:51 +00:00
Peter Wemm
d7b025c3ae Tidy up the generated config.c file. Use #include "opt_config.h", comment
out text after #endif line, add missing \n at end of file, only install new
config.c if it's different to the last one which preserves the timestamp.
1996-12-26 23:40:32 +00:00
Mike Pritchard
f52a35b581 Fix some spelling errors.
Jordan, I'll let you merge this into 2.2o that I don't
stomp on you.
1996-12-26 21:53:11 +00:00
Jordan K. Hubbard
9f2e984973 Clean up some calls to close(). 1996-12-26 21:03:04 +00:00
Jordan K. Hubbard
0495d47f7e Fix fixit floppy. 1996-12-26 03:32:50 +00:00
Wolfram Schneider
c69a537c8f Sort cross references. 1996-12-26 02:02:31 +00:00
Bill Paul
adc4fa336b More async resolver refinements:
- yp_main.c: Always add the resolver socket to the set of fds
  monitored by select(). It can happen that pending == 0 but we
  still have some data in the socket buffer from an old query.
  This way, the data will be flushed in a timely manner.

- yp_extern.h: remove proto for yp_dns_pending() since we don't need
  it anynmore.

- yp_server.c: call yp_async_lookup_name()/yp_async_lookup_addr()
  functions with the svc_req pointer as an arg instead of the xprt.
  (The svc_req struct includes a pointer to the transport handle,
  and it also has the service version number which the async DNS
  code will need. (see below))

- yp_dnslookup.c:

   o Nuke yp_dns_pending() since we don't need it anymore.
   o In yp_run_dnsq(), swallow up and ignore replies if no requests
     are pending or the ID doesn't match any of the IDs in the queue.
   o In yp_send_dns_reply(), we assume that we will always be
     replying to an NIS v2 client. While this will probably always
     be the case, we do support the v1 'match' procedure, and it
     has a different result struct than v2. For completeness,
     support replying to both NIS v1 and v2 clients.
   o Update the queue entry structure to include a member to
     keep track of the NIS version number.
   o Have yp_async_lookup_name/addr() extract the version number
     from the svc_req structure and save it with the queue entry
     for yp_send_dns_reply() to inspect later.
   o Add some comments.
1996-12-25 18:10:35 +00:00
Bill Paul
926f037af9 Fix some bugs:
- Don't dereference a NULL hostent pointer (if T_PTR lookup fails).

- Today I asked myself: "Self, you wrote this nifty async resolver
  that does a great job handling delayed replies to clients using
  the UDP transport, and the yplib code in libc always uses UDP
  (except for yp_all()). But what if some dork makes a DNS lookup using
  TCP?" Being the only dork on hand at the time, I tried it and was
  enlightened. As I suspected, my transaction ID frobbing hacks cause
  fireworks if called on a TCP transport handle (duh: the structures
  are different). Fix: check the type of socket in xprt->xp_sock using
  getsockopt() and don't use svcudp_get_xid() and svcudp_set_xid() for
  anything except SOCK_DGRAM sockets. (Since accept() gives you a
  new socket for each connection, the transaction ID munging isn't
  needed for TCP anyway.)
1996-12-24 02:44:52 +00:00
Wolfram Schneider
13608f6661 comma typos 1996-12-23 23:09:55 +00:00
David Nugent
b5cc56ab27 Correct file modes on updated /etc/skeykeys. 1996-12-23 02:27:29 +00:00
Mike Pritchard
4c574b956a Some more man page cleanup. 1996-12-23 02:19:12 +00:00
Mike Pritchard
787a18dba6 Minor internal mdoc usage changes. 1996-12-23 00:57:46 +00:00
Mike Pritchard
fefbe220bc Convert to mdoc format. 1996-12-23 00:22:00 +00:00
Mike Pritchard
574d7dc09d Minor style fixes.
I also renamed the adduser "-quit" option to "-quiet", since
it is supposed to be the same as the -s/-silent option,
and -quit must have beena typo.
1996-12-23 00:10:22 +00:00
Bill Paul
180807d214 Big round o changes:
- yp_dblookup.c: Create non-DB specific database access functions.
  Using these allows access to the underlying database functions without
  needing explicit knowledge of Berkeley DB. (These are used only
  when DB_CACHE is #defined. Other programs that use the non-caching
  functions (yp_mkdb, ypxfr, yppush, rpc.yppasswdd) shouldn't notice
  the difference.)

- yp_dnslookup: Implement async DNS lookups. We send our own DNS
  requests using UDP and put the request in a queue. When the response
  arrives, we use the ID in the header to find the corresponsing queue
  entry and then send the response to the client. We can go about our
  business and handle other YP requests in the meantime. This way, we
  can deal with time consuming DNS requests without blocking and without
  forking.

- yp_server.c: Convert to using new non-DB-specific database access
  functions. This simplifies the code a bit and removes the need for
  this module to know anything about Berkeley DB. Also convert the
  ypproc_match_2_svc() function to use the async DNS lookup routines.

- yp_main.c: tweak yp_svc_run() to add the resolver socket to the
  set of descriptors monitored in the select() loop. Also add a
  timeout to select(); we may get stale DNS requests stuck in the
  queue which we want to invalidate after a while. If the timeout
  hits, we decrement the ttl on all pending DNS requests and nuke
  those requests that aren't handled before ttl hits zero.

- yp_extern.h: Add prototypes for new stuff.

- yp_svc_udp.c (new file): The async resolver code needs to be able
  to rummage around inside the RPC UDP transport handle in order to
  work correcty. There's basically one transport handle, and each time
  a request comes in, the transaction ID in the handle is changed.
  This means that if we queue a DNS request, then we handle some other
  unrelated requests, we will be unable to send the DNS response because
  the transaction ID and remote address of the client that made the DNS
  request will have been lost. What we need to do is save the client
  address and transaction ID in the queue entry for the DNS request,
  then put the transaction ID and address back in the transport handle
  when we're ready to reply. (And then we have to undo the change so
  as not to confuse any other part of the server.) The trouble is that
  the transaction ID is hidden in an opaque part of the transport handle,
  and only the code in the svc_udp module in the RPC library knows how
  to handle it. This file contains a couple of functions that let us
  read and set the transaction ID in spite of this. This is really a
  dirty trick and I should be taken out and shot for even thinking about
  it, but there's no other way to get this stuff to work.

- Makefile: add yp_svc_udp.c to SRCS.
1996-12-22 22:30:58 +00:00
Jordan K. Hubbard
6d14e2a8e6 For /usr/sbin/ppp, you must choose between running ppp in the background or
connecting to a host immediately in the foreground.

I would like to be able to run ppp from a script so that my script can be
sure that it is connected to the 'net before it continues running:

  # Dial up the internet.
  ppp -background myprovider || exit 1

  do-some-net-command

  # Hang up the modem.
  kill -HUP `cat /var/run/ppp.tun0.pid`

Another problem is that the current ppp calls its process id file
`/var/run/PPP.server', which may conflict if you have more than one IP
tunnel interface available.

Closes PR#1469
Submitted by:	Gord Matzigkeit <gord@enci.ucalgary.ca>
1996-12-22 17:29:33 +00:00
Jordan K. Hubbard
17e762ca3d Make CRTSTS selection a runtime option. Closes PR#1392
Submitted by:	Mike McGaughey <mmcg@heraclitus.cs.monash.edu.au>
1996-12-22 17:09:17 +00:00
Mike Pritchard
ab40944758 Convert to mdoc format. 1996-12-21 23:23:11 +00:00
Mike Pritchard
441c428f70 Grr. Fix a spelling error. 1996-12-21 22:22:55 +00:00
Mike Pritchard
ee3704e411 Convert to mdoc format, and rewrite most of the man page
while I was at it.
1996-12-21 22:21:48 +00:00
Mike Pritchard
747f0006ca Convert to mdoc format. 1996-12-21 21:57:21 +00:00
Mike Pritchard
389766f3b2 Convert to mdoc format. 1996-12-21 21:15:09 +00:00
Nate Williams
66041afd67 Compute IP checksums in addition to TCP checksums when necessary in the
new 'aliased' packets.  Note, if the original packet has a bogus cksum,
we will *NOT* re-compute the cksum, therefore the new packet will also
be wrong (but passed on).

Found by:	MartinRenters@awfulhak.demon.co.uk
Reviewed by:	Brian Somers <brian@awfulhak.demon.co.uk>
Submitted by:	Charles Mott <cmott@srv.net>
1996-12-21 18:34:52 +00:00
David Nugent
0970881ff6 1) 200 users per group limitation removed and pw
will handle lines of any length in /etc/group.
2)	Fixed bug with usermod -d not updating user's home
	directory.
3)	Minor formatting display changes/fixes with *show -P.
1996-12-21 15:35:45 +00:00
David Nugent
5e75134d21 Bugfix (cosmetic) for output of generated passwords. 1996-12-20 10:45:39 +00:00
Bill Fenner
7ae3d6826f Merge from release 5.1. 1996-12-20 01:32:12 +00:00
Bill Fenner
0ad74a38f4 This commit was generated by cvs2svn to compensate for changes in r20701,
which included commits to RCS files with non-trunk default branches.
1996-12-20 01:29:00 +00:00
Bill Fenner
54e56efac0 Import the mtrace "5.1" release. The version number jump is because
mtrace is now distributed seperately from mrouted.
1996-12-20 01:29:00 +00:00
Nate Williams
63c6440041 Renamed private copy of ether_aton to my_ether_aton so as to not
conflict with the version in <net/ethernet.h>
1996-12-19 19:33:10 +00:00
David Nugent
d9b711b719 Allow 8-bit characters in the passwd gecos field, and adds a paragraph
to the mangpage explaining the consequences (to be updated at a later
date after login class conf support is added).
1996-12-19 15:22:45 +00:00
Nate Williams
3b92d2dee8 Fixed prototypes of PacketAliasIn/Out. (cosmetic)
Submitted by:	Brian Somers <brian@awfulhak.demon.co.uk>
1996-12-19 00:41:42 +00:00
Warner Losh
d07d447b29 Apply patch in pr 2067 to correct an uninitialized pointer dereference
in tickadj.  Tested briefly here and it it seems to work.

Possible 2.2 candidate.

Submitted by:	Don Lewis <Don.Lewis@tsc.tdk.com>
Closes PR:	2067
1996-12-17 17:21:47 +00:00
Jordan K. Hubbard
7837dcf615 Use RAW, not CBREAK 1996-12-17 15:26:40 +00:00
Stephen McKay
aded5373e9 Correct MLINKS, now that I know how it actually works. 1996-12-17 14:28:09 +00:00
David Nugent
2e3db6fbe0 Changes to password generator: fallback to MD5 generator disabled
(/dev/urandom used by default under FreeBSD), and implemented a
"portable" but less secure generator for other systems.
Add display of expiry/password change dates in -P user display.
1996-12-17 14:15:35 +00:00
David Nugent
a36f769f47 Submitted by: proff@iq.org
Minor fix for security patch.
1996-12-17 01:43:30 +00:00
Paul Traina
bdddbd2f3f Replace my "inane" usage of snprintf to copy strings with strncpy as
used by OpenBSD.  (Quite frankly, I think it's perfectly reasonable to
use snprintf to copy strings, given that the semantics for strncpy()
are utterly idiotic and there is no POSIX sstrncpy().)

While I'm at it, incorporate some of OpenBSD's bugfixes to cron.

NOT for 2.2
1996-12-17 00:55:20 +00:00
Jordan K. Hubbard
3cce01a416 1. Engage brain. 2. Write macro. Previous commit attempted to perform
2 before 1.
1996-12-17 00:00:15 +00:00
Paul Traina
482bfccc70 Close yet another buffer overrun 1996-12-16 18:21:00 +00:00
David Nugent
b7d2ba7cb8 Reviewed by: davidn@blaze.net.au
Submitted by:	proff@iq.org
	Security patch for better random password generation.
1996-12-16 17:37:58 +00:00
Mike Pritchard
94a804c558 Add man page for moused(8). It is basically a rehash of the
usage output from moused, but it is a start for anyone
else who wants to expand on it.

Closed PR# 1552.
1996-12-16 01:05:00 +00:00
Bill Fenner
72f54beaca Add mtest. 1996-12-16 01:01:46 +00:00
Mike Pritchard
ee6dc17bd1 Add the one line description of the man page at the top so
that "whatis" will report something more than just "mtest".
1996-12-15 23:02:48 +00:00
Bill Fenner
cf20f87153 Make mtest build. Write a makefile and a man page. 1996-12-15 21:57:32 +00:00
Bill Fenner
fc3cc3f5cf A multicast testing program, allowing you to join and leave both
IP and ethernet multicast groups.

Obtained from:	Multicast release 3.5
1996-12-15 21:30:02 +00:00
Paul Traina
053edb3c0c Avoid some buffer overrun problems. 1996-12-15 20:39:30 +00:00