1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-23 11:18:54 +00:00
Commit Graph

2159 Commits

Author SHA1 Message Date
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
Jordan K. Hubbard
50aaa93770 make note of which /etc files need upgrading in installUpgrade rather
than asking the user to keep track of the list himself.
1996-12-15 18:14:37 +00:00
Stephen McKay
147962b004 Documented ctm_dequeue and the new feature of ctm_smail that goes with it.
Expanded the ctm_rmail example usage section.
1996-12-15 15:10:11 +00:00
Joerg Wunsch
833e0176e3 Increase the size of the vector that is allocated for execv(). Jordan
apparently forgot this when adding the password feature.
1996-12-15 11:22:37 +00:00
Jordan K. Hubbard
507372af02 Now that I've got my source tree sorted out, bring all the things
I've been committing into 2.2 directly all this time.
1996-12-14 23:09:10 +00:00
Joerg Wunsch
5bd7b80934 Part #2 of the config cleanup. More aggressive, replaced an NIH
version of strdup() by a macro, killed many calls to strdup(), thus
potentially wasting less malloc'ed space (their args were never be
free()ed desptie despite of being malloc'ed).  Probably still a huge
memory leak at all...  Also killed two totally useless variables.

I've tested it as i could, but wouldn't be surprised if unexpected
problems showed up.  So watch out this space!
1996-12-14 19:53:49 +00:00
Joerg Wunsch
f0b48d9876 Round #1 of cleaning up the config(8) mess. This is only the more
conservative part of the tidyup, like fixing potential buffer overflow
conditions.  It is believed to be safe to go into 2.2.

Pointed out by:	lozenko@cc.acnit.ac.ru (Evgeny A. Lozenko)
1996-12-14 19:44:13 +00:00
Jordan K. Hubbard
d17f0c47d4 Fix some very minor cosmetic cruft I couldn't help tweaking when
I went over the code.

Add shortcuts for addUser and addGroup, documenting same.

Add a password field for adduser and use no-echo string field for it.
This requires my latest libdialog changes (in RELENG_2_2 or -current) to work.
1996-12-14 16:24:01 +00:00
Stefan Eßer
2640db5095 Remove reference to unused variable ncr.ns_async. 1996-12-14 12:53:30 +00:00
Bruce Evans
c08d58eade Moved nonstandard compiler profiling options out of config. Just print
the profiling level in config and decide what to do in makefiles.

Makefile.i386:
Align functions to 16-byte boundaries if profiling is enabled.  This
will allow a fourfold reduction in the size of the profiling buffers.
1996-12-13 12:46:28 +00:00
Jordan K. Hubbard
af3bab3687 700 now. :) 1996-12-12 23:12:44 +00:00
Jordan K. Hubbard
177baf1802 Fix trunctation of domainname. 1996-12-12 22:44:22 +00:00
Jordan K. Hubbard
3cd31ab739 Add some additional smarts for XFree86 configuration.
Fix a bogon I thought I fixed in the last commit.
1996-12-12 22:38:41 +00:00
Jordan K. Hubbard
40e60c63b3 Update these docs to more closely reflect reality. 1996-12-12 20:03:35 +00:00
Jordan K. Hubbard
6258ab4afc smart-alec error checking. 1996-12-12 16:55:37 +00:00
Jordan K. Hubbard
a9f484e520 The infamous IP aliasing code for ppp, modified to work as a runtime option
(otherwise ppp's behavior remains unchanged) and documented by myself,
Steve Sims, Nate Williams, Martin Renters and god-only-knows who else. :-)
Submitted by:	nate
Obtained from:	Charles Mott <cmott@srv.net>
1996-12-12 14:39:47 +00:00
Jordan K. Hubbard
a674766556 Whups, remove relic from close method going away. 1996-12-12 08:36:25 +00:00
Jordan K. Hubbard
0da9521b5a Undo one of my memory optimization hacks - it actually made things more
complicated.
1996-12-12 08:33:38 +00:00
Jordan K. Hubbard
d62f165304 Fix some bogons in my close() handling. 1996-12-12 08:23:51 +00:00