RDK Documentation (Open Sourced RDK Components)
connect.c
1 #include "wifi_common_hal.h"
2 #include "wifi_client_hal.h"
3 
4 #include <stdarg.h>
5 #include <string.h>
6 #include <stdint.h>
7 #include <stdio.h>
8 #include <stdlib.h>
9 #include <stdbool.h>
10 #include <unistd.h>
11 
12 static void wifi_assert(int wifi_status, const char *format, ...)
13  __attribute__((format(printf, 2, 3)));
14 
15 static int wifi_connection_callback(int ssid_index, char *ssid, wifiStatusCode_t *error);
16 
17 int main()
18 {
19  int wifi_status = 0;
20 
21  wifi_halConfig_t conf;
22  strcpy(conf.wlan_Interface, "wlan1");
23 
24  wifi_status = wifi_initWithConfig(&conf);
25  wifi_assert(wifi_status, "wifi_initWithSettings:%s", conf.wlan_Interface);
26  wifi_connectEndpoint_callback_register(&wifi_connection_callback);
27 
28  wifi_status = wifi_connectEndpoint(0, "SSID_NAME", WIFI_SECURITY_WPA2_PSK_AES,
29  NULL, "asdf123", NULL, 0, NULL, NULL, NULL, NULL);
30 
31  wifi_assert(wifi_status, "wifi_connectEndpoint");
32 
33  while (true)
34  sleep(1);
35 
36  wifi_status = wifi_uninit();
37  wifi_assert(wifi_status, "wifi_uninit");
38 
39  return 0;
40 }
41 
42 void wifi_assert(int wifi_status, const char *format, ...)
43 {
44  if (wifi_status != 0) {
45  va_list arg_list;
46  va_start(arg_list, format);
47  vfprintf(stderr, format, arg_list);
48  va_end(arg_list);
49  fprintf(stderr, "\twifi_status:%d\n", wifi_status);
50  abort();
51  }
52 }
53 
54 int wifi_connection_callback(int ssid_index, char *ssid, wifiStatusCode_t *error)
55 {
56  printf("ssid_index: %d\n", ssid_index);
57  printf("ssid : %s\n", ssid);
58  printf("status : %d\n", *error);
59  return 0;
60 }
_wifi_halSettings
Definition: wifi_common_hal.h:559
wifi_connectEndpoint
INT wifi_connectEndpoint(INT ssidIndex, CHAR *AP_SSID, wifiSecurityMode_t AP_security_mode, CHAR *AP_security_WEPKey, CHAR *AP_security_PreSharedKey, CHAR *AP_security_KeyPassphrase, int saveSSID, CHAR *eapIdentity, CHAR *carootcert, CHAR *clientcert, CHAR *privatekey)
This API starts the connection process from client with an AP.
Definition: wifi_client_hal.c:1348
wifi_uninit
int wifi_uninit()
Uninitilizes wifi module.
Definition: wifi_common_hal.c:482
WIFI_SECURITY_WPA2_PSK_AES
@ WIFI_SECURITY_WPA2_PSK_AES
WPA2(Pre-Shared Key) with AES (Advanced Encryption Standard) encryption.
Definition: wifi_common_hal.h:328
wifi_connectEndpoint_callback_register
void wifi_connectEndpoint_callback_register(wifi_connectEndpoint_callback callback_proc)
Callback registration function.
Definition: wifi_client_hal.c:238
wifiStatusCode_t
wifiStatusCode_t
Enumerators for Wi-Fi connection status.
Definition: wifi_common_hal.h:290