mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-02-20 07:48:15 +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 39977fff20048f1798a95c593d6034a0e73ebbe5)
This commit is contained in:
parent
918a41d40e
commit
0adddc08c6
@ -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…
x
Reference in New Issue
Block a user