Commit Graph

1410 Commits

Author SHA1 Message Date
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