github.com/edwarnicke/govpp@v0.0.0-20230130211138-14ef5d20b1d0/binapi/ikev2_types/ikev2_types.ba.go (about) 1 // Code generated by GoVPP's binapi-generator. DO NOT EDIT. 2 // versions: 3 // binapi-generator: v0.4.0-dev 4 // VPP: 23.02-rc0~189-g57127b32a 5 // source: /usr/share/vpp/api/plugins/ikev2_types.api.json 6 7 // Package ikev2_types contains generated bindings for API file ikev2_types.api. 8 // 9 // Contents: 10 // 12 structs 11 // 12 package ikev2_types 13 14 import ( 15 api "git.fd.io/govpp.git/api" 16 interface_types "github.com/edwarnicke/govpp/binapi/interface_types" 17 ip_types "github.com/edwarnicke/govpp/binapi/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 // Ikev2Auth defines type 'ikev2_auth'. 27 type Ikev2Auth struct { 28 Method uint8 `binapi:"u8,name=method" json:"method,omitempty"` 29 Hex uint8 `binapi:"u8,name=hex" json:"hex,omitempty"` 30 DataLen uint32 `binapi:"u32,name=data_len" json:"-"` 31 Data []byte `binapi:"u8[data_len],name=data" json:"data,omitempty"` 32 } 33 34 // Ikev2ChildSa defines type 'ikev2_child_sa'. 35 type Ikev2ChildSa struct { 36 SaIndex uint32 `binapi:"u32,name=sa_index" json:"sa_index,omitempty"` 37 ChildSaIndex uint32 `binapi:"u32,name=child_sa_index" json:"child_sa_index,omitempty"` 38 ISpi uint32 `binapi:"u32,name=i_spi" json:"i_spi,omitempty"` 39 RSpi uint32 `binapi:"u32,name=r_spi" json:"r_spi,omitempty"` 40 Keys Ikev2Keys `binapi:"ikev2_keys,name=keys" json:"keys,omitempty"` 41 Encryption Ikev2SaTransform `binapi:"ikev2_sa_transform,name=encryption" json:"encryption,omitempty"` 42 Integrity Ikev2SaTransform `binapi:"ikev2_sa_transform,name=integrity" json:"integrity,omitempty"` 43 Esn Ikev2SaTransform `binapi:"ikev2_sa_transform,name=esn" json:"esn,omitempty"` 44 } 45 46 // Ikev2EspTransforms defines type 'ikev2_esp_transforms'. 47 type Ikev2EspTransforms struct { 48 CryptoAlg uint8 `binapi:"u8,name=crypto_alg" json:"crypto_alg,omitempty"` 49 CryptoKeySize uint32 `binapi:"u32,name=crypto_key_size" json:"crypto_key_size,omitempty"` 50 IntegAlg uint8 `binapi:"u8,name=integ_alg" json:"integ_alg,omitempty"` 51 } 52 53 // Ikev2ID defines type 'ikev2_id'. 54 type Ikev2ID struct { 55 Type uint8 `binapi:"u8,name=type" json:"type,omitempty"` 56 DataLen uint8 `binapi:"u8,name=data_len" json:"data_len,omitempty"` 57 Data string `binapi:"string[64],name=data" json:"data,omitempty"` 58 } 59 60 // Ikev2IkeTransforms defines type 'ikev2_ike_transforms'. 61 type Ikev2IkeTransforms struct { 62 CryptoAlg uint8 `binapi:"u8,name=crypto_alg" json:"crypto_alg,omitempty"` 63 CryptoKeySize uint32 `binapi:"u32,name=crypto_key_size" json:"crypto_key_size,omitempty"` 64 IntegAlg uint8 `binapi:"u8,name=integ_alg" json:"integ_alg,omitempty"` 65 DhGroup uint8 `binapi:"u8,name=dh_group" json:"dh_group,omitempty"` 66 } 67 68 // Ikev2Keys defines type 'ikev2_keys'. 69 type Ikev2Keys struct { 70 SkD []byte `binapi:"u8[64],name=sk_d" json:"sk_d,omitempty"` 71 SkDLen uint8 `binapi:"u8,name=sk_d_len" json:"sk_d_len,omitempty"` 72 SkAi []byte `binapi:"u8[64],name=sk_ai" json:"sk_ai,omitempty"` 73 SkAiLen uint8 `binapi:"u8,name=sk_ai_len" json:"sk_ai_len,omitempty"` 74 SkAr []byte `binapi:"u8[64],name=sk_ar" json:"sk_ar,omitempty"` 75 SkArLen uint8 `binapi:"u8,name=sk_ar_len" json:"sk_ar_len,omitempty"` 76 SkEi []byte `binapi:"u8[64],name=sk_ei" json:"sk_ei,omitempty"` 77 SkEiLen uint8 `binapi:"u8,name=sk_ei_len" json:"sk_ei_len,omitempty"` 78 SkEr []byte `binapi:"u8[64],name=sk_er" json:"sk_er,omitempty"` 79 SkErLen uint8 `binapi:"u8,name=sk_er_len" json:"sk_er_len,omitempty"` 80 SkPi []byte `binapi:"u8[64],name=sk_pi" json:"sk_pi,omitempty"` 81 SkPiLen uint8 `binapi:"u8,name=sk_pi_len" json:"sk_pi_len,omitempty"` 82 SkPr []byte `binapi:"u8[64],name=sk_pr" json:"sk_pr,omitempty"` 83 SkPrLen uint8 `binapi:"u8,name=sk_pr_len" json:"sk_pr_len,omitempty"` 84 } 85 86 // Ikev2Profile defines type 'ikev2_profile'. 87 type Ikev2Profile struct { 88 Name string `binapi:"string[64],name=name" json:"name,omitempty"` 89 LocID Ikev2ID `binapi:"ikev2_id,name=loc_id" json:"loc_id,omitempty"` 90 RemID Ikev2ID `binapi:"ikev2_id,name=rem_id" json:"rem_id,omitempty"` 91 LocTs Ikev2Ts `binapi:"ikev2_ts,name=loc_ts" json:"loc_ts,omitempty"` 92 RemTs Ikev2Ts `binapi:"ikev2_ts,name=rem_ts" json:"rem_ts,omitempty"` 93 Responder Ikev2Responder `binapi:"ikev2_responder,name=responder" json:"responder,omitempty"` 94 IkeTs Ikev2IkeTransforms `binapi:"ikev2_ike_transforms,name=ike_ts" json:"ike_ts,omitempty"` 95 EspTs Ikev2EspTransforms `binapi:"ikev2_esp_transforms,name=esp_ts" json:"esp_ts,omitempty"` 96 Lifetime uint64 `binapi:"u64,name=lifetime" json:"lifetime,omitempty"` 97 LifetimeMaxdata uint64 `binapi:"u64,name=lifetime_maxdata" json:"lifetime_maxdata,omitempty"` 98 LifetimeJitter uint32 `binapi:"u32,name=lifetime_jitter" json:"lifetime_jitter,omitempty"` 99 Handover uint32 `binapi:"u32,name=handover" json:"handover,omitempty"` 100 IpsecOverUDPPort uint16 `binapi:"u16,name=ipsec_over_udp_port" json:"ipsec_over_udp_port,omitempty"` 101 TunItf uint32 `binapi:"u32,name=tun_itf" json:"tun_itf,omitempty"` 102 UDPEncap bool `binapi:"bool,name=udp_encap" json:"udp_encap,omitempty"` 103 NattDisabled bool `binapi:"bool,name=natt_disabled" json:"natt_disabled,omitempty"` 104 Auth Ikev2Auth `binapi:"ikev2_auth,name=auth" json:"auth,omitempty"` 105 } 106 107 // Ikev2Responder defines type 'ikev2_responder'. 108 type Ikev2Responder struct { 109 SwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"` 110 Addr ip_types.Address `binapi:"address,name=addr" json:"addr,omitempty"` 111 } 112 113 // Ikev2Sa defines type 'ikev2_sa'. 114 type Ikev2Sa struct { 115 SaIndex uint32 `binapi:"u32,name=sa_index" json:"sa_index,omitempty"` 116 ProfileIndex uint32 `binapi:"u32,name=profile_index" json:"profile_index,omitempty"` 117 Ispi uint64 `binapi:"u64,name=ispi" json:"ispi,omitempty"` 118 Rspi uint64 `binapi:"u64,name=rspi" json:"rspi,omitempty"` 119 Iaddr ip_types.Address `binapi:"address,name=iaddr" json:"iaddr,omitempty"` 120 Raddr ip_types.Address `binapi:"address,name=raddr" json:"raddr,omitempty"` 121 Keys Ikev2Keys `binapi:"ikev2_keys,name=keys" json:"keys,omitempty"` 122 IID Ikev2ID `binapi:"ikev2_id,name=i_id" json:"i_id,omitempty"` 123 RID Ikev2ID `binapi:"ikev2_id,name=r_id" json:"r_id,omitempty"` 124 Encryption Ikev2SaTransform `binapi:"ikev2_sa_transform,name=encryption" json:"encryption,omitempty"` 125 Integrity Ikev2SaTransform `binapi:"ikev2_sa_transform,name=integrity" json:"integrity,omitempty"` 126 Prf Ikev2SaTransform `binapi:"ikev2_sa_transform,name=prf" json:"prf,omitempty"` 127 Dh Ikev2SaTransform `binapi:"ikev2_sa_transform,name=dh" json:"dh,omitempty"` 128 Stats Ikev2SaStats `binapi:"ikev2_sa_stats,name=stats" json:"stats,omitempty"` 129 } 130 131 // Ikev2SaStats defines type 'ikev2_sa_stats'. 132 type Ikev2SaStats struct { 133 NKeepalives uint16 `binapi:"u16,name=n_keepalives" json:"n_keepalives,omitempty"` 134 NRekeyReq uint16 `binapi:"u16,name=n_rekey_req" json:"n_rekey_req,omitempty"` 135 NSaInitReq uint16 `binapi:"u16,name=n_sa_init_req" json:"n_sa_init_req,omitempty"` 136 NSaAuthReq uint16 `binapi:"u16,name=n_sa_auth_req" json:"n_sa_auth_req,omitempty"` 137 NRetransmit uint16 `binapi:"u16,name=n_retransmit" json:"n_retransmit,omitempty"` 138 NInitSaRetransmit uint16 `binapi:"u16,name=n_init_sa_retransmit" json:"n_init_sa_retransmit,omitempty"` 139 } 140 141 // Ikev2SaTransform defines type 'ikev2_sa_transform'. 142 type Ikev2SaTransform struct { 143 TransformType uint8 `binapi:"u8,name=transform_type" json:"transform_type,omitempty"` 144 TransformID uint16 `binapi:"u16,name=transform_id" json:"transform_id,omitempty"` 145 KeyLen uint16 `binapi:"u16,name=key_len" json:"key_len,omitempty"` 146 KeyTrunc uint16 `binapi:"u16,name=key_trunc" json:"key_trunc,omitempty"` 147 BlockSize uint16 `binapi:"u16,name=block_size" json:"block_size,omitempty"` 148 DhGroup uint8 `binapi:"u8,name=dh_group" json:"dh_group,omitempty"` 149 } 150 151 // Ikev2Ts defines type 'ikev2_ts'. 152 type Ikev2Ts struct { 153 SaIndex uint32 `binapi:"u32,name=sa_index" json:"sa_index,omitempty"` 154 ChildSaIndex uint32 `binapi:"u32,name=child_sa_index" json:"child_sa_index,omitempty"` 155 IsLocal bool `binapi:"bool,name=is_local" json:"is_local,omitempty"` 156 ProtocolID uint8 `binapi:"u8,name=protocol_id" json:"protocol_id,omitempty"` 157 StartPort uint16 `binapi:"u16,name=start_port" json:"start_port,omitempty"` 158 EndPort uint16 `binapi:"u16,name=end_port" json:"end_port,omitempty"` 159 StartAddr ip_types.Address `binapi:"address,name=start_addr" json:"start_addr,omitempty"` 160 EndAddr ip_types.Address `binapi:"address,name=end_addr" json:"end_addr,omitempty"` 161 }