Lines Matching refs:iob

189 				   struct io_buffer *iob );
191 struct io_buffer *iob );
195 struct io_buffer *iob, int signal );
206 struct io_buffer *iob, int signal );
354 /* Free the non-encrypted iob */
357 /* Transmit the encrypted iob; the Protected flag is
676 * @ret iob I/O buffer, or NULL if no management frame is queued
712 * @v iob I/O buffer
720 * It is required that @a iob have at least 24 bytes of headroom
724 struct io_buffer *iob )
726 struct ieee80211_frame *hdr = iob_push ( iob,
743 iob );
744 free_iob ( iob );
745 iob = eiob;
748 return netdev_tx ( dev->netdev, iob );
1377 struct io_buffer *iob;
1405 iob = alloc_iob ( siob->tail - siob->head );
1406 iob_reserve ( iob, iob_headroom ( siob ) );
1407 memcpy ( iob_put ( iob, iob_len ( siob ) ),
1410 ctx->probe = iob;
1423 while ( ( iob = net80211_mgmt_dequeue ( dev, &signal ) ) != NULL ) {
1430 hdr = iob->data;
1440 if ( ( void * ) beacon->info_element >= iob->tail ) {
1448 if ( ! ieee80211_ie_bound ( ie, iob->tail ) )
1452 ie = ieee80211_next_ie ( ie, iob->tail );
1497 * iob we've got probably came from the device driver
1502 wlan->beacon = alloc_iob ( iob_len ( iob ) );
1503 memcpy ( iob_put ( wlan->beacon, iob_len ( iob ) ),
1504 iob->data, iob_len ( iob ) );
1534 free_iob ( iob );
2216 struct io_buffer *iob = alloc_iob ( 64 );
2220 iob_reserve ( iob, IEEE80211_TYP_FRAME_HEADER_LEN );
2221 auth = iob_put ( iob, sizeof ( *auth ) );
2226 return net80211_tx_mgmt ( dev, IEEE80211_STYPE_AUTH, wlan->bssid, iob );
2233 * @v iob I/O buffer
2241 struct io_buffer *iob )
2243 struct ieee80211_frame *hdr = iob->data;
2273 /* Since the iob we got is going to be freed as soon
2283 dev->crypto->encrypt ( dev->crypto, iob ) );
2303 struct io_buffer *iob = alloc_iob ( 128 );
2309 iob_reserve ( iob, IEEE80211_TYP_FRAME_HEADER_LEN );
2310 assoc = iob->data;
2325 DBGP_HD ( iob->data, ( void * ) ie - iob->data );
2327 iob_put ( iob, ( void * ) ie - iob->data );
2330 wlan->bssid, iob );
2337 * @v iob I/O buffer
2340 struct io_buffer *iob )
2342 struct ieee80211_frame *hdr = iob->data;
2347 net80211_process_ie ( dev, assoc->info_element, iob->tail );
2377 struct io_buffer *iob = alloc_iob ( 64 );
2384 iob_reserve ( iob, IEEE80211_TYP_FRAME_HEADER_LEN );
2385 disassoc = iob_put ( iob, sizeof ( *disassoc ) );
2389 IEEE80211_STYPE_DISASSOC, dev->bssid, iob );
2420 * @v iob I/O buffer containing beacon
2424 struct io_buffer *iob )
2426 struct ieee80211_frame *hdr = iob->data;
2448 * @v iob I/O buffer
2452 struct io_buffer *iob, int signal )
2454 struct ieee80211_frame *hdr = iob->data;
2461 free_iob ( iob );
2485 net80211_handle_auth ( dev, iob );
2491 net80211_handle_assoc_reply ( dev, iob );
2497 net80211_update_link_quality ( dev, iob );
2509 list_add_tail ( &iob->list, &dev->mgmt_queue );
2533 free_iob ( iob );
2552 if ( frag->iob[j] ) {
2553 free_iob ( frag->iob[j] );
2554 frag->iob[j] = NULL;
2570 * @ret iob I/O buffer containing reassembled packet
2586 memcpy ( iob_put ( niob, hdrsize ), frag->iob[0]->data, hdrsize );
2590 int len = iob_len ( frag->iob[i] ) - hdrsize;
2592 frag->iob[i]->data + hdrsize, len );
2606 * @v iob I/O buffer containing fragment
2610 struct io_buffer *iob, int signal )
2612 struct ieee80211_frame *hdr = iob->data;
2648 dev->frags[i].iob[0] = iob;
2661 free_iob ( iob );
2665 dev->frags[i].iob[fragnr] = iob;
2670 size += iob_len ( dev->frags[i].iob[j] );
2671 if ( dev->frags[i].iob[j] == NULL )
2696 * @v iob I/O buffer
2702 void net80211_rx ( struct net80211_device *dev, struct io_buffer *iob,
2705 struct ieee80211_frame *hdr = iob->data;
2720 iob_unput ( iob, 4 );
2741 niob = crypto->decrypt ( crypto, iob );
2746 free_iob ( iob );
2747 iob = niob;
2755 net80211_rx_frag ( dev, iob, signal );
2761 net80211_handle_mgmt ( dev, iob, signal );
2775 netdev_rx ( dev->netdev, iob );
2787 free_iob ( iob );
2794 * @v iob I/O buffer with received packet, or NULL
2797 * This logs the error with the wrapping net_device, and frees iob if
2801 struct io_buffer *iob, int rc )
2803 netdev_rx_err ( dev->netdev, iob, rc );
2809 * @v iob I/O buffer of transmitted packet
2821 struct io_buffer *iob, int retries, int rc )
2828 netdev_tx_complete_err ( dev->netdev, iob, rc );