From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: * X-Spam-Status: No, score=1.3 required=5.0 tests=RDNS_NONE,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.4 Received: (qmail 6042 invoked from network); 13 Apr 2022 18:33:19 -0000 Received: from unknown (HELO 9front.inri.net) (168.235.81.73) by inbox.vuxu.org with ESMTPUTF8; 13 Apr 2022 18:33:19 -0000 Received: from deckard.inri ([107.191.111.177]) by 9front; Wed Apr 13 14:31:54 -0400 2022 Message-ID: Date: Wed, 13 Apr 2022 14:31:49 -0400 From: sl@stanleylieber.com To: 9front@9front.org MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: extension app content-driven database Subject: [9front] 9FRONT "SURVIVAL EVASION AND ESCAPE" RELEASED Reply-To: 9front@9front.org Precedence: bulk 9FRONT "SURVIVAL EVASION AND ESCAPE" RELEASED ============================================= ![front](http://9front.org/img/survivalevasionandescape.front.png) Main changes of this release: - acmed, x509 certificate renewal automation - rc, supporting better error reporting, here documents (big rewrite) - vlan support in devbridge - source address translation nat support in devip - ip/sol, intel amt serial-over-lan console - removal of ssl, cpu and import - fix auth/as, thanks 4chan, th4nks. DOWNLOAD -------- Multiple installation media are provided for PC and Raspberry Pi. For PC, burn an .iso file to CD, or dd it directly to USB media. For Raspberry Pi, dd an .img file directly to sdcard. The pi.img file can be used for Raspberry Pi 1, 2, and 3. The pi3.img file can be used for Raspberry Pi 3 and 4. ; sha1sum -2 256 9front-8963*gz 7104645614dccc60332009bf1524850e87ae31379d44a9634b90a9effff48287 9front-8963.f84cf1e60427675514fb056cc1723e45da01e043.386.iso.gz ee0fda9ba816b81b43e785882bb7cbd19213f06984adeb8bb54d5ea6b2769506 9front-8963.f84cf1e60427675514fb056cc1723e45da01e043.amd64.iso.gz 4b308ecdb6bef642669406e3adf2992b3f21d529dc4114a14ef9c649f7d79aaf 9front-8963.f84cf1e60427675514fb056cc1723e45da01e043.pi.img.gz 475540ecb6fd4ae29ef88c3f7eef0cab6e3a054d219d6938b5ac27f15168f10a 9front-8963.f84cf1e60427675514fb056cc1723e45da01e043.pi3.img.gz MIRRORS ------- GIT REPOSITORY -------------- DASH 1 MANUAL ------------- dash 1 manual: SONGS ----- by sl THANKS ------ igor (fast reaction) KERNEL AND DRIVERS ------------------ 9boot: fix isowalk() for directories spanning multiple sectors archacpi: leave acpi enabled with *acpi= arm64: use generic timer virtual counter for cycles() audiohda: Add DID for Intel 200 Series PCH HD Audio audiohda: add support for intel cannon point-lp (t490s) audiohda: add support for intel comet lake-s, fix typo audiohda: add ztom z36*/z37* device id audiohda: fix syntax error aux/wacom: fix race in read queue bcm: fix rebootcode linkage bcm/emmc: remove unused cardr wakeup(), use MACHP(0) as tick reference bcm64/sdhc: add *emmc2bus kernel parameter to set dma dram bus address bcm64: make the kernel use virtual timer counter register for cycles() bcm64: parse the emmc2bus/dma-ranges device-tree property and provide *emmc2bus kernel parameter devbridge: fix vlan range parsing devbridge: implement experimental vlan support devbridge: improve locking, unbind ports automatically on read error and more... devdraw: printmesg: implement "z" fmt arg (safe since printmesg is disabled) devenv: allow environment total size of up to 1MB devgpio: make reading ctl file return 0 bytes devip: add comment to ip.h explaining Routehint struct devip: allow setting the "trans" flag on a logical interface devip: cache arp entry in Routehint devip: dont hold ifc wlock during medium bind/unbind devip: implement ipv4 arp timeout with icmp host unreachable notification devip: implement network address translation routes devip: improve tcp error handling for ipoput devip: properly rlock() the routelock for v4lookup() and v6lookup() devip: use better hashipa() macro, use RWlock for arp cache devip: use top bit (type) | subnet-id for V6H() route hash macro devsd: cache SDunit pointer in Chan.aux, improve error handling devssl, cpu, import, oexportfs: delete devswap: improve setswapchan() devtls: fix bwrite memory leak when channel stops being open devtls: implement "hangup" ctl message devtls: reject zero length records (thanks sigrid) devuart: allow serial console on late detected uarts devvmx: skip tsc offset writing if CPU doesn't support it ether8169: support rtl8402 variant ether82563: add 0x15bd i219-lm variant (thanks crab1) ether82563: add pci id for ethernet on dell optiplex 7090 micro (thanks leimy) ether82563: add pci id for i219-v on t490s ether82598: add pci device id for ixgbe i52899 (thanks izaki) etheriwl: add did for Intel Centrino Advanced-N + WiMAX 6250 (thanks Nessa) etheriwl: add support for wireless ac 7260 (thanks kemal!) etheriwl: fix botched merge... etheriwl: fixes for 7260 ac igfx: add TypeILK, since it differs slightly from SNB igfx: add x1 carbon 3rd gen (broadwell) igfx: fix FDI link training on ironlake igfx: fix some typos in comments igfx: maintain single/double-channel LVDS mode from BIOS igfx: Support for igfx on Celeron(R) 2957U (thanks Lorenzo Bivens) igfx: add x1 carbon 3rd gen igfx: add missing pci did's for hwblank for known mobile models kernel/rdb: need to reenable polling mode on the uart, remove cruft kernel: add extra negative and power-of-two check to pcibarsize() kernel: call freebroken() for kproc() when out of processes kernel: dont block allocating kstack for new processes kernel: ensure that all accesses to Mhead.mount is done with Mhead.lock acquired kernel: fix off by one for $cputype buffer (thanks anthony martin) kernel: fix stat bugs kernel: increase bootfs.paq compression level and blocksize kernel: make Page.txtflush into an array kernel: make growfd(), findfreefd() and newfd2() static kernel: move waserror() macro to port/portfns.h kernel: page counts a ulong, not usize kernel: return error from sysrfork instead of waiting and retrying kernel: simplify /boot/boot: 28K down to less than 4K. kernel: support large 64-bit pci membars, increase pc64 VMAPSIZE to 1TB kbdfs: allow X and x to be used not just for hex composition nusb: Fix handling of interface altsetting. nusb/audio: use setalt(), make sure endpoint has right direction. nusb/cam: fix mistake (nil vs -1) nusb/cam: use setalt() nusb/disk: use setalt(), print argv0 in prints instead of "disk:" nusb/ether: remove csp check for rndis, already done in nusbrc nusb/ether: use setalt() nusb/lib: provide a setalt() function to set the interface to its altsetting nusb/serial: fix pl2303 usbcmd error checks nusb/usbd: use per hname collision counter instead of device address to resolve collisions nusbrc: fix FTDI detection sdide: add pci id for AMT IDE-r controller on x230 sdmmc: do card init in a background process after the first try uartpci: AMT SOL Redirection interface (x200s) uartpci: add serial-over-lan uart from x230/AMT usbxhci: endpoint address needs to be masked with Epmax from endpoint number usbxhci: xhcirecover proc does not need to check status every 10ms vga: add eeepc1005ha graphics (thanks Andrew Eggenberger) vga: return modes according to EDID timing priority order vga: use vlong for pci bar size vgadb: add 3rd gen intel hd graphics did (thanks mora) vgadb: add cyber938x bios offset for cyber 9525 (thanks lyndsay) COMPILERS AND DEBUGGERS ----------------------- /sys/lib/acid/pool: format addresses using A format, instead of X (32 bit) 6c: extern registers must be considered used on return cc: do not expand function-like macros for non-function invocations cc: fix incorrect octal range condition in mpatov reduce: use if() to test for exit status of pipeline LIBRARIES --------- ape: add missing idn2utf, utf2idn to lib9 ape: allow exporting rc functions in environ[] ape: export mktemp() in when _BSD_SOURCE is set ape: fix wrong write size for _assert() libFLAC: update to 1.3.4 libaml: implement ObjectType instruction (thanks sigrid) libaml: implement ToString instruction libaml: resolve refs in ObjectType instruction libc: change usize to 64-bit for amd64 and arm64, make memory(2) functions use usize libc: fix overflow of domain component rune buffer for idn2utf() libc: idn2utf()/utf2idn(): check for < 1 buffer, can't insert terminating NUL. libc: use usize for sbrk() increment libc: qsort: allow usize-sized arrays. libndb: move mkptrname() into libndb to avoid duplication libpanel: rename to match clean rule libsec: decode international domain names in certificat subject, fix overflow botch libsec: fix bugs in tls extension handling (thanks kemal) libsec: fix operator precedence bugs (thanks kemal) libsec: fix wrong assert condition (introduced in 775a4bea4386c12067057de0e56dd8baa34f43ec) libsec: fix wrong tls1.0 prf regression libsec: handle international domain names in certificate request libsec: no point in checking for "xn--" marker, just call idn2utf(). libtags: flac: check sample rate before dividing by zero; also check number of channels libtags: id3v2: make sure extra id3 tag does not cause infinite loop libtags: m4a: do not div by zero libtags: no tags is still fine if format is known libtags: opus: fix duration on truncated files libtags: wav: do not div by zero libthread: deal with _schedfork() and _schedexec() returning -1 libthread: fix debug prints, simplify libthread: remove more garbage: _threadnotefd, _threadpasserpid. libthread: remove unused _workerdata() prototype from threadimpl.h libthread: remove unused skip() function PROGRAMS -------- 9fs: 9front.org files now live on port 9000. 9fs: remove case 9bugs (defunct) 9fs: update case 9contrib for new server 9fs: update case 9front acme: don't let tag button draw over tag border. acme: fix hiding of top windows when loading a dump file (thanks Xiao-Yong) acme: fix leaking memory allocated by getenv("font") acme: fix plumb message leaks (thanks igor) acme: fix window and scrollbar display glitches at bottom fringe of column acme: remove superfluous print arguments (patch from plan9port) acmed: add external command flag -e, improvements, bugs acmed: handle international domain names acmed: import acme (RFC8555) client acmed: move from ip/ to auth/ acmed: pass original utf8 subject domain to challengefn, simplify acmed: reject -t flag when -e is given, dup stderr to stdout of -e cmd acmed: remove unused define acmed: tokenize domains from subject also with spaces (fixed multidom cert) acne/Mail: fix double-free (Bterm() in mesgshow()) aescbc: flush before exit and report an error (if any) ape/mkstemp: better options ape/psh: provide /dev/fd audio/flacdec: handle read errors properly to avoid endless looping saturating cpu auth/as: fix wrong filesystem permissions due to wrong factotum being attached auth/rsa2jwk: add code to produce jwk rsa keys aux/cddb: include album name and correct track number key awk: fix off-by-one string buffer overflow from gsub cat: remove stupid long cast cmd/mkfile: major cleanup date: remove '-m' flag diff: fix -u when comparing identical files diff: revert last change, this breaks git/diff exportfs, oexportfs, iostats: make -d log to stderr exportfs: make -d log to stderr exportfs: revert e524e8d65a7573c46d7beb49e77bfc2d55a5563d flacdec: do not loop forever on write/decode errors g: fix duplicate files with directory argument g: show all file names when grepping g: use xargs instead of finding complete file list before greping games/gb: minor style fixes games/gb: various RTC fixes gba: fix flash chip id for 128k and add setting git/branch: fix order of operations (thanks qwx) git/branch: fix typo in error message git/branch: make '-n' use HEAD when '-b' unspecified git/branch: remove duplicate assignment of dirtypaths git/commit: remove trailing 'subst -g' git/commit: squelch error when run outside repository git/compat: add support for ls-remote [-d] git/diff: clean up diffs git/export: use 'date -f' instead of 'date -m' git/fetch: be more robust git/fetch: fix overly eager 's/pack/idx/g' in refactor git/fetch: improve detection of dumb http protocol git/fetch: use read for reading packfiles instead of readn git/fs: remove trailing null bytes from parent file (thanks mcf) git/pack: check pf->pack for nil before Bterming it git/query: fix spurious merge requests git/query: leave range commits in topological order git/query: refactor graph painting algorithm (findtwixt, lca) git/revert: fix empty invocation git/revert: update modification time on revert git/save: leave submodules unmangled git/serve: add a '\n' after HEAD git/serve: don't show progress when not interactive git/serve: one more silencing of non-interactive prints git/{diff,import}: make it easier to handle manually-asembled patch emails git: better handling of absolute paths, regex metachars git: fetch all branches by default. git: fix non-interruptible temporary warning git: fix typo in git/log output git: fully init objq git: improve pack cache heuristics git: revert c947bf808 -- it triggers a bug. git: separate author and committer git: size cache in bytes, not objects git: use commit date as traversal hint instead of author date git: when stealing from the old packs list, keep what we stole. gzip, bzip2: add -n flag to suppress modification timestamp hjfs: fix group ownership of home dirs created by newuser command iostats: bind /srv into the namespace, its magic ip/dhcpd: ignore icmp advice ip/dhcpd: ignore ipv6 addresses when looking up static binding ip/sol: add intel AMT serial-over-lan console program ip/sol: use httpdigest authentication ip/sol: kvm (vnc) redirect, bring back plain authentication as a fallback (when unsupported) ip/tftpd: add -m argument for name substitution using regular expressions joy: joystick script for all emulators, and docs mixfs: add reading (audio loopback) mklatin: fix compose sequences starting with a space char (␣ and ı) mkplist: add -s option to enable "simple" sort (thanks qwx) mothra: fix rendering of tag ndb/dns: fix ndb serialization of RR* ndb/dns: fix wrong ndb attribute "txtrr" vs. "txt" for caching server ndb/dns: handle txt rr strings as binary, remove nullrr ndb code ndb/dns: implement caa record type in ndb ndb/dns: make dblookup() consistent with cachedb operation, bring back txtrr for compatibility ndb/dns: use correct attribute when serializing caa record in ndb format ndb/dns: use decimal encoding for txt rr string escapes ndb/dnsdebug: dont duplicate rrfmt() ndb/dnsdebug: make usage flags consistent ndb/dnsquery: make ! bang work with reverse lookups, document in ndb(8) netaudit: fix auth check, can have multiple auth servers! netaudit, ndb(6): the dom= attribute in ndb should be specified without the trailing period netaudit: check for sys= attribute to be free of periods netaudit: simplify page: performance fixes pc: do not access out of bounds array element plumber: remove $plumbsrv, add optional srvname, usage check rc-httpd: fold two sed calls into one when computing location rc-httpd/handlers/error: restore fn 400 (thanks, qeed) rc-httpd/handlers/{dir-index, serve-static}: commit the correct files this time (thanks, igor) rc-httpd/handlers/{dir-index, serve-static}: fix directory traversal bug (thanks, igor) rc-httpd/{rc-httpd, handlers/error}: do some minimal sanitization on $SERVER_NAME before handing it off to select-handler. rc: Xerror is not a instruction, remove from pfnc rc: add Xhereq instruction to trace rc: add err != nil check for early exit rc: fix everything rc: fix globbing with lists (thanks qwx) rc: fix here document handling with quoted end-marker (thanks sigrid) rc: fix leaking runq->cmdfile rc: fix pwrd() regression, forgot <= ' ' case from needsrcquote()... sorry :( rc: make it portable (for UNIX) rc: only have single instance of a symbol, extern in header (thanks mcf) rc: read heredoc when receiving '\n' (thanks Eckard Brauer) rc: rstr() shouldnt skip trailing NUL bytes (thanks ori) rc: simplify Makefile, use yacc default rule (thanks k0ga) rc: remove useless exit $staus at the end of rcmain realemu: fix typo in usage message. rio: allow spaces in working directory path (-cd) when creating a new window via wctl rio: fix parsing of directory path (-cd) when creating a new window via wctl sam: fix spurious overwrite message (patch from plan9port) screenlock: don't poll to top window (thanks Stuart Morrow) snoopy: ... and fix the memory leak for new dns rr types snoopy: add vlan protocol (802.1q) snoopy: adjust for new dns txt rr format snoopy: dns: add caa record type, fix rrtypestr() snoopy: fix dns nil pointer crashes when formating dns packets (thanks sl) ssh: fix typo (thanks izaki) ssh: use RSA/SHA-256 instead of RSA/SHA-1 as the public key algorithm sshfs: prefer error codes over error strings tinc: fix spelling and update manpage (thanks unobe) tinc: fix typo in unknown host error message troff: we are not htmlroff tweak: add missing return to fix double close(…) on file descriptor… upas/fs: add missing newline to a debug print venti: fix fprint format string venti: fix memory layers vmx: fix PCI ID for virtio block devices vmx: update openbsd kernel heuristics vncv: enable connecting to Darwin hosts vncv: some fixes to work with intel amt kvm webfs: do not reuse digest Authorization headers webfs: implement RFC2617 qop extension for http digest authentication x509: encode empty sequence as constructed zuke: do not change volume with delta == 0 zuke: fix search function ignoring matching artist name zuke: reset before tokenize, increase player thread stack zuke: simplify volume control logic zuke: support other volume handles, update volume when /dev/audio is opened DOCUMENTATION ------------- 0intro(1), acme(1), con(1), rcpu(1), rio(1), namespace(4), authsrv(6), aan(8): cpu -> rcpu 9p(2): fix a typo (thanks humm) acme(1): fix reference to 9front default acme font acmed(8), rsa(8): add role=client attribute to rsa keys acmed(8): add bugs section acmed(8): fix typo acmed(8): fix typos, formatting, and missed name change. acmed(8): ip => auth: missed a reference to the old name acmed(8): missed a spot acmed(8): more improvements acmed(8): typo... addpt(2): fix inconsistency in description audio(1): replace references to juke(7) and playlistfs(7) with zuke(1) (thanks unobe) brk(2): .... we define lowest addres not used by the program above, so use that instead brk(2): sbrk(0) returns end address, not the base consolefs(4): import -> rimport date(1): sync with reality dial(2): dial returns an open data file, not a ctl one. also fixed little typo. draw(3): .IR on memlorigin(2), fix wrong "t" param name (should be "top") draw(3): add a missing .br fork(2): document new error behaviour when out of resources ftpfs(4): import -> rimport git(1): "see also" consistency (thanks sirjofri) git(1): fix git/add -r spacing and wording in BUGS section git(1): fix quotes in git/conf example git(1): fix typo in git/push section ip(3): document the trans argument for add/try. ip(3): use flags instead of tag for 8 column route add/remove ipconfig(8): add -t flag to enable source address translation joy(1): fix typo (thanks lyndon) leak(1): document how to generate pool.$objtype.acid listen(8): get rid of old ports listen(8): remove old cpu, exportfs and rexec listeners man(1): reference /rc/bin/sig in SOURCE section ndb(2): document txt and txtrr attributes. ndb(6): add caa nusbrc(8): fix typo in BUGS section prep(8): fix typos, wording, and formating rc(1): fix synopsis rc-httpd(8): document how to use HTTP basic authentication rsa(8): document rsa2jwk rsa(8): fix spelling and adjust macros to fix formating sam(1): fix description of ctrl+g sega(1): fix typo snap(4): remove non-existent -s from snapfs pushssl(2): remove ssl(3): remove venti(8): change documented behavior to match actual OTHER ----- /lib/ndb/local: add dnschallenge ndb file for acmed(8) by default /lib/theo: Once you understand the mechanism you'll realize it will never work. /lib/theo: We don't need to make statements people perceive as promises. /lib/theo: You obviously don't know what you are doing, and I think you don't deserve help. /sys/doc/troff.ms: give correct path for -m flag (thanks kyle) /sys/games/lib/fortunes: GPU.js /sys/lib/newuser: fix wsys botch, crate bin/arm64 /sys/src/9/mkfile: add bcm64 (thanks stuart morrow) fortunes: MY NAME IS BEING USED IN A PHISHING ATTACK. DO NOT RESPOND TO MAIL OFFERING MONEY FOR UNDERGRAD RESEARCH ASSISTANTS. -- bwk keyboard: ++ = ⧺ keyboard: add ∵ (because) and ∷ (proportion) keyboard: complete double-struck capital set; change SS → Ss for § rootstub: create /sys/lib/tls/acmed directory ![back](http://9front.org/img/survivalevasionandescape.back.png)