]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/Python/Rsa2048Sha256Sign/Rsa2048Sha256GenerateKeys.py
BaseTools: skip updating temporary variable.
[mirror_edk2.git] / BaseTools / Source / Python / Rsa2048Sha256Sign / Rsa2048Sha256GenerateKeys.py
index 2dd6c201683334cb6a82b28f75bf16d249e7172d..95a636966c5932050c87d202d24810e79cae85e8 100644 (file)
@@ -64,6 +64,8 @@ if __name__ == '__main__':
   try:\r
     OpenSslPath = os.environ['OPENSSL_PATH']\r
     OpenSslCommand = os.path.join(OpenSslPath, OpenSslCommand)\r
+    if ' ' in OpenSslCommand:\r
+      OpenSslCommand = '"' + OpenSslCommand + '"'\r
   except:\r
     pass\r
 \r
@@ -98,7 +100,7 @@ if __name__ == '__main__':
       #\r
       # Generate private key and save it to output file in a PEM file format\r
       #\r
-      Process = subprocess.Popen('%s genrsa -out %s 2048' % (OpenSslCommand, Item.name), stdout=subprocess.PIPE, stderr=subprocess.PIPE)\r
+      Process = subprocess.Popen('%s genrsa -out %s 2048' % (OpenSslCommand, Item.name), stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)\r
       Process.communicate()\r
       if Process.returncode <> 0:\r
         print 'ERROR: RSA 2048 key generation failed'\r
@@ -120,7 +122,7 @@ if __name__ == '__main__':
     #\r
     # Extract public key from private key into STDOUT\r
     #\r
-    Process = subprocess.Popen('%s rsa -in %s -modulus -noout' % (OpenSslCommand, Item), stdout=subprocess.PIPE, stderr=subprocess.PIPE)\r
+    Process = subprocess.Popen('%s rsa -in %s -modulus -noout' % (OpenSslCommand, Item), stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)\r
     PublicKeyHexString = Process.communicate()[0].split('=')[1].strip()\r
     if Process.returncode <> 0:\r
       print 'ERROR: Unable to extract public key from private key'\r
@@ -132,7 +134,7 @@ if __name__ == '__main__':
     #\r
     # Generate SHA 256 hash of RSA 2048 bit public key into STDOUT\r
     #\r
-    Process = subprocess.Popen('%s dgst -sha256 -binary' % (OpenSslCommand), stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)\r
+    Process = subprocess.Popen('%s dgst -sha256 -binary' % (OpenSslCommand), stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)\r
     Process.stdin.write (PublicKey)\r
     PublicKeyHash = PublicKeyHash + Process.communicate()[0]\r
     if Process.returncode <> 0:\r