OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CONTENT_BROWSER_RENDERER_HOST_P2P_SOCKET_HOST_H_ | 5 #ifndef CONTENT_BROWSER_RENDERER_HOST_P2P_SOCKET_HOST_H_ |
6 #define CONTENT_BROWSER_RENDERER_HOST_P2P_SOCKET_HOST_H_ | 6 #define CONTENT_BROWSER_RENDERER_HOST_P2P_SOCKET_HOST_H_ |
7 | 7 |
8 #include "base/memory/weak_ptr.h" | 8 #include "base/memory/weak_ptr.h" |
9 #include "content/common/content_export.h" | 9 #include "content/common/content_export.h" |
10 #include "content/common/p2p_socket_type.h" | 10 #include "content/common/p2p_socket_type.h" |
(...skipping 15 matching lines...) Expand all Loading... |
26 | 26 |
27 namespace content { | 27 namespace content { |
28 class P2PMessageThrottler; | 28 class P2PMessageThrottler; |
29 | 29 |
30 namespace packet_processing_helpers { | 30 namespace packet_processing_helpers { |
31 | 31 |
32 // This method can handle only RTP packet, otherwise this method must not be | 32 // This method can handle only RTP packet, otherwise this method must not be |
33 // called. It will try to do, 1. update absolute send time extension header | 33 // called. It will try to do, 1. update absolute send time extension header |
34 // if present with current time and 2. update HMAC in RTP packet. | 34 // if present with current time and 2. update HMAC in RTP packet. |
35 // If abs_send_time is 0, ApplyPacketOption will get current time from system. | 35 // If abs_send_time is 0, ApplyPacketOption will get current time from system. |
36 CONTENT_EXPORT bool ApplyPacketOptions(char* data, int length, | 36 CONTENT_EXPORT bool ApplyPacketOptions(char* data, |
| 37 size_t length, |
37 const rtc::PacketOptions& options, | 38 const rtc::PacketOptions& options, |
38 uint32 abs_send_time); | 39 uint32 abs_send_time); |
39 | 40 |
40 // Helper method which finds RTP ofset and length if the packet is encapsulated | 41 // Helper method which finds RTP ofset and length if the packet is encapsulated |
41 // in a TURN Channel Message or TURN Send Indication message. | 42 // in a TURN Channel Message or TURN Send Indication message. |
42 CONTENT_EXPORT bool GetRtpPacketStartPositionAndLength(const char* data, | 43 CONTENT_EXPORT bool GetRtpPacketStartPositionAndLength( |
43 int length, | 44 const char* data, |
44 int* rtp_start_pos, | 45 size_t length, |
45 int* rtp_packet_length); | 46 size_t* rtp_start_pos, |
| 47 size_t* rtp_packet_length); |
| 48 |
46 // Helper method which updates absoulute send time extension if present. | 49 // Helper method which updates absoulute send time extension if present. |
47 CONTENT_EXPORT bool UpdateRtpAbsSendTimeExtn(char* rtp, int length, | 50 CONTENT_EXPORT bool UpdateRtpAbsSendTimeExtension(char* rtp, |
48 int extension_id, | 51 size_t length, |
49 uint32 abs_send_time); | 52 int extension_id, |
| 53 uint32 abs_send_time); |
50 | 54 |
51 } // packet_processing_helpers | 55 } // packet_processing_helpers |
52 | 56 |
53 // Base class for P2P sockets. | 57 // Base class for P2P sockets. |
54 class CONTENT_EXPORT P2PSocketHost { | 58 class CONTENT_EXPORT P2PSocketHost { |
55 public: | 59 public: |
56 static const int kStunHeaderSize = 20; | 60 static const int kStunHeaderSize = 20; |
57 // Creates P2PSocketHost of the specific type. | 61 // Creates P2PSocketHost of the specific type. |
58 static P2PSocketHost* Create(IPC::Sender* message_sender, | 62 static P2PSocketHost* Create(IPC::Sender* message_sender, |
59 int socket_id, | 63 int socket_id, |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
146 RenderProcessHost::WebRtcRtpPacketCallback packet_dump_callback_; | 150 RenderProcessHost::WebRtcRtpPacketCallback packet_dump_callback_; |
147 | 151 |
148 base::WeakPtrFactory<P2PSocketHost> weak_ptr_factory_; | 152 base::WeakPtrFactory<P2PSocketHost> weak_ptr_factory_; |
149 | 153 |
150 DISALLOW_COPY_AND_ASSIGN(P2PSocketHost); | 154 DISALLOW_COPY_AND_ASSIGN(P2PSocketHost); |
151 }; | 155 }; |
152 | 156 |
153 } // namespace content | 157 } // namespace content |
154 | 158 |
155 #endif // CONTENT_BROWSER_RENDERER_HOST_P2P_SOCKET_HOST_H_ | 159 #endif // CONTENT_BROWSER_RENDERER_HOST_P2P_SOCKET_HOST_H_ |
OLD | NEW |