#define OFP_SUPPORTED_CAPABILITIES ( OFPC_FLOW_STATS \
| OFPC_TABLE_STATS \
| OFPC_PORT_STATS \
- | OFPC_STP \
| OFPC_MULTI_PHY_TX )
/* Actions supported by this implementation. */
};
extern struct mutex dp_mutex;
+extern struct notifier_block dp_device_notifier;
+int dp_del_switch_port(struct net_bridge_port *);
int dp_output_port(struct datapath *, struct sk_buff *, int out_port,
int ignore_no_fwd);
int dp_output_control(struct datapath *, struct sk_buff *, uint32_t,
int dp_set_origin(struct datapath *, uint16_t, struct sk_buff *);
int dp_send_features_reply(struct datapath *, const struct sender *);
int dp_send_config_reply(struct datapath *, const struct sender *);
+int dp_send_port_status(struct net_bridge_port *p, uint8_t status);
int dp_send_flow_expired(struct datapath *, struct sw_flow *,
enum ofp_flow_expired_reason);
int dp_send_error_msg(struct datapath *, const struct sender *,
int dp_update_port_flags(struct datapath *dp, const struct ofp_port_mod *opm);
int dp_send_echo_reply(struct datapath *, const struct sender *,
const struct ofp_header *);
+int dp_send_hello(struct datapath *, const struct sender *,
+ const struct ofp_header *);
/* Should hold at least RCU read lock when calling */
struct datapath *dp_get(int dp_idx);