network: Introduce macvlan util
This commit is contained in:
committed by
Lennart Poettering
parent
6551cf2d61
commit
d51674806a
@@ -4,16 +4,8 @@
|
||||
|
||||
#include "conf-parser.h"
|
||||
#include "macvlan.h"
|
||||
#include "string-table.h"
|
||||
#include "macvlan-util.h"
|
||||
|
||||
static const char* const macvlan_mode_table[_NETDEV_MACVLAN_MODE_MAX] = {
|
||||
[NETDEV_MACVLAN_MODE_PRIVATE] = "private",
|
||||
[NETDEV_MACVLAN_MODE_VEPA] = "vepa",
|
||||
[NETDEV_MACVLAN_MODE_BRIDGE] = "bridge",
|
||||
[NETDEV_MACVLAN_MODE_PASSTHRU] = "passthru",
|
||||
};
|
||||
|
||||
DEFINE_STRING_TABLE_LOOKUP(macvlan_mode, MacVlanMode);
|
||||
DEFINE_CONFIG_PARSE_ENUM(config_parse_macvlan_mode, macvlan_mode, MacVlanMode, "Failed to parse macvlan mode");
|
||||
|
||||
static int netdev_macvlan_fill_message_create(NetDev *netdev, Link *link, sd_netlink_message *req) {
|
||||
|
||||
@@ -3,17 +3,9 @@
|
||||
|
||||
typedef struct MacVlan MacVlan;
|
||||
|
||||
#include "macvlan-util.h"
|
||||
#include "netdev.h"
|
||||
|
||||
typedef enum MacVlanMode {
|
||||
NETDEV_MACVLAN_MODE_PRIVATE = MACVLAN_MODE_PRIVATE,
|
||||
NETDEV_MACVLAN_MODE_VEPA = MACVLAN_MODE_VEPA,
|
||||
NETDEV_MACVLAN_MODE_BRIDGE = MACVLAN_MODE_BRIDGE,
|
||||
NETDEV_MACVLAN_MODE_PASSTHRU = MACVLAN_MODE_PASSTHRU,
|
||||
_NETDEV_MACVLAN_MODE_MAX,
|
||||
_NETDEV_MACVLAN_MODE_INVALID = -1
|
||||
} MacVlanMode;
|
||||
|
||||
struct MacVlan {
|
||||
NetDev meta;
|
||||
|
||||
@@ -25,7 +17,4 @@ DEFINE_NETDEV_CAST(MACVTAP, MacVlan);
|
||||
extern const NetDevVTable macvlan_vtable;
|
||||
extern const NetDevVTable macvtap_vtable;
|
||||
|
||||
const char *macvlan_mode_to_string(MacVlanMode d) _const_;
|
||||
MacVlanMode macvlan_mode_from_string(const char *d) _pure_;
|
||||
|
||||
CONFIG_PARSER_PROTOTYPE(config_parse_macvlan_mode);
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
/* SPDX-License-Identifier: LGPL-2.1+ */
|
||||
|
||||
#include "conf-parser.h"
|
||||
#include "macvlan-util.h"
|
||||
#include "string-table.h"
|
||||
|
||||
static const char* const macvlan_mode_table[_NETDEV_MACVLAN_MODE_MAX] = {
|
||||
[NETDEV_MACVLAN_MODE_PRIVATE] = "private",
|
||||
[NETDEV_MACVLAN_MODE_VEPA] = "vepa",
|
||||
[NETDEV_MACVLAN_MODE_BRIDGE] = "bridge",
|
||||
[NETDEV_MACVLAN_MODE_PASSTHRU] = "passthru",
|
||||
};
|
||||
|
||||
DEFINE_STRING_TABLE_LOOKUP(macvlan_mode, MacVlanMode);
|
||||
@@ -0,0 +1,16 @@
|
||||
/* SPDX-License-Identifier: LGPL-2.1+ */
|
||||
#pragma once
|
||||
|
||||
#include <linux/if_link.h>
|
||||
|
||||
typedef enum MacVlanMode {
|
||||
NETDEV_MACVLAN_MODE_PRIVATE = MACVLAN_MODE_PRIVATE,
|
||||
NETDEV_MACVLAN_MODE_VEPA = MACVLAN_MODE_VEPA,
|
||||
NETDEV_MACVLAN_MODE_BRIDGE = MACVLAN_MODE_BRIDGE,
|
||||
NETDEV_MACVLAN_MODE_PASSTHRU = MACVLAN_MODE_PASSTHRU,
|
||||
_NETDEV_MACVLAN_MODE_MAX,
|
||||
_NETDEV_MACVLAN_MODE_INVALID = -1
|
||||
} MacVlanMode;
|
||||
|
||||
const char *macvlan_mode_to_string(MacVlanMode d) _const_;
|
||||
MacVlanMode macvlan_mode_from_string(const char *d) _pure_;
|
||||
@@ -149,6 +149,8 @@ shared_sources = files('''
|
||||
machine-image.h
|
||||
machine-pool.c
|
||||
machine-pool.h
|
||||
macvlan-util.c
|
||||
macvlan-util.h
|
||||
main-func.h
|
||||
module-util.h
|
||||
mount-util.c
|
||||
|
||||
Reference in New Issue
Block a user