X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=include%2Ftethering_private.h;h=b6a36c23df80722c9d4ac3d1480ccb710448762c;hb=HEAD;hp=bab9c79e39cab69fe8b98719823b480c99587a2a;hpb=977652da47e2a7a3fe42af57ff30d020c2716869;p=platform%2Fcore%2Fapi%2Ftethering.git diff --git a/include/tethering_private.h b/include/tethering_private.h index bab9c79..b6a36c2 100644 --- a/include/tethering_private.h +++ b/include/tethering_private.h @@ -40,6 +40,7 @@ extern "C" { #define DBG(fmt, args...) LOGD(fmt, ##args) #define WARN(fmt, args...) LOGW(fmt, ##args) #define ERR(fmt, args...) LOGE(fmt, ##args) +#define SINFO(fmt, args...) SECURE_LOGI(fmt, ##args) #define SDBG(fmt, args...) SECURE_LOGD(fmt, ##args) #define SERR(fmt, args...) SECURE_LOGE(fmt, ##args) @@ -76,6 +77,23 @@ extern "C" { } while (0) /** + * To lock and unlock Mutex + */ + +#define TETHERING_LOCK \ + do { \ + _tethering_lock(); \ + } while(0) + +#define TETHERING_UNLOCK \ + do { \ + _tethering_unlock(); \ + } while(0) + +void _tethering_lock(void); +void _tethering_unlock(void); + +/** * To check supported feature */ @@ -115,8 +133,10 @@ int _tethering_check_feature_supported(const char* feature, ...); /** * Common configuration */ -#define TETHERING_TYPE_MAX 5 /**< All, USB, Wi-Fi, BT, Wi-Fi AP */ #define TETHERING_STR_INFO_LEN 40 /**< length of the ip or mac address */ +#define TETHERING_IPV4_ADDRESS_MAX_LEN 15 /**< Maximum length of IP address */ +#define TETHERING_IPV4_ADDRESS_MIN_LEN 7 /**< Minimum length of IP address */ + /** * Mobile AP error code @@ -155,6 +175,9 @@ typedef enum { MOBILE_AP_ENABLE_BT_TETHERING_CFM, MOBILE_AP_DISABLE_BT_TETHERING_CFM, + MOBILE_AP_ENABLE_P2P_TETHERING_CFM, + MOBILE_AP_DISABLE_P2P_TETHERING_CFM, + MOBILE_AP_GET_STATION_INFO_CFM, MOBILE_AP_GET_DATA_PACKET_USAGE_CFM } mobile_ap_event_e; @@ -163,6 +186,7 @@ typedef enum { MOBILE_AP_TYPE_WIFI, MOBILE_AP_TYPE_USB, MOBILE_AP_TYPE_BT, + MOBILE_AP_TYPE_P2P, MOBILE_AP_TYPE_MAX, } mobile_ap_type_e; @@ -170,6 +194,8 @@ typedef enum { E_SIGNAL_NET_CLOSED = 0, E_SIGNAL_WIFI_TETHER_ON, E_SIGNAL_WIFI_TETHER_OFF, + E_SIGNAL_P2P_TETHER_ON, + E_SIGNAL_P2P_TETHER_OFF, E_SIGNAL_USB_TETHER_ON, E_SIGNAL_USB_TETHER_OFF, E_SIGNAL_BT_TETHER_ON, @@ -196,6 +222,8 @@ typedef enum { #define SIGNAL_NAME_STA_DISCONNECT "sta_disconnected" #define SIGNAL_NAME_WIFI_TETHER_ON "wifi_on" #define SIGNAL_NAME_WIFI_TETHER_OFF "wifi_off" +#define SIGNAL_NAME_P2P_TETHER_ON "p2p_on" +#define SIGNAL_NAME_P2P_TETHER_OFF "p2p_off" #define SIGNAL_NAME_USB_TETHER_ON "usb_on" #define SIGNAL_NAME_USB_TETHER_OFF "usb_off" #define SIGNAL_NAME_BT_TETHER_ON "bluetooth_on" @@ -225,11 +253,15 @@ typedef enum { #define TETHERING_BT_IF "bnep0" #define TETHERING_BT_GATEWAY "192.168.130.1" +#define TETHERING_P2P_IF "p2p0" +#define TETHERING_P2P_GATEWAY "192.168.49.1" + #define TETHERING_WIFI_SSID_MAX_LEN 32 /**< Maximum length of ssid */ #define TETHERING_WIFI_KEY_MIN_LEN 8 /**< Minimum length of wifi key */ #define TETHERING_WIFI_KEY_MAX_LEN 64 /**< Maximum length of wifi key */ #define TETHERING_WIFI_HASH_KEY_MAX_LEN 64 #define TETHERING_WIFI_MAX_STA 10 /**< Maximum Wi-Fi tethering station */ +#define TETHERING_WIFI_MAX_TXPOWER 100 /**< Default max TX POWER */ #define TETHERING_WIFI_MODE_MAX_LEN 10 /**< Maximum length of mode */ @@ -243,9 +275,11 @@ typedef enum { */ #define TETHERING_DEFAULT_SSID "Tizen" +#define TETHERING_WIFI_CHANNEL 6 #define TETHERING_WIFI_SECURITY_TYPE_OPEN_STR "open" #define TETHERING_WIFI_SECURITY_TYPE_WPA2_PSK_STR "wpa2-psk" #define TETHERING_WIFI_SECURITY_TYPE_WPS_STR "wps" +#define TETHERING_WIFI_SECURITY_TYPE_SAE_STR "sae" #define TETHERING_ERROR_RECOVERY_MAX 3 #define SECURITY_TYPE_LEN 32 #define PSK_ITERATION_COUNT 4096 @@ -285,14 +319,16 @@ typedef struct { char passphrase[TETHERING_WIFI_KEY_MAX_LEN + 1]; tethering_wifi_security_type_e sec_type; tethering_wifi_mode_type_e mode_type; + char ip_address[TETHERING_IPV4_ADDRESS_MAX_LEN + 1]; bool visibility; bool mac_filter; bool port_forwarding; bool port_filtering; bool dhcp_enabled; - bool change_mac; + bool wifi_sharing; int channel; int wifi_max_connected; + unsigned int txpower; } __tethering_h; typedef struct { @@ -301,6 +337,7 @@ typedef struct { char mac[TETHERING_STR_INFO_LEN]; /**< MAC Address */ char *hostname; time_t tm; /**< connection time */ + tethering_band_e band; /**< wifi band type */ } __tethering_client_h; typedef struct { @@ -315,13 +352,19 @@ typedef struct { char ssid[TETHERING_WIFI_SSID_MAX_LEN + 1]; char key[TETHERING_WIFI_KEY_MAX_LEN + 1]; char mode[TETHERING_WIFI_MODE_MAX_LEN + 1]; + char ip_address[TETHERING_IPV4_ADDRESS_MAX_LEN + 1]; tethering_wifi_security_type_e sec_type; bool visibility; bool mac_filter; int max_connected; int channel; + unsigned int txpower; } _softap_settings_t; +void _tethering_add_handle(tethering_h handle); +void _tethering_remove_handle(tethering_h handle); +bool _tethering_check_handle(tethering_h handle); + #ifdef __cplusplus } #endif