diff options
Diffstat (limited to 'package')
-rw-r--r-- | package/cryptsetup/Makefile | 13 | ||||
-rw-r--r-- | package/cryptsetup/patches/patch-lib_setup_c | 17 |
2 files changed, 30 insertions, 0 deletions
diff --git a/package/cryptsetup/Makefile b/package/cryptsetup/Makefile index f609c9a4a..76fdc98e4 100644 --- a/package/cryptsetup/Makefile +++ b/package/cryptsetup/Makefile @@ -24,6 +24,19 @@ CONFIGURE_ARGS+= --disable-static BUILD_STYLE:= auto INSTALL_STYLE:= auto +# hackish way to although build the static libraries for cryptinit +pre-configure: + (cd ${WRKBUILD}; \ + env ${CONFIGURE_ENV} \ + ./configure --enable-static \ + --build=${GNU_HOST_NAME} \ + --host=${GNU_TARGET_NAME} \ + --target=${GNU_TARGET_NAME} \ + ); + $(MAKE) -C $(WRKBUILD) CC="$(TARGET_CC)" + $(MAKE) -C $(WRKBUILD) CC="$(TARGET_CC)" DESTDIR='${WRKINST}' install + $(MAKE) -C $(WRKBUILD) CC="$(TARGET_CC)" clean + post-install: ${INSTALL_DIR} ${IDIR_CRYPTSETUP}/usr/sbin ${IDIR_CRYPTSETUP}/usr/lib ${CP} ${WRKINST}/usr/lib/libcryptsetup.so.* \ 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; |