#define ETHERNET_FEATURE "http://tizen.org/feature/network.ethernet"
#define TETHERING_FEATURE "http://tizen.org/feature/network.tethering"
#define WIFI_DIRECT_FEATURE "http://tizen.org/feature/network.wifi.direct"
+#define WIFI_SOFTAP_FEATURE "http://tizen.org/feature/network.wifi.softap"
+
+/** Macros to handle rtattributes */
+#define RTA_ALIGNTO 4
+#define RTA_ALIGN(len) ( ((len)+RTA_ALIGNTO-1) & ~(RTA_ALIGNTO-1) )
+#define RTA_LENGTH(len) (RTA_ALIGN(sizeof(struct rtattr)) + (len))
+#define RTA_DATA(rta) ((void*)(((char*)(rta)) + RTA_LENGTH(0)))
+#define NLMSG_TAIL(nmsg) \
+ ((struct rtattr *) (((void *) (nmsg)) + NLMSG_ALIGN((nmsg)->nlmsg_len)))
typedef enum {
NETCONFIG_SUPPORTED_FEATURE_ETHERNET = 0,
NETCONFIG_SUPPORTED_FEATURE_TETHERING,
NETCONFIG_SUPPORTED_FEATURE_WIFI_DIRECT,
+ NETCONFIG_SUPPORTED_FEATURE_WIFI_SOFTAP,
NETCONFIG_SUPPORTED_FEATURE_MAX,
} netconfig_supported_feature_e;
int netconfig_execute_file_no_wait(const char *file_path,
char *const args[]);
int netconfig_execute_clatd(const char *file_path, char *const args[]);
-int netconfig_add_route_ipv6(gchar *ip_addr, gchar *interface, gchar *gateway, unsigned char prefix_len);
+int netconfig_add_route_ipv6(gchar *interface, gchar *gateway);
int netconfig_del_route_ipv6(gchar *ip_addr, gchar *interface, gchar *gateway, unsigned char prefix_len);
int netconfig_add_route_ipv4(gchar *ip_addr, gchar *subnet, gchar *interface, gint address_family);
int netconfig_del_route_ipv4(gchar *ip_addr, gchar *subnet, gchar *interface, gint address_family);