mirror of
https://github.com/strophe/libstrophe.git
synced 2026-08-02 02:16:22 +00:00
Fix SChannel pointer mismatches
This commit is contained in:
committed by
Steffen Jaeckel
parent
89922116f8
commit
60b3b91698
@@ -479,7 +479,7 @@ int tls_read(struct conn_interface *intf, void *buff, size_t len)
|
|||||||
int read;
|
int read;
|
||||||
tls->readybufferpos += bytes;
|
tls->readybufferpos += bytes;
|
||||||
newbuff += bytes;
|
newbuff += bytes;
|
||||||
read = tls_read(tls, newbuff, len - bytes);
|
read = tls_read(intf, newbuff, len - bytes);
|
||||||
|
|
||||||
if (read == -1) {
|
if (read == -1) {
|
||||||
if (tls_is_recoverable(intf, tls->lasterror)) {
|
if (tls_is_recoverable(intf, tls->lasterror)) {
|
||||||
@@ -553,7 +553,7 @@ int tls_read(struct conn_interface *intf, void *buff, size_t len)
|
|||||||
tls->recvbufferpos = 0;
|
tls->recvbufferpos = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
return tls_read(tls, buff, len);
|
return tls_read(intf, buff, len);
|
||||||
} else if (ret == SEC_E_INCOMPLETE_MESSAGE) {
|
} else if (ret == SEC_E_INCOMPLETE_MESSAGE) {
|
||||||
tls->lasterror = SEC_E_INCOMPLETE_MESSAGE;
|
tls->lasterror = SEC_E_INCOMPLETE_MESSAGE;
|
||||||
return -1;
|
return -1;
|
||||||
@@ -611,7 +611,7 @@ int tls_write(struct conn_interface *intf, const void *buff, size_t len)
|
|||||||
int sent = 0, ret, remain = len;
|
int sent = 0, ret, remain = len;
|
||||||
tls_t *tls = intf->conn->tls;
|
tls_t *tls = intf->conn->tls;
|
||||||
|
|
||||||
ret = tls_clear_pending_write(tls);
|
ret = tls_clear_pending_write(intf);
|
||||||
if (ret <= 0) {
|
if (ret <= 0) {
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
@@ -667,9 +667,9 @@ int tls_write(struct conn_interface *intf, const void *buff, size_t len)
|
|||||||
|
|
||||||
tls->sendbufferpos = 0;
|
tls->sendbufferpos = 0;
|
||||||
|
|
||||||
ret = tls_clear_pending_write(tls);
|
ret = tls_clear_pending_write(intf);
|
||||||
|
|
||||||
if (ret == -1 && !tls_is_recoverable(intf, tls_error(tls))) {
|
if (ret == -1 && !tls_is_recoverable(intf, tls_error(intf))) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -682,7 +682,7 @@ int tls_write(struct conn_interface *intf, const void *buff, size_t len)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (ret == 0 ||
|
if (ret == 0 ||
|
||||||
(ret == -1 && tls_is_recoverable(intf, tls_error(tls)))) {
|
(ret == -1 && tls_is_recoverable(intf, tls_error(intf)))) {
|
||||||
return sent;
|
return sent;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user