gdb: Add a directory of files with gdb macros

* gdb/: Directory to contain files with GDB macros. Organised by topic into
  separate files.
* gdb/lib.txt: General OS API and Quagga lib macros:
  (def_ntohs) convert big-endian short to host order.
  (def_ntohl) convert big-endian long to host order.
  (walk_route_table_next) Walk to next route_node in a table, according
  to given top and current node arguments.
  (walk_route_table) walk the given route table dumping non-null info pointers,
  from the given root node.
  (dump_timeval) timeval to human readable output
  (dump_s_addr) Print IP address of given pointer to a (struct in_addr).s_addr
  (dump_s6_addr) Ditto for IPv6.
  (dump_prefix4) Dump a Quagga (struct prefix_ipv4 *)
  (dump_prefix6) Dump (struct prefix_ipv6 *)
  (dump_prefix) Dump a (struct prefix *).
  (rn_next_{down,up}) left-down and up-and-right walks of a route_table
  from a given route_node.
* gdb/ospfd.txt: ospfd specific gdb macros, depends on gdb/lib.txt
  (dump_ospf_lsa_flags) LSA flags to text.
  (dump_ospf_lsa_data) dump the data of a (struct lsa_header *) argument.
  (dump_ospf_lsa) Dump the details of a (struct ospf_lsa *)
  (walk_ospf_lsdb) Go through an LSDB, rooted at the
  given (struct route_node *), and dump LSA details.
  (ospf_backbone_lsdb_top) Get the LSDB top pointer for the given LSA type.
2 files changed