NetBSD/sys/compat/ibcs2
riastradh d1579b2d70 Rename min/max -> uimin/uimax for better honesty.
These functions are defined on unsigned int.  The generic name
min/max should not silently truncate to 32 bits on 64-bit systems.
This is purely a name change -- no functional change intended.

HOWEVER!  Some subsystems have

	#define min(a, b)	((a) < (b) ? (a) : (b))
	#define max(a, b)	((a) > (b) ? (a) : (b))

even though our standard name for that is MIN/MAX.  Although these
may invite multiple evaluation bugs, these do _not_ cause integer
truncation.

To avoid `fixing' these cases, I first changed the name in libkern,
and then compile-tested every file where min/max occurred in order to
confirm that it failed -- and thus confirm that nothing shadowed
min/max -- before changing it.

I have left a handful of bootloaders that are too annoying to
compile-test, and some dead code:

cobalt ews4800mips hp300 hppa ia64 luna68k vax
acorn32/if_ie.c (not included in any kernels)
macppc/if_gm.c (superseded by gem(4))

It should be easy to fix the fallout once identified -- this way of
doing things fails safe, and the goal here, after all, is to _avoid_
silent integer truncations, not introduce them.

Maybe one day we can reintroduce min/max as type-generic things that
never silently truncate.  But we should avoid doing that for a while,
so that existing code has a chance to be detected by the compiler for
conversion to uimin/uimax without changing the semantics until we can
properly audit it all.  (Who knows, maybe in some cases integer
truncation is actually intended!)
2018-09-03 16:29:22 +00:00
..
Makefile
TODO
files.ibcs2
ibcs2_dirent.h
ibcs2_errno.c
ibcs2_errno.h
ibcs2_exec.c Allow syscall_establish() to install new syscalls when the existing 2018-08-10 21:44:58 +00:00
ibcs2_exec.h
ibcs2_exec_coff.c Make sure we move forward over the buffer. 2017-07-28 15:51:35 +00:00
ibcs2_exec_elf32.c
ibcs2_exec_xout.c
ibcs2_fcntl.c
ibcs2_fcntl.h
ibcs2_grp.h
ibcs2_ioctl.c Zero buffers in ibcs2 ioctl to avoid disclosing stack to userland. 2017-07-28 17:57:48 +00:00
ibcs2_ipc.c
ibcs2_misc.c Rename min/max -> uimin/uimax for better honesty. 2018-09-03 16:29:22 +00:00
ibcs2_mman.h
ibcs2_mod.c
ibcs2_mount.h
ibcs2_pwd.h
ibcs2_signal.c
ibcs2_signal.h
ibcs2_signo.c
ibcs2_socksys.c
ibcs2_socksys.h
ibcs2_stat.c Little happy on the commit trigger. Actually use the out label. 2017-07-29 01:14:00 +00:00
ibcs2_stat.h
ibcs2_statfs.h
ibcs2_stropts.h
ibcs2_syscall.h Regen 2018-08-10 21:47:14 +00:00
ibcs2_syscallargs.h Regen 2018-08-10 21:47:14 +00:00
ibcs2_syscalls.c Regen 2018-08-10 21:47:14 +00:00
ibcs2_sysent.c Regen 2018-08-10 21:47:14 +00:00
ibcs2_sysi86.h
ibcs2_termios.h
ibcs2_time.h
ibcs2_timeb.h
ibcs2_types.h
ibcs2_unistd.h
ibcs2_ustat.h
ibcs2_util.h
ibcs2_utime.h
ibcs2_utsname.h
ibcs2_wait.h
syscalls.conf
syscalls.master