From 7e9a975296012ac62fe0d87f65d1b4642b5917dc Mon Sep 17 00:00:00 2001 From: Rob Loach Date: Fri, 8 Jun 2012 15:38:27 -0400 Subject: [PATCH] Add Composer support to phpseclib --- .gitignore | 3 +++ phpseclib/Crypt/AES.php | 6 ++++-- phpseclib/Crypt/TripleDES.php | 6 ++++-- phpseclib/File/X509.php | 6 ++++-- phpseclib/Net/SFTP.php | 6 ++++-- phpseclib/Net/SSH1.php | 22 ++++++++++++++++------ phpseclib/Net/SSH2.php | 23 +++++++++++++++++------ 7 files changed, 52 insertions(+), 20 deletions(-) diff --git a/.gitignore b/.gitignore index b25c15b8..878e83ec 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,4 @@ *~ +vendor +composer.json +composer.lock diff --git a/phpseclib/Crypt/AES.php b/phpseclib/Crypt/AES.php index 94a08423..74383cce 100644 --- a/phpseclib/Crypt/AES.php +++ b/phpseclib/Crypt/AES.php @@ -66,7 +66,9 @@ /** * Include Crypt_Rijndael */ -require_once 'Rijndael.php'; +if (!class_exists('Crypt_Rijndael')) { + require_once 'Rijndael.php'; +} /**#@+ * @access public @@ -606,4 +608,4 @@ class Crypt_AES extends Crypt_Rijndael { } // vim: ts=4:sw=4:et: -// vim6: fdl=1: \ No newline at end of file +// vim6: fdl=1: diff --git a/phpseclib/Crypt/TripleDES.php b/phpseclib/Crypt/TripleDES.php index 9f4757ec..bbabf169 100644 --- a/phpseclib/Crypt/TripleDES.php +++ b/phpseclib/Crypt/TripleDES.php @@ -57,7 +57,9 @@ /** * Include Crypt_DES */ -require_once('DES.php'); +if (!class_exists('Crypt_DES')) { + require_once('DES.php'); +} /** * Encrypt / decrypt using inner chaining @@ -1055,4 +1057,4 @@ class Crypt_TripleDES { } // vim: ts=4:sw=4:et: -// vim6: fdl=1: \ No newline at end of file +// vim6: fdl=1: diff --git a/phpseclib/File/X509.php b/phpseclib/File/X509.php index df6e40cd..6ce5c263 100644 --- a/phpseclib/File/X509.php +++ b/phpseclib/File/X509.php @@ -47,7 +47,9 @@ /** * Include File_ASN1 */ -require_once('File/ASN1.php'); +if (!class_exists('File_ASN1')) { + require_once('File/ASN1.php'); +} /** * Flag to only accept signatures signed by certificate authorities @@ -2482,4 +2484,4 @@ class File_X509 { $this->removeDNProp('id-at-commonName'); $this->setDNProp('id-at-commonName', $this->domains[0]); } -} \ No newline at end of file +} diff --git a/phpseclib/Net/SFTP.php b/phpseclib/Net/SFTP.php index 6406cc0f..31330086 100644 --- a/phpseclib/Net/SFTP.php +++ b/phpseclib/Net/SFTP.php @@ -57,7 +57,9 @@ /** * Include Net_SSH2 */ -require_once('Net/SSH2.php'); +if (!class_exists('Net_SSH2')) { + require_once('Net/SSH2.php'); +} /**#@+ * @access public @@ -1956,4 +1958,4 @@ class Net_SFTP extends Net_SSH2 { $this->pwd = false; parent::_disconnect($reason); } -} \ No newline at end of file +} diff --git a/phpseclib/Net/SSH1.php b/phpseclib/Net/SSH1.php index 39ebd3bd..efe23fe2 100644 --- a/phpseclib/Net/SSH1.php +++ b/phpseclib/Net/SSH1.php @@ -71,7 +71,9 @@ * * Used to do RSA encryption. */ -require_once('Math/BigInteger.php'); +if (!class_exists('Math_BigInteger')) { + require_once('Math/BigInteger.php'); +} /** * Include Crypt_Null @@ -81,22 +83,30 @@ require_once('Math/BigInteger.php'); /** * Include Crypt_DES */ -require_once('Crypt/DES.php'); +if (!class_exists('Crypt_DES')) { + require_once('Crypt/DES.php'); +} /** * Include Crypt_TripleDES */ -require_once('Crypt/TripleDES.php'); +if (!class_exists('Crypt_TripleDES')) { + require_once('Crypt/TripleDES.php'); +} /** * Include Crypt_RC4 */ -require_once('Crypt/RC4.php'); +if (!class_exists('Crypt_RC4')) { + require_once('Crypt/RC4.php'); +} /** * Include Crypt_Random */ -require_once('Crypt/Random.php'); +if (!class_exists('Crypt_Random')) { + require_once('Crypt/Random.php'); +} /**#@+ * Encryption Methods @@ -1405,4 +1415,4 @@ class Net_SSH1 { return rtrim($this->server_identification); } } -?> \ No newline at end of file +?> diff --git a/phpseclib/Net/SSH2.php b/phpseclib/Net/SSH2.php index ba5fddbf..2d288cb1 100644 --- a/phpseclib/Net/SSH2.php +++ b/phpseclib/Net/SSH2.php @@ -73,32 +73,43 @@ * * Used to do Diffie-Hellman key exchange and DSA/RSA signature verification. */ -require_once('Math/BigInteger.php'); +if (!class_exists('Math_BigInteger')) { + require_once('Math/BigInteger.php'); +} /** * Include Crypt_Random */ -require_once('Crypt/Random.php'); +if (!class_exists('Crypt_Random')) { + require_once('Crypt/Random.php'); +} /** * Include Crypt_Hash */ -require_once('Crypt/Hash.php'); +if (!class_exists('Crypt_Hash')) { + require_once('Crypt/Hash.php'); +} /** * Include Crypt_TripleDES */ -require_once('Crypt/TripleDES.php'); +if (!class_exists('Crypt_TripleDES')) { + require_once('Crypt/TripleDES.php'); +} /** * Include Crypt_RC4 */ +if (!class_exists('Crypt_RC4')) { require_once('Crypt/RC4.php'); /** * Include Crypt_AES */ -require_once('Crypt/AES.php'); +if (!class_exists('Crypt_AES')) { + require_once('Crypt/AES.php'); +} /**#@+ * Execution Bitmap Masks @@ -2831,4 +2842,4 @@ class Net_SSH2 { return $this->server_public_host_key; } -} \ No newline at end of file +}