--enable-unit-tests
--enable-tools
--enable-remotebackend-zeromq
+ --enable-experimental-ed25519
--enable-experimental-pkcs11
--disable-silent-rules
--disable-dependency-tracking
PDNS_ENABLE_BOTAN
PDNS_ENABLE_PKCS11
PDNS_WITH_CRYPTOPP
+PDNS_ENABLE_ED25519
PDNS_ENABLE_REMOTEBACKEND_ZEROMQ
AC_MSG_CHECKING([whether we will be building static binaries])
docs/Makefile
pdns/pdns.init
pdns/ext/Makefile
+ pdns/ext/ed25519/Makefile
pdns/ext/yahttp/Makefile
pdns/ext/yahttp/yahttp/Makefile
pdns/ext/polarssl/Makefile
--- /dev/null
+AC_DEFUN([PDNS_ENABLE_ED25519], [
+ AC_MSG_CHECKING([whether we will be linking in Ed25519])
+ AC_ARG_ENABLE([experimental-ed25519],
+ AS_HELP_STRING([--enable-experimental-ed25519],
+ [use experimental Ed25519 @<:@default=no@:>@]),
+ [enable_ed25519=$enableval],
+ [enable_ed25519=no]
+ )
+ AC_MSG_RESULT([$enable_ed25519])
+
+ AM_CONDITIONAL([ED25519], [test "x$enable_ed25519" != "xno"])
+ AM_COND_IF([ED25519], [
+ ED25519_SUBDIR=ed25519
+ ED25519_LIBS="-L\$(top_builddir)/pdns/ext/$ED25519_SUBDIR/ -led25519"
+ ],[
+ ED25519_SUBDIR=
+ ED25519_LIBS=
+ ])
+
+ AC_SUBST(ED25519_SUBDIR)
+ AC_SUBST(ED25519_LIBS)
+])
pdns_server_LDADD += $(CRYPTOPP_LIBS)
endif
+if ED25519
+pdns_server_SOURCES += ed25519signers.cc
+pdns_server_LDADD += $(ED25519_LIBS)
+endif
+
if SQLITE3
pdns_server_SOURCES += ssqlite3.cc ssqlite3.hh
pdns_server_LDADD += $(SQLITE3_LIBS)
pdnssec_LDADD += -lcryptopp
endif
+if ED25519
+pdnssec_SOURCES += ed25519signers.cc
+pdnssec_LDADD += $(ED25519_LIBS)
+endif
+
if SQLITE3
pdnssec_SOURCES += ssqlite3.cc ssqlite3.hh
pdnssec_LDADD += $(SQLITE3_LIBS)
SUBDIRS = \
$(POLARSSL_SUBDIR) \
+ $(ED25519_SUBDIR) \
yahttp \
rapidjson
DIST_SUBDIRS = \
polarssl \
+ ed25519 \
yahttp \
rapidjson
--- /dev/null
+/Makefile
+/Makefile.in
--- /dev/null
+noinst_LTLIBRARIES = libed25519.la
+
+libed25519_la_SOURCES = \
+ fe_0.c \
+ fe_1.c \
+ fe_add.c \
+ fe_cmov.c \
+ fe_copy.c \
+ fe_frombytes.c \
+ fe_invert.c \
+ fe_isnegative.c \
+ fe_isnonzero.c \
+ fe_mul.c \
+ fe_neg.c \
+ fe_pow22523.c \
+ fe_sq2.c \
+ fe_sq.c \
+ fe_sub.c \
+ fe_tobytes.c \
+ ge_add.c \
+ ge_double_scalarmult.c \
+ ge_frombytes.c \
+ ge_madd.c \
+ ge_msub.c \
+ ge_p1p1_to_p2.c \
+ ge_p1p1_to_p3.c \
+ ge_p2_0.c \
+ ge_p2_dbl.c \
+ ge_p3_0.c \
+ ge_p3_dbl.c \
+ ge_p3_tobytes.c \
+ ge_p3_to_cached.c \
+ ge_p3_to_p2.c \
+ ge_precomp_0.c \
+ ge_scalarmult_base.c \
+ ge_sub.c \
+ ge_tobytes.c \
+ keypair.c \
+ open.c \
+ publickey.c \
+ sc_muladd.c \
+ sc_reduce.c \
+ sha512-blocks.c \
+ sha512-hash.c \
+ sign.c \
+ verify.c
#ifdef HAVE_CRYPTOPP
"cryptopp " <<
#endif
+#ifdef HAVE_ED25519
+ "ed25519 " <<
+#endif
#ifdef HAVE_LIBDL
"libdl " <<
#endif