mirror of
https://github.com/checkpoint-restore/criu
synced 2025-08-22 09:58:09 +00:00
When restoring a pair of veth devices that had one end inside a namespace or container and the other end outside, CRIU creates a new veth pair, puts one end in the namespace/container, and names the other end from what's specified in the --veth-pair IN=OUT command line option. This patch allows for appending a bridge name to the OUT string in the form of OUT@<BRIDGE-NAME> in order for CRIU to move the outside veth to the named bridge. For example, --veth-pair eth0=veth1@br0 tells CRIU to name the peer of eth0 veth1 and move it to bridge br0. This is a simple and handy extension of the --veth-pair option that obviates the need for an action script although one can still do the same (and possibly more) if they prefer to use action scripts. Signed-off-by: Saied Kazemi <saied@google.com> Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
34 lines
776 B
C
34 lines
776 B
C
#ifndef __CR_NET_H__
|
|
#define __CR_NET_H__
|
|
|
|
#include "list.h"
|
|
|
|
struct cr_imgset;
|
|
extern int dump_net_ns(int ns_id);
|
|
extern int prepare_net_ns(int pid);
|
|
extern int netns_pre_create(void);
|
|
|
|
struct veth_pair {
|
|
struct list_head node;
|
|
char *inside;
|
|
char *outside;
|
|
char *bridge;
|
|
};
|
|
|
|
extern int collect_net_namespaces(bool for_dump);
|
|
|
|
extern int network_lock(void);
|
|
extern void network_unlock(void);
|
|
|
|
extern struct ns_desc net_ns_desc;
|
|
|
|
#include "protobuf/netdev.pb-c.h"
|
|
extern int write_netdev_img(NetDeviceEntry *nde, struct cr_imgset *fds);
|
|
extern int read_ns_sys_file(char *path, char *buf, int len);
|
|
extern int restore_link_parms(NetDeviceEntry *nde, int nlsk);
|
|
|
|
extern int veth_pair_add(char *in, char *out);
|
|
extern int move_veth_to_bridge(void);
|
|
|
|
#endif /* __CR_NET_H__ */
|