From e67c6f0917980cea542dad7cd3f344c93ad19da4 Mon Sep 17 00:00:00 2001 From: Johny Mattsson Date: Thu, 6 Oct 2016 17:23:48 +1100 Subject: [PATCH] Split out IP formatting helpers. --- components/base_nodemcu/include/ip_fmt.h | 50 +++++++++++++++++++ .../wifi_common.c => base_nodemcu/ip_fmt.c} | 4 +- components/modules/wifi.c | 1 + components/modules/wifi_common.h | 13 ----- components/modules/wifi_sta.c | 1 + 5 files changed, 54 insertions(+), 15 deletions(-) create mode 100644 components/base_nodemcu/include/ip_fmt.h rename components/{modules/wifi_common.c => base_nodemcu/ip_fmt.c} (98%) diff --git a/components/base_nodemcu/include/ip_fmt.h b/components/base_nodemcu/include/ip_fmt.h new file mode 100644 index 00000000..795bf35e --- /dev/null +++ b/components/base_nodemcu/include/ip_fmt.h @@ -0,0 +1,50 @@ +/* + * Copyright 2016 Dius Computing Pty Ltd. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - 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. + * - Neither the name of the copyright holders nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * 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 HOLDER 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. + * + * @author Johny Mattsson + */ + +#ifndef _IP_FMT_H_ +#define _IP_FMT_H_ + +#include +#include "lwip/ip_addr.h" + +// String buffer for a formatted MAC/BSSID +#define MAC_STR_SZ (6*2+5+1) +void macstr (char *out, const uint8_t *mac); + +// String buffer for a formatted IPv4 or IPv6 address +#define IP_STR_SZ (8*4+7+1) +void ipstr (char *out, const ip_addr_t *ip); +void ip4str (char *out, const ip4_addr_t *ip); +void ip6str (char *out, const ip6_addr_t *ip); + +#endif diff --git a/components/modules/wifi_common.c b/components/base_nodemcu/ip_fmt.c similarity index 98% rename from components/modules/wifi_common.c rename to components/base_nodemcu/ip_fmt.c index 21c134e8..d3cc1fce 100644 --- a/components/modules/wifi_common.c +++ b/components/base_nodemcu/ip_fmt.c @@ -30,11 +30,11 @@ * * @author Johny Mattsson */ -#include "wifi_common.h" -#include +#include "ip_fmt.h" #include "lwip/sockets.h" #include "lwip/ip_addr.h" #include "lwip/ip4_addr.h" +#include void macstr (char *str, const uint8_t *mac) { diff --git a/components/modules/wifi.c b/components/modules/wifi.c index 4cf013af..e8bdbb0d 100644 --- a/components/modules/wifi.c +++ b/components/modules/wifi.c @@ -35,6 +35,7 @@ #include "lextra.h" #include "esp_wifi.h" #include "wifi_common.h" +#include "ip_fmt.h" #include "nodemcu_esp_event.h" #include diff --git a/components/modules/wifi_common.h b/components/modules/wifi_common.h index de87d600..82e2822f 100644 --- a/components/modules/wifi_common.h +++ b/components/modules/wifi_common.h @@ -34,7 +34,6 @@ #define _NODEMCU_WIFI_H_ #include -#include "tcpip_adapter.h" // Shared sta/ap macros @@ -48,16 +47,4 @@ } while(0) -/* The mac/ip formatters should probably go into its own utility file... */ - -// String buffer for a formatted MAC/BSSID -#define MAC_STR_SZ (6*2+5+1) -void macstr (char *out, const uint8_t *mac); - -// String buffer for a formatted IPv4 or IPv6 address -#define IP_STR_SZ (8*4+7+1) -void ipstr (char *out, const ip_addr_t *ip); -void ip4str (char *out, const ip4_addr_t *ip); -void ip6str (char *out, const ip6_addr_t *ip); - #endif diff --git a/components/modules/wifi_sta.c b/components/modules/wifi_sta.c index eb7801fb..4c675b0a 100644 --- a/components/modules/wifi_sta.c +++ b/components/modules/wifi_sta.c @@ -36,6 +36,7 @@ #include "lmem.h" #include "nodemcu_esp_event.h" #include "wifi_common.h" +#include "ip_fmt.h" #include "esp_wifi.h" #include