summaryrefslogtreecommitdiff
path: root/package/cryptsetup/patches/patch-lib_setup_c
diff options
context:
space:
mode:
Diffstat (limited to 'package/cryptsetup/patches/patch-lib_setup_c')
-rw-r--r--package/cryptsetup/patches/patch-lib_setup_c17
1 files changed, 17 insertions, 0 deletions
diff --git a/package/cryptsetup/patches/patch-lib_setup_c b/package/cryptsetup/patches/patch-lib_setup_c
new file mode 100644
index 000000000..97b356f68
--- /dev/null
+++ b/package/cryptsetup/patches/patch-lib_setup_c
@@ -0,0 +1,17 @@
+already added in svn upstream
+--- cryptsetup-1.0.7.orig/lib/setup.c 2009-07-22 13:12:44.000000000 +0200
++++ cryptsetup-1.0.7/lib/setup.c 2009-08-22 15:10:32.000000000 +0200
+@@ -542,7 +542,12 @@ static int __crypt_luks_open(int arg, st
+ start:
+ mk=NULL;
+
+- if(get_key(prompt, &password, &passwordLen, 0, options->key_file, options->passphrase_fd, options->timeout, options->flags))
++ if(options->passphrase) {
++ passwordLen = strlen(options->passphrase);
++ password = safe_alloc(passwordLen + 1);
++ strncpy(password, options->passphrase, passwordLen + 1);
++ tries = 0;
++ } else if(get_key(prompt, &password, &passwordLen, 0, options->key_file, options->passphrase_fd, options->timeout, options->flags))
+ tries--;
+ else
+ tries = 0;