Commit Graph

2984 Commits

Author SHA1 Message Date
mrg
5893f1db8f bump version, note .svg support. 2014-05-17 05:50:46 +00:00
mrg
f434e335cc enable .svg. as prompted by agc@. 2014-05-17 05:50:01 +00:00
martin
b87a9303be The table of masks applied for each relocation type was wrong for some
relocs with 64bit targets, like GLOB_DAT.
Change some instruction patterns used for PLT slots, so -current
objdump -d shows what the comment says.
Fix encoding of %lox() in PLT slots "close" to -1.
Enhance debug output slightly.
2014-04-02 14:11:25 +00:00
matt
a1f21652d9 Make sure r1 is preserved _rtld_bind_start. 2014-03-22 15:13:10 +00:00
matt
e26b436cdb Simplify. If we got called via a calls $n, *pcrel32, instead of constructing
a new stack frame, back up the PC by 7 and return back to the calls so it
will be reinvoked.  (This is by far the most common way it gets invoked).
Otherwise rebuild a new callframe and jump to the routine.
2014-03-21 14:03:30 +00:00
matt
bc069d405c Improve some of the rdbg messages to print the address of the pltgot slot
being modified.
2014-03-21 01:43:33 +00:00
matt
22fbc67ed0 Don't resolve symbols to PLT entries on the VAX. It just causes a lot of
overhead.
2014-03-21 01:40:41 +00:00
joerg
f8bf5bbce0 Save actual start of function, not address of entry mask on the stack. 2014-03-19 21:52:00 +00:00
matt
f71aaf7afb Fix two bugs. (jump past entry mask, fix insv) 2014-03-19 15:34:30 +00:00
matt
db747c73e4 Once we know the bound routine, rebuilt a new callframe that can be unwound
properly.
2014-03-19 02:39:22 +00:00
matt
bf06b1032e Add .cfi ops so that one can unwind through this. 2014-03-18 23:43:38 +00:00
riastradh
6cb10275d0 Merge riastradh-drm2 to HEAD. 2014-03-18 18:20:35 +00:00
joerg
47875e291b Ignore LD_BIND_NOW for setuid binaries, but keep it in the environment
otherwise.
2014-03-18 16:05:34 +00:00
gson
b941da03f1 Delay daemonization until RPC services have been registered.
Fixes one of the race conditions of PR misc/48282.
2014-03-18 11:00:20 +00:00
matt
cdbe3bab4f Change OUTPUT to powerpc:common to make powerpc64 ld happy 2014-03-07 05:57:46 +00:00
matt
9b490ebf92 Make ldd happy 2014-03-07 01:27:14 +00:00
matt
1200e7d3fe More PPC64 changes.
Nothing to do for lazy bindings.
Record DT_PPC64_GLINK and make _rtld_bind return it.
When resolving a JMP_SLOT, copy the source function descriptor into the PLTGOT
2014-03-06 19:19:40 +00:00
matt
15089cc505 Enable building ld.elf_so for powerpc
Produce a link map for ld.elf_so
2014-03-06 09:34:56 +00:00
matt
565a18129d Make ELF64 aware. 2014-03-06 09:34:07 +00:00
matt
fab57a4af5 powerpc64 changes 2014-03-06 07:47:39 +00:00
matt
746070937f Startup file for powerpc64. (too many difference with ppc32 to do
#ifdef dance)
2014-03-06 07:47:19 +00:00
joerg
5c4c6caf71 Make the abs() use check non-fatal for a bogus use in the LFS cleanerd. 2014-03-04 21:06:47 +00:00
joerg
79880c64ab Global variable is never a null pointer. 2014-02-27 18:20:21 +00:00
mrg
7db440fedd - bump man page date
- strip :80 off virtual host names as they're the default
2014-02-09 12:32:32 +00:00
mrg
ca768e99f0 some fixes for virtual hosting support from Rajeev V. Pillai:
- memory leaks in virtual host plugged
- ensure hr_host is only the host/port part when the request
  contains the hostname in the URI not Host: header.


also update the references to the old http/1.1 draft rev 06
to RFC 2616 (fortunately, most sections hadn't moved.)
2014-02-09 01:46:10 +00:00
mrg
ee81b5bfee display the tempdir for exported files as well. 2014-02-02 03:20:57 +00:00
mrg
7f3f4479d2 call gzip directly for distfile export target; it's usually run outside
of the normal build.
2014-02-02 03:20:10 +00:00
mrg
4d12e4bc49 add lua-bozo.c. 2014-02-02 03:14:58 +00:00
mrg
496aca988c update for 2014-02-01. 2014-02-02 03:13:31 +00:00
joerg
15f3733bef Catch up with _lwp_park change. 2014-01-31 22:46:40 +00:00
mrg
95e8de7784 move a variable into the scope of its use, where the assignment
has already validated the pointers used.  fixes a bug reported
in private email from dogcow@.
2014-01-30 02:51:41 +00:00
apb
a452d8c9e2 Pass the -n flag to gzip invocations.
This prevents it from embedding a timestamp in the output.  We pass
"-n" unconditionally, not conditional on MKREPRO, because many other
invocations of gzip already passed the -n flag unconditionally.
2014-01-27 21:37:17 +00:00
apb
36ef98548b Use ${TOOL_GZIP} instead of just gzip in all Makefiles
outside */dist/* subdirectories.

When USE_PIGZGZIP=yes, bsd.own.mk sets TOOL_GZIP=${TOOL_PIGZ},
so there's no need to test USE_PIGZGZIP in these Makefiles.
2014-01-27 08:18:07 +00:00
joerg
cb2eb1a336 Don't align random sections. Simplify by using .pushsection/.popsection. 2014-01-12 19:36:08 +00:00
mrg
8af74a22fc sort the contributor list, and update the defines list to include lua. 2014-01-02 08:47:38 +00:00
mrg
6810043c20 update for 20140102. 2014-01-02 08:30:22 +00:00
mrg
44293cacb5 update version, date and copyright. 2014-01-02 08:22:59 +00:00
mrg
d1b43391bd - update CHANGES with recent changes
- update version to 20140102
- update copyrights
- use getcwd() over getwd()
- fix lean build (don't include lua)
2014-01-02 08:21:38 +00:00
matt
467f6149c3 Don't use GOT relocations. Use PC relative for the GOT and GOTOFF for
_DYNAMIC.  Make thumb friendly.
2013-12-03 00:19:56 +00:00
christos
5fbbc292aa CID 1132773: Fix file descriptor leak 2013-11-27 18:01:33 +00:00
skrll
03ee7fc3bc If dlopen of the dynamic linker is requested, e.g. by rump in
rumpuser_dl_bootstrap, then return &_rtld_objself as the handle and do
not create a duplicate mapping.

The handle is mostly useless as _rtld_objself doesn't appear on
_rtld_objlist.

This fixes a problem on earm platforms where ld.elf_so (currently) has
an init_array section.  Calling this caused binaries to segv.
2013-11-20 07:18:23 +00:00
mbalmer
8bbb1276fe fix bad free 2013-11-19 07:51:56 +00:00
skrll
90c0a95fec Remove hack now it's fixed in 4.8.2 2013-11-16 17:14:06 +00:00
christos
1f8b65e5d5 CID 1107545, 1107546: fix memory leak 2013-11-13 21:46:22 +00:00
christos
04c9845e3b CID 1107546: Fix memory leak 2013-11-13 21:44:29 +00:00
skrll
283152d4ee Apply hack for gcc 4.8 bug on rtld.c. 2013-11-13 11:06:53 +00:00
joerg
5e2fc1bbd3 Only initialise TLS space from the PT_TLS segment, if the size is
positive and the offset has been computed. Fixes PR lib/48324.
2013-10-21 19:14:15 +00:00
christos
193b880fad fix unused variable warnings 2013-10-19 17:19:30 +00:00
skrll
3ea7549453 Add debug code. 2013-10-19 10:14:06 +00:00
mbalmer
0dfc484ad7 fold long line in a readable way; pass nil as query table if reading form data fails 2013-10-17 08:07:54 +00:00
mbalmer
b972118e3e better approach to NUL terminate strings 2013-10-17 07:54:19 +00:00
mbalmer
a6427458c1 plug a memory leak 2013-10-17 07:49:06 +00:00
mbalmer
de3f2be777 zero allocated memory buffers 2013-10-17 07:31:31 +00:00
he
10f296ec2a Also depend on LIBLUA, and add -lm to allow static linking. 2013-10-16 10:04:26 +00:00
wiz
c9283f1155 Sort. More markup. 2013-10-12 22:37:43 +00:00
mbalmer
b65f3decc3 no need to check free() arguments against NULL 2013-10-12 18:46:12 +00:00
mbalmer
6c154a3125 it's Lua, not lua 2013-10-12 17:25:18 +00:00
mbalmer
cb23152c39 add Lua scripting support to bozohttpd, see httpd(8) for details 2013-10-12 17:24:06 +00:00
mbalmer
bee8901ae3 remove trailing whitespace 2013-10-12 07:49:40 +00:00
matt
fa741d8823 Use MACHINE_CPU for m68k. Use similar logic for both tests. 2013-10-09 22:33:41 +00:00
jnemeth
4862012f0e - complete renaming of -w to -c from 1.38
- update usage string to match
- this fixes PR/48234 by Jeff Woodall
2013-10-04 07:51:48 +00:00
martin
abea8b316b The R_SPARC_L44 relocation type is documented to be truncating and
calculated as "(S + A) & 0xfff" - so while it (usually) sets a "imm13" field
in the opcode, only 12 bits of the calculated value can be used.
2013-10-03 10:45:57 +00:00
martin
c60b2e0b87 Missing , in table initializer 2013-09-23 21:00:35 +00:00
matt
25193be039 For earm, emit a MARCH note. 2013-09-10 16:35:10 +00:00
pooka
c99e7cc9a4 allow compile-time overriding of BOZO_WRSZ/MMAPSZ parameters 2013-09-04 22:59:50 +00:00
joerg
a6c6eb019c Some architectures can't create unwind tables without the frame pointer,
so don't use -fomit-frame-pointer on those.
2013-08-12 17:15:46 +00:00
joerg
fabae2a4ad Use __dead. 2013-08-12 13:54:33 +00:00
dholland
6a9155ad5a Don't try to estrdup() NULL; thanks martin@ 2013-08-11 16:36:30 +00:00
martin
00b8abd4f7 Fix another automatic variable that is life both pre- and post the siglongjmp
(which gcc calls "might be clobbered") by marking it volatile: on some
machines, this value might end up in a register loaded before the sigsetjmp,
but not preserved by the siglongjmp later.
Fixes the VAX build.
2013-08-11 09:16:42 +00:00
dholland
27c14eada7 Use siglongjmp to jump out of signal handlers. 2013-08-11 05:48:56 +00:00
dholland
bd3f97bffb Pass WARNS=5. 2013-08-11 05:42:41 +00:00
skrll
ffcdb0b170 Fix DEBUG build. 2013-08-03 13:17:05 +00:00
christos
5a45295fbd fstat returns -1 on error (Maxime Villard)
also while (1) -> for (;;)
2013-07-31 19:50:47 +00:00
wiz
a5684d07dd Use Mt for email addresses. 2013-07-20 21:39:55 +00:00
matt
8b8f566d0a Support MACHINE_ARCH of coldfire 2013-07-18 21:58:13 +00:00
matt
36677b4016 Use new macros from <machine/asm.h> to be more portable 2013-07-18 21:57:42 +00:00
matt
86209a6763 Use ${MACHINE_CPU} for m68k 2013-07-18 21:39:11 +00:00
mrg
1a1e3035f8 add a target to export a bozohttpd distfile. 2013-07-11 08:51:09 +00:00
mrg
dbf68b5f60 merge parts of the release Makefile back in; unused by the netbsd build. 2013-07-11 08:32:39 +00:00
mrg
fd2f6d873b prepare for netbsd to be mastersrc for bozohttpd. 2013-07-11 08:24:47 +00:00
wiz
0b8a06c9e2 netbsd.org -> NetBSD.org and use my @NetBSD.org address as well. 2013-07-11 08:19:56 +00:00
mrg
7ec01116c2 copyright maint. 2013-07-11 07:46:37 +00:00
mrg
a4b84ca096 - update CHANGES with recent changes
- export esacpe_html() and use it in directory indexing
- update manual to include recent contributors
2013-07-11 07:44:19 +00:00
matt
d28e4d0aac Simplify ELFSIZE by using _MIPS_SZPTR 2013-07-10 15:08:38 +00:00
njoly
84e9c4d0dc Fix sendmail section (8 -> 1) in xrefs. 2013-07-09 09:41:30 +00:00
christos
1c129848aa Simplify error handling and make it actually return a useable error code.
(Maxime Villard)
2013-07-04 02:58:20 +00:00
christos
59b4948a7f Check snprintf for -1 (Maxime Villard) 2013-07-03 21:20:45 +00:00
christos
304ddee50c remove unneeded initialization. 2013-07-03 14:16:01 +00:00
christos
9c7eb973a4 check that stat succeeded before testing the guts of struct stat
(Manime Villard)
2013-07-03 14:15:47 +00:00
christos
7807c80061 Prevent buffer overflows; reported by Maxime Villard 2013-06-28 17:20:15 +00:00
christos
b4e74c76f9 fix wrong variable check, remove casts
http://m00nbsd.net/ae123a9bae03f7dde5c6d654412daf5a.html
2013-06-28 15:48:02 +00:00
joerg
9e69720425 Fix violations of the sequence point rule. 2013-06-28 15:04:35 +00:00
martin
8d76df8028 Check for needed authentication even before redirecting. 2013-06-27 13:11:11 +00:00
martin
19574f3ec5 Fix debug output for redirects 2013-06-27 13:00:43 +00:00
martin
f598b53e8a Fix copy&pasto in debug output 2013-06-27 12:20:08 +00:00
martin
2b3a4643bf After handling a request by sending a redirect, do not proceed with the normal
request handling (which would typically add error output after the end
of the redirect message).
2013-06-27 11:02:20 +00:00
martin
407204a79f Redo previous (fixing a memory leak introduced), and while there rework
virtual server support - in daemonized mode mixed virtual and "main"
server usage would alter the virtual hostname depending on order of
requests.
To fix, move the effective virtual hostname into the request structure
and leave the httpd server description static.
2013-06-27 10:01:31 +00:00
christos
b75be32450 skip text that is in the cvs log (joerg) 2013-06-24 20:57:47 +00:00
christos
1b9025205b PR/47958: Robert Kovacic: makewhatis.c not generating entries in whatisdb
for POD generated pages
2013-06-24 12:56:22 +00:00
martin
e575b99fcd Do not keep pointers into a readdir result (which will become invalid
when closing the directory) - strdup() it instead.
Fixes the "bogus redirects" part of PR bin/47925 (atf test case
forthcoming)
2013-06-23 20:32:55 +00:00
christos
855bb66ef7 Prefix most of the cpp macros with lfs_ and LFS_ to avoid conflicts with ffs.
This was done so that boot blocks that want to compile both FFS and LFS in
the same file work.
2013-06-18 18:18:57 +00:00
dholland
346c9baa29 Missed one of the -I${NETBSDSRCDIR}/sys hacks yesterday; remove it now. 2013-06-08 21:15:29 +00:00
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