Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependents: NetRelais TCP_Client_Example TCP_Server_Example UDP_Server_Example ... more
Diff: udp/socket.hpp
- Revision:
- 0:00d5bc4b46e1
- Child:
- 1:6956f6f96fef
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/udp/socket.hpp Tue Jul 17 15:01:25 2012 +0000 @@ -0,0 +1,53 @@ +/** + * Copyright (c) 2012, Roy van Dam <roy@vandam-innovations.com> + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef _NETWORK_UDP_SOCKET_HPP_ +#define _NETWORK_UDP_SOCKET_HPP_ + +#include "network/socket.hpp" +#include "network/ip/address.hpp" + +namespace network { +namespace udp { + + class Socket : + public network::Socket + { + public: + int open(); + int close(); + int bind(int port); + + int send(void *data, size_t size, ip::Endpoint &endpoint); + int send(void *data, size_t size, ip::Address &address, int port); + + int reveive(void *data, size_t max_size, ip::Endpoint &endpoint); + int reveive(void *data, size_t max_size, ip::Address &address, int port); + }; + +} // namespace udp +} // namespace network + +#endif // _NETWORK_UDP_SOCKET_HPP_ \ No newline at end of file