Lines Matching refs:subcommand

59 /* standard subcommand options table to support -? */
82 * subCommand - subcommand value
155 * Print usage for a subcommand.
159 * subcommand - pointer to subCommandProps_t structure
166 subUsage(uint_t usageType, subCommandProps_t *subcommand)
174 subcommand->name);
184 /* print subcommand usage */
186 subcommand->name);
189 if (subcommand->optionString != NULL) {
190 if (subcommand->required) {
196 if (subcommand->required) {
204 if (!(subcommand->operand & OPERAND_NONE) &&
205 !(subcommand->operand & OPERAND_MANDATORY)) {
209 if (subcommand->operand & OPERAND_MANDATORY) {
213 if (!(subcommand->operand & OPERAND_NONE)) {
214 assert(subcommand->operandDefinition);
215 (void) printf("%s", subcommand->operandDefinition);
218 if (subcommand->operand & OPERAND_MULTIPLE) {
222 if (subcommand->operand & OPERAND_MANDATORY) {
226 if (!(subcommand->operand & OPERAND_NONE) &&
227 !(subcommand->operand & OPERAND_MANDATORY)) {
231 /* print options for subcommand */
232 if (subcommand->optionString != NULL) {
234 for (i = 0; i < strlen(subcommand->optionString); i++) {
236 subcommand->optionString[i])) != NULL);
238 subcommand->optionString[i],
241 getOptionArgDesc(subcommand->optionString[i]);
245 if (subcommand->exclusive &&
246 strchr(subcommand->exclusive,
247 subcommand->optionString[i])) {
253 if (subcommand->helpText) {
254 (void) printf("%s\n", subcommand->helpText);
291 /* print all subcommand usage */
338 * command subcommand [<options>] [<operand>]
341 * -?, --help Provides usage on a command or subcommand
352 * callArgs - void * passed by caller to be passed to subcommand function
355 * funcRet - pointer to int that holds subcommand function return value
384 subCommandProps_t *subcommand;
422 * load standard subcommand options to internal long options table
490 * subcommand is always in the second argument. If there is no
491 * recognized subcommand in the second argument, print error,
494 if (getSubcommandProps(argv[1], &subcommand) != 0) {
496 gettext("invalid subcommand"));
532 * subcommand table is performed.
538 subUsage(DETAIL_USAGE, subcommand);
578 /* get option string for this subcommand */
579 availOptions = subcommand->optionString;
582 if (subcommand->required) {
583 requiredOptionCnt = strlen(subcommand->required);
590 subUsage(DETAIL_USAGE, subcommand);
599 subUsage(DETAIL_USAGE, subcommand);
602 } else if (subcommand->required &&
603 (strchr(subcommand->required,
608 subcommand->exclusive &&
609 strchr(subcommand->exclusive,
614 subUsage(DETAIL_USAGE, subcommand);
619 if (availOptions != NULL && subcommand->required) {
622 subUsage(DETAIL_USAGE, subcommand);
631 subcommand->required);
632 subUsage(DETAIL_USAGE, subcommand);
642 (subcommand->operand & OPERAND_MANDATORY)) {
643 (void) printf("%s: %s %s\n", commandName, subcommand->name,
645 subUsage(DETAIL_USAGE, subcommand);
654 (subcommand->operand & OPERAND_NONE)) {
656 subcommand->name, gettext("takes no operands"));
657 subUsage(DETAIL_USAGE, subcommand);
666 (subcommand->operand & OPERAND_SINGLE)) {
668 subcommand->name, gettext("accepts only a single operand"));
669 subUsage(DETAIL_USAGE, subcommand);
677 *funcRet = subcommand->handler(argc - operInd, &argv[operInd],