=== modified file 'lib/http_client.c'
|
|
|
|
| 198 | 198 | int evil_server = 0; |
| 199 | 199 | char buffer[2048]; |
| 200 | 200 | char *end1, *end2; |
| 201 | | int st; |
| | 201 | int st, gnutls3_workaround = FALSE; |
| 202 | 202 | |
| 203 | 203 | if( req->inpa > 0 ) |
| 204 | 204 | b_event_remove( req->inpa ); |
| … |
… |
|
| 218 | 218 | |
| 219 | 219 | goto got_reply; |
| 220 | 220 | } |
| | 221 | else |
| | 222 | { |
| | 223 | gnutls3_workaround = TRUE; |
| | 224 | } |
| 221 | 225 | } |
| 222 | 226 | else if( st == 0 ) |
| 223 | 227 | { |
| … |
… |
|
| 253 | 257 | req->ssl ? ssl_getdirection( req->ssl ) : B_EV_IO_READ, |
| 254 | 258 | http_incoming_data, req ); |
| 255 | 259 | |
| 256 | | if( ssl_pending( req->ssl ) ) |
| | 260 | if( !gnutls3_workaround && ssl_pending( req->ssl ) ) |
| 257 | 261 | return http_incoming_data( data, source, cond ); |
| 258 | 262 | else |
| 259 | 263 | return FALSE; |