| // Copyright 2017 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef PPAPI_PROXY_UDP_SOCKET_RESOURCE_CONSTANTS_H_ |
| #define PPAPI_PROXY_UDP_SOCKET_RESOURCE_CONSTANTS_H_ |
| |
| #include <stdint.h> |
| |
| #include "base/macros.h" |
| |
| namespace ppapi { |
| namespace proxy { |
| |
| class UDPSocketResourceConstants { |
| public: |
| // The maximum number of bytes that each |
| // PpapiPluginMsg_PPBUDPSocket_PushRecvResult message is allowed to carry. |
| enum { kMaxReadSize = 128 * 1024 }; |
| // The maximum number of bytes that each PpapiHostMsg_PPBUDPSocket_SendTo |
| // message is allowed to carry. |
| enum { kMaxWriteSize = 128 * 1024 }; |
| |
| // The maximum number that we allow for setting |
| // PP_UDPSOCKET_OPTION_SEND_BUFFER_SIZE. This number is only for input |
| // argument sanity check, it doesn't mean the browser guarantees to support |
| // such a buffer size. |
| enum { kMaxSendBufferSize = 1024 * kMaxWriteSize }; |
| // The maximum number that we allow for setting |
| // PP_UDPSOCKET_OPTION_RECV_BUFFER_SIZE. This number is only for input |
| // argument sanity check, it doesn't mean the browser guarantees to support |
| // such a buffer size. |
| enum { kMaxReceiveBufferSize = 1024 * kMaxReadSize }; |
| |
| // The maximum number of received packets that we allow instances of this |
| // class to buffer. |
| enum { kPluginReceiveBufferSlots = 32u }; |
| // The maximum number of buffers that we allow instances of this class to be |
| // sending before we block the plugin. |
| enum { kPluginSendBufferSlots = 8u }; |
| |
| private: |
| DISALLOW_COPY_AND_ASSIGN(UDPSocketResourceConstants); |
| }; |
| |
| } // namespace proxy |
| } // namespace ppapi |
| |
| #endif // PPAPI_PROXY_UDP_SOCKET_RESOURCE_CONSTANTS_H_ |