[arch-commits] Commit in cryptsetup/trunk (PKGBUILD encrypt_hook)
Thomas Bächler
thomas at archlinux.org
Sun Oct 30 23:08:05 UTC 2011
Date: Sunday, October 30, 2011 @ 19:08:05
Author: thomas
Revision: 141488
upgpkg: cryptsetup 1.4.0-1
upstream update + add --allow-discards support to the encrypt hook
Modified:
cryptsetup/trunk/PKGBUILD
cryptsetup/trunk/encrypt_hook
--------------+
PKGBUILD | 11 +++++------
encrypt_hook | 22 +++++++++++++++++++---
2 files changed, 24 insertions(+), 9 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2011-10-30 22:51:16 UTC (rev 141487)
+++ PKGBUILD 2011-10-30 23:08:05 UTC (rev 141488)
@@ -1,9 +1,9 @@
# $Id$
# Maintainer: Thomas Bächler <thomas at archlinux.org>
pkgname=cryptsetup
-pkgver=1.3.1
-pkgrel=2
-pkgdesc="Userspace setup tool for transparent encryption of block devices using the Linux 2.6 cryptoapi"
+pkgver=1.4.0
+pkgrel=1
+pkgdesc="Userspace setup tool for transparent encryption of block devices using dm-crypt"
arch=(i686 x86_64)
license=('GPL')
url="http://code.google.com/p/cryptsetup/"
@@ -14,10 +14,9 @@
source=(http://cryptsetup.googlecode.com/files/${pkgname}-${pkgver}.tar.bz2
encrypt_hook
encrypt_install)
-sha256sums=('7ceb18a0c91fa1546077b41b93463dd2ec9d7f83e6fd93757fb84cc608206a6a'
- 'b8269d358363eb8d67d1ffa1469068e454a89154636283bcc3edc6486b7fff4e'
+sha256sums=('96d682853c8019cfeae0b21250cd2d00af42e46251807e8dbda2ff8427c2e9ed'
+ '811bbea1337106ad811731c746d73ee81039bad00aef52398e3a377ad0766757'
'd4380195351b70abf8fcb3cd19461879c55a7a07e4915d1f0365b295b112a573')
-
build() {
cd $srcdir/$pkgname-${pkgver}
./configure --prefix=/usr --disable-static --sbindir=/sbin --libdir=/lib
Modified: encrypt_hook
===================================================================
--- encrypt_hook 2011-10-30 22:51:16 UTC (rev 141487)
+++ encrypt_hook 2011-10-30 23:08:05 UTC (rev 141488)
@@ -41,6 +41,7 @@
DEPRECATED_CRYPT=0
cryptdev="$(echo "${cryptdevice}" | cut -d: -f1)"
cryptname="$(echo "${cryptdevice}" | cut -d: -f2)"
+ cryptoptions="$(echo "${cryptdevice}" | cut -d: -f3)"
else
DEPRECATED_CRYPT=1
cryptdev="${root}"
@@ -52,13 +53,28 @@
echo "Use 'cryptdevice=${root}:root root=/dev/mapper/root' instead."
}
+ OLDIFS="${IFS}"
+ IFS=","
+ for cryptopt in ${cryptoptions}; do
+ case ${cryptopt} in
+ allow-discards)
+ echo "Enabling TRIM/discard support."
+ cryptargs="${cryptargs} --allow-discards"
+ ;;
+ *)
+ echo "Encryption option '${cryptopt}' not known, ignoring." >&2
+ ;;
+ esac
+ done
+ IFS="${OLDIFS}"
+
if poll_device "${cryptdev}" ${rootdelay}; then
if /sbin/cryptsetup isLuks ${cryptdev} >/dev/null 2>&1; then
[ ${DEPRECATED_CRYPT} -eq 1 ] && warn_deprecated
dopassphrase=1
# If keyfile exists, try to use that
if [ -f ${ckeyfile} ]; then
- if eval /sbin/cryptsetup --key-file ${ckeyfile} luksOpen ${cryptdev} ${cryptname} ${CSQUIET}; then
+ if eval /sbin/cryptsetup --key-file ${ckeyfile} luksOpen ${cryptdev} ${cryptname} ${cryptargs} ${CSQUIET}; then
dopassphrase=0
else
echo "Invalid keyfile. Reverting to passphrase."
@@ -70,7 +86,7 @@
echo "A password is required to access the ${cryptname} volume:"
#loop until we get a real password
- while ! eval /sbin/cryptsetup luksOpen ${cryptdev} ${cryptname} ${CSQUIET}; do
+ while ! eval /sbin/cryptsetup luksOpen ${cryptdev} ${cryptname} ${cryptargs} ${CSQUIET}; do
sleep 2;
done
fi
@@ -90,7 +106,7 @@
err "Non-LUKS decryption not attempted..."
return 1
fi
- exe="/sbin/cryptsetup create ${cryptname} ${cryptdev}"
+ exe="/sbin/cryptsetup create ${cryptname} ${cryptdev} ${cryptargs}"
tmp=$(echo "${crypto}" | cut -d: -f1)
[ -n "${tmp}" ] && exe="${exe} --hash \"${tmp}\""
tmp=$(echo "${crypto}" | cut -d: -f2)
More information about the arch-commits
mailing list