OpenBSD src changes summary for 2015-08-16 to 2015-08-23 inclusive ==================================================================
Makefile bin/ksh distrib/common distrib/macppc distrib/notes distrib/sets etc/etc.aviion/disktab etc/etc.luna88k/disktab etc/moduli etc/rc etc/rc.d/sendmail games/adventure games/arithmetic games/atc games/backgammon games/battlestar games/gomoku games/hunt games/monop games/sail games/worm gnu/usr.bin/binutils-2.17 gnu/usr.bin/cc lib/csu lib/libc lib/libm lib/libradius lib/libssl lib/libtls lib/libutil lib/libz libexec/ftpd libexec/ld.so regress/lib regress/sys sbin/atactl sbin/dhclient sbin/disklabel sbin/dump sbin/fdisk sbin/fsck_ext2fs sbin/fsck_ffs sbin/fsck_msdos sbin/growfs sbin/iked sbin/init sbin/isakmpd sbin/mountd sbin/newfs sbin/pdisk sbin/scsi sbin/swapctl share/locale share/man sys/arch/amd64/amd64 sys/arch/amd64/include sys/arch/arm/arm sys/arch/i386/conf sys/arch/i386/i386 sys/arch/i386/include sys/arch/mips64/mips64 sys/arch/octeon/conf sys/arch/octeon/octeon sys/arch/powerpc/include sys/arch/socppc/socppc sys/dev sys/dev/acpi sys/dev/ata sys/dev/ic sys/dev/isa sys/dev/pci sys/dev/pckbc sys/dev/usb sys/dev/vesa sys/kern sys/net sys/netinet sys/netinet6 sys/scsi sys/sys sys/uvm usr.bin/at usr.bin/cdio usr.bin/compress usr.bin/ctags usr.bin/cut usr.bin/cvs usr.bin/doas usr.bin/file usr.bin/finger usr.bin/gprof usr.bin/indent usr.bin/last usr.bin/make usr.bin/mklocale usr.bin/netstat usr.bin/newsyslog usr.bin/openssl usr.bin/passwd usr.bin/pr usr.bin/quota usr.bin/rpcgen usr.bin/rs usr.bin/rup usr.bin/rusers usr.bin/showmount usr.bin/skeyinit usr.bin/ssh usr.bin/systat usr.bin/tmux usr.bin/top usr.bin/tset usr.bin/unifdef usr.bin/vacation usr.bin/wall usr.bin/whois usr.sbin/amd usr.sbin/bgpd usr.sbin/crunchgen usr.sbin/dhcpd usr.sbin/edquota usr.sbin/eeprom usr.sbin/hostapd usr.sbin/httpd usr.sbin/identd usr.sbin/ikectl usr.sbin/kgmon usr.sbin/kvm_mkdb usr.sbin/lpr usr.sbin/map-mbone usr.sbin/mrinfo usr.sbin/mrouted usr.sbin/ndp usr.sbin/netgroup_mkdb usr.sbin/npppd usr.sbin/pppd usr.sbin/pwd_mkdb usr.sbin/quot usr.sbin/radiusd usr.sbin/rarpd usr.sbin/rbootd usr.sbin/relayd usr.sbin/repquota usr.sbin/rip6query usr.sbin/route6d usr.sbin/rpc.statd usr.sbin/rtadvd usr.sbin/sasyncd usr.sbin/smtpd usr.sbin/snmpd usr.sbin/sysmerge usr.sbin/tcpdump usr.sbin/tftpd usr.sbin/user usr.sbin/ypbind usr.sbin/ztsscale == Makefile ========================================================== 01/14 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/Makefile Makefile > must make obj in etc as well; the etc.*/Makefile stubs depend upon it. > (deraadt@) == bin =============================================================== 02/14 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/bin ksh ~ var.c > Don't re-include headers pulled by "sh.h". (I actually don't like this .h > pulls in system .h pattern) (deraadt@) == distrib =========================================================== 03/14 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/distrib common ~ elfrd_size.c > remove casts which are not needed (deraadt@) macppc ~ iso/Makefile > do not use -p to install the tbxi from the src tree; it creates > results that confuse krw. (deraadt@) notes ~ m4.common > DUID question is gone > ok miod@ deraadt@ (guenther@) sets ~ lists/comp/mi > sync (deraadt@) ~ lists/base/md.alpha ~ lists/base/md.amd64 ~ lists/base/md.armish ~ lists/base/md.armv7 ~ lists/base/md.aviion ~ lists/base/md.hppa ~ lists/base/md.hppa64 ~ lists/base/md.i386 ~ lists/base/md.landisk ~ lists/base/md.loongson ~ lists/base/md.luna88k ~ lists/base/md.macppc ~ lists/base/md.octeon ~ lists/base/md.sgi ~ lists/base/md.socppc ~ lists/base/md.sparc ~ lists/base/md.sparc64 ~ lists/base/md.vax ~ lists/base/md.zaurus ~ lists/comp/mi > sync (deraadt@) ~ lists/base/md.alpha ~ lists/base/md.amd64 ~ lists/base/md.armish ~ lists/base/md.armv7 ~ lists/base/md.aviion ~ lists/base/md.hppa ~ lists/base/md.hppa64 ~ lists/base/md.i386 ~ lists/base/md.landisk ~ lists/base/md.loongson ~ lists/base/md.luna88k ~ lists/base/md.macppc ~ lists/base/md.octeon ~ lists/base/md.sgi ~ lists/base/md.socppc ~ lists/base/md.sparc ~ lists/base/md.sparc64 ~ lists/base/md.vax ~ lists/base/md.zaurus ~ lists/comp/mi > sync (deraadt@) == etc =============================================================== 04/14 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/etc etc.aviion/disktab ~ etc.aviion/disktab > Add a couple of ":"s at the end of lines for consistancy. Not required, > but these are the only two lines in any disktab that do it this way. > ok miod@ (krw@) etc.luna88k/disktab ~ etc.luna88k/disktab > Add a couple of ":"s at the end of lines for consistancy. Not required, > but these are the only two lines in any disktab that do it this way. > ok miod@ (krw@) moduli ~ moduli > Regen moduli (dtucker@) rc ~ rc > Restore previous behaviour for wsconsctl_conf(). > In wsconsctl.conf configuration variables can contain doublequotes > which are removed by the shell if wsconsctl is used interactively. > In scripts, without using eval, these doublequotes are preserved > and the wsconsctl command complains about "illegal character in > input". > Found by and OK jmc@ > With feedback from and OK krw@, halex@ (rpe@) ~ rc > - add usage info > - initialize _ban variable > - style > OK halex@ (rpe@) rc.d/sendmail - rc.d/sendmail > sendmail in ports has it's own rc.d file no need to keep this one > ok jca@ aja@ (jsg@) == games ============================================================= 05/14 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/games adventure ~ io.c > remove malloc/calloc/realloc* casts, due to stdlib.h being present; ok > millert krw (deraadt@) arithmetic ~ arithmetic.c > remove malloc/calloc/realloc* casts, due to stdlib.h being present; ok > millert krw (deraadt@) atc ~ list.c > remove malloc/calloc/realloc* casts, due to stdlib.h being present; ok > millert krw (deraadt@) backgammon ~ backgammon/move.c > remove malloc/calloc/realloc* casts, due to stdlib.h being present; ok > millert krw (deraadt@) battlestar ~ save.c > remove malloc/calloc/realloc* casts, due to stdlib.h being present; ok > millert krw (deraadt@) gomoku ~ pickmove.c > remove malloc/calloc/realloc* casts, due to stdlib.h being present; ok > millert krw (deraadt@) hunt ~ huntd/answer.c ~ huntd/execute.c ~ huntd/expl.c ~ huntd/shots.c > remove malloc/calloc/realloc* casts, due to stdlib.h being present; ok > millert krw (deraadt@) monop ~ cards.c ~ execute.c ~ initdeck.c ~ monop.c ~ prop.c > remove malloc/calloc/realloc* casts, due to stdlib.h being present; ok > millert krw (deraadt@) sail ~ dr_main.c ~ pl_main.c > remove malloc/calloc/realloc* casts, due to stdlib.h being present; ok > millert krw (deraadt@) worm ~ worm.c > KNF (deraadt@) ~ worm.c > remove malloc/calloc/realloc* casts, due to stdlib.h being present; ok > millert krw (deraadt@) == gnu =============================================================== 06/14 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/gnu usr.bin/binutils-2.17 ~ ld/emulparams/elf32ppc_obsd.sh > Enable missing code to fully enable the Secure-PLT ABI and clean up the > remaining commented out variable settings. We'll continue to use the > same layout for both BSS-PLT and Secure-PLT since supporting the more > relro friendly layout that Linux uses isn't compatible with our way of > making the PLT and GOT read-only. (kettenis@) ~ bfd/elf-bfd.h ~ bfd/elf32-i386.c ~ bfd/elf64-x86-64.c ~ bfd/elflink.c ~ bfd/elfxx-ia64.c ~ include/bfdlink.h ~ ld/Makefile.am ~ ld/Makefile.in ~ ld/ld.texinfo ~ ld/ldgram.y ~ ld/ldlang.c ~ ld/ldlang.h ~ ld/ldlex.h ~ ld/ldlex.l ~ ld/ldmain.c ~ ld/lexsup.c > Introduce -Bsymbolic-functions and related flags. Taken from two > post-binutils 2.17 but pre-GPLv3 commits. > miod@ says now is the time to get this in. (bcallah@) usr.bin/cc ~ cc_tools/auto-host.h > Define HAVE_AS_REL16, as binutils 2.17 supports the R_PPC_REL16 reloc. > This makes the -msecure-plt option work, which is necessary to generate > Secure-PLT ABI code. (kettenis@) == lib =============================================================== 07/14 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/lib csu ~ boot.h > Do not include os-note-elf.h here, otherwise we end up with duplicate OS > notes > in our binaries. > ok miod@ (kettenis@) libc ~ asr/getaddrinfo_async.c > Fix test against INADDR_LOOPBACK > ok gilles@ (jca@) ~ gen/getmntinfo.c ~ gen/scandir.c ~ gen/strtofflags.c ~ rpc/auth_none.c ~ rpc/clnt_raw.c ~ rpc/clnt_simple.c ~ rpc/getrpcent.c ~ rpc/pmap_rmt.c ~ rpc/svc.c ~ rpc/svc_raw.c ~ rpc/svc_simple.c ~ rpc/svc_udp.c ~ stdio/asprintf.c ~ stdio/vasprintf.c ~ stdio/vswprintf.c ~ stdlib/ecvt.c ~ stdlib/tsearch.c ~ yp/ypexclude.c > All these files include <stdlib.h>, so do not need to cast > malloc/calloc/realloc* returns. (deraadt@) ~ sys/tame.2 > Whitelist TIOCGPGRP (for tcgetpgrp()) in TAME_IOCTL. > Requested by Sunil Nimmagadda to help tame http. > ok deraadt@ (doug@) ~ Makefile + Symbols.list + arch/alpha/Symbols.list + arch/amd64/Symbols.list + arch/arm/Symbols.list + arch/hppa/Symbols.list + arch/i386/Symbols.list + arch/mips64/Symbols.list + arch/powerpc/Symbols.list + arch/sh/Symbols.list + arch/sparc/Symbols.list + arch/sparc64/Symbols.list > Explicitly list the symbols permitted to be exported by libc. > This is primed with the current list of exported symbols so it doesn't > change the ABI yet, but will prevent unintentional additions in the future > and sets the stage for reductions. > ok deraadt@ kettenis@ (guenther@) ~ sys/tame.2 > Move to tame(int flags, char *paths[]) API/ABI. > The pathlist is a whitelist of dirs and files; anything else returns > ENOENT. > Recommendation is to use a narrowly defined list. Also add TAME_FATTR, > which > permits explicit change operations against "struct stat" fields. Some > other TAME_ flags are refined slightly. > Not cranking libc now, since nothing commited in base uses this and the > timing is uncomfortable for others. Discussed with many; thanks for a > few bug fixes from semarie, doug, guenther. > ok guenther (deraadt@) ~ locale/setrunelocale.c > restore codeset checking: we shouldn't silency fallback to ASCII codeset. > there is a test for "only UTF-8" after, that will return ENOTSUP. So the > caller > will known the wanted codeset isn't supported. > problem spotted by guenther@ > OK stsp@ guenther@ (semarie@) ~ arch/powerpc/gen/setjmp.S > Set up r30 with the _GLOBAL_OFFSET_TABLE_ pointer as required by the > Secure-PLT ABI. (kettenis@) ~ arch/powerpc/sys/brk.S ~ arch/powerpc/sys/sbrk.S > Fetch the _GLOBAL_OFFSET_TABLE_ pointer in a way that's compatible with the > Secure-PLT ABI. (kettenis@) ~ arch/powerpc/SYS.h ~ arch/powerpc/sys/cerror.S ~ arch/powerpc/sys/sigprocmask.S ~ arch/powerpc/sys/tfork_thread.S > Make __cerror() use the per-thread errno location if r2 isn't zero. This > way > libpthread no longer has to override it which means that we can use a local > call and can avoid setting up r30 as a _GLOBAL_OFFSET_TABLE_ pointer, which > is hard the way the powerpc ABI works. > For now we continue to provide __cerror as a weak symbol, but ___cerror is > now protected and internal calls within libc now use ___cerror instead of > __cerror. > discussed with guenther@ (kettenis@) libm ~ src/s_exp2.c > Avoid left-shifting a negative integer, which is undefined. Replace > it with the intended value, in a defined way. From FreeBSD (Dimitry > Andric). > ok miod@ deraadt@ kettenis@ (naddy@) libradius ~ radius.c > Got stdlib.h -> do not need to cast from void * (deraadt@) libssl ~ src/crypto/bn/asm/ia64.S ~ src/crypto/sha/asm/sha512-parisc.pl ~ src/doc/crypto/EVP_BytesToKey.pod ~ src/doc/crypto/PKCS5_PBKDF2_HMAC.pod ~ src/doc/crypto/X509_VERIFY_PARAM_set_flags.pod > typos (miod@) ~ src/ssl/t1_lib.c > Properly handle missing TLS extensions in client hello as a non-failure. > Noticed by @Ligushka from github. > ok miod@, doug@ (bcook@) ~ src/crypto/opensslv.h > bump to 2.3.0 for the next LibreSSL release cycle (bcook@) libtls ~ tls.c > Make tls_read()/tls_write always set outlen to zero on error - this got > broken by r1.4. > Spotted by Marko Kreen. (jsing@) ~ tls_client.c > Store a reference to the libtls context in the SSL client connection app > data (as is already done for server connections). > From Marko Kreen. (jsing@) ~ tls_client.c ~ tls_server.c > SSL_set_app_data is a macro for SSL_set_ex_data(), which is a wrapper > around CRYPTO_set_ex_data(), which can fail. Since this is the case, check > the return value of CRYPTO_set_ex_data^WSSL_set_ex_data^WSSL_set_app_data. > (jsing@) ~ tls_server.c > Unify error message between client and server. (jsing@) libutil ~ login_fbtab.c > remove cast of malloc(), since stdlib.h is included (deraadt@) libz ~ zutil.c > Improve zcalloc(), making it always reallocarray, never calloc(). > millert and myself checked for code which expects zero'd memory, none > found. > Tighten the size == 0, count == 0 checking as well > Discussed with djm, tedu, otto, ok millert (deraadt@) == libexec =========================================================== 08/14 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/libexec ftpd ~ ftpcmd.y > calloc() is prototyped; do not cast result (deraadt@) ld.so ~ resolve.h > Add missing 'extern's to avoid introducing commons into *crt0.o > ok miod@ kettenis@ (guenther@) ~ loader.c > _dl_malloc() proto exists, do not cast result (deraadt@) ~ ldconfig/prebind_path.c > huge amount of spaces (deraadt@) ~ ldd/ldd.c > spaces (deraadt@) ~ powerpc/rtld_machine.c > Add support for the Secure-PLT ABI variant. This will give us better W^X > support on powerpc as it uses a non-executable GOT and PLT. > "start slamming stuff in" deraadt@ (kettenis@) ~ amd64/rtld_machine.c ~ sparc64/rtld_machine.c > Use kbind for lazy binding GOT/PLT updates on amd64 and sparc64; others > to follow. While here add some gcc __predict hints. > Much discussion with and assistance from miod and deraadt > ok deraadt@ (guenther@) ~ Makefile + Symbols.map > Apply a symbol export list to ld.so with just the expected dl*() and the > two symbols needed by gdb. Remember: ld.so exports override those in > shared libs. > ok deraadt@ (guenther@) == regress =========================================================== 09/14 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/regress lib ~ libc/locale/setlocale/setlocale.c > ISO8859-1 support has been removed > ok semarie@ (guenther@) sys ~ net/pf_forward/Makefile ~ net/pf_forward/pf.conf ~ net/pf_fragment/Makefile > Add forwarding tests for pf route-to and reply-to. Keep pf forward > and pf fragment tests in sync. (bluhm@) ~ kern/tame/sigkill/sigkill.c ~ kern/tame/sigabrt/sigabrt.c > convert to new tame(2) ABI/API (semarie@) - kern/tame/sys_exit/Makefile - kern/tame/sys_exit/sys_exit.c > remove tame/sys_exit in favor of more generic approch (soon) (semarie@) == sbin ============================================================== 10/14 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sbin atactl ~ atactl.c > <stdlib.h> is included, so do not need to cast result from > malloc, calloc, realloc* > ok krw millert (deraadt@) dhclient ~ dhcpd.h > Missing prototypes. Noted by deraadt@ (krw@) disklabel ~ disklabel.c > <stdlib.h> is included, so do not need to cast result from > malloc, calloc, realloc* > ok krw millert (deraadt@) dump ~ itime.c ~ main.c ~ optr.c ~ tape.c > <stdlib.h> is included, so do not need to cast result from > malloc, calloc, realloc* > ok krw millert (deraadt@) fdisk ~ mbr.h > Missing prototypes. Noted by deraadt@ (krw@) fsck_ext2fs ~ pass1.c ~ setup.c ~ utilities.c > <stdlib.h> is included, so do not need to cast result from > malloc, calloc, realloc* > ok krw millert (deraadt@) fsck_ffs ~ pass1.c > spacing (deraadt@) fsck_msdos ~ dir.c > <stdlib.h> is included, so do not need to cast result from > malloc, calloc, realloc* > ok krw millert (deraadt@) growfs ~ growfs.c > <stdlib.h> is included, so do not need to cast result from > malloc, calloc, realloc* > ok krw millert (deraadt@) iked ~ crypto.c ~ dh.h ~ iked.h ~ ikev2.c ~ ikev2_pld.c ~ parse.y ~ policy.c ~ types.h > spacing (no binary change, verified with checksums) (reyk@) ~ ocsp.c > Add missing OpenBSD CVS tag - no binary change (reyk@) ~ ca.c ~ chap_ms.c ~ chap_ms.h ~ config.c ~ crypto.c ~ dh.c ~ dh.h ~ eap.c ~ eap.h ~ iked.c ~ iked.h ~ ikev1.c ~ ikev2.c ~ ikev2.h ~ ikev2_msg.c ~ ikev2_pld.c ~ imsg_util.c ~ ocsp.c ~ parse.y ~ pfkey.c ~ policy.c ~ proc.c ~ types.h ~ util.c > Switch iked to C99-style fixed-width integer types. > OK mikeb@ (reyk@) init ~ init.c > <stdlib.h> is included, so do not need to cast result from > malloc, calloc, realloc* > ok krw millert (deraadt@) isakmpd ~ conf.c ~ dnssec.c ~ ike_phase_1.c ~ ike_quick_mode.c ~ ipsec.c ~ isakmpd.c ~ message.c ~ monitor.c ~ nat_traversal.c ~ pf_key_v2.c ~ sa.c ~ timer.c ~ udp_encap.c ~ util.c ~ virtual.c > <stdlib.h> is included, so do not need to cast result from > malloc, calloc, realloc* > ok krw millert (deraadt@) ~ nat_traversal.c > Do not cast a size_t to (unsigned long) to pass it as an argument to > malloc. > Like really, who does??! (deraadt@) mountd ~ mountd.c > <stdlib.h> is included, so do not need to cast result from > malloc, calloc, realloc* > ok krw millert (deraadt@) ~ mountd.c > Two reallocarray() conversions that were missed earlier. > OK deraadt@ (millert@) newfs ~ mkfs.c > <stdlib.h> is included, so do not need to cast result from > malloc, calloc, realloc* > ok krw millert (deraadt@) pdisk ~ dump.c ~ file_media.c ~ hfs_misc.c ~ io.c ~ media.c ~ partition_map.c ~ pdisk.c ~ validate.c > <stdlib.h> is included, so do not need to cast result from > malloc, calloc, realloc* > ok krw millert (deraadt@) ~ dump.c > Two reallocarray() conversions that were missed earlier. > OK deraadt@ (millert@) scsi ~ libscsi.c > <stdlib.h> is included, so do not need to cast result from > malloc, calloc, realloc* > ok krw millert (deraadt@) swapctl ~ swaplist.c > <stdlib.h> is included, so do not need to cast result from > malloc, calloc, realloc* > ok krw millert (deraadt@) == share ============================================================= 11/14 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/share locale + ctype/gen_ctype_utf8.pl > Add a script to generate en_US.UTF-8.src > This does require perl 5.22 which is not yet in base, but it also doesn't > need > to be run except when new unicode versions are released which shouldn't > happen > until after perl is updated. > OK and prodding from stsp@ (afresh1@) ~ ctype/en_US.UTF-8.src > Update en_US.UTF-8.src to Unicode 7.0.0 > Built with gen_ctype_utf8.pl > ok stsp@ (afresh1@) man ~ man9/rtrequest1.9 > Convert all calls to rtrequest1() and the following error check > into a common pattern. In the man page clarify the usage of the > returned route. > OK mpi@ mikeb@ jmc@ (bluhm@) ~ man5/port-modules.5 > Fix typo: MODLUA_DEAFULT_VERSION to MODLUA_DEFAULT_VERSION. (bentley@) ~ man4/urtwn.4 > add supported Netgears WNA1000M and WNA1000Mv2 > ok stsp jmc (jung@) == sys =============================================================== 12/14 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys arch/amd64/amd64 ~ hibernate_machdep.c > use vaddr_t for kernel va range calculation instead of paddr_t. No binary > change but using paddr_t here wasn't correct - better to clean it up. > (mlarkin@) arch/amd64/include ~ pmap.h > Remove an unused #include file from i386 and amd64 pmap.h > ok miod@, millert@, deraadt@ (mlarkin@) ~ pmap.h > delete a wrong comment (mlarkin@) arch/arm/arm ~ pmap.c > Fix inconsistent spelling of `inconsistent' (miod@) arch/i386/conf ~ GENERIC ~ files.i386 > remove unused vesafb code, had been commented out and not compiled in for > 7 years (for some parts, 9 years), and was only ever referenced in i386 > anyway. > ok jsg@, matthieu@, armani@ (mlarkin@) arch/i386/i386 ~ mainbus.c > remove unused vesafb code, had been commented out and not compiled in for > 7 years (for some parts, 9 years), and was only ever referenced in i386 > anyway. > ok jsg@, matthieu@, armani@ (mlarkin@) ~ hibernate_machdep.c > use vaddr_t for kernel va range calculation instead of paddr_t. No binary > change but using paddr_t here wasn't correct - better to clean it up. > (mlarkin@) ~ pmap.c ~ pmapae.c > delete some wrong comments (mlarkin@) arch/i386/include ~ pmap.h > Remove an unused #include file from i386 and amd64 pmap.h > ok miod@, millert@, deraadt@ (mlarkin@) ~ pmap.h > delete some wrong comments (mlarkin@) arch/mips64/mips64 ~ trap.c > Prevent mips64 FPU emulation from corrupting the page queues > in MP systems. > ok miod@ (visa@) arch/octeon/conf ~ GENERIC ~ RAMDISK ~ files.octeon > Unbreak Octeon kernel config after r1.25 of files.mips64. > Feedback and ok miod@ (visa@) arch/octeon/octeon ~ locore.S > Halt extra cores on SP kernel, to avoid trashing the system if there > is more than one active CPU. Additionally pick an init core at runtime. > This allows booting the system with a set of CPUs that does not contain > core 0, at least in terms of the early-stage boot code. > ok jasper@ (a while ago) (visa@) ~ machdep.c > Use the IPD Clock Count register as a timecounter, making the clock > tick in Octeon MP land. > ok pirofti@, miod@, uebayasi@ (visa@) arch/powerpc/include ~ exec.h > Add support for the Secure-PLT ABI variant. This will give us better W^X > support on powerpc as it uses a non-executable GOT and PLT. > "start slamming stuff in" deraadt@ (kettenis@) arch/socppc/socppc ~ genassym.cf > catch up to macppc genassym.cf; regarding C mutexes (deraadt@) dev ~ softraid.c > Stop passing around constants for metadata size and location. Just > use the constants where needed. > ok jsing@ (krw@) dev/acpi ~ acpi.c ~ dsdt.c > Respect the access size when reading or writing to pci config space. > This version also makes sure writes are properly aligned, preventing > the panics seen with the previous incarnation of this change. > Fixes battery status passthrough in vmware, brightness keys on my x220 > and who knows what else. > ok mlarkin@, deraadt@ (kettenis@) dev/ata ~ ata.c ~ ata_wdc.c ~ atavar.h ~ wd.c > The 80's called and want their interface back. Remove last fragments of > ST-506 support. Remove redundant 'precomp' variables/fields and rename > remaining few to 'features' to be consistant with the rest of the code. > Consensus that no ST-506 disks (requiring ISA cards, <120MB, usually > rife with bad sectors that can't be worked around) are still running > OpenBSD. (krw@) dev/ic ~ wdc.c ~ wdcevent.h ~ wdcvar.h > The 80's called and want their interface back. Remove last fragments of > ST-506 support. Remove redundant 'precomp' variables/fields and rename > remaining few to 'features' to be consistant with the rest of the code. > Consensus that no ST-506 disks (requiring ISA cards, <120MB, usually > rife with bad sectors that can't be worked around) are still running > OpenBSD. (krw@) dev/isa ~ pckbc_isa.c > Add missing trailing to error message: > pckbc0: unable to establish interrupt for irq 12pckbd0 at pckbc0 (kbd slot) > ok miod@ (stsp@) dev/pci ~ vga_pci.c ~ vga_pcivar.h > remove unused vesafb code, had been commented out and not compiled in for > 7 years (for some parts, 9 years), and was only ever referenced in i386 > anyway. > ok jsg@, matthieu@, armani@ (mlarkin@) ~ azalia.h ~ azalia_codec.c > Enable audio on Thinkpad docks. Help from jsg@ for the *40 / *50 series > docks. > ok jsg@ (mlarkin@) ~ azalia_codec.c > enable beep and CD controls on ALC292 (jsg@) ~ if_em.c ~ if_em.h > Run the part of the interrupt handler that does rx completion without > holding > the kernel lock. > ok mpi@, dlg@ (kettenis@) ~ pucdata.c > Make Atom S1200 UART work; Atanas Vladimirov has one. (deraadt@) dev/pckbc ~ pms.c > fairly trivial sizes for free() (deraadt@) dev/usb ~ usbdevs > Add device ID for Netgear WNA1000Mv2. From Mark Willson via misc@ (stsp@) ~ usbdevs.h ~ usbdevs_data.h > regen (stsp@) ~ if_urtwn.c > Make urtwn(4) attach to Netgear WNA1000Mv2. From Mark Willson. (stsp@) dev/vesa - files.vesa - vbe.h - vesabios.c - vesabiosreg.h - vesabiosvar.h - vesafb.c - vesafbvar.h > remove unused vesafb code, had been commented out and not compiled in for > 7 years (for some parts, 9 years), and was only ever referenced in i386 > anyway. > ok jsg@, matthieu@, armani@ (mlarkin@) kern ~ kern_tame.c > reactivate tame() (deraadt@) ~ subr_pool.c > re-enable *8. > if we're allowed to try and use large pages, we try and fit at least > 8 of the items. this amortises the per page cost of an item a bit. > "be careful" deraadt@ (dlg@) ~ kern_tame.c > Whitelist TIOCGPGRP (for tcgetpgrp()) in TAME_IOCTL. > Requested by Sunil Nimmagadda to help tame http. > ok deraadt@ (doug@) ~ init_sysent.c ~ kern_exit.c ~ kern_fork.c ~ kern_ktrace.c ~ kern_sysctl.c ~ kern_tame.c ~ kern_time.c ~ sys_generic.c ~ syscalls.c ~ syscalls.master ~ uipc_syscalls.c ~ uipc_usrreq.c ~ vfs_lookup.c ~ vfs_syscalls.c > Move to tame(int flags, char *paths[]) API/ABI. > The pathlist is a whitelist of dirs and files; anything else returns > ENOENT. > Recommendation is to use a narrowly defined list. Also add TAME_FATTR, > which > permits explicit change operations against "struct stat" fields. Some > other TAME_ flags are refined slightly. > Not cranking libc now, since nothing commited in base uses this and the > timing is uncomfortable for others. Discussed with many; thanks for a > few bug fixes from semarie, doug, guenther. > ok guenther (deraadt@) ~ kern_tame.c > recompute len when the path is absolute as canonpath could have shrink it > OK deraadt@ (semarie@) ~ kern_tame.c > check correct offset for terminator; with semarie (deraadt@) ~ kern_tame.c > Canonicalize non-rooted paths after cwd prepend. > with semarie (deraadt@) ~ kern_tame.c > Perform maximum one cwd lookup in tame(), also make namei version look the > same. > Idea from semarie (deraadt@) ~ kern_tame.c > fix /tmp handling of unlink(); from Caspar Schutijser (deraadt@) net ~ if.c > avoid a toctou problem in if_input in the bpf handling. > load ifp->if_bpf into a local variable, test that, and pass it to bpf. > this is instead of instead of assuming ifp->if_bpf wont change between > checking it and passing it to bpf. (dlg@) ~ bpf.c ~ bpfdesc.h > make bpf_mtap mpsafe by using SRPs. > this was originally implemented by jmatthew@ last year, and updated > by us both during s2k15. > there are four data structures that need to be looked after. > the first is the bpf interface itself. it is allocated and freed > at the same time as an actual interface, so if you're able to send > or receive packets, you're able to run bpf on an interface too. > dont need to do any work there. > the second are bpf descriptors. these represent userland attaching > to a bpf interface, so you can have many of them on a single bpf > interface. they were arranged in a singly linked list before. now > the head and next pointers are replaced with SRP pointers and > followed by srp_enter. the list updates are serialised by the kernel > lock. > the third are the bpf filters. there is an inbound and outbound > filter on each bpf descriptor, ann a process can replace them at > any time. the pointers from the descriptor to those is also changed > to be accessed via srp_enter. updates are serialised by the kernel > lock. > the fourth thing is the ring that bpf writes to for userland to > read. there's one of these per descriptor. because these are only > updated when a filter matches (which is hopefully a relatively rare > event), we take the kernel lock to serialise the writes to the ring. > all this together means you can run bpf against a packet without > taking the kernel lock unless you actually caught a packet and need > to send it to userland. even better, you can run bpf in parallel, > so if we ever support multiple rings on a single interface, we can > run bpf on each ring on different cpus safely. > ive hit this pretty hard in production at work (yay dhcrelay) on > myx (which does rx outside the biglock). > ok jmatthew@ mpi@ millert@ (dlg@) ~ if.c > dont need the biglock to call bpf now. (dlg@) ~ route.c > Match the free(3) semantic and accept NULL pointers in rtfree(9). > This will simplify upcoming conversions of rt_refcnt-- to rtfree(9). > Such conversions are needed for proper MP refcounting. > ok deraadt@, dlg@ (mpi@) ~ route.c ~ rtsock.c > Convert two rt->rt_refcnt-- into rtfree(9) making sure the route entry > is freed when we no longer need it. > In this case both code paths are executed in process context and thus > serialized by the KERNEL_LOCK. Since we are adding a route entry to > the table in both cases, rtfree(9) will not actually free the entry > because it is still RT_VALID. > ok bluhm@ (mpi@) ~ route.c > Remove unused variable in rt_ifa_add(), prodded by bluhm@ (mpi@) ~ if.c > Check the error value returned by in6_ifattach(). > Prodded by and ok bluhm@ (mpi@) ~ route.c > Remove PF_KEY-specific hacks from rtalloc(9). They are dead since SPD > lookups use the radix API directly. > ok mikeb@ (mpi@) ~ if_bridge.c > Apply the logic used for "protocol" queues to bridge(4). This allows > to defer the work currently done in bridge_input() and requiring the > KERNEL_LOCK to bridgeintr(). > Tested by sthen@ > ok rzalamena@, dlg@, bluhm@ (mpi@) ~ route.c > Use rtfree(9) instead of decrementing rt_refcnt in rt_getifa(). > Note that it is safe to keep a reference to the ifa pointed by a route > entry after freeing the entry iff the ifa is valid. > ok bluhm@ (mpi@) ~ route.c ~ rtsock.c > Convert all calls to rtrequest1() and the following error check > into a common pattern. In the man page clarify the usage of the > returned route. > OK mpi@ mikeb@ jmc@ (bluhm@) ~ pf.c ~ pf_norm.c ~ pfvar.h > PF must keep IPv6 fragment size as chosen by sender also for packets, > which are routed on behalf route-to action. > OK bluhm@ (sashan@) ~ route.c ~ route.h ~ rtable.c ~ rtable.h + art.c + art.h > Import an alternative routing table backend based on Yoichi Hariguchi's > ART implementation. > ART (Allotment Routing Table) is a multibit-trie algorithm invented by > D. Knuth while reviewing Yoichi's SMART [0] (Smart Multi-Array Routing > Table) paper. > This implementation, unlike the one from the KAME project, supports > variable stride lengths which makes it easier to adapt the consumed > memory/speed trade-off. It also let you use a bigger first-level > table, what other algorithms such as POPTRIE [1] need to implement > separately. > Adaptation to the OpenBSD kernel has been done with two different data > structures. ART nodes and route entries are managed separately which > makes the algorithm implementation free of any MULTIPATH logic. > This implementation does not include Path Compression. > [0] http://www.hariguchi.org/art/smart.pdf > [1] http://conferences.sigcomm.org/sigcomm/2015/pdf/papers/p57.pdf > ok dlg@, reyk@ (mpi@) ~ art.c > In an email dated 11 Feb 2015, Yoichi Hariguchi accepted to re-license > his reference ART implementation from a BSD 4-clause to ISC. > Thanks a lot to him! (mpi@) ~ art.c ~ art.h ~ rtable.c > Make ART internals free of 'struct sockaddr'. > Keep route entry/BSD compatibility goos in the rtable layer. The way > addresses and masks (prefix-lengths) are encoded is really tied to the > radix-tree implementation. > Since we decided to no longer support non-contiguous masks, we could get > rid of some extra "sockaddr" allocations and reduce the memory grows > related to the use of a multibit-trie. (mpi@) ~ if.c > bpf+srp is blowing up, so its being backed out. bpf will need the big lock. > (dlg@) ~ bpf.c ~ bpfdesc.h > back out bpf+srp. its blowing up in a bridge setup. > ill debug this out of the tree. (dlg@) netinet ~ if_ether.c > Use __func__ rather than the function name in log(9) calls to remove > some grep output noise. (mpi@) ~ if_ether.c > Make arplookup() return a pointer to a "struct rtentry". > This is needed for proper refcounting of rtentries and reduce differences > with nd6_lookup(). > Tweak and ok bluhm@ (mpi@) ~ if_ether.c > KNF (mpi@) ~ in_pcb.c > Convert all calls to rtrequest1() and the following error check > into a common pattern. In the man page clarify the usage of the > returned route. > OK mpi@ mikeb@ jmc@ (bluhm@) ~ ip_input.c > An interface address without interface pointer could cause an > uvm_fault in in_ouraddr(). Do not use a stale local address from > the routing table. > OK mpi@ (bluhm@) ~ in_pcb.c > Move to tame(int flags, char *paths[]) API/ABI. > The pathlist is a whitelist of dirs and files; anything else returns > ENOENT. > Recommendation is to use a narrowly defined list. Also add TAME_FATTR, > which > permits explicit change operations against "struct stat" fields. Some > other TAME_ flags are refined slightly. > Not cranking libc now, since nothing commited in base uses this and the > timing is uncomfortable for others. Discussed with many; thanks for a > few bug fixes from semarie, doug, guenther. > ok guenther (deraadt@) netinet6 ~ nd6.c > Use __func__ rather than the function name in log(9) calls to remove > some grep output noise. (mpi@) ~ in6_ifattach.c ~ nd6_rtr.c > Remove anoying comment about in6_update_ifa(). (mpi@) ~ in6.c > Check the error value returned by in6_ifattach(). > Prodded by and ok bluhm@ (mpi@) ~ nd6.h ~ nd6_rtr.c > Call rtfree(9) when we no longer need the route entry rather than > decrementing rt_refcnt just after rtrequest1(9). > While here reduce the differences with rt_ifa_add(9). There's still > an ambiguity about rtrequest1(9)'s return value, but bluhm@ will > address that in a different diff. > Discussed with and ok bluhm@ (mpi@) ~ in6.c > Remove some verbose logs in in6_update_ifa() now that errors are > propagated. (mpi@) ~ in6.c ~ nd6.c ~ nd6_rtr.c > Convert all calls to rtrequest1() and the following error check > into a common pattern. In the man page clarify the usage of the > returned route. > OK mpi@ mikeb@ jmc@ (bluhm@) ~ in6_pcb.c > Move to tame(int flags, char *paths[]) API/ABI. > The pathlist is a whitelist of dirs and files; anything else returns > ENOENT. > Recommendation is to use a narrowly defined list. Also add TAME_FATTR, > which > permits explicit change operations against "struct stat" fields. Some > other TAME_ flags are refined slightly. > Not cranking libc now, since nothing commited in base uses this and the > timing is uncomfortable for others. Discussed with many; thanks for a > few bug fixes from semarie, doug, guenther. > ok guenther (deraadt@) ~ nd6.c > Use simple byte pointer arithmetic and memcpy from/to aligned stack > variables to handle the "packed" binary format passed out to userland > when querying the prefix/router list. From NetBSD (Martin Husemann). > ok mpi@ (naddy@) scsi ~ ch.c ~ mpath.c ~ safte.c ~ scsiconf.c ~ ses.c > add some sizes to free. looked over by deraadt (tedu@) sys ~ memrange.h > typos (miod@) ~ proc.h ~ syscall.h ~ syscall_mi.h ~ syscallargs.h ~ tame.h > Move to tame(int flags, char *paths[]) API/ABI. > The pathlist is a whitelist of dirs and files; anything else returns > ENOENT. > Recommendation is to use a narrowly defined list. Also add TAME_FATTR, > which > permits explicit change operations against "struct stat" fields. Some > other TAME_ flags are refined slightly. > Not cranking libc now, since nothing commited in base uses this and the > timing is uncomfortable for others. Discussed with many; thanks for a > few bug fixes from semarie, doug, guenther. > ok guenther (deraadt@) uvm ~ uvm_map.c > Sync page_flagbits with reality. > ok kettenis@ (visa@) ~ uvm_pmemrange.c > Make uvm_pmr_isfree() work correctly when RB_NFIND() returns > an exact match. > ok kettenis@ (visa@) ~ uvm_amap.c ~ uvm_anon.c ~ uvm_anon.h ~ uvm_aobj.c ~ uvm_fault.c ~ uvm_map.c ~ uvm_object.c ~ uvm_page.c ~ uvm_page.h ~ uvm_pdaemon.c ~ uvm_pmemrange.c > Remove the unused loan_count field and the related uvm logic. Most of > the page loaning code is already in the Attic. > ok kettenis@, beck@ (visa@) ~ uvm_swap.c > "XXXMRG: consider making it an inline or macro" > no way. (deraadt@) == usr.bin =========================================================== 13/14 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin at ~ at.c ~ parsetime.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) cdio ~ rip.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) compress ~ gzopen.c ~ nullopen.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) ctags ~ tree.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) ~ ctags.1 ~ ctags.c ~ ctags.h ~ tree.c > system(3) call remove for updating (ctags -u) > done by changing the logic behind updating, by parsing and preloading the > tags > file at startup. > "looks good" deraadt@ (semarie@) ~ ctags.1 > tweak previous; (jmc@) cut ~ cut.c > do not cast malloc() return if stdlib.h is included (deraadt@) cvs ~ entries.c ~ file.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) doas ~ doas.c > Show program name for permission failure messages. > ok espie@, tedu@. (rzalamena@) ~ doas.c > Add cwd context to syslog entry. > input + ok tedu@, ok benno@ (doug@) file ~ sandbox.c > Need to permit kbind in this sandbox too (guenther@) finger ~ finger.c ~ sprint.c ~ util.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) gprof ~ arcs.c ~ elf.c ~ gprof.c ~ printgprof.c ~ printlist.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) indent ~ indent.c ~ indent_globs.h ~ lexi.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) last ~ last.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) make ~ varmodifiers.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) ~ make.c > correctly indent a line to make the intent clear > ok espie@ (jsg@) mklocale ~ yacc.y > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) netstat ~ inet.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) newsyslog ~ newsyslog.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) openssl ~ asn1pars.c ~ ciphers.c ~ openssl.c ~ pkcs8.c ~ progs.h ~ rsa.c ~ sess_id.c ~ spkac.c > bring prototypes into scope, requires movement of a large global object > out of .h file > ok jsing (deraadt@) ~ ca.c ~ certhash.c ~ cms.c ~ crl.c ~ crl2p7.c ~ dgst.c ~ dh.c ~ dhparam.c ~ dsa.c ~ dsaparam.c ~ ec.c ~ ecparam.c ~ enc.c ~ engine.c ~ errstr.c ~ gendh.c ~ gendsa.c ~ genpkey.c ~ genrsa.c ~ nseq.c ~ ocsp.c ~ openssl.c ~ passwd.c ~ pkcs12.c ~ pkcs7.c ~ pkey.c ~ pkeyparam.c ~ pkeyutl.c ~ prime.c ~ progs.h ~ rand.c ~ req.c ~ rsautl.c ~ s_client.c ~ s_server.c ~ s_time.c ~ smime.c ~ speed.c ~ ts.c ~ verify.c ~ version.c ~ x509.c > Remove all duplicate prototypes for *_main functions (these are already > provided by progs.h). Also, move the FUNCTION type (and flags) into > openssl.c since that is the only place of use. Lastly, remove pointless > 'extern' from the prototypes and use char **argv instead of char *argv[] > (the former is used elsewhere). > ok deraadt@ doug@ (jsing@) passwd ~ yp_passwd.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) pr ~ pr.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) quota ~ quota.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) rpcgen ~ rpc_cout.c ~ rpc_main.c ~ rpc_parse.c ~ rpc_scan.c ~ rpc_util.c ~ rpc_util.h > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) rs ~ rs.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) rup ~ rup.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) rusers ~ rusers.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) showmount ~ showmount.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) skeyinit ~ skeyinit.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) ssh ~ mux.c > fix free() of uninitialised pointer reported by Mateusz Kocielski; > ok markus@ (djm@) ~ ssh-keygen.c > fixed unlink([uninitialised memory]) reported by Mateusz Kocielski; > ok markus@ (djm@) ~ sshkey.c > fix double-free() in error path of DSA key generation reported by > Mateusz Kocielski; ok markus@ (djm@) ~ compat.c > Better compat matching for WinSCP, add compat matching for > FuTTY (fork of PuTTY); ok markus@ deraadt@ (djm@) ~ ssh-keygen.1 > In the certificates section, be consistent about using "host_key" > and "user_key" for the respective key types. ok sthen@ deraadt@ (naddy@) ~ dns.c ~ packet.c ~ sftp-server.c ~ sftp.c ~ ssh-pkcs11-helper.c ~ sshconnect.c ~ sshd.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) ~ auth.c > fix inverted logic that broke PermitRootLogin; > reported by Mantas Mikulenas; ok markus@ (djm@) ~ version.h > openssh-7.1 (djm@) ~ monitor.c > Improve size == 0, count == 0 checking in mm_zalloc, which is "array" like. > Discussed with tedu, millert, otto.... and ok djm (deraadt@) ~ moduli-gen/moduli.1536 ~ moduli-gen/moduli.2048 ~ moduli-gen/moduli.3072 ~ moduli-gen/moduli.4096 ~ moduli-gen/moduli.6144 ~ moduli-gen/moduli.7680 ~ moduli-gen/moduli.8192 > Regen moduli (dtucker@) ~ servconf.c > Fix expansion of HostkeyAlgorithms=+... > Reported by Bryan Drewery (djm@) ~ readconf.c > Fix printing (ssh -G ...) of HostKeyAlgorithms=+... > Reported by Bryan Drewery (djm@) ~ kex.c > Improve printing of KEX offers and decisions > The debug output now labels the client and server offers and the > negotiated options. ok markus@ (djm@) systat ~ pftop.c ~ swap.c ~ vmstat.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) tmux ~ cmd-clear-history.c > Come out of copy mode when history is cleared. (nicm@) top ~ machine.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) tset ~ tset.c > Do not need to cast malloc(). stdlib.h is brought in via a local .h file. > ok millert (deraadt@) unifdef ~ unifdef.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) vacation ~ vacation.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) wall ~ wall.c > Do not cast result of malloc/calloc/realloc* if stdlib.h is in scope > ok krw millert (deraadt@) whois ~ whois.c > Fix whois server detection for new TLDs using whois.nic.<domain> where > <domain> has an old TLD as a substring. Specifically, fixes .network > lookups. > While there, simplify a strlcpy+strlcat to snprintf. ok millert@ phessler@ > (sthen@) == usr.sbin ========================================================== 14/14 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.sbin amd ~ amd/nfs_start.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* (deraadt@) bgpd ~ mrt.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) crunchgen ~ crunchide.c ~ elf_hide.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) dhcpd ~ confpars.c ~ dhcp.c ~ dispatch.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) edquota ~ edquota.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) eeprom ~ eehandlers.c ~ ophandlers.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) hostapd ~ parse.y > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) httpd ~ patterns.c > str_match() checked the return value of str_find_aux() incorrectly: it > might return a negative number; the return value of match_error() > which returns (-1). This was technically a bug, and it exists in 5.8, > but there is no impact because the error is correctly catched with the > returned non-NULL error string. > Found by Leandro Pereira (reyk@) ~ parse.y > spacing (reyk@) ~ config.c ~ httpd.c ~ httpd.h ~ log.c ~ logger.c ~ parse.y ~ proc.c ~ server.c ~ server_fcgi.c ~ server_http.c > Change httpd(8) to use C99-style fixed-width integers (uintN_t instead > of u_intN_t) and replace u_int with unsigned int. Mixing both > variants is a bad style and most contributors seem to prefer this > style; it also helps us to get used to it, portability, and > standardization. > Theoretically no binary change, except one in practice: httpd.o has a > different checksum because gcc with -O2 pads/optimizes "struct > privsep" differently when using "unsigned int" instead "u_int" for the > affected members. "u_int" is just a typedef of "unsigned int", -O0 > doesn't build the difference and clang with -O2 doesn't do it either - > it is just another curiosity from gcc-land. > OK semarie@ (reyk@) ~ parse.y > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) ~ server_http.c > The WebDAV MOVE method was not included in the switch statement > handling the HTTP methods in server_http.c which resulted in a 405 > method not allowed error when trying to use it. > Fix by jaminh on github (reyk@) identd ~ identd.c > ignore SIGPIPE so we can handle the write(2) failures. > instead of exiting on an unknown write failure, close the client > connection on EPIPE from write and warn and close the connection > on any other failure. > ok jmatthew@ (dlg@) ~ identd.c > avoid ioctl FIONBIO by passing SOCK_NONBLOCK to the things we get > sockets out of. > for guenther@ (dlg@) ikectl ~ Makefile ~ ikeca.c > Support for overwriting $ENV:: variables in OpenSSL .cnf files from > the environment has been removed in LibreSSL. This was a good step > but it unintentionally broke the "ikectl ca" commands. Rework the > implementation for copying the .cnf files and expanding the $ENV:: > variables ourselves before passing the generated .cnf file to the > "openssl" command. > Reported and tested by Jona Joachim (thanks!) > OK jsg@ (reyk@) ~ ikeca.c ~ ikectl.c ~ parser.c > Use C99 integer types in ikectl(8). > OK jsg@ (reyk@) ~ ikeca.c > fcopy_env() should return void as it aborts on failure. > Pointed out by semarie@ (reyk@) ~ ikeca.c > spacing (reyk@) ~ ikeca.c > ca_hier() und ca_newpass() abort on failure, return void instead of int. > Based on previous observation by semarie@ (reyk@) kgmon ~ kgmon.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) kvm_mkdb ~ nlist.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) lpr ~ common_source/common.c ~ common_source/displayq.c ~ lpd/printjob.c ~ pac/pac.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* (deraadt@) map-mbone ~ mapper.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) mrinfo ~ mrinfo.c > since stdlib.h is in scope, don't cast.... you know the drill. > no sneakiness detected by krw (deraadt@) mrouted ~ callout.c ~ cfparse.y ~ prune.c ~ route.c ~ rsrr.c ~ vif.c > since stdlib.h is in scope, don't cast.... you know the drill. > no sneakiness detected by krw (deraadt@) ndp ~ ndp.c > Use simple byte pointer arithmetic and memcpy from/to aligned stack > variables to handle the "packed" binary format passed out to userland > when querying the prefix/router list. From NetBSD (Martin Husemann). > ok mpi@ (naddy@) netgroup_mkdb ~ netgroup_mkdb.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) npppd ~ common/addr_range.c ~ common/hash.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* (deraadt@) pppd ~ chat/chat.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* (deraadt@) pwd_mkdb ~ pwd_mkdb.c > add missing prototype (deraadt@) quot ~ quot.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) radiusd ~ radiusd_local.h > spaces (deraadt@) rarpd ~ rarpd.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) rbootd ~ bpf.c ~ utils.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) relayd ~ parse.y > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) ~ check_icmp.c ~ check_tcp.c ~ relayd.h > Increase the input side socket buffer size for "check icmp" not to > drop the reply messages when "check icmp" is used with many hosts. > ok reyk benno (yasuoka@) repquota ~ repquota.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) rip6query ~ rip6query.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) route6d ~ route6d.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) rpc.statd ~ procs.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) rtadvd ~ rtadvd.c > Fix inconsistent spelling of `inconsistent' (miod@) ~ if.c ~ rtadvd.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) sasyncd ~ conf.y ~ monitor.c ~ net.c ~ net_ctl.c ~ pfkey.c ~ sasyncd.c ~ timer.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) smtpd ~ util.c > when we switch valid_domainpart() from our own logic to using res_hnok() we > missed the fact that res_hnok() will consider an empty string as valid. > (gilles@) ~ smtpctl.8 > use a less ambiguous example; from larry hynes (jmc@) ~ parse.y > do not cast result from xcalloc(); it is in scope (deraadt@) snmpd ~ smi.c > Use reallocarray() instead of malloc() before strvisx(). > Found by deraadt@ > OK blambert@ (reyk@) sysmerge ~ sysmerge.sh > Remove XXX. (ajacoutot@) tcpdump ~ print-tcp.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) ~ addrtoname.c ~ print-atalk.c ~ print-decnet.c ~ print-ip.c ~ print-ip6.c ~ print-lwres.c ~ privsep.c ~ privsep_pcap.c ~ savestr.c > since stdlib.h is in scope, don't cast.... you know the drill. > no sneakiness detected by krw (deraadt@) tftpd ~ tftpd.c > use SOCK_NONBLOCK when making a socket instead of ioctl FIONBIO. > for guenther@ (dlg@) user ~ defs.h > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) ypbind ~ ypbind.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) ztsscale ~ ztsscale.c > stdlib.h is in scope; do not cast malloc/calloc/realloc* > ok millert krw (deraadt@) =============================================================================== _______________________________________________ owc mailing list [email protected] http://www.squish.net/mailman/listinfo/owc
