summaryrefslogtreecommitdiff
path: root/sys/include
AgeCommit message (Collapse)Author
2016-02-01libsec: ecdsa client support for tlshand, cleanupscinap_lenrek
2016-01-19libsec: add salsa20 stream ciphercinap_lenrek
2016-01-07introduce signed intptr and %z format modifier for formating uintptr and intptrcinap_lenrek
2016-01-06auth: release dp9ik implementation and reentrant factotumcinap_lenrek
2015-12-25libsec: implement TLS-PSK for tlsClient()/tlsServer()cinap_lenrek
2015-12-22libjson: added printing support (thanks spew)cinap_lenrek
2015-12-16libmp: add mpfield() function for fast field arithmeticcinap_lenrek
instead of testing for special field primes each time in mpmod(), make it explicit with a mpfiled() function that tests a modulus N to be of some special form that can be reduced more efficiently with some precalculation, and replaces N with a Mfield* when it can. the Mfield*'s are recognized by mpmod() as they have the MPfield flag set and provide a function pointer that executes the fast reduction.
2015-12-08mp: add logic operations; mpfmt: include 0x with #aiju
2015-11-26libsec: add chacha20 poly1305 aead, allow 64 bit iv's for chacha, add tsmemcmp()cinap_lenrek
chacha20 comes in two variants: ietf rfc7539, using 96 bit iv and 32 bit counter and draft-agl-tls-chacha20poly1305 using 64 bit iv and a 64 bit counter. so setupChachastate() now takes a ivlen argument which sets the mode. add ccpoly_encrypt()/ccpoly_decrypt() routines. to implement timing safe ccpoly_decrypt(), a constant time memcmp was needed, so adding tsmemcmp() to libsec.
2015-11-21libmp: initial attempt at constant time code, faster reductions for special ↵cinap_lenrek
primes (for ecc) introduce MPtimesafe flag to request time invariant computation disables normalization so significant digits are not leaked.
2015-10-22libsec: add chacha cipher (from charles forsyth)cinap_lenrek
2015-10-22libsec: add poly1305cinap_lenrek
2015-10-15mergecinap_lenrek
2015-10-15lib9p: do not override Srv.end in listensrv(), simplify srvclose() and ↵cinap_lenrek
recounting listensrv() used to override Srv.end() with its own handler to free the malloc'd Srv structure and close the fd. this makes it impossible to register your own cleanup handler. instead, we introduce the private Srv.free() handler that is used by listensrv to register its cleanup code. Srv.free() is called once all the srv procs have been exited and all requests on that srv have been responded to while Srv.end() is called once all the procs exited the srv loop regardless of the requests still being in flight.
2015-10-12lib9p: add reqqueuefreeaiju
2015-09-29ape: set MB_CUR_MAX to 4 in stdlib.h for 21-bit runes (thanks erik quanstro)cinap_lenrek
> fix silly bug with ape/stdlib.h which caused ape/lib/regexp/regcomp.c > to miscompile regular expressions with runes > 0xffff.
2015-09-22libsec: implement dh parameter signature verification, stop lying about ↵cinap_lenrek
non-rsa ciphers, fix memory leaks in X509 code actually verify the diffie hellman parameter signature, this comes in two flavours. TLS1.2 uses X509 signature with a single hash specified by the signature algorithm field in the signature itself and pre TLS1.2 where md5+sha1 hashes of the signed blob are pkcs1 padded and encrypted with the rsa private key. stop advertizing non-rsa cipher suits (DSS and ECDSA), as we have not implmenented them. fix some memory leaks in X509 code while we'r at it.
2015-09-06libthread: get rid of tprivalloc()/tprivfree()/tprivdata() and _workerdata() ↵cinap_lenrek
(thanks qrstuv) these functions where undocumented and unused. especially tprivfree() was buggy missing a unlock() call. theres not much point in supporting these functions as theres threaddata() and procdata().
2015-09-06libc: remove privfree(), simplify privalloc()cinap_lenrek
2015-09-02libsec: add rfc5869 hmac-based key derivation function hkdf_x()cinap_lenrek
2015-09-02libsec: generalize pbkdf2_hmac_sha1() to pbkdf2_x() passing the hmac as an ↵cinap_lenrek
argument
2015-09-01libsec: add curve25519 diffie hellmancinap_lenrek
2015-09-01libsec: remove flawed aes() digest and hmac_aes() implementations (thanks aiju)cinap_lenrek
2015-08-28libsec: add curve25519() from http://code.google.com/p/curve25519-donna/cinap_lenrek
this is a portable version of curve25519() by google.
2015-08-27mp.h: third time's a charmglenda
2015-08-27mp.h: oopsglenda
2015-08-27mp.h: define mpnrandglenda
2015-08-26libsec: add q parameter to dh_new() for subgroup support, sanitize dh parameterscinap_lenrek
2015-08-25fix fuckupglenda
2015-08-25import E script from bell labsmischief
2015-08-21introduce AES key into nvram and keyfscinap_lenrek
2015-08-20libsec: add pbkdf2_hmac_sha1() (from wpapsk factotum module)cinap_lenrek
2015-08-19libauthsrv: generalize ticket service, not hardcoding ticket format and DES ↵cinap_lenrek
encryption this is in preparation for replacing DES ticket encryption with something better. but first need to make the code stop making assumptions. the wire encoding of the Ticket might be variable length with TICKETLEN just giving an upper bound. the details will be handled by libauthsrv _asgetticket() and _asgetresp() funciotns. the Authenticator and Passwordreq structures are encrypted with the random ticket key. The encryption schmeme will depend on the Ticket format used, so we pass the Ticket* structure instead of the DES key. introduce Authkey structure that will hold all the required cryptographic keys instead of passing DES key.
2015-08-04ape: implement altzone for tzset()cinap_lenrek
2015-07-13ape: add stdint.h, fix SSIZE_MAX and add SIZE_MAX to limits.hcinap_lenrek
2015-06-09remove drawlsetrefresh and convM2Tnoenc: undefined functionsftrvxmtrx
2015-06-09authsrv.h: remove nonexistent prototypesftrvxmtrx
2015-06-09authsrv: remove unused opasstokeyftrvxmtrx
2015-06-04ape: define long long limitsmischief
2015-05-27ape: include <sys/types.h> in <sys/wait.h> for pid_t (thanks jens staal)cinap_lenrek
2015-05-21libsec: implement tlsClient support for RFC6066 server name identification (SNI)cinap_lenrek
tlsClient() now can optionally send the server_name in the ClientHello message by setting the TLSconn.serverName. This is required for some https sites.
2015-05-20libhttpd: declare hvprintmischief
2015-04-29libsec: remove aesCTRencrypt()/aesCTRdecrypt() (thanks mischief and qrstuv)cinap_lenrek
as mischief and qrstuv point out, these functions are not very usefull and are even implemented wrong (incrementCTR()), so deleting the code.
2015-03-18libmach: use #pragma pack to force 4 byte alignment of bootexec.h structures ↵cinap_lenrek
for amd64
2015-03-04libthread: get rid of chaninit() (thanks qrstuv)cinap_lenrek
chaninit() does not initialize Chan.qentry and Chan.nentry and there is no way to get rid of such a channel. nobody is using it, so removing the function to avoid confusion.
2014-12-14bio: add Bfdopen() from plan9portcinap_lenrek
2014-09-14libsec: add diffie-hellman functionscinap_lenrek
2014-06-09pool: declare pooldump in pool.h. the manual says it is public.mischief
2014-05-03thread.h: varargck argpos for threadsetnameftrvxmtrx
2014-05-03bio.h: add varargck argpos pragma for Berrorftrvxmtrx