aboutsummaryrefslogtreecommitdiff
path: root/usr.sbin/dumpcis/main.c
diff options
context:
space:
mode:
authorWarner Losh <imp@FreeBSD.org>2008-11-20 03:30:27 +0000
committerWarner Losh <imp@FreeBSD.org>2008-11-20 03:30:27 +0000
commit2bbc3fd5f68b12631ad0ed45db284073c7d4512f (patch)
tree0f511a6ad72c2b9e38dcc3a614f0b00de9d4c034 /usr.sbin/dumpcis/main.c
parente363ea0fabf7fedf6eff089f65a1743488d2a050 (diff)
downloadsrc-2bbc3fd5f68b12631ad0ed45db284073c7d4512f.tar.gz
src-2bbc3fd5f68b12631ad0ed45db284073c7d4512f.zip
Simplify: move dumpcis.c and dumpcisfile.c into main.
Notes
Notes: svn path=/head/; revision=185114
Diffstat (limited to 'usr.sbin/dumpcis/main.c')
-rw-r--r--usr.sbin/dumpcis/main.c44
1 files changed, 42 insertions, 2 deletions
diff --git a/usr.sbin/dumpcis/main.c b/usr.sbin/dumpcis/main.c
index 317195c1f8e1..d721b0af65ac 100644
--- a/usr.sbin/dumpcis/main.c
+++ b/usr.sbin/dumpcis/main.c
@@ -25,10 +25,50 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-int dumpcisfile_main(int, char **);
+#include <fcntl.h>
+#include <stdio.h>
+#include <unistd.h>
+#include "readcis.h"
+
+void
+dump(unsigned char *p, int sz)
+{
+ int ad = 0, i;
+
+ while (sz > 0) {
+ printf("%03x: ", ad);
+ for (i = 0; i < ((sz < 16) ? sz : 16); i++)
+ printf(" %02x", p[i]);
+ printf("\n");
+ sz -= 16;
+ p += 16;
+ ad += 16;
+ }
+}
+
+static void
+scanfile(char *name)
+{
+ int fd;
+ struct cis *cp;
+
+ fd = open(name, O_RDONLY);
+ if (fd < 0)
+ return;
+ cp = readcis(fd);
+ if (cp) {
+ printf("Configuration data for file %s\n",
+ name);
+ dumpcis(cp);
+ freecis(cp);
+ }
+ close(fd);
+}
int
main(int argc, char **argv)
{
- return dumpcisfile_main(argc, argv);
+ for (argc--, argv++; argc; argc--, argv++)
+ scanfile(*argv);
+ return 0;
}