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
upas/smtpd: don't call syslog() from the note handler, this can deadlock
libc: cleanup atexit and put exits() in its own compilation unit
vt: block when sending input to host (fixes truncated paste)
libsec: make sectorNumber argument for aes_xts routines uvlong
libsec: add AES CFB and AES OFB stream ciphers
aux/wpa: prevent PTK re-installation attack by replaying AP retransmits
ape/libsec: fix the build, bring ape libsec.h in sync with plan9 version
ssh: remove extern declarations for pkcs1padbuf() and asn1encodedigest() (now in libsec.h)
rsa: add auth/rsa2asn1, check write error in auth/rsa2x509 and auth/rsa2pub, document in rsa(8)
libsec: export asn1encodedigest(), asn1encodeRSApub(), asn1toRSApub(), pkcs1padbuf() and pkcs1unpadbuf()
libsec: allow \r\n terminated lines in decodePEM()