Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 17 Feb 2014 11:27:11 +0000 (UTC)
From:      John Marino <marino@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r344727 - in head/dns: . ironsides ironsides/files
Message-ID:  <201402171127.s1HBRBp3010319@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
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@FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME=	ironsides
+PORTVERSION=	20130315
+CATEGORIES=	dns
+MASTER_SITES=	http://ironsides.martincarlisle.com/
+DISTFILES=	trunk${PORTVERSION}.zip
+
+MAINTAINER=	marino@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
+@dirrm %%EXAMPLESDIR%%



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201402171127.s1HBRBp3010319>