X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=include%2Fdevice.h;h=8cc8ccefdb7168d6f7404b76297193bfcb38d1eb;hb=34d96fca78ccc5971ce38988347457c199168cfd;hp=f80969b495d63af7c70ea3b2a669b58272c7fcb7;hpb=c818549e6ed14df4ae83ec120fe0731ed2b6ea19;p=platform%2Fupstream%2Fconnman.git diff --git a/include/device.h b/include/device.h old mode 100644 new mode 100755 index f80969b..8cc8cce --- a/include/device.h +++ b/include/device.h @@ -2,7 +2,7 @@ * * Connection Manager * - * Copyright (C) 2007-2010 Intel Corporation. All rights reserved. + * Copyright (C) 2007-2014 Intel Corporation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as @@ -22,8 +22,8 @@ #ifndef __CONNMAN_DEVICE_H #define __CONNMAN_DEVICE_H -#include #include +#include #ifdef __cplusplus extern "C" { @@ -39,57 +39,63 @@ enum connman_device_type { CONNMAN_DEVICE_TYPE_UNKNOWN = 0, CONNMAN_DEVICE_TYPE_ETHERNET = 1, CONNMAN_DEVICE_TYPE_WIFI = 2, - CONNMAN_DEVICE_TYPE_WIMAX = 3, - CONNMAN_DEVICE_TYPE_BLUETOOTH = 4, - CONNMAN_DEVICE_TYPE_CELLULAR = 5, - CONNMAN_DEVICE_TYPE_GPS = 6, + CONNMAN_DEVICE_TYPE_BLUETOOTH = 3, + CONNMAN_DEVICE_TYPE_CELLULAR = 4, + CONNMAN_DEVICE_TYPE_GPS = 5, + CONNMAN_DEVICE_TYPE_GADGET = 6, CONNMAN_DEVICE_TYPE_VENDOR = 10000, }; -enum connman_device_mode { - CONNMAN_DEVICE_MODE_UNKNOWN = 0, - CONNMAN_DEVICE_MODE_NETWORK_SINGLE = 1, - CONNMAN_DEVICE_MODE_NETWORK_MULTIPLE = 2, -}; - #define CONNMAN_DEVICE_PRIORITY_LOW -100 #define CONNMAN_DEVICE_PRIORITY_DEFAULT 0 #define CONNMAN_DEVICE_PRIORITY_HIGH 100 +struct connman_device_scan_params { + enum connman_service_type type; + const char *ssid; + unsigned int ssid_len; + const char *identity; + const char* passphrase; + const char *security; + bool force_full_scan; + void *user_data; +}; + struct connman_device; struct connman_device *connman_device_create(const char *node, enum connman_device_type type); -struct connman_device *connman_device_ref(struct connman_device *device); -void connman_device_unref(struct connman_device *device); + +#define connman_device_ref(device) \ + connman_device_ref_debug(device, __FILE__, __LINE__, __func__) + +#define connman_device_unref(device) \ + connman_device_unref_debug(device, __FILE__, __LINE__, __func__) + +struct connman_device * +connman_device_ref_debug(struct connman_device *device, + const char *file, int line, const char *caller); +void connman_device_unref_debug(struct connman_device *device, + const char *file, int line, const char *caller); enum connman_device_type connman_device_get_type(struct connman_device *device); -const char *connman_device_get_name(struct connman_device *device); -const char *connman_device_get_path(struct connman_device *device); void connman_device_set_index(struct connman_device *device, int index); int connman_device_get_index(struct connman_device *device); void connman_device_set_interface(struct connman_device *device, - const char *interface, const char *control); -const char *connman_device_get_control(struct connman_device *device); + const char *interface); void connman_device_set_ident(struct connman_device *device, const char *ident); const char *connman_device_get_ident(struct connman_device *device); -void connman_device_set_mode(struct connman_device *device, - enum connman_device_mode mode); -enum connman_device_mode connman_device_get_mode(struct connman_device *device); - int connman_device_set_powered(struct connman_device *device, - connman_bool_t powered); + bool powered); +bool connman_device_get_powered(struct connman_device *device); int connman_device_set_scanning(struct connman_device *device, - connman_bool_t scanning); - -int connman_device_set_disconnected(struct connman_device *device, - connman_bool_t disconnected); -connman_bool_t connman_device_get_disconnected(struct connman_device *device); -int connman_device_set_connected(struct connman_device *device, - connman_bool_t connected); + enum connman_service_type type, bool scanning); +bool connman_device_get_scanning(struct connman_device *device, + enum connman_service_type type); +void connman_device_reset_scanning(struct connman_device *device); int connman_device_set_string(struct connman_device *device, const char *key, const char *value); @@ -100,11 +106,22 @@ int connman_device_add_network(struct connman_device *device, struct connman_network *network); struct connman_network *connman_device_get_network(struct connman_device *device, const char *identifier); +#if defined TIZEN_EXT +struct connman_network *connman_device_get_default_network( + struct connman_device *device); +void connman_device_set_pending_reply(struct connman_device *device, + DBusMessage *msg); +void connman_device_send_connected_signal(struct connman_device *device, + bool connected); +void connman_device_set_max_scan_ssids(struct connman_device *device, + int max_scan_ssids); +int connman_device_get_max_scan_ssids(struct connman_device *device); +void connman_device_set_wifi_5ghz_supported(struct connman_device *device, + bool is_5_0_ghz_supported); +bool connman_device_get_wifi_5ghz_supported(struct connman_device *device); +#endif int connman_device_remove_network(struct connman_device *device, - const char *identifier); -void connman_device_remove_all_networks(struct connman_device *device); - -void connman_device_schedule_scan(struct connman_device *device); + struct connman_network *network); int connman_device_register(struct connman_device *device); void connman_device_unregister(struct connman_device *device); @@ -112,6 +129,46 @@ void connman_device_unregister(struct connman_device *device); void *connman_device_get_data(struct connman_device *device); void connman_device_set_data(struct connman_device *device, void *data); +int connman_device_set_regdom(struct connman_device *device, + const char *alpha2); +void connman_device_regdom_notify(struct connman_device *device, + int result, const char *alpha2); +struct connman_device *connman_device_create_from_index(int index); +struct connman_device *connman_device_find_by_index(int index); +int connman_device_reconnect_service(struct connman_device *device); + +#if defined TIZEN_EXT +bool connman_device_set_last_user_selection_time(struct connman_device *device, + time_t time); +time_t connman_device_get_last_user_selection_time(struct connman_device *device); +bool connman_device_set_last_user_selection_ident(struct connman_device *device, + const char *ident); +const char *connman_device_get_last_user_selection_ident(struct connman_device *device); +bool connman_device_set_last_connected_ident(struct connman_device *device, + const char *ident); +const char *connman_device_get_last_connected_ident(struct connman_device *device); +void connman_device_save_last_user_selection(struct connman_device *device); +void connman_device_load_last_user_selection(struct connman_device *device); +void connman_device_save_last_connected(struct connman_device *device); +void connman_device_load_last_connected(struct connman_device *device); + +void connman_device_mac_policy_notify(struct connman_device *device, + int result, unsigned int policy); +int connman_device_set_mac_policy(struct connman_device *device, + unsigned int policy); +unsigned int connman_device_get_mac_policy(struct connman_device *device); +void connman_device_preassoc_mac_policy_notify(struct connman_device *device, + int result, unsigned int policy); +int connman_device_set_preassoc_mac_policy(struct connman_device *device, + unsigned int policy); +unsigned int connman_device_get_preassoc_mac_policy(struct connman_device *device); +void connman_device_random_mac_lifetime_notify(struct connman_device *device, + int result, unsigned int lifetime); +int connman_device_set_random_mac_lifetime(struct connman_device *device, + unsigned int lifetime); +unsigned int connman_device_get_random_mac_lifetime(struct connman_device *device); +#endif + struct connman_device_driver { const char *name; enum connman_device_type type; @@ -120,7 +177,27 @@ struct connman_device_driver { void (*remove) (struct connman_device *device); int (*enable) (struct connman_device *device); int (*disable) (struct connman_device *device); - int (*scan) (struct connman_device *device); + int (*scan)(struct connman_device *device, + struct connman_device_scan_params *params); + void (*stop_scan) (enum connman_service_type type, + struct connman_device *device); + int (*set_regdom) (struct connman_device *device, + const char *alpha2); +#if defined TIZEN_EXT + int (*specific_scan) (enum connman_service_type type, + struct connman_device *device, int scan_type, + GSList *specific_scan_list, void *user_data); + int (*set_mac_policy) (struct connman_device *device, unsigned int policy); + int (*set_preassoc_mac_policy) (struct connman_device *device, unsigned int policy); + int (*set_random_mac_lifetime) (struct connman_device *device, unsigned int lifetime); +#endif +#if defined TIZEN_EXT_WIFI_MESH + int (*abort_scan) (enum connman_service_type type, + struct connman_device *device); + int (*mesh_specific_scan) (enum connman_service_type type, + struct connman_device *device, const char *ssid, unsigned int freq, + void *user_data); +#endif }; int connman_device_driver_register(struct connman_device_driver *driver);