example_common_private.h 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. /*
  2. * SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
  3. *
  4. * SPDX-License-Identifier: Unlicense OR CC0-1.0
  5. */
  6. /* Private Funtions of protocol example common */
  7. #pragma once
  8. #include "esp_err.h"
  9. #include "esp_wifi.h"
  10. #include "sdkconfig.h"
  11. #ifdef __cplusplus
  12. extern "C" {
  13. #endif
  14. #if CONFIG_EXAMPLE_CONNECT_IPV6
  15. #define MAX_IP6_ADDRS_PER_NETIF (5)
  16. #if defined(CONFIG_EXAMPLE_CONNECT_IPV6_PREF_LOCAL_LINK)
  17. #define EXAMPLE_CONNECT_PREFERRED_IPV6_TYPE ESP_IP6_ADDR_IS_LINK_LOCAL
  18. #elif defined(CONFIG_EXAMPLE_CONNECT_IPV6_PREF_GLOBAL)
  19. #define EXAMPLE_CONNECT_PREFERRED_IPV6_TYPE ESP_IP6_ADDR_IS_GLOBAL
  20. #elif defined(CONFIG_EXAMPLE_CONNECT_IPV6_PREF_SITE_LOCAL)
  21. #define EXAMPLE_CONNECT_PREFERRED_IPV6_TYPE ESP_IP6_ADDR_IS_SITE_LOCAL
  22. #elif defined(CONFIG_EXAMPLE_CONNECT_IPV6_PREF_UNIQUE_LOCAL)
  23. #define EXAMPLE_CONNECT_PREFERRED_IPV6_TYPE ESP_IP6_ADDR_IS_UNIQUE_LOCAL
  24. #endif // if-elif CONFIG_EXAMPLE_CONNECT_IPV6_PREF_...
  25. #endif
  26. #if CONFIG_EXAMPLE_CONNECT_IPV6
  27. extern const char *example_ipv6_addr_types_to_str[6];
  28. #endif
  29. void example_wifi_start(void);
  30. void example_wifi_stop(void);
  31. esp_err_t example_wifi_sta_do_connect(wifi_config_t wifi_config, bool wait);
  32. esp_err_t example_wifi_sta_do_disconnect(void);
  33. bool example_is_our_netif(const char *prefix, esp_netif_t *netif);
  34. void example_print_all_netif_ips(const char *prefix);
  35. void example_wifi_shutdown(void);
  36. esp_err_t example_wifi_connect(void);
  37. void example_ethernet_shutdown(void);
  38. esp_err_t example_ethernet_connect(void);
  39. esp_err_t example_ppp_connect(void);
  40. void example_ppp_start(void);
  41. void example_ppp_shutdown(void);
  42. #ifdef __cplusplus
  43. }
  44. #endif