summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAhmad Fatoum <a.fatoum@pengutronix.de>2021-08-02 07:42:31 +0200
committerMichael Olbrich <m.olbrich@pengutronix.de>2021-08-05 16:00:53 +0200
commit78099dd4ddeaa6587c5127b8b1d902153dc2453d (patch)
tree4e1e3ff0dfca3a3690345b4e1ae8ff78eca1f720
parent93e780b5baf52c3880ef1708bb3211038e502ed3 (diff)
downloadptxdist-78099dd4ddeaa6587c5127b8b1d902153dc2453d.tar.gz
ptxdist-78099dd4ddeaa6587c5127b8b1d902153dc2453d.tar.xz
fscryptctl: new package
fscryptctl is a low-level tool that handles raw keys and manages policies for the Linux filesystem encryption, specifically the "fscrypt" kernel interface which is supported by the ext4, f2fs, and UBIFS filesystems. fscryptctl is mainly intended for embedded systems which can't use the full-featured fscrypt tool. It does *not* handle key generation, key stretching, key wrapping, or PAM integration. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Message-Id: <20210802054231.6401-1-a.fatoum@pengutronix.de> [mol: expand license text for fscryptctl.c to start earlier] Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-rw-r--r--rules/fscryptctl.in14
-rw-r--r--rules/fscryptctl.make56
2 files changed, 70 insertions, 0 deletions
diff --git a/rules/fscryptctl.in b/rules/fscryptctl.in
new file mode 100644
index 000000000..712e56899
--- /dev/null
+++ b/rules/fscryptctl.in
@@ -0,0 +1,14 @@
+## SECTION=selinux
+
+config FSCRYPTCTL
+ tristate
+ prompt "fscryptctl"
+ help
+ fscryptctl is a low-level tool that handles raw keys and manages
+ policies for the Linux filesystem encryption, specifically the
+ "fscrypt" kernel interface which is supported by the ext4,
+ f2fs, and UBIFS filesystems.
+
+ fscryptctl is mainly intended for embedded systems which can't use the
+ full-featured fscrypt tool. It does *not* handle key generation,
+ key stretching, key wrapping, or PAM integration.
diff --git a/rules/fscryptctl.make b/rules/fscryptctl.make
new file mode 100644
index 000000000..fb66ef589
--- /dev/null
+++ b/rules/fscryptctl.make
@@ -0,0 +1,56 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2021 by Ahmad Fatoum <a.fatoum@pengutronix.de>
+#
+
+PACKAGES-$(PTXCONF_FSCRYPTCTL) += fscryptctl
+
+#
+# Paths and names
+#
+FSCRYPTCTL_VERSION := 1.0.0
+FSCRYPTCTL_MD5 := 1013d00ac166b233631100e5905004cc
+FSCRYPTCTL := fscryptctl-$(FSCRYPTCTL_VERSION)
+FSCRYPTCTL_SUFFIX := tar.gz
+FSCRYPTCTL_URL := https://github.com/google/fscryptctl/archive/v$(FSCRYPTCTL_VERSION).$(FSCRYPTCTL_SUFFIX)
+FSCRYPTCTL_SOURCE := $(SRCDIR)/$(FSCRYPTCTL).$(FSCRYPTCTL_SUFFIX)
+FSCRYPTCTL_DIR := $(BUILDDIR)/$(FSCRYPTCTL)
+FSCRYPTCTL_LICENSE := Apache-2.0
+FSCRYPTCTL_LICENSE_FILES := \
+ file://fscryptctl.c;startline=5;endline=20;md5=989e571b78197682b85e3643d13296e5 \
+ file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+FSCRYPTCTL_CONF_TOOL := NO
+FSCRYPTCTL_MAKE_OPT := \
+ $(CROSS_ENV_CC) \
+ CFLAGS="-O2 -g3 -Wall" \
+ PREFIX=/usr
+
+FSCRYPTCTL_INSTALL_OPT := \
+ $(FSCRYPTCTL_MAKE_OPT) \
+ install
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/fscryptctl.targetinstall:
+ @$(call targetinfo)
+
+ @$(call install_init, fscryptctl)
+ @$(call install_fixup, fscryptctl,PRIORITY,optional)
+ @$(call install_fixup, fscryptctl,SECTION,base)
+ @$(call install_fixup, fscryptctl,AUTHOR,"Ahmad Fatoum <a.fatoum@pengutronix.de>")
+ @$(call install_fixup, fscryptctl,DESCRIPTION, "Low-level Linux fscrypt control tool")
+
+ @$(call install_copy, fscryptctl, 0, 0, 0755, -, /usr/bin/fscryptctl)
+
+ @$(call install_finish, fscryptctl)
+
+ @$(call touch)
+
+# vim: syntax=make