X-Git-Url: https://git.sommitrealweird.co.uk/quagga-debian.git/blobdiff_plain/6d99eb2938e976229cb50d848a1bc491532b54f9..110ea29b8fe7d11de09e19382a9a5808cfb90d32:/gdb/ospf.txt diff --git a/gdb/ospf.txt b/gdb/ospf.txt deleted file mode 100644 index 984104b..0000000 --- a/gdb/ospf.txt +++ /dev/null @@ -1,137 +0,0 @@ -# GDB macros for use with Quagga. -# -# Macros in this file are specific to ospfd/. Definitions here depend on the -# lib.txt macros file, which must also be loaed. -# -# The macro file can be loaded with 'source '. They can then be -# called by the user. Macros that explore more complicated structs generally -# take pointer arguments. - -define dump_ospf_lsa_flags - set $flags = $arg0 - - printf "%u: ", $flags - - if $flags & 0x1 - echo Self, - end - if $flags & 0x2 - echo Self-checked, - end - if $flags & 0x4 - echo Recvd, - end - if $flags & 0x8 - echo Apprvd, - end - if $flags & 0x10 - echo Discard, - end - if $flags & 0x20 - echo Local-Xlt, - end - if $flags & 0x40 - echo Premature-Aged, - end - if $flags & 0x40 - echo In-Maxage, - end - echo \n -end - -define dump_ospf_lsa_data - set $lsad = (struct lsa_header *)$arg0 - - echo ID / AdvRtr: \t\t - dump_s_addr &$lsad->id.s_addr - echo \ : \ - dump_s_addr &$lsad->adv_router.s_addr - echo \n - - def_ntohs &$lsad->ls_age - printf "Type: %2u Age: %4u,", $lsad->type, $_ - - def_ntohs &$lsad->length - printf " length: %2u", $_ - - def_ntohl &$lsad->ls_seqnum - printf " Seqnum: 0x%08x", $_ - - def_ntohs &$lsad->checksum - printf " csum: 0x%04x\n", $_ - - # return the age - def_ntohs &$lsad->ls_age -end - -define dump_ospf_lsa - set $lsa = (struct ospf_lsa *)$arg0 - - #print/x *$lsa - - dump_ospf_lsa_data $lsa->data - - set $relage = $_ + (relative_time.tv_sec - $lsa->tv_recv.tv_sec) - printf "Relative age: %4u\n", $relage - - dump_ospf_lsa_flags $lsa->flags - - echo tv_recv: \ - dump_timeval &$lsa->tv_recv - echo \ tv_orig: \ - dump_timeval &$lsa->tv_orig - echo \n - - printf "lock %2u", $lsa->lock - printf " stat %2d", $lsa->stat - printf " rtx count: %u", $lsa->retransmit_counter - printf " rfsh list: %d", $lsa->refresh_list - printf "\n\n" -end - -define walk_ospf_lsdb - set $node = (struct route_node *)$arg0 - set $top = (struct route_node *)$arg0 - set $visited = 0 - - while ($node != 0) - set $prevl = $node - - if ($node->info != 0) - dump_ospf_lsa $node->info - set $visited = $visited + 1 - end - - walk_route_table_next $top $node - set $node = $_ - - # we've gotten back to the top, finish - if ($node == $top) - set $node = 0 - end - end - printf "Visited: %u\n", $visited -end - -document walk_ospf_lsdb -Walk through an OSPF LSDB (or subset thereof) and dump all the LSAs -contained there-in. - -Argument: A (struct route_node *) pointing to the top of the -LSDB route-table which should be dumped. -end - -define ospf_backbone_lsdb_top - set $type = $arg0 - - set $ospf = ospf_master->ospf->head->data - - output/x ((struct ospf *)$ospf)->backbone->lsdb->type[$type]->db->top - echo \n -end -document ospf_backbone_lsdb_top -Dump location of the LSDB in the backbone area for the given LSA type - -Argument: Integer LSA type -end -