diff options
Diffstat (limited to 'release/picobsd/tools/dumpnlist/dumpnlist.c')
-rw-r--r-- | release/picobsd/tools/dumpnlist/dumpnlist.c | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/release/picobsd/tools/dumpnlist/dumpnlist.c b/release/picobsd/tools/dumpnlist/dumpnlist.c new file mode 100644 index 0000000..a07fb31 --- /dev/null +++ b/release/picobsd/tools/dumpnlist/dumpnlist.c @@ -0,0 +1,45 @@ +#include <sys/types.h> +#include <sys/fcntl.h> +#include <unistd.h> +#include <stdlib.h> +#include <nlist.h> +#include <stdio.h> + +struct nlist nl[] = { + {"_isa_devtab_bio"}, + {"_isa_devtab_tty"}, + {"_isa_devtab_net"}, + {"_isa_devtab_null"}, + {"_isa_biotab_wdc"}, + {"_isa_biotab_fdc"}, + {"_eisadriver_set"}, + {"_eisa_dev_list"}, + {"_pcidevice_set"}, + {"_device_list"}, + {"_scbusses"}, + {"_scsi_cinit"}, + {"_scsi_dinit"}, + {"_scsi_tinit"}, + {"_cnt"}, + {""}, +}; + +int +main(int ac, char **av) +{ + int i; + + i = nlist(av[1], nl); + if (i == -1) { + fprintf(stderr, "nlist returns error for %s\n", av[1]); + perror("nlist"); + return 1; + } + printf("%d\n", sizeof(nl) / sizeof(struct nlist)); + for (i = 0; nl[i].n_name; i++) { + printf("%s\n", nl[i].n_name); + printf("%d %d %d %ld\n", + nl[i].n_type, nl[i].n_other, nl[i].n_desc, nl[i].n_value); + } + return 0; +} |