factotum: replace custom hex parsing code with dec16() avoding timing side channels
libmp: use constant time encode(2) routines instead of lookup tables
ape: make encXchr()/decXchr() functions available
libc: constant time implementation for encode(2) routines, fix base32
wifi: get rid of custom hextob() routine, use dec16(), avoid copies in parsekey()
aux/wpa: get rid of custom Hfmt() routine, just use encodefmt. use %E for mac addresses
libsec: implement SPKI fingerprinting for okCertificate()
libsec: fix mistake: strnchr -> strchr
libsec: avoid unneccesary memory copies and redundant code in x509
libsec: get rid of dummy data[1] in Bytes and Ints types (thanks pr)
usbxhci: add missing pexit() in xhcirecover proc (thanks sam-d)
wifi: revert rate adoption divider, breaks arpunks wifi
devtls, devssl: avoid ~0UL comparsion (from drawterm)
devmnt: use u32int for tagmask, simplify alloctag()
wifi: don't implicitely update lastseen timestamp on nodelookup()
etheriwl, etherwpi: limit transmit queue buffer bloat to 48k (at 22Mbit ≅ 20ms)
wifi: don't assume Wifi.rates[] is sorted, return net data rate for mbps (50% theoretical)
arch(3): document #P/realmodemem file
devvga: removing #v/vgabios, use /dev/realmodemem instead
kernel: convert textmode cga screen contents to kmesg only once
auth(8): auth/debug tests both dp9ik and p9sk1
kernel: remove Ipifc.mbps, unused.
ip/tinc: handle and set ethertype for ipv6
upas/fs: fix precedence bugs, compare digest pointer to nil
ether8169: add Macv45 for RTL8111HN, rename Macv45 -> Macv42 (thanks qeed, sam-d)
nusb/ether: dont forward loopback packets on bridges, remove read nonblocking hack
devether: dont forward loopback packets on bridges
devbridge: disable write blocking on ethernets
bridge(3): clarify manpage, this is a layer2 bridge
pc, pc64: add devbridge to kernel configuration
devbridge: fix mss clamping
ip/tinc: handle single byte noop and end-of-option-list tcp options in clampmss()
wifi: use protocol constants from ip/ip.h and ip/ipv6.h for dmatproxy()
wifi: matt damon wifi bridging support
ether: allow spoofing of source mac address for bridges; used by vmx
vmx(1): fix virtio network bloomfilter
/sys/man/*/*: fix perms (sorry)
fortunes: Subject: [oss-security] nvi denial of service
devether: remove duplicated parseether() implementation (pull from libip)
libflate: force non-empty huffman table in mkzprecode() for deflate
disk/edisk: allow printing and readonly inspection of hybrid MBR/GPT disks (thanks aiju)
realemu: fix precedence bug in argconv() format routine (thanks dan cross)
plan9.ini(8): 9boot(8) is not a DOS program, remove outdated BUGS section
devvga: properly handle physical screen size and panning
screenlock: put position check back in grabmouse (thanks deuteron)
screenlock: have keyboard activity reset blank timeout
screenlock: avoid continuous blanking, draw fullscreen over border
screenlock: some improvements
libauth: replace proto=p9cr with new proto=dp9ik/p9sk1 role=login for auth_userpasswd()
auth/factotum: add role=login protocol variant to dp9ik/p9sk1
auth/login: add missing quotefmtinstall(), quote dom attribute
errstr(2): add /sys/src/libc/9sys/rerrstr.c to SOURCE section
screenlock: blank screen using /dev/mousectl (thanks sl)
libsec: make includes consistent for sha2block*.c
libsec: unroll portable sha1block function
libsec: unroll portable sha2block functions
games/blit: update screen when display address changes (thanks aap)
vmx(1): fix openbsd 6.2 amd64 !entrystate bug
libsec: optimize aesCBCencrypt()/aesCBCdecrypt()
cga: capture cga console contents on boot, make sure cgapos is in range
devvga: re-render text from kmesg after resize
spin: Update to most recent version. (thanks Ori_B)
libsec: write optimized _chachablock() function for amd64 / sse2
libmach: fix format for 8db sse shift ops
6l: fix typo in optab table for APSLLQ (0x7e -> 0x73)
kernel: make isaconfig() consistent, not inplace tokenizing the conf string
inst/mounthjfs: use /dev/swap instead of #c/swap to determine memory size (thanks aap)
6in4: add -m mtu option to specify outer MTU
9pc64: handle special case in fpurestore() for procexec()/procsetup()
audio/flacdec: add eof handler avoiding endless spinning on broken files (thanks deuteron)
pc64: fix mistake fpurestore() mistake
igfx: allocate backing memory for framebuffer and hw cursor when not done by bios (from qu7uux)
libsec: AES-NI support for amd64
pc64: allow using the FPU in syscall and pagefault handlers
pc64: set ts flag before schedinit()
kernel: introduce per process FPU struct (PFPU) for more flexible machine specific fpu handling
/lib/rsc: It only works when we're in the process of preparing a release.
tinc(8): more spelling spam
tinc(8): spelling, thanks jpm
tinc: implement experimental mash peer to peer VPN from http://www.tinc-vpn.org/
aes(2): document aes_xts_encrypt() and aes_xts_decrypt() functions
kernel: pc/pc, fix comment line
swap(3): document permissions and encryption behaviour, reference to memory(8)
devcons: remove obsolete comment
kernel: track more header dependencies in port/portmkfile
kernel: introduce devswap #¶ to serve /dev/swap and handle swapfile encryption
libsec: rewrite aex_xts_encrypt()/aes_xts_decrypt()
cwfs: use /dev/swap instead of #c/swap to determine memory size
libc: improve alignment of QLp structure on amd64, cosmetics