|
|
Use the -> field
argument
to specify that the structure is a linked list, with
field given as the ``next'' pointer.
In this case, struct prints a structure at
address,
then another at *(address+(field offset)), and so
on.
For example, to dump the STREAMS data block freelist
as a linked list
following the db_freep
member of the structure:
debug0:2> struct datab -> db_freep &dbfreelist
If structure fields are given (other than that required by
the -> argument, if present),
only those members of the structure are printed
(in this example, db_freep
is listed twice,
once to declare it as the ``next'' pointer,
once to have it printed):
debug0:3>struct datab -> db_freep db_freep db_base &dbfreelist
struct datab size = 10 bytes D00F072C: 0000 0000 struct datab *db_freep D00EFB18 0004 0004 unsigned char *db_base D00EEB18D00EFB18: 0000 0000 struct datab *db_freep 00000000 0004 0004 unsigned char *db_base D12D5BFC End of list reached.