libubus.h: add ubus_auto_shutdown()
Add ubus_auto_shutdown function, which ensures any pending uloop_timer is cancelled before calling ubus_shutdown on the context. This avoids a condition where ubus_shutdown() is called during ubus_auto_connect attempting a reconnection. Signed-off-by: Ben Kelly <ben@benjii.net>
This commit is contained in:
parent
619f3a160d
commit
6a86e65f7d
1 changed files with 6 additions and 0 deletions
|
@ -240,6 +240,12 @@ void ubus_free(struct ubus_context *ctx);
|
|||
/* call this only for struct ubus_context pointers initialised by ubus_connect_ctx() */
|
||||
void ubus_shutdown(struct ubus_context *ctx);
|
||||
|
||||
static inline void ubus_auto_shutdown(struct ubus_auto_conn *conn)
|
||||
{
|
||||
uloop_timeout_cancel(&conn->timer);
|
||||
ubus_shutdown(&conn->ctx);
|
||||
}
|
||||
|
||||
const char *ubus_strerror(int error);
|
||||
|
||||
static inline void ubus_add_uloop(struct ubus_context *ctx)
|
||||
|
|
Loading…
Add table
Reference in a new issue