staticinlinevoid* blobmsg_open_array(structblob_buf *buf,constchar*name)staticinlinevoidblobmsg_close_array(structblob_buf *buf,void*cookie)staticinlinevoid*blobmsg_open_table(structblob_buf *buf,constchar*name)staticinlinevoidblobmsg_close_table(structblob_buf *buf,void*cookie) 9. 解析blogmsg /*...
12:[POLICY_ATTR_ENABLE] = { .name ="enable", .type = BLOBMSG_TYPE_BOOL }, 13:[POLICY_ATTR_DNS] = { .name ="dns", .type = BLOBMSG_TYPE_ARRAY }, 14:}; 15: 16:/** 定义BLOBMSG_TYPE_ARRAY类型参数的实际数据类型 */ 17:staticconststructuci_blob_param_info policy_attr_info[__POL...
blobmsg_close_array(&buf, attr); struct blob_attr *msg = blobmsg_close_container(&buf); ``` 5. 解析blobmsg数组 在接收到包含blobmsg数组的消息后,我们可以使用blobmsg_parse函数解析其中的blobmsg数组。例如,我们可以使用以下代码解析消息中的blobmsg数组: ``` struct blob_attr *attr; int rem; blobmsg...
c = blobmsg_open_array(b, name); ret = blobmsg_add_array(b, json_object_get_array(obj)); blobmsg_close_array(b, c); break; case json_type_string: blobmsg_add_string(b, name, json_object_get_string(obj)); break; case json_type_boolean: blobmsg_add_u8(b, name, jso...
19:intblob_parse(structblob_attr *attr,structblob_attr **data, 20:conststructblob_attr_info *info,intmax) 二:blobmsg相关接口 1.数据结构 1:structblobmsg_hdr { 2:uint16_t namelen; 3:uint8_t name[]; 4:} __packed; 5: 6:structblobmsg_policy { ...