This commit is contained in:
parent
4e19fa1180
commit
1a9a5717ee
13
cryptsetup-1.0.5-udevadm.patch
Normal file
13
cryptsetup-1.0.5-udevadm.patch
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
Index: cryptsetup-1.0.5_SVNr46/lib/libdevmapper.c
|
||||||
|
===================================================================
|
||||||
|
--- cryptsetup-1.0.5_SVNr46.orig/lib/libdevmapper.c 2007-10-24 22:47:53.000000000 +0200
|
||||||
|
+++ cryptsetup-1.0.5_SVNr46/lib/libdevmapper.c 2008-07-23 11:42:29.000000000 +0200
|
||||||
|
@@ -18,7 +18,7 @@
|
||||||
|
|
||||||
|
#define CRYPT_TARGET "crypt"
|
||||||
|
|
||||||
|
-#define UDEVSETTLE "/sbin/udevsettle"
|
||||||
|
+#define UDEVSETTLE "/sbin/udevadm settle"
|
||||||
|
|
||||||
|
static void run_udevsettle(void)
|
||||||
|
{
|
@ -1,3 +1,13 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jul 23 15:44:31 CEST 2008 - hare@suse.de
|
||||||
|
|
||||||
|
- Include mkinitrd scriptlets.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jul 23 13:05:20 CEST 2008 - mkoenig@suse.de
|
||||||
|
|
||||||
|
- use /sbin/udevadm settle instead of /sbin/udevsettle [bnc#404875]
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue May 6 12:36:49 CEST 2008 - mkoenig@suse.de
|
Tue May 6 12:36:49 CEST 2008 - mkoenig@suse.de
|
||||||
|
|
||||||
|
@ -22,14 +22,17 @@ License: BSD 3-Clause; GPL v2 or later
|
|||||||
Group: System/Base
|
Group: System/Base
|
||||||
AutoReqProv: on
|
AutoReqProv: on
|
||||||
Version: 1.0.5_SVNr46
|
Version: 1.0.5_SVNr46
|
||||||
Release: 16
|
Release: 28
|
||||||
Summary: Set Up dm-crypt Based Encrypted Block Devices
|
Summary: Set Up dm-crypt Based Encrypted Block Devices
|
||||||
Source: cryptsetup-%{version}.tar.bz2
|
Source: cryptsetup-%{version}.tar.bz2
|
||||||
Source1: hashalot-%haver.tar.bz2
|
Source1: hashalot-%haver.tar.bz2
|
||||||
# http://www.suse.de/~lnussel/boot.crypto.git
|
# http://www.suse.de/~lnussel/boot.crypto.git
|
||||||
Source2: boot.crypto-%{bcver}.tar.bz2
|
Source2: boot.crypto-%{bcver}.tar.bz2
|
||||||
|
Source3: mkinitrd-setup.sh
|
||||||
|
Source4: mkinitrd-boot.sh
|
||||||
# use this to create the tarball from svn
|
# use this to create the tarball from svn
|
||||||
Source99: cryptsetup-mktar
|
Source99: cryptsetup-mktar
|
||||||
|
Patch1: cryptsetup-1.0.5-udevadm.patch
|
||||||
Patch10: hashalot-fixes.diff
|
Patch10: hashalot-fixes.diff
|
||||||
Patch11: hashalot-libgcrypt.diff
|
Patch11: hashalot-libgcrypt.diff
|
||||||
Patch12: hashalot-ctrl-d.diff
|
Patch12: hashalot-ctrl-d.diff
|
||||||
@ -81,6 +84,7 @@ Authors:
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -b 1 -b 2
|
%setup -q -b 1 -b 2
|
||||||
|
%patch1 -p1
|
||||||
pushd ../hashalot-%haver
|
pushd ../hashalot-%haver
|
||||||
%patch10 -p1
|
%patch10 -p1
|
||||||
%patch11 -p1
|
%patch11 -p1
|
||||||
@ -122,7 +126,10 @@ make install DESTDIR=$RPM_BUILD_ROOT
|
|||||||
popd
|
popd
|
||||||
# remove unwanted symlinks
|
# remove unwanted symlinks
|
||||||
rm -f $RPM_BUILD_ROOT/sbin/{rmd160,sha256,sha384,sha512}
|
rm -f $RPM_BUILD_ROOT/sbin/{rmd160,sha256,sha384,sha512}
|
||||||
#
|
# mkinitrd scriptlets
|
||||||
|
install -d $RPM_BUILD_ROOT/lib/mkinitrd/scripts
|
||||||
|
install -m 755 %{SOURCE3} $RPM_BUILD_ROOT/lib/mkinitrd/scripts/setup-luks.sh
|
||||||
|
install -m 755 %{SOURCE4} $RPM_BUILD_ROOT/lib/mkinitrd/scripts/boot-luks.sh
|
||||||
#
|
#
|
||||||
# boot.crypto
|
# boot.crypto
|
||||||
make -C ../boot.crypto-* install DESTDIR=$RPM_BUILD_ROOT
|
make -C ../boot.crypto-* install DESTDIR=$RPM_BUILD_ROOT
|
||||||
@ -157,6 +164,10 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%ghost %verify(not md5 size mtime) %config(noreplace,missingok) /etc/cryptotab
|
%ghost %verify(not md5 size mtime) %config(noreplace,missingok) /etc/cryptotab
|
||||||
/etc/init.d/boot.crypto
|
/etc/init.d/boot.crypto
|
||||||
/etc/init.d/boot.crypto-early
|
/etc/init.d/boot.crypto-early
|
||||||
|
%dir /lib/mkinitrd
|
||||||
|
%dir /lib/mkinitrd/scripts
|
||||||
|
/lib/mkinitrd/scripts/setup-luks.sh
|
||||||
|
/lib/mkinitrd/scripts/boot-luks.sh
|
||||||
/sbin/cryptsetup
|
/sbin/cryptsetup
|
||||||
/sbin/hashalot
|
/sbin/hashalot
|
||||||
%_mandir/man1/hashalot.1.gz
|
%_mandir/man1/hashalot.1.gz
|
||||||
@ -173,6 +184,10 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%{_libdir}/libcryptsetup.so
|
%{_libdir}/libcryptsetup.so
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Jul 23 2008 hare@suse.de
|
||||||
|
- Include mkinitrd scriptlets.
|
||||||
|
* Wed Jul 23 2008 mkoenig@suse.de
|
||||||
|
- use /sbin/udevadm settle instead of /sbin/udevsettle [bnc#404875]
|
||||||
* Tue May 06 2008 mkoenig@suse.de
|
* Tue May 06 2008 mkoenig@suse.de
|
||||||
- load loop module in boot.crypto-early as it might be needed.
|
- load loop module in boot.crypto-early as it might be needed.
|
||||||
It is previously initially loaded by boot.localfs.
|
It is previously initially loaded by boot.localfs.
|
||||||
|
30
mkinitrd-boot.sh
Normal file
30
mkinitrd-boot.sh
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#%stage: crypto
|
||||||
|
#%programs: /sbin/cryptsetup
|
||||||
|
#%udevmodules: dm-crypt $cryptmodules
|
||||||
|
#%if: "$root_luks" -o "$luks"
|
||||||
|
#
|
||||||
|
##### LUKS (comfortable disk encryption)
|
||||||
|
##
|
||||||
|
## This activates a LUKS encrypted partition.
|
||||||
|
##
|
||||||
|
## Command line parameters
|
||||||
|
## -----------------------
|
||||||
|
##
|
||||||
|
## luks a list of luks devices (e.g. xxx)
|
||||||
|
## luks_xxx the luks device (e.g. /dev/sda)
|
||||||
|
##
|
||||||
|
|
||||||
|
case $luks_lang in
|
||||||
|
en*)
|
||||||
|
/* We only support english keyboard layout */
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Only english keyboard layout supported."
|
||||||
|
echo "Please ensure that the password is typed correctly."
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
for curluks in $luks; do
|
||||||
|
/sbin/cryptsetup luksOpen $(eval echo \$luks_${curluks}) $curluks
|
||||||
|
done
|
56
mkinitrd-setup.sh
Normal file
56
mkinitrd-setup.sh
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
#%stage: crypto
|
||||||
|
#
|
||||||
|
|
||||||
|
if [ -x /sbin/cryptsetup -a -x /sbin/dmsetup ] ; then
|
||||||
|
luks_blockdev=
|
||||||
|
# bd holds the device we see the decrypted LUKS partition as
|
||||||
|
for bd in $blockdev ; do
|
||||||
|
luks_name=
|
||||||
|
update_blockdev $bd
|
||||||
|
luks_blockmajor=$blockmajor
|
||||||
|
luks_blockminor=$blockminor
|
||||||
|
# luksbd holds the device, LUKS is running on
|
||||||
|
for luksbd in $(dm_resolvedeps $bd); do # should only be one for luks
|
||||||
|
[ $? -eq 0 ] || return 1
|
||||||
|
update_blockdev $luksbd
|
||||||
|
if /sbin/cryptsetup isLuks $luksbd 2>/dev/null; then
|
||||||
|
root_luks=1
|
||||||
|
tmp_root_dm=1 # luks needs dm
|
||||||
|
|
||||||
|
luks_name="$(dmsetup -c info -o name --noheadings -j $luks_blockmajor -m $luks_blockminor)"
|
||||||
|
eval luks_${luks_name}=$(beautify_blockdev ${luksbd})
|
||||||
|
save_var luks_${luks_name}
|
||||||
|
|
||||||
|
luks="$luks $luks_name"
|
||||||
|
luks_blockdev="$luks_blockdev $luksbd"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
if [ ! "$luks_name" ]; then # no luks found
|
||||||
|
luks_blockdev="$luks_blockdev $bd"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
blockdev="$luks_blockdev"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$root_luks" ]; then
|
||||||
|
case $LANG in
|
||||||
|
en*)
|
||||||
|
/* We only support english keyboard layout currently */
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Only english keyboard layout supported."
|
||||||
|
echo "Please ensure that the password is typed correctly."
|
||||||
|
luks_lang=$LANG
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
for m in $(cat /proc/crypto | grep module | sed 's/^module .*: \(.*\)$/\1/'); do
|
||||||
|
cryptmodules="$cryptmodules $m"
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
save_var root_luks # do we have luks?
|
||||||
|
save_var luks # which names do the luks devices have?
|
||||||
|
save_var cryptmodules # required kernel modules for crypto setup
|
||||||
|
save_var luks_lang # original language settings
|
Loading…
Reference in New Issue
Block a user