- struct blob_attr *addr[ADDR_ATTR_MAX];
- blobmsg_parse(addr_attrs, ADDR_ATTR_MAX, addr, blobmsg_data(d), blobmsg_data_len(d));
- struct in_addr addr4;
- if (inet_pton(AF_INET, blobmsg_get_string(addr[ADDR_ATTR_ADDRESS]), &addr4) == 1)
- return addr4;
+ struct blob_attr *ccur;
+ unsigned ddrem;
+ struct blob_attr *dict = blobmsg_data(cur);
+ blobmsg_for_each_attr(ccur, dict, ddrem) {
+ if (!strcmp(blobmsg_name(ccur), "address"))
+ return blobmsg_get_string(ccur);
+ }