Changeset View
Changeset View
Standalone View
Standalone View
sys/net80211/ieee80211_mesh.c
| Show First 20 Lines • Show All 77 Lines • ▼ Show 20 Lines | |||||
| static uint32_t mesh_generateid(struct ieee80211vap *); | static uint32_t mesh_generateid(struct ieee80211vap *); | ||||
| static int mesh_checkpseq(struct ieee80211vap *, | static int mesh_checkpseq(struct ieee80211vap *, | ||||
| const uint8_t [IEEE80211_ADDR_LEN], uint32_t); | const uint8_t [IEEE80211_ADDR_LEN], uint32_t); | ||||
| static void mesh_transmit_to_gate(struct ieee80211vap *, struct mbuf *, | static void mesh_transmit_to_gate(struct ieee80211vap *, struct mbuf *, | ||||
| struct ieee80211_mesh_route *); | struct ieee80211_mesh_route *); | ||||
| static void mesh_forward(struct ieee80211vap *, struct mbuf *, | static void mesh_forward(struct ieee80211vap *, struct mbuf *, | ||||
| const struct ieee80211_meshcntl *); | const struct ieee80211_meshcntl *); | ||||
| static int mesh_input(struct ieee80211_node *, struct mbuf *, | static int mesh_input(struct ieee80211_node *, struct mbuf *, | ||||
| const struct ieee80211_rx_stats *rxs, int, int); | const struct ieee80211_rx_stats *rxs, net80211_rssi_t, int); | ||||
| static void mesh_recv_mgmt(struct ieee80211_node *, struct mbuf *, int, | static void mesh_recv_mgmt(struct ieee80211_node *, struct mbuf *, int, | ||||
| const struct ieee80211_rx_stats *rxs, int, int); | const struct ieee80211_rx_stats *rxs, int, int); | ||||
| static void mesh_recv_ctl(struct ieee80211_node *, struct mbuf *, int); | static void mesh_recv_ctl(struct ieee80211_node *, struct mbuf *, int); | ||||
| static void mesh_peer_timeout_setup(struct ieee80211_node *); | static void mesh_peer_timeout_setup(struct ieee80211_node *); | ||||
| static void mesh_peer_timeout_backoff(struct ieee80211_node *); | static void mesh_peer_timeout_backoff(struct ieee80211_node *); | ||||
| static void mesh_peer_timeout_cb(void *); | static void mesh_peer_timeout_cb(void *); | ||||
| static __inline void | static __inline void | ||||
| mesh_peer_timeout_stop(struct ieee80211_node *); | mesh_peer_timeout_stop(struct ieee80211_node *); | ||||
| ▲ Show 20 Lines • Show All 1,425 Lines • ▼ Show 20 Lines | if(mc->mc_ttl > 0) { | ||||
| } | } | ||||
| } | } | ||||
| return (0); /* process locally */ | return (0); /* process locally */ | ||||
| #undef MC01 | #undef MC01 | ||||
| } | } | ||||
| static int | static int | ||||
| mesh_input(struct ieee80211_node *ni, struct mbuf *m, | mesh_input(struct ieee80211_node *ni, struct mbuf *m, | ||||
| const struct ieee80211_rx_stats *rxs, int rssi, int nf) | const struct ieee80211_rx_stats *rxs, net80211_rssi_t rssi, int nf) | ||||
| { | { | ||||
| #define HAS_SEQ(type) ((type & 0x4) == 0) | #define HAS_SEQ(type) ((type & 0x4) == 0) | ||||
| #define MC01(mc) ((const struct ieee80211_meshcntl_ae01 *)mc) | #define MC01(mc) ((const struct ieee80211_meshcntl_ae01 *)mc) | ||||
| struct ieee80211vap *vap = ni->ni_vap; | struct ieee80211vap *vap = ni->ni_vap; | ||||
| struct ieee80211com *ic = ni->ni_ic; | struct ieee80211com *ic = ni->ni_ic; | ||||
| struct ifnet *ifp = vap->iv_ifp; | struct ifnet *ifp = vap->iv_ifp; | ||||
| struct ieee80211_frame *wh; | struct ieee80211_frame *wh; | ||||
| const struct ieee80211_meshcntl *mc; | const struct ieee80211_meshcntl *mc; | ||||
| ▲ Show 20 Lines • Show All 2,077 Lines • Show Last 20 Lines | |||||