svn commit: r344727 - in head/dns: . ironsides ironsides/files
John Marino
marino at FreeBSD.org
Mon Feb 17 11:27:12 UTC 2014
Author: marino
Date: Mon Feb 17 11:27:10 2014
New Revision: 344727
URL: http://svnweb.freebsd.org/changeset/ports/344727
QAT: https://qat.redports.org/buildarchive/r344727/
Log:
Add new Ada-based DNS server port: dns/ironsides
IRONSIDES is an authoritative DNS server that is provably invulnerable to
many of the problems that plague other servers. It achieves this property
through the use of formal methods in its design, in particular the language
Ada and the SPARK formal methods tool set. Code validated in this way is
provably exception-free, contains no data flow errors, and terminates only
in the ways that its programmers explicitly say that it can. These are very
desirable properties from a computer security perspective.
IRONSIDES is not a complete implementation of DNS. In particular, it does
not support zone transfers or recursive queries. It does, however, support
a sufficient number of DNS records to be useful as an authoritative DNS
server for an enterprise.
Added:
head/dns/ironsides/
head/dns/ironsides/Makefile (contents, props changed)
head/dns/ironsides/distinfo (contents, props changed)
head/dns/ironsides/files/
head/dns/ironsides/files/Makefile (contents, props changed)
head/dns/ironsides/files/ironsides.gpr (contents, props changed)
head/dns/ironsides/pkg-descr (contents, props changed)
head/dns/ironsides/pkg-plist (contents, props changed)
Modified:
head/dns/Makefile
Modified: head/dns/Makefile
==============================================================================
--- head/dns/Makefile Mon Feb 17 11:17:31 2014 (r344726)
+++ head/dns/Makefile Mon Feb 17 11:27:10 2014 (r344727)
@@ -61,6 +61,7 @@
SUBDIR += inadyn
SUBDIR += inadyn-mt
SUBDIR += ipcheck
+ SUBDIR += ironsides
SUBDIR += knot
SUBDIR += ldapdns
SUBDIR += ldns
Added: head/dns/ironsides/Makefile
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/dns/ironsides/Makefile Mon Feb 17 11:27:10 2014 (r344727)
@@ -0,0 +1,29 @@
+# Created by: John Marino <marino at FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME= ironsides
+PORTVERSION= 20130315
+CATEGORIES= dns
+MASTER_SITES= http://ironsides.martincarlisle.com/
+DISTFILES= trunk${PORTVERSION}.zip
+
+MAINTAINER= marino at FreeBSD.org
+COMMENT= Authoritative DNS server formally verified by SPARK/Ada
+
+LICENSE= Ironsides
+LICENSE_NAME= IRONSIDES - Free software, unlimited redistribution
+LICENSE_FILE= ${WRKSRC}/COPYRIGHT.txt
+LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
+
+BUILD_DEPENDS= ${LOCALBASE}/include/spark2012/spark.ads:${PORTSDIR}/devel/libspark2012
+
+USES= ada dos2unix
+DOS2UNIX_FILES= dfcs.usafa.edu.zonefile
+
+post-extract:
+ @${MV} ${WRKDIR}/trunk ${WRKSRC}
+ @(cd ${WRKSRC}; ${RM} *.bak *.bk.[0-9])
+ @(cd ${WRKSRC}; ${SETENV} ${MAKE_ENV} gnatclean -q spark_dns_main)
+ @${CP} ${FILESDIR}/ironsides.gpr ${FILESDIR}/Makefile ${WRKSRC}/
+
+.include <bsd.port.mk>
Added: head/dns/ironsides/distinfo
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/dns/ironsides/distinfo Mon Feb 17 11:27:10 2014 (r344727)
@@ -0,0 +1,2 @@
+SHA256 (trunk20130315.zip) = 40c1c84022da3a0995c866f83186a45d104b6149f3732bbc1ad13426cd89b5f1
+SIZE (trunk20130315.zip) = 7853757
Added: head/dns/ironsides/files/Makefile
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/dns/ironsides/files/Makefile Mon Feb 17 11:27:10 2014 (r344727)
@@ -0,0 +1,11 @@
+all: build
+
+build:
+ gnatmake -p -P ironsides
+
+install:
+ mkdir -p ${DESTDIR}${PREFIX}/share/examples/ironsides
+ ${BSD_INSTALL_PROGRAM} final/spark_dns_main \
+ ${DESTDIR}${PREFIX}/sbin/ironsides
+ ${BSD_INSTALL_DATA} dfcs.usafa.edu.zonefile \
+ ${DESTDIR}${PREFIX}/share/examples/ironsides/
Added: head/dns/ironsides/files/ironsides.gpr
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/dns/ironsides/files/ironsides.gpr Mon Feb 17 11:27:10 2014 (r344727)
@@ -0,0 +1,13 @@
+with "spark2012.gpr";
+
+project Ironsides is
+ for Source_Dirs use (".");
+ for Object_Dir use "build";
+ for Exec_Dir use "final";
+ for Main use ("spark_dns_main.adb");
+
+ package Compiler is
+ for Default_Switches ("Ada") use ("-gnat05", "-gnatp", "-O3");
+ end Compiler;
+
+end Ironsides;
Added: head/dns/ironsides/pkg-descr
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/dns/ironsides/pkg-descr Mon Feb 17 11:27:10 2014 (r344727)
@@ -0,0 +1,14 @@
+IRONSIDES is an authoritative DNS server that is provably invulnerable to
+many of the problems that plague other servers. It achieves this property
+through the use of formal methods in its design, in particular the language
+Ada and the SPARK formal methods tool set. Code validated in this way is
+provably exception-free, contains no data flow errors, and terminates only
+in the ways that its programmers explicitly say that it can. These are very
+desirable properties from a computer security perspective.
+
+IRONSIDES is not a complete implementation of DNS. In particular, it does
+not support zone transfers or recursive queries. It does, however, support
+a sufficient number of DNS records to be useful as an authoritative DNS
+server for an enterprise.
+
+WWW: http://ironsides.martincarlisle.com
Added: head/dns/ironsides/pkg-plist
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/dns/ironsides/pkg-plist Mon Feb 17 11:27:10 2014 (r344727)
@@ -0,0 +1,3 @@
+sbin/ironsides
+%%EXAMPLESDIR%%/dfcs.usafa.edu.zonefile
+ at dirrm %%EXAMPLESDIR%%
More information about the svn-ports-head
mailing list