X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=include%2Fipconfig.h;h=68ef40b68d08c0c8aa1bfafa4bf58df79d258db7;hb=5479dad2b3b5f342f51ca6e7ec8a5a501820bd55;hp=6d51ebdad72dc8021d122552134610c371668ecb;hpb=222850fc169258e69b27a862826328368a4506ae;p=platform%2Fupstream%2Fconnman.git diff --git a/include/ipconfig.h b/include/ipconfig.h old mode 100644 new mode 100755 index 6d51ebd..68ef40b --- a/include/ipconfig.h +++ b/include/ipconfig.h @@ -2,7 +2,7 @@ * * Connection Manager * - * Copyright (C) 2007-2010 Intel Corporation. All rights reserved. + * Copyright (C) 2007-2012 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,6 +22,8 @@ #ifndef __CONNMAN_IPCONFIG_H #define __CONNMAN_IPCONFIG_H +#include + #ifdef __cplusplus extern "C" { #endif @@ -32,27 +34,11 @@ extern "C" { * @short_description: Functions for IP configuration handling */ -struct connman_ipaddress { - int family; - unsigned char prefixlen; - char *local; - char *peer; - char *broadcast; - char *gateway; -}; - -struct connman_ipaddress *connman_ipaddress_alloc(int family); -void connman_ipaddress_free(struct connman_ipaddress *ipaddress); -void connman_ipaddress_set(struct connman_ipaddress *ipaddress, - const char *address, const char *netmask, const char *gateway); -void connman_ipaddress_clear(struct connman_ipaddress *ipaddress); -void connman_ipaddress_copy(struct connman_ipaddress *ipaddress, - struct connman_ipaddress *source); - enum connman_ipconfig_type { CONNMAN_IPCONFIG_TYPE_UNKNOWN = 0, CONNMAN_IPCONFIG_TYPE_IPV4 = 1, CONNMAN_IPCONFIG_TYPE_IPV6 = 2, + CONNMAN_IPCONFIG_TYPE_ALL = 3, }; enum connman_ipconfig_method { @@ -61,57 +47,11 @@ enum connman_ipconfig_method { CONNMAN_IPCONFIG_METHOD_FIXED = 2, CONNMAN_IPCONFIG_METHOD_MANUAL = 3, CONNMAN_IPCONFIG_METHOD_DHCP = 4, + CONNMAN_IPCONFIG_METHOD_AUTO = 5, }; struct connman_ipconfig; -struct connman_ipconfig_ops { - void (*up) (struct connman_ipconfig *ipconfig); - void (*down) (struct connman_ipconfig *ipconfig); - void (*lower_up) (struct connman_ipconfig *ipconfig); - void (*lower_down) (struct connman_ipconfig *ipconfig); - void (*ip_bound) (struct connman_ipconfig *ipconfig); - void (*ip_release) (struct connman_ipconfig *ipconfig); -}; - -struct connman_ipconfig *connman_ipconfig_create(int index, - enum connman_ipconfig_type type); -struct connman_ipconfig *connman_ipconfig_clone(struct connman_ipconfig *ipconfig); -struct connman_ipconfig *connman_ipconfig_ref(struct connman_ipconfig *ipconfig); -void connman_ipconfig_unref(struct connman_ipconfig *ipconfig); - -void *connman_ipconfig_get_data(struct connman_ipconfig *ipconfig); -void connman_ipconfig_set_data(struct connman_ipconfig *ipconfig, void *data); - -int connman_ipconfig_get_index(struct connman_ipconfig *ipconfig); -const char *connman_ipconfig_get_ifname(struct connman_ipconfig *ipconfig); - -void connman_ipconfig_set_ops(struct connman_ipconfig *ipconfig, - const struct connman_ipconfig_ops *ops); -int connman_ipaddress_set_ipv6(struct connman_ipaddress *ipaddress, - const char *address, const char *gateway, - unsigned char prefix_length); -int connman_ipconfig_set_method(struct connman_ipconfig *ipconfig, - enum connman_ipconfig_method method); -void connman_ipconfig_bind(struct connman_ipconfig *ipconfig, - struct connman_ipaddress *ipaddress); - -#define CONNMAN_IPCONFIG_PRIORITY_LOW -100 -#define CONNMAN_IPCONFIG_PRIORITY_DEFAULT 0 -#define CONNMAN_IPCONFIG_PRIORITY_HIGH 100 - -struct connman_ipconfig_driver { - const char *name; - enum connman_ipconfig_type type; - int priority; - int (*request) (struct connman_ipconfig *ipconfig); - int (*release) (struct connman_ipconfig *ipconfig); - int (*renew) (struct connman_ipconfig *ipconfig); -}; - -int connman_ipconfig_driver_register(struct connman_ipconfig_driver *driver); -void connman_ipconfig_driver_unregister(struct connman_ipconfig_driver *driver); - #ifdef __cplusplus } #endif