summaryrefslogtreecommitdiffstats
path: root/package/swconfig/src/swlib.h
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-04-21 01:35:30 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-04-21 01:35:30 +0000
commit17a8f7b655ab85979781db15290784fcd3c496f2 (patch)
treecd0e54c4973624321c9d584a9d64885df936b58a /package/swconfig/src/swlib.h
parent4e941a1fa5713a2a0a3d2ec016168fc3eca142e8 (diff)
swconfig: implement uci loading support
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15315 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/swconfig/src/swlib.h')
-rw-r--r--package/swconfig/src/swlib.h21
1 files changed, 20 insertions, 1 deletions
diff --git a/package/swconfig/src/swlib.h b/package/swconfig/src/swlib.h
index e00ff47a5..b3c6769de 100644
--- a/package/swconfig/src/swlib.h
+++ b/package/swconfig/src/swlib.h
@@ -1,7 +1,7 @@
/*
* swlib.h: Switch configuration API (user space part)
*
- * Copyright (C) 2008 Felix Fietkau <nbd@openwrt.org>
+ * Copyright (C) 2008-2009 Felix Fietkau <nbd@openwrt.org>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public License
@@ -110,6 +110,7 @@ struct switch_dev;
struct switch_attr;
struct switch_port;
struct switch_val;
+struct uci_package;
struct switch_dev {
int id;
@@ -200,6 +201,17 @@ int swlib_set_attr(struct switch_dev *dev, struct switch_attr *attr,
struct switch_val *val);
/**
+ * swlib_set_attr_string: set the value for an attribute with type conversion
+ * @dev: switch device struct
+ * @attr: switch attribute struct
+ * @port_vlan: port or vlan (if applicable)
+ * @str: string value
+ * returns 0 on success
+ */
+int swlib_set_attr_string(struct switch_dev *dev, struct switch_attr *attr,
+ int port_vlan, const char *str);
+
+/**
* swlib_get_attr: get the value for an attribute
* @dev: switch device struct
* @attr: switch attribute struct
@@ -210,4 +222,11 @@ int swlib_set_attr(struct switch_dev *dev, struct switch_attr *attr,
int swlib_get_attr(struct switch_dev *dev, struct switch_attr *attr,
struct switch_val *val);
+/**
+ * swlib_apply_from_uci: set up the switch from a uci configuration
+ * @dev: switch device struct
+ * @p: uci package which contains the desired global config
+ */
+int swlib_apply_from_uci(struct switch_dev *dev, struct uci_package *p);
+
#endif