media/mtransport/stun_socket_filter.h
author Nils Ohlmeier [:drno] <drno@ohlmeier.org>
Thu, 11 Feb 2016 01:18:46 -0800
changeset 292279 11edf75d48c6b3d2c4ada21841f027367777b230
parent 246327 media/mtransport/stun_udp_socket_filter.h@47751071d2c852bcfba7dab529b6cf58266f37f1
child 448947 6f3709b3878117466168c40affa7bca0b60cf75b
permissions -rw-r--r--
Bug 1244926: added TCP socket filter to only allow outgoing STUN. r=jesup MozReview-Commit-ID: 8PpL6Z0za71

/* 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/. */
#ifndef stun_socket_filter_h__
#define stun_socket_filter_h__

#include "nsISocketFilter.h"

#define NS_STUN_UDP_SOCKET_FILTER_HANDLER_CID { 0x3e43ee93, 0x829e, 0x4ea6, \
      { 0xa3, 0x4e, 0x62, 0xd9, 0xe4, 0xc9, 0xf9, 0x93 } };

class nsStunUDPSocketFilterHandler : public nsISocketFilterHandler {
public:
  // Threadsafe because we create off-main-thread, but destroy on MainThread
  // via FreeFactoryEntries()
  NS_DECL_THREADSAFE_ISUPPORTS
  NS_DECL_NSISOCKETFILTERHANDLER
private:
  virtual ~nsStunUDPSocketFilterHandler() {}
};

#define NS_STUN_TCP_SOCKET_FILTER_HANDLER_CID { 0x9fea635a, 0x2fc2, 0x4d08, \
  { 0x97, 0x21, 0xd2, 0x38, 0xd3, 0xf5, 0x2f, 0x92 } };

class nsStunTCPSocketFilterHandler : public nsISocketFilterHandler {
public:
  // Threadsafe because we create off-main-thread, but destroy on MainThread
  // via FreeFactoryEntries()
  NS_DECL_THREADSAFE_ISUPPORTS
  NS_DECL_NSISOCKETFILTERHANDLER
private:
  virtual ~nsStunTCPSocketFilterHandler() {}
};


#endif // stun_socket_filter_h__