From: Greg Jednaszewski Date: Fri, 8 Apr 2011 18:33:51 +0000 (+0100) Subject: [cmdline] Add "iseq" command X-Git-Tag: v1.20.1~2148 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3726b3d94a630d8f3a1c1b983d2fd6e3274ed656;p=thirdparty%2Fipxe.git [cmdline] Add "iseq" command Modified-by: Michael Brown Signed-off-by: Michael Brown --- diff --git a/src/core/exec.c b/src/core/exec.c index 18d3477ec..bfc0c97f0 100644 --- a/src/core/exec.c +++ b/src/core/exec.c @@ -490,3 +490,40 @@ struct command isset_command __command = { .name = "isset", .exec = isset_exec, }; + +/** "iseq" options */ +struct iseq_options {}; + +/** "iseq" option list */ +static struct option_descriptor iseq_opts[] = {}; + +/** "iseq" command descriptor */ +static struct command_descriptor iseq_cmd = + COMMAND_DESC ( struct iseq_options, iseq_opts, 2, 2, + " " ); + +/** + * "iseq" command + * + * @v argc Argument count + * @v argv Argument list + * @ret rc Return status code + */ +static int iseq_exec ( int argc, char **argv ) { + struct iseq_options opts; + int rc; + + /* Parse options */ + if ( ( rc = parse_options ( argc, argv, &iseq_cmd, &opts ) ) != 0 ) + return rc; + + /* Return success iff arguments are equal */ + return ( ( strcmp ( argv[optind], argv[ optind + 1 ] ) == 0 ) ? + 0 : -ERANGE ); +} + +/** "iseq" command */ +struct command iseq_command __command = { + .name = "iseq", + .exec = iseq_exec, +};