talos
33 строки · 836.0 Байт
1// This Source Code Form is subject to the terms of the Mozilla Public
2// License, v. 2.0. If a copy of the MPL was not distributed with this
3// file, You can obtain one at http://mozilla.org/MPL/2.0/.
4
5package nethelpers
6
7import "fmt"
8
9// FailOverMAC is a MAC failover mode.
10type FailOverMAC uint8
11
12// FailOverMAC constants.
13//
14//structprotogen:gen_enum
15const (
16FailOverMACNone FailOverMAC = iota // none
17FailOverMACActive // active
18FailOverMACFollow // follow
19)
20
21// FailOverMACByName parses FailOverMac.
22func FailOverMACByName(f string) (FailOverMAC, error) {
23switch f {
24case "", "none":
25return FailOverMACNone, nil
26case "active":
27return FailOverMACActive, nil
28case "follow":
29return FailOverMACFollow, nil
30default:
31return 0, fmt.Errorf("invalid fail_over_mac value %v", f)
32}
33}
34