-/*
-** Copyright (C) 2006- Sami Kerola <kerolasa@iki.fi>
-**
-** This program is free software; you can redistribute it and/or modify
+/* http://dhcpd-pools.sourceforge.net/
+** Copyright 2006- Sami Kerola <kerolasa@iki.fi>
+**
+** This program is free software: you can redistribute it and/or modify
** it under the terms of the GNU General Public License as published by
-** the Free Software Foundation; either version 2 of the License, or
+** the Free Software Foundation, either version 3 of the License, or
** (at your option) any later version.
-**
+**
** This program is distributed in the hope that it will be useful,
** but WITHOUT ANY WARRANTY; without even the implied warranty of
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
** GNU General Public License for more details.
-**
+**
** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software
-** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+** along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifdef HAVE_CONFIG_H
/* Output sorting option */
sorts = strlen(optarg);
if (5 < sorts) {
- warnx("main: only first 5 sort orders will be used");
+ warnx
+ ("main: only first 5 sort orders will be used");
strncpy(config.sort, optarg, (size_t) 5);
sorts = 5;
} else {
strncpy(config.sort, optarg,
(size_t) sorts);
}
+ for (i = 0; i < sorts; i++) {
+ field_selector(config.sort[i]);
+ }
break;
case 'r':
/* What ever sort in reverse order */
output_analysis = output_csv;
break;
default:
- errx(EXIT_FAILURE, "main: unknown ouput format `%c'",
+ errx(EXIT_FAILURE, "main: unknown output format `%c'",
config.output_format[0]);
}
shared_net_names + strlen(shared_net_names) + 1,
shared_networks);
- /* FIXME: move to output.c and use FILE *outfile */
- if ((config.output_format[0] == 'x')
- || (config.output_format[0] == 'X')) {
- printf("<dhcpstatus>\n");
- };
-
parse_leases();
prepare_data();
do_counting();
}
free(tmp_ranges);
output_analysis();
- /* After fopen in ouput ioctl does like /dev/null which
+ /* After fopen in output ioctl does like /dev/null which
* cause ENOTTY, and clean_up will see that without this
* reset. At least linux does this, and possibly some
* other systems. There's a report from FreeBSD 8.0 which
- * matches quite well with the symptom. */
+ * matches quite well with this symptom. */
if (errno == 25)
errno = 0;
- /* FIXME: move to output.c and use FILE *outfile */
- if ((config.output_format[0] == 'x')
- || (config.output_format[0] == 'X')) {
- printf("</dhcpstatus>\n");
- };
-
clean_up();
return (EXIT_SUCCESS);
}
safe_malloc(sizeof(char) * SHARED_NETWORKS_NAMES);
ranges = safe_malloc(sizeof(struct range_t) * RANGES);
+ macaddr = NULL;
/* First shared network entry is all networks */
strcpy(shared_net_names, "All networks");