backwards compatibility
This commit is contained in:
+1
-1
@@ -82,7 +82,7 @@ else
|
|||||||
fi
|
fi
|
||||||
ldd $RELEASE/usr/bin/ebusd | egrep -q libssl.so.1.1
|
ldd $RELEASE/usr/bin/ebusd | egrep -q libssl.so.1.1
|
||||||
if [ $? -eq 0 ]; then
|
if [ $? -eq 0 ]; then
|
||||||
extralibs="$extralibs, libssl1.1 (>= 1.1.1)"
|
extralibs="$extralibs, libssl1.1 (>= 1.1.0)"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -n "$RUNTEST" ]; then
|
if [ -n "$RUNTEST" ]; then
|
||||||
|
|||||||
@@ -76,11 +76,18 @@ SSLSocket::~SSLSocket() {
|
|||||||
|
|
||||||
ssize_t SSLSocket::send(const char* data, size_t len) {
|
ssize_t SSLSocket::send(const char* data, size_t len) {
|
||||||
do {
|
do {
|
||||||
|
#if OPENSSL_VERSION_NUMBER >= 0x10101000L
|
||||||
size_t part = 0;
|
size_t part = 0;
|
||||||
int res = BIO_write_ex(m_bio, data, len, &part);
|
int res = BIO_write_ex(m_bio, data, len, &part);
|
||||||
if (res == 1) {
|
if (res == 1) {
|
||||||
return static_cast<signed>(part);
|
return static_cast<signed>(part);
|
||||||
}
|
}
|
||||||
|
#else
|
||||||
|
int res = BIO_write(m_bio, data, static_cast<int>(len));
|
||||||
|
if (res > 0) {
|
||||||
|
return static_cast<ssize_t>(res);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
if (!BIO_should_retry(m_bio)) {
|
if (!BIO_should_retry(m_bio)) {
|
||||||
if (isError("send", true)) {
|
if (isError("send", true)) {
|
||||||
return -1;
|
return -1;
|
||||||
@@ -94,11 +101,18 @@ ssize_t SSLSocket::send(const char* data, size_t len) {
|
|||||||
|
|
||||||
ssize_t SSLSocket::recv(char* data, size_t len) {
|
ssize_t SSLSocket::recv(char* data, size_t len) {
|
||||||
do {
|
do {
|
||||||
|
#if OPENSSL_VERSION_NUMBER >= 0x10101000L
|
||||||
size_t part = 0;
|
size_t part = 0;
|
||||||
int res = BIO_read_ex(m_bio, data, len, &part);
|
int res = BIO_read_ex(m_bio, data, len, &part);
|
||||||
if (res == 1) {
|
if (res == 1) {
|
||||||
return static_cast<signed>(part);
|
return static_cast<signed>(part);
|
||||||
}
|
}
|
||||||
|
#else
|
||||||
|
int res = BIO_read(m_bio, data, static_cast<int>(len));
|
||||||
|
if (res > 0) {
|
||||||
|
return static_cast<ssize_t>(res);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
if (!BIO_should_retry(m_bio)) {
|
if (!BIO_should_retry(m_bio)) {
|
||||||
if (isError("recv", true)) {
|
if (isError("recv", true)) {
|
||||||
return -1;
|
return -1;
|
||||||
|
|||||||
Reference in New Issue
Block a user