summaryrefslogtreecommitdiffstats
path: root/release/dumpnlist.c
diff options
context:
space:
mode:
Diffstat (limited to 'release/dumpnlist.c')
-rw-r--r--release/dumpnlist.c44
1 files changed, 44 insertions, 0 deletions
diff --git a/release/dumpnlist.c b/release/dumpnlist.c
new file mode 100644
index 0000000..31f25c1
--- /dev/null
+++ b/release/dumpnlist.c
@@ -0,0 +1,44 @@
+#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"},
+ {""},
+};
+
+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;
+}
OpenPOWER on IntegriCloud