go.ligato.io/vpp-agent/v3@v3.5.0/plugins/vpp/binapi/vpp2202/wireguard/wireguard.ba.go (about)

     1  // Code generated by GoVPP's binapi-generator. DO NOT EDIT.
     2  
     3  // Package wireguard contains generated bindings for API file wireguard.api.
     4  //
     5  // Contents:
     6  // -  1 enum
     7  // -  2 structs
     8  // - 17 messages
     9  package wireguard
    10  
    11  import (
    12  	"strconv"
    13  
    14  	api "go.fd.io/govpp/api"
    15  	codec "go.fd.io/govpp/codec"
    16  	interface_types "go.ligato.io/vpp-agent/v3/plugins/vpp/binapi/vpp2202/interface_types"
    17  	ip_types "go.ligato.io/vpp-agent/v3/plugins/vpp/binapi/vpp2202/ip_types"
    18  )
    19  
    20  // This is a compile-time assertion to ensure that this generated file
    21  // is compatible with the GoVPP api package it is being compiled against.
    22  // A compilation error at this line likely means your copy of the
    23  // GoVPP api package needs to be updated.
    24  const _ = api.GoVppAPIPackageIsVersion2
    25  
    26  const (
    27  	APIFile    = "wireguard"
    28  	APIVersion = "0.1.0"
    29  	VersionCrc = 0xb58de7e
    30  )
    31  
    32  // WireguardPeerFlags defines enum 'wireguard_peer_flags'.
    33  type WireguardPeerFlags uint8
    34  
    35  const (
    36  	WIREGUARD_PEER_STATUS_DEAD WireguardPeerFlags = 1
    37  	WIREGUARD_PEER_ESTABLISHED WireguardPeerFlags = 2
    38  )
    39  
    40  var (
    41  	WireguardPeerFlags_name = map[uint8]string{
    42  		1: "WIREGUARD_PEER_STATUS_DEAD",
    43  		2: "WIREGUARD_PEER_ESTABLISHED",
    44  	}
    45  	WireguardPeerFlags_value = map[string]uint8{
    46  		"WIREGUARD_PEER_STATUS_DEAD": 1,
    47  		"WIREGUARD_PEER_ESTABLISHED": 2,
    48  	}
    49  )
    50  
    51  func (x WireguardPeerFlags) String() string {
    52  	s, ok := WireguardPeerFlags_name[uint8(x)]
    53  	if ok {
    54  		return s
    55  	}
    56  	str := func(n uint8) string {
    57  		s, ok := WireguardPeerFlags_name[uint8(n)]
    58  		if ok {
    59  			return s
    60  		}
    61  		return "WireguardPeerFlags(" + strconv.Itoa(int(n)) + ")"
    62  	}
    63  	for i := uint8(0); i <= 8; i++ {
    64  		val := uint8(x)
    65  		if val&(1<<i) != 0 {
    66  			if s != "" {
    67  				s += "|"
    68  			}
    69  			s += str(1 << i)
    70  		}
    71  	}
    72  	if s == "" {
    73  		return str(uint8(x))
    74  	}
    75  	return s
    76  }
    77  
    78  // WireguardInterface defines type 'wireguard_interface'.
    79  type WireguardInterface struct {
    80  	UserInstance uint32                         `binapi:"u32,name=user_instance,default=4294967295" json:"user_instance,omitempty"`
    81  	SwIfIndex    interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
    82  	PrivateKey   []byte                         `binapi:"u8[32],name=private_key" json:"private_key,omitempty"`
    83  	PublicKey    []byte                         `binapi:"u8[32],name=public_key" json:"public_key,omitempty"`
    84  	Port         uint16                         `binapi:"u16,name=port" json:"port,omitempty"`
    85  	SrcIP        ip_types.Address               `binapi:"address,name=src_ip" json:"src_ip,omitempty"`
    86  }
    87  
    88  // WireguardPeer defines type 'wireguard_peer'.
    89  type WireguardPeer struct {
    90  	PublicKey           []byte                         `binapi:"u8[32],name=public_key" json:"public_key,omitempty"`
    91  	Port                uint16                         `binapi:"u16,name=port" json:"port,omitempty"`
    92  	PersistentKeepalive uint16                         `binapi:"u16,name=persistent_keepalive" json:"persistent_keepalive,omitempty"`
    93  	TableID             uint32                         `binapi:"u32,name=table_id" json:"table_id,omitempty"`
    94  	Endpoint            ip_types.Address               `binapi:"address,name=endpoint" json:"endpoint,omitempty"`
    95  	SwIfIndex           interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
    96  	Flags               WireguardPeerFlags             `binapi:"wireguard_peer_flags,name=flags" json:"flags,omitempty"`
    97  	NAllowedIps         uint8                          `binapi:"u8,name=n_allowed_ips" json:"-"`
    98  	AllowedIps          []ip_types.Prefix              `binapi:"prefix[n_allowed_ips],name=allowed_ips" json:"allowed_ips,omitempty"`
    99  }
   100  
   101  // WantWireguardPeerEvents defines message 'want_wireguard_peer_events'.
   102  // InProgress: the message form may change in the future versions
   103  type WantWireguardPeerEvents struct {
   104  	SwIfIndex     interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index,default=4294967295" json:"sw_if_index,omitempty"`
   105  	PeerIndex     uint32                         `binapi:"u32,name=peer_index,default=4294967295" json:"peer_index,omitempty"`
   106  	EnableDisable uint32                         `binapi:"u32,name=enable_disable" json:"enable_disable,omitempty"`
   107  	PID           uint32                         `binapi:"u32,name=pid" json:"pid,omitempty"`
   108  }
   109  
   110  func (m *WantWireguardPeerEvents) Reset()               { *m = WantWireguardPeerEvents{} }
   111  func (*WantWireguardPeerEvents) GetMessageName() string { return "want_wireguard_peer_events" }
   112  func (*WantWireguardPeerEvents) GetCrcString() string   { return "3bc666c8" }
   113  func (*WantWireguardPeerEvents) GetMessageType() api.MessageType {
   114  	return api.RequestMessage
   115  }
   116  
   117  func (m *WantWireguardPeerEvents) Size() (size int) {
   118  	if m == nil {
   119  		return 0
   120  	}
   121  	size += 4 // m.SwIfIndex
   122  	size += 4 // m.PeerIndex
   123  	size += 4 // m.EnableDisable
   124  	size += 4 // m.PID
   125  	return size
   126  }
   127  func (m *WantWireguardPeerEvents) Marshal(b []byte) ([]byte, error) {
   128  	if b == nil {
   129  		b = make([]byte, m.Size())
   130  	}
   131  	buf := codec.NewBuffer(b)
   132  	buf.EncodeUint32(uint32(m.SwIfIndex))
   133  	buf.EncodeUint32(m.PeerIndex)
   134  	buf.EncodeUint32(m.EnableDisable)
   135  	buf.EncodeUint32(m.PID)
   136  	return buf.Bytes(), nil
   137  }
   138  func (m *WantWireguardPeerEvents) Unmarshal(b []byte) error {
   139  	buf := codec.NewBuffer(b)
   140  	m.SwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
   141  	m.PeerIndex = buf.DecodeUint32()
   142  	m.EnableDisable = buf.DecodeUint32()
   143  	m.PID = buf.DecodeUint32()
   144  	return nil
   145  }
   146  
   147  // WantWireguardPeerEventsReply defines message 'want_wireguard_peer_events_reply'.
   148  // InProgress: the message form may change in the future versions
   149  type WantWireguardPeerEventsReply struct {
   150  	Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
   151  }
   152  
   153  func (m *WantWireguardPeerEventsReply) Reset() { *m = WantWireguardPeerEventsReply{} }
   154  func (*WantWireguardPeerEventsReply) GetMessageName() string {
   155  	return "want_wireguard_peer_events_reply"
   156  }
   157  func (*WantWireguardPeerEventsReply) GetCrcString() string { return "e8d4e804" }
   158  func (*WantWireguardPeerEventsReply) GetMessageType() api.MessageType {
   159  	return api.ReplyMessage
   160  }
   161  
   162  func (m *WantWireguardPeerEventsReply) Size() (size int) {
   163  	if m == nil {
   164  		return 0
   165  	}
   166  	size += 4 // m.Retval
   167  	return size
   168  }
   169  func (m *WantWireguardPeerEventsReply) Marshal(b []byte) ([]byte, error) {
   170  	if b == nil {
   171  		b = make([]byte, m.Size())
   172  	}
   173  	buf := codec.NewBuffer(b)
   174  	buf.EncodeInt32(m.Retval)
   175  	return buf.Bytes(), nil
   176  }
   177  func (m *WantWireguardPeerEventsReply) Unmarshal(b []byte) error {
   178  	buf := codec.NewBuffer(b)
   179  	m.Retval = buf.DecodeInt32()
   180  	return nil
   181  }
   182  
   183  // WgSetAsyncMode defines message 'wg_set_async_mode'.
   184  // InProgress: the message form may change in the future versions
   185  type WgSetAsyncMode struct {
   186  	AsyncEnable bool `binapi:"bool,name=async_enable" json:"async_enable,omitempty"`
   187  }
   188  
   189  func (m *WgSetAsyncMode) Reset()               { *m = WgSetAsyncMode{} }
   190  func (*WgSetAsyncMode) GetMessageName() string { return "wg_set_async_mode" }
   191  func (*WgSetAsyncMode) GetCrcString() string   { return "a6465f7c" }
   192  func (*WgSetAsyncMode) GetMessageType() api.MessageType {
   193  	return api.RequestMessage
   194  }
   195  
   196  func (m *WgSetAsyncMode) Size() (size int) {
   197  	if m == nil {
   198  		return 0
   199  	}
   200  	size += 1 // m.AsyncEnable
   201  	return size
   202  }
   203  func (m *WgSetAsyncMode) Marshal(b []byte) ([]byte, error) {
   204  	if b == nil {
   205  		b = make([]byte, m.Size())
   206  	}
   207  	buf := codec.NewBuffer(b)
   208  	buf.EncodeBool(m.AsyncEnable)
   209  	return buf.Bytes(), nil
   210  }
   211  func (m *WgSetAsyncMode) Unmarshal(b []byte) error {
   212  	buf := codec.NewBuffer(b)
   213  	m.AsyncEnable = buf.DecodeBool()
   214  	return nil
   215  }
   216  
   217  // WgSetAsyncModeReply defines message 'wg_set_async_mode_reply'.
   218  // InProgress: the message form may change in the future versions
   219  type WgSetAsyncModeReply struct {
   220  	Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
   221  }
   222  
   223  func (m *WgSetAsyncModeReply) Reset()               { *m = WgSetAsyncModeReply{} }
   224  func (*WgSetAsyncModeReply) GetMessageName() string { return "wg_set_async_mode_reply" }
   225  func (*WgSetAsyncModeReply) GetCrcString() string   { return "e8d4e804" }
   226  func (*WgSetAsyncModeReply) GetMessageType() api.MessageType {
   227  	return api.ReplyMessage
   228  }
   229  
   230  func (m *WgSetAsyncModeReply) Size() (size int) {
   231  	if m == nil {
   232  		return 0
   233  	}
   234  	size += 4 // m.Retval
   235  	return size
   236  }
   237  func (m *WgSetAsyncModeReply) Marshal(b []byte) ([]byte, error) {
   238  	if b == nil {
   239  		b = make([]byte, m.Size())
   240  	}
   241  	buf := codec.NewBuffer(b)
   242  	buf.EncodeInt32(m.Retval)
   243  	return buf.Bytes(), nil
   244  }
   245  func (m *WgSetAsyncModeReply) Unmarshal(b []byte) error {
   246  	buf := codec.NewBuffer(b)
   247  	m.Retval = buf.DecodeInt32()
   248  	return nil
   249  }
   250  
   251  // WireguardInterfaceCreate defines message 'wireguard_interface_create'.
   252  // InProgress: the message form may change in the future versions
   253  type WireguardInterfaceCreate struct {
   254  	Interface   WireguardInterface `binapi:"wireguard_interface,name=interface" json:"interface,omitempty"`
   255  	GenerateKey bool               `binapi:"bool,name=generate_key" json:"generate_key,omitempty"`
   256  }
   257  
   258  func (m *WireguardInterfaceCreate) Reset()               { *m = WireguardInterfaceCreate{} }
   259  func (*WireguardInterfaceCreate) GetMessageName() string { return "wireguard_interface_create" }
   260  func (*WireguardInterfaceCreate) GetCrcString() string   { return "a530137e" }
   261  func (*WireguardInterfaceCreate) GetMessageType() api.MessageType {
   262  	return api.RequestMessage
   263  }
   264  
   265  func (m *WireguardInterfaceCreate) Size() (size int) {
   266  	if m == nil {
   267  		return 0
   268  	}
   269  	size += 4      // m.Interface.UserInstance
   270  	size += 4      // m.Interface.SwIfIndex
   271  	size += 1 * 32 // m.Interface.PrivateKey
   272  	size += 1 * 32 // m.Interface.PublicKey
   273  	size += 2      // m.Interface.Port
   274  	size += 1      // m.Interface.SrcIP.Af
   275  	size += 1 * 16 // m.Interface.SrcIP.Un
   276  	size += 1      // m.GenerateKey
   277  	return size
   278  }
   279  func (m *WireguardInterfaceCreate) Marshal(b []byte) ([]byte, error) {
   280  	if b == nil {
   281  		b = make([]byte, m.Size())
   282  	}
   283  	buf := codec.NewBuffer(b)
   284  	buf.EncodeUint32(m.Interface.UserInstance)
   285  	buf.EncodeUint32(uint32(m.Interface.SwIfIndex))
   286  	buf.EncodeBytes(m.Interface.PrivateKey, 32)
   287  	buf.EncodeBytes(m.Interface.PublicKey, 32)
   288  	buf.EncodeUint16(m.Interface.Port)
   289  	buf.EncodeUint8(uint8(m.Interface.SrcIP.Af))
   290  	buf.EncodeBytes(m.Interface.SrcIP.Un.XXX_UnionData[:], 16)
   291  	buf.EncodeBool(m.GenerateKey)
   292  	return buf.Bytes(), nil
   293  }
   294  func (m *WireguardInterfaceCreate) Unmarshal(b []byte) error {
   295  	buf := codec.NewBuffer(b)
   296  	m.Interface.UserInstance = buf.DecodeUint32()
   297  	m.Interface.SwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
   298  	m.Interface.PrivateKey = make([]byte, 32)
   299  	copy(m.Interface.PrivateKey, buf.DecodeBytes(len(m.Interface.PrivateKey)))
   300  	m.Interface.PublicKey = make([]byte, 32)
   301  	copy(m.Interface.PublicKey, buf.DecodeBytes(len(m.Interface.PublicKey)))
   302  	m.Interface.Port = buf.DecodeUint16()
   303  	m.Interface.SrcIP.Af = ip_types.AddressFamily(buf.DecodeUint8())
   304  	copy(m.Interface.SrcIP.Un.XXX_UnionData[:], buf.DecodeBytes(16))
   305  	m.GenerateKey = buf.DecodeBool()
   306  	return nil
   307  }
   308  
   309  // WireguardInterfaceCreateReply defines message 'wireguard_interface_create_reply'.
   310  // InProgress: the message form may change in the future versions
   311  type WireguardInterfaceCreateReply struct {
   312  	Retval    int32                          `binapi:"i32,name=retval" json:"retval,omitempty"`
   313  	SwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
   314  }
   315  
   316  func (m *WireguardInterfaceCreateReply) Reset() { *m = WireguardInterfaceCreateReply{} }
   317  func (*WireguardInterfaceCreateReply) GetMessageName() string {
   318  	return "wireguard_interface_create_reply"
   319  }
   320  func (*WireguardInterfaceCreateReply) GetCrcString() string { return "5383d31f" }
   321  func (*WireguardInterfaceCreateReply) GetMessageType() api.MessageType {
   322  	return api.ReplyMessage
   323  }
   324  
   325  func (m *WireguardInterfaceCreateReply) Size() (size int) {
   326  	if m == nil {
   327  		return 0
   328  	}
   329  	size += 4 // m.Retval
   330  	size += 4 // m.SwIfIndex
   331  	return size
   332  }
   333  func (m *WireguardInterfaceCreateReply) Marshal(b []byte) ([]byte, error) {
   334  	if b == nil {
   335  		b = make([]byte, m.Size())
   336  	}
   337  	buf := codec.NewBuffer(b)
   338  	buf.EncodeInt32(m.Retval)
   339  	buf.EncodeUint32(uint32(m.SwIfIndex))
   340  	return buf.Bytes(), nil
   341  }
   342  func (m *WireguardInterfaceCreateReply) Unmarshal(b []byte) error {
   343  	buf := codec.NewBuffer(b)
   344  	m.Retval = buf.DecodeInt32()
   345  	m.SwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
   346  	return nil
   347  }
   348  
   349  // WireguardInterfaceDelete defines message 'wireguard_interface_delete'.
   350  // InProgress: the message form may change in the future versions
   351  type WireguardInterfaceDelete struct {
   352  	SwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
   353  }
   354  
   355  func (m *WireguardInterfaceDelete) Reset()               { *m = WireguardInterfaceDelete{} }
   356  func (*WireguardInterfaceDelete) GetMessageName() string { return "wireguard_interface_delete" }
   357  func (*WireguardInterfaceDelete) GetCrcString() string   { return "f9e6675e" }
   358  func (*WireguardInterfaceDelete) GetMessageType() api.MessageType {
   359  	return api.RequestMessage
   360  }
   361  
   362  func (m *WireguardInterfaceDelete) Size() (size int) {
   363  	if m == nil {
   364  		return 0
   365  	}
   366  	size += 4 // m.SwIfIndex
   367  	return size
   368  }
   369  func (m *WireguardInterfaceDelete) Marshal(b []byte) ([]byte, error) {
   370  	if b == nil {
   371  		b = make([]byte, m.Size())
   372  	}
   373  	buf := codec.NewBuffer(b)
   374  	buf.EncodeUint32(uint32(m.SwIfIndex))
   375  	return buf.Bytes(), nil
   376  }
   377  func (m *WireguardInterfaceDelete) Unmarshal(b []byte) error {
   378  	buf := codec.NewBuffer(b)
   379  	m.SwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
   380  	return nil
   381  }
   382  
   383  // WireguardInterfaceDeleteReply defines message 'wireguard_interface_delete_reply'.
   384  // InProgress: the message form may change in the future versions
   385  type WireguardInterfaceDeleteReply struct {
   386  	Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
   387  }
   388  
   389  func (m *WireguardInterfaceDeleteReply) Reset() { *m = WireguardInterfaceDeleteReply{} }
   390  func (*WireguardInterfaceDeleteReply) GetMessageName() string {
   391  	return "wireguard_interface_delete_reply"
   392  }
   393  func (*WireguardInterfaceDeleteReply) GetCrcString() string { return "e8d4e804" }
   394  func (*WireguardInterfaceDeleteReply) GetMessageType() api.MessageType {
   395  	return api.ReplyMessage
   396  }
   397  
   398  func (m *WireguardInterfaceDeleteReply) Size() (size int) {
   399  	if m == nil {
   400  		return 0
   401  	}
   402  	size += 4 // m.Retval
   403  	return size
   404  }
   405  func (m *WireguardInterfaceDeleteReply) Marshal(b []byte) ([]byte, error) {
   406  	if b == nil {
   407  		b = make([]byte, m.Size())
   408  	}
   409  	buf := codec.NewBuffer(b)
   410  	buf.EncodeInt32(m.Retval)
   411  	return buf.Bytes(), nil
   412  }
   413  func (m *WireguardInterfaceDeleteReply) Unmarshal(b []byte) error {
   414  	buf := codec.NewBuffer(b)
   415  	m.Retval = buf.DecodeInt32()
   416  	return nil
   417  }
   418  
   419  // WireguardInterfaceDetails defines message 'wireguard_interface_details'.
   420  // InProgress: the message form may change in the future versions
   421  type WireguardInterfaceDetails struct {
   422  	Interface WireguardInterface `binapi:"wireguard_interface,name=interface" json:"interface,omitempty"`
   423  }
   424  
   425  func (m *WireguardInterfaceDetails) Reset()               { *m = WireguardInterfaceDetails{} }
   426  func (*WireguardInterfaceDetails) GetMessageName() string { return "wireguard_interface_details" }
   427  func (*WireguardInterfaceDetails) GetCrcString() string   { return "0dd4865d" }
   428  func (*WireguardInterfaceDetails) GetMessageType() api.MessageType {
   429  	return api.ReplyMessage
   430  }
   431  
   432  func (m *WireguardInterfaceDetails) Size() (size int) {
   433  	if m == nil {
   434  		return 0
   435  	}
   436  	size += 4      // m.Interface.UserInstance
   437  	size += 4      // m.Interface.SwIfIndex
   438  	size += 1 * 32 // m.Interface.PrivateKey
   439  	size += 1 * 32 // m.Interface.PublicKey
   440  	size += 2      // m.Interface.Port
   441  	size += 1      // m.Interface.SrcIP.Af
   442  	size += 1 * 16 // m.Interface.SrcIP.Un
   443  	return size
   444  }
   445  func (m *WireguardInterfaceDetails) Marshal(b []byte) ([]byte, error) {
   446  	if b == nil {
   447  		b = make([]byte, m.Size())
   448  	}
   449  	buf := codec.NewBuffer(b)
   450  	buf.EncodeUint32(m.Interface.UserInstance)
   451  	buf.EncodeUint32(uint32(m.Interface.SwIfIndex))
   452  	buf.EncodeBytes(m.Interface.PrivateKey, 32)
   453  	buf.EncodeBytes(m.Interface.PublicKey, 32)
   454  	buf.EncodeUint16(m.Interface.Port)
   455  	buf.EncodeUint8(uint8(m.Interface.SrcIP.Af))
   456  	buf.EncodeBytes(m.Interface.SrcIP.Un.XXX_UnionData[:], 16)
   457  	return buf.Bytes(), nil
   458  }
   459  func (m *WireguardInterfaceDetails) Unmarshal(b []byte) error {
   460  	buf := codec.NewBuffer(b)
   461  	m.Interface.UserInstance = buf.DecodeUint32()
   462  	m.Interface.SwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
   463  	m.Interface.PrivateKey = make([]byte, 32)
   464  	copy(m.Interface.PrivateKey, buf.DecodeBytes(len(m.Interface.PrivateKey)))
   465  	m.Interface.PublicKey = make([]byte, 32)
   466  	copy(m.Interface.PublicKey, buf.DecodeBytes(len(m.Interface.PublicKey)))
   467  	m.Interface.Port = buf.DecodeUint16()
   468  	m.Interface.SrcIP.Af = ip_types.AddressFamily(buf.DecodeUint8())
   469  	copy(m.Interface.SrcIP.Un.XXX_UnionData[:], buf.DecodeBytes(16))
   470  	return nil
   471  }
   472  
   473  // WireguardInterfaceDump defines message 'wireguard_interface_dump'.
   474  // InProgress: the message form may change in the future versions
   475  type WireguardInterfaceDump struct {
   476  	ShowPrivateKey bool                           `binapi:"bool,name=show_private_key" json:"show_private_key,omitempty"`
   477  	SwIfIndex      interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
   478  }
   479  
   480  func (m *WireguardInterfaceDump) Reset()               { *m = WireguardInterfaceDump{} }
   481  func (*WireguardInterfaceDump) GetMessageName() string { return "wireguard_interface_dump" }
   482  func (*WireguardInterfaceDump) GetCrcString() string   { return "2c954158" }
   483  func (*WireguardInterfaceDump) GetMessageType() api.MessageType {
   484  	return api.RequestMessage
   485  }
   486  
   487  func (m *WireguardInterfaceDump) Size() (size int) {
   488  	if m == nil {
   489  		return 0
   490  	}
   491  	size += 1 // m.ShowPrivateKey
   492  	size += 4 // m.SwIfIndex
   493  	return size
   494  }
   495  func (m *WireguardInterfaceDump) Marshal(b []byte) ([]byte, error) {
   496  	if b == nil {
   497  		b = make([]byte, m.Size())
   498  	}
   499  	buf := codec.NewBuffer(b)
   500  	buf.EncodeBool(m.ShowPrivateKey)
   501  	buf.EncodeUint32(uint32(m.SwIfIndex))
   502  	return buf.Bytes(), nil
   503  }
   504  func (m *WireguardInterfaceDump) Unmarshal(b []byte) error {
   505  	buf := codec.NewBuffer(b)
   506  	m.ShowPrivateKey = buf.DecodeBool()
   507  	m.SwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
   508  	return nil
   509  }
   510  
   511  // WireguardPeerAdd defines message 'wireguard_peer_add'.
   512  // InProgress: the message form may change in the future versions
   513  type WireguardPeerAdd struct {
   514  	Peer WireguardPeer `binapi:"wireguard_peer,name=peer" json:"peer,omitempty"`
   515  }
   516  
   517  func (m *WireguardPeerAdd) Reset()               { *m = WireguardPeerAdd{} }
   518  func (*WireguardPeerAdd) GetMessageName() string { return "wireguard_peer_add" }
   519  func (*WireguardPeerAdd) GetCrcString() string   { return "aedf8d59" }
   520  func (*WireguardPeerAdd) GetMessageType() api.MessageType {
   521  	return api.RequestMessage
   522  }
   523  
   524  func (m *WireguardPeerAdd) Size() (size int) {
   525  	if m == nil {
   526  		return 0
   527  	}
   528  	size += 1 * 32 // m.Peer.PublicKey
   529  	size += 2      // m.Peer.Port
   530  	size += 2      // m.Peer.PersistentKeepalive
   531  	size += 4      // m.Peer.TableID
   532  	size += 1      // m.Peer.Endpoint.Af
   533  	size += 1 * 16 // m.Peer.Endpoint.Un
   534  	size += 4      // m.Peer.SwIfIndex
   535  	size += 1      // m.Peer.Flags
   536  	size += 1      // m.Peer.NAllowedIps
   537  	for j2 := 0; j2 < len(m.Peer.AllowedIps); j2++ {
   538  		var s2 ip_types.Prefix
   539  		_ = s2
   540  		if j2 < len(m.Peer.AllowedIps) {
   541  			s2 = m.Peer.AllowedIps[j2]
   542  		}
   543  		size += 1      // s2.Address.Af
   544  		size += 1 * 16 // s2.Address.Un
   545  		size += 1      // s2.Len
   546  	}
   547  	return size
   548  }
   549  func (m *WireguardPeerAdd) Marshal(b []byte) ([]byte, error) {
   550  	if b == nil {
   551  		b = make([]byte, m.Size())
   552  	}
   553  	buf := codec.NewBuffer(b)
   554  	buf.EncodeBytes(m.Peer.PublicKey, 32)
   555  	buf.EncodeUint16(m.Peer.Port)
   556  	buf.EncodeUint16(m.Peer.PersistentKeepalive)
   557  	buf.EncodeUint32(m.Peer.TableID)
   558  	buf.EncodeUint8(uint8(m.Peer.Endpoint.Af))
   559  	buf.EncodeBytes(m.Peer.Endpoint.Un.XXX_UnionData[:], 16)
   560  	buf.EncodeUint32(uint32(m.Peer.SwIfIndex))
   561  	buf.EncodeUint8(uint8(m.Peer.Flags))
   562  	buf.EncodeUint8(uint8(len(m.Peer.AllowedIps)))
   563  	for j1 := 0; j1 < len(m.Peer.AllowedIps); j1++ {
   564  		var v1 ip_types.Prefix // AllowedIps
   565  		if j1 < len(m.Peer.AllowedIps) {
   566  			v1 = m.Peer.AllowedIps[j1]
   567  		}
   568  		buf.EncodeUint8(uint8(v1.Address.Af))
   569  		buf.EncodeBytes(v1.Address.Un.XXX_UnionData[:], 16)
   570  		buf.EncodeUint8(v1.Len)
   571  	}
   572  	return buf.Bytes(), nil
   573  }
   574  func (m *WireguardPeerAdd) Unmarshal(b []byte) error {
   575  	buf := codec.NewBuffer(b)
   576  	m.Peer.PublicKey = make([]byte, 32)
   577  	copy(m.Peer.PublicKey, buf.DecodeBytes(len(m.Peer.PublicKey)))
   578  	m.Peer.Port = buf.DecodeUint16()
   579  	m.Peer.PersistentKeepalive = buf.DecodeUint16()
   580  	m.Peer.TableID = buf.DecodeUint32()
   581  	m.Peer.Endpoint.Af = ip_types.AddressFamily(buf.DecodeUint8())
   582  	copy(m.Peer.Endpoint.Un.XXX_UnionData[:], buf.DecodeBytes(16))
   583  	m.Peer.SwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
   584  	m.Peer.Flags = WireguardPeerFlags(buf.DecodeUint8())
   585  	m.Peer.NAllowedIps = buf.DecodeUint8()
   586  	m.Peer.AllowedIps = make([]ip_types.Prefix, m.Peer.NAllowedIps)
   587  	for j1 := 0; j1 < len(m.Peer.AllowedIps); j1++ {
   588  		m.Peer.AllowedIps[j1].Address.Af = ip_types.AddressFamily(buf.DecodeUint8())
   589  		copy(m.Peer.AllowedIps[j1].Address.Un.XXX_UnionData[:], buf.DecodeBytes(16))
   590  		m.Peer.AllowedIps[j1].Len = buf.DecodeUint8()
   591  	}
   592  	return nil
   593  }
   594  
   595  // WireguardPeerAddReply defines message 'wireguard_peer_add_reply'.
   596  // InProgress: the message form may change in the future versions
   597  type WireguardPeerAddReply struct {
   598  	Retval    int32  `binapi:"i32,name=retval" json:"retval,omitempty"`
   599  	PeerIndex uint32 `binapi:"u32,name=peer_index" json:"peer_index,omitempty"`
   600  }
   601  
   602  func (m *WireguardPeerAddReply) Reset()               { *m = WireguardPeerAddReply{} }
   603  func (*WireguardPeerAddReply) GetMessageName() string { return "wireguard_peer_add_reply" }
   604  func (*WireguardPeerAddReply) GetCrcString() string   { return "084a0cd3" }
   605  func (*WireguardPeerAddReply) GetMessageType() api.MessageType {
   606  	return api.ReplyMessage
   607  }
   608  
   609  func (m *WireguardPeerAddReply) Size() (size int) {
   610  	if m == nil {
   611  		return 0
   612  	}
   613  	size += 4 // m.Retval
   614  	size += 4 // m.PeerIndex
   615  	return size
   616  }
   617  func (m *WireguardPeerAddReply) Marshal(b []byte) ([]byte, error) {
   618  	if b == nil {
   619  		b = make([]byte, m.Size())
   620  	}
   621  	buf := codec.NewBuffer(b)
   622  	buf.EncodeInt32(m.Retval)
   623  	buf.EncodeUint32(m.PeerIndex)
   624  	return buf.Bytes(), nil
   625  }
   626  func (m *WireguardPeerAddReply) Unmarshal(b []byte) error {
   627  	buf := codec.NewBuffer(b)
   628  	m.Retval = buf.DecodeInt32()
   629  	m.PeerIndex = buf.DecodeUint32()
   630  	return nil
   631  }
   632  
   633  // WireguardPeerEvent defines message 'wireguard_peer_event'.
   634  // InProgress: the message form may change in the future versions
   635  type WireguardPeerEvent struct {
   636  	PID       uint32             `binapi:"u32,name=pid" json:"pid,omitempty"`
   637  	PeerIndex uint32             `binapi:"u32,name=peer_index" json:"peer_index,omitempty"`
   638  	Flags     WireguardPeerFlags `binapi:"wireguard_peer_flags,name=flags" json:"flags,omitempty"`
   639  }
   640  
   641  func (m *WireguardPeerEvent) Reset()               { *m = WireguardPeerEvent{} }
   642  func (*WireguardPeerEvent) GetMessageName() string { return "wireguard_peer_event" }
   643  func (*WireguardPeerEvent) GetCrcString() string   { return "4e1b5d67" }
   644  func (*WireguardPeerEvent) GetMessageType() api.MessageType {
   645  	return api.EventMessage
   646  }
   647  
   648  func (m *WireguardPeerEvent) Size() (size int) {
   649  	if m == nil {
   650  		return 0
   651  	}
   652  	size += 4 // m.PID
   653  	size += 4 // m.PeerIndex
   654  	size += 1 // m.Flags
   655  	return size
   656  }
   657  func (m *WireguardPeerEvent) Marshal(b []byte) ([]byte, error) {
   658  	if b == nil {
   659  		b = make([]byte, m.Size())
   660  	}
   661  	buf := codec.NewBuffer(b)
   662  	buf.EncodeUint32(m.PID)
   663  	buf.EncodeUint32(m.PeerIndex)
   664  	buf.EncodeUint8(uint8(m.Flags))
   665  	return buf.Bytes(), nil
   666  }
   667  func (m *WireguardPeerEvent) Unmarshal(b []byte) error {
   668  	buf := codec.NewBuffer(b)
   669  	m.PID = buf.DecodeUint32()
   670  	m.PeerIndex = buf.DecodeUint32()
   671  	m.Flags = WireguardPeerFlags(buf.DecodeUint8())
   672  	return nil
   673  }
   674  
   675  // WireguardPeerRemove defines message 'wireguard_peer_remove'.
   676  // InProgress: the message form may change in the future versions
   677  type WireguardPeerRemove struct {
   678  	PeerIndex uint32 `binapi:"u32,name=peer_index" json:"peer_index,omitempty"`
   679  }
   680  
   681  func (m *WireguardPeerRemove) Reset()               { *m = WireguardPeerRemove{} }
   682  func (*WireguardPeerRemove) GetMessageName() string { return "wireguard_peer_remove" }
   683  func (*WireguardPeerRemove) GetCrcString() string   { return "3b74607a" }
   684  func (*WireguardPeerRemove) GetMessageType() api.MessageType {
   685  	return api.RequestMessage
   686  }
   687  
   688  func (m *WireguardPeerRemove) Size() (size int) {
   689  	if m == nil {
   690  		return 0
   691  	}
   692  	size += 4 // m.PeerIndex
   693  	return size
   694  }
   695  func (m *WireguardPeerRemove) Marshal(b []byte) ([]byte, error) {
   696  	if b == nil {
   697  		b = make([]byte, m.Size())
   698  	}
   699  	buf := codec.NewBuffer(b)
   700  	buf.EncodeUint32(m.PeerIndex)
   701  	return buf.Bytes(), nil
   702  }
   703  func (m *WireguardPeerRemove) Unmarshal(b []byte) error {
   704  	buf := codec.NewBuffer(b)
   705  	m.PeerIndex = buf.DecodeUint32()
   706  	return nil
   707  }
   708  
   709  // WireguardPeerRemoveReply defines message 'wireguard_peer_remove_reply'.
   710  // InProgress: the message form may change in the future versions
   711  type WireguardPeerRemoveReply struct {
   712  	Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
   713  }
   714  
   715  func (m *WireguardPeerRemoveReply) Reset()               { *m = WireguardPeerRemoveReply{} }
   716  func (*WireguardPeerRemoveReply) GetMessageName() string { return "wireguard_peer_remove_reply" }
   717  func (*WireguardPeerRemoveReply) GetCrcString() string   { return "e8d4e804" }
   718  func (*WireguardPeerRemoveReply) GetMessageType() api.MessageType {
   719  	return api.ReplyMessage
   720  }
   721  
   722  func (m *WireguardPeerRemoveReply) Size() (size int) {
   723  	if m == nil {
   724  		return 0
   725  	}
   726  	size += 4 // m.Retval
   727  	return size
   728  }
   729  func (m *WireguardPeerRemoveReply) Marshal(b []byte) ([]byte, error) {
   730  	if b == nil {
   731  		b = make([]byte, m.Size())
   732  	}
   733  	buf := codec.NewBuffer(b)
   734  	buf.EncodeInt32(m.Retval)
   735  	return buf.Bytes(), nil
   736  }
   737  func (m *WireguardPeerRemoveReply) Unmarshal(b []byte) error {
   738  	buf := codec.NewBuffer(b)
   739  	m.Retval = buf.DecodeInt32()
   740  	return nil
   741  }
   742  
   743  // WireguardPeersDetails defines message 'wireguard_peers_details'.
   744  // InProgress: the message form may change in the future versions
   745  type WireguardPeersDetails struct {
   746  	Peer WireguardPeer `binapi:"wireguard_peer,name=peer" json:"peer,omitempty"`
   747  }
   748  
   749  func (m *WireguardPeersDetails) Reset()               { *m = WireguardPeersDetails{} }
   750  func (*WireguardPeersDetails) GetMessageName() string { return "wireguard_peers_details" }
   751  func (*WireguardPeersDetails) GetCrcString() string   { return "29269d0e" }
   752  func (*WireguardPeersDetails) GetMessageType() api.MessageType {
   753  	return api.ReplyMessage
   754  }
   755  
   756  func (m *WireguardPeersDetails) Size() (size int) {
   757  	if m == nil {
   758  		return 0
   759  	}
   760  	size += 1 * 32 // m.Peer.PublicKey
   761  	size += 2      // m.Peer.Port
   762  	size += 2      // m.Peer.PersistentKeepalive
   763  	size += 4      // m.Peer.TableID
   764  	size += 1      // m.Peer.Endpoint.Af
   765  	size += 1 * 16 // m.Peer.Endpoint.Un
   766  	size += 4      // m.Peer.SwIfIndex
   767  	size += 1      // m.Peer.Flags
   768  	size += 1      // m.Peer.NAllowedIps
   769  	for j2 := 0; j2 < len(m.Peer.AllowedIps); j2++ {
   770  		var s2 ip_types.Prefix
   771  		_ = s2
   772  		if j2 < len(m.Peer.AllowedIps) {
   773  			s2 = m.Peer.AllowedIps[j2]
   774  		}
   775  		size += 1      // s2.Address.Af
   776  		size += 1 * 16 // s2.Address.Un
   777  		size += 1      // s2.Len
   778  	}
   779  	return size
   780  }
   781  func (m *WireguardPeersDetails) Marshal(b []byte) ([]byte, error) {
   782  	if b == nil {
   783  		b = make([]byte, m.Size())
   784  	}
   785  	buf := codec.NewBuffer(b)
   786  	buf.EncodeBytes(m.Peer.PublicKey, 32)
   787  	buf.EncodeUint16(m.Peer.Port)
   788  	buf.EncodeUint16(m.Peer.PersistentKeepalive)
   789  	buf.EncodeUint32(m.Peer.TableID)
   790  	buf.EncodeUint8(uint8(m.Peer.Endpoint.Af))
   791  	buf.EncodeBytes(m.Peer.Endpoint.Un.XXX_UnionData[:], 16)
   792  	buf.EncodeUint32(uint32(m.Peer.SwIfIndex))
   793  	buf.EncodeUint8(uint8(m.Peer.Flags))
   794  	buf.EncodeUint8(uint8(len(m.Peer.AllowedIps)))
   795  	for j1 := 0; j1 < len(m.Peer.AllowedIps); j1++ {
   796  		var v1 ip_types.Prefix // AllowedIps
   797  		if j1 < len(m.Peer.AllowedIps) {
   798  			v1 = m.Peer.AllowedIps[j1]
   799  		}
   800  		buf.EncodeUint8(uint8(v1.Address.Af))
   801  		buf.EncodeBytes(v1.Address.Un.XXX_UnionData[:], 16)
   802  		buf.EncodeUint8(v1.Len)
   803  	}
   804  	return buf.Bytes(), nil
   805  }
   806  func (m *WireguardPeersDetails) Unmarshal(b []byte) error {
   807  	buf := codec.NewBuffer(b)
   808  	m.Peer.PublicKey = make([]byte, 32)
   809  	copy(m.Peer.PublicKey, buf.DecodeBytes(len(m.Peer.PublicKey)))
   810  	m.Peer.Port = buf.DecodeUint16()
   811  	m.Peer.PersistentKeepalive = buf.DecodeUint16()
   812  	m.Peer.TableID = buf.DecodeUint32()
   813  	m.Peer.Endpoint.Af = ip_types.AddressFamily(buf.DecodeUint8())
   814  	copy(m.Peer.Endpoint.Un.XXX_UnionData[:], buf.DecodeBytes(16))
   815  	m.Peer.SwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
   816  	m.Peer.Flags = WireguardPeerFlags(buf.DecodeUint8())
   817  	m.Peer.NAllowedIps = buf.DecodeUint8()
   818  	m.Peer.AllowedIps = make([]ip_types.Prefix, m.Peer.NAllowedIps)
   819  	for j1 := 0; j1 < len(m.Peer.AllowedIps); j1++ {
   820  		m.Peer.AllowedIps[j1].Address.Af = ip_types.AddressFamily(buf.DecodeUint8())
   821  		copy(m.Peer.AllowedIps[j1].Address.Un.XXX_UnionData[:], buf.DecodeBytes(16))
   822  		m.Peer.AllowedIps[j1].Len = buf.DecodeUint8()
   823  	}
   824  	return nil
   825  }
   826  
   827  // WireguardPeersDump defines message 'wireguard_peers_dump'.
   828  // InProgress: the message form may change in the future versions
   829  type WireguardPeersDump struct {
   830  	PeerIndex uint32 `binapi:"u32,name=peer_index,default=4294967295" json:"peer_index,omitempty"`
   831  }
   832  
   833  func (m *WireguardPeersDump) Reset()               { *m = WireguardPeersDump{} }
   834  func (*WireguardPeersDump) GetMessageName() string { return "wireguard_peers_dump" }
   835  func (*WireguardPeersDump) GetCrcString() string   { return "3b74607a" }
   836  func (*WireguardPeersDump) GetMessageType() api.MessageType {
   837  	return api.RequestMessage
   838  }
   839  
   840  func (m *WireguardPeersDump) Size() (size int) {
   841  	if m == nil {
   842  		return 0
   843  	}
   844  	size += 4 // m.PeerIndex
   845  	return size
   846  }
   847  func (m *WireguardPeersDump) Marshal(b []byte) ([]byte, error) {
   848  	if b == nil {
   849  		b = make([]byte, m.Size())
   850  	}
   851  	buf := codec.NewBuffer(b)
   852  	buf.EncodeUint32(m.PeerIndex)
   853  	return buf.Bytes(), nil
   854  }
   855  func (m *WireguardPeersDump) Unmarshal(b []byte) error {
   856  	buf := codec.NewBuffer(b)
   857  	m.PeerIndex = buf.DecodeUint32()
   858  	return nil
   859  }
   860  
   861  func init() { file_wireguard_binapi_init() }
   862  func file_wireguard_binapi_init() {
   863  	api.RegisterMessage((*WantWireguardPeerEvents)(nil), "want_wireguard_peer_events_3bc666c8")
   864  	api.RegisterMessage((*WantWireguardPeerEventsReply)(nil), "want_wireguard_peer_events_reply_e8d4e804")
   865  	api.RegisterMessage((*WgSetAsyncMode)(nil), "wg_set_async_mode_a6465f7c")
   866  	api.RegisterMessage((*WgSetAsyncModeReply)(nil), "wg_set_async_mode_reply_e8d4e804")
   867  	api.RegisterMessage((*WireguardInterfaceCreate)(nil), "wireguard_interface_create_a530137e")
   868  	api.RegisterMessage((*WireguardInterfaceCreateReply)(nil), "wireguard_interface_create_reply_5383d31f")
   869  	api.RegisterMessage((*WireguardInterfaceDelete)(nil), "wireguard_interface_delete_f9e6675e")
   870  	api.RegisterMessage((*WireguardInterfaceDeleteReply)(nil), "wireguard_interface_delete_reply_e8d4e804")
   871  	api.RegisterMessage((*WireguardInterfaceDetails)(nil), "wireguard_interface_details_0dd4865d")
   872  	api.RegisterMessage((*WireguardInterfaceDump)(nil), "wireguard_interface_dump_2c954158")
   873  	api.RegisterMessage((*WireguardPeerAdd)(nil), "wireguard_peer_add_aedf8d59")
   874  	api.RegisterMessage((*WireguardPeerAddReply)(nil), "wireguard_peer_add_reply_084a0cd3")
   875  	api.RegisterMessage((*WireguardPeerEvent)(nil), "wireguard_peer_event_4e1b5d67")
   876  	api.RegisterMessage((*WireguardPeerRemove)(nil), "wireguard_peer_remove_3b74607a")
   877  	api.RegisterMessage((*WireguardPeerRemoveReply)(nil), "wireguard_peer_remove_reply_e8d4e804")
   878  	api.RegisterMessage((*WireguardPeersDetails)(nil), "wireguard_peers_details_29269d0e")
   879  	api.RegisterMessage((*WireguardPeersDump)(nil), "wireguard_peers_dump_3b74607a")
   880  }
   881  
   882  // Messages returns list of all messages in this module.
   883  func AllMessages() []api.Message {
   884  	return []api.Message{
   885  		(*WantWireguardPeerEvents)(nil),
   886  		(*WantWireguardPeerEventsReply)(nil),
   887  		(*WgSetAsyncMode)(nil),
   888  		(*WgSetAsyncModeReply)(nil),
   889  		(*WireguardInterfaceCreate)(nil),
   890  		(*WireguardInterfaceCreateReply)(nil),
   891  		(*WireguardInterfaceDelete)(nil),
   892  		(*WireguardInterfaceDeleteReply)(nil),
   893  		(*WireguardInterfaceDetails)(nil),
   894  		(*WireguardInterfaceDump)(nil),
   895  		(*WireguardPeerAdd)(nil),
   896  		(*WireguardPeerAddReply)(nil),
   897  		(*WireguardPeerEvent)(nil),
   898  		(*WireguardPeerRemove)(nil),
   899  		(*WireguardPeerRemoveReply)(nil),
   900  		(*WireguardPeersDetails)(nil),
   901  		(*WireguardPeersDump)(nil),
   902  	}
   903  }