Documentation
¶
Index ¶
- type IPSecSaDetails
- type IPSecSaMeta
- type IPSecSpdDetails
- type IPSecVPPRead
- type IPSecVppAPI
- type IPSecVppHandler
- func (h *IPSecVppHandler) AddSA(sa *ipsec.SecurityAssociation) error
- func (h *IPSecVppHandler) AddSPD(spdID uint32) error
- func (h *IPSecVppHandler) AddSPDEntry(spdID, saID uint32, spd *ipsec.SecurityPolicyDatabase_PolicyEntry) error
- func (h *IPSecVppHandler) AddSPDInterface(spdID uint32, ifaceCfg *ipsec.SecurityPolicyDatabase_Interface) error
- func (h *IPSecVppHandler) DeleteSA(sa *ipsec.SecurityAssociation) error
- func (h *IPSecVppHandler) DeleteSPD(spdID uint32) error
- func (h *IPSecVppHandler) DeleteSPDEntry(spdID, saID uint32, spd *ipsec.SecurityPolicyDatabase_PolicyEntry) error
- func (h *IPSecVppHandler) DeleteSPDInterface(spdID uint32, ifaceCfg *ipsec.SecurityPolicyDatabase_Interface) error
- func (h *IPSecVppHandler) DumpIPSecSA() (saList []*IPSecSaDetails, err error)
- func (h *IPSecVppHandler) DumpIPSecSAWithIndex(saID uint32) (saList []*IPSecSaDetails, err error)
- func (h *IPSecVppHandler) DumpIPSecSPD() (spdList []*IPSecSpdDetails, err error)
- type IPSecVppWrite
- type SpdMeta
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type IPSecSaDetails ¶ added in v1.8.1
type IPSecSaDetails struct {
Sa *ipsec.SecurityAssociation
Meta *IPSecSaMeta
}
IPSecSaDetails holds security association with VPP metadata
type IPSecSaMeta ¶ added in v1.8.1
type IPSecSaMeta struct {
SaID uint32
Interface string
IfIdx uint32
CryptoKeyLen uint8
IntegKeyLen uint8
Salt uint32
SeqOutbound uint64
LastSeqInbound uint64
ReplayWindow uint64
TotalDataSize uint64
}
IPSecSaMeta contains all VPP-specific metadata
type IPSecSpdDetails ¶ added in v1.8.1
type IPSecSpdDetails struct {
Spd *ipsec.SecurityPolicyDatabase
PolicyMeta map[string]*SpdMeta // SA index name is a key
NumPolicies uint32
}
IPSecSpdDetails represents IPSec policy databases with particular metadata
type IPSecVPPRead ¶ added in v1.8.1
type IPSecVPPRead interface {
// DumpIPSecSPD returns a list of IPSec security policy databases
DumpIPSecSPD() (spdList []*IPSecSpdDetails, err error)
// DumpIPSecSA returns a list of configured security associations
DumpIPSecSA() (saList []*IPSecSaDetails, err error)
// DumpIPSecSAWithIndex returns a security association with provided index
DumpIPSecSAWithIndex(saID uint32) (saList []*IPSecSaDetails, err error)
}
IPSecVPPRead provides read methods for IPSec
type IPSecVppAPI ¶ added in v1.8.1
type IPSecVppAPI interface {
IPSecVppWrite
IPSecVPPRead
}
IPSecVppAPI provides methods for creating and managing of a IPsec configuration
type IPSecVppHandler ¶ added in v1.8.1
type IPSecVppHandler struct {
// contains filtered or unexported fields
}
IPSecVppHandler is accessor for IPSec-related vppcalls methods
func NewIPsecVppHandler ¶ added in v1.8.1
func NewIPsecVppHandler(callsChan govppapi.Channel, ifIndexes ifaceidx.IfaceMetadataIndex, log logging.Logger) *IPSecVppHandler
NewIPsecVppHandler creates new instance of IPSec vppcalls handler
func (*IPSecVppHandler) AddSA ¶
func (h *IPSecVppHandler) AddSA(sa *ipsec.SecurityAssociation) error
AddSA implements IPSec handler.
func (*IPSecVppHandler) AddSPD ¶ added in v1.8.1
func (h *IPSecVppHandler) AddSPD(spdID uint32) error
AddSPD implements IPSec handler.
func (*IPSecVppHandler) AddSPDEntry ¶ added in v1.8.1
func (h *IPSecVppHandler) AddSPDEntry(spdID, saID uint32, spd *ipsec.SecurityPolicyDatabase_PolicyEntry) error
AddSPDEntry implements IPSec handler.
func (*IPSecVppHandler) AddSPDInterface ¶
func (h *IPSecVppHandler) AddSPDInterface(spdID uint32, ifaceCfg *ipsec.SecurityPolicyDatabase_Interface) error
AddSPDInterface implements IPSec handler.
func (*IPSecVppHandler) DeleteSA ¶
func (h *IPSecVppHandler) DeleteSA(sa *ipsec.SecurityAssociation) error
DeleteSA implements IPSec handler.
func (*IPSecVppHandler) DeleteSPD ¶
func (h *IPSecVppHandler) DeleteSPD(spdID uint32) error
DeleteSPD implements IPSec handler.
func (*IPSecVppHandler) DeleteSPDEntry ¶
func (h *IPSecVppHandler) DeleteSPDEntry(spdID, saID uint32, spd *ipsec.SecurityPolicyDatabase_PolicyEntry) error
DeleteSPDEntry implements IPSec handler.
func (*IPSecVppHandler) DeleteSPDInterface ¶
func (h *IPSecVppHandler) DeleteSPDInterface(spdID uint32, ifaceCfg *ipsec.SecurityPolicyDatabase_Interface) error
DeleteSPDInterface implements IPSec handler.
func (*IPSecVppHandler) DumpIPSecSA ¶ added in v1.8.1
func (h *IPSecVppHandler) DumpIPSecSA() (saList []*IPSecSaDetails, err error)
DumpIPSecSA implements IPSec handler.
func (*IPSecVppHandler) DumpIPSecSAWithIndex ¶ added in v1.8.1
func (h *IPSecVppHandler) DumpIPSecSAWithIndex(saID uint32) (saList []*IPSecSaDetails, err error)
DumpIPSecSAWithIndex implements IPSec handler.
func (*IPSecVppHandler) DumpIPSecSPD ¶ added in v1.8.1
func (h *IPSecVppHandler) DumpIPSecSPD() (spdList []*IPSecSpdDetails, err error)
DumpIPSecSPD implements IPSec handler.
type IPSecVppWrite ¶ added in v1.8.1
type IPSecVppWrite interface {
// AddSPD adds SPD to VPP via binary API
AddSPD(spdID uint32) error
// DelSPD deletes SPD from VPP via binary API
DeleteSPD(spdID uint32) error
// InterfaceAddSPD adds SPD interface assignment to VPP via binary API
AddSPDInterface(spdID uint32, iface *ipsec.SecurityPolicyDatabase_Interface) error
// InterfaceDelSPD deletes SPD interface assignment from VPP via binary API
DeleteSPDInterface(spdID uint32, iface *ipsec.SecurityPolicyDatabase_Interface) error
// AddSPDEntry adds SPD policy entry to VPP via binary API
AddSPDEntry(spdID, saID uint32, spd *ipsec.SecurityPolicyDatabase_PolicyEntry) error
// DelSPDEntry deletes SPD policy entry from VPP via binary API
DeleteSPDEntry(spdID, saID uint32, spd *ipsec.SecurityPolicyDatabase_PolicyEntry) error
// AddSAEntry adds SA to VPP via binary API
AddSA(sa *ipsec.SecurityAssociation) error
// DelSAEntry deletes SA from VPP via binary API
DeleteSA(sa *ipsec.SecurityAssociation) error
}
IPSecVppWrite provides write methods for IPsec
Source Files
¶
- api_vppcalls.go
- dump_vppcalls.go
- ipsec_vppcalls.go