OpenNSL API Guide and Reference Manual
|
Go to the source code of this file.
Macros | |
#define | OPENNSL_MULTICAST_EGRESS_GROUP 0x00000008 |
#define | OPENNSL_MULTICAST_INGRESS_GROUP 0x00000004 |
#define | OPENNSL_MULTICAST_TYPE_L2 0x00010000 |
#define | OPENNSL_MULTICAST_TYPE_L3 0x00020000 |
#define | OPENNSL_MULTICAST_TYPE_MASK 0xffff0000 |
#define | OPENNSL_MULTICAST_TYPE_PORTS_GROUP 0x40000000 |
#define | OPENNSL_MULTICAST_TYPE_VLAN 0x00400000 |
#define | OPENNSL_MULTICAST_TYPE_VXLAN 0x08000000 |
#define | OPENNSL_MULTICAST_WITH_ID 0x00000001 |
Typedefs | |
typedef enum opennsl_multicast_control_e | opennsl_multicast_control_t |
Multicast group controls. | |
typedef int(* | opennsl_multicast_group_traverse_cb_t )(int unit, opennsl_multicast_t group, uint32 flags, void *user_data) |
Enumerations | |
enum | opennsl_multicast_control_e { opennslMulticastControlMtu = 0, opennslMulticastVpTrunkResolve = 1, opennslMulticastRemapGroup = 2, opennslMulticastControlCount = 3 } |
Multicast group controls. More... | |
Functions | |
int | opennsl_multicast_create (int unit, uint32 flags, opennsl_multicast_t *group) LIB_DLL_EXPORTED |
Create a multicast group for packet replication. | |
int | opennsl_multicast_destroy (int unit, opennsl_multicast_t group) LIB_DLL_EXPORTED |
Destroy a multicast group. | |
int | opennsl_multicast_egress_add (int unit, opennsl_multicast_t group, opennsl_gport_t port, opennsl_if_t encap_id) LIB_DLL_EXPORTED |
Add an encapsulated interface to a multicast group's replication list on a specific port. | |
int | opennsl_multicast_egress_delete (int unit, opennsl_multicast_t group, opennsl_gport_t port, opennsl_if_t encap_id) LIB_DLL_EXPORTED |
Delete a port from a multicast group's replication list. | |
int | opennsl_multicast_egress_delete_all (int unit, opennsl_multicast_t group) LIB_DLL_EXPORTED |
Delete all replications for the specified multicast index. | |
int | opennsl_multicast_egress_get (int unit, opennsl_multicast_t group, int port_max, opennsl_gport_t *port_array, opennsl_if_t *encap_id_array, int *port_count) LIB_DLL_EXPORTED |
Get the set of encapsulated interfaces on specific ports which comprises a multicast group's replication list. | |
int | opennsl_multicast_egress_object_encap_get (int unit, opennsl_multicast_t group, opennsl_if_t intf, opennsl_if_t *encap_id) LIB_DLL_EXPORTED |
Get the multicast encapsulation ID for egress_object type replication. | |
int | opennsl_multicast_egress_set (int unit, opennsl_multicast_t group, int port_count, opennsl_gport_t *port_array, opennsl_if_t *encap_id_array) LIB_DLL_EXPORTED |
Assign a set of encapsulated interfaces on specific ports as a multicast group's replication list. | |
int | opennsl_multicast_group_free_range_get (int unit, uint32 type_flag, opennsl_multicast_t *group_min, opennsl_multicast_t *group_max) LIB_DLL_EXPORTED |
Retrieve the minimum and maximum unallocated multicast groups for a given multicast type. | |
int | opennsl_multicast_group_get (int unit, opennsl_multicast_t group, uint32 *flags) LIB_DLL_EXPORTED |
Retrieve the flags associated with a multicast group. | |
int | opennsl_multicast_group_is_free (int unit, opennsl_multicast_t group) LIB_DLL_EXPORTED |
Request if the given multicast group is available on the device. | |
int | opennsl_multicast_group_traverse (int unit, opennsl_multicast_group_traverse_cb_t trav_fn, uint32 flags, void *user_data) LIB_DLL_EXPORTED |
Iterate over the defined multicast groups of the type specified in 'flags'. | |
int | opennsl_multicast_ingress_add (int unit, opennsl_multicast_t group, opennsl_gport_t port, opennsl_if_t encap_id) LIB_DLL_EXPORTED |
Add a port to a Ingress Multicast group's replication list. | |
int | opennsl_multicast_ingress_delete (int unit, opennsl_multicast_t group, opennsl_gport_t port, opennsl_if_t encap_id) LIB_DLL_EXPORTED |
Delete a port from Ingress Multicast group's replication list. | |
int | opennsl_multicast_ingress_delete_all (int unit, opennsl_multicast_t group) LIB_DLL_EXPORTED |
opennsl_multicast_egress_delete_all. | |
int | opennsl_multicast_ingress_get (int unit, opennsl_multicast_t group, int port_max, opennsl_gport_t *port_array, opennsl_if_t *encap_id_array, int *port_count) LIB_DLL_EXPORTED |
opennsl_multicast_ingress_get. | |
int | opennsl_multicast_ingress_set (int unit, opennsl_multicast_t group, int port_count, opennsl_gport_t *port_array, opennsl_if_t *encap_id_array) LIB_DLL_EXPORTED |
Add a set of ports to a Ingress multicast group's replication list. | |
int | opennsl_multicast_init (int unit) LIB_DLL_EXPORTED |
Initialize the multicast module. | |
int | opennsl_multicast_l2_encap_get (int unit, opennsl_multicast_t group, opennsl_gport_t port, opennsl_vlan_t vlan, opennsl_if_t *encap_id) LIB_DLL_EXPORTED |
Get the multicast encapsulation ID for L2 replication. | |
int | opennsl_multicast_l3_encap_get (int unit, opennsl_multicast_t group, opennsl_gport_t port, opennsl_if_t intf, opennsl_if_t *encap_id) LIB_DLL_EXPORTED |
Get the multicast encapsulation ID for L3 replication. | |
int | opennsl_multicast_vlan_encap_get (int unit, opennsl_multicast_t group, opennsl_gport_t port, opennsl_gport_t vlan_port_id, opennsl_if_t *encap_id) LIB_DLL_EXPORTED |
Get the multicast encapsulation ID for layer 2 logical port replication. | |