diff options
author | Paul Holzinger <pholzing@redhat.com> | 2021-10-14 10:33:18 +0200 |
---|---|---|
committer | Paul Holzinger <pholzing@redhat.com> | 2021-11-11 15:54:02 +0100 |
commit | eaae29462880aa0fb17e8d448cc79519e070e64f (patch) | |
tree | 7da8ee0d642bb34f0f7c97a64e95f93661966050 /libpod/network/internal/util/parse.go | |
parent | 12c62b92ff2f63cb34dcb9c0555b96983e6aad94 (diff) | |
download | podman-eaae29462880aa0fb17e8d448cc79519e070e64f.tar.gz podman-eaae29462880aa0fb17e8d448cc79519e070e64f.tar.bz2 podman-eaae29462880aa0fb17e8d448cc79519e070e64f.zip |
netavark network interface
Implement a new network interface for netavark.
For now only bridge networking is supported.
The interface can create/list/inspect/remove networks. For setup and
teardown netavark will be invoked.
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Diffstat (limited to 'libpod/network/internal/util/parse.go')
-rw-r--r-- | libpod/network/internal/util/parse.go | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/libpod/network/internal/util/parse.go b/libpod/network/internal/util/parse.go new file mode 100644 index 000000000..1f68df0bb --- /dev/null +++ b/libpod/network/internal/util/parse.go @@ -0,0 +1,37 @@ +package util + +import ( + "strconv" + + "github.com/pkg/errors" +) + +// ParseMTU parses the mtu option +func ParseMTU(mtu string) (int, error) { + if mtu == "" { + return 0, nil // default + } + m, err := strconv.Atoi(mtu) + if err != nil { + return 0, err + } + if m < 0 { + return 0, errors.Errorf("mtu %d is less than zero", m) + } + return m, nil +} + +// ParseVlan parses the vlan option +func ParseVlan(vlan string) (int, error) { + if vlan == "" { + return 0, nil // default + } + v, err := strconv.Atoi(vlan) + if err != nil { + return 0, err + } + if v < 0 || v > 4094 { + return 0, errors.Errorf("vlan ID %d must be between 0 and 4094", v) + } + return v, nil +} |