Commit Graph

2851 Commits

Author SHA1 Message Date
terrafrost
d9b8341e9c Merge branch '2.0' into 3.0 2021-01-07 20:24:15 -06:00
terrafrost
649609d4b2 Merge branch '1.0' into 2.0 2021-01-07 20:21:59 -06:00
terrafrost
9de5f3f8ed X509: always parse the first cert of a bundle 2021-01-07 20:21:27 -06:00
terrafrost
e14e9e92ca EC: use the correct case up front 2021-01-07 19:35:34 -06:00
Bastien Miclo
cce21f077f
Allow to pass end date as DateTime 2021-01-07 22:05:17 +01:00
Bastien Miclo
0be984fd80
Fix encodeDER() PHPDoc 2021-01-06 23:57:47 +01:00
Bastien Miclo
3d35690a0a
Allow to extend X509 extensions 2021-01-06 23:25:23 +01:00
terrafrost
7b7d254a6c rm docblock templates 2020-12-30 09:08:05 -06:00
terrafrost
b14caee559 Merge branch '2.0' into 3.0 2020-12-30 05:25:02 -06:00
terrafrost
d2cadfd329 Merge branch '1.0' into 2.0 2020-12-30 05:24:54 -06:00
terrafrost
a19b5b4ca8 update how @internal phpdoc attributes are used 2020-12-30 05:05:54 -06:00
terrafrost
7a9418e4e0 SSH2: suppress errors on stream_select calls 2020-12-23 10:39:00 -06:00
Bastien Miclo
ba89cdbf0f Support DateTimeImmutable 2020-12-23 08:16:22 -06:00
Bastien Miclo
224abbc1f9 Show array-failure in load() method 2020-12-23 07:49:08 -06:00
terrafrost
02fa3b142e EC/PKCS1: throw exception when trying to load non-strings 2020-12-23 07:06:04 -06:00
William Desportes
1f66009c1b
Fix a Doctum 5.3.0-dev phpdoc reported error 2020-12-19 21:28:29 +01:00
terrafrost
f5d7c06264 Merge branch '2.0' into 3.0 2020-12-19 01:12:16 -06:00
terrafrost
c680c604c8 Merge branch '1.0' into 2.0 2020-12-19 01:07:08 -06:00
terrafrost
c21147a5bd SFTP: clean up real time logging 2020-12-19 01:05:36 -06:00
terrafrost
31c5e50902 SFTP: change where stat cache is being cleared for uploads 2020-12-19 01:02:06 -06:00
terrafrost
08478feee7 SFTP: resuming uploads didn't work 2020-12-18 17:31:55 -06:00
terrafrost
20852adf78 SSH2/Stream: stream_select needs to be able to access $fsock 2020-12-18 16:12:14 -06:00
terrafrost
99e8d7b822 PKCS8: fix E_WARNING 2020-12-17 08:13:56 -06:00
terrafrost
91ab47e4a5 Merge branch 'keepalive-2.0' into 2.0 2020-12-16 23:14:58 -06:00
terrafrost
2b5e205aec Merge branch 'keepalive-1.0' into 1.0 2020-12-16 23:14:49 -06:00
terrafrost
47e1ce60b3 SSH2: syntax error 2020-12-16 09:13:05 -06:00
terrafrost
0399faa86b SSH2: syntax error 2020-12-16 09:10:35 -06:00
terrafrost
32bfbcd7d2 Merge branch 'keepalive-2.0' into keepalive-3.0 2020-12-16 08:36:43 -06:00
terrafrost
07a7c19407 Merge branch 'keepalive-1.0' into keepalive-2.0 2020-12-16 08:27:50 -06:00
terrafrost
8d567cdf29 SSH2: keepalive tweak 2020-12-16 08:26:03 -06:00
terrafrost
0ddcff753f Merge branch 'keepalive-2.0' into keepalive-3.0 2020-12-15 23:52:53 -06:00
terrafrost
43b2708254 Merge branch 'keepalive-1.0' into keepalive-2.0 2020-12-15 23:36:42 -06:00
terrafrost
f0501ff72b SSH2: get_binary_packet() doesn't know about channel type 2020-12-15 23:11:54 -06:00
terrafrost
a4af48c7a6 Merge branch 'keepalive-2.0' into keepalive-3.0 2020-12-15 08:52:43 -06:00
terrafrost
d904f08a46 SSH2: last merge should have used microtime(true) but didn't 2020-12-15 08:43:21 -06:00
terrafrost
a35535e9c6 Merge branch 'keepalive-1.0' into keepalive-2.0 2020-12-15 08:39:38 -06:00
terrafrost
194e642448 SSH2: handle keepalive@openssh.com packets 2020-12-15 08:25:42 -06:00
terrafrost
e4bf7b111a Merge branch '2.0' into 3.0 2020-12-12 19:22:36 -06:00
terrafrost
5701295017 Merge branch '1.0' into 2.0 2020-12-12 17:13:41 -06:00
terrafrost
266f16816a enable unit tests for PHP 8 / PHPUnit 9 2020-12-12 15:11:04 -06:00
terrafrost
c08683402e Merge branch '2.0' into 3.0 2020-12-07 08:04:12 -06:00
terrafrost
07e1160108 Merge branch '1.0' into 2.0 2020-12-07 08:01:58 -06:00
terrafrost
ee4af462b6 SSH2: end connection faster for algorithm mismatch 2020-12-07 08:00:44 -06:00
terrafrost
afca3030c0 Merge branch '2.0' into 3.0 2020-11-26 21:09:21 -06:00
terrafrost
1ec3efa04b Merge branch '1.0' into 2.0 2020-11-26 21:09:17 -06:00
terrafrost
0b20aff6ff SFTP: CS adjustments 2020-11-26 21:08:49 -06:00
terrafrost
b310f694ef Merge branch '2.0' into 3.0 2020-11-26 19:10:48 -06:00
terrafrost
bf03b0302b Merge branch '1.0' into 2.0 2020-11-26 19:10:39 -06:00
Adrian
9547587cb7 SFTP: add stream to get method 2020-11-26 18:56:02 -06:00
terrafrost
e69b79eba7 Merge branch 'codelts' into 3.0 2020-11-21 10:51:30 -06:00
terrafrost
7e337c9bd7 Merge branch '2.0' into 3.0 2020-11-01 09:31:17 -06:00
terrafrost
e18880009b Merge branch '1.0' into 2.0 2020-10-31 15:15:06 -05:00
Thomas A. Hirsch
b2ae60f0a9 $progressCallback should be called after a specific amount of data has been received and not, if its just requested, as the requested packets might be more as the available and received data. 2020-10-31 15:05:05 -05:00
terrafrost
336fe5c8f8 Merge branch '2.0' into 3.0 2020-10-29 21:46:30 -05:00
terrafrost
da96fbd212 Merge branch '1.0' into 2.0 2020-10-29 21:35:41 -05:00
terrafrost
00c9edc058 X509: don't attempt to parse multi-cert PEMs 2020-10-29 21:30:01 -05:00
terrafrost
e81b31948b Merge branch '1.0' into 2.0 2020-09-28 06:20:16 -05:00
terrafrost
96c4c3bc58 SSH2: add setKeepAlive() method 2020-09-28 06:17:49 -05:00
terrafrost
5983df848c EC: add support for PKCS1 private keys with separate parameters 2020-09-19 08:36:09 -05:00
William Desportes
5711e7fbe4
Fix phpdoc issues reported by Doctum 2020-09-12 10:14:54 +02:00
William Desportes
480af6b980
Merge branch '2.0' into 3.0 2020-09-09 10:46:22 +02:00
William Desportes
05f6467b1d
Merge branch '1.0' into 2.0 2020-09-09 09:56:23 +02:00
William Desportes
2ae683479a
Fix phpdoc errors 2020-09-09 09:43:26 +02:00
terrafrost
fc4a1b0083 Merge branch '2.0' into 3.0 2020-08-30 08:22:20 -05:00
terrafrost
604b94d011 Merge branch '1.0' into 2.0 2020-08-30 08:22:13 -05:00
terrafrost
f4e017f383 SFTP: "fix" rare resource not closed error 2020-08-30 08:21:50 -05:00
terrafrost
dcc85b795d Merge branch '2.0' into 3.0 2020-08-17 07:30:46 -05:00
terrafrost
f0710fc77e Merge branch '1.0' into 2.0 2020-08-17 07:29:12 -05:00
terrafrost
ded9b3043f SSH2: suppress 'broken pipe' errors 2020-08-17 07:28:17 -05:00
terrafrost
8f62b798ef Merge branch '2.0' into 3.0 2020-08-09 11:00:57 -05:00
terrafrost
ed20bba5e7 Merge branch '1.0' into 2.0 2020-08-09 11:00:49 -05:00
terrafrost
239bc63618 SSH2: uploads on low speed networks could get in infinite loop 2020-08-09 11:00:12 -05:00
terrafrost
0747be3d27 Merge branch '1.0' into 2.0 2020-08-01 04:06:57 -05:00
terrafrost
a019cf3f33
Merge pull request #1503 from VincentLanglet/default
_parseKey should return false by default
2020-08-01 04:05:17 -05:00
terrafrost
92a67a03aa Merge branch '2.0' into 3.0 2020-07-31 21:27:38 -05:00
terrafrost
5369b86808 Merge branch '1.0' into 2.0 2020-07-31 08:06:58 -05:00
terrafrost
40b4f1d557 SSH2: when building algo list look at if crypto engine is set 2020-07-31 08:05:31 -05:00
terrafrost
5fbdb8b582 Merge branch '2.0' into 3.0 2020-07-31 04:11:26 -05:00
terrafrost
4eb477051c Merge branch '1.0' into 2.0 2020-07-31 02:50:00 -05:00
terrafrost
c7d7b36018 SSH2: don't try to login as none auth method for CoreFTP server 2020-07-31 02:49:21 -05:00
terrafrost
abe8f6aab8 Merge branch '2.0' into 3.0 2020-07-30 22:59:13 -05:00
terrafrost
82406869fb Merge branch '1.0' into 2.0 2020-07-30 22:58:56 -05:00
terrafrost
ea653e1b01 SFTP: add enableDatePreservation() / disableDatePreservation() 2020-07-30 09:12:23 -05:00
Vincent Langlet
05a564c136 Return false by default 2020-07-30 15:42:02 +02:00
terrafrost
478672607c PKCS8: fix E_NOTICE 2020-07-19 22:40:42 -05:00
terrafrost
8af870963a Merge branch '2.0' into 3.0 2020-07-17 07:55:11 -05:00
terrafrost
64708aed3b Merge branch '1.0' into 2.0 2020-07-17 07:54:02 -05:00
terrafrost
d077c7b296 X509: really looong base64 encoded strings broke extractBER() 2020-07-17 07:53:05 -05:00
terrafrost
e2fa9f3925 Revert "..."
This reverts commit 827607575a.
2020-07-08 08:48:48 -05:00
terrafrost
9e81c7e257 Merge branch '2.0' into 3.0 2020-07-07 23:47:47 -05:00
terrafrost
c89cd789f4 Merge branch '1.0' into 2.0 2020-07-07 23:47:41 -05:00
terrafrost
d8e39b0864 SFTP: change upload packet size from 4KB to 32KB 2020-07-07 23:47:17 -05:00
terrafrost
827607575a ... 2020-07-03 13:31:37 -05:00
terrafrost
844d7ab539 X509: getPublicKey() didn't work for SPKAC 2020-06-02 08:51:04 -05:00
terrafrost
97ab584c63 Merge branch '2.0' into 3.0 2020-05-31 12:22:45 -05:00
terrafrost
51f2a9386b Merge branch 'timeout-alt-2.0' into 2.0 2020-05-31 12:22:35 -05:00
terrafrost
c2ab2a4884 X509: publicKey wasn't being loaded for CSRs / SPKACs 2020-05-31 02:11:44 -05:00
terrafrost
cc3ad79058 Crypt/Base: create_function isn't needed for PHP >= 5.3.0 2020-05-29 08:34:40 -05:00
terrafrost
ee278f3062 Merge branch 'timeout-alt-1.0' into timeout-alt-2.0 2020-05-29 08:10:36 -05:00
terrafrost
9651d075e3 SSH2: timeout after 5s for channel closures 2020-05-29 08:10:03 -05:00
terrafrost
32acf235e8 SymmetricKey: rm unused line 2020-05-16 13:19:24 -05:00
terrafrost
a82dc8e009 SymmetricKey: ECB doesn't use an IV either 2020-05-15 07:53:14 -05:00
terrafrost
f780640ecf move more common elements to StreamCipher class 2020-05-12 22:03:06 -05:00
terrafrost
995bf77315 SSH2: rm format_log_helper method 2020-05-12 08:35:45 -05:00
terrafrost
cc45f18cb8 stream ciphers don't use IVs 2020-05-12 08:15:49 -05:00
terrafrost
ce6d28789a ChaCha20: rm unused 'use' statement 2020-05-12 07:00:38 -05:00
terrafrost
85d55164a6 Merge branch '2.0' into 3.0 2020-05-10 23:52:28 -05:00
terrafrost
ceaffa8fa9 Merge branch '1.0' into 2.0 2020-05-10 23:52:20 -05:00
terrafrost
ef9785d9c5 SFTP: if /path/to/file is a file then /path/to/file/whatever errors 2020-05-10 23:51:16 -05:00
terrafrost
3bce91c2cb Merge branch '2.0' into 3.0 2020-05-10 10:27:00 -05:00
terrafrost
f79b34f75a Merge branch '1.0' into 2.0 2020-05-10 10:26:53 -05:00
terrafrost
bcaa494af2 ANSI: fix "Number of elements can't be negative" error 2020-05-10 10:25:03 -05:00
terrafrost
4af7ca4c09 Merge branch '2.0' into 3.0 2020-05-01 21:36:02 -05:00
terrafrost
2a6fc5695c Merge branch '1.0' into 2.0 2020-05-01 21:35:53 -05:00
terrafrost
a07f5bc6a2 SFTP: realpath('') produced an error 2020-05-01 21:34:44 -05:00
terrafrost
3b99d23220 Merge branch '1.0' into 2.0 2020-04-28 22:07:45 -05:00
Simon Podlipsky
e29f5bda14 Fix return type hint of SSH2::read() 2020-04-28 22:07:39 -05:00
terrafrost
0b231cc53b RSA: rm ENCRYPTION_PKCS15_COMPAT mode 2020-04-19 15:10:38 -05:00
terrafrost
881fbd78ee Hash: add __toString() method 2020-04-19 09:19:27 -05:00
terrafrost
10ce0b9b21 PuTTY: comments weren't settable via toString() method 2020-04-18 10:44:15 -05:00
terrafrost
92d0cd837e PKCS8: add extractEncryptionAlgorithm() method 2020-04-17 22:51:03 -05:00
terrafrost
0f8486cc87 allow strinable objects to be loaded instead of just strings 2020-04-13 07:58:00 -05:00
terrafrost
94d3403ed3 getLoadedFormat() threw exception for loadFormat()-loaded keys 2020-04-08 06:15:46 -05:00
terrafrost
327a13d133 $key->getLoadedFormat didn't work on EC / DSA keys 2020-04-08 05:07:47 -05:00
terrafrost
ceff4cfbbc rm call_user_func() calls 2020-04-05 15:04:22 -05:00
terrafrost
d37dffdb81 SSH: use an anonymous function for logging callback 2020-04-05 10:29:57 -05:00
terrafrost
9c0ad2f1f4 SFTP: optimize call to parent login method for 2.0 branch 2020-04-04 12:49:56 -05:00
terrafrost
e02b93443c Merge branch '1.0' into 2.0 2020-04-04 12:49:41 -05:00
terrafrost
c301ddf38f SFTP: make it so extending SFTP class doesn't cause a segfault 2020-04-04 12:47:30 -05:00
terrafrost
e72c88cf16 Merge branch '1.0' into 2.0 2020-04-03 07:34:08 -05:00
Tyson Andre
41eb0d8012 Fix logic error reading random bytes from /dev/urandom
Fixes a bug introduced in c2be7e648

Previously, this would return those bytes if the number of bytes read
was **less than** the number of bytes this was trying to read.

In practice, I believe this would mean bytes from /dev/urandom would never
get used.  (Noticed when upgrading phpseclib)
2020-04-03 07:33:58 -05:00
terrafrost
542bb6cca1 Merge branch '2.0' into 3.0 2020-03-30 07:36:43 -05:00
terrafrost
fc87edce6e PKCS8: throw an exception when no ASN1 maps can be used 2020-03-30 00:19:45 -05:00
terrafrost
5d5ed4a449 RSA: fix for RSA PKCS1 public keys masquerading as public keys 2020-03-29 23:31:13 -05:00
terrafrost
7e67f882ee Merge branch '1.0-mkdir-mode-adjustment' into 2.0-mkdir-mode-adjustment 2020-03-28 18:05:49 -05:00
terrafrost
5e2951f83a SFTP: change the mode with a SETSTAT instead of MKDIR 2020-03-28 18:04:26 -05:00
terrafrost
ef04a176dd Merge branch '2.0' into 3.0 2020-03-09 20:02:17 -05:00
terrafrost
63a76e88a1 Merge branch '1.0' into 2.0 2020-03-09 19:49:37 -05:00
terrafrost
229f6af1ca SFTP: re-use SSH2 login method 2020-03-09 19:49:20 -05:00
terrafrost
0a6f457d14 Merge branch '3.0-speed-up-uploads' into 3.0 2020-03-07 22:21:48 -06:00
terrafrost
5f30f59d53 Merge branch '2.0-speed-up-uploads' into 2.0 2020-03-07 22:21:31 -06:00
terrafrost
69840093be Merge branch '1.0-speed-up-uploads' into 1.0 2020-03-07 22:21:21 -06:00
terrafrost
b1a1fb5a08 Merge branch '2.0' into 3.0 2020-03-07 21:36:06 -06:00
terrafrost
21c5aa3de3 Merge branch '1.0' into 2.0 2020-03-07 21:35:34 -06:00
terrafrost
95d189ca72 SSH2: try logging in with none as an auth method first 2020-03-07 21:34:38 -06:00
terrafrost
ddd5a08c5f SSH2: update identifier to 3.0 2020-03-07 21:19:00 -06:00
terrafrost
6e55470431 Merge branch '2.0' into 3.0 2020-03-02 10:57:07 -06:00
terrafrost
6f0e3d22d6 Merge branch '1.0' into 2.0 2020-03-02 10:34:06 -06:00
terrafrost
fc0832ae99 ASN1: fix for malformed ASN1 strings 2020-03-02 10:18:30 -06:00
terrafrost
053e856a47 Merge branch '2.0-speed-up-uploads' into 3.0-speed-up-uploads 2020-02-25 20:45:18 -06:00
terrafrost
a563ee6704 Merge branch '1.0-speed-up-uploads' into 2.0-speed-up-uploads 2020-02-25 20:42:32 -06:00
terrafrost
08e4096e7c SFTP: speed up uploads 2020-02-25 20:37:20 -06:00
terrafrost
8c8e805c73 Merge branch '2.0' into 3.0 2020-02-25 00:00:25 -06:00
terrafrost
c18159618e Merge branch '1.0' into 2.0 2020-02-24 22:16:50 -06:00
terrafrost
db6ce986f3 Revert "SFTP: don't buffer up download requests (PuTTY doesn't)"
This reverts commit 333e2e4c2b.
2020-02-24 22:14:28 -06:00
terrafrost
59a7b1166b SSH2: use RFC8332 auth even if host key algo isn't RSA 2020-02-24 19:43:32 -06:00
terrafrost
ee10846cac SSH2: more consistent exception handling 2020-02-24 18:16:31 -06:00
terrafrost
e8da444bb7 SFTP/Stream: expand private key support to more than just RSA 2020-02-22 22:21:19 -06:00
terrafrost
8dac275a03 SFTP: rm size() (we already have filesize()) 2020-02-11 23:25:04 -06:00
terrafrost
b95120c808 SFTP: change visibility of sortOptions for phpseclib2_compat 2020-02-11 06:29:21 -06:00
terrafrost
f8685c0577 SFTP: _get_sftp_packet() -> get_sftp_packet() 2020-02-10 21:09:22 -06:00
terrafrost
f44d39fb19 SFTP: rm permissions attribute 2020-02-10 21:05:00 -06:00
terrafrost
bbf80c878d rm SSH1 2020-02-04 06:15:55 -06:00
terrafrost
9f09f482ba Merge branch '2.0' into 3.0 2020-02-04 06:15:12 -06:00
terrafrost
40998159a0 Merge branch '1.0' into 2.0 2020-02-04 06:15:04 -06:00
terrafrost
6cb500d7c8 SSH1: typo 2020-02-04 06:14:40 -06:00
terrafrost
cacd08a768 Agent/Identity: ECDSA -> EC 2020-02-03 00:56:37 -06:00
terrafrost
7387d79a4f Merge branch '2.0' into 3.0 2020-02-01 22:50:28 -06:00
terrafrost
8a761b5265 Merge branch '1.0' into 2.0 2020-02-01 20:14:46 -06:00
terrafrost
c2be7e6480 return early if fread() response is bool(false) 2020-02-01 17:30:52 -06:00
terrafrost
d0856357ea SSH2: don't adjust ssh-ed25519 signatures 2020-01-19 08:05:55 -06:00
terrafrost
2b28c3814b Keys/PuTTY: better support RFC4716 keys 2020-01-19 02:09:39 -06:00
terrafrost
14c09f8527 throw exceptions for all private formats not supporting encryption 2020-01-18 22:53:35 -06:00
terrafrost
0afd386114 RSA: PuTTY public keys couldn't be saved 2020-01-18 22:12:00 -06:00
terrafrost
bed8be26d7 Keys/OpenSSH: throw an exception if you try to encrypt 2020-01-18 18:53:09 -06:00
terrafrost
0e1dff2be7 RSA: fix MSBLOB encoding error 2020-01-18 17:47:24 -06:00
terrafrost
6470d1c80e SSH2: @stream_select -> stream_select 2020-01-17 06:38:54 -06:00
terrafrost
cb87d1885b
Merge pull request #1444 from tomsommer/patch-2
Remove error suppression from stream_select()
2020-01-17 06:37:44 -06:00
terrafrost
500e3225a8 SSH2: logging enhancements 2020-01-17 06:06:01 -06:00
terrafrost
81152288f8 Merge branch '1.0' into 2.0 2020-01-17 06:05:12 -06:00
terrafrost
3f448d0904 ... 2020-01-17 05:54:42 -06:00
terrafrost
f1772cbf7a ... 2020-01-17 05:42:29 -06:00
terrafrost
0a1c10386a ... 2020-01-17 05:10:12 -06:00
terrafrost
b4bff90106 Merge branch '2.0' into 3.0 2020-01-17 04:09:49 -06:00
terrafrost
2b08c31fb7 Merge branch '1.0' into 2.0 2020-01-17 03:59:18 -06:00
terrafrost
88568b8020 SSH2: logging enhancements 2020-01-17 03:37:25 -06:00
Tom Sommer
40bd4192fc
Update SSH2.php 2020-01-17 09:41:45 +01:00
terrafrost
ef5e6a909f X509: fix PHP4 errors 2020-01-17 02:12:27 -06:00
Tom Sommer
e2841212cb
Remove error suppression from stream_select()
Suppressing errors from stream_select() makes debugging timeouts extremely hard.
2020-01-10 11:58:36 +01:00
terrafrost
61ffe1a147 SSH2: fix rare key exchange issue 2020-01-07 00:20:47 -06:00
terrafrost
3ba5902046 RSA / X509: misc fixes (mostly related to PSS) 2020-01-04 16:26:55 -06:00
terrafrost
299f7b554d X509: fix bitwise mask for PSS / PKCS1 RSA mode checking 2020-01-03 08:45:16 -06:00
terrafrost
c4e07725aa EC: don't call loadCurveByParams if params is null 2020-01-02 05:43:27 -06:00
terrafrost
a7b1d031bb visibility changes for phpseclib2_compat 2019-12-30 22:19:07 -06:00
terrafrost
be221d8b23 Merge branch '2.0' into 3.0 2019-12-25 17:49:03 -06:00
terrafrost
de4a60de9d Merge branch '1.0' into 2.0 2019-12-25 17:36:31 -06:00
terrafrost
333e2e4c2b SFTP: don't buffer up download requests (PuTTY doesn't) 2019-12-25 11:31:43 -06:00
terrafrost
0c8b6961e3 EC: fix PKCS8 Ed25519 private keys 2019-12-17 07:56:16 -06:00
terrafrost
f1d04b23db Merge branch '3.0' into phpseclib3 2019-11-23 01:55:36 -06:00
terrafrost
ea27295c8f SSH2: ssh-ed25519 keys didn't work 2019-11-23 00:58:12 -06:00
terrafrost
653dbd7f94 rename phpseclib/phpseclib to phpseclib/phpseclib3 for 3.0 branch 2019-11-21 19:38:03 -06:00
terrafrost
e3557220d7 SSH2: sodium_compat doesn't support memzero 2019-11-13 23:47:16 -06:00
terrafrost
8ad4743364 Merge branch '2.0' into 3.0 2019-11-02 12:44:34 -05:00
terrafrost
53dcc19441 Merge branch '1.0' into 2.0 2019-11-02 12:43:08 -05:00
terrafrost
a4ed6b80f3 SSH2: make window resizing behave more consistently with PuTTY 2019-11-02 12:42:34 -05:00
terrafrost
e7e563d0ce Merge branch '2.0' into 3.0 2019-10-20 13:45:06 -05:00
terrafrost
e36f9388cb Merge branch '1.0' into 2.0 2019-10-20 13:27:24 -05:00
Brice Figureau
207cd0f4ea (#1423) make PSS verification work for non power of 2 keys
RFC3447 doesn't require RSA public keys to be power of 2 keys.
The actual validation code doesn't work when trying to verify
a PSS signature generated with a non power of two key.
This small patch adds support for such keys.
2019-10-20 13:27:01 -05:00
terrafrost
f36b4686c9 SSH2: fix E_NOTICE for diffie-hellman key exchange 2019-10-09 23:59:32 -05:00
terrafrost
bd534c9271 Merge branch '2.0' into 3.0 2019-09-28 13:05:42 -05:00
terrafrost
d8b8275282 Merge branch '1.0' into 2.0 2019-09-28 13:03:14 -05:00
terrafrost
a34a4edac5 SSH2: arcfour128 / arcfour256 was being included twice 2019-09-28 12:57:33 -05:00
terrafrost
ee2ac9f818 SSH2: rm code that is never called 2019-09-28 08:32:32 -05:00
terrafrost
72fe2540ab readd visibility for 3.0 branch 2019-09-24 22:21:07 -05:00
terrafrost
52203748de Merge branch '2.0' into 3.0 2019-09-24 22:20:39 -05:00
terrafrost
c00a199484 Merge branch '1.0' into 2.0 2019-09-24 22:20:26 -05:00
terrafrost
d26850e56f SSH2: fix PHP4 compatability issue 2019-09-24 22:18:01 -05:00
terrafrost
e73f1ec910 fix PHP4 compatibility issue 2019-09-22 10:30:58 -05:00
terrafrost
c14557ec8b SSH2: fix typo in exception 2019-09-18 08:26:07 -05:00
terrafrost
11532ba414 X509: fix pre-5.4 compatability issues 2019-09-18 08:20:33 -05:00
terrafrost
3af5d3b530 Merge branch '2.0' into 3.0 2019-09-16 20:08:58 -05:00
Jamiel
05ea3eafb8 #1405 2019-09-16 23:04:07 +02:00
terrafrost
0952908f70 Merge branch '1.0' into 2.0 2019-09-16 07:56:14 -05:00
terrafrost
cd21287ebc SSH2: only do fclose($this->fsock) if doing so won't yield error 2019-09-16 07:55:47 -05:00
terrafrost
45d787a578
Merge pull request #1403 from terrafrost/hmac-additions
add new HMAC algorithms
2019-09-16 07:41:54 -05:00
terrafrost
677a15c122 Merge branch '2.0' 2019-09-15 17:31:53 -05:00
terrafrost
bd6dbd0695 Merge branch '1.0' into 2.0 2019-09-15 17:20:11 -05:00
terrafrost
11fea7d004 fix bug with toBytes() with fixed precision negative numbers 2019-09-15 17:19:35 -05:00
terrafrost
6f8ba6c614 SSH2: tweaks to Exceptions 2019-09-11 07:55:29 -05:00
terrafrost
e52697abac SSH2: no authentication didn't work 2019-09-11 06:36:03 -05:00
terrafrost
a06a166db6 SSH2: move $this->send_seq_no++ 2019-09-10 23:43:09 -05:00
terrafrost
eab705fbb5 SSH2: typo 2019-09-10 23:41:52 -05:00
terrafrost
7aaf46c8ac SSH2: make array_intersect_first static 2019-09-10 23:14:29 -05:00
terrafrost
2774e55ab2 SSH2: eliminate some code re-use involving key exchanges for MACs 2019-09-10 23:01:26 -05:00
terrafrost
69a11136ae SSH2: ping tweaks 2019-09-10 19:52:35 -05:00
terrafrost
71aa8165fa Merge branch '2.0' 2019-09-10 18:13:12 -05:00
terrafrost
2cf180fb47 Merge branch '1.0' into 2.0 2019-09-10 17:43:41 -05:00
terrafrost
fbf36728fd SSH2 / SFTP: fix issues with ping() 2019-09-10 17:31:43 -05:00
terrafrost
71ced69714 SSH2: add support for EtM 2019-09-09 01:18:33 -05:00
terrafrost
580eb94fd3 SSH2: add umac-64 / umac-128 support 2019-09-08 11:23:29 -05:00
terrafrost
7d74163825 SSH2: use libsodium PHP 7.2 API 2019-09-07 20:10:15 -05:00
terrafrost
18681de192 update last commit for 2.0 branch 2019-09-07 19:53:19 -05:00
terrafrost
43dd05d4c2 Merge branch '1.0' into 2.0 2019-09-07 19:39:28 -05:00
terrafrost
3ad44cb3d6 SSH2: backport setPreferredAlgorithms() / getAlgorithmsNegotiated() 2019-09-07 19:20:21 -05:00
terrafrost
8a03e90d95 SSH2: update private key auth example 2019-09-07 17:06:51 -05:00
terrafrost
8608463d61 Hash: add support for UMACs 2019-09-07 14:46:55 -05:00
terrafrost
eddbdcc66c don't re-generate Eval mode stuff when only IV has changed 2019-09-06 05:37:13 -05:00
terrafrost
23ffa6452e revisions to gocom's code changes 2019-08-28 07:16:24 -05:00
Jukka Svahn
488433e10f Fix mode mapping order and param type 2019-08-24 02:06:45 +03:00
terrafrost
b89c488f43 SFTP: unpack() -> unpackSSH2() 2019-08-22 05:01:33 -05:00
terrafrost
d51b72abbf
Merge pull request #1390 from terrafrost/diffie-hellman
add a new diffie-hellman key exchange class
2019-08-13 23:07:34 -05:00
terrafrost
422523cf43 EC: make libsodium an insvisible key format 2019-08-09 09:19:01 -05:00
terrafrost
68f3d7d8af add support for Curve448 2019-08-08 22:38:42 -05:00
terrafrost
7cf5facae7 DH: add Curve25519 unit test based off of RFC7748 test vectors 2019-08-08 08:00:37 -05:00
terrafrost
66efabda53 SSH2: update libsodium check 2019-08-07 23:29:33 -05:00
terrafrost
6c1befa7cb X509: select function accessibility changes 2019-08-07 22:57:40 -05:00
terrafrost
f04d69a3eb Merge branch 'master' into diffie-hellman 2019-08-07 08:09:36 -05:00
terrafrost
1e7453b585 add a new diffie-hellman key exchange class 2019-08-06 22:10:56 -05:00
terrafrost
dfde088d4c visiblity adjustments for PHP 7.4 2019-08-03 16:42:40 -05:00
terrafrost
cef6916d71 Merge branch '2.0' 2019-08-03 09:11:45 -05:00
terrafrost
0c6ae076bb Merge branch '1.0' into 2.0 2019-08-03 09:07:59 -05:00
terrafrost
6ae67ef790 BigInteger: fix PHP 7.4 deprecations 2019-08-03 08:58:51 -05:00
terrafrost
68256d209b Merge branch '1.0' into 2.0 2019-08-03 07:28:03 -05:00
terrafrost
e473078703 ASN1: fix PHP 7.4 deprecation 2019-08-03 07:27:26 -05:00
terrafrost
2286c834bd Merge branch '2.0' 2019-08-02 23:41:40 -05:00
terrafrost
d51b07597a Merge branch '1.0' into 2.0 2019-08-02 22:55:22 -05:00
terrafrost
511f55de3d X509: fix issue with explicit time tags whose maps expect implicit 2019-08-02 22:00:33 -05:00
terrafrost
de8903d2f2 Merge branch '2.0' 2019-07-30 21:06:22 -05:00
terrafrost
e26fcce1f4 Merge branch '1.0' into 2.0 2019-07-30 08:07:51 -05:00
terrafrost
19ad5d27da X509: ips in nameconstraints ext include netmask 2019-07-30 07:37:16 -05:00
terrafrost
353ad158b4 Merge branch 'update-auto-channel-close-2.0' into update-auto-channel-close-master 2019-07-12 07:55:31 -05:00
terrafrost
9f1287e68b SSH2: update constant for last commit 2019-07-12 07:53:49 -05:00
terrafrost
560e6d2fb1 Merge branch 'update-auto-channel-close-2.0' into update-auto-channel-close-master 2019-07-12 07:39:59 -05:00
terrafrost
d25a3a9248 Merge branch 'update-auto-channel-close-1.0' into update-auto-channel-close-2.0 2019-07-12 07:38:47 -05:00
terrafrost
9015d987f7 only auto close the channel for exec() timeouts 2019-07-12 07:38:08 -05:00
terrafrost
cb1e6b285c for private key's, load works but loadFormat would be better 2019-06-28 09:30:46 -05:00
terrafrost
eb659a5544 set password in load methods for each pubkey instead of in loader 2019-06-28 08:58:20 -05:00
terrafrost
5573187f3d rm $type parameter from AsymmetricKey::load and add loadFormat() 2019-06-28 08:51:12 -05:00
terrafrost
289ae55f9f rename ECDSA -> EC 2019-06-27 23:15:25 -05:00
terrafrost
0abce39e39 move $enableBlinding property from AsymmetricKey to RSA 2019-06-27 00:30:55 -05:00
terrafrost
25dab4b5ae move traits to Traits subfolder 2019-06-26 00:42:02 -05:00
terrafrost
7012e72488 mv Keys/ and Signature/ to Formats/* 2019-06-25 07:52:45 -05:00
terrafrost
d7abfaadbc X509: rm $signatureAlgorithm parameter from signature methods 2019-06-24 18:24:14 -05:00
terrafrost
640e3788f4 Merge branch '2.0' 2019-06-23 11:33:59 -05:00
terrafrost
d6819a55b0 Merge branch '1.0' into 2.0 2019-06-23 11:33:11 -05:00
terrafrost
9e27b4305e BigInteger: !count -> count 2019-06-23 11:32:46 -05:00
terrafrost
33ed294b76 Merge branch '2.0' 2019-06-23 11:14:17 -05:00
terrafrost
bad47d9b00 Merge branch '1.0' into 2.0 2019-06-23 11:13:09 -05:00
terrafrost
4af1bb4c17 BigInteger: the !== [] check only works on PHP 5.4+ 2019-06-23 11:12:17 -05:00
Remi Collet
25469cb98f fix compat with 5.3 2019-06-21 09:25:24 +02:00
terrafrost
84b852933e Merge branch '2.0' 2019-06-19 22:36:18 -05:00
terrafrost
d2085db7b7 Merge branch '1.0' into 2.0 2019-06-19 22:34:11 -05:00
terrafrost
5e9d05a9f4 BigInteger: fix issues with divide method 2019-06-19 22:29:31 -05:00
terrafrost
e71f203742 Merge branch 'master-callback' 2019-06-16 15:31:39 -05:00
terrafrost
82454229f6 Merge branch '2.0-callback' into 2.0 2019-06-16 15:31:31 -05:00
terrafrost
f8d8ad24fd Merge branch '1.0-callback' into 1.0 2019-06-16 15:31:22 -05:00
terrafrost
aa8a30cd81 Merge branch '2.0' 2019-06-16 11:04:31 -05:00
terrafrost
0932fb3054 Merge branch '1.0' into 2.0 2019-06-16 11:03:37 -05:00
Rubens Matrono
a7d038830c fix array_merge(): Argument #1 is not an array 2019-06-16 11:03:27 -05:00
terrafrost
0e449e8b17 X509: add support for id-RSASSA-PSS 2019-06-15 10:46:34 -05:00
terrafrost
8e0651308c SSH2: _close_channel -> close_channel 2019-06-12 22:08:48 -05:00
terrafrost
988d37e479 Merge branch '2.0' 2019-06-12 22:07:49 -05:00
terrafrost
491758f1c0 Merge branch '1.0' into 2.0 2019-06-12 22:07:27 -05:00
terrafrost
732bda2860 SSH2: close channel when a timeout occurs 2019-06-12 22:06:48 -05:00
terrafrost
52b7e4610c fix bad merge 2019-06-10 00:09:17 -05:00
terrafrost
6cf05541cc Merge branch '1.0' into 2.0 2019-06-09 23:46:46 -05:00
terrafrost
cd7de5723c RSA: add support for OpenSSH private keys 2019-06-09 23:42:41 -05:00
terrafrost
c5a9a66d69 DSA: pass password parameter correctly to OpenSSH::load 2019-06-08 23:18:21 -05:00
terrafrost
327f555b7c add expanded support for OpenSSH private keys 2019-06-08 22:04:54 -05:00
terrafrost
88b6337a3f RSA: fix issue with PKCS1 encryption 2019-06-08 18:58:24 -05:00
terrafrost
a431a1959a ECDSA: make it so toString() can setspecified / named curve use 2019-06-03 20:33:01 -05:00
terrafrost
557676edd9 use array type hint 2019-06-02 10:26:26 -05:00
terrafrost
30320f5a91 Merge branch '2.0-callback' into master-callback 2019-06-02 08:22:26 -05:00
terrafrost
a0fa38db6d Merge branch '1.0-callback' into 2.0-callback 2019-06-02 08:20:07 -05:00
terrafrost
e988abcdb1 SFTP: add callback parameter to get() 2019-06-02 08:19:41 -05:00
terrafrost
8e03f5bfb2 RSA: make it so PSS keys can be saved 2019-06-01 19:35:17 -05:00
terrafrost
5b89ff4177 Merge branch 'rsa-pss' 2019-06-01 16:07:48 -05:00
terrafrost
b226c3d882 add second $options parameter to toString method for public keys 2019-06-01 15:53:35 -05:00
terrafrost
8017c74429 RSA: add preliminary support for RSA-PSS keys 2019-05-29 00:32:53 -05:00
terrafrost
79f925e43c SFTP: replace user_error() with Exceptions 2019-05-28 08:52:53 -05:00
terrafrost
72b4bf74d2 SFTP: use microtime(true) 2019-05-28 08:50:22 -05:00
terrafrost
93c0880ca8 SSH2: make $timeout protected 2019-05-28 08:50:03 -05:00
terrafrost
a773ae80bd Merge branch '2.0' 2019-05-28 08:47:59 -05:00
terrafrost
06ccf5d1f9 Merge branch '1.0' into 2.0 2019-05-28 08:47:51 -05:00
terrafrost
8df35cc368 SFTP: improve handling of malformed packets 2019-05-28 08:47:34 -05:00
terrafrost
337b41f865 Merge branch 'master' into immutable-keys 2019-05-26 22:51:40 -05:00
terrafrost
3ca5b88d58 Merge branch '1.0' into 2.0 2019-05-26 15:38:34 -05:00
terrafrost
677ae387b0 BigInteger: backport GMP fixes from master branch 2019-05-26 15:38:18 -05:00
terrafrost
10f79a86af BigInteger: fix for BigInteger('-0') 2019-05-26 15:35:28 -05:00
terrafrost
fae6542efc Merge branch '1.0' into 2.0 2019-05-26 12:17:27 -05:00
terrafrost
8b76e96b83 BigInteger: GMP engine didn't always return 1 or -1 2019-05-26 12:14:44 -05:00
terrafrost
77ffe153a0 Merge branch '1.0' into 2.0 2019-05-26 11:42:01 -05:00
terrafrost
9c67616f1e BigInteger: new BigInteger('00') caused issues with GMP 2019-05-26 11:41:42 -05:00
terrafrost
7c270b9db3 Merge branch '2.0' 2019-05-26 10:29:34 -05:00
terrafrost
7d4b724749 Merge branch '1.0' into 2.0 2019-05-26 10:28:50 -05:00
terrafrost
70c0a0ddf4 ASN1: correctly handle long tags 2019-05-26 03:18:06 -05:00
terrafrost
64542e699f BigInteger: GMP engine didn't always return 1 or -1 2019-05-24 21:45:59 -05:00
terrafrost
d02f96e180 System/Agent: non-SSH2 signatures aren't *currently* supported 2019-05-23 08:57:46 -05:00
terrafrost
7c7d500d80 System/Agent: add support for DSA / ECDSA keys 2019-05-23 08:35:36 -05:00
terrafrost
85e2bd4811 SSH2: get binary output from OpenSSH key handler 2019-05-21 09:10:18 -05:00
terrafrost
e06f733528 ECDSA: add missing class variables for deterministic ECDSA 2019-05-21 00:03:21 -05:00
terrafrost
cc32cd2e95 make RSA / DSA / ECDSA immutable and add support to SSH2 / X509 2019-05-19 15:35:29 -05:00
terrafrost
b09bc1883e Merge branch 'oid-revamp-2.0' 2019-05-02 07:28:27 -05:00
terrafrost
98cbccc81a Merge branch 'oid-revamp' into oid-revamp-2.0 2019-05-02 07:18:37 -05:00
terrafrost
e793461543 ASN1: revamp how OIDs are handled 2019-05-01 09:17:53 -05:00
terrafrost
00b6eaf507 ECDSA/Keys/PKCS8: correctly convert private keys to public 2019-04-29 21:45:17 -05:00
terrafrost
227d9c45ef Merge branch '2.0' 2019-04-11 21:56:27 -05:00
terrafrost
0ac880fca0 Merge branch '1.0' into 2.0 2019-04-11 21:56:17 -05:00
terrafrost
756b247446 SSH2: explain NET_SSH2_READ_NEXT in comments 2019-04-11 21:54:37 -05:00
terrafrost
75f51fc8cc BigInteger: make the bitwise methods better handle negative numbers 2019-04-10 06:53:00 -05:00
terrafrost
31c10f39e5 BigInteger/GMP: negative base-256 numbers didn't load correctly 2019-04-09 20:42:18 -05:00
terrafrost
114dc17f5b BigInteger: toBits(true) wasn't working correctly 2019-04-08 08:02:48 -05:00
terrafrost
0e874f1d21 SSH/Agent: use Strings::packSSH2() / Strings::unpackSSH2() 2019-04-06 13:34:33 -05:00
terrafrost
cee3f3cd4a SFTP: use Strings::packSSH2() / Strings::unpackSSH2() 2019-04-03 22:09:15 -05:00
terrafrost
0001b81950 SSH2: use Strings::packSSH2() / Strings::unpackSSH2() 2019-04-02 00:09:19 -05:00
terrafrost
f2226184ee rm Common/Functions/Objects.php 2019-03-31 16:28:21 -05:00
terrafrost
d329814f55 SSH2: send_binary_packet() now always throws exceptions on error 2019-03-31 00:33:57 -05:00
terrafrost
1780bee619 SSH2: add support for elliptic curve hostkeys 2019-03-30 13:35:16 -05:00
terrafrost
c9d4a89267 rm SSH1 2019-03-29 21:51:26 -05:00
terrafrost
72209ffd65 add setPreferredAlgorithms() and getServerAlgorithms() 2019-03-29 18:44:31 -05:00
terrafrost
0cff98b19e SSH2: make it so preferred algorithm depends on available engines 2019-03-28 22:15:04 -05:00
terrafrost
e629271f7d SSH2: add getMethodsNegotiated() method 2019-03-28 18:53:26 -05:00
terrafrost
aa4c6e686a Merge branch 'master' into chacha20 2019-03-26 08:36:07 -05:00
terrafrost
16abd15089 SSH2: micro-optimization for AES-GCM 2019-03-23 21:41:52 -05:00
terrafrost
70f5eb4bf7 SSH2: Rijndael -> AES (for consistency) 2019-03-23 20:53:20 -05:00
terrafrost
213516128a Crypt: $use_inline_crypt is no longer used 2019-03-23 20:50:10 -05:00
terrafrost
34e065fec8 Merge branch '2.0' 2019-03-23 20:22:34 -05:00
terrafrost
337d115179 Merge branch '1.0' into 2.0 2019-03-23 20:17:59 -05:00
terrafrost
b5b763b3f2 RSA: use hash_equals if available 2019-03-23 20:17:43 -05:00
terrafrost
539fc1a9b0 SSH2: CS adjustments 2019-03-23 19:20:06 -05:00
terrafrost
7d41903846 Merge branch '2.0' 2019-03-23 19:18:31 -05:00
terrafrost
b9f7f0c021 Merge branch '1.0' into 2.0 2019-03-23 18:43:04 -05:00
terrafrost
f111bf94b6 SSH2: fix issue with reconnecting via ping() 2019-03-23 18:42:40 -05:00
terrafrost
494d20efc8 add Salsa20 / ChaCha20 stream ciphers 2019-03-22 15:45:36 -05:00
terrafrost
8ce392f218 SFTP: nlist() didn't return empty directories - now it does
I view this as a BC breaking change so atm do not plan on
backporting it to 1.0/2.0. eg. now, all subdirectories have . and
.. as "files" whereas before they didn't
2019-03-16 09:41:06 -05:00
terrafrost
09fdd60931 Merge branch '2.0' 2019-03-09 18:43:35 -06:00
terrafrost
529fcae7f6 Merge branch '1.0' into 2.0 2019-03-09 18:42:54 -06:00
Ulugbek Miniyarov
7c894b2b99 Fix x509 OpenSSL format when multiple OU's are present
When formatting DN in OpenSSL format Multiple Organizational Unit Names (OU) in certificates throw `PHP Notice:  Undefined index: id-at-organizationalUnitName` and returned array only contains the last OU.
2019-03-09 18:42:42 -06:00
terrafrost
307f685cbc Merge branch '1.0' into 2.0 2019-03-09 17:20:49 -06:00
terrafrost
84e2329249 Hash: fix issues with the mode 2019-03-09 17:08:59 -06:00
terrafrost
e706c549c1 Hash: adjustments for 2.0 branch 2019-03-08 08:36:16 -06:00
terrafrost
07ffe647f7 Merge branch '1.0' into 2.0 2019-03-08 08:34:58 -06:00
terrafrost
492562e034 Hash: fix issues with _computeKey 2019-03-08 08:34:33 -06:00
terrafrost
37df27a4af Merge branch '2.0' 2019-03-08 08:02:54 -06:00
terrafrost
4a920c3690 RSA: fix bad merge 2019-03-08 08:02:20 -06:00
terrafrost
0bb37d2853 Merge branch '1.0' into 2.0 2019-03-08 07:30:33 -06:00
terrafrost
ca76d3913f RSA: protect against possible timing attacks during OAEP decryption 2019-03-08 07:27:04 -06:00
terrafrost
ed975a270d Merge branch '1.0' into 2.0 2019-03-04 08:15:45 -06:00
Zachery Stuart
a276c2b073 Call xml_parser_free and unset to avoid memory leaks 2019-03-04 08:15:08 -06:00
terrafrost
496fcd18cd Merge branch '2.0' 2019-03-03 18:42:47 -06:00
terrafrost
03d9efcbc9 Merge branch '1.0' into 2.0 2019-03-03 18:40:36 -06:00
terrafrost
fce6063de6 SFTP: make it so get() can correctly handle out of order responses 2019-03-03 18:38:57 -06:00
terrafrost
adc9a5d189 Merge branch '2.0' 2019-02-24 21:37:43 -06:00
Bob van de Vijver
48b1c87f4c
Fixed RSA loadKey type hint 2019-02-22 10:37:16 +01:00
terrafrost
86b05c0081 Merge branch '1.0' into 2.0 2019-02-10 17:20:21 -06:00
terrafrost
fcfba38fc7 Crypt: avoid bogus IV errors in ECB mode 2019-02-10 17:18:40 -06:00
terrafrost
bf7b1630ea Merge branch 'master' of https://github.com/phpseclib/phpseclib 2019-02-06 06:27:14 -06:00
terrafrost
ee742d4edb Merge branch '2.0' 2019-02-05 23:31:20 -06:00
terrafrost
9902edfac3 Merge branch '1.0' into 2.0 2019-02-05 23:31:04 -06:00
Alex Bouma
9a0a9a0096 Whitelist OID 1.3.6.1.4.1.11129.2.4.2
This OID is used in some intermediate certificates from the Dutch government and allows for parsing and saving/validating these certificates with phpseclib.
2019-02-05 23:30:55 -06:00