network: use request queue to configure routing policy rules

This commit is contained in:
Yu Watanabe
2021-05-12 11:26:06 +09:00
parent 7191a57a0e
commit 0e5ef6beb6
8 changed files with 144 additions and 63 deletions
+7 -1
View File
@@ -5,12 +5,15 @@
#include "networkd-link.h"
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_ROUTING_POLICY_RULE,
_REQUEST_TYPE_MAX,
_REQUEST_TYPE_INVALID = -EINVAL,
} RequestType;
@@ -19,7 +22,10 @@ typedef struct Request {
Link *link;
RequestType type;
bool consume_object;
void *object;
union {
RoutingPolicyRule *rule;
void *object;
};
void *userdata;
unsigned *message_counter;
link_netlink_message_handler_t netlink_handler;