From 1a7b537ebbad637e5a8b75aa7b3b7207fe26fb92 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Tue, 21 Apr 2009 01:35:30 +0000 Subject: swconfig: implement uci loading support git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15315 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/swconfig/src/swlib.h | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'package/swconfig/src/swlib.h') diff --git a/package/swconfig/src/swlib.h b/package/swconfig/src/swlib.h index e00ff47a51..b3c6769de1 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 + * Copyright (C) 2008-2009 Felix Fietkau * * 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; @@ -199,6 +200,17 @@ struct switch_attr *swlib_lookup_attr(struct switch_dev *dev, 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 @@ -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 -- cgit v1.2.3