Compare commits
No commits in common. "debda5a4e53037c2fe209d770d21846c34f279a7" and "43a20059a5b3e263f3b00c9732578fc535a4f059" have entirely different histories.
debda5a4e5
...
43a20059a5
|
@ -182,9 +182,6 @@
|
||||||
<row><entry><varname>xfrm</varname></entry>
|
<row><entry><varname>xfrm</varname></entry>
|
||||||
<entry>A virtual tunnel interface like vti/vti6 but with several advantages.</entry></row>
|
<entry>A virtual tunnel interface like vti/vti6 but with several advantages.</entry></row>
|
||||||
|
|
||||||
<row><entry><varname>ifb</varname></entry>
|
|
||||||
<entry> The Intermediate Functional Block (ifb) pseudo network interface acts as a QoS concentrator for multiple different sources of traffic.</entry></row>
|
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</tgroup>
|
</tgroup>
|
||||||
</table>
|
</table>
|
||||||
|
|
|
@ -371,7 +371,6 @@ static const char* const nl_union_link_info_data_table[] = {
|
||||||
[NL_UNION_LINK_INFO_DATA_MACSEC] = "macsec",
|
[NL_UNION_LINK_INFO_DATA_MACSEC] = "macsec",
|
||||||
[NL_UNION_LINK_INFO_DATA_NLMON] = "nlmon",
|
[NL_UNION_LINK_INFO_DATA_NLMON] = "nlmon",
|
||||||
[NL_UNION_LINK_INFO_DATA_XFRM] = "xfrm",
|
[NL_UNION_LINK_INFO_DATA_XFRM] = "xfrm",
|
||||||
[NL_UNION_LINK_INFO_DATA_IFB] = "ifb",
|
|
||||||
};
|
};
|
||||||
|
|
||||||
DEFINE_STRING_TABLE_LOOKUP(nl_union_link_info_data, NLUnionLinkInfoData);
|
DEFINE_STRING_TABLE_LOOKUP(nl_union_link_info_data, NLUnionLinkInfoData);
|
||||||
|
|
|
@ -83,7 +83,6 @@ typedef enum NLUnionLinkInfoData {
|
||||||
NL_UNION_LINK_INFO_DATA_MACSEC,
|
NL_UNION_LINK_INFO_DATA_MACSEC,
|
||||||
NL_UNION_LINK_INFO_DATA_NLMON,
|
NL_UNION_LINK_INFO_DATA_NLMON,
|
||||||
NL_UNION_LINK_INFO_DATA_XFRM,
|
NL_UNION_LINK_INFO_DATA_XFRM,
|
||||||
NL_UNION_LINK_INFO_DATA_IFB,
|
|
||||||
_NL_UNION_LINK_INFO_DATA_MAX,
|
_NL_UNION_LINK_INFO_DATA_MAX,
|
||||||
_NL_UNION_LINK_INFO_DATA_INVALID = -1
|
_NL_UNION_LINK_INFO_DATA_INVALID = -1
|
||||||
} NLUnionLinkInfoData;
|
} NLUnionLinkInfoData;
|
||||||
|
|
|
@ -7,8 +7,6 @@ sources = files('''
|
||||||
netdev/bridge.h
|
netdev/bridge.h
|
||||||
netdev/dummy.c
|
netdev/dummy.c
|
||||||
netdev/dummy.h
|
netdev/dummy.h
|
||||||
netdev/ifb.c
|
|
||||||
netdev/ifb.h
|
|
||||||
netdev/ipvlan.c
|
netdev/ipvlan.c
|
||||||
netdev/ipvlan.h
|
netdev/ipvlan.h
|
||||||
netdev/macvlan.c
|
netdev/macvlan.c
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
/* SPDX-License-Identifier: LGPL-2.1+
|
|
||||||
* Copyright © 2019 VMware, Inc. */
|
|
||||||
|
|
||||||
#include "ifb.h"
|
|
||||||
|
|
||||||
const NetDevVTable ifb_vtable = {
|
|
||||||
.object_size = sizeof(IntermediateFunctionalBlock),
|
|
||||||
.sections = NETDEV_COMMON_SECTIONS,
|
|
||||||
.create_type = NETDEV_CREATE_INDEPENDENT,
|
|
||||||
.generate_mac = true,
|
|
||||||
};
|
|
|
@ -1,13 +0,0 @@
|
||||||
/* SPDX-License-Identifier: LGPL-2.1+
|
|
||||||
* Copyright © 2019 VMware, Inc. */
|
|
||||||
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include "netdev.h"
|
|
||||||
|
|
||||||
typedef struct IntermediateFunctionalBlock {
|
|
||||||
NetDev meta;
|
|
||||||
} IntermediateFunctionalBlock;
|
|
||||||
|
|
||||||
DEFINE_NETDEV_CAST(IFB, IntermediateFunctionalBlock);
|
|
||||||
extern const NetDevVTable ifb_vtable;
|
|
|
@ -12,7 +12,6 @@
|
||||||
#include "fd-util.h"
|
#include "fd-util.h"
|
||||||
#include "fou-tunnel.h"
|
#include "fou-tunnel.h"
|
||||||
#include "geneve.h"
|
#include "geneve.h"
|
||||||
#include "ifb.h"
|
|
||||||
#include "ipvlan.h"
|
#include "ipvlan.h"
|
||||||
#include "l2tp-tunnel.h"
|
#include "l2tp-tunnel.h"
|
||||||
#include "list.h"
|
#include "list.h"
|
||||||
|
@ -74,7 +73,6 @@ const NetDevVTable * const netdev_vtable[_NETDEV_KIND_MAX] = {
|
||||||
[NETDEV_KIND_MACSEC] = &macsec_vtable,
|
[NETDEV_KIND_MACSEC] = &macsec_vtable,
|
||||||
[NETDEV_KIND_NLMON] = &nlmon_vtable,
|
[NETDEV_KIND_NLMON] = &nlmon_vtable,
|
||||||
[NETDEV_KIND_XFRM] = &xfrm_vtable,
|
[NETDEV_KIND_XFRM] = &xfrm_vtable,
|
||||||
[NETDEV_KIND_IFB] = &ifb_vtable,
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static const char* const netdev_kind_table[_NETDEV_KIND_MAX] = {
|
static const char* const netdev_kind_table[_NETDEV_KIND_MAX] = {
|
||||||
|
@ -111,7 +109,6 @@ static const char* const netdev_kind_table[_NETDEV_KIND_MAX] = {
|
||||||
[NETDEV_KIND_MACSEC] = "macsec",
|
[NETDEV_KIND_MACSEC] = "macsec",
|
||||||
[NETDEV_KIND_NLMON] = "nlmon",
|
[NETDEV_KIND_NLMON] = "nlmon",
|
||||||
[NETDEV_KIND_XFRM] = "xfrm",
|
[NETDEV_KIND_XFRM] = "xfrm",
|
||||||
[NETDEV_KIND_IFB] = "ifb",
|
|
||||||
};
|
};
|
||||||
|
|
||||||
DEFINE_STRING_TABLE_LOOKUP(netdev_kind, NetDevKind);
|
DEFINE_STRING_TABLE_LOOKUP(netdev_kind, NetDevKind);
|
||||||
|
|
|
@ -80,7 +80,6 @@ typedef enum NetDevKind {
|
||||||
NETDEV_KIND_MACSEC,
|
NETDEV_KIND_MACSEC,
|
||||||
NETDEV_KIND_NLMON,
|
NETDEV_KIND_NLMON,
|
||||||
NETDEV_KIND_XFRM,
|
NETDEV_KIND_XFRM,
|
||||||
NETDEV_KIND_IFB,
|
|
||||||
_NETDEV_KIND_MAX,
|
_NETDEV_KIND_MAX,
|
||||||
_NETDEV_KIND_TUNNEL, /* Used by config_parse_stacked_netdev() */
|
_NETDEV_KIND_TUNNEL, /* Used by config_parse_stacked_netdev() */
|
||||||
_NETDEV_KIND_INVALID = -1
|
_NETDEV_KIND_INVALID = -1
|
||||||
|
|
|
@ -104,7 +104,7 @@ static int qdisc_handler(sd_netlink *rtnl, sd_netlink_message *m, Link *link) {
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (link->qdisc_messages == 0) {
|
if (link->route_messages == 0) {
|
||||||
log_link_debug(link, "QDisc configured");
|
log_link_debug(link, "QDisc configured");
|
||||||
link->qdiscs_configured = true;
|
link->qdiscs_configured = true;
|
||||||
link_check_ready(link);
|
link_check_ready(link);
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
[NetDev]
|
|
||||||
Kind=ifb
|
|
||||||
Name=ifb99
|
|
|
@ -10,7 +10,6 @@ Name=vxcan99
|
||||||
Name=vxcan-peer
|
Name=vxcan-peer
|
||||||
Name=vrf99
|
Name=vrf99
|
||||||
Name=geneve99
|
Name=geneve99
|
||||||
Name=ifb99
|
|
||||||
Name=ipiptun99
|
Name=ipiptun99
|
||||||
Name=nlmon99
|
Name=nlmon99
|
||||||
Name=xfrm99
|
Name=xfrm99
|
||||||
|
|
|
@ -556,7 +556,6 @@ class NetworkdNetDevTests(unittest.TestCase, Utilities):
|
||||||
'gretun97',
|
'gretun97',
|
||||||
'gretun98',
|
'gretun98',
|
||||||
'gretun99',
|
'gretun99',
|
||||||
'ifb99',
|
|
||||||
'ip6gretap98',
|
'ip6gretap98',
|
||||||
'ip6gretap99',
|
'ip6gretap99',
|
||||||
'ip6gretun96',
|
'ip6gretun96',
|
||||||
|
@ -634,7 +633,6 @@ class NetworkdNetDevTests(unittest.TestCase, Utilities):
|
||||||
'25-gre-tunnel-local-any.netdev',
|
'25-gre-tunnel-local-any.netdev',
|
||||||
'25-gre-tunnel-remote-any.netdev',
|
'25-gre-tunnel-remote-any.netdev',
|
||||||
'25-gre-tunnel.netdev',
|
'25-gre-tunnel.netdev',
|
||||||
'25-ifb.netdev',
|
|
||||||
'25-ip6gretap-tunnel-local-any.netdev',
|
'25-ip6gretap-tunnel-local-any.netdev',
|
||||||
'25-ip6gretap-tunnel.netdev',
|
'25-ip6gretap-tunnel.netdev',
|
||||||
'25-ip6gre-tunnel-any-any.netdev',
|
'25-ip6gre-tunnel-any-any.netdev',
|
||||||
|
@ -1381,13 +1379,6 @@ class NetworkdNetDevTests(unittest.TestCase, Utilities):
|
||||||
|
|
||||||
self.wait_online(['nlmon99:carrier'])
|
self.wait_online(['nlmon99:carrier'])
|
||||||
|
|
||||||
@expectedFailureIfModuleIsNotAvailable('ifb')
|
|
||||||
def test_ifb(self):
|
|
||||||
copy_unit_to_networkd_unit_path('25-ifb.netdev', 'netdev-link-local-addressing-yes.network')
|
|
||||||
start_networkd()
|
|
||||||
|
|
||||||
self.wait_online(['ifb99:degraded'])
|
|
||||||
|
|
||||||
class NetworkdL2TPTests(unittest.TestCase, Utilities):
|
class NetworkdL2TPTests(unittest.TestCase, Utilities):
|
||||||
|
|
||||||
links =[
|
links =[
|
||||||
|
|
Loading…
Reference in New Issue