Files
cunicu/proto/core/interface.proto
Steffen Vogel 92a7ad2f7f daemon: use per-interface features
Signed-off-by: Steffen Vogel <post@steffenvogel.de>
2022-10-07 18:30:50 +02:00

40 lines
803 B
Protocol Buffer

syntax = "proto3";
package cunicu.core;
option go_package = "github.com/stv0g/cunicu/pkg/proto/core";
import "common.proto";
import "core/peer.proto";
import "feature/epdisc.proto";
// Type of the WireGuard interface impelementation
enum InterfaceType {
UNKNOWN = 0;
LINUX_KERNEL = 1;
OPENBSD_KERNEL = 2;
WINDOWS_KERNEL = 3;
USERSPACE = 4;
}
// A WireGuard interface
// See: https://pkg.go.dev/golang.zx2c4.com/wireguard/wgctrl/wgtypes#Device
message Interface {
string name = 1;
InterfaceType type = 2;
bytes public_key = 3;
bytes private_key = 4;
uint32 listen_port = 5;
uint32 firewall_mark = 6;
repeated Peer peers = 7;
epdisc.Interface ice = 8;
uint32 ifindex = 9;
uint32 mtu = 10;
Timestamp last_sync_timestamp = 11;
}