123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- /*
- * Copyright 2017 The WebRTC Project Authors. All rights reserved.
- *
- * Use of this source code is governed by a BSD-style license
- * that can be found in the LICENSE file in the root of the source
- * tree. An additional intellectual property rights grant can be found
- * in the file PATENTS. All contributing project authors may
- * be found in the AUTHORS file in the root of the source tree.
- */
- #ifndef API_TURN_CUSTOMIZER_H_
- #define API_TURN_CUSTOMIZER_H_
- #include <stdlib.h>
- namespace cricket {
- class PortInterface;
- class StunMessage;
- } // namespace cricket
- namespace webrtc {
- class TurnCustomizer {
- public:
- // This is called before a TURN message is sent.
- // This could be used to add implementation specific attributes to a request.
- virtual void MaybeModifyOutgoingStunMessage(
- cricket::PortInterface* port,
- cricket::StunMessage* message) = 0;
- // TURN can send data using channel data messages or Send indication.
- // This method should return false if |data| should be sent using
- // a Send indication instead of a ChannelData message, even if a
- // channel is bound.
- virtual bool AllowChannelData(cricket::PortInterface* port,
- const void* data,
- size_t size,
- bool payload) = 0;
- virtual ~TurnCustomizer() {}
- };
- } // namespace webrtc
- #endif // API_TURN_CUSTOMIZER_H_
|