mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-08 13:22:53 +02:00
avformat/tls_schannel: always decrypt all received data
The dec_buf seems to be properly managed between read calls,
and we have no logic to decrypt before attempting socket I/O.
Thus - until now - such data would not be decrypted in case of
connections such as HTTP keep-alive, as the recv call would
always get executed first, block until rw_timeout, and then get
retried by retry_transfer_wrapper.
Thus - if data is received - decrypt all of it right away. This way
it is available for the following requests in case they can be
satisfied with it.
(cherry picked from commit 39977fff20
)
This commit is contained in:
parent
c10b3db8f6
commit
217f75f553
@ -424,7 +424,7 @@ static int tls_read(URLContext *h, uint8_t *buf, int len)
|
||||
c->enc_buf_offset += ret;
|
||||
}
|
||||
|
||||
while (c->enc_buf_offset > 0 && sspi_ret == SEC_E_OK && c->dec_buf_offset < len) {
|
||||
while (c->enc_buf_offset > 0 && sspi_ret == SEC_E_OK) {
|
||||
/* input buffer */
|
||||
init_sec_buffer(&inbuf[0], SECBUFFER_DATA, c->enc_buf, c->enc_buf_offset);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user