Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  PUDPSocket.ipdl   Sprache: unbekannt

 
/* -*- 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 PNecko;
include protocol PBackground;

include IPCStream;

include "mozilla/net/NeckoMessageUtils.h";
include "mozilla/net/DNS.h";
include "prio.h";
include "mozilla/dom/network/UDPSocketParent.h";
include "mozilla/dom/network/UDPSocketChild.h";

using mozilla::net::NetAddr from "mozilla/net/DNS.h";
using struct mozilla::void_t from "mozilla/ipc/IPCCore.h";

struct UDPAddressInfo {
  nsCString addr;
  uint16_t port;
};

union UDPSocketAddr {
  UDPAddressInfo;
  NetAddr;
};

union UDPData {
  uint8_t[];
  IPCStream;
};

namespace mozilla {
namespace net {

//-------------------------------------------------------------------
[ManualDealloc, ChildImpl="mozilla::dom::UDPSocketChild", ParentImpl="mozilla::dom::UDPSocketParent"]
protocol PUDPSocket
{
  manager PNecko or PBackground;

parent:
  async Bind(UDPAddressInfo addressInfo, bool addressReuse, bool loopback,
             uint32_t recvBufferSize, uint32_t sendBufferSize);
  async Connect(UDPAddressInfo addressInfo);

  async OutgoingData(UDPData data, UDPSocketAddr addr);

  async JoinMulticast(nsCString multicastAddress, nsCString iface);
  async LeaveMulticast(nsCString multicastAddress, nsCString iface);

  async Close();

  async RequestDelete();

child:
  async CallbackOpened(UDPAddressInfo addressInfo);
  async CallbackConnected(UDPAddressInfo addressInfo);
  async CallbackClosed();
  async CallbackReceivedData(UDPAddressInfo addressInfo, uint8_t[] data);
  async CallbackError(nsCString message, nsCString filename, uint32_t lineNumber);
  async __delete__();
};


} // namespace net
} // namespace mozilla


[ Dauer der Verarbeitung: 0.21 Sekunden  (vorverarbeitet)  ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge