| Age | Commit message (Collapse) | Author |
|
Not sure if there's any padding here, but it's a pretty big
structure, fairly likely, so let's be rather safe than sorry.
XXX pullup-8
XXX pullup-9
XXX pullup-10
|
|
Unclear if there are any paths to the copyout without initialization,
but let's play it safe to keep the auditing effort low.
XXX pullup-8
XXX pullup-9
XXX pullup-10
|
|
Unclear if this can leak anything but let's be on the safe side.
XXX pullup-8
XXX pullup-9
XXX pullup-10
|
|
|
|
The input is already a struct sockaddr_at pointer.
|
|
|
|
|
|
|
|
These files are not used anymore. Files for compat code are listed in
sys/comapt/common/files.common and sys/modules/compat_xxx/Makefile.
OK'd by riastradh@ and pgoyette@.
|
|
for NetBSD-10
|
|
time_adjtime: sys/timex.h (defined in ntp code)
time_adjusted: sys/timevar.h (defined in non-ntp code)
(Not really sure this is a valuable distinction to maintain; there's
non-ntp code that uses time_adjtime too.)
|
|
|
|
|
|
- Move some definitions from sys/compat/sockio.h to compat/net/if.h.
struct oif_data in sockio.h and if_data50 are the same, so remove oif_data.
Do the same thing to oifdatareq, too.
- u_quad_t -> uint64_t. No functional change.
|
|
|
|
Reported-by: syzbot+ce8391eb74a16e1967ab@syzkaller.appspotmail.com
|
|
|
|
|
|
|
|
|
|
Omit input validation -- it's not a great idea for compatibility with
historical kernels, since they ignored the bits instead of rejecting
them if set. With unsigned arithmetic, we get the same semantics as
was previously assumed (discarding bits that get shifted into the
sign bit or off into oblivion) without the formal undefined
behaviour.
Reported-by: syzbot+e408764cdd8c0c0ff535@syzkaller.appspotmail.com
https://syzkaller.appspot.com/bug?id=8318f0039e68187cd8d27b2c520816fff3f7266a
|
|
sys_ioctl validates the data pointer according to the command's size
and direction. But userland may ioctl commands other than
OSIOCGIFCONF or OOSIOCGIFCONF -- and if userland passes an IOC_VOID
command, the argument is passed through verbatim and may be null.
Reported-by: syzbot+19b1bf83e5481273eafc@syzkaller.appspotmail.com
https://syzkaller.appspot.com/bug?id=f4c91a7dcd31901c80d91af6ed01456faf0a7286
Reported-by: syzbot+442c033feb784d055185@syzkaller.appspotmail.com
https://syzkaller.appspot.com/bug?id=4a3a4b92dbe9695046ff17a5474cef52aed23e0b
Reported-by: syzbot+4c87d0cdf7025741ea7a@syzkaller.appspotmail.com
https://syzkaller.appspot.com/bug?id=3e5f42c998e43ad42da40dec3c7873e6aae187e4
|
|
|
|
|
|
|
|
|
|
Fixes PR#56801
|
|
Let's not go into an infinite loop of stack smashing!
|
|
Not sure advancing a user pointer by one for the purpose of making an
equality test fail later on is actually likely to be a problem, but
let's just pacify the sanitizer.
Reported-by: syzbot+758b18164c5c444f4249@syzkaller.appspotmail.com
|
|
|
|
arp -a works with compat32 now.
Credit to simonb@ for the ndp fix from which this is cribbed.
|
|
another copyright claim line. again. (i did this in 2008 and then
did not update all of my personal templates.)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- define LINUX_LARGEFILE64 to use rlimit instead of orlimit.
|
|
|
|
|
|
be applied to compat/linux32/common/linux_termios.c, and reduce diff.
- remove duplicate fd_putfile(). This will be done after "goto out;".
- catch up from compat/linux/common/linux_termios.c r1.26 TIOCSPTLCK
- catch up from compat/linux/common/linux_termios.c r1.37 (TCOOFF/TCOON) of the TCXONC
- catch up from compat/linux/common/linux_termios.c r1.39 FIOCLEX and FIONCLEX
|
|
on big endian. We use this construct to convert pointers everywhere else.
|
|
different naming conventions from netbsd's machine[] or machine_arch[]
("earmv7", "aarch64", etc.) and cannot be used as is.
Instead, use define LINUX_GO_RT0_SIGNATURE_ARCH{32,64}.
|
|
it is now defined in each arch same as the other *_SIGNATURE definitions.
- add new LINUX32_GO_RT0_SIGNATURE for compat_linux32, and is defined in amd64 and aarch64.
|
|
- Repeating "modload compat_linux && /emul/linux/bin/ls && modunload compat_linux"
will reproduce this problem.
- It cause in exec_sigcode_map(), anon-object for sigcode was created at
first exec, but it remained even after exec_remove.
- Fixed that the anon-object for sigcode is created at exec_add(), and the
anon-object reference is removed at exec_remove().
- sigobject_lock is no longer needed since it is locked by exec_lock.
- The compat_16 module rewrites the e_sigcode entry in emul_netbsd directly and
does not use exec_add()/exec_remove(), so it needs to call
sigcode_alloc()/sigcode_free() on its own.
|
|
|
|
linux32 binaries.
AT_SYSINFO (vsyscall) feature seems to be broken, so leave it commented out.
|
|
`linux32_exec_setup_stack',
and it should be defined in each arch.
declaration of linux32_exec_setup_stack() in linux32/amd64 has been removed because it does not exist.
NFC.
|