#include <inttypes.h>
#include <linux/fib_rules.h>
#include <stdbool.h>
-#include <stdio.h>
#include "conf-parser.h"
#include "in-addr-util.h"
#include "networkd-util.h"
-#include "set.h"
-typedef struct Network Network;
typedef struct Link Link;
typedef struct Manager Manager;
+typedef struct Network Network;
+typedef struct Request Request;
typedef struct RoutingPolicyRule {
Manager *manager;
RoutingPolicyRule *routing_policy_rule_free(RoutingPolicyRule *rule);
+void routing_policy_rule_hash_func(const RoutingPolicyRule *rule, struct siphash *state);
+int routing_policy_rule_compare_func(const RoutingPolicyRule *a, const RoutingPolicyRule *b);
+
void network_drop_invalid_routing_policy_rules(Network *network);
-int link_set_routing_policy_rules(Link *link);
+int link_request_static_routing_policy_rules(Link *link);
+int request_process_routing_policy_rule(Request *req);
int manager_rtnl_process_rule(sd_netlink *rtnl, sd_netlink_message *message, Manager *m);
int manager_drop_routing_policy_rules_internal(Manager *m, bool foreign, const Link *except);