/* To prevent from triggering assertions in hash functions, remove this request before
* freeing object below. */
ordered_set_remove(req->link->manager->request_queue, req);
- if (req->on_free)
- /* on_free() may use object. So, let's call this earlier. */
- req->on_free(req);
if (req->consume_object)
request_free_object(req->type, req->object);
link_unref(req->link);
typedef struct Route Route;
typedef struct RoutingPolicyRule RoutingPolicyRule;
-typedef struct Request Request;
-
-typedef int (*request_after_configure_handler_t)(Request*, void*);
-typedef void (*request_on_free_handler_t)(Request*);
-
typedef enum RequestType {
REQUEST_TYPE_ACTIVATE_LINK,
REQUEST_TYPE_ADDRESS,
void *userdata;
unsigned *message_counter;
link_netlink_message_handler_t netlink_handler;
- request_after_configure_handler_t after_configure;
- request_on_free_handler_t on_free;
} Request;
void request_drop(Request *req);