Compare commits
3 Commits
8656362f0d
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
35534549fe | ||
|
|
8b1faf795c | ||
|
|
b2a4cbff01 |
@@ -16,13 +16,13 @@ use Domframework\Tcpclient;
|
||||
*/
|
||||
class TcpclientTest extends \PHPUnit_Framework_TestCase
|
||||
{
|
||||
public function testGoogleIPv4()
|
||||
public function testFournier38IPv4()
|
||||
{
|
||||
$tcpclient = new Tcpclient("www.google.fr", 80);
|
||||
$tcpclient = new Tcpclient("ipv4.fournier38.fr", 80);
|
||||
$tcpclient->preferIPv4(true);
|
||||
$tcpclient->connect();
|
||||
$tcpclient->send("GET / HTTP/1.1\r\n" .
|
||||
"Host: www.google.fr\r\n" .
|
||||
"Host: ip.fournier38.fr\r\n" .
|
||||
"User-Agent: DomFramework\r\n" .
|
||||
"Accept: *" . "/*\r\n" .
|
||||
"\r\n");
|
||||
@@ -34,12 +34,12 @@ class TcpclientTest extends \PHPUnit_Framework_TestCase
|
||||
$this->assertSame(substr($res, 0, 15), "HTTP/1.1 200 OK");
|
||||
}
|
||||
|
||||
public function testGoogleIPv4orIpv6()
|
||||
public function testFournier38IPv4orIpv6()
|
||||
{
|
||||
$tcpclient = new Tcpclient("www.google.fr", 80);
|
||||
$tcpclient = new Tcpclient("ip.fournier38.fr", 80);
|
||||
$tcpclient->connect();
|
||||
$tcpclient->send("GET / HTTP/1.1\r\n" .
|
||||
"Host: www.google.fr\r\n" .
|
||||
"Host: ip.fournier38.fr\r\n" .
|
||||
"User-Agent: DomFramework\r\n" .
|
||||
"Accept: *" . "/*\r\n" .
|
||||
"\r\n");
|
||||
@@ -51,13 +51,13 @@ class TcpclientTest extends \PHPUnit_Framework_TestCase
|
||||
$this->assertSame(substr($res, 0, 15), "HTTP/1.1 200 OK");
|
||||
}
|
||||
|
||||
public function testGoogleSSL()
|
||||
public function testFournier38SSL()
|
||||
{
|
||||
$tcpclient = new Tcpclient("www.google.fr", 443);
|
||||
$tcpclient = new Tcpclient("ip.fournier38.fr", 443);
|
||||
$tcpclient->connect();
|
||||
$tcpclient->cryptoEnable(true);
|
||||
$tcpclient->send("GET / HTTP/1.1\r\n" .
|
||||
"Host: www.google.fr\r\n" .
|
||||
"Host: ip.fournier38.fr\r\n" .
|
||||
"User-Agent: DomFramework\r\n" .
|
||||
"Accept: *" . "/*\r\n" .
|
||||
"\r\n");
|
||||
@@ -69,13 +69,13 @@ class TcpclientTest extends \PHPUnit_Framework_TestCase
|
||||
$this->assertSame(substr($res, 0, 15), "HTTP/1.1 200 OK");
|
||||
}
|
||||
|
||||
public function testGoogleSSLIPv6()
|
||||
public function testFournier38SSLIPv6()
|
||||
{
|
||||
$tcpclient = new Tcpclient("ipv6.google.com", 443);
|
||||
$tcpclient = new Tcpclient("ipv6.fournier38.fr", 443);
|
||||
$tcpclient->connect();
|
||||
$tcpclient->cryptoEnable(true);
|
||||
$tcpclient->send("GET / HTTP/1.1\r\n" .
|
||||
"Host: www.google.fr\r\n" .
|
||||
"Host: ipv6.fournier38.f\r\n" .
|
||||
"User-Agent: DomFramework\r\n" .
|
||||
"Accept: *" . "/*\r\n" .
|
||||
"\r\n");
|
||||
|
||||
10
src/Smtp.php
10
src/Smtp.php
@@ -106,6 +106,7 @@ class Smtp
|
||||
if ($errstr === "" && $php_errormsg !== "") {
|
||||
$errstr = $php_errormsg;
|
||||
}
|
||||
$this->smtpStream = null;
|
||||
throw new \Exception(sprintf(dgettext(
|
||||
"domframework",
|
||||
"Can't connect to SMTP server : %s"
|
||||
@@ -123,7 +124,11 @@ class Smtp
|
||||
$this->putLine("STARTTLS\r\n");
|
||||
$context["ssl"]["verify_peer_name"] = $this->starttlsCheck;
|
||||
$context["ssl"]["verify_peer"] = $this->starttlsCheck;
|
||||
stream_context_set_option($this->smtpStream, $context);
|
||||
if (version_compare(PHP_VERSION, '8.3.0') <= 0) {
|
||||
stream_context_set_option($this->smtpStream, $context);
|
||||
} else {
|
||||
stream_context_set_options($this->smtpStream, $context);
|
||||
}
|
||||
// The track_errors permit to create the $php_errormsg in case of
|
||||
// warning
|
||||
ini_set('track_errors', 1);
|
||||
@@ -135,6 +140,7 @@ class Smtp
|
||||
) ===
|
||||
false
|
||||
) {
|
||||
$this->smtpStream = null;
|
||||
throw new \Exception(sprintf(dgettext(
|
||||
"domframework",
|
||||
"Can't activate STARTTLS %s"
|
||||
@@ -144,6 +150,7 @@ class Smtp
|
||||
$this->debug("STARTTLS ACTIVATED\n");
|
||||
}
|
||||
} elseif ($this->starttls === "encrypt") {
|
||||
$this->smtpStream = null;
|
||||
throw new \Exception(dgettext(
|
||||
"domframework",
|
||||
"Server doesn't supports STARTTLS"
|
||||
@@ -166,6 +173,7 @@ class Smtp
|
||||
$this->putLine("AUTH LOGIN " . base64_encode($this->user) . "\r\n");
|
||||
$this->putLine(base64_encode($this->password) . "\r\n");
|
||||
} else {
|
||||
$this->smtpStream = null;
|
||||
throw new \Exception(
|
||||
dgettext(
|
||||
"domframework",
|
||||
|
||||
@@ -246,9 +246,14 @@ class Tcpclient
|
||||
"capture_peer_cert_chain" => true,
|
||||
"SNI_enabled" => true,
|
||||
]];
|
||||
$optionsMerged = [];
|
||||
$optionsMerged["ssl"] = array_merge($optionsBase["ssl"], $options);
|
||||
stream_set_blocking($this->socket, true);
|
||||
stream_context_set_option($this->socket, $optionsMerged);
|
||||
if (version_compare(PHP_VERSION, '8.3.0') <= 0) {
|
||||
stream_context_set_option($this->socket, $optionsMerged);
|
||||
} else {
|
||||
stream_context_set_options($this->socket, $optionsMerged);
|
||||
}
|
||||
$php_errormsg = "";
|
||||
ini_set("track_errors", 1);
|
||||
$rc = @stream_socket_enable_crypto($this->socket, !!$val, $cryptoMethod);
|
||||
|
||||
@@ -496,7 +496,11 @@ class Tcpserver
|
||||
"verify_peer_name" => false,
|
||||
]];
|
||||
stream_set_blocking($this->socket, true);
|
||||
stream_context_set_option($this->socket, $options);
|
||||
if (version_compare(PHP_VERSION, '8.3.0') <= 0) {
|
||||
stream_context_set_option($this->socket, $options);
|
||||
} else {
|
||||
stream_context_set_options($this->socket, $options);
|
||||
}
|
||||
return @stream_socket_enable_crypto($this->socket, !!$val, $cryptoMethod);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user