diff options
author | Michael Scott <michael.scott@linaro.org> | 2017-01-23 13:56:55 -0800 |
---|---|---|
committer | Jukka Rissanen <jukka.rissanen@linux.intel.com> | 2017-02-03 15:59:15 +0200 |
commit | a1d630398f69467719fca91d32d2d461c643dd2d (patch) | |
tree | cc4a2c0b44264931431f08c50924c83f2ba07f2a /samples | |
parent | dbe46353689d3469dce0ebd60602233701639b33 (diff) |
samples: net: irc_bot: remove sockaddr globals
Instead use helper function where necessary.
Change-Id: Idcb47d02966731d7ef18588d1dccc8031a38d9d0
Signed-off-by: Michael Scott <michael.scott@linaro.org>
Diffstat (limited to 'samples')
-rw-r--r-- | samples/net/irc_bot/src/irc-bot.c | 35 |
1 files changed, 15 insertions, 20 deletions
diff --git a/samples/net/irc_bot/src/irc-bot.c b/samples/net/irc_bot/src/irc-bot.c index 7392ebf94..d8865d57f 100644 --- a/samples/net/irc_bot/src/irc-bot.c +++ b/samples/net/irc_bot/src/irc-bot.c @@ -55,9 +55,6 @@ static bool fake_led; #define CONFIG_NET_SAMPLES_PEER_IPV6_ADDR "2001:db8::2" #endif /* CONFIG_NET_SAMPLES_PEER_IPV6_ADDR */ -static struct sockaddr my_sockaddr = { .family = AF_INET6 }; -static struct sockaddr ircd_sockaddr = { .family = AF_INET6 }; - /* IRC API */ #define DEFAULT_CHANNEL "#zephyrbot" @@ -335,13 +332,17 @@ zirc_connect(struct zirc *irc, const char *host, int port, return ret; } - dst_addr = ircd_sockaddr; - net_sin6_ptr(&dst_addr)->sin6_family = AF_INET6; - net_sin6_ptr(&dst_addr)->sin6_port = htons(port); + ret = in_addr_set(AF_INET6, CONFIG_NET_SAMPLES_PEER_IPV6_ADDR, + port, &dst_addr); + if (ret < 0) { + goto connect_exit; + } - src_addr = my_sockaddr; - net_sin6_ptr(&src_addr)->sin6_family = AF_INET6; - net_sin6_ptr(&src_addr)->sin6_port = 0; + ret = in_addr_set(AF_INET6, CONFIG_NET_SAMPLES_MY_IPV6_ADDR, + 0, &src_addr); + if (ret < 0) { + goto connect_exit; + } ret = net_context_bind(irc->conn, &src_addr, sizeof(struct sockaddr_in6)); @@ -726,6 +727,8 @@ on_connect(void *data, struct zirc *irc) static void initialize_network(void) { + struct sockaddr addr; + /* TODO: use DHCP here, watch NET_EVENT_IF_UP, zirc_connect() when * available, etc */ @@ -733,23 +736,15 @@ initialize_network(void) NET_INFO("Initializing network"); #if defined(CONFIG_NET_SAMPLES_MY_IPV6_ADDR) - if (net_addr_pton(AF_INET6, CONFIG_NET_SAMPLES_MY_IPV6_ADDR, - &my_sockaddr) < 0) { + if (in_addr_set(AF_INET6, CONFIG_NET_SAMPLES_MY_IPV6_ADDR, 0, + &addr) < 0) { NET_ERR("Invalid IPv6 address: %s", CONFIG_NET_SAMPLES_MY_IPV6_ADDR); } #endif /* CONFIG_NET_SAMPLES_MY_IPV6_ADDR */ -#if defined(CONFIG_NET_SAMPLES_PEER_IPV6_ADDR) - if (net_addr_pton(AF_INET6, CONFIG_NET_SAMPLES_PEER_IPV6_ADDR, - &ircd_sockaddr) < 0) { - NET_ERR("Invalid IPv6 address: %s", - CONFIG_NET_SAMPLES_PEER_IPV6_ADDR); - } -#endif /* CONFIG_NET_SAMPLES_PEER_IPV6_ADDR */ net_if_ipv6_addr_add(net_if_get_default(), - net_sin6_ptr((const struct sockaddr_ptr *) - &my_sockaddr)->sin6_addr, + &net_sin6(&addr)->sin6_addr, NET_ADDR_MANUAL, 0); } |