X-Git-Url: https://git.archive.openwrt.org/?a=blobdiff_plain;f=blobmsg.h;h=c4bf10d404abb231fa34a88aa994e3a3e2a1eeab;hb=d01922625d21f97fcab757d0299586178333f1e0;hp=056f79a7dcd465fc3e835c13536acbf420345647;hpb=2f74dbad14b42c3a6687b093210b8604d0b235cd;p=project%2Flibubox.git diff --git a/blobmsg.h b/blobmsg.h index 056f79a..c4bf10d 100644 --- a/blobmsg.h +++ b/blobmsg.h @@ -180,10 +180,19 @@ static inline uint32_t blobmsg_get_u32(struct blob_attr *attr) static inline uint64_t blobmsg_get_u64(struct blob_attr *attr) { - return be64_to_cpu(*(uint64_t *) blobmsg_data(attr)); + uint32_t *ptr = blobmsg_data(attr); + uint64_t tmp = ((uint64_t) be32_to_cpu(ptr[0])) << 32; + tmp |= be32_to_cpu(ptr[1]); + return tmp; +} + +static inline char *blobmsg_get_string(struct blob_attr *attr) +{ + return blobmsg_data(attr); } void *blobmsg_alloc_string_buffer(struct blob_buf *buf, const char *name, int maxlen); +void *blobmsg_realloc_string_buffer(struct blob_buf *buf, int maxlen); void blobmsg_add_string_buffer(struct blob_buf *buf); /* blobmsg to json formatting */