Commit Graph

562 Commits

Author SHA1 Message Date
Peter Wemm
f0ccf9018b Be a bit more careful about what port number we are using for the
second socket.  If we're going to check for reserved ports, we should
do it properly.
1997-03-29 12:35:06 +00:00
Warner Losh
91477cc4d7 compare return value from getopt against -1 rather than EOF, per the final
posix standard on the topic.
1997-03-28 15:48:21 +00:00
David Nugent
ce862ff5d3 Don't trucate username to 8 characters. 1997-03-25 09:52:38 +00:00
Mike Pritchard
42946c8261 Remove some incorrect text on how passwords are validated.
Closes PR# 3050.

Submitted by:	 Dmitrij Tejblum <dima@tejblum.dnttm.rssi.ru>
1997-03-25 03:45:52 +00:00
Warner Losh
fca08b7cfa Fix non explloitable buffer overflows (since the largest packet processed
precludes it) to keep people from whining about it in the newsgroups and
mailing lists.
1997-03-24 06:04:08 +00:00
Warner Losh
0f5e6a0d00 Fix various buffer overflows that may or may not be exploitable.
Fixes PR 2588

Reviewed by:	Dan Cross?
Submitted by:	Julian Assange
1997-03-24 06:01:39 +00:00
Warner Losh
a51e2c9b04 Julian A's fix. Do chdir as user rather than as root. Fixes a minor NFS
compatibility problem at the same time.  Some buffer made large enough
for worst case hostname.

fixes PR 2593.

Reviewed by:	Dan Cross and maybe others
1997-03-24 05:57:28 +00:00
Mike Pritchard
b225fe2740 Change a reference to NetBSD to FreeBSD. 1997-03-14 06:09:04 +00:00
Peter Wemm
fce15c9ab3 Revert $FreeBSD$ to $Id$ 1997-02-22 15:48:31 +00:00
Peter Wemm
9e522f7a18 Revert $FreeBSD$ to $Id$ 1997-02-22 14:22:49 +00:00
Mike Pritchard
90ac6cd46a #include <string.h> to help silence -Wall. 1997-02-20 23:11:22 +00:00
Guido van Rooij
c65c314e66 Actually allow the -R flag. 1997-02-13 19:24:25 +00:00
David Nugent
26015440b9 Tidy-up modem-chat handling: ensure tty modes are restored to
'sane' standard (not raw) settings before abort/exiting; move
responsibility of setting raw mode for chat-handling out of
chat.c to avoid doing redundant tc{s,g}etattr()s; move DE
pause prior setting standard mode before issue/login prompt to
avoid echoing modem connect strings. Fixed up comment styles
in a couple of places.
1997-02-09 16:12:08 +00:00
Warner Losh
5b266377fd Buffer Overflow from OpenBSD
rev 1.7 deraadt:
	buf oflow
Obtained from: OpenBSD
1997-02-09 04:40:02 +00:00
Warner Losh
70dc969961 Some patches for source routed packets from OpenBSD.
Rev 1.16 deraadt:
	do not warn about valid options; invalid options correctly quit
Rev 1.15 deraadt:
	need not clear options since bad ones cause exit;
	provos@ws1.physnet.uni-hamburg.de
Rev 1.14 deraadt:
	IPOPT_LSRR/IPOPT_SSRR must exit() due to tcp sequencing; pointed
	out by provos@wserver.physnet.uni-hamburg.de. also another 1-char
	buffer overflow.

Reviewed by:    Peter Wemm
Obtained from:  OpenSBD
1997-02-09 04:18:43 +00:00
Warner Losh
2631d5a8d1 Some patches for source routed packets from OpenBSD.
Rev 1.13 deraadt:
	do not warn about valid options; invalid options correctly quit
Rev 1.12 deraadt:
	need not clear options since bad ones cause exit;
	provos@ws1.physnet.uni-hamburg.de
Rev 1.11 deraadt:
	IPOPT_LSRR/IPOPT_SSRR must exit() due to tcp sequencing; pointed
	out by provos@wserver.physnet.uni-hamburg.de. also another 1-char
	buffer overflow.

Reviewed by:	Peter Wemm
Obtained from:	OpenSBD
1997-02-09 04:16:27 +00:00
Jordan K. Hubbard
9a969423ea Fix a hop count datatype bogon pointed out in PR#2642 (though my fix
was slightly different than the one submitted).
Submitted by:	Elmar Bartel <bartel@informatik.tu-muenchen.de>
1997-02-07 20:03:49 +00:00
David Nugent
c2efe923b5 Increased username size to allow passing username:auth_method to
login.
1997-02-07 11:45:10 +00:00
David Nugent
635b1c4908 Make username size dependant on MAXLOGNAME in sys/param.h. Was
previously hard-coded at 16 characters (and possibly overflowing
the field when NUL terminating a username of exactly 16 characters
in length).
1997-02-02 14:43:32 +00:00
David Nugent
fe552114a3 Added:
ic=expect/send script    modem init script
    ac=expect/send script    modem answer script
    ct#val		     chat script timeout (seconds)
    rt#val		     recycle timeout (seconds) if 'ac' set
    dc#val		     debug bitmask for debugging chat scripts
    hw	(boolean)	     enable crtscts handshaking
    if=path		     'issue' file sent prior login prompt

chat.c is a simplistic expect/send chat module.
1997-02-02 14:24:57 +00:00
David Nugent
e91c4f7cc3 Fix bug in %s, %m, %r and %v macros not displaying data. 1997-02-02 07:38:26 +00:00
David Nugent
54472d02d2 Added support for %s (sysname) %m (machine) %r (release) and %v (version)
prompt macros to agree with getty(8).
1997-02-02 07:33:50 +00:00
David Greenman
ac7636cbfc Oops, fix white space in last commit. 1997-01-28 07:09:05 +00:00
David Greenman
0b4df2eec2 Fix signal handler race condition. 1997-01-28 07:06:54 +00:00
Joerg Wunsch
28f9fdc1ae Make even more copies of hostnames obtained by inet_ntoa(). iruserok()
could still clobber the static storage, yielding an error message with
a wrong hostname.
1997-01-27 15:38:46 +00:00
John Polstra
18be4a71df Use xmalloc instead of malloc in two places, so that out-of-memory
conditions will be detected.

Submitted by:	Philippe Charnier <charnier@xp11.frmug.org>
1997-01-24 00:07:03 +00:00
Paul Traina
dfe0d2158e Fix buffer overrun problem.
Cannidate for: 2.2	[must]

Obtained from: Lite/2 and BSDI's published patch
1997-01-18 08:30:01 +00:00
John Polstra
ac6c268b3d Pay attention to the environment variable "LD_IGNORE_MISSING_OBJECTS".
If it is set to a nonempty string, then simply skip any missing
shared libraries.  This came up in a discussion long ago as a
potentially useful feature at sysinstall time.  For example, an
X11 utility could be used without the X libraries being present,
provided the utility had a mode in which no X functions were actually
called.
1997-01-17 20:22:18 +00:00
Alexander Langer
8abdc2eb40 Sweep through the tree fixing mmap() usage:
- Use MAP_FAILED instead of the constant -1 to indicate
    failure (required by POSIX).
  - Removed flag arguments of '0' (required by POSIX).
  - Fixed code which expected an error return of 0.
  - Fixed code which thought any address with the high bit set
    was an error.
  - Check for failure where no checks were present.

Discussed with:	bde
1997-01-16 21:58:40 +00:00
John Polstra
20995a4fcc If a library is found in the hints file, but the library doesn't exist,
ignore the hint.

This is a straightforward fix, and it should go into 2.2 after a burn-in
period of a few days.

Noticed by:	bde
1997-01-14 17:53:55 +00:00
Jordan K. Hubbard
1130b656e5 Make the long-awaited change from $Id$ to $FreeBSD$
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore.  This update would have been
insane otherwise.
1997-01-14 07:20:47 +00:00
Wolfram Schneider
af20215665 Sort cross references. 1997-01-13 00:25:51 +00:00
John Polstra
d956f8a388 Use the RTLD_NOW symbol, now that it is defined in <dlfcn.h>. 1997-01-12 19:59:26 +00:00
John Polstra
aeea55e459 Correct typos and spelling errors. 1997-01-12 00:19:14 +00:00
John Polstra
0db65949ae Add support for the LD_BIND_NOW environment variable. If it is set to a
nonempty string, then function calls are relocated at program start-up
rather than lazily.  This variable is standard on Sun and SVR4 systems.

The dlopen() function now supports both lazy and immediate binding, as
determined by its "mode" argument, which can be either 1 (RTLD_LAZY) or
2 (RTLD_NOW).  I will add defines of these symbols to <dlfcn.h> as soon
as I've done a little more checking to make sure they won't cause
collisions or bootstrapping problems that would break "make world".

The "LD_*" environment variables which alter dynamic linker behavior are
now treated as unset if they are set to the empty string.  This agrees
with the standard SVR4 conventions for the dynamic linker.

Add a work-around for programs compiled with certain buggy versions of
crt0.o.  The buggy versions failed to set the "crt_ldso" member of the
interface structure.  This caused certain error messages from the
dynamic linker to begin with "(null)" instead of the pathname of the
dynamic linker.
1997-01-12 00:16:36 +00:00
John Polstra
d3c677c7e0 Add support for the LD_BIND_NOW environment variable. If it is set to a
nonempty string, then function calls are relocated at program start-up
rather than lazily.  This variable is standard on Sun and SVR4 systems.

The dlopen() function now supports both lazy and immediate binding, as
determined by its "mode" argument, which can be either 1 (RTLD_LAZY) or
2 (RTLD_NOW).  I will add defines of these symbols to <dlfcn.h> as soon
as I've done a little more checking to make sure they won't cause
collisions or bootstrapping problems that would break "make world".
1997-01-12 00:09:11 +00:00
Mike Pritchard
f3396fdc63 Document the fact that the administrator may have
to change syslog's config file in order for all of
ftpd's log messages to be displayed by syslogd.

Closes PR# 1559.
1997-01-11 20:17:05 +00:00
Andrey A. Chernov
b8b15e71f7 Build ebones/telnetd only if MAKE_EBONES defined 1997-01-08 11:46:23 +00:00
Mike Pritchard
0fd3140e80 Correct some misleading text.
Submitted by:	Klaus Klein <kleink@layla.inka.de>
Obtained from: NetBSD-bugs PR#3089
1997-01-08 07:12:47 +00:00
Paul Traina
a29e4eaa60 Some buffer overrun fixes and removed check for username starting with "-"
(replacied it with a getopt stopper (--) instead, which is more correct).

Obtained from: OpenBSD
1997-01-07 19:00:52 +00:00
Garrett Wollman
702a1d0148 Update to match changes in <net/if.h>. 1997-01-03 20:19:50 +00:00
David Nugent
4ae89ecddd Added group= facility to /etc/ttys for tty grouping for more
more manageable and convenient referencing by login.conf (login
class database) and (e.g.) login.access.

This is the first of a group of commits which implements the login
class capabilities database.
1997-01-02 08:05:43 +00:00
Jordan K. Hubbard
9189cfd1e6 Remove dmalloc.c reference from here too. :) 1997-01-01 11:03:27 +00:00
Mike Smith
b2a1dd44dc Add a new 'de' capability, specifying a number of seconds to sleep before
emitting the initial prompt.

This is useful in a number of circumstances :
 - you have (a) stupid modem(s) that assert(s) DCD too soon.
 - you have dialin users with stupid diallers and poorly
   written chatscripts. (esp. some Winsock diallers)

BSD/OS also has this capability.

Submitted by:	damian@cablenet.net (Damian Hamill)
1996-12-31 01:30:38 +00:00
Steven Wallace
43d7fd0390 Fix spelling error in manpage. 1996-12-26 21:51:09 +00:00
Bill Paul
a2e787bff1 Change declaration of yp_errno from int to enum ypstat so that it
matches what's in ypserv/yp_extern.h (which I changed when I added the
async DNS stuff). The conflict broke the build of rpc.yppasswdd.

Pointed out by: bde
1996-12-23 18:15:41 +00:00
Mike Pritchard
d3b133fb1c Document the -k, -v and -x options.
Closes PR# 801.
1996-12-16 00:01:28 +00:00
Mike Pritchard
487990280d Correct some xrefs/mlinks. 1996-12-14 23:27:20 +00:00
Bill Paul
79cc85d3ca Close PR #2193: support backslash line continuations.
(Also did some minor cleanups.)
1996-12-13 02:40:39 +00:00
Garrett Wollman
e831f30876 Convert this program to use sysctl rather than kvm for some of its
statistics.  Unfortunately, the coverage of sysctl isn't good enough to do
all of them :-( .
1996-12-11 19:11:52 +00:00
Garrett Wollman
628d2ac1b0 Fix up programs which expect <net/if.h> to include <sys/time.h> to instead
do it themselves.  (Some of these programs actually depended on this
beyond compiling the definition of struct ifinfo!)  Also fix up some
other #include messes while we're at it.
1996-12-10 17:11:53 +00:00
Joerg Wunsch
84e1b7d26b Truncate the file when opening it with write intent. Otherwise,
there's a good chance that garbage will remain at the end.

Closes PR # bin/2112: tftpd doesn't truncate ...

Reviewed by:	fenner
1996-11-30 20:59:32 +00:00
Torsten Blum
5a392aec2b add flag to allow only anonymous ftp logins
Reviewed by:	pst
1996-11-30 12:00:25 +00:00
Andrey A. Chernov
e11ba3694e Use LC_TIME=C instead of LC_TIME= 1996-11-26 03:31:26 +00:00
Paul Traina
a13e275f66 Back out recent security patch for rexecd. After more careful analysis,
it is both uneeded and breaks certain lock-step timing in the rexec
protocol.

Yes, an attacker can "relay" connections using this trick,  but a properly
configured firewall that would make this sort of subterfuge necessary in the
first place (instead of direct packet spoofing) would also thwart useful
attacks based on this.
1996-11-22 08:59:07 +00:00
Paul Traina
dacc975297 Conditionalize setsockopt IP_PORTRANGE to make ftpd portable. 1996-11-20 22:13:51 +00:00
Paul Traina
312c86cfd9 Truncate argument list to avoid buffer overflows.
Cannidate for: 2.1 and 2.2
1996-11-20 22:12:50 +00:00
Paul Traina
6c6cc60e38 Do not attempt to open reverse channel until authentication phase has
succeeded.

Never allow the reverse channel to be to a privileged port.

Cannidate for:	2.1 and 2.2 branches

Reviewed by:	pst (with local cleanups)
Submitted by:	Cy Shubert <cy@cwsys.cwent.com>
Obtained from:	Jaeger <jaeger@dhp.com> via BUGTRAQ
1996-11-19 18:03:16 +00:00
Paul Traina
4c640c1689 remove newly added reference to ppplogin 1996-11-13 01:36:52 +00:00
Paul Traina
ee936a69e4 Add the >optional< ability to sense PPP link bringups and call an authentication program 1996-11-13 01:06:40 +00:00
Poul-Henning Kamp
9649260fa5 doc/1994: spelling error.
Submitted by:	David Leonard David Leonard <d@scry.dstc.edu.au>
1996-11-12 13:32:49 +00:00
Jordan K. Hubbard
ea8f0676cf Correct the ancient paths here in case someone ever uncomments this again. 1996-11-05 05:13:39 +00:00
Torsten Blum
ff4167733f Comment out the XIDLE extension stuff, it breaks make world on systems
with Xinside's CDE installed
1996-11-04 20:58:58 +00:00
Mark Murray
50ab54df69 Compile telnetd from eBones instead of secure.
2.2 candidate.
1996-11-03 17:00:12 +00:00
Bill Paul
81a82d4dfd Give ypxfr the ability to detect the presence of the YP_INTERDOMAIN
and YP_SECURE flags so that it can properly add them to newly created
maps when needed. This applies only when using the 'standard' method
for map transfers. When using rpc.ypxfrd, the whole map is copied
verbatim, along with any special entries that may be encoded in it.

Also made -Wall a little quieter for ypxfrd_getmap.c.
1996-10-25 16:13:09 +00:00
John Polstra
ab6c6377b3 If errors occur during the loading of the shared libraries required by
the main program, report them directly from the dynamic linker and die
there, rather than returning an error message to crt0.o.  This enables
the printing of error messages even for old executables, whose version
of crt0.o is not able to print them.

This fix closes PR bin/1869.

The code in crt0.o for printing error messages from the dynamic linker
is no longer used, because of this change.  But it must remain, for
backward compatibility with older dynamic linkers.
1996-10-24 16:24:19 +00:00
Bill Paul
2385e0163a Nuke a couple of useless lines of code from the /etc/netid parsing
section. (Cut & paste-o.)
1996-10-24 03:33:32 +00:00
Marc G. Fournier
80bcade31d Totally botched ths patch...revert back to Rev 1.7, and request a
proper context diff from the submitter...
1996-10-23 05:05:32 +00:00
Marc G. Fournier
59faa42d9d Last time I trust 'sucess's on a non-context diff...
Pointed out by: Bill Fenner <fenner@parc.xerox.com>
1996-10-22 22:52:37 +00:00
Marc G. Fournier
268fa61dc1 Fixes:
When an rsh is denied by rshd because the client is lacking appropriate
.rhosts permission, an error message is formatted for syslog which contains
the client's hostname.  The hostname portion of the message relies on a pointer
to a field within gethostbyname()'s internal struct hostent which changes state
between when the pointer is initialized and when it is dereferenced to create th
e
message.

Submitted by: skynyrd@opus.cts.cwu.edu
1996-10-22 21:11:49 +00:00
Marc G. Fournier
d89ac03c9d Fixes:
>Description:

        /usr/libexec/mail.local runs as root.  As such is can fill up a
        mailbox on a quota'd filesystem, and keep going... Makes quota's
        almost useless in an ISP environment.

Closes: PR#bin/1111

Submitted by:	 Charles Henrich <henrich@crh.cl.msu.edu>
1996-10-22 21:01:01 +00:00
Bill Paul
2c33b20a87 Add a couple of reserved port checks: don't talk to either ypserv
or rpc.ypxfrd processes on remote systems that aren't bound to reserved
ports. The servers already do reserved port checks on the clients.

Obtained from: scrutinizing the OpenBSD ypxfr sources. (Note that this
applies to the ypserv check only; OpenBSD doesn't have an rpc.ypxfrd.)
1996-10-20 19:52:53 +00:00
Andrey A. Chernov
43658eac64 Implement alternative strategy if it is impossible to confirm
password: ask for it, but don't tell that S/key password required.
It looks like non-s/key system from outside.

Additionally tell that s/key required when it is so for normal case
1996-10-18 17:09:26 +00:00
John Polstra
16804804df Fix two minor typos in the manual page. 1996-10-18 04:49:43 +00:00
Andrey A. Chernov
28fbb50335 Oops, fix my previous commit, now tell user his s/key parameters 1996-10-17 17:46:00 +00:00
Andrey A. Chernov
28ed0fe08b Don't ever ask for password if it is impossible to confirm it
It happens if 1) regular passwords not allowed, 2) skey database
not activated for given user.
Under some rare circumstanes skey_challenge can return empty
diagnostic or even previous buffer, fix it.
1996-10-17 17:06:04 +00:00
John Polstra
e5bbb2e4b5 Add the search directories from the hints file only the first time it is
opened.  After that, the directories are already present, and there is
no point in adding them again.  This doesn't fix any bugs; it's just for
efficiency.
1996-10-10 23:16:50 +00:00
John Polstra
9151bb8d2d Fix a bug that caused a segmentation violation if dlsym() was called
with its first argument equal to NULL.
1996-10-10 04:10:32 +00:00
Wolfram Schneider
8607faf466 correct spelling of 'X Window System' (tm) 1996-10-06 17:59:28 +00:00
Wolfram Schneider
e83201b43a delete doubled words, e.g.: "the the" -> "the" 1996-10-05 22:27:30 +00:00
Nate Williams
9ac501e21b There's no need to 'unsetenv()' unsafe environment variables explicitly
since rt_readenv() already takes care of not setting unsafe variables.
This was part of the changes I submitted to Peter and John during the
review which must have gotten missed.
1996-10-01 16:09:18 +00:00
Peter Wemm
3e17261bac Sigh, oh well, here's my obligigatory "oops" commit. I don't quite know
how I managed to get this out of sync, but I did.  I guess that's what I
get for directly committing from different machines that I was testing on.

Pointed out by: Paul Traina <pst@freebsd.org>
1996-10-01 11:54:38 +00:00
Peter Wemm
5584286a91 Update to handle new version ld.so.hints and info in executable for
configurable fallback search paths, as well as new crt interface version.

Also:
 - even faster getenv(), get all environment variable settings in a single
   pass.
 - ldd printf-like format specifications
 - minor code cleanups, one vsprintf -> vsnprintf (harmless)

The library search sequence is a little more complete now. Before,
it'd search $LD_LIBRARY_PATH (by opendir/readdir/closedir), then read
the hints file, then read /usr/lib (again by scanning thr directory).  It
would then fail if there was no "found" library.

Now, it does LD_LIBRARY_PATH and the hints file the same, but then uses
a longer fallback path.  The -R path is fetched from the executable if
specified at build time, the ldconfig path is appended, and /usr/lib is
appended to that. Duplicates are suppressed.  This means that simply
placing a new library in /usr/local/lib will work (the same as it did in
/usr/lib) without needing ldconfig -m.  It will find it quicker if the
ldconfig is run though.

Similar changes have been made to the NetBSD ld.so, but ours is rather
different now due to John Polstra's speedups and fixes from a while back.

The ldd printf-like format support came direct from NetBSD.

Reviewed by: nate, jdp
1996-10-01 01:52:03 +00:00
Peter Wemm
b186571cf6 Update the backends to go with the top-level ld changes. The non-i386
changes are for completeness, I don't think they work.  There are changes
to deal with the new include files.

Obtained from: NetBSD (mostly)
1996-10-01 01:28:10 +00:00
Peter Wemm
d0a184df5d Support for .weak (in addition to the N_INDR stab) for gcc/g++. Also deal
with the -R option and store the path in the dynamic header when specified.
The $LD_RUN_PATH environment variable is not checked yet.

While here, split up the code a bit more to enable more selective replacing
of GPL'ed components that are linked with ld.so with others.

Obtained from: NetBSD (mostly, the breakup is my fault)
1996-10-01 01:22:51 +00:00
Wolfram Schneider
e0e5145ce6 add missing comma(s) in .Xr macros 1996-09-23 22:24:39 +00:00
Wolfram Schneider
148531ef1e add forgotten $Id$ 1996-09-22 21:56:57 +00:00
Warner Losh
8ea3178507 Reviewed by: Bill Fenner <fennder@parc.xerox.com>
Reviewed by:	Garrett Wollman <wollman@freebsd.org>
Submitted by:	Warner Losh <imp@village.org>
Close PR bin/1145:
	Add -s flag to tftpd.  This enables the so-called secure mode
of tftpd where it chroots to a given directory before allowing access
to the files.  In addition, it runs as nobody when in this mode.
Reviewed a long time ago by Bill and Garrett.  Apply my patch from the
pr, and close the PR.
1996-09-22 04:19:27 +00:00
Paul Traina
39ea627d62 Fix some compilation warnings. 1996-09-21 18:01:23 +00:00
Bruce Evans
9e04d4c7f5 This should have gone away with the COMPAT_43 cruft. cgetent() is now
used instead of the rudimentary routines here.
1996-09-20 11:19:00 +00:00
Poul-Henning Kamp
d3e560a1d3 Make the inetd suggestion slightly less confusing. 1996-09-19 08:21:18 +00:00
Bruce Evans
eaa86f9d7f Don't use __dead or __pure in user code. They were obfuscations
for gcc >= 2.5 and no-ops for gcc >= 2.6.  Converted to use __dead2
or __pure2 where it wasn't already done, except in math.h where use
of __pure was mostly wrong.
1996-09-14 03:00:32 +00:00
Bruce Evans
87d0dcafca Use `install -C' instead of lots of shell commands to install ld.so
as atomically as possible.

(Immutable targets can't be renamed without opening a window when
neither the source nor the target is immutable.  Perhaps there
should be a rename_immutable syscall to do this if unsetting the
immutable flags would work.)
1996-09-12 03:42:54 +00:00
Paul Traina
86ca32cd60 bootpd.dump is in /tmp 1996-09-11 01:37:24 +00:00
Peter Wemm
163d0a5fb8 wrong C bracketing, *blush*... 1996-09-07 02:17:29 +00:00
Peter Wemm
f533eaf1c0 zap #include <sgtty.h>, it's not used. 1996-09-07 02:08:35 +00:00
Peter Wemm
2a29592214 Another sgtty use bites the dust.. 1996-09-07 02:05:53 +00:00
Bruce Evans
5b963fa12e Fixed DPADD. 1996-09-05 17:16:10 +00:00
Bruce Evans
680b396b51 Removed unused `-I.'s from CFLAGS.
"." means the object directory, so it is just confusing to use it
when nothing is included from the object directory unless the object
directory is also the source directory.  It is confusing for "."
not to mean the source directory anyway, so used `-I.'s should be
replaced by `-I${.OBJDIR}'.
1996-09-04 22:25:35 +00:00
Andrey A. Chernov
ea9ce57fe2 Unlocalize date 1996-09-01 00:53:45 +00:00
Peter Wemm
05403b9a0d Add named-xfer 1996-08-29 22:17:27 +00:00
Peter Wemm
b433e12930 build bind-4.9.4-P1 named-xfer in it's own directory 1996-08-29 21:50:49 +00:00
Wolfram Schneider
5a80fb277e sync copyright with /usr/share/examples/etc/bsd-style-copyright 1996-08-27 20:04:45 +00:00
Mike Pritchard
c0b0bcf4d3 Use the .Bx macro where appropriate. 1996-08-23 20:36:11 +00:00
Mike Pritchard
0f7785061e Use the .At macro where appropriate. 1996-08-23 01:06:24 +00:00
Mike Pritchard
85cf659a76 Use the .Fx macro where appropriate. 1996-08-23 00:57:08 +00:00
Peter Wemm
326bbdd92f Add a ``-P altlogin'' option which allows the sysadmin to specify an
alternate login(1) type program to run.
1996-08-13 07:51:45 +00:00
Julian Elischer
105a3c98b9 Reviewed by: various
Submitted by:	archie@whistle.com

allow ftpd to bind to a single address/interface
this allows easy split services.
1996-08-09 22:22:30 +00:00
Mark Murray
9aca17cb12 Tidy up the Kerberised bits. While I'm here, fix some -Wall complaints. 1996-08-09 09:02:31 +00:00
Poul-Henning Kamp
3cde2031c8 Fix another bogon. 1996-08-06 14:29:06 +00:00
Poul-Henning Kamp
0bb6e9ed65 Make password checking in ftpd work again. 1996-08-06 08:43:43 +00:00
Paul Traina
a5a4544e77 Convert STATS and PARANOID to run-time options.
Document the new -R (relax paranoia) option.

From NetBSD/Lite2: code and man page cleanups, Kerberos IV hooks
(relax, we're still exportable), and /etc/ftpchroot feature for
semi-anonymous accounts
1996-08-05 00:21:15 +00:00
Paul Traina
61f891a6df If PARANOID is set, do not allow PORT commands to remote ports less than 1024
or addresses other than the requestor's address.  This violates the FTP
protocol (hmm...as I write this, I'm going to change this to a run-time var.)

Require login before PASV and RNTO commands.

Close unused PASV ports so they don't hang around forever.

Do not allow file overwrites via rename or STOR when anonymous
(suspenders).

Clean up buffer utilization.

My code, but heavily inspired by Hobbit's changes to wu-ftpd as pointed out
by Mike Prettejohn and Kit Knox.
1996-08-04 22:40:35 +00:00
Bill Paul
09cd72056a Use err() instead of perror()/exit() and remember to #include <errno.h>
and <err.h>.
1996-08-04 19:17:15 +00:00
Adam David
30c690ce79 consistent presentation of emphasis 1996-07-23 12:21:46 +00:00
Bruce Evans
884d83ff09 Include <sys/types.h> before including <grp.h> so that this doesn't
depend on <stdio.h> bogusly including <sys/types.h>

Reordered includes to satisfy KNF rules.
1996-07-12 05:55:38 +00:00
Wolfram Schneider
e3908fd51f add manpage getNAME(1) 1996-07-08 20:18:28 +00:00
Bill Paul
78acff3281 Fill in new arguments in the ypxfr_getmap structure (byte order,
db type, filename) and check for new failure codes (db mismatch,
endian mismatch).
1996-07-04 02:13:11 +00:00
Bill Paul
4c2e2040b6 Improve performance with very large user databases by increasing
hash table size from 256 to 1024.

Generate output that looks more like the SunOS mknetid: uses a space
instead of tabs for white space.

Fix typo in comment in hash.h: Groupit -> Groupid.
1996-06-27 05:42:01 +00:00
Bill Paul
281a1128d8 Turn on mknetid. 1996-06-25 20:32:30 +00:00
Bill Paul
ca09eb424c (This import had better work correctly or so help me I'll move to
the Himalayas and become a hermit.)

Import new mknetid program. This replaces the crufty, soon to be defunct
mknetid script packaged with ypserv.

This program parses the group, passwd, hosts and netid databases into
the netid.byname map. Duplicate checking is performed using hash tables.
Testing on my 486DX2/66 with FreeBSD 2.1.0 showed that this program can
process a 30,000-entry passwd database into a netid map (along with
assorted group and hosts information) in about 22 seconds. On my SPARC IPX
with SunOS 4.1.3, it takes about 15 seconds. This compares favorably with
the SunOS mknetid program, which parses the same database(s) in 13 seconds.
(With smaller databases, my program is actually slightly faster. Go
figure.)
1996-06-25 20:26:38 +00:00
Andrey A. Chernov
333468bac7 If hostname > UT_HOSTSIZE, use its numerical address instead to keep
valid utmp and wtmp entries
1996-06-17 14:59:07 +00:00
Bill Paul
1ed0ebdc98 Take ypxfrd_xdr.c out of SRCS line. It should be included in librpcsvc,
which ypxfr links with. (Sorry: left over development bogon.)

Just a reminder: you must rebuild librpcsvc before you build
this program.

Pointed out by: Stephen Hocking
1996-06-06 03:58:06 +00:00
Bill Paul
16deb43a45 Add support for rpc.ypxfrd and document it in the man page.
Also generallize the yp_dbwrite functions a little: allow the caller
to specify certain flags. I need this mostly for some changes to
rpc.yppasswdd to allow in-place updates.

Also change Makefile a little to use the same format as ypserv.
1996-06-05 05:42:52 +00:00
Paul Traina
6cde43480c Pass in both username and file to jkfprintf 1996-06-04 15:42:09 +00:00
Poul-Henning Kamp
6b5139742c backout yacc changes 1996-06-02 17:10:13 +00:00
Peter Wemm
40e9d39e59 Use the sysctl settable data port ranges rather than the statically
compiled values.  see sysctl net.inet.ip.portrange.* and the IP_PORTRANGE
discussion in <netinet/in.h>
1996-05-31 03:10:25 +00:00
Poul-Henning Kamp
9ad70fa0b2 Fix yacc rule usage. 1996-05-30 21:29:03 +00:00
John Polstra
1dd43c183e When checking to see whether a needed shared library has already
been loaded, look for a match by device and inode number if the
traditional pathname comparisons don't find a match.  This detects
the case in which a library is requested using two different names
which are really links to the same file, and avoids loading it
twice.

Requested by:	peter@freebsd.org
Reviewed by:	peter@freebsd.org
1996-05-22 06:34:12 +00:00
Bill Paul
d7b71c676e Small touchups:
- Fix typos in comments in hash.c.
- Remove unneeded and unused member from grouplist struct in hash.h.
  (Curiously, the compiler never complained about this even though the
   member was of type 'struct grps' which is not defined anywhere in
   this program.)
- char ch -> int ch in revnetgroup.c.
- char *argv[0]; -> char *argv[]; also in revnetgroup.c.
- Force the user to specify at least one of the -u or -h flags
  and complain if they specify both.
1996-05-12 17:17:45 +00:00
Wolfram Schneider
9fb933075e `mv'' -> `mv -f''
``rm'' -> ``rm -f''
so mv/rm may not ask for confirmation if you are not root
1996-05-07 23:19:49 +00:00
Bill Paul
a7bd0e76fc phkmalloc doesn't like the call to xdr_free() in ypxfr_get_master().
Nuke it.
1996-05-07 21:08:20 +00:00
Andrey A. Chernov
03749d174f Localize time 1996-05-07 19:10:32 +00:00
Andrey A. Chernov
65fe4a53c3 Replace non-POSIX speed setting by POSIX one 1996-05-07 16:42:26 +00:00
Joerg Wunsch
cae66988a1 Finally commit the changes that make getty(8) no longer depend on the
COMPAT_43 cruft.  This is supposedly the last core utility that has
been using it!  (So now, one should be able to remove this option from
the config files.  Be aware that the last officially released xterm
however still requires it.)

The getty has been running now for several weeks on my modem line, so
i feel safe about it.

Obtained from:	mostly from the NetBSD vendor-branch
1996-05-05 19:01:13 +00:00
Bill Paul
b95c787ed4 Small tweak to yp_put_record(): call the DB put routine with the
R_NOOVERWRITE flag and process return codes so that we can tell the
difference between a failure due to a duplicate database entry and
failure due to some other error.
1996-04-28 03:59:56 +00:00
John Polstra
dd2b076850 Implement support for LD_PRELOAD in the dynamic linker. Remove
descriptions of LD_NO_INTERN_SEARCH and LD_NOSTD_PATH from the manual
page, since they are not supported.

Submitted by:	Doug Ambrisko <ambrisko@ambrisko.roble.com>
1996-04-20 18:29:50 +00:00
John Polstra
c049096e82 Implement support for LD_PRELOAD in the dynamic linker.
Submitted by:	Doug Ambrisko <ambrisko@ambrisko.roble.com>
1996-04-20 18:27:56 +00:00
Joerg Wunsch
712c581c89 Import NetBSD's termios'ed getty into a vendor branch.
Obtained from:	NetBSD 1.1R
1996-04-13 15:33:16 +00:00
Joerg Wunsch
474bf6693a This commit was generated by cvs2svn to compensate for changes in r15249,
which included commits to RCS files with non-trunk default branches.
1996-04-13 15:33:16 +00:00
Joerg Wunsch
5e814ff6c2 Introduce a -b option for sites who are not interested in the old biff
service.  (Avoid a ``in_vain'' warning...)
1996-04-13 11:44:12 +00:00
David Greenman
cf09a2067c Implemented a "-D" option that causes ftpd to detach and become a daemon -
accepting connections on the FTP port and forking children processes to
handling them. This is lower overhead than spawning ftpd from inetd and
can be a significant win on busy FTP servers. Be sure to disable ftpd in
inetd.conf if you decide to use this option.
These changes are based on similar changes I made to wu-ftpd and have
been in use on wcarchive for several months.
1996-04-11 10:22:16 +00:00
Mike Pritchard
edf0e5b3f8 Correct some man page xrefs, and some other minor changes to bring some
man pages up to mdoc guidelines and fix some minor formatting glitches.
Also fixed a number of man pages to not abuse the .Xr macro to
display functions and path names and a lot of other junk.
1996-04-08 04:18:31 +00:00
Joerg Wunsch
ea5256699d Import the 4.4Lite2 getty into a vendor branch. 1996-04-07 10:28:57 +00:00
Mike Pritchard
906c1e27fc Correct some man page cross references and file location references. 1996-04-07 00:06:21 +00:00
Jordan K. Hubbard
a7939d5aa6 Here is a patch to talkd which makes it send the request to the tty with
the lowest idle time.
Submitted by:	loodvrij@gridpoint.com (Bruce J. Keeler)
1996-03-24 09:27:20 +00:00
David Greenman
1332892bcf Fix bug that caused a coredump when attempting to enter passive mode when
not logged in. Original fix slightly altered by me to return the correct
reply code.

Submitted by:	Vadim Kolontsov <vadim@tversu.ac.ru>
1996-03-18 11:09:03 +00:00
Mike Pritchard
b8c8989377 Update the uucpd makefile to install the man page. 1996-02-18 21:38:13 +00:00
Mark Murray
7648a7d3a5 New man page for uucpd. There is precious little info for this thing
available, but I managed to find something in the BSD4.4 uucico(8)
docs.

Closes pr docs/131.
1996-02-18 20:32:30 +00:00
Bill Paul
b6248eebf5 Turn on ypxfr. 1996-02-13 14:59:20 +00:00
Joerg Wunsch
2ec6fd6a09 Include both, the regular and the `secure' telnetd, when building
a release.
1996-02-13 09:20:16 +00:00
Mike Pritchard
78b0b234eb Correct a bunch of man page cross references and generally
try and silence "manck".

ncurses, rpc, and some of the gnu stuff are still a big mess, however.
1996-02-11 22:38:05 +00:00
Mark Murray
bbff7ca556 #include <kerberosIV/des.h> -> #include <des.h> 1996-02-11 09:18:18 +00:00
Mike Pritchard
c4c23c4df8 Another round of various man page cleanups. 1996-02-09 17:25:57 +00:00
Mike Pritchard
ba849e6bf8 Correct a file location in the FILES section. 1996-02-09 02:31:23 +00:00
Bill Paul
bc66df81bb ypxfr_getmap.c:
- Handle 'empty' maps more gracefully. By empty I mean a valid map that
  just happens not to have any entries in it, such as you would get if
  you built a map database from an empty file. Previously, trying to
  ypxfr such a map would yield an 'NIS map/database error' which is not
  the correct behavior.

ypxfr_misc:
- Make sure to free() or xdr_free() dynamically allocated memory in
  ypxfr_get_master() as necessary.
1996-02-04 05:18:44 +00:00
Mark Murray
5bf1814b0e Rename des_set_key -> des_set_key_krb. (libdes conflict) 1996-02-03 11:51:19 +00:00
Mike Pritchard
5ea43fd200 Add some missing manual page links. 1996-02-02 17:48:46 +00:00
Wolfram Schneider
4714ab693b Section FILES and SEE ALSO completed
Section FILES and SEE ALSO completed
1996-01-28 23:57:38 +00:00
Wolfram Schneider
7b30d8a2b1 Section FILES and SEE ALSO completed 1996-01-28 23:57:09 +00:00
Paul Traina
4f5241c655 Fix getif() to work under 4.3bsd and later 1996-01-23 09:44:45 +00:00
Paul Traina
21759429e4 Remove bootpgw 1996-01-23 02:24:03 +00:00
Paul Traina
7870f32ed0 Disconnect bootpgw 1996-01-23 02:23:20 +00:00
Paul Traina
6e159bbc62 Merge back in 4.4bsd ARP changes by hand 1996-01-23 02:22:16 +00:00
Paul Traina
0490e2a765 Add bootpgw makefile 1996-01-23 02:02:03 +00:00
Paul Traina
d1c0e75921 Fix conflicts from 2.4.3 merge 1996-01-23 01:58:00 +00:00
Paul Traina
e08ac58bbe Import bootpd-2.4.3 from ftp.mc.com 1996-01-23 01:35:04 +00:00
Paul Traina
ee3ee9eeaa Minor cleanups from NetBSD-current.
Obtained from: NetBSD
1996-01-23 00:57:19 +00:00
John Polstra
5a81ed9667 This release is a moderate restructuring of the dynamic linker.
It addresses a number of problems that were present in earlier
versions.

The calls to the "init" and "fini" functions of shared libraries
have been reordered, so that they are called in a strictly nested
fashion, as is required for C++ constructors and destructors.  In
addition, the "init" functions are called in better order relative
to each other.  That makes the system more tolerant of C++ programs
which depend on a library's being initialized before its clients.

The dynamic linker is now more tolerant of shared libraries in
which dependencies on other shared libraries are incompletely
recorded.

Cleanup in the event of errors has been improved throughout the
dynamic linker.  A number of memory leaks were eliminated.

The warning message for a shared library whose minor version number
is too old has been clarified.

The code dealing with the "ld.so.hints" file has been cleaned up.
A bug that caused the hints file to be unmapped incompletely has
been fixed.  A different bug that could potentially cause the hints
file to be mapped on top of a loaded object has been fixed.

The code that searches for shared libraries has been cleaned up.
The searching is now more compatible with that done by SunOS and
SVR4.  Also, some unnecessary and useless searches of both the
hints file and library directories have been eliminated.

Reviewed by:	nate@freebsd.org
1996-01-13 00:15:25 +00:00
John Polstra
eb4a4eeb45 Split up the code so that a single directory can be searched, to
support some changes in the dynamic linker.  (This code is shared
by the dynamic linker.)

Reviewed by:	nate@freebsd.org
1996-01-13 00:14:53 +00:00
Poul-Henning Kamp
bbb1dc53a4 Another '-' needed for make release. 1996-01-11 17:49:55 +00:00
Poul-Henning Kamp
5a39b83123 Make the new realinstall target a little less draconian so that make release
doesn't fall over.
1996-01-11 17:27:16 +00:00
John Polstra
b25d7c2bbc Install ld.so in a way that is safe even on a running system. 1996-01-11 03:45:55 +00:00
Bill Paul
34a042e8b8 - Fix error reporting when checking order number via NIS: we return zero
on a failure, but if we're checking a corrupt map we could also get back
  a zero from ypserv without really encountering any actual error. Flag this
  condition and generate an meaningful error message.

- Fix transmission of ypxfr_clear to ypserv: error checking was wrong
  and we sending YPXFR_YPERR as an error status instead of YPXFR_CLEAR.

- To help avoid a race condition (or at least reduce the likelyhood of
  it occuring), use rename() to move a newly transfered map into place
  instead of unlink()ing the old one first and then renaming. Da man page
  sez that rename should do the unlink() for us. This prevents ypserv
  from returning 'no such map in domain' when asked to query a map which
  ypxfr has just unlink()ed but not yet replaced.
1996-01-10 17:44:10 +00:00
Bill Paul
d6cab90261 Sync with my sources at home (these are really tiny changes):
- Fix a SEGV condition in ypxfr_main.c that reared its ugly head while I
  was working on the 'parallel jobs' feature of the new yppush. After we've
  completed the map transfer and created a local temporary copy, we check
  the order number of the map on ypserv again to make sure it didn't change
  while the transfer was in progress (map skew). If for some reason we flat
  out fail to get the order number from the server, we flag this as an
  error and bail, telling ypxfr_exit() to clean up our temporary files
  for us. However, ypxfr_exit() tries to close the database before unkining
  it, not realizing that it has already been closed prior to the skew check.
  The second attempt to close the database causes a SEGV somewhere inside
  the DB code.

  (Well, it does on my 2.0.5 machine anyway. I haven't seen anyone modify
  the DB library code in ages, so the condition is probably still there.)

  To work around this, we deliberately set dbp to NULL after closing the
  database and check for the condition in ypxfr_exit(), being careful to
  avoid the second close if we see the NULL.

- In yp_dbwrite.c, make yp_open_db_rw() open the database with O_EXLOCK
  flag set. This probably won't affect much of anything, but I feel better
  having it there.
1996-01-06 20:28:06 +00:00
Thomas Graichen
f1fba5f1b8 added rpc.rquotad and rpc.sprayd 1996-01-05 09:44:31 +00:00
Thomas Graichen
968a1b9ae4 Obtained from: NetBSD
imported the rpc.sprayd from NetBSD - it is used by the new spray
command for network analysis
1996-01-05 08:53:39 +00:00
Thomas Graichen
59d7b5792a This commit was generated by cvs2svn to compensate for changes in r13240,
which included commits to RCS files with non-trunk default branches.
1996-01-05 08:53:39 +00:00
Thomas Graichen
1a3e5dd740 Obtained from: NetBSD
Imported rpc.rquotad from NetBSD - currently only used by the
quota-command to display quota's over nfs
1996-01-05 08:47:12 +00:00
Thomas Graichen
e26af47a28 This commit was generated by cvs2svn to compensate for changes in r13237,
which included commits to RCS files with non-trunk default branches.
1996-01-05 08:47:12 +00:00
Peter Wemm
b63e1fe2c4 Make ftpd use setproctitle() from libutil
I've left the old code in there under #ifdef OLD_SETPROCTITLE in case
somebody wants to try to compile out ftpd on some other machine.
1996-01-01 08:35:11 +00:00
Peter Wemm
6065a0be11 This commit was generated by cvs2svn to compensate for changes in r13122,
which included commits to RCS files with non-trunk default branches.
1995-12-30 19:02:48 +00:00
Peter Wemm
a5b996a7ec recording cvs-1.6 file death 1995-12-30 19:02:48 +00:00
Bill Paul
665823d011 Import the new ypxfr, written by yours truly. Functionally equivalent
to the old one, except that it supports an additional option (-p path)
that lets you specify the top level path wiere your NIS maps live.
(ypserv allows you to specify a path like this, so it makes sense that
ypxfr should too. ypserv will automagically pass the -p flag to ypxfr
if you use a path other than /var/yp when you start it.)

This program uses client stub code generated by rpcgen as well as
the yp_dblookup.c module from ypserv.
1995-12-25 03:07:13 +00:00
Garrett Wollman
dd07a8677b Implement server-side transaction TCP. (Has no effect on non-TTCP clients.) 1995-12-17 20:25:28 +00:00
Peter Wemm
279884182f Fix the bug which allowed people to avoid the "-s" (secure) bug.
Now, "finger" is invoked with "--" before the first network supplied
argument, so the "--" and "-l" hacks will be stopped.
1995-12-10 15:07:12 +00:00
Nate Williams
56dbd97bcb Fix typo. 1995-12-02 18:23:00 +00:00
Guido van Rooij
d7b3176278 It is not necessary to check if a '-' is in lusername., Checking if
lusername starts with a '-' is enough. Otherwise, no users with a '-'
in there name can use rlogin.
1995-12-01 20:38:40 +00:00
Guido van Rooij
d6ed3c374d Timeout when an expected accept does not happen after all.
This gets rids of dozens of hanging ftpd's because some broken
pc implementation `forgets' to open a passive connection.
Obtained from: Wietse Venema
1995-11-29 19:52:30 +00:00
Peter Wemm
2d9cb0580d Stop rlogind from bogusly ignoring an explicit .rhosts file for root.
It still correctly ignores hosts.equiv.  This is now consistant with rshd.
1995-11-20 23:25:35 +00:00
Andrey A. Chernov
cd0106ae43 Add missing & in des_set_key argument 1995-11-19 15:20:48 +00:00
Peter Wemm
b048c73588 Move the setlogin() call a little earlier.. It was being done in the child
process - which would be no longer allowed if the setlogin() changes go
through.  Now the parent (the session leader, when started by inetd) does it.
1995-11-12 18:31:23 +00:00
Nate Williams
1e37fc9d59 Changed the terminology for what used to be called the "memorizing"
vector.  Now it is called the "symbol caching" vector.  This was made
possible and unconfusing by other changes that allowed me to localize
everything having to do with the caching vector in the function
reloc_map().

Switched to alloca() for allocating the caching vector, and eliminated
the special mmap-based allocation routines.  Although this was motivated
by performance reasons, it led to significant simplification of the
code, and made it possible to confine the symbol caching code to the
single function reloc_map().

Got rid of the unnecessary and inefficient division loop at the
beginning of rtld().

Reduced the number of calls to getenv("LD_LIBRARY_PATH") to just 1, on
suggestion from <davidg@root.com>.

Added breaks out of the relocation loops when the relocation address is
found to be 0.  A relocation address of 0 is caused by an unused
relocation entry.  Unused relocation entries are caused by linking a
shared object with the "-Bsymbolic" switch.  The runtime linker itself
is linked that way, and the last 40% of its relocation entries are
unused.  Thus, breaking out of the loop on the first such entry is a
performance win when ld.so relocates itself.  As a side benefit, it
permits removing a test from md_relocate_simple() in
../i386/md-static-funcs.c.

Unused relocation entries in other shared objects (linked with
"-Bsymbolic") caused even bigger problems in previous versions of the
runtime linker. The runtime linker interpreted the unused entries as if
they were valid. That caused it to perform repeated relocations of the
first byte of the shared object.  In order to do that, it had to remap
the text segment writable.  Breaking out of the loop on the first unused
relocation entry solves that.

Submitted by:	John Polstra <jdp@polstra.com>
1995-11-02 18:48:15 +00:00
Andrey A. Chernov
e2326c6ef6 Revert fsync ifdef behaviour and name, now default variant acts like
original one.
Suggested by: peter
1995-10-31 09:16:46 +00:00
Andrey A. Chernov
e3807a3f8f Put fsync under #ifdef EXTRA_SANITY and turn it off by default.
fsync here cause real disk trashing when large UUCP mail chanks
parsed.
1995-10-31 08:22:13 +00:00
Bill Paul
0b8ab5c8e1 Add revnetgroup. 1995-10-26 16:28:33 +00:00
Bill Paul
a44e4d1407 Import the first cut of my (finally finished) revnetgroup program. This
program parses the /etc/netgroup file into netgroup.byuser and netgroup.byhost
format for NIS.

I used hash tables to store the initial netgroup data in memory and to
construct the 'reverse' netgroup output. It seems just as fast as the
SunOS revnetgroup, which is surprising considering this is my first
attempt at using hash tables in a real application. :)

Note that I canibalized a large chunk of getnetgrent.c to save myself
from having to write my own netgroup parsing functions.
1995-10-26 16:25:29 +00:00
Nate Williams
468f82b316 Run-time linker speedups - Round One
Implemented symbol memorizing to reduce the number of calls to lookup(),
making relocation go faster.  While relocating a given shared object,
the dynamic linker maintains a memorizing vector that is directly
indexed by the symbol number in the relocation entry.  The first time a
given symbol is looked up, the memorizing vector is filled in with a
pointer to the symbol table entry, and a pointer to the so_map of the
shared object in which the symbol was defined.  On subsequent uses of
the same symbol, that information is retrieved directly from the
memorizing vector, without calling lookup() again.

A symbol that is referenced in a relocation entry is typically
referenced in many relocation entries, so this memorizing reduces the
number of calls to lookup() dramatically.  The overall improvement in
the speed of dynamic linking is also dramatic -- as much as a factor of
three for programs that use many shared libaries.

Submitted by:	jdp@polstra.com "John Polstra"
1995-10-25 16:16:35 +00:00
Andrey A. Chernov
d7582593f6 Remove LD_NOSTD_PATH unsetenv, isn't exist anymore 1995-10-24 06:50:45 +00:00
Andrey A. Chernov
a4057ed8d3 Remove LD_NOSTD_PATH implementation, it isn't works and
can cause some problems.
Suggested-by: davidg
1995-10-24 06:48:16 +00:00
Andrey A. Chernov
b2105a0990 if uid != euid or gid != egid unsetenv("LD_NOSTD_PATH") too 1995-10-21 14:52:48 +00:00
Andrey A. Chernov
d549e5cc7f Fix original patch error with ! before strncmp
Zap only needed LD_* variables
1995-10-20 22:17:35 +00:00
Andrey A. Chernov
68942f23dd Don't allow LD_* env. variables to be tricked
Submitted by: Sam Hartman <hartmans@mit.edu>
1995-10-20 17:26:40 +00:00
David Greenman
dfd651579c Added a -D option to set the TCP_NODELAY socket option. This improves
responsiveness at the expense of some additional network traffic.
1995-10-15 03:40:57 +00:00
Justin T. Gibbs
f4390542d7 Kerberos can now deal with multi-homed clients.
Kerberos obtains a network address for the local host from the routing
tables and uses it consistently for all Kerberos transactions.  This ensures
that packets only leave the *authenticated* interface.  Clients who open
and use their own sockets for encrypted or authenticated correspondance
to kerberos services should bind their sockets to the same address as that
used by kerberos.  krb_get_local_addr() and krb_bind_local_addr() allow
clients to obtain the local address or bind a socket to the local address
used by Kerberos respectively.

Reviewed by: Mark Murray <markm>, Garrett Wollman <wollman>
Obtained from: concept by Dieter Dworkin Muller <dworkin@village.org>
1995-10-05 21:30:21 +00:00
Nate Williams
c68c38c86b This is a FreeBSD manpage, not a NetBSD manpage. :) 1995-10-05 05:16:52 +00:00
Andrey A. Chernov
12e35e512e Build secure telnetd if available and allowed 1995-09-29 19:47:51 +00:00
Bruce Evans
9987ab26d8 Fix SRCS (.c's were .o's) so that `make depend' works. 1995-09-28 17:33:16 +00:00
Nate Williams
6f5457454c Make the error message more readable when 'ld.so' cannot locate a needed
shared library.  Formerly, the message looked like this:

    ld.so: run: libjdp1.so.1.0: Undefined error: 0

The new message looks like this:

    ld.so: run: Can't find shared library "libjdp1.so.1.0"

(Where "run" is the name of the program being executed.)

Submitted by:	jdp@polstra.com (John Polstra)
1995-09-27 23:17:33 +00:00
Nate Williams
e1ec3d8b3c Fixup the "ld.so failed" message for the case when ld.so finds undefined
symbols.

An easy example to see this is to develop an X program which links
against Xt, but doesn't add -lX11 to the link line.  It will link fine,
but cause run-time errors by ld.so because of missing symbols used by Xt
defined in X11.  This patch makes the errors more readable.

Submitted by:   jdp@polstra.com (John Polstra)
1995-09-27 23:14:08 +00:00
David Greenman
430ff9b689 Fixed bug introduced with the change of startslave()...two arguments
were chopped off of the function call and garbage was passed instead.
The solution involves making some variable globals as well as fixing the
call to have all the arguments.
1995-09-11 20:54:49 +00:00
Paul Traina
b74fc1026f Move erase cleanup outside linemode conditional 1995-09-06 02:03:36 +00:00
Paul Traina
e22b1cd1ca Properly set the erase character for the login prompt.
Submitted by:	John Capo <jc@irbs.com> & Peter Wemm
1995-09-05 17:38:31 +00:00
Paul Traina
575ecb340a Delay starting login process until option negotiation is complete to
avoid race condition on connections with larger round-trip-times.

Submitted by:	John Capo & Peter Wemm
1995-09-05 17:34:29 +00:00
Andrey A. Chernov
bb22b34ecd Fix ${.CURDIR} misspelling 1995-08-29 13:42:52 +00:00
Mike Pritchard
ae532ecb79 Check for expired passwords before allowing access to the system. 1995-08-28 21:30:59 +00:00
Joerg Wunsch
19d57e6d9d Import Paul Kranenburg's man page for ld.so (aka. rtld).
Obtained from:	NetBSD
1995-08-26 13:17:39 +00:00
Andrey A. Chernov
ddcf802236 Upgrade to 2.9 1995-08-21 12:34:18 +00:00
Bruce Evans
48cfb668fc Change install' to ${INSTALL}' so that default install flags can be
specified in the top level Makefiles.

Previously I missed dozens of Makefiles that skip the install after
using `cmp -s' to decide that the install isn't necessary.
1995-08-06 12:24:38 +00:00
Mark Murray
558914c47f Only build telnetd if secure telnetd is not going to be built.
Reviewed by:	rgrimes
1995-08-06 11:20:35 +00:00
Paul Traina
4c450ad7a7 Use data ports in the range 40000..44999 by default to enhance FTP usability
in a firewall environment.  Original idea by Mark Tracy (?).

Reviewed by:	wollman
Submitted by:	pst
1995-08-05 19:12:05 +00:00
Andreas Schulz
c4dfd14ae0 Fix some typos in a comment BUAD -> BAUD. 1995-08-05 18:16:50 +00:00
Jordan K. Hubbard
6186bd5dc7 Back this change out. It's just not worth arguing over and any further emails
I get on this topic will go straight to /dev/null.  This is absolutely the
last word on this topic you'll see from me.  Too much time has already been
wasted.
1995-08-03 05:44:46 +00:00
Paul Richards
7ce7bdd607 Change default banner fro 4.4 BSD to FreeBSD.
Reviewed by:
Submitted by:
Obtained from:
1995-08-02 12:07:31 +00:00
Andrey A. Chernov
955db62afa Use the same DECODE_BAUD trick like in new telnetd to obtain
termios speed.
Obtained from: Pre-Lite2 telnet
1995-08-02 11:20:05 +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
Peter Wemm
3f59b9c4ef rexecd was not calling "setlogin()" when it should have. This was causing
getlogin() to return wrong answers (eg: "root").
Reviewed by:	davidg
Obtained from:	James Jegers, for NetBSD, slightly reworked by me.
1995-07-29 15:21:15 +00:00
Bill Paul
017eb962e0 Uncomment 'CFLAGS+=ETC_ETHERS' -- we have support for this as of 2.0.5. 1995-07-25 23:38:40 +00:00
Andrey A. Chernov
9aa70e27a7 Change hardcoded 15 (which means 38400) to B115200 which is 17 1995-07-23 02:30:44 +00:00
Doug Rabson
82aaeb09ad Change ld.so to correctly load dependant libraries for dlopen and unload them
on dlclose.  Also correctly call constructors and destructors for libraries
linked with /usr/lib/c++rt0.o.
Change interpretation of dlopen manpage to call _init() rather than init()
for dlopened objects.
Change c++rt0.o to avoid using atexit to call destructors, allowing dlclose to
call destructors when an object is unloaded.
Change interface between crt0 and ld.so to allow crt0 to call a function on
exit to call destructors for shared libraries explicitly.

These changes are backwards compatible.  Old binaries will work with the new
ld.so and new binaries will work with the old ld.so.  A version number has
been introduced in the crt0-ld.so interface to allow for future changes.

Reviewed by:	GAWollman, Craig Struble <cstruble@singularity.bevc.blacksburg.va.us>
1995-06-27 09:53:27 +00:00
David Greenman
ecf74fe675 The final negotiation of DO_BINARY in the LINEMODE portion of the telnetd code
causes some clients that do not support linemode to mis-interpret the return
key (i.e. double returns).
The fix is to only do the state check for binary options if linemode will
be used.
Closes PR#505.

Submitted by:	Charles Henrich
1995-06-17 05:50:47 +00:00
Rodney W. Grimes
6c06b4e2aa Remove trailing whitespace. 1995-05-30 05:51:47 +00:00
Rodney W. Grimes
4399be3cbd Remove trailing whitespace. 1995-05-30 05:05:38 +00:00
David Greenman
956455631c Make last change a little more robust by checking for failure of getcwd(). 1995-05-22 11:03:55 +00:00
David Greenman
82c76939c1 Set "HOME" so that tilde expands correctly. It previously was always root's
directory /root.
1995-05-22 09:53:02 +00:00
Garrett Wollman
9fc5823a7a Speed up ftpd and make it more efficient:
- set TCP_NOPUSH to keep from sending short packets at each write(2) boundary
- set SO_SNDBUF to 64k so we have a reasonable amount of buffer space
- for a regular file in binary mode which is not being restarted and is
. smaller than 16 Meg, use mmap(2) and write(2) the whole file in one big
  gulp

In the most common circumstances, this should dramatically reduce the
system-call load from ftpd, since the call to write() will not return until
the entire file has been written, rather than writing just a few K at a time
in a loop.
1995-05-03 16:58:12 +00:00
Andrey A. Chernov
d3e6b9f393 Fix bug:
When hostname len > 8, name replaced with dot notation when -u flag
not specified (default case).
Use _PATH_* for utmp/wtmp.
1995-04-26 22:33:15 +00:00
Nate Williams
110aea11f2 Sync. up bits with Paul K. Cascade support plus some cosmetic changes.
Obtained from: NetBSD
1995-04-21 04:57:50 +00:00
Jordan K. Hubbard
bcca63cba4 Extensive updates to this package.
Submitted by:	Gene Stark <gene@starkhome.cs.sunysb.edu>
1995-04-18 01:54:25 +00:00
Gary Palmer
7253b58b7b Fix two more references to /etc/motd that I overlooked. PR #29 1995-04-15 07:05:07 +00:00
Gary Palmer
025362a70b Close PR #29. The file should be /etc/ftpmotd, not /etc/motd. 1995-04-15 07:02:22 +00:00
Andrey A. Chernov
4f7ac4bd57 Add some useful sendmail options 1995-04-12 19:21:43 +00:00
Andrey A. Chernov
c70e5825aa Upgrade.
Close security holes reported.
1995-04-12 02:52:21 +00:00
Gary Palmer
fa877a53cb The servers bootpd & bootpgw live in /usr/libexec not /etc. Correct the
references in the man page.
1995-04-12 00:24:48 +00:00
Andrey A. Chernov
c568fce986 Fix truncating hostname using MAXHOSTNAMELEN
Submitted by: Jan Conard <charly@fachschaften.tu-muenchen.de>
1995-03-24 05:15:09 +00:00
Andrey A. Chernov
e86fff2c4a Fix wtmp logout
Submitted by: Gil Kloepfer Jr. <gil@limbic.ssdl.com>
1995-03-20 05:58:37 +00:00
Nate Williams
8af57ca9dd Removed /usr/local/lib from the standard library search path to be
consistant.  Programs shouldn't rely on non-standard paths for bringing
in default libraries.

Suggested by:	Andreas Schulz <ats@freebsd.first.gmd.de>
1995-03-19 21:20:09 +00:00
Bruce Evans
ac6776236b Restore the 4.4lite version which apparently was clobbered by a repository
copy.  The differences are trivial.  I have no backups of the clobbered
history.
1995-03-18 17:38:43 +00:00
Nate Williams
50dfa3861b Don't rely on the shared library bringing in libmd, do it explicitly.
Change the library order so libcrypt is the last library in the list.
libskey contains references to _crypt and can't resolve it unless
-lcrypt occurs after it in the link command.  This only occurs when
linking statically.
1995-03-18 06:50:00 +00:00
Nate Williams
79f5f586ac Change the library order so libcrypt is the last library in the list.
libskey contains references to _crypt and can't resolve it unless
-lcrypt occurs after it in the link command.  This only occurs when
linking statically.
1995-03-18 06:41:08 +00:00