11de7b4b8SPedro F. Giffuni /*-
2*4d846d26SWarner Losh * SPDX-License-Identifier: BSD-2-Clause
31de7b4b8SPedro F. Giffuni *
4f86e6000SWarner Losh * Copyright (c) 2006 M. Warner Losh <imp@FreeBSD.org>
50738c00eSWarner Losh *
60738c00eSWarner Losh * Redistribution and use in source and binary forms, with or without
70738c00eSWarner Losh * modification, are permitted provided that the following conditions
80738c00eSWarner Losh * are met:
90738c00eSWarner Losh * 1. Redistributions of source code must retain the above copyright
100738c00eSWarner Losh * notice, this list of conditions and the following disclaimer.
110738c00eSWarner Losh * 2. Redistributions in binary form must reproduce the above copyright
120738c00eSWarner Losh * notice, this list of conditions and the following disclaimer in the
130738c00eSWarner Losh * documentation and/or other materials provided with the distribution.
140738c00eSWarner Losh *
150738c00eSWarner Losh * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
160738c00eSWarner Losh * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
170738c00eSWarner Losh * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
180738c00eSWarner Losh * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
190738c00eSWarner Losh * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
200738c00eSWarner Losh * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
210738c00eSWarner Losh * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
220738c00eSWarner Losh * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
230738c00eSWarner Losh * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
240738c00eSWarner Losh * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
250738c00eSWarner Losh */
260738c00eSWarner Losh
270738c00eSWarner Losh #include <sys/cdefs.h>
282bbc3fd5SWarner Losh #include <fcntl.h>
292bbc3fd5SWarner Losh #include <stdio.h>
302bbc3fd5SWarner Losh #include <unistd.h>
312bbc3fd5SWarner Losh #include "readcis.h"
322bbc3fd5SWarner Losh
332bbc3fd5SWarner Losh static void
scanfile(char * name)342bbc3fd5SWarner Losh scanfile(char *name)
352bbc3fd5SWarner Losh {
362bbc3fd5SWarner Losh int fd;
372d875dc5SWarner Losh struct tuple_list *tl;
382bbc3fd5SWarner Losh
392bbc3fd5SWarner Losh fd = open(name, O_RDONLY);
402bbc3fd5SWarner Losh if (fd < 0)
412bbc3fd5SWarner Losh return;
422d875dc5SWarner Losh tl = readcis(fd);
432d875dc5SWarner Losh if (tl) {
442bbc3fd5SWarner Losh printf("Configuration data for file %s\n",
452bbc3fd5SWarner Losh name);
462d875dc5SWarner Losh dumpcis(tl);
472d875dc5SWarner Losh freecis(tl);
482bbc3fd5SWarner Losh }
492bbc3fd5SWarner Losh close(fd);
502bbc3fd5SWarner Losh }
510738c00eSWarner Losh
520738c00eSWarner Losh int
main(int argc,char ** argv)530738c00eSWarner Losh main(int argc, char **argv)
540738c00eSWarner Losh {
552bbc3fd5SWarner Losh for (argc--, argv++; argc; argc--, argv++)
562bbc3fd5SWarner Losh scanfile(*argv);
572bbc3fd5SWarner Losh return 0;
580738c00eSWarner Losh }
59