ROFL-hal  v0.6.0dev
Functions
of1x_driver.h File Reference

HAL driver OpenFlow specific management interface. More...

#include <inttypes.h>
#include <rofl/datapath/pipeline/openflow/openflow1x/of1x_switch.h>
#include <rofl/datapath/pipeline/openflow/openflow1x/pipeline/of1x_flow_entry.h>
#include <rofl/datapath/pipeline/openflow/openflow1x/pipeline/of1x_action.h>
#include "../../hal.h"
#include "../../hal_utils.h"

Go to the source code of this file.

Functions

HAL_BEGIN_DECLS hal_result_t hal_driver_of1x_set_port_drop_received_config (uint64_t dpid, unsigned int port_num, bool drop_received)
 Instructs driver to modify port config state. More...
 
hal_result_t hal_driver_of1x_set_port_no_flood_config (uint64_t dpid, unsigned int port_num, bool no_flood)
 Instructs driver to modify port config state. More...
 
hal_result_t hal_driver_of1x_set_port_forward_config (uint64_t dpid, unsigned int port_num, bool forward)
 Instructs driver to modify port config state. More...
 
hal_result_t hal_driver_of1x_set_port_generate_packet_in_config (uint64_t dpid, unsigned int port_num, bool generate_packet_in)
 Instructs driver to modify port config state. More...
 
hal_result_t hal_driver_of1x_set_port_advertise_config (uint64_t dpid, unsigned int port_num, uint32_t advertise)
 Instructs driver to modify port advertise flags. More...
 
hal_result_t hal_driver_of1x_set_pipeline_config (uint64_t dpid, unsigned int flags, uint16_t miss_send_len)
 Instructs driver to process a PACKET_OUT event. More...
 
hal_result_t hal_driver_of1x_set_table_config (uint64_t dpid, unsigned int table_id, of1x_flow_table_miss_config_t config)
 Instructs driver to set table configuration(default action) More...
 
hal_result_t hal_driver_of1x_process_packet_out (uint64_t dpid, uint32_t buffer_id, uint32_t in_port, of1x_action_group_t *action_group, uint8_t *buffer, uint32_t buffer_size)
 Instructs driver to process a PACKET_OUT event. More...
 
hal_result_t hal_driver_of1x_process_flow_mod_add (uint64_t dpid, uint8_t table_id, of1x_flow_entry_t **flow_entry, uint32_t buffer_id, bool check_overlap, bool reset_counts)
 Instructs driver to process a FLOW_MOD add eventThis method will add a flow_entry to the table of the switch referenced by the dpid. More...
 
hal_result_t hal_driver_of1x_process_flow_mod_modify (uint64_t dpid, uint8_t table_id, of1x_flow_entry_t **flow_entry, uint32_t buffer_id, of1x_flow_removal_strictness_t strictness, bool reset_counts)
 Instructs driver to process a FLOW_MOD modify eventThe modify flow entry will modify any exisiting entry in the table that contains the same matches as the parameter entry. More...
 
hal_result_t hal_driver_of1x_process_flow_mod_delete (uint64_t dpid, uint8_t table_id, of1x_flow_entry_t *flow_entry, uint32_t out_port, uint32_t out_group, of1x_flow_removal_strictness_t strictness)
 Instructs driver to process a FLOW_MOD eventThe remove flow entry will remove and destroy any exisiting entry in the table that contains the same matches as the parameter entry. More...
 
of1x_stats_flow_msg_t * hal_driver_of1x_get_flow_stats (uint64_t dpid, uint8_t table_id, uint32_t cookie, uint32_t cookie_mask, uint32_t out_port, uint32_t out_group, of1x_match_group_t *const matches)
 Recovers the flow stats given a set of matches. More...
 
of1x_stats_flow_aggregate_msg_t * hal_driver_of1x_get_flow_aggregate_stats (uint64_t dpid, uint8_t table_id, uint32_t cookie, uint32_t cookie_mask, uint32_t out_port, uint32_t out_group, of1x_match_group_t *const matches)
 Recovers the aggregated flow stats given a set of matches. More...
 
rofl_of1x_gm_result_t hal_driver_of1x_group_mod_add (uint64_t dpid, of1x_group_type_t type, uint32_t id, of1x_bucket_list_t **buckets)
 Instructs driver to add a new GROUP. More...
 
rofl_of1x_gm_result_t hal_driver_of1x_group_mod_modify (uint64_t dpid, of1x_group_type_t type, uint32_t id, of1x_bucket_list_t **buckets)
 Instructs driver to modify the GROUP with identification ID. More...
 
rofl_of1x_gm_result_t hal_driver_of1x_group_mod_delete (uint64_t dpid, uint32_t id)
 Instructs driver to delete the GROUP with identification ID. More...
 
of1x_stats_group_desc_msg_t * hal_driver_of1x_get_group_desc_stats (uint64_t dpid)
 Retrieves a copy of the group and bucket structure. More...
 
of1x_stats_group_msg_t * hal_driver_of1x_get_group_stats (uint64_t dpid, uint32_t id)
 Instructs driver to fetch the GROUP statistics. More...
 

Detailed Description

HAL driver OpenFlow specific management interface.

Author
Marc Sune<marc.sune (at) bisdn.de>

Definition in file of1x_driver.h.

Function Documentation

of1x_stats_group_desc_msg_t* hal_driver_of1x_get_group_desc_stats ( uint64_t  dpid)

Retrieves a copy of the group and bucket structure.

Returns
of1x_stats_group_desc_msg_t instance that must be destroyed using of1x_destroy_group_desc_stats()