Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 163583 Details for
Bug 189901
sys-fs/cryptsetup - Ability to find the key device [PATCH] in dm-crypt-start.sh
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
new patch w/ problem solved
1.0.4-dm-crypt-start.sh_auto.patch (text/plain), 4.45 KB, created by
Nelson
on 2008-08-23 00:16:09 UTC
(
hide
)
Description:
new patch w/ problem solved
Filename:
MIME Type:
Creator:
Nelson
Created:
2008-08-23 00:16:09 UTC
Size:
4.45 KB
patch
obsolete
>--- 1.0.4-dm-crypt-start.sh 2008-08-23 00:24:59.000000000 +0000 >+++ dm-crypt-start.sh-OLDGOOD 2008-08-23 00:05:35.000000000 +0000 >@@ -54,26 +54,79 @@ > case "$mode" in > gpg|reg) > # handle key on removable device >- if [ -n "$remdev" ]; then >- # temp directory to mount removable device >- local mntrem=/mnt/remdev >- local c=0 ans >- for (( i = 0 ; i < 10 ; i++ )) >- do >- [ ! -d "$mntrem" ] && mkdir -p ${mntrem} 2>/dev/null >/dev/null >+ local mntrem=/mnt/remdev c=0 ans i devices >+ [ ! -d "$mntrem" ] && mkdir -p ${mntrem} 2>/dev/null >/dev/null >+ for (( i = 0 ; i < 10 ; i++ )); do >+ if [ -f "${key}" ]; then >+ break; >+ elif [ -z "$remdev" ]; then >+ ebegin " Guessing the key device" >+ # usb keychain/storage >+ devices="/dev/sd*" >+ # ide >+ devices="${devices} /dev/hd*" >+ # usb using the 'usb block driver' >+ devices="${devices} /dev/ubd* /dev/ubd/*" >+ # cdrom's >+ devices="${devices} /dev/cdroms/* /dev/ide/cd/* /dev/sr*" >+ for x in ${devices}; do >+ if [ -b "${x}" ]; then >+ mount -r -t auto ${x} ${mntrem} >/dev/null 2>&1 >+ if [ "$?" = '0' ]; then >+ if [ -f "${mntrem}/${key}" ]; then >+ key="${mntrem}/${key}" >+ remdev=${x} >+ break 2; >+ fi >+ else >+ umount ${mntrem} >/dev/null 2>&1 >+ fi >+ fi >+ done >+ einfo "Removable device for ${target} not present." >+ echo -n -e " ${green}*${off} Auto search (${green}a${off}), quit (${red}q${off}) or input device name:" >/dev/console >+ read -t 25 ans </dev/console; [ "$?" != '0' ] && continue >+ echo >/dev/console >+ case ${ans} in >+ a) >+ remdev=''; i=$((i-1)); sleep 8; continue >+ ;; >+ q) >+ return >+ ;; >+ '') >+ i=$((i-1)); sleep 8; continue >+ ;; >+ *) >+ remdev=${ans}; i=0; sleep 8 >+ ;; >+ esac >+ else > if mount -n -o ro ${remdev} ${mntrem} 2>/dev/null >/dev/null ; then > sleep 2 > # keyfile exists? >- if [ ! -e "${mntrem}${key}" ]; then >+ if [ ! -e "${mntrem}/${key}" ]; then > umount -n ${mntrem} 2>/dev/null >/dev/null >- rmdir ${mntrem} 2>/dev/null >/dev/null >- einfo "Cannot find ${key} on removable media." >- echo -n -e " ${green}*${off} Abort?(${red}yes${off}/${green}no${off})" >/dev/console >- read ans </dev/console >+ einfo "Cannot find ${key} on removable media ${remdev}." >+ echo -n -e " ${green}*${off} Auto search (${green}a${off}), quit (${red}q${off}) or input device name:" >/dev/console >+ read -t 25 ans </dev/console; [ "$?" != '0' ] && continue > echo >/dev/console >- [ "$ans" != "yes" ] && { i=0; c=0; } || return >+ case "${ans}" in >+ a) >+ unset remdev; i=$((i-2)); c=0; sleep 8; continue >+ ;; >+ q) >+ return >+ ;; >+ '') >+ i=0; c=0; sleep 8; continue >+ ;; >+ *) >+ remdev=${ans}; i=0; c=0; continue >+ ;; >+ esac > else >- key="${mntrem}${key}" >+ key="${mntrem}/${key}" > break > fi > else >@@ -82,21 +135,33 @@ > sleep 2 > # let user abort > if [ "$i" -eq 9 ]; then >- rmdir ${mntrem} 2>/dev/null >/dev/null >- einfo "Removable device for ${target} not present." >- echo -n -e " ${green}*${off} Abort?(${red}yes${off}/${green}no${off})" >/dev/console >- read ans </dev/console >- echo >/dev/console >- [ "$ans" != "yes" ] && { i=0; c=0; } || return >+ einfo "Removable device ${remdev} for ${target} not present." >+ echo -n -e " ${green}*${off} Auto search (${green}a${off}), quit (${red}q${off}) or input device name:" >/dev/console >+ read -t 25 ans </dev/console; [ "$?" != '0' ] && continue >+ echo >/dev/console >+ case ${ans} in >+ a) >+ unset remdev; i=$((i-2)); c=0; sleep 8; continue >+ ;; >+ q) >+ return >+ ;; >+ '') >+ i=0; c=0; sleep 8 >+ ;; >+ *) >+ remdev=${ans}; i=0; c=0; sleep 8 >+ ;; >+ esac > fi > fi >- done >- else # keyfile ! on removable device >- if [ ! -e "$key" ]; then >- ewarn "${source} will not be decrypted ..." >- einfo "Reason: keyfile ${key} does not exist." >- return > fi >+ done >+ # keyfile ! on removable device >+ if [ ! -e "$key" ]; then >+ ewarn "${source} will not be decrypted ..." >+ einfo "Reason: keyfile ${key} does not exist." >+ return > fi > ;; > *)
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 189901
:
128926
| 163583 |
163585