X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fubus.git;a=blobdiff_plain;f=ubusmsg.h;h=d3d29284d70d59b4616705ccdcade0741ab40b08;hp=833d7bff17afbe9fda3f9dc2bb7e889764a0f76f;hb=e59b44573423ad608d0752b46a6073222db9ed45;hpb=d366a6de839087d8a17e5855c14ae55e95b13c65 diff --git a/ubusmsg.h b/ubusmsg.h index 833d7bf..d3d2928 100644 --- a/ubusmsg.h +++ b/ubusmsg.h @@ -19,9 +19,10 @@ #define __packetdata __attribute__((packed)) __attribute__((__aligned__(4))) -#define UBUS_MAX_MSGLEN 65536 +#define UBUS_MSG_CHUNK_SIZE 65536 #define UBUS_SYSTEM_OBJECT_EVENT 1 +#define UBUS_SYSTEM_OBJECT_ACL 2 #define UBUS_SYSTEM_OBJECT_MAX 1024 struct ubus_msghdr { @@ -29,7 +30,6 @@ struct ubus_msghdr { uint8_t type; uint16_t seq; uint32_t peer; - struct blob_attr data[]; } __packetdata; enum ubus_msg_type { @@ -62,6 +62,13 @@ enum ubus_msg_type { UBUS_MSG_SUBSCRIBE, UBUS_MSG_UNSUBSCRIBE, + /* + * send a notification to all subscribers of an object. + * when sent from the server, it indicates a subscription + * status change + */ + UBUS_MSG_NOTIFY, + /* must be last */ __UBUS_MSG_LAST, }; @@ -81,6 +88,14 @@ enum ubus_msg_attr { UBUS_ATTR_DATA, UBUS_ATTR_TARGET, + UBUS_ATTR_ACTIVE, + UBUS_ATTR_NO_REPLY, + + UBUS_ATTR_SUBSCRIBERS, + + UBUS_ATTR_USER, + UBUS_ATTR_GROUP, + /* must be last */ UBUS_ATTR_MAX, };