ieee80211_ddb.c (183257) | ieee80211_ddb.c (183355) |
---|---|
1/*- 2 * Copyright (c) 2007-2008 Sam Leffler, Errno Consulting 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 10 unchanged lines hidden (view full) --- 19 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 20 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 21 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 23 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 */ 25 26#include <sys/cdefs.h> | 1/*- 2 * Copyright (c) 2007-2008 Sam Leffler, Errno Consulting 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 10 unchanged lines hidden (view full) --- 19 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 20 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 21 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 23 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 */ 25 26#include <sys/cdefs.h> |
27__FBSDID("$FreeBSD: head/sys/net80211/ieee80211_ddb.c 183257 2008-09-22 00:14:50Z sam $"); | 27__FBSDID("$FreeBSD: head/sys/net80211/ieee80211_ddb.c 183355 2008-09-25 16:46:36Z thompsa $"); |
28 29#include "opt_ddb.h" 30#include "opt_wlan.h" 31 32#ifdef DDB 33/* 34 * IEEE 802.11 DDB support 35 */ --- 7 unchanged lines hidden (view full) --- 43#include <net/if_dl.h> 44#include <net/if_media.h> 45#include <net/if_types.h> 46#include <net/ethernet.h> 47 48#include <net80211/ieee80211_var.h> 49 50#include <ddb/ddb.h> | 28 29#include "opt_ddb.h" 30#include "opt_wlan.h" 31 32#ifdef DDB 33/* 34 * IEEE 802.11 DDB support 35 */ --- 7 unchanged lines hidden (view full) --- 43#include <net/if_dl.h> 44#include <net/if_media.h> 45#include <net/if_types.h> 46#include <net/ethernet.h> 47 48#include <net80211/ieee80211_var.h> 49 50#include <ddb/ddb.h> |
51#include <ddb/db_sym.h> |
|
51 52#define IEEE80211_MSG_BITS \ 53 "\20\3IOCTL\4WDS\5ACTION\6RATECTL\7ROAM\10INACT\11DOTH\12SUPERG" \ 54 "\13WME\14ACL\15WPA\16RADKEYS\17RADDUMP\20RADIUS\21DOT1X\22POWER" \ 55 "\23STATE\24OUTPUT\25SCAN\26AUTH\27ASSOC\30NODE\31ELEMID\32XRATE" \ 56 "\33INPUT\34CRYPTO\35DUPMPKTS\36DEBUG\3711N" 57 58#define IEEE80211_F_BITS \ --- 44 unchanged lines hidden (view full) --- 103#define IEEE80211_HTCAP_BITS \ 104 "\20\1LDPC\2CHWIDTH40\5GREENFIELD\6SHORTGI20\7SHORTGI40\10TXSTBC" \ 105 "\13DELBA\14AMSDU(7935)\15DSSSCCK40\16PSMP\1740INTOLERANT" \ 106 "\20LSIGTXOPPROT" 107 108#define IEEE80211_AGGR_BITS \ 109 "\20\1IMMEDIATE\2XCHGPEND\3RUNNING\4SETUP\5NAK" 110 | 52 53#define IEEE80211_MSG_BITS \ 54 "\20\3IOCTL\4WDS\5ACTION\6RATECTL\7ROAM\10INACT\11DOTH\12SUPERG" \ 55 "\13WME\14ACL\15WPA\16RADKEYS\17RADDUMP\20RADIUS\21DOT1X\22POWER" \ 56 "\23STATE\24OUTPUT\25SCAN\26AUTH\27ASSOC\30NODE\31ELEMID\32XRATE" \ 57 "\33INPUT\34CRYPTO\35DUPMPKTS\36DEBUG\3711N" 58 59#define IEEE80211_F_BITS \ --- 44 unchanged lines hidden (view full) --- 104#define IEEE80211_HTCAP_BITS \ 105 "\20\1LDPC\2CHWIDTH40\5GREENFIELD\6SHORTGI20\7SHORTGI40\10TXSTBC" \ 106 "\13DELBA\14AMSDU(7935)\15DSSSCCK40\16PSMP\1740INTOLERANT" \ 107 "\20LSIGTXOPPROT" 108 109#define IEEE80211_AGGR_BITS \ 110 "\20\1IMMEDIATE\2XCHGPEND\3RUNNING\4SETUP\5NAK" 111 |
112#define DB_PRINTSYM(prefix, addr) \ 113 db_printf(prefix " "); \ 114 db_printsym((db_addr_t) addr, DB_STGY_ANY); \ 115 db_printf("\n"); 116 |
|
111static void _db_show_sta(const struct ieee80211_node *); 112static void _db_show_vap(const struct ieee80211vap *, int); 113static void _db_show_com(const struct ieee80211com *, 114 int showvaps, int showsta, int showprocs); 115 116static void _db_show_channel(const char *tag, const struct ieee80211_channel *); 117static void _db_show_ssid(const char *tag, int ix, int len, const uint8_t *); 118static void _db_show_appie(const char *tag, const struct ieee80211_appie *); --- 320 unchanged lines hidden (view full) --- 439 db_printf("\tauth %p", vap->iv_auth); 440 db_printf(" ec %p", vap->iv_ec); 441 442 db_printf(" acl %p", vap->iv_acl); 443 db_printf(" as %p", vap->iv_as); 444 db_printf("\n"); 445 446 if (showprocs) { | 117static void _db_show_sta(const struct ieee80211_node *); 118static void _db_show_vap(const struct ieee80211vap *, int); 119static void _db_show_com(const struct ieee80211com *, 120 int showvaps, int showsta, int showprocs); 121 122static void _db_show_channel(const char *tag, const struct ieee80211_channel *); 123static void _db_show_ssid(const char *tag, int ix, int len, const uint8_t *); 124static void _db_show_appie(const char *tag, const struct ieee80211_appie *); --- 320 unchanged lines hidden (view full) --- 445 db_printf("\tauth %p", vap->iv_auth); 446 db_printf(" ec %p", vap->iv_ec); 447 448 db_printf(" acl %p", vap->iv_acl); 449 db_printf(" as %p", vap->iv_as); 450 db_printf("\n"); 451 452 if (showprocs) { |
447 db_printf("\tiv_key_alloc %p\n", vap->iv_key_alloc); 448 db_printf("\tiv_key_delete %p\n", vap->iv_key_delete); 449 db_printf("\tiv_key_set %p\n", vap->iv_key_set); 450 db_printf("\tiv_key_update_begin %p\n", vap->iv_key_update_begin); 451 db_printf("\tiv_key_update_end %p\n", vap->iv_key_update_end); 452 db_printf("\tiv_opdetach %p\n", vap->iv_opdetach); 453 db_printf("\tiv_input %p\n", vap->iv_input); 454 db_printf("\tiv_recv_mgmt %p\n", vap->iv_recv_mgmt); 455 db_printf("\tiv_deliver_data %p\n", vap->iv_deliver_data); 456 db_printf("\tiv_bmiss %p\n", vap->iv_bmiss); 457 db_printf("\tiv_reset %p\n", vap->iv_reset); 458 db_printf("\tiv_update_beacon %p\n", vap->iv_update_beacon); 459 db_printf("\tiv_newstate %p\n", vap->iv_newstate); 460 db_printf("\tiv_output %p\n", vap->iv_output); | 453 DB_PRINTSYM("\tiv_key_alloc", vap->iv_key_alloc); 454 DB_PRINTSYM("\tiv_key_delete", vap->iv_key_delete); 455 DB_PRINTSYM("\tiv_key_set", vap->iv_key_set); 456 DB_PRINTSYM("\tiv_key_update_begin", vap->iv_key_update_begin); 457 DB_PRINTSYM("\tiv_key_update_end", vap->iv_key_update_end); 458 DB_PRINTSYM("\tiv_opdetach", vap->iv_opdetach); 459 DB_PRINTSYM("\tiv_input", vap->iv_input); 460 DB_PRINTSYM("\tiv_recv_mgmt", vap->iv_recv_mgmt); 461 DB_PRINTSYM("\tiv_deliver_data", vap->iv_deliver_data); 462 DB_PRINTSYM("\tiv_bmiss", vap->iv_bmiss); 463 DB_PRINTSYM("\tiv_reset", vap->iv_reset); 464 DB_PRINTSYM("\tiv_update_beacon", vap->iv_update_beacon); 465 DB_PRINTSYM("\tiv_newstate", vap->iv_newstate); 466 DB_PRINTSYM("\tiv_output", vap->iv_output); |
461 } 462} 463 464static void 465_db_show_com(const struct ieee80211com *ic, int showvaps, int showsta, int showprocs) 466{ 467 struct ieee80211vap *vap; 468 --- 100 unchanged lines hidden (view full) --- 569 db_printf(" ht40_sta_assoc %u", ic->ic_ht40_sta_assoc); 570 db_printf("\n"); 571 db_printf("\tcurhtprotmode 0x%x", ic->ic_curhtprotmode); 572 db_printf(" htprotmode %d", ic->ic_htprotmode); 573 db_printf(" lastnonht %d", ic->ic_lastnonht); 574 db_printf("\n"); 575 576 if (showprocs) { | 467 } 468} 469 470static void 471_db_show_com(const struct ieee80211com *ic, int showvaps, int showsta, int showprocs) 472{ 473 struct ieee80211vap *vap; 474 --- 100 unchanged lines hidden (view full) --- 575 db_printf(" ht40_sta_assoc %u", ic->ic_ht40_sta_assoc); 576 db_printf("\n"); 577 db_printf("\tcurhtprotmode 0x%x", ic->ic_curhtprotmode); 578 db_printf(" htprotmode %d", ic->ic_htprotmode); 579 db_printf(" lastnonht %d", ic->ic_lastnonht); 580 db_printf("\n"); 581 582 if (showprocs) { |
577 db_printf("\tic_vap_create %p\n", ic->ic_vap_create); 578 db_printf("\tic_vap_delete %p\n", ic->ic_vap_delete); | 583 DB_PRINTSYM("\tic_vap_create", ic->ic_vap_create); 584 DB_PRINTSYM("\tic_vap_delete", ic->ic_vap_delete); |
579#if 0 580 /* operating mode attachment */ 581 ieee80211vap_attach ic_vattach[IEEE80211_OPMODE_MAX]; 582#endif | 585#if 0 586 /* operating mode attachment */ 587 ieee80211vap_attach ic_vattach[IEEE80211_OPMODE_MAX]; 588#endif |
583 db_printf("\tic_newassoc %p\n", ic->ic_newassoc); 584 db_printf("\tic_getradiocaps %p\n", ic->ic_getradiocaps); 585 db_printf("\tic_setregdomain %p\n", ic->ic_setregdomain); 586 db_printf("\tic_send_mgmt %p\n", ic->ic_send_mgmt); 587 db_printf("\tic_raw_xmit %p\n", ic->ic_raw_xmit); 588 db_printf("\tic_updateslot %p\n", ic->ic_updateslot); 589 db_printf("\tic_update_mcast %p\n", ic->ic_update_mcast); 590 db_printf("\tic_update_promisc %p\n", ic->ic_update_promisc); 591 db_printf("\tic_node_alloc %p\n", ic->ic_node_alloc); 592 db_printf("\tic_node_free %p\n", ic->ic_node_free); 593 db_printf("\tic_node_cleanup %p\n", ic->ic_node_cleanup); 594 db_printf("\tic_node_getrssi %p\n", ic->ic_node_getrssi); 595 db_printf("\tic_node_getsignal %p\n", ic->ic_node_getsignal); 596 db_printf("\tic_node_getmimoinfo %p\n", ic->ic_node_getmimoinfo); 597 db_printf("\tic_scan_start %p\n", ic->ic_scan_start); 598 db_printf("\tic_scan_end %p\n", ic->ic_scan_end); 599 db_printf("\tic_set_channel %p\n", ic->ic_set_channel); 600 db_printf("\tic_scan_curchan %p\n", ic->ic_scan_curchan); 601 db_printf("\tic_scan_mindwell %p\n", ic->ic_scan_mindwell); 602 db_printf("\tic_recv_action %p\n", ic->ic_recv_action); 603 db_printf("\tic_send_action %p\n", ic->ic_send_action); 604 db_printf("\tic_addba_request %p\n", ic->ic_addba_request); 605 db_printf("\tic_addba_response %p\n", ic->ic_addba_response); 606 db_printf("\tic_addba_stop %p\n", ic->ic_addba_stop); | 589 DB_PRINTSYM("\tic_newassoc", ic->ic_newassoc); 590 DB_PRINTSYM("\tic_getradiocaps", ic->ic_getradiocaps); 591 DB_PRINTSYM("\tic_setregdomain", ic->ic_setregdomain); 592 DB_PRINTSYM("\tic_send_mgmt", ic->ic_send_mgmt); 593 DB_PRINTSYM("\tic_raw_xmit", ic->ic_raw_xmit); 594 DB_PRINTSYM("\tic_updateslot", ic->ic_updateslot); 595 DB_PRINTSYM("\tic_update_mcast", ic->ic_update_mcast); 596 DB_PRINTSYM("\tic_update_promisc", ic->ic_update_promisc); 597 DB_PRINTSYM("\tic_node_alloc", ic->ic_node_alloc); 598 DB_PRINTSYM("\tic_node_free", ic->ic_node_free); 599 DB_PRINTSYM("\tic_node_cleanup", ic->ic_node_cleanup); 600 DB_PRINTSYM("\tic_node_getrssi", ic->ic_node_getrssi); 601 DB_PRINTSYM("\tic_node_getsignal", ic->ic_node_getsignal); 602 DB_PRINTSYM("\tic_node_getmimoinfo", ic->ic_node_getmimoinfo); 603 DB_PRINTSYM("\tic_scan_start", ic->ic_scan_start); 604 DB_PRINTSYM("\tic_scan_end", ic->ic_scan_end); 605 DB_PRINTSYM("\tic_set_channel", ic->ic_set_channel); 606 DB_PRINTSYM("\tic_scan_curchan", ic->ic_scan_curchan); 607 DB_PRINTSYM("\tic_scan_mindwell", ic->ic_scan_mindwell); 608 DB_PRINTSYM("\tic_recv_action", ic->ic_recv_action); 609 DB_PRINTSYM("\tic_send_action", ic->ic_send_action); 610 DB_PRINTSYM("\tic_addba_request", ic->ic_addba_request); 611 DB_PRINTSYM("\tic_addba_response", ic->ic_addba_response); 612 DB_PRINTSYM("\tic_addba_stop", ic->ic_addba_stop); |
607 } 608 if (showvaps && !TAILQ_EMPTY(&ic->ic_vaps)) { 609 db_printf("\n"); 610 TAILQ_FOREACH(vap, &ic->ic_vaps, iv_next) 611 _db_show_vap(vap, showprocs); 612 } 613 if (showsta && !TAILQ_EMPTY(&ic->ic_sta.nt_node)) { 614 const struct ieee80211_node_table *nt = &ic->ic_sta; --- 179 unchanged lines hidden --- | 613 } 614 if (showvaps && !TAILQ_EMPTY(&ic->ic_vaps)) { 615 db_printf("\n"); 616 TAILQ_FOREACH(vap, &ic->ic_vaps, iv_next) 617 _db_show_vap(vap, showprocs); 618 } 619 if (showsta && !TAILQ_EMPTY(&ic->ic_sta.nt_node)) { 620 const struct ieee80211_node_table *nt = &ic->ic_sta; --- 179 unchanged lines hidden --- |