plan9fox/sys/include
cinap_lenrek 3356e0e731 libsec: AES-NI support for amd64
Add assembler versions for aes_encrypt/aes_decrypt and the key
setup using AES-NI instruction set. This makes aes_encrypt and
aes_decrypt into function pointers which get initialized by
the first call to setupAESstate().

Note that the expanded round key words are *NOT* stored in big
endian order as with the portable implementation. For that reason
the AESstate.ekey and AESstate.dkey fields have been changed to
void* forcing an error when someone is accessing the roundkey
words. One offender was aesXCBmac, which doesnt appear to be
used and the code looks horrible so it has been deleted.

The AES-NI implementation is for amd64 only as it requires the
kernel to save/restore the FPU state across syscalls and
pagefaults.
2017-11-12 23:15:15 +01:00
..
ape libsec: AES-NI support for amd64 2017-11-12 23:15:15 +01:00
9p.h lib9p: allow rewinding in 9pfile directories 2017-04-30 01:49:21 +02:00
a.out.h retire the dec alpha port 2016-05-04 16:11:48 +02:00
aml.h aml: define amlintmask and set it according to DSDT revision (64bit / 32bit) 2016-06-05 14:57:38 +02:00
ar.h
auth.h
authsrv.h libauthsrv: ANAMELEN -> PASSWDLEN 2016-08-05 19:09:42 +02:00
avl.h replica: use libavl for avl tree implementation 2017-04-22 14:28:02 -05:00
bin.h
bio.h bio: add support for custom I/O handler via Biofn 2017-05-04 17:42:12 +00:00
bootexec.h libmach: use #pragma pack to force 4 byte alignment of bootexec.h structures for amd64 2015-03-18 19:31:51 +01:00
complete.h
control.h
ctype.h
cursor.h
disk.h
draw.h libdraw: get rid of _drawdebug variable 2017-04-29 21:03:52 +02:00
event.h
fcall.h
fis.h
flate.h
frame.h
geometry.h
html.h libhtml: fix potential linked list corruption 2013-09-05 00:55:58 +02:00
httpd.h libhttpd: declare hvprint 2015-05-20 15:09:34 -07:00
ip.h
json.h libjson: added printing support (thanks spew) 2015-12-22 18:12:56 +01:00
keyboard.h rio: add ^B control sequence to move cursor to output point 2013-08-04 06:45:58 +02:00
libc.h libc: improve alignment of QLp structure on amd64, cosmetics 2017-10-28 18:53:27 +02:00
libsec.h libsec: AES-NI support for amd64 2017-11-12 23:15:15 +01:00
mach.h libmach: support disassembling from memory 2017-08-24 13:02:27 +00:00
memdraw.h libmemdraw/libmemlayer: get rid of drawdebug prints 2017-04-29 21:10:28 +02:00
memlayer.h
mouse.h
mp.h mp.h: add mpasr 2016-08-28 16:05:22 +02:00
ndb.h
nfs3.h
plumb.h
pool.h libc: add poolisoverlap() and definitions for Pool *secrmem 2016-08-27 20:23:55 +02:00
rdbg.h
regexp.h better memory management of threads (thanks knuth) 2016-04-27 17:36:43 -05:00
scribble.h
stdio.h
String.h
sunrpc.h
thread.h libthread: get rid of tprivalloc()/tprivfree()/tprivdata() and _workerdata() (thanks qrstuv) 2015-09-06 23:25:14 +02:00
tos.h
trace.h
venti.h