makeself icon indicating copy to clipboard operation
makeself copied to clipboard

makeself --ssl-pass-src from header unusable

Open arrjay opened this issue 5 years ago • 1 comments

makeself's header checks if it can use openssl's password source flags by checking against $ENCRYPT, it should check against $COMPRESS to see if openssl was used to encrypt the archive here. other uses of the $ENCRYPT variable are also suspect.

arrjay avatar Nov 24 '19 06:11 arrjay

this diff from a copy of the makeself header allows the argument to work:

diff --git a/support/ms/makeself-header.sh b/support/ms/makeself-header.sh
index 49bd7ea..f224c22 100755
--- a/support/ms/makeself-header.sh
+++ b/support/ms/makeself-header.sh
@@ -251,9 +251,9 @@ MS_Check()
 MS_Decompress()
 {
     if test x"\$decrypt_cmd" != x""; then
-        { eval "\$decrypt_cmd" || echo " ... Decryption failed." >&2; } | eval "$GUNZIP_CMD"
+        { eval "\$decrypt_cmd" || echo " ... Decryption failed." >&2; } | eval "$GUNZIP_CMD \$decrypt_opts"
     else
-        eval "$GUNZIP_CMD"
+        eval "$GUNZIP_CMD \$decrypt_opts"
     fi
     
     if test \$? -ne 0; then
@@ -417,11 +417,11 @@ EOLSM
        shift
        ;;
     --ssl-pass-src)
-       if test x"$ENCRYPT" != x"openssl"; then
+       if test x"$COMPRESS" != x"openssl"; then
            echo "Invalid option --ssl-pass-src: \$0 was not encrypted with OpenSSL!" >&2
            exit 1
        fi
-       decrypt_cmd="\$decrypt_cmd -pass \$2"
+       decrypt_opts="-pass \$2"
        if ! shift 2; then MS_Help; exit 1; fi
        ;;
     --)

arrjay avatar Nov 24 '19 07:11 arrjay