Commit Graph

2982 Commits

Author SHA1 Message Date
dholland
a65dc3fc86 Redo these changes properly:
-r1.12 libexec/lfs_cleanerd/Makefile
 -r1.15 sbin/fsck_lfs/Makefile
 -r1.6 sbin/newfs_lfs/Makefile

hi ad@
2013-06-08 21:13:19 +00:00
dholland
c13a12500a Tidy up the LFS userland build hacks.
Don't use -I${NETBSDSRCDIR}/sys; don't include files other than the
exported LFS headers, which are lfs.h, lfs_inode.h, and (for now)
lfs_extern.h.
2013-06-08 02:16:03 +00:00
dholland
5fce92dbf7 Move the dinode (on-disk inode) structures to lfs.h, since they are
and will be obviously required by userland tools that need to read
the on-disk structures.

Also, DINODE{1,2}_SIZE -> LFS_DINODE{1,2}_SIZE.
2013-06-08 02:09:35 +00:00
dholland
a4fc39c06d Cleanups and hacks to make lfs userland stuff build:
- lfs_cksum.c doesn't actually need ulfs_inode.h any more.
   - neither does lfs_itimes.c.
   - add hacks to fsck_lfs to make it compile.
   - add hacks to newfs_lfs to make it compile.
   - fix warning in ulfs_quota.c when quotas are fully disabled
     (as I guess is happening with the rumpity version)

XXX: This commit adds -I${NETBSDSRCDIR}/sys to the Makefiles for
XXX: fsck_lfs, newfs_lfs, and lfs_cleanerd. This needs to be cleaned
XXX: up ASAP; but I consider this less problematic in the short term
XXX: than spewing ulfs_*.h into /usr/include.
2013-06-06 00:54:49 +00:00
dholland
a99a5deeff ufs -> ulfs for lfs_cleanerd 2013-06-06 00:53:35 +00:00
wiz
9488f2b661 - Add the actual binary to `FILES' section;
- bump date.

From Bug Hunting.
2013-05-29 15:02:12 +00:00
skrll
1f32502b56 Remove redundant assignment. Hasn't been needed since 1999. 2013-05-09 15:47:34 +00:00
christos
c188b90222 remove stray debugging 2013-05-09 15:39:10 +00:00
christos
3c085045e3 convert to SIMPLEQ like the rest of the queues. 2013-05-09 15:38:14 +00:00
christos
a3f195d87d Fix refcount of the object we found in our list by name. 2013-05-09 15:37:58 +00:00
skrll
9b98bab04b Fix debug symlink 2013-05-09 11:44:36 +00:00
christos
ea2a3471f1 provide debug symlink. 2013-05-08 15:33:45 +00:00
christos
e269a2149a need xfree() instead of free(). Using free() ends us up in an infinite loop. 2013-05-08 15:25:01 +00:00
christos
558b540714 we don't need the versioning stuff for ldd 2013-05-07 13:01:07 +00:00
christos
5e59dafbb3 don't overwrite COPTS 2013-05-06 22:49:10 +00:00
christos
a3fedff4d1 Fixed handling of DT_SONAME:
- add function to add name aliases for shared libraries loaded
	  XXX[1]: we don't add a name during load time, only when DT_SONAME
	  is present.
	- search already loaded objects in load_by_name for an already
	  loaded object that matches our name and return it.
	- add missing initialization and cleanup for obj->names
	  XXX[2]: should we make them SIMPLEQ?
	- Add XXX in rtld.c about getting the name of an object.

NB: This makes the jdk work again without resorting to a hack of putting
    the build path of libjvm.so into the run path (which is a security
    problem).
XXX: Pullup-6?
2013-05-06 19:59:29 +00:00
skrll
b49eab8ee4 Trailing whitespace 2013-05-06 08:02:20 +00:00
skrll
5aa71ff59a Disalble a debug only where it causes problems. 2013-05-06 07:58:43 +00:00
skrll
144fe47c93 Add some DEBUG code. 2013-05-06 07:54:04 +00:00
matt
d631499dcf Remove dbg for _ctype_ 2013-05-03 18:31:24 +00:00
matt
82d2cffc31 Consistently use LDELFSO_MACHINE_ARCH. 2013-05-03 15:52:31 +00:00
skrll
653c73bf56 Remove trailing whitespace 2013-05-03 10:27:05 +00:00
skrll
558553d0e3 Provide a default LDELFSO_MACHINE_ARCH. hi matt!
atf-run works again - the init/fini stuff didn't get run otherwise.
2013-05-03 09:37:17 +00:00
matt
5d1d1ac212 Print out &_DYNAMIC too. 2013-05-02 21:11:18 +00:00
matt
6b1442b03a Print out PT_DYNAMIC address for objmain.
Print out &_DYNAMIC too.
2013-05-02 21:11:03 +00:00
matt
25c44086c9 Changes for MKCOMPAT for earm. 2013-04-27 06:24:22 +00:00
matt
3498abfd33 Use __printflike and __dead instead of __attributes__ 2013-04-25 14:16:37 +00:00
matt
0504785998 Use phdr as start of phdrs (duh) 2013-04-25 13:45:15 +00:00
matt
f0744dd4e8 Use ph, not phdr, consistently. 2013-04-25 13:26:17 +00:00
matt
e4c78a6811 Use relocbase, not mapbase. 2013-04-25 13:15:26 +00:00
matt
b469c1cb35 Don't assume that PT_PHDR is always first. 2013-04-25 13:14:41 +00:00
skrll
afe1984da4 Adjust exidx_start by relocbase 2013-04-25 12:28:59 +00:00
skrll
d4d42c7f62 Handle PT_ARM_EXIDX when mapping objects. 2013-04-25 09:01:23 +00:00
matt
44eef346cd Only include unwind.h if _RTLD_SOURCE 2013-04-25 06:37:40 +00:00
matt
5417f425b2 Add support for PT_ARM_EXIDX and __gnu_Unwind_Find_exidx for libgcc's support
of the ARM EHABI.
2013-04-24 22:37:20 +00:00
matt
e3feeaa73b Add a ld.elf_so internals version of __gnu_Unwind_Find_exidx for that the
libgcc EHABI can find the exception tables for a supplied PC.
2013-04-24 22:32:29 +00:00
christos
f903624708 split debug info for rtld 2013-04-05 20:16:40 +00:00
lukem
1baf19f383 Convert from __attribute__(foo) to the __foo equiv in <sys/cdefs.h> 2013-03-21 05:53:01 +00:00
lukem
f4ec715007 Update version to 20110904 for the user-visible change I made back then:
Reduce priority of syslog message if getpeername returns ENOTCONN.
   PR bin/18934 by Greg A. Woods (with supplied fix).
2013-03-21 00:17:26 +00:00
mrg
5dc860cdbb fix PR 47629, using a slightly different patch to the one in the PR.
this modifies escape_rfc3986() to escape '%' itself, and to properly
track the buffer size and nul out the final byte, not some random
byte that may actually be unmapped.
2013-03-09 21:36:04 +00:00
ryoon
f29f0747d4 Fix typo, releaases. 2013-03-02 16:45:31 +00:00
martin
b7c828d16f Make sure UUDECODE_FILES is empty if we do not have an old ld.so_aout
(on architectures that never used a.out)
2013-02-05 15:19:18 +00:00
matt
2f0a3a2017 There are other little endian arm machine_arches other than "arm" 2013-02-05 07:22:59 +00:00
christos
f7f3399458 don't free cp before we copy it! 2013-01-24 17:57:29 +00:00
matt
f11367c485 Handle CPUFLAGS being empty 2013-01-23 02:31:54 +00:00
matt
69c1ba57d9 Make sure CFLAGS is not empty. 2013-01-23 02:18:50 +00:00
matt
552187152c If you are using aapcs, you must be using INITFINI 2013-01-22 22:49:09 +00:00
dholland
dcd34a91c5 Stuff UFS_ in front of a few of ufs's symbols to reduce namespace
pollution. Specifically:
   ROOTINO -> UFS_ROOTINO
   WINO -> UFS_WINO
   NXADDR -> UFS_NXADDR
   NDADDR -> UFS_NDADDR
   NIADDR -> UFS_NIADDR
   MAXSYMLINKLEN -> UFS_MAXSYMLINKLEN
   MAXSYMLINKLEN_UFS[12] -> UFS[12]_MAXSYMLINKLEN (for consistency)

Sort out ext2fs's misuse of NDADDR and NIADDR; fortunately, these have
the same values in ext2fs and ffs.

No functional change intended.
2013-01-22 09:39:11 +00:00
dsl
c8b3cc05d4 Fix the other lwp_park() to pass 0 for the 'unpark' lwp. 2012-12-16 23:00:46 +00:00
dsl
1ba527af78 You need to pass 0 (not -1) to lwp_park() if you don't also
want to do an unpark.
Clearly this code path was never tested!
Needs pullup to netbsd-6
2012-12-16 11:15:21 +00:00
pgoyette
866736a181 Minor typo 2012-12-04 22:42:14 +00:00
apb
6e8c6cbb85 Add support for R_386_TLS_TPOFF32. This patch was created by
Nick Hudson for PR 47061.
2012-11-07 07:24:46 +00:00
christos
5d69c93985 Only include the headers we use and remove useless variable. 2012-11-04 21:57:40 +00:00
christos
7dd937fd24 if you are going to use utmpx.h, include it. 2012-11-04 21:35:45 +00:00
christos
92227bd148 remove useless include (sys/stat.h) and add useful one (stdio.h) 2012-11-04 21:14:59 +00:00
christos
bef47ea987 include pwd.h for password stuff 2012-11-04 20:46:46 +00:00
dholland
9d2c006837 Improve the diagnostic messages for invalid/non-ELF files. Proposed a
while back; I forget the context. Has been sitting in one of my trees
awaiting a test run since, apparently, August 2011.
2012-10-13 21:13:07 +00:00
riastradh
6f24a346a4 On failure in _rtld_dlcheck, call _rtld_error, not xwarnx.
Callers need not call _rtld_error themselves now.

Fixes PR lib/41760.  Should add the test case from the PR too.
2012-10-01 03:03:46 +00:00
plunky
faaf3691d2 does not need -I${NETBSDSRCDIR}/sys/dist/ipf here, the files are
installed in /usr/include/netinet
2012-09-15 17:45:35 +00:00
joerg
067600c8cf Revert last, it breaks the tricks xsrc uses. 2012-08-23 21:21:14 +00:00
joerg
8e96262375 Remove SHLIBINSTALLDIR and SHLINKINSTALLLIBDIR. Add rpath entries, if
SHLIBDIR differs from /usr/lib.
2012-08-23 15:45:02 +00:00
matt
e3dfed33b6 Add .init_array/.fini_array support (conditionalized on HAVE_INITFINI_ARRAY). 2012-08-15 03:46:06 +00:00
matt
4389fd1152 Add a comment for EABI. Use "pop" instructions to save one instruction. 2012-08-13 02:53:25 +00:00
matt
e43469a595 Don't abuse DBG, use COPTS instead. 2012-08-04 15:17:16 +00:00
martin
972dd84db2 Try to make dbg() printfs realy ELFSIZE independent 2012-07-25 22:51:04 +00:00
martin
0180ae1c0a Add special handling needed for OLO10 relocations.
First part of fixing PR port-sparc64/46724.
2012-07-22 09:21:03 +00:00
martin
e97494f3ca Remove a debug assert that does not hold for PIE (e.g. phdr = 0x40, but
obj has not been mapped at 0, so obj->phdr is 0x100040).
OK: skrll
2012-07-22 09:16:35 +00:00
mrg
1be9745405 when generating URIs escape various characters as specified in RFC 3986.
this makes, among other things, files/dirs with "?" work with dir indexing.
2012-07-19 09:53:06 +00:00
darrenr
3ec957d580 bin/46703: BSD r-commands use wrong source address for stderr
http://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=46703
Bump libc minor for the addition of rresvport_af_addr()
2012-07-14 15:06:26 +00:00
roy
d56846af22 Don't attempt to parse a termcap/terminfo string ourselves;
always use tputs(3).
2012-06-28 08:55:10 +00:00
wiz
df639c6d0d - Remove redundant argument to (successive) `.Nm' macro;
- copy exact line from root's crontab(5) file (and the user name
  is indeed unneeded, as root's crontab(5) file is not the system's
  one);
- reword the warning: cron(8) _is_ running, by default.

From patch by Bug Hunting.

While here, remove xref to itself.
2012-06-20 09:43:51 +00:00
dholland
94ccf4d58b Make WARNS=5 the default here. 2012-06-19 06:10:09 +00:00
dholland
c5642eeaf7 Pass WARNS=5 2012-06-19 06:06:34 +00:00
roy
258cf0abec Add capfile(5) to describe the termcap format.
Adjust various man pages and other documentation to point to capfile(5)
instead of termcap(5).
Remove getcap(3) as curses hasn't been building it for a long time.
Punt wrterm.c as tset no longer uses it.
2012-04-21 12:27:24 +00:00
joerg
1736013665 Make load_threshold double and restore original value of 0.2.
From NAKAJIMA Yoshihiro.
2012-04-16 10:48:27 +00:00
joerg
53baf6b85e Don't assign non-integral constants to integral variables. 2012-04-12 11:46:14 +00:00
joerg
b25f8d4458 Use the same loop order for freeing as for allocation. Simpler code and
easier to process for analyzers.
2012-04-12 10:30:17 +00:00
joerg
ba562931eb This version of __diagssert13 is dead. 2012-03-16 11:44:54 +00:00
joerg
66dd2755f5 Add __printflike attribution to use vprintf and friends with an argument
as format string.
2012-03-15 02:02:20 +00:00
christos
749108f9b9 Add __diagassert13() so that if libc is compiled with _DIAGNOSTIC, it does
not end up bringing in all of stdio.
XXX: This is temporary.
2012-03-15 00:16:07 +00:00
joerg
62451b58c9 Add BOZO_PRINTFLIKE for functions that pass an argument and va_arg to
a vprintf-like function.
2012-03-14 23:47:19 +00:00
joerg
8ae54e9304 Mark _rtld_debug_state as not to be inlined. Add an explicit instruction
barrier to prevent removal of calls to it.
2012-03-13 21:00:31 +00:00
joerg
f05babd200 Avoid using computed string as format string, just print it as string. 2012-02-29 23:38:46 +00:00
wiz
00872173ab Bump date for previous. Use more markup. 2012-02-20 09:45:22 +00:00
elric
f082d14a0d Check in very basic compressed file support. httpd will now serve
a precompressed .gz file if it exists, the client claims to support
gzip and the request is not ranged.
2012-02-20 09:26:56 +00:00
elric
982f9a199b Use a `certificate chain file'' rather than a `certificate file'' so
that bozohttpd can be used with non-toplevel certs.
2012-02-20 08:40:46 +00:00
joerg
52a4c27e3e Add _dlauxinfo helper function to provide access to the ELF auxilary
vector. This can normally be found via __ps_strings, but libc is
initialised too early when linked dynamically and doesn't have access to
it yet, so provide an alternative mechanism via ld.elf_so.
Bump libc minor.
2012-02-16 23:00:38 +00:00
joerg
410d0f4380 Import the new apropos/whatis.
This code has been developed by Abhinav Upadhyay as part of Google's Summer
of Code 2011. It uses libmandoc to parse man pages and builds a Full
Text Index in a SQLite database. The combination of indexing the full
manual page, filtering out stop words and ranking individual matches
based on the section gives a much improved user experience.

The old makewhatis and friends are kept under MKMAKEMANDB=no for now.
2012-02-07 19:13:24 +00:00
perseant
ccf39d2d9b Shut down the cleaner earlier if the filesystem is unmounted. 2012-02-02 03:47:11 +00:00
dholland
a577f74f5b libquota no longer requires libprop. Also remove some other no-longer-used
.PATH'd-in bits from repquota.
2012-02-01 17:53:01 +00:00
joerg
4c70cdf100 Use __dead 2012-01-10 23:39:11 +00:00
christos
8ec0ca7829 PR/45805: Borodin Oleg: telnet/telnetd with -DAUTHENTICATION -DENCRYPTION
(rfc2941)
- separate MKCRYPTO from USE_KERBEROS
- WARNS=4
2012-01-09 16:36:48 +00:00
dholland
24118eee5e Update rquotad to use the new libquota API. 2012-01-09 15:37:34 +00:00
skrll
1b54bd1886 Implement lazy binding on hppa. rump_server needs it!?!?!
Mostly from OpenBSD.
2012-01-06 10:38:56 +00:00
perseant
72d61f7290 In lfs_cleanerd, check errno earlier, to avoid premature exit when the
real errno was EAGAIN.

When coalescing, check against NULL to avoid seg fault.
2012-01-02 21:35:17 +00:00
christos
1e34420a70 there is a macro for that, use it. 2011-12-23 16:56:54 +00:00
joerg
e86a1635be Align in the stack before calling _rtld in the way the x86_64 ABI
specifies. This is necessary to ensure that init functions are always
called with the correct alignment, e.g. in case they use SSE
instructions.
2011-12-11 22:07:26 +00:00
joerg
934a3ac455 Mark xassert as __dead 2011-12-11 11:05:11 +00:00
skrll
df83e35987 Remove unused file. 2011-12-05 07:36:32 +00:00
skrll
248fe9e5bd Use the tlsoffset from the correct object. 2011-12-04 16:53:08 +00:00
skrll
8737e6c85f Restore backwards compatibility by removing unnecessary addition of
dlvsym to Obj_Entry.

Add some comments.
2011-12-02 09:06:49 +00:00
joerg
5b3faf1c05 Unbreak RTLD_NEXT and co on platforms that don't inline or tail call
do_dlsym.
2011-11-25 21:27:15 +00:00
dholland
51d1d7e7c4 Rename struct ufs_quota_entry -> struct quotaval. 2011-11-25 16:55:05 +00:00
joerg
7878f85385 Replace if() NADA else if() NADA else continue logic with one explicit
block. Split out the MIPS handling to make it explicit and readable.
2011-11-25 14:39:02 +00:00
joerg
6133e96c53 Add TLS support for m68k. 2011-11-22 15:25:28 +00:00
joerg
10dc456d4b Hook up TLS support on ARM. Tested by martin@, kernel support from matt@ 2011-11-18 16:10:02 +00:00
mrg
41f9e94281 merge bozohttpd 20111118 2011-11-18 09:51:31 +00:00
wiz
c54b7cd091 Bump date for previous. 2011-11-17 23:19:30 +00:00
mrg
d0ddf3e7e4 allow the -I option to be useful in non-daemon mode, by letting it force
the returned port number
2011-11-17 22:09:12 +00:00
joerg
cc2f98ece2 FreeBSD bug report 161344: TLS area for the main thread is set up to
early, if e.g. pointers to functions are used as initializers.
2011-11-17 16:20:11 +00:00
christos
4448e43f58 PR/45542: Henning Petersen: Misplaced parenthesis in rshd.c 2011-10-30 16:54:58 +00:00
chs
d7bbed6455 avoid linker warnings with the new binutils by not forcing ld.elf_so
to be soft-float.  the floating-point usage in ld.elf_so is only
because of stdarg functions like printf(), and gcc 4.5 is good
about not actually executing the FP instructions in such functions
unless FP values are passed to them, which ld.elf_so doesn't do.
2011-10-26 15:56:58 +00:00
christos
1f1b5ad097 Don't block SIGTRAP so that on architectures where the debugger needs to
be able to receive sigtrap for breakpoints to work, it can. For example
we are setting breakpoints inside dlopen(), after we've blocked the signal,
so the process keep trapping and looping over the trap instruction without
being able to send the signal. Another way would be to move the
_rtld_debug_state() calls outside the critical section...
2011-10-23 21:06:07 +00:00
plunky
f65a48c2ec max WARNS is 4 2011-10-13 17:23:28 +00:00
mrg
4a9d1308c3 obsolete libgcc_pic and friends. all libgcc's are supposed to be pic
for platforms with shlibs already (and are.)

this obsoletes our hacks for the libgcc specs to use libgcc_pic, and
fixes a couple of other issues reported to me directly.
2011-10-07 09:15:21 +00:00
mrg
1862dafe3f match EXIT() with LEAF_ENTRY() so that sizes are actually constants.
fixes binutils 2.21 build issues reported by he and chuq.
2011-09-30 03:05:43 +00:00
mrg
b7e0bd3662 match END() with a relevant ENTRY*(). gas 2.21 complains about the
non-constant-ness of the symbol otherwise.
2011-09-26 01:52:22 +00:00
chs
b398f9d2e5 gcc 4.5 generates an extra plabel in ld.elf_so,
so expand the array of preallocated ones.
2011-09-25 13:34:54 +00:00
christos
23c075161b add printflike 2011-09-17 14:25:43 +00:00
christos
8017e7237a log to both syslog and stderr. 2011-09-17 01:50:54 +00:00
plunky
2b8aaed8cd NULL does not need a cast, here 2011-09-16 16:13:16 +00:00
lukem
30781daf0c Reduce priority of syslog message if getpeername returns ENOTCONN.
PR bin/18934 by Greg A. Woods (with supplied fix).
2011-09-04 23:16:41 +00:00
plunky
87d4f6076b Apply casts to cases where xdrproc_t is expected but is not
strictly passed, for example because the second argument is
a different kind of pointer.
2011-08-30 17:06:20 +00:00
joerg
9eba1e423c Use __dead 2011-08-29 20:41:06 +00:00
elric
95bd2d4a1e Remove crypto/dist/heimdal and its associated build infrastructure as
it has been replaced by crypto/external/bsd/heimdal.
2011-08-28 16:21:57 +00:00
joerg
0c18f61e04 Use static. Don't manipulate environ directly, just reset it and use
setenv.
2011-08-27 17:46:34 +00:00
joerg
17941b2b14 staticfy. Use __dead. 2011-08-27 15:46:59 +00:00
joerg
c59117b957 ANSIfy. staticfy. Bail out on command line error. Use __dead. 2011-08-27 15:45:52 +00:00
joerg
973abb9784 De-__P. staticfy. Use __dead, __printflike. 2011-08-27 15:40:31 +00:00
joerg
43d0646972 Don't check for __attribute__ being defined, it won't. Check for GCC 3.x
or compatible and define BOZO_PRINTFLIKE / BOZO_DEAD. Fix fallout.
2011-08-27 15:33:59 +00:00
joerg
6839411995 Rename err() to avoid overlap with libc. Mark it dead. 2011-08-27 15:08:58 +00:00
hannken
0456a9b514 Fix typo. 2011-08-21 10:45:33 +00:00
christos
2ead252a82 use const char [] for format. 2011-08-21 09:03:20 +00:00
christos
5353040f23 document non-literal format strings 2011-08-16 10:35:03 +00:00
christos
41592955fd remove gcc-4.5 hack 2011-08-14 11:46:28 +00:00
christos
a96758e4b9 XXX: gcc avoid non-literal strings 2011-08-14 11:38:11 +00:00
christos
c5e4118a6b consistent debugging info for program headers 2011-08-13 22:25:20 +00:00
christos
9813f2c42a printing the pathname of the shared object is much more useful than the
object's address.
2011-08-13 22:24:57 +00:00
christos
89c8b6528a disable debugging that makes us core dump 2011-08-13 22:24:24 +00:00
mbalmer
631d5867a0 According to the Oxford Dictionary of Etymology, a wether is a male sheep
or ram.
2011-08-01 12:28:53 +00:00
joerg
017dd250ef Fix memset usage. 2011-07-01 02:46:24 +00:00
joerg
30dc9201bb Fix memcpy usage. 2011-07-01 02:46:15 +00:00
uwe
d1a523b49d sh3 also needs libgcc_pic for millicode (cf. revision 1.107) 2011-06-27 14:27:56 +00:00
nonaka
c52f9a5df2 PR/45015: ld.elf_so: support ELF symbol versioning
Applied latest patch.
2011-06-25 05:45:10 +00:00
mrg
c111245a78 apply some -Wno-error and/or -fno-strict-aliasing.
all of this should be looked at closer, but some of them are not
very trivial.
2011-06-22 02:49:41 +00:00
mrg
75e42fa7da remove most of the remaining HAVE_GCC tests that are always true in
the modern world.
2011-06-20 07:43:56 +00:00
christos
94e4c3614b Add libgcc_pic for millicode. 2011-06-05 23:08:17 +00:00
joerg
9ad3c16b3a Use -Wl,-Bsymbolic directly for clang 2011-05-30 16:30:01 +00:00
christos
b9972d39ce Don't use division since we are only dealing with powers of 2. 2011-05-25 14:41:46 +00:00
joerg
6c5e962381 Disable use of various X86 extensions since _rtld_bind_start doesn't
save the necessary registers.
2011-05-20 22:22:44 +00:00
joerg
5a156c51e2 Explicitly disable linking against libgcc and friends. 2011-05-20 22:21:32 +00:00
elric
07b0c75a48 We no longer need -I/usr/include/krb5. 2011-04-24 21:42:06 +00:00
elric
5e6c3b7a0c #include <com_err.h> -> #include <krb5/com_err.h>. 2011-04-24 21:18:24 +00:00
jmmv
9ef6767558 List myself as a contributor. 2011-04-24 07:18:59 +00:00
jmmv
94a4f45f78 Remove the "This option..." sentence prefix for all option definitions.
Adjust some sentences so that the new text makes sense.  OK mrg@.
2011-04-24 07:17:02 +00:00
joerg
c5f8d1393d Fix a Freudian slip found by rmind 2011-04-23 16:40:08 +00:00
elric
98fbe74f8c Upgrade Heimdal to 1.5pre1 by switching the build from crypto/dist/heimdal
to crypto/external/bsd/heimdal.  The latter was just imported as the head
of the Heimdal tree as of a few days ago.
2011-04-15 18:05:42 +00:00
matt
f126fa1c9a Add support for TLS relocations.
From Joerg Sonnenberger
2011-04-12 16:40:04 +00:00
matt
14d704c9e9 Add a workaround for older crt0.o that overwrite r2 (tcb pointer).
(save tcb pointer using _lwp_setprivate in ld.elf_so and retrieve the tcb
via _lwp_getprivate in libc and use it to restore the value in r2).
2011-04-07 02:19:28 +00:00
joerg
278d108904 Revert pthread_atfork related change not intended for commit yet. 2011-04-02 16:49:49 +00:00
joerg
241421a0db Unbreak HPPA 2011-04-02 12:30:41 +00:00
mbalmer
17ab36f183 fix typo, bump date 2011-04-02 07:44:15 +00:00
skrll
45f37e968c Enable TLS for alpha - a 2nd class^Wtier system in pookaBSD^WNetBSD
alpha_reloc.c diff from joerg on port-alpha.
2011-03-31 15:30:31 +00:00
nakayama
dbbd50a95f Add missing comma. 2011-03-31 12:47:01 +00:00
mrg
a45221975c add .mp4 as video/mp4. 2011-03-31 01:19:37 +00:00
martin
9f905ee41c Add support for TLS relocations 2011-03-30 09:22:29 +00:00
martin
3a4af49105 Add support for 64 bit TLS relocations. 2011-03-30 08:37:52 +00:00
joerg
8fa6585514 Block signals when using the exclusive lock. 2011-03-29 20:56:35 +00:00
jmmv
83bb438905 Add pid file support: if the new -P option is provided, it specifies the
location of the pid file to create.

OKed by mrg@.
2011-03-29 07:22:31 +00:00
joerg
e49f915c10 Refine locking scheme around init/fini to not hold the exclusive lock.
Use a simple generation count instead and restart looking for work if it
changed (e.g. due to an dlopen call from an init function).
Leave the possible dlclose() race for now.
2011-03-28 00:37:40 +00:00
joerg
7435c9ba49 exit, not enter 2011-03-27 22:20:51 +00:00
joerg
23a805d314 Handle _rtld_exit as full entry point since other threads may still be
running at the time.
2011-03-27 21:58:50 +00:00
joerg
2feaef06e3 Add some debug messages for explicit rtld entry points 2011-03-27 13:15:34 +00:00
joerg
0bc9be2143 Locking around dlclose() 2011-03-27 13:14:42 +00:00
joerg
d5a77cf108 Fix merge error that broke HPPA 2011-03-26 21:40:37 +00:00
joerg
cb1cd7e860 Add basic locking to ld.elf_so. 2011-03-25 18:07:04 +00:00
bouyer
d9210c2405 Add a new libquota library, which contains some blocks to build and/or
parse quota plists; as well as a getfsquota() function to retrieve quotas
for a single id from a single filesystem (whatever filesystem this is:
a local quota-enabled fs or NFS). This is build on functions getufsquota()
(for local filesystems with UFS-like quotas) and getnfsquota();
which are also available to userland programs.
move functions from quota2_subr.c to libquota or libprop as appropriate,
and ajust in-tree quota tools.
move some declarations from kernel headers to either sys/quota.h or
quota/quota.h as appropriate. ufs/ufs/quota.h still installed because
it's needed by other installed ufs headers.
ufs/ufs/quota1.h still installed as a quick&dirty way to get a code
using the old quotactl() to compile (just include ufs/ufs/quota1.h instead of
ufs/ufs/quota.h - old code won't compile without this change and this is
on purpose).
Discussed on tech-kern@ and tech-net@ (long thread, but not much about
libquota itself ...)
2011-03-24 17:05:39 +00:00
skrll
83c1874f74 Another TLS reloc. Thanks to joerg for a hint. 2011-03-17 22:07:52 +00:00
matt
7e7a53defe Add support for the MIPS TLS reloc types in shared libraries. 2011-03-15 07:40:52 +00:00
skrll
be1a58855d More PLABELS are required due to TLS stuff. 2011-03-14 08:49:29 +00:00
skrll
d3aab036e1 Handle some TLS relocs. 2011-03-14 08:21:54 +00:00
skrll
92c298c3a1 First cut at mdtls.c for hppa. 2011-03-14 08:20:15 +00:00
joerg
e7a5551d99 Fill in TLS related fields in dl_iterate_phdr if TLS is supported 2011-03-13 21:08:45 +00:00
joerg
854e6cd69f Add TLS support for AMD64, i386 and SH3.
This material is based upon work partially supported by
The NetBSD Foundation under a contract with Joerg Sonnenberger.
2011-03-12 22:54:36 +00:00
bouyer
72918bae56 Define qfextension here 2011-03-12 12:30:39 +00:00
matt
130f2d3d4c Add TLS support for PowerPC.
If the port has __lwp_gettcb_fast or __lwp_settcb use them instead of
__lwp_getprivate_fast or lwp_setprivate.
2011-03-12 07:43:53 +00:00
joerg
7197db08bd Add some clarifications 2011-03-10 17:38:30 +00:00
joerg
9c18c3d543 Add source reference for _lwp_makecontext and
__HAVE___LWP_GETPRIVATE_FAST. Fix enumeration.
2011-03-10 17:22:17 +00:00
reed
728c26c193 A filename with a colon in it made it appear to be the URI scheme
to various web browsers. So follow RFC 3986 4.2 and prepend ./
to the filename in the generated index hyperlink.

Okayed by mrg.
2011-03-10 14:39:40 +00:00
reed
92d8a7ba74 Fix typo. 2011-03-10 14:37:16 +00:00
joerg
de4cf97515 Fix prototype for __tls_get_addr. Add a generic implementation of it
using __tls_get_addr. Update TLS notes.
2011-03-10 14:27:31 +00:00
skrll
ff1072d23a Whitespace. 2011-03-10 12:53:42 +00:00
joerg
aad599979d Add TLS support infrastructure. For dynamic binaries, ld.elf_so exports
_rtld_tls_allocate and _rtld_tls_free. libpthread uses this functions to
setup the thread private area of all new threads. ld.elf_so is
responsible for setting up the private area for the initial thread.
Similar functions are called from _libc_init for static binaries, using
dl_iterate_phdr to access the ELF Program Header.

Add test cases to exercise the different TLS storage models. Test cases
are compiled and installed on all platforms, but are skipped on
platforms not marked for TLS support.

This material is based upon work partially supported by
The NetBSD Foundation under a contract with Joerg Sonnenberger.

It is inspired by the TLS support in FreeBSD by Doug Rabson and the
clean ups of the DragonFly port of the original FreeBSD modifications.
2011-03-09 23:10:05 +00:00
bouyer
063f96f3c2 merge the bouyer-quota2 branch. This adds a new on-disk format
to store disk quota usage and limits, integrated with ffs
metadata. Usage is checked by fsck_ffs (no more quotacheck)
and is covered by the WAPBL journal. Enabled with kernel
option QUOTA2 (added where QUOTA was enabled in kernel config files),
turned on with tunefs(8) on a per-filesystem
basis. mount_mfs(8) can also turn quotas on.

See http://mail-index.netbsd.org/tech-kern/2011/02/19/msg010025.html
for details.
2011-03-06 17:08:10 +00:00
matt
4fee4fe7b3 Don't rely on >32bit math. 2011-03-04 00:40:48 +00:00
pooka
33ee52c7dc make DEBUG compile without RTLD_DEBUG 2011-02-24 10:58:54 +00:00
matt
483a1c95a2 Fix problem with bss-plt objects which a reloc index, not offset.
(secure-plt uses an offset (index*sizeof(rela), bss-plt uses an index)
secure-plt will now take the offset and divide by 12 for an index.
2011-02-10 02:28:20 +00:00
pooka
eb725c2168 Call daemon() later to make sure there is a listening socket by
the time the foreground process exits.

discussed with mrg.
2011-02-06 19:00:53 +00:00
skrll
3770380428 Unbreak gdb by ensuring _rtld_debug_state is in the dynamic symbol table.
mmm 1 line diffs

mmm not breaking backwards compatibility for anything known/unknown or
public/private.
2011-01-25 12:25:43 +00:00
matt
709c8a2f01 Move powerpc gotptr to the end to preserve binary compatibility. 2011-01-16 15:56:37 +00:00
matt
b094d98191 Warn about DT_TEXTRELs 2011-01-16 02:36:05 +00:00
matt
d31dbd7578 Add secure-plt support for powerpc to ld.elf_so. As part of this, we have to
stop calling into the GOT/_DYNAMIC since they are no longer executable.
2011-01-16 01:22:29 +00:00
christos
bfd4da8575 PR/44390: Paul Koning: make code gcc-4.5.1 friendly. 2011-01-14 23:56:13 +00:00
pooka
09159e5c0a Make sure bozo_auth_check_401() isn't called with a NULL "request".
reviewed by mrg
2011-01-12 19:29:24 +00:00
plunky
f302f6417c the Name for this manpage is "ld.aout_so". Use it. 2011-01-01 16:34:52 +00:00
skrll
f1d73a2c94 Add support for DF_1_BIND_NOW, DF_1_NODELETE and DF_1_NOOPEN marked
objects, and the RTLD_NODELETE and RTLD_NOLOAD flags to dlopen(3).

Mark libpthread as DF_1_NOOPEN and use it to test the functionality.

Somewhat taken from FreeBSD.

Fixes PR 42029.

OK from christos and joerg.
2010-12-24 12:41:42 +00:00
mlelstv
e5275d16e0 Deduce raw device correctly by prepending "r" to basename. 2010-12-23 18:08:41 +00:00
skrll
1f45aab781 Sprinkle some KNF. 2010-12-19 17:26:51 +00:00
skrll
ad7786ec8b Remove unnecessary #ifdef RTLD_DEBUG 2010-12-19 17:17:50 +00:00
wiz
617acddc41 Remove superfluous Pp. 2010-12-17 08:50:26 +00:00
skrll
1ee8ff33ba Remove implementation detail.
Bump date.
2010-12-17 07:04:52 +00:00
joerg
c4120e324e Replace use of errlist with a single concatenated version and an offset
array. This requires less storage and avoids one runtime relocation per
errno value.
2010-12-16 22:52:32 +00:00
joerg
67cc8c0871 Don't use normal environment handling functions from libc, but iterate
once over the array and clean out entries as needed.
2010-12-16 22:47:27 +00:00
skrll
126c589398 s/rdbg/dbg/ in a few places. 2010-12-16 19:59:39 +00:00
skrll
76d5f138f4 Remove incorrect comment. 2010-12-16 19:35:38 +00:00
wiz
fbc697a1ed Note that $ORIGIN kernel support (in kern/kern_exec.c) is currently disabled.
Info from skrll@.
Bump date.
2010-12-16 19:25:41 +00:00
tls
eaa351b215 When invoking a content handler specified via -C, set the REDIRECT_STATUS
CGI variable to "200".  This approximates the Apache behavior which is
required by phpcgi in PHP 5.3 (and by some compilations of older PHP
versions).

I have a revolutionary idea.  Perhaps instead of imposing bizarre
requirements on other programs in the name of "security", the PHP
developers should make their own code compile with oh, I don't know,
maybe -Wuninitialized.  That might have an effect on the security of
systems using PHP rather than on the "security" of such systems...

...excuse me, got to go now, I think my airquotes just wore out.
2010-12-14 13:27:39 +00:00
joerg
67e01e0a99 Build ld.elf_so with -fvisibility=hidden. Exploit this for i386/x86_64
to simplify the assembler code.
2010-12-05 00:56:06 +00:00
joerg
91118529e4 ANSIfy 2010-12-03 23:07:49 +00:00
joerg
239c31f883 Add comment about the unusual stack alignment in .rtld_bind_start. 2010-12-03 22:48:25 +00:00
tron
1fbd900608 Don't use internal libc function __findenv(). 2010-11-14 22:09:16 +00:00
christos
acfd35dad9 PR/44010: YAMAMOTO Takashi: sbrk: grow 0xb3ba2000 failed, error = 12"
(due to setenv changes?)
Provide a mini unsetenv that does not allocate/free memory and does not
bother about locking.
2010-10-29 15:08:17 +00:00
skrll
8b916d603d Add cast so that usr.bin/ldd/elf32 builds. 2010-10-16 17:48:12 +00:00
skrll
e6cdac9c4b Implement dl_iterate_phdr.
Somewhat taken from FreeBSD. Manual page from OpenBSD.
2010-10-16 10:27:06 +00:00
skrll
0a77584d8f Revert previous for now. It's part of a larger commit which will arrive
soon.
2010-10-15 15:08:05 +00:00
skrll
a048346afd Be more tolerant to the location of PT_PHDR in the segment list. 2010-10-15 07:22:44 +00:00
christos
45bdf1678c restore binary compatibility for pre-2.0 binaries, requested by skrll and core. 2010-10-10 21:27:16 +00:00
skrll
a108583dc7 Oops. Remove trailing whitespace in previous. 2010-09-30 19:45:24 +00:00
skrll
d965c46816 Improve debug output. 2010-09-30 19:43:11 +00:00
skrll
0e07ba7138 Add the magic branch instruction that is used by GCC's
__canonicalize_funcptr_for_compare() function to fixup relocations in
order to do function pointer comparisons.

From OpenBSD.
2010-09-30 19:32:40 +00:00
skrll
06acf46b03 Introduce a new type Elf_Symindx for use in decoding the symbol hash table
section and allow this type to be overridden.

The ELF specification says it should always be uint32_t (Elf_Word), but
alpha decided to be different (not sure why). Define Elf_Symindx to be
uint64_t on alpha.

Alpha no longer uses non-standard definitions of Elf64_Sword and
Elf64_Word.  Remove the ability to override these types.

Fixes ld.elf_so after Herculean effort from me and martin.
2010-09-30 09:11:18 +00:00
matt
af56990d0c Make the GOT1_MASK 64-bit clean. 2010-09-24 15:20:52 +00:00
skrll
8f77c5159b Comment reformat. 2010-09-24 12:00:10 +00:00
skrll
2c56298dd9 Wrap long line. 2010-09-24 11:59:28 +00:00
skrll
09601c884f Whitespace. 2010-09-24 11:57:11 +00:00
skrll
6229c56fea Wrap long lines
Reformat comments.
2010-09-24 11:41:46 +00:00
joerg
11fdf81f84 Avoid casting from d_val to plttype of different signedness.
Just two booleans for the same purpose.
2010-09-23 13:03:35 +00:00
wiz
8d65c98f7a Fix typo. 2010-09-21 07:05:28 +00:00
mrg
df5be5736c merge bozohttpd 20100920 2010-09-20 23:11:38 +00:00
mrg
729c374954 initial import of bozohttpd 20100920. the only change missing in here is:
o  fix dynamic CGI content maps, from rudolf
2010-09-20 23:07:21 +00:00
mrg
44128f48a9 fix an error in the previous. 2010-09-20 22:18:22 +00:00
mrg
109d4102cc fix a serious error in virtual hosting support, noticed by seanb@netbsd,
and disallow ".." as a virtual host name!  also ".".

patch from sean.
2010-09-20 21:58:43 +00:00
skrll
07666b6356 Wrap long line. 2010-09-11 11:11:52 +00:00
mrg
e0a4d05008 fix another compile error if NO_DAEMON_MODE is defined. also from rudolf. 2010-09-09 04:41:49 +00:00
mrg
f3a95c474f fix a compile error if NO_DIRINDEX_SUPPORT is defined. from rudolf. 2010-09-08 00:47:44 +00:00
pooka
0fb1ef7452 Don't exit when running as a lib after FS is unmounted, just return
from the mainloop.
2010-08-16 22:11:55 +00:00
dogcow
172b076ece ...and free() memory malloc()ed by scandir so we don't leak. 2010-08-16 18:32:44 +00:00
dogcow
035f1ce17b readdir -> scandir and requisite changes, so that bozohttpd now sorts
directory listings.
2010-08-16 10:00:56 +00:00
joerg
6972211664 Stricter matching for _rtld_invalid_paths by ensuring separator.
Use mem* functions instead of str* for strings of known size.
2010-08-07 19:47:34 +00:00
joerg
f40b256f09 Reduce header pollution for mdreloc.c. Make Obj_Entry argument of
_rtld_relocate_nonplt_objects non-const in preparation for TLS support.
2010-08-06 16:33:17 +00:00