]> git.ipfire.org Git - thirdparty/systemd.git/blob - src/shared/vlan-util.h
license: LGPL-2.1+ -> LGPL-2.1-or-later
[thirdparty/systemd.git] / src / shared / vlan-util.h
1 /* SPDX-License-Identifier: LGPL-2.1-or-later */
2 #pragma once
3
4 #include <stdbool.h>
5 #include <inttypes.h>
6
7 #include "conf-parser.h"
8
9 #define VLANID_MAX 4094
10 #define VLANID_INVALID UINT16_MAX
11
12 /* Note that we permit VLAN Id 0 here, as that is apparently OK by the Linux kernel */
13 static inline bool vlanid_is_valid(uint16_t id) {
14 return id <= VLANID_MAX;
15 }
16
17 int parse_vlanid(const char *p, uint16_t *ret);
18 int parse_vid_range(const char *p, uint16_t *vid, uint16_t *vid_end);
19
20 CONFIG_PARSER_PROTOTYPE(config_parse_default_port_vlanid);
21 CONFIG_PARSER_PROTOTYPE(config_parse_vlanid);