BLKCCIPHERMODES += counter
## CMAC mode.
-BLKCMACMODES += cmac
+BLKCMACMODES += cmac pmac1
+
+## Various AEAD modes.
+pkginclude_HEADERS += ocb.h
+BLKCAEADMODES += ccm eax gcm ocb1 ocb3
+libsymm_la_SOURCES += ccm.c gcm.c ocb.c
+if CPUFAM_X86
+libsymm_la_SOURCES += gcm-x86ish-pclmul.S
+endif
+if CPUFAM_AMD64
+libsymm_la_SOURCES += gcm-x86ish-pclmul.S
+endif
+if CPUFAM_ARMEL
+libsymm_la_SOURCES += gcm-arm-crypto.S
+endif
+if CPUFAM_ARM64
+libsymm_la_SOURCES += gcm-arm64-pmull.S
+endif
+
+TESTS += gcm.t$(EXEEXT)
+EXTRA_DIST += t/gcm
###--------------------------------------------------------------------------
### Hash functions.
ALL_AEADS += chacha20-poly1305 salsa20-poly1305
ALL_AEADS += chacha12-poly1305 salsa2012-poly1305
ALL_AEADS += chacha8-poly1305 salsa208-poly1305
+ALL_AEADS += chacha20-naclbox salsa20-naclbox
+ALL_AEADS += chacha12-naclbox salsa2012-naclbox
+ALL_AEADS += chacha8-naclbox salsa208-naclbox
STUBS_HDR += ChaCha20-Poly1305,chacha20-poly1305,latinpoly
STUBS_HDR += ChaCha12-Poly1305,chacha12-poly1305,latinpoly
STUBS_HDR += ChaCha8-Poly1305,chacha8-poly1305,latinpoly
STUBS_HDR += Salsa20-Poly1305,salsa20-poly1305,latinpoly
STUBS_HDR += Salsa20/12-Poly1305,salsa2012-poly1305,latinpoly
STUBS_HDR += Salsa20/8-Poly1305,salsa208-poly1305,latinpoly
+STUBS_HDR += ChaCha20-NaClBox,chacha20-naclbox,latinpoly
+STUBS_HDR += ChaCha12-NaClBox,chacha12-naclbox,latinpoly
+STUBS_HDR += ChaCha8-NaClBox,chacha8-naclbox,latinpoly
+STUBS_HDR += Salsa20-NaClBox,salsa20-naclbox,latinpoly
+STUBS_HDR += Salsa20/12-NaClBox,salsa2012-naclbox,latinpoly
+STUBS_HDR += Salsa20/8-NaClBox,salsa208-naclbox,latinpoly
TESTS += chacha-poly1305.t$(EXEEXT)
TESTS += salsa20-poly1305.t$(EXEEXT)