Brian | c9f6455 | 2014-04-02 19:44:09 -0700 | [diff] [blame] | 1 | #include "aos/common/network/receive_socket.h" |
2 | |||||
brians | 343bc11 | 2013-02-10 01:53:46 +0000 | [diff] [blame] | 3 | #include <string.h> |
4 | #include <math.h> | ||||
5 | #include <errno.h> | ||||
6 | #include <stdint.h> | ||||
7 | #include <stddef.h> | ||||
Brian | c9f6455 | 2014-04-02 19:44:09 -0700 | [diff] [blame] | 8 | #include <sys/socket.h> |
brians | 343bc11 | 2013-02-10 01:53:46 +0000 | [diff] [blame] | 9 | |
Brian Silverman | 598800f | 2013-05-09 17:08:42 -0700 | [diff] [blame] | 10 | #include "aos/common/logging/logging.h" |
brians | 343bc11 | 2013-02-10 01:53:46 +0000 | [diff] [blame] | 11 | |
12 | namespace aos { | ||||
Brian | c9f6455 | 2014-04-02 19:44:09 -0700 | [diff] [blame] | 13 | namespace network { |
brians | 343bc11 | 2013-02-10 01:53:46 +0000 | [diff] [blame] | 14 | |
15 | static const char *localhost = "0.0.0.0"; | ||||
16 | |||||
17 | int ReceiveSocket::Connect(NetworkPort port) { | ||||
18 | Reset(); | ||||
19 | const int ret = Socket::Connect(port, localhost); | ||||
20 | if (ret != 0) { | ||||
21 | return ret; | ||||
22 | } | ||||
23 | |||||
Brian Silverman | a9cbe30 | 2013-03-12 18:41:44 -0700 | [diff] [blame] | 24 | if (bind(socket_, &addr_.addr, |
brians | 343bc11 | 2013-02-10 01:53:46 +0000 | [diff] [blame] | 25 | sizeof(addr_)) == -1) { |
Brian Silverman | 01be000 | 2014-05-10 15:44:38 -0700 | [diff] [blame^] | 26 | PLOG(ERROR, "failed to bind to address '%s'", localhost); |
brians | 343bc11 | 2013-02-10 01:53:46 +0000 | [diff] [blame] | 27 | return last_ret_ = -1; |
Brian Silverman | a9cbe30 | 2013-03-12 18:41:44 -0700 | [diff] [blame] | 28 | } |
brians | 343bc11 | 2013-02-10 01:53:46 +0000 | [diff] [blame] | 29 | return last_ret_ = 0; |
30 | } | ||||
31 | |||||
Brian | c9f6455 | 2014-04-02 19:44:09 -0700 | [diff] [blame] | 32 | } // namespace network |
33 | } // namespace aos |