aboutsummaryrefslogtreecommitdiff
path: root/sysutils/pefs-kmod
diff options
context:
space:
mode:
authorSofian Brabez <sbz@FreeBSD.org>2011-09-01 14:21:11 +0000
committerSofian Brabez <sbz@FreeBSD.org>2011-09-01 14:21:11 +0000
commit48135da34d21ff12a2b5fb1c6b9fc25700886d59 (patch)
tree7485033411da07965b3a8538311a203f52275928 /sysutils/pefs-kmod
parent0c12c6c52a4976409cd7669c885b012bc56bb37c (diff)
downloadports-48135da34d21ff12a2b5fb1c6b9fc25700886d59.tar.gz
ports-48135da34d21ff12a2b5fb1c6b9fc25700886d59.zip
PEFS is a kernel level stacked cryptographic filesystem for FreeBSD.
Key features: * Transparently runs on top of existing file systems * Random per file tweak value for encryption * Stores metadata only in encrypted file name * Arbitrary number of keys per file system, mixing keys in same directory and key chains * Modern cryptographic algorithms: AES and Camellia in XTS mode, PKCS#5v2 and HKDF for key generation. WWW: http://github.com/glk/pefs WWW: http://wiki.freebsd.org/PEFS PR: ports/156002 Submitted by: Gleb Kurtsou <gk@freebsd.org> Approved by: jadawin@ (mentor)
Notes
Notes: svn path=/head/; revision=280980
Diffstat (limited to 'sysutils/pefs-kmod')
-rw-r--r--sysutils/pefs-kmod/Makefile37
-rw-r--r--sysutils/pefs-kmod/distinfo2
-rw-r--r--sysutils/pefs-kmod/files/patch-Makefile17
-rw-r--r--sysutils/pefs-kmod/files/patch-pefs_aesni.h17
-rw-r--r--sysutils/pefs-kmod/pkg-descr13
-rw-r--r--sysutils/pefs-kmod/pkg-plist5
6 files changed, 91 insertions, 0 deletions
diff --git a/sysutils/pefs-kmod/Makefile b/sysutils/pefs-kmod/Makefile
new file mode 100644
index 000000000000..676b35721268
--- /dev/null
+++ b/sysutils/pefs-kmod/Makefile
@@ -0,0 +1,37 @@
+# New ports collection makefile for: pefs-kmod
+# Date created: 26 January 2011
+# Whom: Gleb Kurtsou <gk@freebsd.org>
+#
+# $FreeBSD$
+#
+
+PORTNAME= pefs
+DISTVERSION= 2011-04-14
+CATEGORIES= sysutils kld
+MASTER_SITES= http://cloud.github.com/downloads/glk/${PORTNAME}/
+PKGNAMESUFFIX= -kmod
+
+MAINTAINER= gk@freebsd.org
+COMMENT= PEFS kernel level stacked cryptographic filesystem
+
+LICENSE= BSD
+
+FETCH_ARGS= -Fpr # work around 302 redirect at guthub
+
+KMODDIR?= /boot/modules
+PLIST_SUB= KMODDIR=${KMODDIR}
+MAKE_ENV= BINDIR="${PREFIX}/sbin" MANDIR="${MANPREFIX}/man/man" \
+ NO_MANCOMPRESS= \
+ KMODDIR="${KMODDIR}" SYSDIR="${SRC_BASE}/sys" \
+
+MAN8= pefs.8
+
+ONLY_FOR_ARCHS= i386 amd64 # not tested on other archs
+
+.include <bsd.port.pre.mk>
+
+.if ${OSVERSION} < 800000
+BROKEN= requires fairly recent FreeBSD-STABLE, or FreeBSD-CURRENT
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/sysutils/pefs-kmod/distinfo b/sysutils/pefs-kmod/distinfo
new file mode 100644
index 000000000000..cfdf7742d3f0
--- /dev/null
+++ b/sysutils/pefs-kmod/distinfo
@@ -0,0 +1,2 @@
+SHA256 (pefs-2011-04-14.tar.gz) = b0ce87a39a7adf54e8c8bc803ac0e2d799f5d8e3f873d10143da5aab4a4d87ae
+SIZE (pefs-2011-04-14.tar.gz) = 87193
diff --git a/sysutils/pefs-kmod/files/patch-Makefile b/sysutils/pefs-kmod/files/patch-Makefile
new file mode 100644
index 000000000000..c58bae5b03bf
--- /dev/null
+++ b/sysutils/pefs-kmod/files/patch-Makefile
@@ -0,0 +1,17 @@
+--- sys/modules/pefs/Makefile.orig
++++ sys/modules/pefs/Makefile
+@@ -8,12 +8,12 @@
+ pefs_dircache.c \
+ pefs_xts.c vmac.c
+
+-.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64"
++.if defined(PEFS_AESNI)
+ SRCS+= pefs_aesni.c
+ CFLAGS+= -DPEFS_AESNI
+ .endif
+
+-DEBUG_FLAGS+= -g
++#DEBUG_FLAGS+= -g
+ #DEBUG_FLAGS+= -DPEFS_DEBUG
+ #DEBUG_FLAGS+= -DPEFS_DEBUG_EXTRA
+
diff --git a/sysutils/pefs-kmod/files/patch-pefs_aesni.h b/sysutils/pefs-kmod/files/patch-pefs_aesni.h
new file mode 100644
index 000000000000..1a81f9cff34b
--- /dev/null
+++ b/sysutils/pefs-kmod/files/patch-pefs_aesni.h
@@ -0,0 +1,17 @@
+--- sys/fs/pefs/pefs_aesni.h.orig
++++ sys/fs/pefs/pefs_aesni.h
+@@ -26,6 +26,8 @@
+ * $FreeBSD$
+ */
+
++#ifdef PEFS_AESNI
++
+ #include <crypto/aesni/aesni.h>
+
+ struct pefs_aesni_ctx {
+@@ -41,3 +43,5 @@ struct pefs_aesni_ses {
+ };
+
+ algop_init_t pefs_aesni_init;
++
++#endif
diff --git a/sysutils/pefs-kmod/pkg-descr b/sysutils/pefs-kmod/pkg-descr
new file mode 100644
index 000000000000..6bc6fdf7954c
--- /dev/null
+++ b/sysutils/pefs-kmod/pkg-descr
@@ -0,0 +1,13 @@
+PEFS is a kernel level stacked cryptographic filesystem for FreeBSD.
+
+Key features:
+* Transparently runs on top of existing file systems
+* Random per file tweak value for encryption
+* Stores metadata only in encrypted file name
+* Arbitrary number of keys per file system, mixing keys in same
+ directory and key chains
+* Modern cryptographic algorithms: AES and Camellia in XTS mode,
+ PKCS#5v2 and HKDF for key generation.
+
+WWW: http://github.com/glk/pefs
+WWW: http://wiki.freebsd.org/PEFS
diff --git a/sysutils/pefs-kmod/pkg-plist b/sysutils/pefs-kmod/pkg-plist
new file mode 100644
index 000000000000..7b3248df7f6c
--- /dev/null
+++ b/sysutils/pefs-kmod/pkg-plist
@@ -0,0 +1,5 @@
+sbin/pefs
+@cwd %%KMODDIR%%
+pefs.ko
+@exec kldxref %%KMODDIR%%
+@unexec kldxref %%KMODDIR%%