]>
Commit | Line | Data |
---|---|---|
53e1b683 | 1 | /* SPDX-License-Identifier: LGPL-2.1+ */ |
091214b6 PF |
2 | #pragma once |
3 | ||
4 | /*** | |
5 | This file is part of systemd. | |
6 | ||
7 | Copyright 2017 Intel Corporation. All rights reserved. | |
091214b6 PF |
8 | ***/ |
9 | ||
6e849e95 | 10 | #include "networkd-address.h" |
091214b6 PF |
11 | #include "networkd-link.h" |
12 | ||
6e849e95 PF |
13 | typedef struct Prefix Prefix; |
14 | ||
15 | struct Prefix { | |
16 | Network *network; | |
17 | NetworkConfigSection *section; | |
18 | ||
19 | sd_radv_prefix *radv_prefix; | |
20 | ||
21 | LIST_FIELDS(Prefix, prefixes); | |
22 | }; | |
23 | ||
24 | int prefix_new(Prefix **ret); | |
25 | void prefix_free(Prefix *prefix); | |
26 | int prefix_new_static(Network *network, const char *filename, unsigned section, | |
27 | Prefix **ret); | |
28 | ||
29 | DEFINE_TRIVIAL_CLEANUP_FUNC(Prefix*, prefix_free); | |
6e849e95 | 30 | |
56a23cb4 | 31 | int config_parse_router_prefix_delegation(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); |
6e849e95 PF |
32 | int config_parse_router_preference(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); |
33 | int config_parse_prefix(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); | |
34 | int config_parse_prefix_flags(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); | |
35 | int config_parse_prefix_lifetime(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); | |
36 | ||
c555a358 | 37 | int radv_emit_dns(Link *link); |
091214b6 | 38 | int radv_configure(Link *link); |