2012-08-16 04:02:32 +00:00
|
|
|
/* 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/. */
|
|
|
|
|
2012-08-28 12:41:04 +00:00
|
|
|
include "ipc/IPCMessageUtils.h";
|
2012-08-23 02:13:54 +00:00
|
|
|
|
|
|
|
using mozilla::void_t;
|
2012-09-21 17:26:13 +00:00
|
|
|
include protocol PBlob;
|
2012-08-23 02:13:54 +00:00
|
|
|
|
2012-08-16 04:02:32 +00:00
|
|
|
namespace mozilla {
|
|
|
|
namespace ipc {
|
|
|
|
|
|
|
|
struct StringInputStreamParams
|
|
|
|
{
|
|
|
|
nsCString data;
|
|
|
|
};
|
|
|
|
|
|
|
|
struct FileInputStreamParams
|
|
|
|
{
|
|
|
|
FileDescriptor file;
|
|
|
|
int32_t behaviorFlags;
|
|
|
|
int32_t ioFlags;
|
|
|
|
};
|
|
|
|
|
|
|
|
struct PartialFileInputStreamParams
|
|
|
|
{
|
|
|
|
FileInputStreamParams fileStreamParams;
|
|
|
|
uint64_t begin;
|
|
|
|
uint64_t length;
|
|
|
|
};
|
|
|
|
|
|
|
|
struct MultiplexInputStreamParams
|
|
|
|
{
|
|
|
|
InputStreamParams[] streams;
|
|
|
|
uint32_t currentStream;
|
|
|
|
nsresult status;
|
|
|
|
bool startedReadingCurrent;
|
|
|
|
};
|
|
|
|
|
2012-09-21 17:26:13 +00:00
|
|
|
struct RemoteInputStreamParams
|
|
|
|
{
|
|
|
|
PBlob remoteBlob;
|
|
|
|
};
|
|
|
|
|
2012-08-16 04:02:32 +00:00
|
|
|
union InputStreamParams
|
|
|
|
{
|
|
|
|
StringInputStreamParams;
|
|
|
|
FileInputStreamParams;
|
|
|
|
PartialFileInputStreamParams;
|
2012-08-23 02:13:54 +00:00
|
|
|
BufferedInputStreamParams;
|
|
|
|
MIMEInputStreamParams;
|
2012-08-16 04:02:32 +00:00
|
|
|
MultiplexInputStreamParams;
|
2012-09-21 17:26:13 +00:00
|
|
|
RemoteInputStreamParams;
|
2012-08-16 04:02:32 +00:00
|
|
|
};
|
|
|
|
|
2012-08-23 02:13:54 +00:00
|
|
|
union OptionalInputStreamParams
|
|
|
|
{
|
|
|
|
void_t;
|
|
|
|
InputStreamParams;
|
|
|
|
};
|
|
|
|
|
|
|
|
struct BufferedInputStreamParams
|
|
|
|
{
|
|
|
|
OptionalInputStreamParams optionalStream;
|
|
|
|
uint32_t bufferSize;
|
|
|
|
};
|
|
|
|
|
|
|
|
struct MIMEInputStreamParams
|
|
|
|
{
|
|
|
|
OptionalInputStreamParams optionalStream;
|
|
|
|
nsCString headers;
|
|
|
|
nsCString contentLength;
|
|
|
|
bool startedReading;
|
|
|
|
bool addContentLength;
|
|
|
|
};
|
|
|
|
|
2012-08-16 04:02:32 +00:00
|
|
|
} // namespace ipc
|
|
|
|
} // namespace mozilla
|