62:staticinlineboolblobmsg_get_bool(structblob_attr *attr) 63:staticinline uint16_t blobmsg_get_u16(structblob_attr *attr) 64:staticinline uint32_t blobmsg_get_u32(structblob_attr *attr) 65:staticinline uint64_t blobmsg_get_u64(structblob_attr *attr) 66:staticinlinechar*blobmsg_get_strin...
62:staticinlineboolblobmsg_get_bool(structblob_attr *attr) 63:staticinline uint16_t blobmsg_get_u16(structblob_attr *attr) 64:staticinline uint32_t blobmsg_get_u32(structblob_attr *attr) 65:staticinline uint64_t blobmsg_get_u64(structblob_attr *attr) 66:staticinlinechar*blobmsg_get_strin...
blobmsg_add_double(b, name, json_object_get_double(obj)); break; case json_type_null: blobmsg_add_field(b, BLOBMSG_TYPE_UNSPEC, name, NULL, 0); break; default: return false; } return ret; } static bool __blobmsg_add_json(struct blob_buf *b, json_object *obj) ...
// 多个blob管理数据结构structblob_buf {structblob_attr *head; // 指向blob_buf的开头,分配一个4字节的blob_attr(仅有id_len),记录已使用的len。最初时等于blob_buf->bufbool(*grow)(structblob_buf *buf,intminlen); //内存扩展回调函数intbuflen; //buf总长度void*buf; // 指向buf起始位置(开头)...