C代码调用uci的API读openwrt配置文件指南
来源:互联网 发布:晨风软件工作室 编辑:程序博客网 时间:2024/06/07 03:30
转自: http://blog.csdn.net/u012819339/article/details/50752157
实战背景
倘若我们自己写了一个应用程序,也想用uci来集中化管理配置该应用的配置文件,怎么办呢?
看了arvik的上一篇博客后相信新手能很快的使用uci对某个配置文件进行配置,只是如何让我们的应用程序读取配置文件内容呢,本篇arvik将解答这个问题。
简单的基本关系
图解
这里画一个图让大家大致了解配置文件的内容和uci的几个基本结构之间的对应关系。(例举文件为uhttpd的配置文件)
几个结构体
struct uci_package: 包结构体。它对应一个配置文件内容
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
struct uci_section:节结构体,它对应配置文件中的节
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
struct uci_option:选项结构体,它对应配置文件里节中的option或者list
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
struct uci_ptr:元素位置指针结构,用来查询并保存对应位置元素
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
struct uci_context: uci上下文结构,贯穿查询、更改配置文件全过程。
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
几个基本API函数
uci_alloc_context:动态申请一个uci上下文结构
- 1
uci_free_contex:释放由uci_alloc_context申请的uci上下文结构且包括它的所有数据
- 1
uci_lookup_ptr:由给定的元组查找元素。填充ptr结构体中的p,s,o,last
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
只需由以上3个API就可以对一个uci标准配置文件进行简单的读取了。
代码实战
下面就写一个实例代码试试吧
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
效果:
- 1
- 2
运行截图
0 0
- C代码调用uci的API读openwrt配置文件指南
- 【智能路由器】C代码调用uci的API读openwrt配置文件指南
- Openwrt下C调用UCI API
- openwrt uci api: 配置文件匿名节点的操作(2)
- OpenWRT UCI API的使用
- OpenWRT UCI API的使用
- OpenWRT UCI API的使用
- Openwrt UCI API的使用
- OpenWRT UCI API的使用——C语言
- openwrt uci c语言 读写配置文件
- [转载]OpenWRT UCI API的使用
- OpenWrt UCI系统操作指南
- openwrt UCI API lua wiki
- openwrt uci的使用
- Openwrt的uci操作
- OpenWrt的UCI系统
- openwrt uci api续: 找出匿名节点的"名字"
- 我的openwrt学习笔记(三十五):Openwrt 之luci-lua调用uci的测试
- CSS 文本垂直居中
- 古往今来中国最经典的50句名言
- StringBuffer,数组排序,Arrays,Character
- 最长有序子序列
- Android zxing生成二维码
- C代码调用uci的API读openwrt配置文件指南
- 详细解析BluetoothAdapter的详细api
- eclipse从git上更新项目
- 隐马尔可夫模型介绍
- ViewPager切换动画PagerTransFormer
- Frame Buffer 与显示屏的对应关系
- 极大似然估计
- android links
- OC中的全局变量,静态全局变量,常量,静态局部变量