*
* Connection Manager
*
- * Copyright (C) 2007-2009 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
#ifndef __CONNMAN_IPCONFIG_H
#define __CONNMAN_IPCONFIG_H
+#include <connman/ipaddress.h>
+
#ifdef __cplusplus
extern "C" {
#endif
/**
* SECTION:ipconfig
* @title: IP configuration premitives
- * @short_description: Functions for registering IP configuration modules
+ * @short_description: Functions for IP configuration handling
*/
-#define CONNMAN_IPCONFIG_PRIORITY_LOW -100
-#define CONNMAN_IPCONFIG_PRIORITY_DEFAULT 0
-#define CONNMAN_IPCONFIG_PRIORITY_HIGH 100
+enum connman_ipconfig_type {
+ CONNMAN_IPCONFIG_TYPE_UNKNOWN = 0,
+ CONNMAN_IPCONFIG_TYPE_IPV4 = 1,
+ CONNMAN_IPCONFIG_TYPE_IPV6 = 2,
+ CONNMAN_IPCONFIG_TYPE_ALL = 3,
+};
-struct connman_ipconfig {
- const char *name;
- int priority;
- int (*request) (const char *interface);
- int (*release) (const char *interface);
- int (*renew) (const char *interface);
+enum connman_ipconfig_method {
+ CONNMAN_IPCONFIG_METHOD_UNKNOWN = 0,
+ CONNMAN_IPCONFIG_METHOD_OFF = 1,
+ CONNMAN_IPCONFIG_METHOD_FIXED = 2,
+ CONNMAN_IPCONFIG_METHOD_MANUAL = 3,
+ CONNMAN_IPCONFIG_METHOD_DHCP = 4,
+ CONNMAN_IPCONFIG_METHOD_AUTO = 5,
};
-extern int connman_ipconfig_register(struct connman_ipconfig *ipconfig);
-extern void connman_ipconfig_unregister(struct connman_ipconfig *ipconfig);
+struct connman_ipconfig;
#ifdef __cplusplus
}