Raw File
PNecko.ipdl
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set sw=2 ts=8 et tw=80 ft=cpp : */

/* 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/. */

include protocol PContent;
include protocol PHttpChannel;
include protocol PCookieService;
include protocol PBrowser;
include protocol PWyciwygChannel;
include protocol PFTPChannel;
include protocol PWebSocket;
include protocol PTCPSocket;
include protocol PRemoteOpenFile;
include protocol PBlob; //FIXME: bug #792908

include URIParams;
include InputStreamParams;
include NeckoChannelParams;

include "SerializedLoadContext.h";

using IPC::SerializedLoadContext;

namespace mozilla {
namespace net {

//-------------------------------------------------------------------
sync protocol PNecko
{
  manager PContent;
  manages PHttpChannel;
  manages PCookieService;
  manages PWyciwygChannel;
  manages PFTPChannel;
  manages PWebSocket;
  manages PTCPSocket;
  manages PRemoteOpenFile;

parent:
  __delete__();

  PCookieService();
  PHttpChannel(nullable PBrowser browser,
               SerializedLoadContext loadContext,
               HttpChannelCreationArgs args);
  PWyciwygChannel();
  PFTPChannel(PBrowser browser, SerializedLoadContext loadContext,
              FTPChannelCreationArgs args);

  PWebSocket(PBrowser browser, SerializedLoadContext loadContext);
  PTCPSocket(nsString host, uint16_t port, bool useSSL, nsString binaryType,
             nullable PBrowser browser);

  // Request that the parent open a file.
  PRemoteOpenFile(URIParams fileuri, nullable PBrowser browser);

  HTMLDNSPrefetch(nsString hostname, uint16_t flags);
  CancelHTMLDNSPrefetch(nsString hostname, uint16_t flags, nsresult reason);

};


} // namespace net
} // namespace mozilla
back to top