struct tevent_context *ev,
struct timeval endtime);
+void _tevent_req_notify_callback(struct tevent_req *req, const char *location);
+#define tevent_req_notify_callback(req) \
+ _tevent_req_notify_callback(req, __location__)
+
void _tevent_req_done(struct tevent_req *req,
const char *location);
#define tevent_req_done(req) \
return req;
}
-static void tevent_req_finish(struct tevent_req *req,
- enum tevent_req_state state,
- const char *location)
+void _tevent_req_notify_callback(struct tevent_req *req, const char *location)
{
- req->internal.state = state;
req->internal.finish_location = location;
if (req->async.fn != NULL) {
req->async.fn(req);
}
}
+static void tevent_req_finish(struct tevent_req *req,
+ enum tevent_req_state state,
+ const char *location)
+{
+ req->internal.state = state;
+ _tevent_req_notify_callback(req, location);
+}
+
/**
* @brief An async request has successfully finished
* @param[in] req The finished request