Documentation ¶
Index ¶
- Variables
- type AddressObject
- type Client
- type CreateExtendedACLACEOptions
- type ErrorMessage
- type ErrorResponse
- type ExtendedACEObject
- type ExtendedACEObjectCollection
- type ExtendedACLObject
- type ExtendedACLObjectCollection
- type IPAddress
- type IPv6Info
- type NetworkObject
- type NetworkObjectCollection
- type NetworkObjectGroup
- type NetworkObjectGroupCollection
- type NetworkService
- type NetworkServiceCollection
- type NetworkServiceGroup
- type NetworkServiceGroupCollection
- type PhysicalInterface
- type PhysicalInterfaceCollection
- type RangeInfo
- type RoutingObject
- type RoutingObjectCollection
- type RuleLogging
- type ServiceObject
- type UpdateExtendedACLACEOptions
- type VlanInterface
- type VlanInterfaceCollection
Constants ¶
This section is empty.
Variables ¶
var ( ErrInternalServer = errors.New("ciscoasa: Internal Server error") ErrUnknown = errors.New("ciscoasa: Unknown error") )
Predefine standard errors
Functions ¶
This section is empty.
Types ¶
type AddressObject ¶
type AddressObject struct { Value string `json:"value,omitempty"` Kind string `json:"kind"` ObjectID string `json:"objectId,omitempty"` Reflink string `json:"refLink,omitempty"` }
AddressObject represents an address object.
func (*AddressObject) String ¶
func (o *AddressObject) String() string
String returns the objects address
type Client ¶
type Client struct { Access *accessService Interfaces *interfaceService Objects *objectsService Routing *routingService // contains filtered or unexported fields }
Client represents a Cisco ASA client
type CreateExtendedACLACEOptions ¶ added in v0.2.0
type ErrorMessage ¶
type ErrorMessage struct { Level string `json:"level"` Code string `json:"code"` Context string `json:"context,omitempty"` Details string `json:"details"` }
ErrorMessage represents a single API error
type ErrorResponse ¶
type ErrorResponse struct {
Messages []*ErrorMessage `json:"messages"`
}
ErrorResponse represents an error response
func (*ErrorResponse) Error ¶
func (e *ErrorResponse) Error() string
type ExtendedACEObject ¶
type ExtendedACEObject struct { SrcAddress *AddressObject `json:"sourceAddress,omitempty"` SrcService *ServiceObject `json:"sourceService,omitempty"` DstAddress *AddressObject `json:"destinationAddress,omitempty"` DstService *ServiceObject `json:"destinationService,omitempty"` RuleLogging *RuleLogging `json:"ruleLogging,omitempty"` Position int `json:"position,omitempty"` Permit bool `json:"permit,omitempty"` Active bool `json:"active"` IsAccessRule bool `json:"isAccessRule"` Remarks []string `json:"remarks,omitempty"` Kind string `json:"kind,omitempty"` ObjectID string `json:"objectId,omitempty"` SelfLink string `json:"selfLink,omitempty"` }
ExtendedACEObject represents an access control element object
type ExtendedACEObjectCollection ¶
type ExtendedACEObjectCollection struct { RangeInfo RangeInfo `json:"rangeInfo"` Items []*ExtendedACEObject `json:"items"` Kind string `json:"kind"` SelfLink string `json:"selfLink"` }
ExtendedACEObjectCollection represents a collection of access control element objects.
type ExtendedACLObject ¶
type ExtendedACLObject struct { Name string `json:"name,omitempty"` Kind string `json:"kind,omitempty"` ObjectID string `json:"objectId,omitempty"` SelfLink string `json:"selfLink,omitempty"` }
ExtendedACLObject represents an access control list object.
type ExtendedACLObjectCollection ¶
type ExtendedACLObjectCollection struct { RangeInfo RangeInfo `json:"rangeInfo"` Items []*ExtendedACLObject `json:"items"` Kind string `json:"kind"` SelfLink string `json:"selfLink"` }
ExtendedACLObjectCollection represents a collection of access control list objects.
type IPAddress ¶
type IPAddress struct { IP struct { Kind string `json:"kind"` Value string `json:"value"` } `json:"ip"` NetMask struct { Kind string `json:"kind"` Value string `json:"value"` } `json:"netMask"` Kind string `json:"kind"` }
IPAddress represents an IPv4 address.
func (*IPAddress) UnmarshalJSON ¶
UnmarshalJSON implements json.Unmarshaler interface.
type IPv6Info ¶
type IPv6Info struct { Enabled bool `json:"enabled"` AutoConfig bool `json:"autoConfig"` EnforceEUI64 bool `json:"enforceEUI64"` ManagedAddressConfig bool `json:"managedAddressConfig"` NsInterval int `json:"nsInterval"` DadAttempts int `json:"dadAttempts"` NDiscoveryPrefixList []string `json:"nDiscoveryPrefixList"` OtherStatefulConfig bool `json:"otherStatefulConfig"` RouterAdvertInterval int `json:"routerAdvertInterval"` RouterAdvertIntervalUnit string `json:"routerAdvertIntervalUnit"` RouterAdvertLifetime int `json:"routerAdvertLifetime"` SuppressRouterAdvert bool `json:"suppressRouterAdvert"` ReachableTime int `json:"reachableTime"` Ipv6Addresses []string `json:"ipv6Addresses"` Kind string `json:"kind"` }
IPv6Info represents an IPv6 address.
func (*IPv6Info) UnmarshalJSON ¶
UnmarshalJSON implements json.Unmarshaler interface.
type NetworkObject ¶
type NetworkObject struct { Name string `json:"name"` Description string `json:"description,omitempty"` Host struct { Kind string `json:"kind"` Value string `json:"value"` } `json:"host"` Kind string `json:"kind"` ObjectID string `json:"objectId,omitempty"` SelfLink string `json:"selfLink,omitempty"` }
NetworkObject represents a network object.
type NetworkObjectCollection ¶
type NetworkObjectCollection struct { RangeInfo RangeInfo `json:"rangeInfo"` Items []*NetworkObject `json:"items"` Kind string `json:"kind"` SelfLink string `json:"selfLink"` }
NetworkObjectCollection represents a collection of network objects.
type NetworkObjectGroup ¶
type NetworkObjectGroup struct { Name string `json:"name"` Description string `json:"description,omitempty"` Members []*AddressObject `json:"members"` Kind string `json:"kind"` ObjectID string `json:"objectId,omitempty"` SelfLink string `json:"selfLink,omitempty"` }
NetworkObjectGroup represents a network object group.
type NetworkObjectGroupCollection ¶
type NetworkObjectGroupCollection struct { RangeInfo RangeInfo `json:"rangeInfo"` Items []*NetworkObjectGroup `json:"items"` Kind string `json:"kind"` SelfLink string `json:"selfLink"` }
NetworkObjectGroupCollection represents a collection of network object groups.
type NetworkService ¶
type NetworkService struct { Name string `json:"name"` Description string `json:"description,omitempty"` Value string `json:"value"` Kind string `json:"kind"` ObjectID string `json:"objectId,omitempty"` SelfLink string `json:"selfLink,omitempty"` }
NetworkService represents a network service.
type NetworkServiceCollection ¶
type NetworkServiceCollection struct { RangeInfo RangeInfo `json:"rangeInfo"` Items []*NetworkService `json:"items"` Kind string `json:"kind"` SelfLink string `json:"selfLink"` }
NetworkServiceCollection represents a collection of network services.
type NetworkServiceGroup ¶
type NetworkServiceGroup struct { Name string `json:"name"` Description string `json:"description,omitempty"` Members []*ServiceObject `json:"members"` Kind string `json:"kind"` ObjectID string `json:"objectId,omitempty"` SelfLink string `json:"selfLink,omitempty"` }
NetworkServiceGroup represents a network service group.
type NetworkServiceGroupCollection ¶
type NetworkServiceGroupCollection struct { RangeInfo RangeInfo `json:"rangeInfo"` Items []*NetworkServiceGroup `json:"items"` Kind string `json:"kind"` SelfLink string `json:"selfLink"` }
NetworkServiceGroupCollection represents a collection of network service groups.
type PhysicalInterface ¶
type PhysicalInterface struct { HardwareID string `json:"hardwareID"` InterfaceDesc string `json:"interfaceDesc"` ChannelGroupID string `json:"channelGroupID"` ChannelGroupMode string `json:"channelGroupMode"` Duplex string `json:"duplex"` FlowcontrolOn bool `json:"flowcontrolOn"` FlowcontrolHigh int `json:"flowcontrolHigh"` FlowcontrolLow int `json:"flowcontrolLow"` FlowcontrolPeriod int `json:"flowcontrolPeriod"` ForwardTrafficCX bool `json:"forwardTrafficCX"` ForwardTrafficSFR bool `json:"forwardTrafficSFR"` LacpPriority int `json:"lacpPriority"` ActiveMacAddress string `json:"activeMacAddress"` StandByMacAddress string `json:"standByMacAddress"` ManagementOnly bool `json:"managementOnly"` Mtu int `json:"mtu"` Name string `json:"name"` SecurityLevel int `json:"securityLevel"` Shutdown bool `json:"shutdown"` Speed string `json:"speed"` IPAddress *IPAddress `json:"ipAddress"` Ipv6Info *IPv6Info `json:"ipv6Info"` Kind string `json:"kind"` ObjectID string `json:"objectId"` SelfLink string `json:"selfLink"` }
PhysicalInterface represents an interface.
type PhysicalInterfaceCollection ¶
type PhysicalInterfaceCollection struct { RangeInfo RangeInfo `json:"rangeInfo"` Items []*PhysicalInterface `json:"items"` Kind string `json:"kind"` SelfLink string `json:"selfLink"` }
PhysicalInterfaceCollection represents a collection of physical interfaces.
type RangeInfo ¶
type RangeInfo struct { Offset int `json:"offset"` Limit int `json:"limit"` Total int `json:"total"` }
RangeInfo common data type amongst object types
type RoutingObject ¶
type RoutingObject struct { DistanceMetric int `json:"distanceMetric"` Gateway *AddressObject `json:"gateway"` Interface struct { Name string `json:"name"` Kind string `json:"kind"` ObjectID string `json:"objectId,omitempty"` } `json:"interface"` Network *AddressObject `json:"network"` Tracked bool `json:"tracked,omitempty"` Tunneled bool `json:"tunneled,omitempty"` Kind string `json:"kind"` ObjectID string `json:"objectId,omitempty"` SelfLink string `json:"selfLink,omitempty"` }
RoutingObject represents a routing object.
type RoutingObjectCollection ¶
type RoutingObjectCollection struct { RangeInfo RangeInfo `json:"rangeInfo"` Items []*RoutingObject `json:"items"` Kind string `json:"kind"` SelfLink string `json:"selfLink"` }
RoutingObjectCollection represents a collection of routing objects.
type RuleLogging ¶
type RuleLogging struct { LogStatus string `json:"logStatus,omitempty"` LogInterval int `json:"logInterval,omitempty"` }
RuleLogging represents the rule logging settings
type ServiceObject ¶
type ServiceObject struct { Value string `json:"value,omitempty"` Kind string `json:"kind"` ObjectID string `json:"objectId,omitempty"` Reflink string `json:"refLink,omitempty"` }
ServiceObject represents an service object.
func (*ServiceObject) String ¶
func (o *ServiceObject) String() string
String returns the numerical description of the service.
type UpdateExtendedACLACEOptions ¶ added in v0.2.0
type VlanInterface ¶
type VlanInterface struct { HardwareID string `json:"hardwareID"` InterfaceDesc string `json:"interfaceDesc"` ForwardTrafficCX bool `json:"forwardTrafficCX"` ForwardTrafficSFR bool `json:"forwardTrafficSFR"` ActiveMacAddress string `json:"activeMacAddress"` StandByMacAddress string `json:"standByMacAddress"` ManagementOnly bool `json:"managementOnly"` Mtu int `json:"mtu"` Name string `json:"name"` SecurityLevel int `json:"securityLevel"` Shutdown bool `json:"shutdown"` VlanID int `json:"vlanID"` IPAddress *IPAddress `json:"ipAddress"` Ipv6Info *IPv6Info `json:"ipv6Info"` Kind string `json:"kind"` ObjectID string `json:"objectId"` SelfLink string `json:"selfLink"` }
VlanInterface represents an vlan interface.
type VlanInterfaceCollection ¶
type VlanInterfaceCollection struct { RangeInfo RangeInfo `json:"rangeInfo"` Items []*VlanInterface `json:"items"` Kind string `json:"kind"` SelfLink string `json:"selfLink"` }
VlanInterfaceCollection represents a collection of vlan interfaces.