Plan 9 from Bell Labs’s /usr/web/sources/contrib/mospak/INDEX

Copyright © 2021 Plan 9 Foundation.
Distributed under the MIT License.
Download the Plan 9 distribution.


tls-1.2 - TLS 1.2 client and server support for 9legacy:
    ECDHE (X25519 both sides; secp256r1 and secp384r1 on the
    client), AEAD ciphers (AES-128-GCM, ChaCha20-Poly1305), SNI,
    server-side ECDHE-RSA, X.509 chain + hostname + validity +
    RFC 5280 Section 4.2 (basicConstraints, keyUsage,
    extKeyUsage, nameConstraints) verification on by default via
    /sys/lib/tls/ca.pem, RFC 5746 renegotiation_info server echo,
    RFC 7627 extended_master_secret, per-vhost SNI cert routing
    in ip/httpd, TLS 1.0 and 1.1 refused per RFC 8996.  Scalar
    multiplication selects each ladder step without branching on
    the scalar.  Session keys are zeroized at close, the record
    sequence number is 64 bits so the AEAD nonce cannot repeat,
    handshake messages are bounds-checked in both directions, and
    the ASN.1 decoder limits its own recursion.

abaco-html4 - usability fixes for the 9legacy abaco(1) browser:
    NOTES bug fixes (text selection, double-click), html(2) field
    wiring, UTF-8 default charset, webfs cookie support,
    failure-path error prefix, relative-BASE-href crash guard.

webfs-readline-overflow - fix a dormant Ibuf pointer-reset bug in
    /sys/src/cmd/webfs/buf.c readline(); affects any webfs consumer driving
    sustained parallel reads (observed in abaco loading modern HTTPS pages).

hget-readline-overflow - the same bug in the copy of that function in
    /sys/src/cmd/hget.c: readline() never rewinds rp/wp when the 4 KB
    input buffer drains, so the next read deposits response data past the
    end of it.  hget places the pointers before the buffer rather than
    after, so the overrun leaves the struct entirely and corrupts
    unrelated static data instead of faulting in readline.  Needs only a
    response whose headers and body cycle the buffer past 4096 bytes.

mothra-fixups - character-set detection in mothra(1), the browser from
    /sources/extra (not part of 9legacy; fetch it there first).
    plrdhtml compared the http-equiv attribute with strcmp, so the usual
    spelling Content-Type never matched and the page rendered as
    Latin-1, and it never read <meta charset=...> at all, which is the
    form most pages use now.  Both forms are read, case-insensitively.
    Also returns a value from pl_boxsize, which could fall off the end
    of a function declared to return a Point.

libregexp-listsize-bump - bump LISTSIZE 10 -> 12 in libregexp/regcomp.h to
    dodge an off-by-one in rregexec's thread-list overflow detection; the
    OOB byte write corrupts heap memory adjacent to the regex engine's
    stack.  Affects any libregexp consumer with a large enough regex.

ndb-dns-empty-noerror - fix Plan 9 ndb/dns to return NOERROR (RCODE
    0) for unsupported RR types instead of the non-RFC NOTIMP
    response, with SOA in authority section when authoritative.
    Required by modern public CAs (CAA gate per RFC 8659) for any
    Plan 9 host running authoritative DNS for its own zone.

kaffe - restored Kaffe 0.9.2 Java 1.1.3 VM for 9legacy/386:
    interpreter, JIT, native services, JNI 1.1 and kaffeh.

Bell Labs OSI certified Powered by Plan 9

(Return to Plan 9 Home Page)

Copyright © 2021 Plan 9 Foundation. All Rights Reserved.
Comments to webmaster@9p.io.