Bumping manifests a=b2g-bump
[gecko.git] / netwerk / ipc / NeckoChannelParams.ipdlh
blobfef864f52afe0b84d7a7283e9e50ad2a03c35e0d
1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* vim: set sw=2 ts=8 et tw=80 ft=c: */
4 /* This Source Code Form is subject to the terms of the Mozilla Public
5  * License, v. 2.0. If a copy of the MPL was not distributed with this
6  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
8 include protocol PHttpChannel;
9 include protocol PFTPChannel;
10 include protocol PRtspChannel;
11 include URIParams;
12 include InputStreamParams;
13 include PBackgroundSharedTypes;
15 using struct mozilla::void_t from "ipc/IPCMessageUtils.h";
16 using RequestHeaderTuples from "mozilla/net/PHttpChannelParams.h";
17 using struct nsHttpAtom from "nsHttp.h";
19 namespace mozilla {
20 namespace net {
22 //-----------------------------------------------------------------------------
23 // HTTP IPDL structs
24 //-----------------------------------------------------------------------------
26 struct HttpChannelOpenArgs
28   URIParams                   uri;
29   // - TODO: bug 571161: unclear if any HTTP channel clients ever
30   // set originalURI != uri (about:credits?); also not clear if
31   // chrome channel would ever need to know.  Get rid of next arg?
32   OptionalURIParams           original;
33   OptionalURIParams           doc;
34   OptionalURIParams           referrer;
35   uint32_t                    referrerPolicy;
36   OptionalURIParams           apiRedirectTo;
37   OptionalURIParams           topWindowURI;
38   uint32_t                    loadFlags;
39   RequestHeaderTuples         requestHeaders;
40   nsCString                   requestMethod;
41   OptionalInputStreamParams   uploadStream;
42   bool                        uploadStreamHasHeaders;
43   uint16_t                    priority;
44   uint32_t                    classOfService;
45   uint8_t                     redirectionLimit;
46   bool                        allowPipelining;
47   bool                        allowSTS;
48   uint32_t                    thirdPartyFlags;
49   bool                        resumeAt;
50   uint64_t                    startPos;
51   nsCString                   entityID;
52   bool                        chooseApplicationCache;
53   nsCString                   appCacheClientID;
54   bool                        allowSpdy;
55   OptionalFileDescriptorSet   fds;
56   PrincipalInfo               requestingPrincipalInfo;
57   PrincipalInfo               triggeringPrincipalInfo;
58   uint32_t                    securityFlags;
59   uint32_t                    contentPolicyType;
60   uint32_t                    innerWindowID;
63 struct HttpChannelConnectArgs
65   uint32_t channelId;
68 union HttpChannelCreationArgs
70   HttpChannelOpenArgs;      // For AsyncOpen: the common case.
71   HttpChannelConnectArgs;   // Used for redirected-to channels
74 //-----------------------------------------------------------------------------
75 // FTP IPDL structs
76 //-----------------------------------------------------------------------------
78 struct FTPChannelOpenArgs
80   URIParams                 uri;
81   uint64_t                  startPos;
82   nsCString                 entityID;
83   OptionalInputStreamParams uploadStream;
84   PrincipalInfo             requestingPrincipalInfo;
85   PrincipalInfo             triggeringPrincipalInfo;
86   uint32_t                  securityFlags;
87   uint32_t                  contentPolicyType;
88   uint32_t                  innerWindowID;
91 struct FTPChannelConnectArgs
93   uint32_t channelId;
96 union FTPChannelCreationArgs
98   FTPChannelOpenArgs;      // For AsyncOpen: the common case.
99   FTPChannelConnectArgs;   // Used for redirected-to channels
102 struct HttpChannelDiverterArgs
104   PHttpChannel mChannel;
105   bool mApplyConversion;
108 union ChannelDiverterArgs
110   HttpChannelDiverterArgs;
111   PFTPChannel;
114 //-----------------------------------------------------------------------------
115 // RTSP IPDL structs
116 //-----------------------------------------------------------------------------
118 struct RtspChannelConnectArgs
120   URIParams uri;
121   uint32_t channelId;
124 } // namespace ipc
125 } // namespace mozilla