Module: wine Branch: master Commit: 27af81972fd9d78a5b28a4a638aa189cacbe9375 URL: http://source.winehq.org/git/wine.git/?a=commit;h=27af81972fd9d78a5b28a4a638...
Author: Jacek Caban jacek@codeweavers.com Date: Thu May 24 15:24:43 2012 +0200
wininet: Added real implementation of InternetQueryOption(INTERNET_OPTION_REQUEST_FLAGS).
---
dlls/wininet/http.c | 20 ++++++++++++++++---- 1 files changed, 16 insertions(+), 4 deletions(-)
diff --git a/dlls/wininet/http.c b/dlls/wininet/http.c index 0e3c1a3..2f64b03 100644 --- a/dlls/wininet/http.c +++ b/dlls/wininet/http.c @@ -2159,17 +2159,29 @@ static DWORD HTTPREQ_QueryOption(object_header_t *hdr, DWORD option, void *buffe *size = sizeof(DWORD); *(DWORD *)buffer = req->connect_timeout; return ERROR_SUCCESS; - case INTERNET_OPTION_REQUEST_FLAGS: - TRACE("INTERNET_OPTION_REQUEST_FLAGS\n"); + case INTERNET_OPTION_REQUEST_FLAGS: { + DWORD flags = 0;
if (*size < sizeof(DWORD)) return ERROR_INSUFFICIENT_BUFFER;
- *(DWORD*)buffer = 4; - *size = sizeof(DWORD); + /* FIXME: Add support for: + * INTERNET_REQFLAG_FROM_CACHE + * INTERNET_REQFLAG_CACHE_WRITE_DISABLED + */ + + if(req->session->appInfo->proxy) + flags |= INTERNET_REQFLAG_VIA_PROXY; + if(!req->rawHeaders) + flags |= INTERNET_REQFLAG_NO_HEADERS;
+ TRACE("INTERNET_OPTION_REQUEST_FLAGS returning %x\n", flags); + + *size = sizeof(DWORD); + *(DWORD*)buffer = flags; return ERROR_SUCCESS; } + }
return INET_QueryOption(hdr, option, buffer, size, unicode); }