X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fubus.git;a=blobdiff_plain;f=ubusmsg.h;h=c9b92e7132edb039618a21921bc695396a722b0e;hp=1aa2fbe4d855ea413c228163b72356bc18536679;hb=29d7092252a10c11ac137e38c871e301e26a8c11;hpb=42bc27ae38d92f4fe11872b0f9d57f8d3578dcfe;ds=sidebyside diff --git a/ubusmsg.h b/ubusmsg.h index 1aa2fbe..c9b92e7 100644 --- a/ubusmsg.h +++ b/ubusmsg.h @@ -29,7 +29,6 @@ struct ubus_msghdr { uint8_t type; uint16_t seq; uint32_t peer; - struct blob_attr data[]; } __packetdata; enum ubus_msg_type { @@ -54,6 +53,21 @@ enum ubus_msg_type { UBUS_MSG_ADD_OBJECT, UBUS_MSG_REMOVE_OBJECT, + /* + * subscribe/unsubscribe to object notifications + * The unsubscribe message is sent from ubusd when + * the object disappears + */ + 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, }; @@ -71,6 +85,12 @@ enum ubus_msg_attr { UBUS_ATTR_SIGNATURE, UBUS_ATTR_DATA, + UBUS_ATTR_TARGET, + + UBUS_ATTR_ACTIVE, + UBUS_ATTR_NO_REPLY, + + UBUS_ATTR_SUBSCRIBERS, /* must be last */ UBUS_ATTR_MAX, @@ -85,6 +105,9 @@ enum ubus_msg_status { UBUS_STATUS_NO_DATA, UBUS_STATUS_PERMISSION_DENIED, UBUS_STATUS_TIMEOUT, + UBUS_STATUS_NOT_SUPPORTED, + UBUS_STATUS_UNKNOWN_ERROR, + UBUS_STATUS_CONNECTION_FAILED, __UBUS_STATUS_LAST };