go.ligato.io/vpp-agent/v3@v3.5.0/proto/ligato/vpp/ipsec/ipsec.pb.go (about)

     1  // Code generated by protoc-gen-go. DO NOT EDIT.
     2  // versions:
     3  // 	protoc-gen-go v1.27.1
     4  // 	protoc        v3.17.3
     5  // source: ligato/vpp/ipsec/ipsec.proto
     6  
     7  package vpp_ipsec
     8  
     9  import (
    10  	_ "go.ligato.io/vpp-agent/v3/proto/ligato"
    11  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    12  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    13  	reflect "reflect"
    14  	sync "sync"
    15  )
    16  
    17  const (
    18  	// Verify that this generated code is sufficiently up-to-date.
    19  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    20  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    21  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    22  )
    23  
    24  // Cryptographic algorithm for encryption
    25  type CryptoAlg int32
    26  
    27  const (
    28  	CryptoAlg_NONE_CRYPTO CryptoAlg = 0
    29  	CryptoAlg_AES_CBC_128 CryptoAlg = 1
    30  	CryptoAlg_AES_CBC_192 CryptoAlg = 2
    31  	CryptoAlg_AES_CBC_256 CryptoAlg = 3
    32  	CryptoAlg_AES_CTR_128 CryptoAlg = 4
    33  	CryptoAlg_AES_CTR_192 CryptoAlg = 5
    34  	CryptoAlg_AES_CTR_256 CryptoAlg = 6
    35  	CryptoAlg_AES_GCM_128 CryptoAlg = 7
    36  	CryptoAlg_AES_GCM_192 CryptoAlg = 8
    37  	CryptoAlg_AES_GCM_256 CryptoAlg = 9
    38  	CryptoAlg_DES_CBC     CryptoAlg = 10
    39  	CryptoAlg_DES3_CBC    CryptoAlg = 11 // 3DES_CBC
    40  )
    41  
    42  // Enum value maps for CryptoAlg.
    43  var (
    44  	CryptoAlg_name = map[int32]string{
    45  		0:  "NONE_CRYPTO",
    46  		1:  "AES_CBC_128",
    47  		2:  "AES_CBC_192",
    48  		3:  "AES_CBC_256",
    49  		4:  "AES_CTR_128",
    50  		5:  "AES_CTR_192",
    51  		6:  "AES_CTR_256",
    52  		7:  "AES_GCM_128",
    53  		8:  "AES_GCM_192",
    54  		9:  "AES_GCM_256",
    55  		10: "DES_CBC",
    56  		11: "DES3_CBC",
    57  	}
    58  	CryptoAlg_value = map[string]int32{
    59  		"NONE_CRYPTO": 0,
    60  		"AES_CBC_128": 1,
    61  		"AES_CBC_192": 2,
    62  		"AES_CBC_256": 3,
    63  		"AES_CTR_128": 4,
    64  		"AES_CTR_192": 5,
    65  		"AES_CTR_256": 6,
    66  		"AES_GCM_128": 7,
    67  		"AES_GCM_192": 8,
    68  		"AES_GCM_256": 9,
    69  		"DES_CBC":     10,
    70  		"DES3_CBC":    11,
    71  	}
    72  )
    73  
    74  func (x CryptoAlg) Enum() *CryptoAlg {
    75  	p := new(CryptoAlg)
    76  	*p = x
    77  	return p
    78  }
    79  
    80  func (x CryptoAlg) String() string {
    81  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    82  }
    83  
    84  func (CryptoAlg) Descriptor() protoreflect.EnumDescriptor {
    85  	return file_ligato_vpp_ipsec_ipsec_proto_enumTypes[0].Descriptor()
    86  }
    87  
    88  func (CryptoAlg) Type() protoreflect.EnumType {
    89  	return &file_ligato_vpp_ipsec_ipsec_proto_enumTypes[0]
    90  }
    91  
    92  func (x CryptoAlg) Number() protoreflect.EnumNumber {
    93  	return protoreflect.EnumNumber(x)
    94  }
    95  
    96  // Deprecated: Use CryptoAlg.Descriptor instead.
    97  func (CryptoAlg) EnumDescriptor() ([]byte, []int) {
    98  	return file_ligato_vpp_ipsec_ipsec_proto_rawDescGZIP(), []int{0}
    99  }
   100  
   101  // Cryptographic algorithm for authentication
   102  type IntegAlg int32
   103  
   104  const (
   105  	IntegAlg_NONE_INTEG  IntegAlg = 0
   106  	IntegAlg_MD5_96      IntegAlg = 1 // RFC2403
   107  	IntegAlg_SHA1_96     IntegAlg = 2 // RFC2404
   108  	IntegAlg_SHA_256_96  IntegAlg = 3 // draft-ietf-ipsec-ciph-sha-256-00
   109  	IntegAlg_SHA_256_128 IntegAlg = 4 // RFC4868
   110  	IntegAlg_SHA_384_192 IntegAlg = 5 // RFC4868
   111  	IntegAlg_SHA_512_256 IntegAlg = 6 // RFC4868
   112  )
   113  
   114  // Enum value maps for IntegAlg.
   115  var (
   116  	IntegAlg_name = map[int32]string{
   117  		0: "NONE_INTEG",
   118  		1: "MD5_96",
   119  		2: "SHA1_96",
   120  		3: "SHA_256_96",
   121  		4: "SHA_256_128",
   122  		5: "SHA_384_192",
   123  		6: "SHA_512_256",
   124  	}
   125  	IntegAlg_value = map[string]int32{
   126  		"NONE_INTEG":  0,
   127  		"MD5_96":      1,
   128  		"SHA1_96":     2,
   129  		"SHA_256_96":  3,
   130  		"SHA_256_128": 4,
   131  		"SHA_384_192": 5,
   132  		"SHA_512_256": 6,
   133  	}
   134  )
   135  
   136  func (x IntegAlg) Enum() *IntegAlg {
   137  	p := new(IntegAlg)
   138  	*p = x
   139  	return p
   140  }
   141  
   142  func (x IntegAlg) String() string {
   143  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   144  }
   145  
   146  func (IntegAlg) Descriptor() protoreflect.EnumDescriptor {
   147  	return file_ligato_vpp_ipsec_ipsec_proto_enumTypes[1].Descriptor()
   148  }
   149  
   150  func (IntegAlg) Type() protoreflect.EnumType {
   151  	return &file_ligato_vpp_ipsec_ipsec_proto_enumTypes[1]
   152  }
   153  
   154  func (x IntegAlg) Number() protoreflect.EnumNumber {
   155  	return protoreflect.EnumNumber(x)
   156  }
   157  
   158  // Deprecated: Use IntegAlg.Descriptor instead.
   159  func (IntegAlg) EnumDescriptor() ([]byte, []int) {
   160  	return file_ligato_vpp_ipsec_ipsec_proto_rawDescGZIP(), []int{1}
   161  }
   162  
   163  type SecurityPolicyDatabase_PolicyEntry_Action int32
   164  
   165  const (
   166  	SecurityPolicyDatabase_PolicyEntry_BYPASS  SecurityPolicyDatabase_PolicyEntry_Action = 0
   167  	SecurityPolicyDatabase_PolicyEntry_DISCARD SecurityPolicyDatabase_PolicyEntry_Action = 1
   168  	SecurityPolicyDatabase_PolicyEntry_RESOLVE SecurityPolicyDatabase_PolicyEntry_Action = 2 // Note: this particular action is unused in VPP
   169  	SecurityPolicyDatabase_PolicyEntry_PROTECT SecurityPolicyDatabase_PolicyEntry_Action = 3
   170  )
   171  
   172  // Enum value maps for SecurityPolicyDatabase_PolicyEntry_Action.
   173  var (
   174  	SecurityPolicyDatabase_PolicyEntry_Action_name = map[int32]string{
   175  		0: "BYPASS",
   176  		1: "DISCARD",
   177  		2: "RESOLVE",
   178  		3: "PROTECT",
   179  	}
   180  	SecurityPolicyDatabase_PolicyEntry_Action_value = map[string]int32{
   181  		"BYPASS":  0,
   182  		"DISCARD": 1,
   183  		"RESOLVE": 2,
   184  		"PROTECT": 3,
   185  	}
   186  )
   187  
   188  func (x SecurityPolicyDatabase_PolicyEntry_Action) Enum() *SecurityPolicyDatabase_PolicyEntry_Action {
   189  	p := new(SecurityPolicyDatabase_PolicyEntry_Action)
   190  	*p = x
   191  	return p
   192  }
   193  
   194  func (x SecurityPolicyDatabase_PolicyEntry_Action) String() string {
   195  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   196  }
   197  
   198  func (SecurityPolicyDatabase_PolicyEntry_Action) Descriptor() protoreflect.EnumDescriptor {
   199  	return file_ligato_vpp_ipsec_ipsec_proto_enumTypes[2].Descriptor()
   200  }
   201  
   202  func (SecurityPolicyDatabase_PolicyEntry_Action) Type() protoreflect.EnumType {
   203  	return &file_ligato_vpp_ipsec_ipsec_proto_enumTypes[2]
   204  }
   205  
   206  func (x SecurityPolicyDatabase_PolicyEntry_Action) Number() protoreflect.EnumNumber {
   207  	return protoreflect.EnumNumber(x)
   208  }
   209  
   210  // Deprecated: Use SecurityPolicyDatabase_PolicyEntry_Action.Descriptor instead.
   211  func (SecurityPolicyDatabase_PolicyEntry_Action) EnumDescriptor() ([]byte, []int) {
   212  	return file_ligato_vpp_ipsec_ipsec_proto_rawDescGZIP(), []int{0, 1, 0}
   213  }
   214  
   215  type SecurityPolicy_Action int32
   216  
   217  const (
   218  	SecurityPolicy_BYPASS  SecurityPolicy_Action = 0
   219  	SecurityPolicy_DISCARD SecurityPolicy_Action = 1
   220  	SecurityPolicy_RESOLVE SecurityPolicy_Action = 2 // Note: this particular action is unused in VPP
   221  	SecurityPolicy_PROTECT SecurityPolicy_Action = 3
   222  )
   223  
   224  // Enum value maps for SecurityPolicy_Action.
   225  var (
   226  	SecurityPolicy_Action_name = map[int32]string{
   227  		0: "BYPASS",
   228  		1: "DISCARD",
   229  		2: "RESOLVE",
   230  		3: "PROTECT",
   231  	}
   232  	SecurityPolicy_Action_value = map[string]int32{
   233  		"BYPASS":  0,
   234  		"DISCARD": 1,
   235  		"RESOLVE": 2,
   236  		"PROTECT": 3,
   237  	}
   238  )
   239  
   240  func (x SecurityPolicy_Action) Enum() *SecurityPolicy_Action {
   241  	p := new(SecurityPolicy_Action)
   242  	*p = x
   243  	return p
   244  }
   245  
   246  func (x SecurityPolicy_Action) String() string {
   247  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   248  }
   249  
   250  func (SecurityPolicy_Action) Descriptor() protoreflect.EnumDescriptor {
   251  	return file_ligato_vpp_ipsec_ipsec_proto_enumTypes[3].Descriptor()
   252  }
   253  
   254  func (SecurityPolicy_Action) Type() protoreflect.EnumType {
   255  	return &file_ligato_vpp_ipsec_ipsec_proto_enumTypes[3]
   256  }
   257  
   258  func (x SecurityPolicy_Action) Number() protoreflect.EnumNumber {
   259  	return protoreflect.EnumNumber(x)
   260  }
   261  
   262  // Deprecated: Use SecurityPolicy_Action.Descriptor instead.
   263  func (SecurityPolicy_Action) EnumDescriptor() ([]byte, []int) {
   264  	return file_ligato_vpp_ipsec_ipsec_proto_rawDescGZIP(), []int{1, 0}
   265  }
   266  
   267  type SecurityAssociation_IPSecProtocol int32
   268  
   269  const (
   270  	SecurityAssociation_AH  SecurityAssociation_IPSecProtocol = 0 // Authentication Header, provides a mechanism for authentication only
   271  	SecurityAssociation_ESP SecurityAssociation_IPSecProtocol = 1 // Encapsulating Security Payload is for data confidentiality and authentication
   272  )
   273  
   274  // Enum value maps for SecurityAssociation_IPSecProtocol.
   275  var (
   276  	SecurityAssociation_IPSecProtocol_name = map[int32]string{
   277  		0: "AH",
   278  		1: "ESP",
   279  	}
   280  	SecurityAssociation_IPSecProtocol_value = map[string]int32{
   281  		"AH":  0,
   282  		"ESP": 1,
   283  	}
   284  )
   285  
   286  func (x SecurityAssociation_IPSecProtocol) Enum() *SecurityAssociation_IPSecProtocol {
   287  	p := new(SecurityAssociation_IPSecProtocol)
   288  	*p = x
   289  	return p
   290  }
   291  
   292  func (x SecurityAssociation_IPSecProtocol) String() string {
   293  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   294  }
   295  
   296  func (SecurityAssociation_IPSecProtocol) Descriptor() protoreflect.EnumDescriptor {
   297  	return file_ligato_vpp_ipsec_ipsec_proto_enumTypes[4].Descriptor()
   298  }
   299  
   300  func (SecurityAssociation_IPSecProtocol) Type() protoreflect.EnumType {
   301  	return &file_ligato_vpp_ipsec_ipsec_proto_enumTypes[4]
   302  }
   303  
   304  func (x SecurityAssociation_IPSecProtocol) Number() protoreflect.EnumNumber {
   305  	return protoreflect.EnumNumber(x)
   306  }
   307  
   308  // Deprecated: Use SecurityAssociation_IPSecProtocol.Descriptor instead.
   309  func (SecurityAssociation_IPSecProtocol) EnumDescriptor() ([]byte, []int) {
   310  	return file_ligato_vpp_ipsec_ipsec_proto_rawDescGZIP(), []int{2, 0}
   311  }
   312  
   313  // Security Policy Database (SPD)
   314  type SecurityPolicyDatabase struct {
   315  	state         protoimpl.MessageState
   316  	sizeCache     protoimpl.SizeCache
   317  	unknownFields protoimpl.UnknownFields
   318  
   319  	Index      uint32                              `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty"`          // Numerical security policy database index, serves as a unique identifier
   320  	Interfaces []*SecurityPolicyDatabase_Interface `protobuf:"bytes,2,rep,name=interfaces,proto3" json:"interfaces,omitempty"` // List of interfaces belonging to this SPD
   321  	// List of policy entries belonging to this SPD.
   322  	// Deprecated and actually trying to use this will return an error.
   323  	// Use separate model for Security Policy (SP) defined below.
   324  	//
   325  	// Deprecated: Do not use.
   326  	PolicyEntries []*SecurityPolicyDatabase_PolicyEntry `protobuf:"bytes,3,rep,name=policy_entries,json=policyEntries,proto3" json:"policy_entries,omitempty"`
   327  }
   328  
   329  func (x *SecurityPolicyDatabase) Reset() {
   330  	*x = SecurityPolicyDatabase{}
   331  	if protoimpl.UnsafeEnabled {
   332  		mi := &file_ligato_vpp_ipsec_ipsec_proto_msgTypes[0]
   333  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   334  		ms.StoreMessageInfo(mi)
   335  	}
   336  }
   337  
   338  func (x *SecurityPolicyDatabase) String() string {
   339  	return protoimpl.X.MessageStringOf(x)
   340  }
   341  
   342  func (*SecurityPolicyDatabase) ProtoMessage() {}
   343  
   344  func (x *SecurityPolicyDatabase) ProtoReflect() protoreflect.Message {
   345  	mi := &file_ligato_vpp_ipsec_ipsec_proto_msgTypes[0]
   346  	if protoimpl.UnsafeEnabled && x != nil {
   347  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   348  		if ms.LoadMessageInfo() == nil {
   349  			ms.StoreMessageInfo(mi)
   350  		}
   351  		return ms
   352  	}
   353  	return mi.MessageOf(x)
   354  }
   355  
   356  // Deprecated: Use SecurityPolicyDatabase.ProtoReflect.Descriptor instead.
   357  func (*SecurityPolicyDatabase) Descriptor() ([]byte, []int) {
   358  	return file_ligato_vpp_ipsec_ipsec_proto_rawDescGZIP(), []int{0}
   359  }
   360  
   361  func (x *SecurityPolicyDatabase) GetIndex() uint32 {
   362  	if x != nil {
   363  		return x.Index
   364  	}
   365  	return 0
   366  }
   367  
   368  func (x *SecurityPolicyDatabase) GetInterfaces() []*SecurityPolicyDatabase_Interface {
   369  	if x != nil {
   370  		return x.Interfaces
   371  	}
   372  	return nil
   373  }
   374  
   375  // Deprecated: Do not use.
   376  func (x *SecurityPolicyDatabase) GetPolicyEntries() []*SecurityPolicyDatabase_PolicyEntry {
   377  	if x != nil {
   378  		return x.PolicyEntries
   379  	}
   380  	return nil
   381  }
   382  
   383  type SecurityPolicy struct {
   384  	state         protoimpl.MessageState
   385  	sizeCache     protoimpl.SizeCache
   386  	unknownFields protoimpl.UnknownFields
   387  
   388  	SpdIndex        uint32                `protobuf:"varint,1,opt,name=spd_index,json=spdIndex,proto3" json:"spd_index,omitempty"` // Security policy database index
   389  	SaIndex         uint32                `protobuf:"varint,2,opt,name=sa_index,json=saIndex,proto3" json:"sa_index,omitempty"`    // Security association index
   390  	Priority        int32                 `protobuf:"varint,3,opt,name=priority,proto3" json:"priority,omitempty"`
   391  	IsOutbound      bool                  `protobuf:"varint,4,opt,name=is_outbound,json=isOutbound,proto3" json:"is_outbound,omitempty"`
   392  	RemoteAddrStart string                `protobuf:"bytes,5,opt,name=remote_addr_start,json=remoteAddrStart,proto3" json:"remote_addr_start,omitempty"`
   393  	RemoteAddrStop  string                `protobuf:"bytes,6,opt,name=remote_addr_stop,json=remoteAddrStop,proto3" json:"remote_addr_stop,omitempty"`
   394  	LocalAddrStart  string                `protobuf:"bytes,7,opt,name=local_addr_start,json=localAddrStart,proto3" json:"local_addr_start,omitempty"`
   395  	LocalAddrStop   string                `protobuf:"bytes,8,opt,name=local_addr_stop,json=localAddrStop,proto3" json:"local_addr_stop,omitempty"`
   396  	Protocol        uint32                `protobuf:"varint,9,opt,name=protocol,proto3" json:"protocol,omitempty"`
   397  	RemotePortStart uint32                `protobuf:"varint,10,opt,name=remote_port_start,json=remotePortStart,proto3" json:"remote_port_start,omitempty"`
   398  	RemotePortStop  uint32                `protobuf:"varint,11,opt,name=remote_port_stop,json=remotePortStop,proto3" json:"remote_port_stop,omitempty"`
   399  	LocalPortStart  uint32                `protobuf:"varint,12,opt,name=local_port_start,json=localPortStart,proto3" json:"local_port_start,omitempty"`
   400  	LocalPortStop   uint32                `protobuf:"varint,13,opt,name=local_port_stop,json=localPortStop,proto3" json:"local_port_stop,omitempty"`
   401  	Action          SecurityPolicy_Action `protobuf:"varint,14,opt,name=action,proto3,enum=ligato.vpp.ipsec.SecurityPolicy_Action" json:"action,omitempty"`
   402  }
   403  
   404  func (x *SecurityPolicy) Reset() {
   405  	*x = SecurityPolicy{}
   406  	if protoimpl.UnsafeEnabled {
   407  		mi := &file_ligato_vpp_ipsec_ipsec_proto_msgTypes[1]
   408  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   409  		ms.StoreMessageInfo(mi)
   410  	}
   411  }
   412  
   413  func (x *SecurityPolicy) String() string {
   414  	return protoimpl.X.MessageStringOf(x)
   415  }
   416  
   417  func (*SecurityPolicy) ProtoMessage() {}
   418  
   419  func (x *SecurityPolicy) ProtoReflect() protoreflect.Message {
   420  	mi := &file_ligato_vpp_ipsec_ipsec_proto_msgTypes[1]
   421  	if protoimpl.UnsafeEnabled && x != nil {
   422  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   423  		if ms.LoadMessageInfo() == nil {
   424  			ms.StoreMessageInfo(mi)
   425  		}
   426  		return ms
   427  	}
   428  	return mi.MessageOf(x)
   429  }
   430  
   431  // Deprecated: Use SecurityPolicy.ProtoReflect.Descriptor instead.
   432  func (*SecurityPolicy) Descriptor() ([]byte, []int) {
   433  	return file_ligato_vpp_ipsec_ipsec_proto_rawDescGZIP(), []int{1}
   434  }
   435  
   436  func (x *SecurityPolicy) GetSpdIndex() uint32 {
   437  	if x != nil {
   438  		return x.SpdIndex
   439  	}
   440  	return 0
   441  }
   442  
   443  func (x *SecurityPolicy) GetSaIndex() uint32 {
   444  	if x != nil {
   445  		return x.SaIndex
   446  	}
   447  	return 0
   448  }
   449  
   450  func (x *SecurityPolicy) GetPriority() int32 {
   451  	if x != nil {
   452  		return x.Priority
   453  	}
   454  	return 0
   455  }
   456  
   457  func (x *SecurityPolicy) GetIsOutbound() bool {
   458  	if x != nil {
   459  		return x.IsOutbound
   460  	}
   461  	return false
   462  }
   463  
   464  func (x *SecurityPolicy) GetRemoteAddrStart() string {
   465  	if x != nil {
   466  		return x.RemoteAddrStart
   467  	}
   468  	return ""
   469  }
   470  
   471  func (x *SecurityPolicy) GetRemoteAddrStop() string {
   472  	if x != nil {
   473  		return x.RemoteAddrStop
   474  	}
   475  	return ""
   476  }
   477  
   478  func (x *SecurityPolicy) GetLocalAddrStart() string {
   479  	if x != nil {
   480  		return x.LocalAddrStart
   481  	}
   482  	return ""
   483  }
   484  
   485  func (x *SecurityPolicy) GetLocalAddrStop() string {
   486  	if x != nil {
   487  		return x.LocalAddrStop
   488  	}
   489  	return ""
   490  }
   491  
   492  func (x *SecurityPolicy) GetProtocol() uint32 {
   493  	if x != nil {
   494  		return x.Protocol
   495  	}
   496  	return 0
   497  }
   498  
   499  func (x *SecurityPolicy) GetRemotePortStart() uint32 {
   500  	if x != nil {
   501  		return x.RemotePortStart
   502  	}
   503  	return 0
   504  }
   505  
   506  func (x *SecurityPolicy) GetRemotePortStop() uint32 {
   507  	if x != nil {
   508  		return x.RemotePortStop
   509  	}
   510  	return 0
   511  }
   512  
   513  func (x *SecurityPolicy) GetLocalPortStart() uint32 {
   514  	if x != nil {
   515  		return x.LocalPortStart
   516  	}
   517  	return 0
   518  }
   519  
   520  func (x *SecurityPolicy) GetLocalPortStop() uint32 {
   521  	if x != nil {
   522  		return x.LocalPortStop
   523  	}
   524  	return 0
   525  }
   526  
   527  func (x *SecurityPolicy) GetAction() SecurityPolicy_Action {
   528  	if x != nil {
   529  		return x.Action
   530  	}
   531  	return SecurityPolicy_BYPASS
   532  }
   533  
   534  // Security Association (SA)
   535  type SecurityAssociation struct {
   536  	state         protoimpl.MessageState
   537  	sizeCache     protoimpl.SizeCache
   538  	unknownFields protoimpl.UnknownFields
   539  
   540  	Index          uint32                            `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty"` // Numerical security association index, serves as a unique identifier
   541  	Spi            uint32                            `protobuf:"varint,2,opt,name=spi,proto3" json:"spi,omitempty"`     // Security parameter index
   542  	Protocol       SecurityAssociation_IPSecProtocol `protobuf:"varint,3,opt,name=protocol,proto3,enum=ligato.vpp.ipsec.SecurityAssociation_IPSecProtocol" json:"protocol,omitempty"`
   543  	CryptoAlg      CryptoAlg                         `protobuf:"varint,4,opt,name=crypto_alg,json=cryptoAlg,proto3,enum=ligato.vpp.ipsec.CryptoAlg" json:"crypto_alg,omitempty"` // Cryptographic algorithm for encryption
   544  	CryptoKey      string                            `protobuf:"bytes,5,opt,name=crypto_key,json=cryptoKey,proto3" json:"crypto_key,omitempty"`
   545  	CryptoSalt     uint32                            `protobuf:"varint,15,opt,name=crypto_salt,json=cryptoSalt,proto3" json:"crypto_salt,omitempty"`
   546  	IntegAlg       IntegAlg                          `protobuf:"varint,6,opt,name=integ_alg,json=integAlg,proto3,enum=ligato.vpp.ipsec.IntegAlg" json:"integ_alg,omitempty"` // Cryptographic algorithm for authentication
   547  	IntegKey       string                            `protobuf:"bytes,7,opt,name=integ_key,json=integKey,proto3" json:"integ_key,omitempty"`
   548  	UseEsn         bool                              `protobuf:"varint,8,opt,name=use_esn,json=useEsn,proto3" json:"use_esn,omitempty"`                        // Use extended sequence number
   549  	UseAntiReplay  bool                              `protobuf:"varint,9,opt,name=use_anti_replay,json=useAntiReplay,proto3" json:"use_anti_replay,omitempty"` // Use anti replay
   550  	TunnelSrcAddr  string                            `protobuf:"bytes,10,opt,name=tunnel_src_addr,json=tunnelSrcAddr,proto3" json:"tunnel_src_addr,omitempty"`
   551  	TunnelDstAddr  string                            `protobuf:"bytes,11,opt,name=tunnel_dst_addr,json=tunnelDstAddr,proto3" json:"tunnel_dst_addr,omitempty"`
   552  	EnableUdpEncap bool                              `protobuf:"varint,12,opt,name=enable_udp_encap,json=enableUdpEncap,proto3" json:"enable_udp_encap,omitempty"` // Enable UDP encapsulation for NAT traversal
   553  	TunnelSrcPort  uint32                            `protobuf:"varint,13,opt,name=tunnel_src_port,json=tunnelSrcPort,proto3" json:"tunnel_src_port,omitempty"`
   554  	TunnelDstPort  uint32                            `protobuf:"varint,14,opt,name=tunnel_dst_port,json=tunnelDstPort,proto3" json:"tunnel_dst_port,omitempty"`
   555  }
   556  
   557  func (x *SecurityAssociation) Reset() {
   558  	*x = SecurityAssociation{}
   559  	if protoimpl.UnsafeEnabled {
   560  		mi := &file_ligato_vpp_ipsec_ipsec_proto_msgTypes[2]
   561  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   562  		ms.StoreMessageInfo(mi)
   563  	}
   564  }
   565  
   566  func (x *SecurityAssociation) String() string {
   567  	return protoimpl.X.MessageStringOf(x)
   568  }
   569  
   570  func (*SecurityAssociation) ProtoMessage() {}
   571  
   572  func (x *SecurityAssociation) ProtoReflect() protoreflect.Message {
   573  	mi := &file_ligato_vpp_ipsec_ipsec_proto_msgTypes[2]
   574  	if protoimpl.UnsafeEnabled && x != nil {
   575  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   576  		if ms.LoadMessageInfo() == nil {
   577  			ms.StoreMessageInfo(mi)
   578  		}
   579  		return ms
   580  	}
   581  	return mi.MessageOf(x)
   582  }
   583  
   584  // Deprecated: Use SecurityAssociation.ProtoReflect.Descriptor instead.
   585  func (*SecurityAssociation) Descriptor() ([]byte, []int) {
   586  	return file_ligato_vpp_ipsec_ipsec_proto_rawDescGZIP(), []int{2}
   587  }
   588  
   589  func (x *SecurityAssociation) GetIndex() uint32 {
   590  	if x != nil {
   591  		return x.Index
   592  	}
   593  	return 0
   594  }
   595  
   596  func (x *SecurityAssociation) GetSpi() uint32 {
   597  	if x != nil {
   598  		return x.Spi
   599  	}
   600  	return 0
   601  }
   602  
   603  func (x *SecurityAssociation) GetProtocol() SecurityAssociation_IPSecProtocol {
   604  	if x != nil {
   605  		return x.Protocol
   606  	}
   607  	return SecurityAssociation_AH
   608  }
   609  
   610  func (x *SecurityAssociation) GetCryptoAlg() CryptoAlg {
   611  	if x != nil {
   612  		return x.CryptoAlg
   613  	}
   614  	return CryptoAlg_NONE_CRYPTO
   615  }
   616  
   617  func (x *SecurityAssociation) GetCryptoKey() string {
   618  	if x != nil {
   619  		return x.CryptoKey
   620  	}
   621  	return ""
   622  }
   623  
   624  func (x *SecurityAssociation) GetCryptoSalt() uint32 {
   625  	if x != nil {
   626  		return x.CryptoSalt
   627  	}
   628  	return 0
   629  }
   630  
   631  func (x *SecurityAssociation) GetIntegAlg() IntegAlg {
   632  	if x != nil {
   633  		return x.IntegAlg
   634  	}
   635  	return IntegAlg_NONE_INTEG
   636  }
   637  
   638  func (x *SecurityAssociation) GetIntegKey() string {
   639  	if x != nil {
   640  		return x.IntegKey
   641  	}
   642  	return ""
   643  }
   644  
   645  func (x *SecurityAssociation) GetUseEsn() bool {
   646  	if x != nil {
   647  		return x.UseEsn
   648  	}
   649  	return false
   650  }
   651  
   652  func (x *SecurityAssociation) GetUseAntiReplay() bool {
   653  	if x != nil {
   654  		return x.UseAntiReplay
   655  	}
   656  	return false
   657  }
   658  
   659  func (x *SecurityAssociation) GetTunnelSrcAddr() string {
   660  	if x != nil {
   661  		return x.TunnelSrcAddr
   662  	}
   663  	return ""
   664  }
   665  
   666  func (x *SecurityAssociation) GetTunnelDstAddr() string {
   667  	if x != nil {
   668  		return x.TunnelDstAddr
   669  	}
   670  	return ""
   671  }
   672  
   673  func (x *SecurityAssociation) GetEnableUdpEncap() bool {
   674  	if x != nil {
   675  		return x.EnableUdpEncap
   676  	}
   677  	return false
   678  }
   679  
   680  func (x *SecurityAssociation) GetTunnelSrcPort() uint32 {
   681  	if x != nil {
   682  		return x.TunnelSrcPort
   683  	}
   684  	return 0
   685  }
   686  
   687  func (x *SecurityAssociation) GetTunnelDstPort() uint32 {
   688  	if x != nil {
   689  		return x.TunnelDstPort
   690  	}
   691  	return 0
   692  }
   693  
   694  // TunnelProtection allows enabling IPSec tunnel protection on an existing interface
   695  // (only IPIP tunnel interfaces are currently supported)
   696  type TunnelProtection struct {
   697  	state         protoimpl.MessageState
   698  	sizeCache     protoimpl.SizeCache
   699  	unknownFields protoimpl.UnknownFields
   700  
   701  	// Name of the interface to be protected with IPSec.
   702  	Interface string `protobuf:"bytes,1,opt,name=interface,proto3" json:"interface,omitempty"`
   703  	// Outbound security associations identified by SA index.
   704  	SaOut []uint32 `protobuf:"varint,2,rep,packed,name=sa_out,json=saOut,proto3" json:"sa_out,omitempty"`
   705  	// Inbound security associations identified by SA index.
   706  	SaIn []uint32 `protobuf:"varint,3,rep,packed,name=sa_in,json=saIn,proto3" json:"sa_in,omitempty"`
   707  	// (Optional) Next hop IP address, used for multipoint tunnels.
   708  	NextHopAddr string `protobuf:"bytes,4,opt,name=next_hop_addr,json=nextHopAddr,proto3" json:"next_hop_addr,omitempty"`
   709  }
   710  
   711  func (x *TunnelProtection) Reset() {
   712  	*x = TunnelProtection{}
   713  	if protoimpl.UnsafeEnabled {
   714  		mi := &file_ligato_vpp_ipsec_ipsec_proto_msgTypes[3]
   715  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   716  		ms.StoreMessageInfo(mi)
   717  	}
   718  }
   719  
   720  func (x *TunnelProtection) String() string {
   721  	return protoimpl.X.MessageStringOf(x)
   722  }
   723  
   724  func (*TunnelProtection) ProtoMessage() {}
   725  
   726  func (x *TunnelProtection) ProtoReflect() protoreflect.Message {
   727  	mi := &file_ligato_vpp_ipsec_ipsec_proto_msgTypes[3]
   728  	if protoimpl.UnsafeEnabled && x != nil {
   729  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   730  		if ms.LoadMessageInfo() == nil {
   731  			ms.StoreMessageInfo(mi)
   732  		}
   733  		return ms
   734  	}
   735  	return mi.MessageOf(x)
   736  }
   737  
   738  // Deprecated: Use TunnelProtection.ProtoReflect.Descriptor instead.
   739  func (*TunnelProtection) Descriptor() ([]byte, []int) {
   740  	return file_ligato_vpp_ipsec_ipsec_proto_rawDescGZIP(), []int{3}
   741  }
   742  
   743  func (x *TunnelProtection) GetInterface() string {
   744  	if x != nil {
   745  		return x.Interface
   746  	}
   747  	return ""
   748  }
   749  
   750  func (x *TunnelProtection) GetSaOut() []uint32 {
   751  	if x != nil {
   752  		return x.SaOut
   753  	}
   754  	return nil
   755  }
   756  
   757  func (x *TunnelProtection) GetSaIn() []uint32 {
   758  	if x != nil {
   759  		return x.SaIn
   760  	}
   761  	return nil
   762  }
   763  
   764  func (x *TunnelProtection) GetNextHopAddr() string {
   765  	if x != nil {
   766  		return x.NextHopAddr
   767  	}
   768  	return ""
   769  }
   770  
   771  type SecurityPolicyDatabase_Interface struct {
   772  	state         protoimpl.MessageState
   773  	sizeCache     protoimpl.SizeCache
   774  	unknownFields protoimpl.UnknownFields
   775  
   776  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // Name of the related interface
   777  }
   778  
   779  func (x *SecurityPolicyDatabase_Interface) Reset() {
   780  	*x = SecurityPolicyDatabase_Interface{}
   781  	if protoimpl.UnsafeEnabled {
   782  		mi := &file_ligato_vpp_ipsec_ipsec_proto_msgTypes[4]
   783  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   784  		ms.StoreMessageInfo(mi)
   785  	}
   786  }
   787  
   788  func (x *SecurityPolicyDatabase_Interface) String() string {
   789  	return protoimpl.X.MessageStringOf(x)
   790  }
   791  
   792  func (*SecurityPolicyDatabase_Interface) ProtoMessage() {}
   793  
   794  func (x *SecurityPolicyDatabase_Interface) ProtoReflect() protoreflect.Message {
   795  	mi := &file_ligato_vpp_ipsec_ipsec_proto_msgTypes[4]
   796  	if protoimpl.UnsafeEnabled && x != nil {
   797  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   798  		if ms.LoadMessageInfo() == nil {
   799  			ms.StoreMessageInfo(mi)
   800  		}
   801  		return ms
   802  	}
   803  	return mi.MessageOf(x)
   804  }
   805  
   806  // Deprecated: Use SecurityPolicyDatabase_Interface.ProtoReflect.Descriptor instead.
   807  func (*SecurityPolicyDatabase_Interface) Descriptor() ([]byte, []int) {
   808  	return file_ligato_vpp_ipsec_ipsec_proto_rawDescGZIP(), []int{0, 0}
   809  }
   810  
   811  func (x *SecurityPolicyDatabase_Interface) GetName() string {
   812  	if x != nil {
   813  		return x.Name
   814  	}
   815  	return ""
   816  }
   817  
   818  type SecurityPolicyDatabase_PolicyEntry struct {
   819  	state         protoimpl.MessageState
   820  	sizeCache     protoimpl.SizeCache
   821  	unknownFields protoimpl.UnknownFields
   822  
   823  	SaIndex         uint32                                    `protobuf:"varint,1,opt,name=sa_index,json=saIndex,proto3" json:"sa_index,omitempty"` // Security association index
   824  	Priority        int32                                     `protobuf:"varint,2,opt,name=priority,proto3" json:"priority,omitempty"`
   825  	IsOutbound      bool                                      `protobuf:"varint,3,opt,name=is_outbound,json=isOutbound,proto3" json:"is_outbound,omitempty"`
   826  	RemoteAddrStart string                                    `protobuf:"bytes,4,opt,name=remote_addr_start,json=remoteAddrStart,proto3" json:"remote_addr_start,omitempty"`
   827  	RemoteAddrStop  string                                    `protobuf:"bytes,5,opt,name=remote_addr_stop,json=remoteAddrStop,proto3" json:"remote_addr_stop,omitempty"`
   828  	LocalAddrStart  string                                    `protobuf:"bytes,6,opt,name=local_addr_start,json=localAddrStart,proto3" json:"local_addr_start,omitempty"`
   829  	LocalAddrStop   string                                    `protobuf:"bytes,7,opt,name=local_addr_stop,json=localAddrStop,proto3" json:"local_addr_stop,omitempty"`
   830  	Protocol        uint32                                    `protobuf:"varint,8,opt,name=protocol,proto3" json:"protocol,omitempty"`
   831  	RemotePortStart uint32                                    `protobuf:"varint,9,opt,name=remote_port_start,json=remotePortStart,proto3" json:"remote_port_start,omitempty"`
   832  	RemotePortStop  uint32                                    `protobuf:"varint,10,opt,name=remote_port_stop,json=remotePortStop,proto3" json:"remote_port_stop,omitempty"`
   833  	LocalPortStart  uint32                                    `protobuf:"varint,11,opt,name=local_port_start,json=localPortStart,proto3" json:"local_port_start,omitempty"`
   834  	LocalPortStop   uint32                                    `protobuf:"varint,12,opt,name=local_port_stop,json=localPortStop,proto3" json:"local_port_stop,omitempty"`
   835  	Action          SecurityPolicyDatabase_PolicyEntry_Action `protobuf:"varint,13,opt,name=action,proto3,enum=ligato.vpp.ipsec.SecurityPolicyDatabase_PolicyEntry_Action" json:"action,omitempty"`
   836  }
   837  
   838  func (x *SecurityPolicyDatabase_PolicyEntry) Reset() {
   839  	*x = SecurityPolicyDatabase_PolicyEntry{}
   840  	if protoimpl.UnsafeEnabled {
   841  		mi := &file_ligato_vpp_ipsec_ipsec_proto_msgTypes[5]
   842  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   843  		ms.StoreMessageInfo(mi)
   844  	}
   845  }
   846  
   847  func (x *SecurityPolicyDatabase_PolicyEntry) String() string {
   848  	return protoimpl.X.MessageStringOf(x)
   849  }
   850  
   851  func (*SecurityPolicyDatabase_PolicyEntry) ProtoMessage() {}
   852  
   853  func (x *SecurityPolicyDatabase_PolicyEntry) ProtoReflect() protoreflect.Message {
   854  	mi := &file_ligato_vpp_ipsec_ipsec_proto_msgTypes[5]
   855  	if protoimpl.UnsafeEnabled && x != nil {
   856  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   857  		if ms.LoadMessageInfo() == nil {
   858  			ms.StoreMessageInfo(mi)
   859  		}
   860  		return ms
   861  	}
   862  	return mi.MessageOf(x)
   863  }
   864  
   865  // Deprecated: Use SecurityPolicyDatabase_PolicyEntry.ProtoReflect.Descriptor instead.
   866  func (*SecurityPolicyDatabase_PolicyEntry) Descriptor() ([]byte, []int) {
   867  	return file_ligato_vpp_ipsec_ipsec_proto_rawDescGZIP(), []int{0, 1}
   868  }
   869  
   870  func (x *SecurityPolicyDatabase_PolicyEntry) GetSaIndex() uint32 {
   871  	if x != nil {
   872  		return x.SaIndex
   873  	}
   874  	return 0
   875  }
   876  
   877  func (x *SecurityPolicyDatabase_PolicyEntry) GetPriority() int32 {
   878  	if x != nil {
   879  		return x.Priority
   880  	}
   881  	return 0
   882  }
   883  
   884  func (x *SecurityPolicyDatabase_PolicyEntry) GetIsOutbound() bool {
   885  	if x != nil {
   886  		return x.IsOutbound
   887  	}
   888  	return false
   889  }
   890  
   891  func (x *SecurityPolicyDatabase_PolicyEntry) GetRemoteAddrStart() string {
   892  	if x != nil {
   893  		return x.RemoteAddrStart
   894  	}
   895  	return ""
   896  }
   897  
   898  func (x *SecurityPolicyDatabase_PolicyEntry) GetRemoteAddrStop() string {
   899  	if x != nil {
   900  		return x.RemoteAddrStop
   901  	}
   902  	return ""
   903  }
   904  
   905  func (x *SecurityPolicyDatabase_PolicyEntry) GetLocalAddrStart() string {
   906  	if x != nil {
   907  		return x.LocalAddrStart
   908  	}
   909  	return ""
   910  }
   911  
   912  func (x *SecurityPolicyDatabase_PolicyEntry) GetLocalAddrStop() string {
   913  	if x != nil {
   914  		return x.LocalAddrStop
   915  	}
   916  	return ""
   917  }
   918  
   919  func (x *SecurityPolicyDatabase_PolicyEntry) GetProtocol() uint32 {
   920  	if x != nil {
   921  		return x.Protocol
   922  	}
   923  	return 0
   924  }
   925  
   926  func (x *SecurityPolicyDatabase_PolicyEntry) GetRemotePortStart() uint32 {
   927  	if x != nil {
   928  		return x.RemotePortStart
   929  	}
   930  	return 0
   931  }
   932  
   933  func (x *SecurityPolicyDatabase_PolicyEntry) GetRemotePortStop() uint32 {
   934  	if x != nil {
   935  		return x.RemotePortStop
   936  	}
   937  	return 0
   938  }
   939  
   940  func (x *SecurityPolicyDatabase_PolicyEntry) GetLocalPortStart() uint32 {
   941  	if x != nil {
   942  		return x.LocalPortStart
   943  	}
   944  	return 0
   945  }
   946  
   947  func (x *SecurityPolicyDatabase_PolicyEntry) GetLocalPortStop() uint32 {
   948  	if x != nil {
   949  		return x.LocalPortStop
   950  	}
   951  	return 0
   952  }
   953  
   954  func (x *SecurityPolicyDatabase_PolicyEntry) GetAction() SecurityPolicyDatabase_PolicyEntry_Action {
   955  	if x != nil {
   956  		return x.Action
   957  	}
   958  	return SecurityPolicyDatabase_PolicyEntry_BYPASS
   959  }
   960  
   961  var File_ligato_vpp_ipsec_ipsec_proto protoreflect.FileDescriptor
   962  
   963  var file_ligato_vpp_ipsec_ipsec_proto_rawDesc = []byte{
   964  	0x0a, 0x1c, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2f, 0x76, 0x70, 0x70, 0x2f, 0x69, 0x70, 0x73,
   965  	0x65, 0x63, 0x2f, 0x69, 0x70, 0x73, 0x65, 0x63, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10,
   966  	0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x70, 0x73, 0x65, 0x63,
   967  	0x1a, 0x18, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
   968  	0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb2, 0x07, 0x0a, 0x16, 0x53,
   969  	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x44, 0x61, 0x74,
   970  	0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01,
   971  	0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x52, 0x0a, 0x0a, 0x69,
   972  	0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32,
   973  	0x32, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x70, 0x73,
   974  	0x65, 0x63, 0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x50, 0x6f, 0x6c, 0x69, 0x63,
   975  	0x79, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66,
   976  	0x61, 0x63, 0x65, 0x52, 0x0a, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x12,
   977  	0x5f, 0x0a, 0x0e, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65,
   978  	0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f,
   979  	0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x70, 0x73, 0x65, 0x63, 0x2e, 0x53, 0x65, 0x63, 0x75, 0x72,
   980  	0x69, 0x74, 0x79, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73,
   981  	0x65, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x02, 0x18,
   982  	0x01, 0x52, 0x0d, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73,
   983  	0x1a, 0x1f, 0x0a, 0x09, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x12, 0x0a,
   984  	0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
   985  	0x65, 0x1a, 0xab, 0x05, 0x0a, 0x0b, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x45, 0x6e, 0x74, 0x72,
   986  	0x79, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x61, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20,
   987  	0x01, 0x28, 0x0d, 0x52, 0x07, 0x73, 0x61, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1a, 0x0a, 0x08,
   988  	0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08,
   989  	0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x6f,
   990  	0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69,
   991  	0x73, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x31, 0x0a, 0x11, 0x72, 0x65, 0x6d,
   992  	0x6f, 0x74, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x04,
   993  	0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 0x0f, 0x72, 0x65, 0x6d,
   994  	0x6f, 0x74, 0x65, 0x41, 0x64, 0x64, 0x72, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x2f, 0x0a, 0x10,
   995  	0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f, 0x73, 0x74, 0x6f, 0x70,
   996  	0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 0x0e, 0x72,
   997  	0x65, 0x6d, 0x6f, 0x74, 0x65, 0x41, 0x64, 0x64, 0x72, 0x53, 0x74, 0x6f, 0x70, 0x12, 0x2f, 0x0a,
   998  	0x10, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x72,
   999  	0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 0x0e,
  1000  	0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x2d,
  1001  	0x0a, 0x0f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f, 0x73, 0x74, 0x6f,
  1002  	0x70, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 0x0d,
  1003  	0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x53, 0x74, 0x6f, 0x70, 0x12, 0x1a, 0x0a,
  1004  	0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52,
  1005  	0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x35, 0x0a, 0x11, 0x72, 0x65, 0x6d,
  1006  	0x6f, 0x74, 0x65, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x09,
  1007  	0x20, 0x01, 0x28, 0x0d, 0x42, 0x09, 0x82, 0x7d, 0x06, 0x12, 0x04, 0x10, 0xff, 0xff, 0x03, 0x52,
  1008  	0x0f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74,
  1009  	0x12, 0x33, 0x0a, 0x10, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x5f,
  1010  	0x73, 0x74, 0x6f, 0x70, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x09, 0x82, 0x7d, 0x06, 0x12,
  1011  	0x04, 0x10, 0xff, 0xff, 0x03, 0x52, 0x0e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x6f, 0x72,
  1012  	0x74, 0x53, 0x74, 0x6f, 0x70, 0x12, 0x33, 0x0a, 0x10, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x70,
  1013  	0x6f, 0x72, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x42,
  1014  	0x09, 0x82, 0x7d, 0x06, 0x12, 0x04, 0x10, 0xff, 0xff, 0x03, 0x52, 0x0e, 0x6c, 0x6f, 0x63, 0x61,
  1015  	0x6c, 0x50, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x31, 0x0a, 0x0f, 0x6c, 0x6f,
  1016  	0x63, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x74, 0x6f, 0x70, 0x18, 0x0c, 0x20,
  1017  	0x01, 0x28, 0x0d, 0x42, 0x09, 0x82, 0x7d, 0x06, 0x12, 0x04, 0x10, 0xff, 0xff, 0x03, 0x52, 0x0d,
  1018  	0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x50, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x6f, 0x70, 0x12, 0x53, 0x0a,
  1019  	0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3b, 0x2e,
  1020  	0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x70, 0x73, 0x65, 0x63,
  1021  	0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x44,
  1022  	0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x45, 0x6e,
  1023  	0x74, 0x72, 0x79, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69,
  1024  	0x6f, 0x6e, 0x22, 0x3b, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0a, 0x0a, 0x06,
  1025  	0x42, 0x59, 0x50, 0x41, 0x53, 0x53, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x49, 0x53, 0x43,
  1026  	0x41, 0x52, 0x44, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x45, 0x53, 0x4f, 0x4c, 0x56, 0x45,
  1027  	0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x52, 0x4f, 0x54, 0x45, 0x43, 0x54, 0x10, 0x03, 0x22,
  1028  	0xb7, 0x05, 0x0a, 0x0e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x50, 0x6f, 0x6c, 0x69,
  1029  	0x63, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x70, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18,
  1030  	0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x70, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12,
  1031  	0x19, 0x0a, 0x08, 0x73, 0x61, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28,
  1032  	0x0d, 0x52, 0x07, 0x73, 0x61, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72,
  1033  	0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x72,
  1034  	0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x6f, 0x75, 0x74,
  1035  	0x62, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x4f,
  1036  	0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x31, 0x0a, 0x11, 0x72, 0x65, 0x6d, 0x6f, 0x74,
  1037  	0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01,
  1038  	0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 0x0f, 0x72, 0x65, 0x6d, 0x6f, 0x74,
  1039  	0x65, 0x41, 0x64, 0x64, 0x72, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x2f, 0x0a, 0x10, 0x72, 0x65,
  1040  	0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f, 0x73, 0x74, 0x6f, 0x70, 0x18, 0x06,
  1041  	0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 0x0e, 0x72, 0x65, 0x6d,
  1042  	0x6f, 0x74, 0x65, 0x41, 0x64, 0x64, 0x72, 0x53, 0x74, 0x6f, 0x70, 0x12, 0x2f, 0x0a, 0x10, 0x6c,
  1043  	0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18,
  1044  	0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 0x0e, 0x6c, 0x6f,
  1045  	0x63, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x2d, 0x0a, 0x0f,
  1046  	0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x5f, 0x73, 0x74, 0x6f, 0x70, 0x18,
  1047  	0x08, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 0x0d, 0x6c, 0x6f,
  1048  	0x63, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x53, 0x74, 0x6f, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x70,
  1049  	0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70,
  1050  	0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x35, 0x0a, 0x11, 0x72, 0x65, 0x6d, 0x6f, 0x74,
  1051  	0x65, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x0a, 0x20, 0x01,
  1052  	0x28, 0x0d, 0x42, 0x09, 0x82, 0x7d, 0x06, 0x12, 0x04, 0x10, 0xff, 0xff, 0x03, 0x52, 0x0f, 0x72,
  1053  	0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x33,
  1054  	0x0a, 0x10, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x74,
  1055  	0x6f, 0x70, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x09, 0x82, 0x7d, 0x06, 0x12, 0x04, 0x10,
  1056  	0xff, 0xff, 0x03, 0x52, 0x0e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x53,
  1057  	0x74, 0x6f, 0x70, 0x12, 0x33, 0x0a, 0x10, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x72,
  1058  	0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x09, 0x82,
  1059  	0x7d, 0x06, 0x12, 0x04, 0x10, 0xff, 0xff, 0x03, 0x52, 0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x50,
  1060  	0x6f, 0x72, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x31, 0x0a, 0x0f, 0x6c, 0x6f, 0x63, 0x61,
  1061  	0x6c, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x74, 0x6f, 0x70, 0x18, 0x0d, 0x20, 0x01, 0x28,
  1062  	0x0d, 0x42, 0x09, 0x82, 0x7d, 0x06, 0x12, 0x04, 0x10, 0xff, 0xff, 0x03, 0x52, 0x0d, 0x6c, 0x6f,
  1063  	0x63, 0x61, 0x6c, 0x50, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x6f, 0x70, 0x12, 0x3f, 0x0a, 0x06, 0x61,
  1064  	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x27, 0x2e, 0x6c, 0x69,
  1065  	0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x70, 0x73, 0x65, 0x63, 0x2e, 0x53,
  1066  	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x41, 0x63,
  1067  	0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3b, 0x0a, 0x06,
  1068  	0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0a, 0x0a, 0x06, 0x42, 0x59, 0x50, 0x41, 0x53, 0x53,
  1069  	0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x49, 0x53, 0x43, 0x41, 0x52, 0x44, 0x10, 0x01, 0x12,
  1070  	0x0b, 0x0a, 0x07, 0x52, 0x45, 0x53, 0x4f, 0x4c, 0x56, 0x45, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07,
  1071  	0x50, 0x52, 0x4f, 0x54, 0x45, 0x43, 0x54, 0x10, 0x03, 0x22, 0xb1, 0x05, 0x0a, 0x13, 0x53, 0x65,
  1072  	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f,
  1073  	0x6e, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d,
  1074  	0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x70, 0x69, 0x18, 0x02,
  1075  	0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x73, 0x70, 0x69, 0x12, 0x4f, 0x0a, 0x08, 0x70, 0x72, 0x6f,
  1076  	0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x6c, 0x69,
  1077  	0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x70, 0x73, 0x65, 0x63, 0x2e, 0x53,
  1078  	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69,
  1079  	0x6f, 0x6e, 0x2e, 0x49, 0x50, 0x53, 0x65, 0x63, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
  1080  	0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x3a, 0x0a, 0x0a, 0x63, 0x72,
  1081  	0x79, 0x70, 0x74, 0x6f, 0x5f, 0x61, 0x6c, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b,
  1082  	0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x70, 0x73, 0x65,
  1083  	0x63, 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x41, 0x6c, 0x67, 0x52, 0x09, 0x63, 0x72, 0x79,
  1084  	0x70, 0x74, 0x6f, 0x41, 0x6c, 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f,
  1085  	0x5f, 0x6b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x79, 0x70,
  1086  	0x74, 0x6f, 0x4b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f,
  1087  	0x73, 0x61, 0x6c, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x72, 0x79, 0x70,
  1088  	0x74, 0x6f, 0x53, 0x61, 0x6c, 0x74, 0x12, 0x37, 0x0a, 0x09, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x5f,
  1089  	0x61, 0x6c, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x6c, 0x69, 0x67, 0x61,
  1090  	0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x69, 0x70, 0x73, 0x65, 0x63, 0x2e, 0x49, 0x6e, 0x74,
  1091  	0x65, 0x67, 0x41, 0x6c, 0x67, 0x52, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x41, 0x6c, 0x67, 0x12,
  1092  	0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x07, 0x20, 0x01,
  1093  	0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x4b, 0x65, 0x79, 0x12, 0x17, 0x0a, 0x07,
  1094  	0x75, 0x73, 0x65, 0x5f, 0x65, 0x73, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x75,
  1095  	0x73, 0x65, 0x45, 0x73, 0x6e, 0x12, 0x26, 0x0a, 0x0f, 0x75, 0x73, 0x65, 0x5f, 0x61, 0x6e, 0x74,
  1096  	0x69, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d,
  1097  	0x75, 0x73, 0x65, 0x41, 0x6e, 0x74, 0x69, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x12, 0x2d, 0x0a,
  1098  	0x0f, 0x74, 0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x73, 0x72, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72,
  1099  	0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 0x0d, 0x74,
  1100  	0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x72, 0x63, 0x41, 0x64, 0x64, 0x72, 0x12, 0x2d, 0x0a, 0x0f,
  1101  	0x74, 0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x64, 0x73, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18,
  1102  	0x0b, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 0x0d, 0x74, 0x75,
  1103  	0x6e, 0x6e, 0x65, 0x6c, 0x44, 0x73, 0x74, 0x41, 0x64, 0x64, 0x72, 0x12, 0x28, 0x0a, 0x10, 0x65,
  1104  	0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x75, 0x64, 0x70, 0x5f, 0x65, 0x6e, 0x63, 0x61, 0x70, 0x18,
  1105  	0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x55, 0x64, 0x70,
  1106  	0x45, 0x6e, 0x63, 0x61, 0x70, 0x12, 0x31, 0x0a, 0x0f, 0x74, 0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
  1107  	0x73, 0x72, 0x63, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x09,
  1108  	0x82, 0x7d, 0x06, 0x12, 0x04, 0x10, 0xff, 0xff, 0x03, 0x52, 0x0d, 0x74, 0x75, 0x6e, 0x6e, 0x65,
  1109  	0x6c, 0x53, 0x72, 0x63, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x31, 0x0a, 0x0f, 0x74, 0x75, 0x6e, 0x6e,
  1110  	0x65, 0x6c, 0x5f, 0x64, 0x73, 0x74, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28,
  1111  	0x0d, 0x42, 0x09, 0x82, 0x7d, 0x06, 0x12, 0x04, 0x10, 0xff, 0xff, 0x03, 0x52, 0x0d, 0x74, 0x75,
  1112  	0x6e, 0x6e, 0x65, 0x6c, 0x44, 0x73, 0x74, 0x50, 0x6f, 0x72, 0x74, 0x22, 0x20, 0x0a, 0x0d, 0x49,
  1113  	0x50, 0x53, 0x65, 0x63, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x06, 0x0a, 0x02,
  1114  	0x41, 0x48, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x45, 0x53, 0x50, 0x10, 0x01, 0x22, 0x87, 0x01,
  1115  	0x0a, 0x10, 0x54, 0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69,
  1116  	0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18,
  1117  	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65,
  1118  	0x12, 0x15, 0x0a, 0x06, 0x73, 0x61, 0x5f, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d,
  1119  	0x52, 0x05, 0x73, 0x61, 0x4f, 0x75, 0x74, 0x12, 0x13, 0x0a, 0x05, 0x73, 0x61, 0x5f, 0x69, 0x6e,
  1120  	0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x04, 0x73, 0x61, 0x49, 0x6e, 0x12, 0x29, 0x0a, 0x0d,
  1121  	0x6e, 0x65, 0x78, 0x74, 0x5f, 0x68, 0x6f, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x04, 0x20,
  1122  	0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x01, 0x52, 0x0b, 0x6e, 0x65, 0x78, 0x74,
  1123  	0x48, 0x6f, 0x70, 0x41, 0x64, 0x64, 0x72, 0x2a, 0xd0, 0x01, 0x0a, 0x09, 0x43, 0x72, 0x79, 0x70,
  1124  	0x74, 0x6f, 0x41, 0x6c, 0x67, 0x12, 0x0f, 0x0a, 0x0b, 0x4e, 0x4f, 0x4e, 0x45, 0x5f, 0x43, 0x52,
  1125  	0x59, 0x50, 0x54, 0x4f, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x41, 0x45, 0x53, 0x5f, 0x43, 0x42,
  1126  	0x43, 0x5f, 0x31, 0x32, 0x38, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x41, 0x45, 0x53, 0x5f, 0x43,
  1127  	0x42, 0x43, 0x5f, 0x31, 0x39, 0x32, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x41, 0x45, 0x53, 0x5f,
  1128  	0x43, 0x42, 0x43, 0x5f, 0x32, 0x35, 0x36, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x41, 0x45, 0x53,
  1129  	0x5f, 0x43, 0x54, 0x52, 0x5f, 0x31, 0x32, 0x38, 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x41, 0x45,
  1130  	0x53, 0x5f, 0x43, 0x54, 0x52, 0x5f, 0x31, 0x39, 0x32, 0x10, 0x05, 0x12, 0x0f, 0x0a, 0x0b, 0x41,
  1131  	0x45, 0x53, 0x5f, 0x43, 0x54, 0x52, 0x5f, 0x32, 0x35, 0x36, 0x10, 0x06, 0x12, 0x0f, 0x0a, 0x0b,
  1132  	0x41, 0x45, 0x53, 0x5f, 0x47, 0x43, 0x4d, 0x5f, 0x31, 0x32, 0x38, 0x10, 0x07, 0x12, 0x0f, 0x0a,
  1133  	0x0b, 0x41, 0x45, 0x53, 0x5f, 0x47, 0x43, 0x4d, 0x5f, 0x31, 0x39, 0x32, 0x10, 0x08, 0x12, 0x0f,
  1134  	0x0a, 0x0b, 0x41, 0x45, 0x53, 0x5f, 0x47, 0x43, 0x4d, 0x5f, 0x32, 0x35, 0x36, 0x10, 0x09, 0x12,
  1135  	0x0b, 0x0a, 0x07, 0x44, 0x45, 0x53, 0x5f, 0x43, 0x42, 0x43, 0x10, 0x0a, 0x12, 0x0c, 0x0a, 0x08,
  1136  	0x44, 0x45, 0x53, 0x33, 0x5f, 0x43, 0x42, 0x43, 0x10, 0x0b, 0x2a, 0x76, 0x0a, 0x08, 0x49, 0x6e,
  1137  	0x74, 0x65, 0x67, 0x41, 0x6c, 0x67, 0x12, 0x0e, 0x0a, 0x0a, 0x4e, 0x4f, 0x4e, 0x45, 0x5f, 0x49,
  1138  	0x4e, 0x54, 0x45, 0x47, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x4d, 0x44, 0x35, 0x5f, 0x39, 0x36,
  1139  	0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x48, 0x41, 0x31, 0x5f, 0x39, 0x36, 0x10, 0x02, 0x12,
  1140  	0x0e, 0x0a, 0x0a, 0x53, 0x48, 0x41, 0x5f, 0x32, 0x35, 0x36, 0x5f, 0x39, 0x36, 0x10, 0x03, 0x12,
  1141  	0x0f, 0x0a, 0x0b, 0x53, 0x48, 0x41, 0x5f, 0x32, 0x35, 0x36, 0x5f, 0x31, 0x32, 0x38, 0x10, 0x04,
  1142  	0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x48, 0x41, 0x5f, 0x33, 0x38, 0x34, 0x5f, 0x31, 0x39, 0x32, 0x10,
  1143  	0x05, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x48, 0x41, 0x5f, 0x35, 0x31, 0x32, 0x5f, 0x32, 0x35, 0x36,
  1144  	0x10, 0x06, 0x42, 0x3c, 0x5a, 0x3a, 0x67, 0x6f, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e,
  1145  	0x69, 0x6f, 0x2f, 0x76, 0x70, 0x70, 0x2d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x76, 0x33, 0x2f,
  1146  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2f, 0x76, 0x70, 0x70,
  1147  	0x2f, 0x69, 0x70, 0x73, 0x65, 0x63, 0x3b, 0x76, 0x70, 0x70, 0x5f, 0x69, 0x70, 0x73, 0x65, 0x63,
  1148  	0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
  1149  }
  1150  
  1151  var (
  1152  	file_ligato_vpp_ipsec_ipsec_proto_rawDescOnce sync.Once
  1153  	file_ligato_vpp_ipsec_ipsec_proto_rawDescData = file_ligato_vpp_ipsec_ipsec_proto_rawDesc
  1154  )
  1155  
  1156  func file_ligato_vpp_ipsec_ipsec_proto_rawDescGZIP() []byte {
  1157  	file_ligato_vpp_ipsec_ipsec_proto_rawDescOnce.Do(func() {
  1158  		file_ligato_vpp_ipsec_ipsec_proto_rawDescData = protoimpl.X.CompressGZIP(file_ligato_vpp_ipsec_ipsec_proto_rawDescData)
  1159  	})
  1160  	return file_ligato_vpp_ipsec_ipsec_proto_rawDescData
  1161  }
  1162  
  1163  var file_ligato_vpp_ipsec_ipsec_proto_enumTypes = make([]protoimpl.EnumInfo, 5)
  1164  var file_ligato_vpp_ipsec_ipsec_proto_msgTypes = make([]protoimpl.MessageInfo, 6)
  1165  var file_ligato_vpp_ipsec_ipsec_proto_goTypes = []interface{}{
  1166  	(CryptoAlg)(0), // 0: ligato.vpp.ipsec.CryptoAlg
  1167  	(IntegAlg)(0),  // 1: ligato.vpp.ipsec.IntegAlg
  1168  	(SecurityPolicyDatabase_PolicyEntry_Action)(0), // 2: ligato.vpp.ipsec.SecurityPolicyDatabase.PolicyEntry.Action
  1169  	(SecurityPolicy_Action)(0),                     // 3: ligato.vpp.ipsec.SecurityPolicy.Action
  1170  	(SecurityAssociation_IPSecProtocol)(0),         // 4: ligato.vpp.ipsec.SecurityAssociation.IPSecProtocol
  1171  	(*SecurityPolicyDatabase)(nil),                 // 5: ligato.vpp.ipsec.SecurityPolicyDatabase
  1172  	(*SecurityPolicy)(nil),                         // 6: ligato.vpp.ipsec.SecurityPolicy
  1173  	(*SecurityAssociation)(nil),                    // 7: ligato.vpp.ipsec.SecurityAssociation
  1174  	(*TunnelProtection)(nil),                       // 8: ligato.vpp.ipsec.TunnelProtection
  1175  	(*SecurityPolicyDatabase_Interface)(nil),       // 9: ligato.vpp.ipsec.SecurityPolicyDatabase.Interface
  1176  	(*SecurityPolicyDatabase_PolicyEntry)(nil),     // 10: ligato.vpp.ipsec.SecurityPolicyDatabase.PolicyEntry
  1177  }
  1178  var file_ligato_vpp_ipsec_ipsec_proto_depIdxs = []int32{
  1179  	9,  // 0: ligato.vpp.ipsec.SecurityPolicyDatabase.interfaces:type_name -> ligato.vpp.ipsec.SecurityPolicyDatabase.Interface
  1180  	10, // 1: ligato.vpp.ipsec.SecurityPolicyDatabase.policy_entries:type_name -> ligato.vpp.ipsec.SecurityPolicyDatabase.PolicyEntry
  1181  	3,  // 2: ligato.vpp.ipsec.SecurityPolicy.action:type_name -> ligato.vpp.ipsec.SecurityPolicy.Action
  1182  	4,  // 3: ligato.vpp.ipsec.SecurityAssociation.protocol:type_name -> ligato.vpp.ipsec.SecurityAssociation.IPSecProtocol
  1183  	0,  // 4: ligato.vpp.ipsec.SecurityAssociation.crypto_alg:type_name -> ligato.vpp.ipsec.CryptoAlg
  1184  	1,  // 5: ligato.vpp.ipsec.SecurityAssociation.integ_alg:type_name -> ligato.vpp.ipsec.IntegAlg
  1185  	2,  // 6: ligato.vpp.ipsec.SecurityPolicyDatabase.PolicyEntry.action:type_name -> ligato.vpp.ipsec.SecurityPolicyDatabase.PolicyEntry.Action
  1186  	7,  // [7:7] is the sub-list for method output_type
  1187  	7,  // [7:7] is the sub-list for method input_type
  1188  	7,  // [7:7] is the sub-list for extension type_name
  1189  	7,  // [7:7] is the sub-list for extension extendee
  1190  	0,  // [0:7] is the sub-list for field type_name
  1191  }
  1192  
  1193  func init() { file_ligato_vpp_ipsec_ipsec_proto_init() }
  1194  func file_ligato_vpp_ipsec_ipsec_proto_init() {
  1195  	if File_ligato_vpp_ipsec_ipsec_proto != nil {
  1196  		return
  1197  	}
  1198  	if !protoimpl.UnsafeEnabled {
  1199  		file_ligato_vpp_ipsec_ipsec_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  1200  			switch v := v.(*SecurityPolicyDatabase); i {
  1201  			case 0:
  1202  				return &v.state
  1203  			case 1:
  1204  				return &v.sizeCache
  1205  			case 2:
  1206  				return &v.unknownFields
  1207  			default:
  1208  				return nil
  1209  			}
  1210  		}
  1211  		file_ligato_vpp_ipsec_ipsec_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  1212  			switch v := v.(*SecurityPolicy); i {
  1213  			case 0:
  1214  				return &v.state
  1215  			case 1:
  1216  				return &v.sizeCache
  1217  			case 2:
  1218  				return &v.unknownFields
  1219  			default:
  1220  				return nil
  1221  			}
  1222  		}
  1223  		file_ligato_vpp_ipsec_ipsec_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  1224  			switch v := v.(*SecurityAssociation); i {
  1225  			case 0:
  1226  				return &v.state
  1227  			case 1:
  1228  				return &v.sizeCache
  1229  			case 2:
  1230  				return &v.unknownFields
  1231  			default:
  1232  				return nil
  1233  			}
  1234  		}
  1235  		file_ligato_vpp_ipsec_ipsec_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  1236  			switch v := v.(*TunnelProtection); i {
  1237  			case 0:
  1238  				return &v.state
  1239  			case 1:
  1240  				return &v.sizeCache
  1241  			case 2:
  1242  				return &v.unknownFields
  1243  			default:
  1244  				return nil
  1245  			}
  1246  		}
  1247  		file_ligato_vpp_ipsec_ipsec_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  1248  			switch v := v.(*SecurityPolicyDatabase_Interface); i {
  1249  			case 0:
  1250  				return &v.state
  1251  			case 1:
  1252  				return &v.sizeCache
  1253  			case 2:
  1254  				return &v.unknownFields
  1255  			default:
  1256  				return nil
  1257  			}
  1258  		}
  1259  		file_ligato_vpp_ipsec_ipsec_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  1260  			switch v := v.(*SecurityPolicyDatabase_PolicyEntry); i {
  1261  			case 0:
  1262  				return &v.state
  1263  			case 1:
  1264  				return &v.sizeCache
  1265  			case 2:
  1266  				return &v.unknownFields
  1267  			default:
  1268  				return nil
  1269  			}
  1270  		}
  1271  	}
  1272  	type x struct{}
  1273  	out := protoimpl.TypeBuilder{
  1274  		File: protoimpl.DescBuilder{
  1275  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1276  			RawDescriptor: file_ligato_vpp_ipsec_ipsec_proto_rawDesc,
  1277  			NumEnums:      5,
  1278  			NumMessages:   6,
  1279  			NumExtensions: 0,
  1280  			NumServices:   0,
  1281  		},
  1282  		GoTypes:           file_ligato_vpp_ipsec_ipsec_proto_goTypes,
  1283  		DependencyIndexes: file_ligato_vpp_ipsec_ipsec_proto_depIdxs,
  1284  		EnumInfos:         file_ligato_vpp_ipsec_ipsec_proto_enumTypes,
  1285  		MessageInfos:      file_ligato_vpp_ipsec_ipsec_proto_msgTypes,
  1286  	}.Build()
  1287  	File_ligato_vpp_ipsec_ipsec_proto = out.File
  1288  	file_ligato_vpp_ipsec_ipsec_proto_rawDesc = nil
  1289  	file_ligato_vpp_ipsec_ipsec_proto_goTypes = nil
  1290  	file_ligato_vpp_ipsec_ipsec_proto_depIdxs = nil
  1291  }