[release] Update version to 1.0.0 for release
[gpxe.git] / src / hci / commands / route_cmd.c
blob4372e34f50da62f0a91a3c20ad2b48775e169abd
1 /*
2 * Copyright (C) 2007 Michael Brown <mbrown@fensystems.co.uk>.
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU General Public License as
6 * published by the Free Software Foundation; either version 2 of the
7 * License, or any later version.
9 * This program is distributed in the hope that it will be useful, but
10 * WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software
16 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19 FILE_LICENCE ( GPL2_OR_LATER );
21 #include <stdio.h>
22 #include <getopt.h>
23 #include <gpxe/command.h>
24 #include <usr/route.h>
26 /** @file
28 * Routing table management commands
32 /**
33 * "route" command syntax message
35 * @v argv Argument list
37 static void route_syntax ( char **argv ) {
38 printf ( "Usage:\n"
39 " %s\n"
40 "\n"
41 "Displays the routing table\n",
42 argv[0] );
45 /**
46 * The "route" command
48 * @v argc Argument count
49 * @v argv Argument list
50 * @ret rc Exit code
52 static int route_exec ( int argc, char **argv ) {
53 static struct option longopts[] = {
54 { "help", 0, NULL, 'h' },
55 { NULL, 0, NULL, 0 },
58 int c;
60 /* Parse options */
61 while ( ( c = getopt_long ( argc, argv, "h", longopts, NULL ) ) >= 0 ){
62 switch ( c ) {
63 case 'h':
64 /* Display help text */
65 default:
66 /* Unrecognised/invalid option */
67 route_syntax ( argv );
68 return 1;
72 if ( optind != argc ) {
73 route_syntax ( argv );
74 return 1;
77 route();
78 return 0;
81 /** Routing table management commands */
82 struct command route_commands[] __command = {
84 .name = "route",
85 .exec = route_exec,