NetBSD/tests
martin 8c71c34bb7 Pull up following revision(s) (requested by riastradh in ticket #1886):
distrib/sets/lists/debug/mi			1.409 (patch)
	distrib/sets/lists/tests/mi			1.1280 (patch)
	libexec/ld.elf_so/Makefile			1.145-1.147 (patch)
	libexec/ld.elf_so/hash.c			1.1
	libexec/ld.elf_so/hash.h			1.1
	libexec/ld.elf_so/reloc.c			1.118 (patch)
	libexec/ld.elf_so/rtld.c			1.215 (patch)
	libexec/ld.elf_so/rtld.h			1.145,1.147 (patch)
	libexec/ld.elf_so/symbol.c			1.74-1.76 (patch)
	tests/libexec/ld.elf_so/Makefile		1.21 (patch)
	tests/libexec/ld.elf_so/t_hash.c		1.1

The SysV ABI specifies that the symbol hash function should return only 32
bits of hash. Unfortunately due to an implementation bu and the fact that
the return type is unsigned long which is 64 bits in LP64, this can fail
in some cases: "\xff\x0f\x0f\x0f\x0f\x0f\x12". See:
	https://maskray.me/blog/2023-04-12-elf-hash-function

From Ed Maste @ FreeBSD:
	https://cgit.freebsd.org/src/commit/?id=29e3a06510823edbb91667d21f530d3ec778116d

Need to write Unit Tests for this.

Oops wrong mask.

ld.elf_so: Split SRCS onto multiple lines.
Makes updates easier.
No functional change intended.

ld.elf_so: Sort SRCS.
No functional change intended.

ld.elf_so: Split hash functions into a separate file.
This way we can test them in isolation.
No functional change intended.

ld.elf_so: Add some known-answer tests for hash functions.

Make sure the testing mechanism detects the traditional overflow bug.
2023-08-09 16:16:40 +00:00
..
bin Paranoia: add a new test case testing that $(( )) results get split 2017-06-03 15:15:49 +00:00
crypto Remove MKCRYPTO option. 2017-05-21 15:28:36 +00:00
dev Remove MKCRYPTO option. 2017-05-21 15:28:36 +00:00
fs give it more time. 2017-05-24 15:29:51 +00:00
games
include Pull up following revision(s) (requested by pgoyette in ticket #296): 2017-10-02 13:21:40 +00:00
ipf
kernel Pull up following revision(s) (requested by kamil in ticket #1201): 2019-03-01 18:59:58 +00:00
lib Pull up following revision(s) (requested by riastradh in ticket #1798): 2023-02-22 18:50:41 +00:00
libexec Pull up following revision(s) (requested by riastradh in ticket #1886): 2023-08-09 16:16:40 +00:00
modules
net Pull up following revision(s) (requested by ozaki-r in ticket #1339): 2019-08-19 14:27:16 +00:00
rump Pull up following revision(s) (requested by ozaki-r in ticket #497): 2018-01-16 13:01:10 +00:00
sbin
share
sys
usr.bin Pull up following revision(s) (requested by martin in ticket #726): 2018-04-10 08:06:46 +00:00
usr.sbin
Makefile Remove MKCRYPTO option. 2017-05-21 15:28:36 +00:00
Makefile.inc
README
h_macros.h

README

$NetBSD: README,v 1.4 2012/05/18 15:36:21 jruoho Exp $

When adding new tests, please try to follow the following conventions.

1. For library routines, including system calls, the directory structure of
   the tests should follow the directory structure of the real source tree.
   For instance, interfaces available via the C library should follow:

	src/lib/libc/gen -> src/tests/lib/libc/gen
	src/lib/libc/sys -> src/tests/lib/libc/sys
	...

2. Equivalently, all tests for userland utilities should try to follow their
   location in the source tree. If this can not be satisfied, the tests for
   a utility should be located under the directory to which the utility is
   installed. Thus, a test for env(1) should go to src/tests/usr.bin/env.
   Likewise, a test for tcpdump(8) should be in src/tests/usr.sbin/tcpdump,
   even though the source code for the program is located under src/external.

3. Otherwise use your own discretion.