2013-06-22 09:09:19 -07:00
|
|
|
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
|
|
|
/* vim: set sw=2 ts=8 et tw=80 ft=c: */
|
|
|
|
|
|
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
|
2014-03-10 15:04:28 -07:00
|
|
|
include protocol PHttpChannel;
|
|
|
|
include protocol PFTPChannel;
|
2014-04-03 04:08:34 -07:00
|
|
|
include protocol PRtspChannel;
|
2013-06-22 09:09:19 -07:00
|
|
|
include URIParams;
|
|
|
|
include InputStreamParams;
|
2014-09-21 09:40:27 -07:00
|
|
|
include PBackgroundSharedTypes;
|
2013-06-22 09:09:19 -07:00
|
|
|
|
2013-10-01 12:25:07 -07:00
|
|
|
using struct mozilla::void_t from "ipc/IPCMessageUtils.h";
|
|
|
|
using RequestHeaderTuples from "mozilla/net/PHttpChannelParams.h";
|
|
|
|
using struct nsHttpAtom from "nsHttp.h";
|
2013-06-22 09:09:19 -07:00
|
|
|
|
|
|
|
namespace mozilla {
|
|
|
|
namespace net {
|
|
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
|
|
// HTTP IPDL structs
|
|
|
|
//-----------------------------------------------------------------------------
|
|
|
|
|
|
|
|
struct HttpChannelOpenArgs
|
|
|
|
{
|
|
|
|
URIParams uri;
|
|
|
|
// - TODO: bug 571161: unclear if any HTTP channel clients ever
|
|
|
|
// set originalURI != uri (about:credits?); also not clear if
|
|
|
|
// chrome channel would ever need to know. Get rid of next arg?
|
|
|
|
OptionalURIParams original;
|
|
|
|
OptionalURIParams doc;
|
|
|
|
OptionalURIParams referrer;
|
2014-11-18 05:46:35 -08:00
|
|
|
uint32_t referrerPolicy;
|
2013-06-22 09:09:19 -07:00
|
|
|
OptionalURIParams apiRedirectTo;
|
2014-10-29 17:22:22 -07:00
|
|
|
OptionalURIParams topWindowURI;
|
2013-06-22 09:09:19 -07:00
|
|
|
uint32_t loadFlags;
|
|
|
|
RequestHeaderTuples requestHeaders;
|
2014-03-18 09:36:18 -07:00
|
|
|
nsCString requestMethod;
|
2013-06-22 09:09:19 -07:00
|
|
|
OptionalInputStreamParams uploadStream;
|
|
|
|
bool uploadStreamHasHeaders;
|
|
|
|
uint16_t priority;
|
2014-12-06 11:26:50 -08:00
|
|
|
uint32_t classOfService;
|
2013-06-22 09:09:19 -07:00
|
|
|
uint8_t redirectionLimit;
|
|
|
|
bool allowPipelining;
|
2014-06-04 09:57:15 -07:00
|
|
|
bool allowSTS;
|
2014-10-28 06:23:00 -07:00
|
|
|
uint32_t thirdPartyFlags;
|
2013-06-22 09:09:19 -07:00
|
|
|
bool resumeAt;
|
|
|
|
uint64_t startPos;
|
|
|
|
nsCString entityID;
|
|
|
|
bool chooseApplicationCache;
|
|
|
|
nsCString appCacheClientID;
|
|
|
|
bool allowSpdy;
|
2014-03-25 11:37:28 -07:00
|
|
|
OptionalFileDescriptorSet fds;
|
2014-09-21 09:40:27 -07:00
|
|
|
PrincipalInfo requestingPrincipalInfo;
|
2014-11-14 08:57:09 -08:00
|
|
|
PrincipalInfo triggeringPrincipalInfo;
|
2014-09-21 09:40:27 -07:00
|
|
|
uint32_t securityFlags;
|
|
|
|
uint32_t contentPolicyType;
|
2015-01-07 15:51:20 -08:00
|
|
|
uint32_t innerWindowID;
|
2013-06-22 09:09:19 -07:00
|
|
|
};
|
|
|
|
|
|
|
|
struct HttpChannelConnectArgs
|
|
|
|
{
|
|
|
|
uint32_t channelId;
|
|
|
|
};
|
|
|
|
|
|
|
|
union HttpChannelCreationArgs
|
|
|
|
{
|
|
|
|
HttpChannelOpenArgs; // For AsyncOpen: the common case.
|
|
|
|
HttpChannelConnectArgs; // Used for redirected-to channels
|
|
|
|
};
|
|
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
|
|
// FTP IPDL structs
|
|
|
|
//-----------------------------------------------------------------------------
|
|
|
|
|
|
|
|
struct FTPChannelOpenArgs
|
|
|
|
{
|
2014-09-21 09:40:27 -07:00
|
|
|
URIParams uri;
|
|
|
|
uint64_t startPos;
|
|
|
|
nsCString entityID;
|
2013-06-22 09:09:19 -07:00
|
|
|
OptionalInputStreamParams uploadStream;
|
2014-09-21 09:40:27 -07:00
|
|
|
PrincipalInfo requestingPrincipalInfo;
|
2014-11-14 08:57:09 -08:00
|
|
|
PrincipalInfo triggeringPrincipalInfo;
|
2014-09-21 09:40:27 -07:00
|
|
|
uint32_t securityFlags;
|
|
|
|
uint32_t contentPolicyType;
|
2015-01-07 15:51:20 -08:00
|
|
|
uint32_t innerWindowID;
|
2013-06-22 09:09:19 -07:00
|
|
|
};
|
|
|
|
|
|
|
|
struct FTPChannelConnectArgs
|
|
|
|
{
|
|
|
|
uint32_t channelId;
|
|
|
|
};
|
|
|
|
|
|
|
|
union FTPChannelCreationArgs
|
|
|
|
{
|
|
|
|
FTPChannelOpenArgs; // For AsyncOpen: the common case.
|
|
|
|
FTPChannelConnectArgs; // Used for redirected-to channels
|
|
|
|
};
|
|
|
|
|
2014-10-21 16:40:08 -07:00
|
|
|
struct HttpChannelDiverterArgs
|
|
|
|
{
|
|
|
|
PHttpChannel mChannel;
|
|
|
|
bool mApplyConversion;
|
|
|
|
};
|
|
|
|
|
2014-03-10 15:04:28 -07:00
|
|
|
union ChannelDiverterArgs
|
|
|
|
{
|
2014-10-21 16:40:08 -07:00
|
|
|
HttpChannelDiverterArgs;
|
2014-03-10 15:04:28 -07:00
|
|
|
PFTPChannel;
|
|
|
|
};
|
|
|
|
|
2014-04-03 04:08:34 -07:00
|
|
|
//-----------------------------------------------------------------------------
|
|
|
|
// RTSP IPDL structs
|
|
|
|
//-----------------------------------------------------------------------------
|
|
|
|
|
|
|
|
struct RtspChannelConnectArgs
|
|
|
|
{
|
|
|
|
URIParams uri;
|
|
|
|
uint32_t channelId;
|
|
|
|
};
|
|
|
|
|
2013-06-22 09:09:19 -07:00
|
|
|
} // namespace ipc
|
|
|
|
} // namespace mozilla
|