1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ 2/* This Source Code Form is subject to the terms of the Mozilla Public 3 * License, v. 2.0. If a copy of the MPL was not distributed with this 4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 5 6#include "nsISupports.idl" 7 8[ptr] native RequestHeaderTuples(mozilla::net::RequestHeaderTuples); 9[ref] native OptionalCorsPreflightArgsRef(mozilla::OptionalCorsPreflightArgs); 10 11interface nsIPrincipal; 12interface nsIURI; 13 14[uuid(d02b96ed-2789-4f42-a25c-7abe63de7c18)] 15interface nsIHttpChannelChild : nsISupports 16{ 17 [must_use] void addCookiesToRequest(); 18 19 // Mark this channel as requiring an interception; this will propagate 20 // to the corresponding parent channel when a redirect occurs. 21 [must_use] 22 void forceIntercepted(in boolean postRedirectChannelShouldIntercept, 23 in boolean postRedirectChannelShouldUpgrade); 24 25 // Headers that the channel client has set via SetRequestHeader. 26 [must_use] readonly attribute RequestHeaderTuples clientSetRequestHeaders; 27 28 // Headers that the channel client has set via SetRequestHeader. 29 [notxpcom, nostdcall] 30 void GetClientSetCorsPreflightParameters(in OptionalCorsPreflightArgsRef args); 31 32 // This method is called by nsCORSListenerProxy if we need to remove 33 // an entry from the CORS preflight cache in the parent process. 34 [must_use] 35 void removeCorsPreflightCacheEntry(in nsIURI aURI, in nsIPrincipal aRequestingPrincipal); 36}; 37