Commit Graph

1463 Commits

Author SHA1 Message Date
itojun
da4f6b8247 daemon(3) should be used prior to file descriptor setups. 2002-01-11 05:18:11 +00:00
eeh
0edae4622b Do not attempt to relocate any pltrela entries that are not JMP_SLOT on sparc64. 2002-01-06 03:54:42 +00:00
tv
f8e3b0e1e5 Revert rev. 1.30 (partly). If MKPICINSTALL=no in mk.conf, libc_pic.a will
NOT be installed by the time we build here.

However, allow the link to look in both src/lib/libc and $DESTDIR/usr/lib.
2002-01-04 19:08:04 +00:00
lukem
dc75a614e2 - Allow RTLD_DEFAULT_LIBRARY_PATH to be overridden.
- If ${SHLIBDIR} != ${LIBDIR}, then set RTLD_DEFAULT_LIBRARY_PATH to
  ${SHLIBDIR}:${LIBDIR}
2001-12-28 05:44:22 +00:00
lukem
a5d8d0231c if SHLINKDIR != /usr/libexec, install compat symlink 2001-12-28 05:30:24 +00:00
lukem
efcc9a4c9d * Add user-controlled mk.conf variables
- SHLIBDIR	Location to install shared libraries if ${USE_SHLIBDIR}
			is "yes".  Defaults to "/usr/lib".

	- USE_SHLIBDIR	If "yes", install shared libraries in ${SHLIBDIR}
			instead of ${LIBDIR}.  Defaults to "no".
			Sets ${_LIBSODIR} to the appropriate value.
			This may be set by individual Makefiles as well.

	- SHLINKDIR	Location of shared linker.  Defaults to "/usr/libexec".
			If != "/usr/libexec", change the dynamic-linker
			encoded in shared programs

* Set USE_SHLIBDIR for libraries used by /bin and /sbin:
	libc libcrypt libcrypto libedit libipsec libkvm libm libmi387
	libtermcap libutil libz

* If ${_LIBSODIR} != ${LIBDIR}, add symlinks from ${LIBDIR}/${LIB}.so*
  to ${_LIBSODIR}/${LIB}.so* for compatibility.

* Always install /sbin/init statically (for now)


The net effect of these changes depends on how the variables are set:

  1.)	If nothing is set or changed, there is no change from the
	current behaviour:
		- Static /bin, /sbin, and bits of /usr/*
		- Dynamic rest
		- Shared linker is /usr/libexec/ld*so

  2.)	If the following make variables are set:
		LDSTATIC=
		SHLINKDIR=/lib
		SHLIBDIR=/lib
	Then the behaviour becomes:
		- Dynamic tools
		- .so libraries used by /bin and /sbin are installed to /lib,
		  with symlinks from /usr/lib/lib*so to -> /lib/lib*so
		  where appropriate
		- Shared linker is /lib/ld*so

  3.)	As per 2.), but add the following variable:
		USE_SHLIBDIR=yes
	This forces all .so's to be instaleld in /lib (with compat
	symlinks), not just those tagged by their Makefiles to be.
	Again, compat symlinks are installed
2001-12-28 01:32:37 +00:00
soren
dc53bf3cba Sync getopt() / man page with actual getopt options. 2001-12-20 20:10:33 +00:00
thorpej
b3827960df Grumble. Put compiler options back into CPPFLAGS for now, since
they're needed to build .S files with the correct PIC options.

XXX Really needs cleanup in <bsd.*.mk> to do this properly.
2001-12-20 19:20:02 +00:00
thorpej
8438068b4a Small whitespace fix. 2001-12-20 06:54:25 +00:00
thorpej
7b26e004dc Update README. Still not complete. 2001-12-20 06:49:03 +00:00
thorpej
04eaa333b6 Upon further investigation, do NOT include an addend in RELATIVE
relations (the addend should always be zero, but this is safer).
2001-12-20 02:32:49 +00:00
thorpej
fe822e84da Include the addend in GLOB_DAT relocations (!!). 2001-12-20 02:23:24 +00:00
thorpej
240ebfc364 * Move The Alpha R(RELATIVE) handling into an Alpha-specific code block,
thus isolating the "iffy hueristic" from the rest of the relocation code.
* In the "iffy hueristic", use _GOT_END_, not _DYNAMIC.
* Include the addend in Alpha R(RELATIVE) relocations.
2001-12-16 08:23:25 +00:00
thorpej
7dcc71da1d Don't put compiler options into CPPFLAGS. 2001-12-14 22:21:45 +00:00
thorpej
151a90b5ce ...and the other other missing notice. 2001-12-14 22:11:47 +00:00
thorpej
d63d6c6cea Add other missing copyright notice. 2001-12-14 22:07:23 +00:00
fvdl
02f3677f38 Add missing copyright notice. 2001-12-14 21:33:59 +00:00
thorpej
6d9f5579ab Garbage-collect the OLD_GOT stuff. 2001-12-14 21:25:22 +00:00
thorpej
c7e9af3ef0 binutils-current ld emits DT_TEXTREL into _DYNAMIC on arm-elf. Handle
this.
2001-12-14 21:21:27 +00:00
christos
6b9ab756bd PR/14941: David Querbach: add support for non-standard MS-Windows PPP client. 2001-12-14 15:06:13 +00:00
thorpej
6e94624a62 Add code to peek into the PLT and determine which PLT entry format
is being used.
2001-12-14 00:53:06 +00:00
thorpej
67925dcb0d Supply two lazy binding routines for Alpha: one that works with the
old PLT format, and one that works with the new.

XXX We currently always use _rtld_bind_start_old() in
_rtld_setup_alpha_pltgot().  We need to add code to peek
into one of the PLT entries to see which format it's in
and pick the correct binding routine.
2001-12-13 22:34:51 +00:00
rafal
b8f0be7074 Check in workaround for BFD ABI change on MIPS: the new MIPS BFD generates
relocs for local symbols as section-relative REL32 relocs with values based
at 0, whereas previously BFD generated those relocs with values based at the
start address of the section.

This code adjusts all STT_SECTION REL32 relocs which have values less than
the start of the section by adding in the base address of the section.  This
may limit section sizes to 2GB, but that shouldn't be a problem for now.

XXX: Needs to be followed-up with binutils list to get closure on which
interpretation is correct (the new ABI or the old one), I just haven't
yet had the time to chase that.
2001-12-13 21:41:58 +00:00
thorpej
cbadc6e3d3 Use numeric labels. 2001-12-13 21:34:04 +00:00
thorpej
23abd45cd4 Add RCS ID. 2001-12-13 20:31:31 +00:00
thorpej
bbb7ad0534 * Add a linker script which provides a _GOT_END_ symbol that we can
use to find the end of the GOT, rather than relying on _DYNAMIC
  to immediately follow the GOT.  (A change in current binutils
  moved _DYNAMIC, and thus would have broken our Alpha ld.elf_so).
* Add #ifdef'd out code to deal with the new PLT format.
2001-12-13 20:30:48 +00:00
lukem
839b30885a remove extraneous ": " from message 2001-12-12 08:13:33 +00:00
tv
001067bbd1 Readability cleanups; MKfoo=no -> NOfoo. 2001-12-12 00:51:00 +00:00
lukem
4fece086d7 Fix skey password challenge. Problem reported in [bin/14848] by John F. Woods. 2001-12-06 02:00:06 +00:00
lukem
c31e16f75e Add two new ftpd.conf(5) directives:
- 'denyquick'; deny a connection so tagged by ftpusers(5) after the USER
  command instead of the PASS command. whilst this might provide some
  info leakage of accounts names if you have some `real' or `chroot'
  users enabled and not others, it does prevent accidental entering of
  such passwords if you have all such users denied. This option is
  strongly recommended on anonymous-only servers.
  Functionality requested by Rob Windsor in [bin/12602]
- 'private'; don't display class related information in the output of STAT.
  For paranoid admins.
2001-12-04 13:54:12 +00:00
wiz
165c645fe3 Improve FILES section. 2001-12-01 16:24:24 +00:00
lukem
3a491eda3c - enable case insensitive fnmatch(3)ing for hostname globs in ftpusers(5)
- enable WARNS=2
2001-12-01 10:25:29 +00:00
lukem
efcb9ab778 clarify glob type of hostname glob 2001-12-01 10:16:06 +00:00
thorpej
65709d507f Allow this to be built as a host program. 2001-11-29 23:50:12 +00:00
lukem
5f6482cfc3 - Don't try and use the motd if it's empty.
Problem reported in [bin/14751] by Kimmo Suominen
- Display conffilename() version of limitfile and motd in status output
2001-11-27 23:42:40 +00:00
rafal
24ed46ea21 Fix bug found by Izumi Tsutsui -- if _rtld_find_symdef returned NULL, the
runtime linker would crash.  Restore behavior similar to version 1.3, where
the runtime linker continues on, ignoring the symbol.
2001-11-24 18:07:04 +00:00
tron
04a7d6cb3e Avoid strange error message in case of corrupted manual page files. 2001-11-23 13:18:54 +00:00
wiz
1fd7eeefcd "than" instead of "then". 2001-11-21 19:14:19 +00:00
itojun
a56a8b9674 support non-IPv4 address families (in fact, IPv6). 2001-11-21 10:26:22 +00:00
itojun
b68a35f950 __ss_{len,family} hack is no longer necessary 2001-11-19 03:20:45 +00:00
kleink
d803d11570 Provide a $LOGNAME as well. 2001-11-15 14:23:09 +00:00
thorpej
5648feb374 ANSI'ify. 2001-11-10 17:35:54 +00:00
thorpej
db122da6a9 Const'ify partab[]. 2001-11-10 17:20:52 +00:00
christos
1703d1eee6 Update to the new t_agetstr() API. 2001-11-02 18:27:00 +00:00
skrll
aabfabf3e7 Allow both space and colon as a separator in LD_PRELOAD. Document this and
the fact that space may be retired in the future.

Closes misc/11961

Reviewed by christos
2001-11-02 15:28:36 +00:00
wiz
27bebba05c Sort SEE ALSO, drop some unnecessary .Pp's, whitespace and misc fixes. 2001-11-01 01:10:59 +00:00
skrll
0a9eeb6303 Add a man page for ld.elf_so. 2001-10-31 18:26:23 +00:00
rafal
2576af45bb Fix how underfined weak symbols are treated -- before, ld.so would do nothing
with them, rather than defaulting them to zero.  This caused breakage with
the drawf EH stuff and init/fini code when they weren't used by the caller
(and hence the appropriate handlers were left undefined).  Also fix an un-
initialized variable in symbol.c that only MIPS MD code tripped over.
2001-10-14 23:13:21 +00:00
lukem
6120411e0e set "upload guest on" in incoming example, even though it is the default 2001-10-13 13:50:18 +00:00
christos
d8c9b346a4 Enable verbose debugging messages via tftpd. 2001-10-09 18:46:18 +00:00
christos
a0e25e1408 PR/5631: Rumi Szabolcs: Make talk work without COMPAT43 2001-09-27 14:38:58 +00:00
mycroft
cf4aca11b5 In the `I can't believe it's been broken all this time' department:
_rtld_bind_start must save and restore the condition codes.  Varargs functions
(like, say, printf()) depend on the state of cr1 to determine whether they need
to store floating point registers in the save area.  Without this, the first
call to any particular varargs function will fail if floating point values were
passed.
2001-09-26 04:06:43 +00:00
wiz
4c99916337 va_{start,end} audit:
Make sure that each va_start has one and only one matching va_end,
especially in error cases.
If the va_list is used multiple times, do multiple va_starts/va_ends.
If a function gets va_list as argument, don't let it use va_end (since
it's the callers responsibility).

Improved by comments from enami and christos -- thanks!

Heimdal/krb4/KAME changes already fed back, rest to follow.

Inspired by, but not not based on, OpenBSD.
2001-09-24 13:22:25 +00:00
wiz
f34496a7b0 Use vsnprintf instead of vsprintf.
[XXX: not compiled, since I'm on ELF -- .uue should probably be rebuilt]
2001-09-20 20:55:29 +00:00
lukem
53c91d8f76 a few changes from Mike Heffner <mheffner@vt.edu> in private email:
- totally clear a glob buffer before use, because FreeBSD depends on
  some of the other fields being cleared (other than just gl_offs)
- in strend(), ensure that the source string isn't too large
- remove unnecessarily complicated sizing of proctitle, since snprintf()
  will truncate it anyway
2001-09-19 00:50:52 +00:00
assar
2a2aa85a8d update infrastructure for krb4 1.1 and heimdal 0.4e 2001-09-17 12:34:40 +00:00
wiz
456dff6cb8 Spell 'occurred' with two 'r's. 2001-09-16 16:34:23 +00:00
mycroft
7ff3aa31e8 Reorganize PowerPC cold a little. The return value from _rtld_bind_pltgot()
was ambiguous in the case of a weak symbol that was not defined.  This caused
RTLD_NOW to fail badly with shared libraries linked against the new crtbegin.o.
2001-09-10 06:09:41 +00:00
wiz
0b273592ec -edebug should only be mentioned in the help #ifdef ENCRYPTION, not #ifdef
AUTHENTICATION. Noted (with patch) by Brian Ginsbach.
2001-09-02 18:56:26 +00:00
wiz
00ed7f60d7 Describe -S option, and remove mention of /etc/inittab in FILES section.
Patch by Brian Ginsbach.
2001-09-02 18:33:39 +00:00
wiz
4b8f5ccd37 Fix #ifdef indentation after recent removal of #ifdef NEWINIT-code.
Patch by Brian Ginsbach.
2001-09-02 18:32:35 +00:00
lukem
8262a6ac5a Expand description of shells(5) requirement.
Per PR [misc/13814] from Alexander Sorg.
2001-08-31 00:05:31 +00:00
wiz
9731e34bd0 Remove code #ifdef'd on NEWINIT (never used on NetBSD).
Sync with Cray, patch by Brian Ginsbach in private mail.
2001-08-30 23:25:15 +00:00
wiz
be3b9c2ec5 Cray-only patch (sync with cray). Patch by Brian Ginsbach in private mail. 2001-08-29 00:32:26 +00:00
wiz
13237636e2 Remove description of an option that only applies to UNICOS < 7.0. 2001-08-25 16:50:18 +00:00
wiz
4538e1cec2 Remove lots of #ifdef's for dead Cray hardware and obsolete UNICOS releases;
also some Cray-specific fixes. No change for NetBSD.
From Brian Ginsbach of Cray Inc. in bin/13614 and private mail.
2001-08-24 00:14:03 +00:00
wiz
45130205ff Add extern before terminaltype. (Definition is in global.c via
`#define extern' and `#include <ext.h>'.)
Last part of bin/13667 by Brian Ginsbach.
2001-08-20 13:53:47 +00:00
wiz
3fc7637d44 Rename variable to avoid shadowing. 2001-08-20 11:34:01 +00:00
wiz
53adc1dbf2 Improve whitespace a bit, per bin/13667 by Brian Ginsbach. 2001-08-20 11:19:29 +00:00
wiz
b96d0a9c47 Fix typo, and duplicate ';'. From bin/13667 by Brian Ginsbach. 2001-08-20 11:14:05 +00:00
wiz
7d38311c3e Typo fixes and syslog string improvements, from bin/13667 by Brian Ginsbach. 2001-08-20 11:13:17 +00:00
wiz
8e747ced58 Move #endif so that inclusion of libtelnet/auth.h and
libtelnet/encrypt.h do not depend upon DEFAULT_IM being undefined.
From bin/13667 by Brian Ginsbach.
2001-08-20 11:12:19 +00:00
wiz
c27e877f37 Fix type of last execl argument, inspired by bin/13667. 2001-08-20 11:04:52 +00:00
wiz
c54e018e90 Add some (const char *) casts per bin/13667 by Brian Ginsbach. 2001-08-20 11:01:48 +00:00
eeh
192ea0d41e Correct some comments. 2001-08-14 22:17:48 +00:00
eeh
c9550f39ed Workaround for binutils 2.11 behavior. 2001-08-14 20:17:25 +00:00
eeh
2e3cc27a62 Get rid of some debug code that should no longer be needed. 2001-08-14 20:16:38 +00:00
eeh
f4edff94e1 Pointers are NULL. Characters are '\0'. 2001-08-14 20:13:56 +00:00
wiz
f79a6c5d8c Add missing braces, per bin/13612 by Brian Ginsbach. 2001-08-01 16:41:14 +00:00
wiz
9b9e7174b0 Fix compilation without -DLINEMODE, per bin/13571 from Onno van der Linden. 2001-07-27 22:21:46 +00:00
aymeric
336e1d4aa6 Add hack bits to be able to compile a cross-linker for 8K-pages m68k targets 2001-07-25 12:21:33 +00:00
wiz
a9356936b4 seperate -> separate 2001-07-22 13:33:58 +00:00
itojun
30f2adec05 vsnprintf() can return value longer than the actual string. from assar 2001-07-19 16:00:59 +00:00
itojun
546f0c22a1 try netflush() if buffer is too low. 2001-07-19 07:26:53 +00:00
itojun
eb2e3cb617 bound-check all "*nfrontp++" code. from openbsd/heimdal.
bark if file descriptor goes above FD_SETSIZE.  from openbsd.

XXX needs more checking.
XXX what is tab stop size for this code?  need more consistency...
XXX we should really remove #ifdef CRAY, UNICOS5 and such.
we just cannot read it through.
2001-07-19 04:57:49 +00:00
perseant
0a9ceae750 fix printf format on alpha 2001-07-18 06:24:38 +00:00
perseant
cfe2897c6e Handle segment 0 properly, if its offset is different from other segments
because of the disklabel.

Fix a problem with inode block handling that sometimes caused the wrong
blocks to be read, causing either cleaning failures or panics with v2 file
systems.
2001-07-18 05:46:43 +00:00
matt
ee534ba09d Fix ABS32 ARM reloc case. ELF shared libs on ARM now work! 2001-07-16 05:40:53 +00:00
matt
85d99cf46c Fix binder routine to not use a volatile register. 2001-07-15 23:19:59 +00:00
matt
2285430c7e Bugfix for _rtld_start. Enable common plt processing code for arm 2001-07-15 17:31:02 +00:00
matt
1c2ce68f11 Enable arm if OBJECT_FMT is ELF. Initialize first few GOT entries for ARM. 2001-07-15 03:09:22 +00:00
matt
a61a40997d Initial support for dynamic ELF support on ARM. 2001-07-15 03:08:33 +00:00
matt
00f7d1ea67 Add support for ARM ELF dynamic relocs. 2001-07-15 01:44:10 +00:00
perseant
4e3fced95b Merge the short-lived perseant-lfsv2 branch into the trunk.
Kernels and tools understand both v1 and v2 filesystems; newfs_lfs
generates v2 by default.  Changes for the v2 layout include:

- Segments of non-PO2 size and arbitrary block offset, so these can be
  matched to convenient physical characteristics of the partition (e.g.,
  stripe or track size and offset).

- Address by fragment instead of by disk sector, paving the way for
  non-512-byte-sector devices.  In theory fragments can be as large
  as you like, though in reality they must be smaller than MAXBSIZE in size.

- Use serial number and filesystem identifier to ensure that roll-forward
  doesn't get old data and think it's new.  Roll-forward is enabled for
  v2 filesystems, though not for v1 filesystems by default.

- The inode free list is now a tailq, paving the way for undelete (undelete
  is not yet implemented, but can be without further non-backwards-compatible
  changes to disk structures).

- Inode atime information is kept in the Ifile, instead of on the inode;
  that is, the inode is never written *just* because atime was changed.
  Because of this the inodes remain near the file data on the disk, rather
  than wandering all over as the disk is read repeatedly.  This speeds up
  repeated reads by a small but noticeable amount.

Other changes of note include:

- The ifile written by newfs_lfs can now be of arbitrary length, it is no
  longer restricted to a single indirect block.

- Fixed an old bug where ctime was changed every time a vnode was created.
  I need to look more closely to make sure that the times are only updated
  during write(2) and friends, not after-the-fact during a segment write,
  and certainly not by the cleaner.
2001-07-13 20:30:18 +00:00
lukem
676535c744 use __NetBSD__ instead of BSD4_4 to determine if we should automatically
define HAVE_SETPROCTITLE and HAVE_SOCKADDR_SA_LEN, because certain
operating systems from a vendor which claims to be the biggest unix
vendor as of two months ago #define BSD4_4 and THEN REMOVE BITS OF THE
4.4BSD API!

anyway, this won't affect other systems which use lukemftpd (e.g,
other 4.4BSD derived systems), because autoconf will set HAVE_SETPROCTITLE
as appropriate. the point of this little code fragment is to remove the
need to have -DHAVE_SETPROCTITLE ... in our libexec/ftpd/Makefile

</rant>
2001-07-13 05:37:49 +00:00
lukem
fe60c5801d Alan Barrett informs me that "advertise" (instead of "advertize") is
the norm even in American English.
2001-07-08 07:27:14 +00:00
lukem
afa0abb87f s/tise/tize/ in docco, add "advertize" as synonym for "advertise" 2001-06-26 19:30:44 +00:00
christos
97184638db make sure we remove all the global references refering to a shared object
when we remove it. Similar to the fix I applied a while ago to ld.elf_so
2001-06-21 21:19:25 +00:00
fvdl
b13cc91d31 Get stack layout right. 2001-06-20 17:58:16 +00:00
fvdl
e55b167011 Remove mistaken casts of PLT relocations to 32 bit values. 2001-06-20 17:58:05 +00:00