21#define NS_IOSERVICE_CLASSNAME "nsIOService"
22#define NS_IOSERVICE_CONTRACTID "@mozilla.org/network/io-service;1"
25 {0x9ac9e770, 0x18bc, 0x11d3, {0x93, 0x37, 0x00, 0x10, 0x4b, 0xa0, 0xfd, 0x40}};
27 {0x5088272e, 0x900b, 0x11da, {0xc6,0x87, 0x00,0x0f,0xea,0x57,0xf2,0x1a}};
58 hres = IUriBuilder_CreateUriSimple(
This->uri_builder, 0, 0, &
This->uri);
60 WARN(
"CreateUriSimple failed: %08x\n",
hres);
73 IUri_AddRef(nsuri->
uri);
84 hres = IUri_HasProperty(
uri, Uri_PROPERTY_FRAGMENT, &
b);
94 hres = IUriBuilder_RemoveProperties(uri_builder, Uri_HAS_FRAGMENT);
96 hres = IUriBuilder_CreateUriSimple(uri_builder, 0, 0, &
ret);
97 IUriBuilder_Release(uri_builder);
106 IUri *uri_nofrag1, *uri_nofrag2;
115 IUri_IsEqual(uri_nofrag1, uri_nofrag2, &
ret);
116 IUri_Release(uri_nofrag2);
119 IUri_Release(uri_nofrag1);
134 IUri_Release(uri_nofrag);
136 WARN(
"CoInternetCombineUrlEx failed: %08x\n",
hres);
179 static const WCHAR wine_prefixW[] = {
'w',
'i',
'n',
'e',
':'};
181 if(!
strncmpW(nsuri, wine_prefixW,
sizeof(wine_prefixW)/
sizeof(
WCHAR)))
182 ptr +=
sizeof(wine_prefixW)/
sizeof(
WCHAR);
184 if(*
ptr || ret_empty) {
201 hres = IOleClientSite_QueryInterface(doc->
client, &IID_IOleCommandTarget, (
void**)&cmdtrg);
209 hres = IOleCommandTarget_Exec(cmdtrg, &CGID_ShellDocView, 67, 0, &varUrl, &varRes);
211 IOleCommandTarget_Release(cmdtrg);
214 TRACE(
"got VARIANT_FALSE, do not load\n");
233 hres = IUri_GetDisplayUri(channel->
uri->
uri, &display_uri);
261 ERR(
"Could not get nsIWebNavigation interface: %08x\n", nsres);
265 nsres = nsIWebNavigation_QueryInterface(web_navigation, &IID_nsIDocShell, (
void**)&doc_shell);
266 nsIWebNavigation_Release(web_navigation);
268 ERR(
"Could not get nsIDocShell: %08x\n", nsres);
273 nsres = nsIDocShell_CreateLoadInfo(doc_shell, &load_info);
275 nsIDocShell_Release(doc_shell);
279 nsres = nsIDocShellLoadInfo_SetPostDataStream(load_info, post_stream);
283 uri->channel_bsc = channelbsc;
284 doc =
window->base.inner_window->doc;
286 nsres = nsIDocShell_LoadURI(doc_shell, (
nsIURI*)&
uri->nsIFileURL_iface, load_info,
flags,
FALSE);
287 if(doc ==
window->base.inner_window->doc)
290 nsIDocShell_Release(doc_shell);
292 nsIDocShellLoadInfo_Release(load_info);
294 WARN(
"LoadURI failed: %08x\n", nsres);
303 if(
This->container) {
304 if(
This->container == nscontainer)
306 TRACE(
"Changing %p -> %p\n",
This->container, nscontainer);
307 nsIWebBrowserChrome_Release(&
This->container->nsIWebBrowserChrome_iface);
312 This->container = nscontainer;
317 if(
This->window_ref) {
355 const char *header_namea;
420 const char *namea, *valuea;
463 nsres = nsIHttpHeaderVisitor_VisitHeader(visitor, &header_str, &
value_str);
520 nsIHttpChannel_AddRef(&
This->nsIHttpChannel_iface);
543 nsIFileURL_Release(&
This->uri->nsIFileURL_iface);
545 nsISupports_Release(
This->owner);
546 if(
This->post_data_stream)
547 nsIInputStream_Release(
This->post_data_stream);
549 nsILoadGroup_Release(
This->load_group);
550 if(
This->notif_callback)
551 nsIInterfaceRequestor_Release(
This->notif_callback);
552 if(
This->original_uri)
553 nsIURI_Release(
This->original_uri);
555 nsIURI_Release(
This->referrer);
574 return nsIFileURL_GetSpec(&
This->uri->nsIFileURL_iface, aName);
590 WARN(
"(%p)->(%p) returning NS_OK\n",
This, aStatus);
592 return *aStatus =
NS_OK;
629 nsILoadGroup_AddRef(
This->load_group);
631 *aLoadGroup =
This->load_group;
642 nsILoadGroup_Release(
This->load_group);
644 nsILoadGroup_AddRef(aLoadGroup);
645 This->load_group = aLoadGroup;
656 *aLoadFlags =
This->load_flags;
664 TRACE(
"(%p)->(%08x)\n",
This, aLoadFlags);
666 This->load_flags = aLoadFlags;
674 TRACE(
"(%p)->(%p)\n",
This, aOriginalURI);
676 if(
This->original_uri)
677 nsIURI_AddRef(
This->original_uri);
679 *aOriginalURI =
This->original_uri;
687 TRACE(
"(%p)->(%p)\n",
This, aOriginalURI);
689 if(
This->original_uri)
690 nsIURI_Release(
This->original_uri);
692 nsIURI_AddRef(aOriginalURI);
693 This->original_uri = aOriginalURI;
703 nsIFileURL_AddRef(&
This->uri->nsIFileURL_iface);
716 nsISupports_AddRef(
This->owner);
717 *aOwner =
This->owner;
729 nsISupports_AddRef(aOwner);
731 nsISupports_Release(
This->owner);
732 This->owner = aOwner;
742 TRACE(
"(%p)->(%p)\n",
This, aNotificationCallbacks);
744 if(
This->notif_callback)
745 nsIInterfaceRequestor_AddRef(
This->notif_callback);
746 *aNotificationCallbacks =
This->notif_callback;
756 TRACE(
"(%p)->(%p)\n",
This, aNotificationCallbacks);
758 if(
This->notif_callback)
759 nsIInterfaceRequestor_Release(
This->notif_callback);
760 if(aNotificationCallbacks)
761 nsIInterfaceRequestor_AddRef(aNotificationCallbacks);
763 This->notif_callback = aNotificationCallbacks;
772 TRACE(
"(%p)->(%p)\n",
This, aSecurityInfo);
781 TRACE(
"(%p)->(%p)\n",
This, aContentType);
783 if(
This->content_type) {
788 if(
This->uri->is_doc_uri) {
789 WARN(
"Document channel with no MIME set. Assuming text/html\n");
794 WARN(
"unknown type\n");
818 TRACE(
"(%p)->(%p)\n",
This, aContentCharset);
852 FIXME(
"(%p)->(%p)\n",
This, aContentLength);
884 nsres = nsILoadGroup_GetDefaultLoadRequest(
This->load_group, &req);
886 ERR(
"GetDefaultLoadRequest failed: %08x\n", nsres);
893 nsres = nsIRequest_QueryInterface(req, &IID_nsIChannel, (
void**)&channel);
894 nsIRequest_Release(req);
896 WARN(
"Could not get nsIChannel interface: %08x\n", nsres);
900 nsres = nsIChannel_GetURI(channel, &
uri);
901 nsIChannel_Release(channel);
903 ERR(
"GetURI failed: %08x\n", nsres);
910 TRACE(
"Could not get nsWineURI: %08x\n", nsres);
916 IHTMLWindow2_AddRef(&
window->base.IHTMLWindow2_iface);
929 if(
This->load_group) {
932 nsres = nsILoadGroup_GetGroupObserver(
This->load_group, &req_observer);
934 ERR(
"GetGroupObserver failed: %08x\n", nsres);
938 nsres = nsIRequestObserver_QueryInterface(req_observer, &IID_nsIWebProgress, (
void**)&web_progress);
939 nsIRequestObserver_Release(req_observer);
941 ERR(
"Could not get nsIWebProgress iface: %08x\n", nsres);
944 }
else if(
This->notif_callback) {
945 nsres = nsIInterfaceRequestor_GetInterface(
This->notif_callback, &IID_nsIWebProgress, (
void**)&web_progress);
947 ERR(
"GetInterface(IID_nsIWebProgress failed: %08x\n", nsres);
951 ERR(
"no load group nor notif callback\n");
955 nsres = nsIWebProgress_GetDOMWindow(web_progress, &nswindow);
956 nsIWebProgress_Release(web_progress);
958 ERR(
"GetDOMWindow failed: %08x\n", nsres);
963 nsIDOMWindow_Release(nswindow);
966 IHTMLWindow2_AddRef(&
window->base.IHTMLWindow2_iface);
968 FIXME(
"NULL window for %p\n", nswindow);
1002 WARN(
"CreateURLMoniker failed: %08x\n",
hres);
1010 IMoniker_Release(mon);
1016 if(is_doc_channel) {
1050 TRACE(
"(%p)->(%p %p)\n",
This, aListener, aContext);
1059 hres = IUri_GetDisplayUri(
This->uri->uri, &uri_str);
1064 WARN(
"GetDisplayUri failed: %08x\n",
hres);
1068 if(
This->uri->is_doc_uri) {
1072 }
else if(
This->uri->container) {
1076 if(
This->uri->container->doc)
1077 FIXME(
"nscontainer->doc = %p\n",
This->uri->container->doc);
1083 FIXME(
"Navigation not cancelled\n");
1089 if(
This->uri->window_ref &&
This->uri->window_ref->window) {
1091 IHTMLWindow2_AddRef(&
window->base.IHTMLWindow2_iface);
1094 if(
This->load_group)
1104 ERR(
"window = NULL\n");
1109 if(
This->uri->channel_bsc) {
1112 if(
window->doc_obj->mime) {
1121 TRACE(
"canceled\n");
1131 nsres = nsILoadGroup_AddRequest(
This->load_group, (
nsIRequest*)&
This->nsIHttpChannel_iface,
1134 ERR(
"AddRequest failed: %08x\n", nsres);
1137 IHTMLWindow2_Release(&
window->base.IHTMLWindow2_iface);
1144 FIXME(
"(%p)->(%p)\n",
This, aContentDisposition);
1151 FIXME(
"(%p)->(%u)\n",
This, aContentDisposition);
1158 FIXME(
"(%p)->(%p)\n",
This, aContentDispositionFilename);
1165 FIXME(
"(%p)->(%p)\n",
This, aContentDispositionFilename);
1172 FIXME(
"(%p)->(%p)\n",
This, aContentDispositionHeader);
1183 nsISupports_AddRef(
This->load_info);
1184 *aLoadInfo =
This->load_info;
1195 nsISupports_Release(
This->load_info);
1196 This->load_info = aLoadInfo;
1198 nsISupports_AddRef(
This->load_info);
1206 TRACE(
"(%p)->(%p)\n",
This, aRequestMethod);
1224 This->request_method =
i;
1240 nsIURI_AddRef(
This->referrer);
1241 *aReferrer =
This->referrer;
1252 nsIURI_AddRef(aReferrer);
1254 nsIURI_Release(
This->referrer);
1255 This->referrer = aReferrer;
1262 FIXME(
"(%p)->(%p)\n",
This, aReferrerPolicy);
1269 FIXME(
"(%p)->(%p %x)\n",
This, aReferrer, aReferrerPolicy);
1291 FIXME(
"aMerge not supported\n");
1310 FIXME(
"(%p)->(%p)\n",
This, aAllowPipelining);
1319 FIXME(
"(%p)->(%x)\n",
This, aAllowPipelining);
1342 FIXME(
"(%p)->(%p)\n",
This, aRedirectionLimit);
1351 FIXME(
"(%p)->(%u)\n",
This, aRedirectionLimit);
1360 TRACE(
"(%p)->(%p)\n",
This, aResponseStatus);
1362 if(
This->response_status) {
1363 *aResponseStatus =
This->response_status;
1367 WARN(
"No response status\n");
1376 TRACE(
"(%p)->(%p)\n",
This, aResponseStatusText);
1387 TRACE(
"(%p)->(%p)\n",
This, aRequestSucceeded);
1389 if(!
This->response_status)
1392 *aRequestSucceeded =
This->response_status/100 == 2;
1432 static const WCHAR cache_controlW[] = {
'C',
'a',
'c',
'h',
'e',
'-',
'C',
'o',
'n',
't',
'r',
'o',
'l'};
1433 static const WCHAR no_storeW[] = {
'n',
'o',
'-',
's',
't',
'o',
'r',
'e',0};
1542 return nsIHttpChannel_QueryInterface(&
This->nsIHttpChannel_iface,
riid,
result);
1548 return nsIHttpChannel_AddRef(&
This->nsIHttpChannel_iface);
1554 return nsIHttpChannel_Release(&
This->nsIHttpChannel_iface);
1563 static const WCHAR content_typeW[] =
1564 {
'C',
'o',
'n',
't',
'e',
'n',
't',
'-',
'T',
'y',
'p',
'e',0};
1568 This->post_data_contains_headers =
TRUE;
1582 This->post_data_contains_headers =
FALSE;
1586 if(aContentLength != -1)
1589 if(
This->post_data_stream)
1590 nsIInputStream_Release(
This->post_data_stream);
1591 This->post_data_stream = aStream;
1593 nsIInputStream_AddRef(aStream);
1604 TRACE(
"(%p)->(%p)\n",
This, aUploadStream);
1606 if(
This->post_data_stream)
1607 nsIInputStream_AddRef(
This->post_data_stream);
1609 *aUploadStream =
This->post_data_stream;
1630 return nsIHttpChannel_QueryInterface(&
This->nsIHttpChannel_iface,
riid,
result);
1636 return nsIHttpChannel_AddRef(&
This->nsIHttpChannel_iface);
1642 return nsIHttpChannel_Release(&
This->nsIHttpChannel_iface);
1757 FIXME(
"(%p)->(%p)\n",
This, aLocalAddress);
1766 FIXME(
"(%p)->(%p)\n",
This, aLocalPort);
1775 FIXME(
"(%p)->(%p)\n",
This, aRemoteAddress);
1784 FIXME(
"(%p)->(%p)\n",
This, aRemotePort);
1809 FIXME(
"(%p)->(%p)\n",
This, aAllowSpdy);
1816 FIXME(
"(%p)->(%x)\n",
This, aAllowSpdy);
1824 FIXME(
"(%p)->(%p)\n",
This, aResponseTimeoutEnabled);
1832 FIXME(
"(%p)->(%x)\n",
This, aResponseTimeoutEnabled);
1839 FIXME(
"(%p)->(%p)\n",
This, aApiRedirectToURI);
1846 FIXME(
"(%p)->(%p)\n",
This, aAllowAltSvc);
1853 FIXME(
"(%p)->(%x)\n",
This, aAllowAltSvc);
1860 FIXME(
"(%p)->(%p)\n",
This, aPrincipal);
1867 FIXME(
"(%p)->(%p)\n",
This, aLastModifiedTime);
1882 FIXME(
"(%p)->(%p)\n",
This, aCorsIncludeCredentials);
1890 FIXME(
"(%p)->(%x)\n",
This, aCorsIncludeCredentials);
1911 FIXME(
"(%p)->(%p)\n",
This, aTopWindowURI);
1919 FIXME(
"(%p)->(%p)\n",
This, aNetworkInterfaceId);
1992 IUri_Release(
This->uri);
1999 if(!
This->is_mutable) {
2000 WARN(
"Not mutable URI\n");
2004 if(!
This->uri_builder) {
2012 WARN(
"CreateIUriBuilder failed: %08x\n",
hres);
2030 hres = IUri_GetPropertyBSTR(
This->uri, prop, &
val, 0);
2032 WARN(
"GetPropertyBSTR failed: %08x\n",
hres);
2082 nsIFileURL_AddRef(&
This->nsIFileURL_iface);
2108 if(
This->window_ref)
2111 nsIWebBrowserChrome_Release(&
This->container->nsIWebBrowserChrome_iface);
2113 IUri_Release(
This->uri);
2140 if(!
This->is_mutable)
2151 WARN(
"create_uri failed: %08x\n",
hres);
2156 if(
This->uri_builder) {
2157 IUriBuilder_Release(
This->uri_builder);
2184 hres = IUriBuilder_RemoveProperties(uri_builder, Uri_HAS_PATH|Uri_HAS_QUERY|Uri_HAS_FRAGMENT);
2186 hres = IUriBuilder_CreateUriSimple(uri_builder, 0, 0, &
uri);
2187 IUriBuilder_Release(uri_builder);
2191 hres = IUri_GetDisplayUri(
uri, &display_uri);
2198 if(
len && display_uri[
len-1] ==
'/')
2199 display_uri[
len-1] = 0;
2219 WARN(
"GetScheme failed: %08x\n",
hres);
2234 const char *schemea;
2278 FIXME(
"Construct user:pass string\n");
2292 const char *user_pass;
2321 hres = IUriBuilder_SetUserName(
This->uri_builder,
user);
2323 hres = IUriBuilder_SetPassword(
This->uri_builder,
pass);
2355 hres = IUriBuilder_SetUserName(
This->uri_builder,
user);
2389 hres = IUriBuilder_SetPassword(
This->uri_builder,
pass);
2412 WARN(
"GetAuthority failed: %08x\n",
hres);
2488 WARN(
"GetPort failed: %08x\n",
hres);
2506 hres = IUriBuilder_SetPort(
This->uri_builder, aPort != -1, aPort);
2555 TRACE(
"Could not get nsWineURI interface\n");
2612 This->container,
This->origin_charset, &wine_uri);
2614 WARN(
"create_nsuri failed: %08x\n", nsres);
2648 hres = IUri_GetDisplayUri(new_uri, &
ret);
2649 IUri_Release(new_uri);
2668 TRACE(
"(%p)->(%p)\n",
This, aAsciiSpec);
2670 return nsIFileURL_GetSpec(&
This->nsIFileURL_iface, aAsciiSpec);
2677 WARN(
"(%p)->(%p) FIXME: Use Uri_PUNYCODE_IDN_HOST flag\n",
This, aAsciiHost);
2686 TRACE(
"(%p)->(%p)\n",
This, aOriginCharset);
2735 hres = IUriBuilder_SetFragment(
This->uri_builder,
ref);
2753 TRACE(
"Could not get nsWineURI interface\n");
2786 This->origin_charset, &wine_uri);
2789 WARN(
"create_nsuri failed: %08x\n", nsres);
2801 FIXME(
"(%p)->(%p)\n",
This, aSpecIgnoringRef);
2803 return nsIFileURL_GetSpec(&
This->nsIFileURL_iface, aSpecIgnoringRef);
2817 hres = IUri_HasProperty(
This->uri, Uri_PROPERTY_FRAGMENT, &
b);
2831 return nsIFileURL_GetPath(&
This->nsIFileURL_iface, aFilePath);
2840 if(!
This->is_mutable)
2843 return nsIFileURL_SetPath(&
This->nsIFileURL_iface, aFilePath);
2910 if(*
ptr ==
'/' || *
ptr ==
'\\')
2931 TRACE(
"(%p)->(%p)\n",
This, aDirectory);
2984 TRACE(
"(%p)->(%p)\n",
This, aFileBaseName);
3006 TRACE(
"(%p)->(%p)\n",
This, aFileExtension);
3021 FIXME(
"(%p)->(%p %p)\n",
This, aURIToCompare, _retval);
3028 FIXME(
"(%p)->(%p %p)\n",
This, aURIToCompare, _retval);
3043 WARN(
"CoInternetParseIUri failed: %08x\n",
hres);
3120 return nsIFileURL_QueryInterface(&
This->nsIFileURL_iface,
riid,
result);
3126 return nsIFileURL_AddRef(&
This->nsIFileURL_iface);
3132 return nsIFileURL_Release(&
This->nsIFileURL_iface);
3141 *aMutable =
This->is_mutable;
3151 This->is_mutable = aMutable;
3173 const char *origin_charset,
nsWineURI **_retval)
3193 hres = IUri_GetScheme(iuri, &
ret->scheme);
3197 if(origin_charset && *origin_charset &&
strcmp(origin_charset,
"UTF-8")) {
3199 if(!
ret->origin_charset) {
3200 nsIFileURL_Release(&
ret->nsIFileURL_iface);
3232 channel = heap_alloc_zero(
sizeof(
nsChannel));
3244 nsIFileURL_AddRef(&
uri->nsIFileURL_iface);
3272 nsIFileURL_Release(&
uri->nsIFileURL_iface);
3277 nsILoadGroup_AddRef(orig_channel->
load_group);
3289 FIXME(
"unsupported POST method\n");
3297 nsIURI_AddRef(orig_channel->
referrer);
3332 TRACE(
"(%p)->(IID_nsIExternalProtocolHandler %p), returning NULL\n",
This,
result);
3364 nsIProtocolHandler_Release(
This->nshandler);
3378 return nsIProtocolHandler_GetScheme(
This->nshandler, aScheme);
3387 TRACE(
"(%p)->(%p)\n",
This, aDefaultPort);
3390 return nsIProtocolHandler_GetDefaultPort(
This->nshandler, aDefaultPort);
3399 TRACE(
"(%p)->(%p)\n",
This, aProtocolFlags);
3402 return nsIProtocolHandler_GetProtocolFlags(
This->nshandler, aProtocolFlags);
3415 return nsIProtocolHandler_NewURI(
This->nshandler, aSpec, aOriginCharset, aBaseURI, _retval);
3424 TRACE(
"(%p)->(%p %p %p)\n",
This, aURI, aLoadInfo, _retval);
3427 return nsIProtocolHandler_NewChannel2(
This->nshandler, aURI, aLoadInfo, _retval);
3436 TRACE(
"(%p)->(%p %p)\n",
This, aURI, _retval);
3439 return nsIProtocolHandler_NewChannel(
This->nshandler, aURI, _retval);
3451 return nsIProtocolHandler_AllowPort(
This->nshandler,
port,
scheme, _retval);
3490 nsres = nsIIOService_GetProtocolHandler(
nsio, aScheme, &nshandler);
3492 WARN(
"GetProtocolHandler failed: %08x\n", nsres);
3496 nsres = nsIProtocolHandler_QueryInterface(nshandler, &IID_nsIExternalProtocolHandler,
3497 (
void**)&nsexthandler);
3499 *_retval = nshandler;
3503 nsIExternalProtocolHandler_Release(nsexthandler);
3511 ret->nshandler = nshandler;
3512 *_retval = &
ret->nsIProtocolHandler_iface;
3514 TRACE(
"return %p\n", *_retval);
3522 return nsIIOService_GetProtocolFlags(
nsio, aScheme, _retval);
3527 static const char *special_schemes[] = {
"chrome:",
"data:",
"jar:",
"moz-safe-about",
"resource:",
"javascript:",
"wyciwyg:"};
3530 for(
i=0;
i <
sizeof(special_schemes)/
sizeof(*special_schemes);
i++) {
3536 const char *
ptr = spec+5;
3546 const char *aOriginCharset,
nsIURI *aBaseURI,
nsIURI **_retval)
3551 const char *spec =
NULL;
3562 return nsIIOService_NewURI(
nsio, aSpec, aOriginCharset, aBaseURI, _retval);
3564 if(!
strncmp(spec,
"wine:", 5))
3568 nsres = nsIURI_QueryInterface(aBaseURI, &
IID_nsWineURI, (
void**)&base_wine_uri);
3572 if(base_wine_uri->window_ref)
3573 window = base_wine_uri->window_ref->window;
3575 WARN(
"Could not get base nsWineURI: %08x\n", nsres);
3579 if(aOriginCharset && *aOriginCharset &&
strncasecmp(aOriginCharset,
"utf", 3)) {
3601 WARN(
"create_uri failed: %08x\n",
hres);
3605 return nsIIOService_NewURI(
nsio, aSpec, aOriginCharset, aBaseURI, _retval);
3608 IUri_Release(urlmon_uri);
3621 TRACE(
"(%p %p)\n", aFile, _retval);
3622 return nsIIOService_NewFileURI(
nsio, aFile, _retval);
3633 TRACE(
"Could not get nsWineURI: %08x\n", nsres);
3634 return nsIIOService_NewChannelFromURI(
nsio,
uri, _retval);
3646 nsIHttpChannel_SetLoadInfo(&
ret->nsIHttpChannel_iface, load_info);
3659 TRACE(
"(%p %p %p %p %x %d %p)\n", aURI, aLoadingNode, aLoadingPrincipal, aTriggeringPrincipal,
3660 aSecurityFlags, aContentPolicyType, _retval);
3662 if(aLoadingNode || aLoadingPrincipal) {
3663 nsres = nsIIOService_NewLoadInfo(
nsio, aLoadingPrincipal, aTriggeringPrincipal, aLoadingNode,
3664 aSecurityFlags, aContentPolicyType, &load_info);
3670 nsISupports_Release(load_info);
3677 TRACE(
"(%p %p %p)\n", aURI, aLoadInfo, _retval);
3684 TRACE(
"(%p %p)\n", aURI, _retval);
3693 aLoadingNode, aLoadingPrincipal, aTriggeringPrincipal, aSecurityFlags, aContentPolicyType, _retval);
3694 return nsIIOService_NewChannel2(
nsio, aSpec, aOriginCharset, aBaseURI, aLoadingNode, aLoadingPrincipal,
3695 aTriggeringPrincipal, aSecurityFlags, aContentPolicyType, _retval);
3702 return nsIIOService_NewChannel(
nsio, aSpec, aOriginCharset, aBaseURI, _retval);
3707 TRACE(
"(%p)\n", aOffline);
3708 return nsIIOService_GetOffline(
nsio, aOffline);
3713 TRACE(
"(%x)\n", aOffline);
3714 return nsIIOService_SetOffline(
nsio, aOffline);
3719 TRACE(
"(%p)\n", aConnectivity);
3720 return nsIIOService_GetConnectivity(
nsio, aConnectivity);
3726 return nsIIOService_SetAppOffline(
nsio, appId,
state);
3731 TRACE(
"(%u %p)\n", appId, _retval);
3732 return nsIIOService_IsAppOffline(
nsio, appId, _retval);
3737 TRACE(
"(%d %p)\n", appId, _retval);
3738 return nsIIOService_GetAppOfflineState(
nsio, appId, _retval);
3742 const char *aScheme,
cpp_bool *_retval)
3745 return nsIIOService_AllowPort(
nsio, aPort,
debugstr_a(aScheme), _retval);
3752 return nsIIOService_ExtractScheme(
nsio, urlString, _retval);
3801 return nsINetUtil_ParseContentType(
net_util, aTypeHeader, aCharset, aHadCharset, aContentType);
3807#define X(f) case f: return #f
3812 X(ALLOWS_PROXY_HTTP);
3813 X(URI_INHERITS_SECURITY_CONTEXT);
3814 X(URI_FORBIDS_AUTOMATIC_DOCUMENT_REPLACEMENT);
3815 X(URI_LOADABLE_BY_ANYONE);
3816 X(URI_DANGEROUS_TO_LOAD);
3817 X(URI_IS_UI_RESOURCE);
3818 X(URI_IS_LOCAL_FILE);
3819 X(URI_LOADABLE_BY_SUBSUMERS);
3820 X(URI_DOES_NOT_RETURN_DATA);
3821 X(URI_IS_LOCAL_RESOURCE);
3822 X(URI_OPENING_EXECUTES_SCRIPT);
3823 X(URI_NON_PERSISTABLE);
3824 X(URI_FORBIDS_COOKIE_ACCESS);
3825 X(URI_CROSS_ORIGIN_NEEDS_WEBAPPS_PERM);
3826 X(URI_SYNC_LOAD_IS_OK);
3827 X(URI_SAFE_TO_LOAD_IN_SECURE_CONTEXT);
3838 return nsINetUtil_ProtocolHasFlags(
net_util, aURI, aFlags, _retval);
3845 if(aFlags == URI_DOES_NOT_RETURN_DATA) {
3850 return nsINetUtil_URIChainHasFlags(
net_util, aURI, aFlags, _retval);
3855 TRACE(
"(%p %p)\n", aURI, _retval);
3857 return nsINetUtil_ToImmutableURI(
net_util, aURI, _retval);
3862 TRACE(
"(%p %p)\n", aURI, _retval);
3864 return nsINetUtil_NewSimpleNestedURI(
net_util, aURI, _retval);
3872 return nsINetUtil_EscapeString(
net_util, aString, aEscapeType, _retval);
3880 return nsINetUtil_EscapeURL(
net_util, aStr, aFlags, _retval);
3888 return nsINetUtil_UnescapeString(
net_util, aStr, aFlags, _retval);
3895 aCharsetEnd, _retval);
3897 return nsINetUtil_ExtractCharsetFromContentType(
net_util, aTypeHeader, aCharset, aCharsetStart, aCharsetEnd, _retval);
3952 nsIFactory_AddRef(iface);
4006 hres = IDocHostUIHandler_TranslateUrl(doc->
hostui, 0,
url, &new_url);
4028 WARN(
"Could not get nsWineURI: %08x\n", nsres);