]> www.infradead.org Git - users/dhowells/kafs-utils.git/commit
Implement the core of the command suite
authorDavid Howells <dhowells@redhat.com>
Fri, 11 Oct 2019 14:35:46 +0000 (15:35 +0100)
committerDavid Howells <dhowells@redhat.com>
Fri, 5 May 2023 10:53:22 +0000 (11:53 +0100)
commit6a523bb265a500cac6a8f8eaec8f03793b89fd67
treef1a66fc78b74bc9d5496e36b963a99025a4473b3
parent4d4622403a876fcca3e8ddbfe6e0fdffa1fa25c2
Implement the core of the command suite

Implement the core of the command suite.  This includes:

 (*) Standard AFS argument parsing.

 (*) Autogeneration of parsers for commands, based on description in banner
     comments and handler function arguments.

 (*) Bash completion.

 (*) Command suite multiplexing based on argv[0] and argv[1].

 (*) "help" and "apropos" for bos, fs, pts and vos.

Each command must be preceded by a comment that conforms to the following
template:

/***
 * COMMAND: suite command - one-line help
 * ARG: "-switchname"
 * ARG: "-switchname <param-help>"
 * ARG: "-switchname <param-help>+"
 * ARG: [...]"
 * ARG: ... - Auth"
 * ARG: ... - New"
 * NOCOMBINE: switchname, switchname
 * NOCOMBINE: switchname, switchname
 * NOCOMBINE: switchname, switchname
 *
 * multiline help
 * multiline help
 * multiline help
 * multiline help
 */

Aliases can be coded by:

/***
 * ALIAS: suite command - command_alias_for
 */

Signed-off-by: David Howells <dhowells@redhat.com>
16 files changed:
Makefile
kafs/.gitignore [new file with mode: 0644]
kafs/Makefile [new file with mode: 0644]
kafs/arg_completion.C [new file with mode: 0644]
kafs/arg_parse.C [new file with mode: 0644]
kafs/arg_parse.H [new file with mode: 0644]
kafs/bash_complete [new file with mode: 0644]
kafs/bos_help.C [new file with mode: 0644]
kafs/display.H [new file with mode: 0644]
kafs/display_error.C [new file with mode: 0644]
kafs/fs_help.C [new file with mode: 0644]
kafs/gen_command.py [new file with mode: 0755]
kafs/kafs.C [new file with mode: 0644]
kafs/kafs.H [new file with mode: 0644]
kafs/pts_help.C [new file with mode: 0644]
kafs/vos_help.C [new file with mode: 0644]