Files | |
file | findme.c |
file | findme.h |
file | popt.c |
file | popt.h |
file | poptconfig.c |
file | popthelp.c |
file | poptint.h |
file | poptparse.c |
Data Structures | |
struct | poptAlias |
struct | poptItem_s |
struct | poptOption |
Arg type identifiers | |
#define | POPT_ARG_NONE 0 |
#define | POPT_ARG_STRING 1 |
#define | POPT_ARG_INT 2 |
#define | POPT_ARG_LONG 3 |
#define | POPT_ARG_INCLUDE_TABLE 4 |
#define | POPT_ARG_CALLBACK 5 |
#define | POPT_ARG_INTL_DOMAIN 6 |
#define | POPT_ARG_VAL 7 |
#define | POPT_ARG_FLOAT 8 |
#define | POPT_ARG_DOUBLE 9 |
#define | POPT_ARG_MASK 0x0000FFFF |
Arg modifiers | |
#define | POPT_ARGFLAG_ONEDASH 0x80000000 |
#define | POPT_ARGFLAG_DOC_HIDDEN 0x40000000 |
#define | POPT_ARGFLAG_STRIP 0x20000000 |
#define | POPT_ARGFLAG_OPTIONAL 0x10000000 |
#define | POPT_ARGFLAG_OR 0x08000000 |
#define | POPT_ARGFLAG_NOR 0x09000000 |
#define | POPT_ARGFLAG_AND 0x04000000 |
#define | POPT_ARGFLAG_NAND 0x05000000 |
#define | POPT_ARGFLAG_XOR 0x02000000 |
#define | POPT_ARGFLAG_NOT 0x01000000 |
#define | POPT_ARGFLAG_LOGICALOPS (POPT_ARGFLAG_OR|POPT_ARGFLAG_AND|POPT_ARGFLAG_XOR) |
#define | POPT_BIT_SET (POPT_ARG_VAL|POPT_ARGFLAG_OR) |
#define | POPT_BIT_CLR (POPT_ARG_VAL|POPT_ARGFLAG_NAND) |
#define | POPT_ARGFLAG_SHOW_DEFAULT 0x00800000 |
Callback modifiers | |
#define | POPT_CBFLAG_PRE 0x80000000 |
#define | POPT_CBFLAG_POST 0x40000000 |
#define | POPT_CBFLAG_INC_DATA 0x20000000 |
#define | POPT_CBFLAG_SKIPOPTION 0x10000000 |
#define | POPT_CBFLAG_CONTINUE 0x08000000 |
Error return values | |
#define | POPT_ERROR_NOARG -10 |
#define | POPT_ERROR_BADOPT -11 |
#define | POPT_ERROR_OPTSTOODEEP -13 |
#define | POPT_ERROR_BADQUOTE -15 |
#define | POPT_ERROR_ERRNO -16 |
#define | POPT_ERROR_BADNUMBER -17 |
#define | POPT_ERROR_OVERFLOW -18 |
#define | POPT_ERROR_BADOPERATION -19 |
#define | POPT_ERROR_NULLARG -20 |
#define | POPT_ERROR_MALLOC -21 |
poptBadOption() flags | |
#define | POPT_BADOPTION_NOALIAS (1 << 0) |
poptGetContext() flags | |
#define | POPT_CONTEXT_NO_EXEC (1 << 0) |
#define | POPT_CONTEXT_KEEP_FIRST (1 << 1) |
#define | POPT_CONTEXT_POSIXMEHARDER (1 << 2) |
#define | POPT_CONTEXT_ARG_OPTS (1 << 4) |
Auto-generated help/usage | |
poptOption | poptAliasOptions [] |
Empty table marker to enable displaying popt alias/exec options. | |
Typedefs | |
typedef poptItem_s * | poptItem |
typedef poptContext_s * | poptContext |
typedef poptOption * | poptOption |
typedef void(* | poptCallbackType )(poptContext con, enum poptCallbackReason reason, const struct poptOption *opt, const char *arg, const void *data) |
Functions | |
poptContext | poptGetContext (const char *name, int argc, const char **argv, const struct poptOption *options, int flags) |
void | poptResetContext (poptContext con) |
int | poptGetNextOpt (poptContext con) |
const char * | poptGetOptArg (poptContext con) |
const char * | poptGetArg (poptContext con) |
const char * | poptPeekArg (poptContext con) |
const char ** | poptGetArgs (poptContext con) |
const char * | poptBadOption (poptContext con, int flags) |
poptContext | poptFreeContext (poptContext con) |
int | poptStuffArgs (poptContext con, const char **argv) |
int | poptAddAlias (poptContext con, struct poptAlias alias, int flags) |
int | poptAddItem (poptContext con, poptItem newItem, int flags) |
int | poptReadConfigFile (poptContext con, const char *fn) |
int | poptReadDefaultConfig (poptContext con, int useEnv) |
int | poptDupArgv (int argc, const char **argv, int *argcPtr, const char ***argvPtr) |
int | poptParseArgvString (const char *s, int *argcPtr, const char ***argvPtr) |
int | poptConfigFileToString (FILE *fp, char **argstrp, int flags) |
const char *const | poptStrerror (const int error) |
void | poptSetExecPath (poptContext con, const char *path, int allowAbsolute) |
void | poptPrintHelp (poptContext con, FILE *fp, int flags) |
void | poptPrintUsage (poptContext con, FILE *fp, int flags) |
void | poptSetOtherOptionHelp (poptContext con, const char *text) |
const char * | poptGetInvocationName (poptContext con) |
int | poptStrippedArgv (poptContext con, int argc, char **argv) |
|
table-wide callback... must be set first in table; arg points to callback, descrip points to callback data to pass Definition at line 25 of file popt.h. Referenced by findOption(), invokeCallbacksOPTION(), invokeCallbacksPOST(), and invokeCallbacksPRE(). |
|
arg will be converted to double Definition at line 35 of file popt.h. Referenced by getArgDescrip(), poptGetNextOpt(), singleOptionDefaultValue(), and singleOptionHelp(). |
|
arg will be converted to float Definition at line 34 of file popt.h. Referenced by getArgDescrip(), poptGetNextOpt(), singleOptionDefaultValue(), and singleOptionHelp(). |
|
arg points to table Definition at line 24 of file popt.h. Referenced by findOption(), invokeCallbacksOPTION(), invokeCallbacksPOST(), invokeCallbacksPRE(), maxArgWidth(), showShortOptions(), singleTableHelp(), and singleTableUsage(). |
|
arg will be converted to int Definition at line 22 of file popt.h. Referenced by db3New(), getArgDescrip(), poptGetNextOpt(), singleOptionDefaultValue(), and singleOptionHelp(). |
|
set the translation domain for this table and any included tables; arg points to the domain string Definition at line 29 of file popt.h. Referenced by getTableTranslationDomain(), itemUsage(), and singleTableUsage(). |
|
arg will be converted to long Definition at line 23 of file popt.h. Referenced by db3New(), getArgDescrip(), poptGetNextOpt(), singleOptionDefaultValue(), and singleOptionHelp(). |
|
Definition at line 37 of file popt.h. Referenced by db3New(), findOption(), getArgDescrip(), invokeCallbacksOPTION(), invokeCallbacksPOST(), invokeCallbacksPRE(), itemUsage(), maxArgWidth(), poptGetNextOpt(), showShortOptions(), singleOptionDefaultValue(), singleOptionHelp(), singleTableHelp(), and singleTableUsage(). |
|
no arg Definition at line 20 of file popt.h. Referenced by db3New(), getArgDescrip(), poptGetNextOpt(), singleOptionDefaultValue(), and singleOptionHelp(). |
|
arg will be saved as string Definition at line 21 of file popt.h. Referenced by configLine(), db3New(), getArgDescrip(), poptGetNextOpt(), singleOptionDefaultValue(), and singleOptionHelp(). |
|
arg should take value val Definition at line 33 of file popt.h. Referenced by db3New(), getArgDescrip(), poptGetNextOpt(), singleOptionDefaultValue(), and singleOptionHelp(). |
|
arg will be and'ed Definition at line 51 of file popt.h. Referenced by poptSaveInt(), poptSaveLong(), and singleOptionHelp(). |
|
don't show in help/usage Definition at line 45 of file popt.h. Referenced by configLine(), itemHelp(), itemUsage(), maxArgWidth(), poptAddAlias(), singleTableHelp(), and singleTableUsage(). |
|
Definition at line 55 of file popt.h. Referenced by poptSaveInt(), poptSaveLong(), and singleOptionHelp(). |
|
arg will be nand'ed |
|
arg will be nor'ed |
|
arg will be negated Definition at line 54 of file popt.h. Referenced by poptSaveInt(), poptSaveLong(), and singleOptionHelp(). |
|
allow -longoption Definition at line 44 of file popt.h. Referenced by findOption(), maxArgWidth(), poptGetNextOpt(), singleOptionHelp(), and singleOptionUsage(). |
|
arg may be missing Definition at line 47 of file popt.h. Referenced by maxArgWidth(), poptGetNextOpt(), and singleOptionHelp(). |
|
arg will be or'ed Definition at line 49 of file popt.h. Referenced by poptSaveInt(), poptSaveLong(), and singleOptionHelp(). |
|
show default value in --help Definition at line 63 of file popt.h. Referenced by singleOptionHelp(). |
|
strip this arg from argv(only applies to long args) Definition at line 46 of file popt.h. Referenced by poptGetNextOpt(). |
|
arg will be xor'ed Definition at line 53 of file popt.h. Referenced by poptSaveInt(), poptSaveLong(), and singleOptionHelp(). |
|
don't go into an alias Definition at line 99 of file popt.h. Referenced by doSetupMacro(), main(), parseDescription(), parseFiles(), parseScript(), poptBadOption(), and rpmcliInit(). |
|
clear arg bit(s) Definition at line 60 of file popt.h. Referenced by db3New(). |
|
set arg bit(s) Definition at line 58 of file popt.h. Referenced by db3New(), and prDbiOpenFlags(). |
|
continue callbacks with option Definition at line 76 of file popt.h. Referenced by invokeCallbacksOPTION(). |
|
use data from the include line, not the subtable Definition at line 73 of file popt.h. Referenced by findOption(). |
|
call the callback after parse Definition at line 72 of file popt.h. Referenced by invokeCallbacksPOST(). |
|
call the callback before parse Definition at line 71 of file popt.h. Referenced by invokeCallbacksPRE(). |
|
don't callback with option Definition at line 75 of file popt.h. Referenced by invokeCallbacksOPTION(). |
|
return args as options with value 0 Definition at line 109 of file popt.h. Referenced by poptGetNextOpt(). |
|
pay attention to argv[0] Definition at line 107 of file popt.h. Referenced by poptGetContext(), and showHelpIntro(). |
|
ignore exec expansions Definition at line 106 of file popt.h. Referenced by handleExec(). |
|
options can't follow args Definition at line 108 of file popt.h. Referenced by poptGetContext(), and poptGetNextOpt(). |
|
invalid numeric value Definition at line 88 of file popt.h. Referenced by poptGetNextOpt(), and poptStrerror(). |
|
mutually exclusive logical operations requested Definition at line 90 of file popt.h. Referenced by poptGetNextOpt(), poptSaveInt(), poptSaveLong(), and poptStrerror(). |
|
unknown option Definition at line 84 of file popt.h. Referenced by poptGetNextOpt(), and poptStrerror(). |
|
error in paramter quoting Definition at line 86 of file popt.h. Referenced by poptParseArgvString(), and poptStrerror(). |
|
errno set, use strerror(errno) Definition at line 87 of file popt.h. Referenced by execCommand(), poptReadConfigFile(), and poptStrerror(). |
|
memory allocation failed Definition at line 92 of file popt.h. Referenced by execCommand(), poptConfigFileToString(), poptDupArgv(), poptParseArgvString(), and poptStrerror(). |
|
missing argument Definition at line 83 of file popt.h. Referenced by execCommand(), poptDupArgv(), poptGetNextOpt(), and poptStrerror(). |
|
opt->arg should not be NULL Definition at line 91 of file popt.h. Referenced by poptConfigFileToString(), poptSaveInt(), poptSaveLong(), and poptStrerror(). |
|
aliases nested too deeply Definition at line 85 of file popt.h. Referenced by handleAlias(), poptStrerror(), and poptStuffArgs(). |
|
number too large or too small Definition at line 89 of file popt.h. Referenced by poptConfigFileToString(), poptGetNextOpt(), and poptStrerror(). |
|
Table callback prototype.
Definition at line 215 of file popt.h. Referenced by invokeCallbacksOPTION(), invokeCallbacksPOST(), and invokeCallbacksPRE(). |
|
|
|
A popt alias or exec argument for poptAddItem(). |
|
|
|
Add alias to context.
Definition at line 1080 of file popt.c. References alloca(), poptOption::arg, poptItem_s::argc, poptAlias::argc, poptOption::argDescrip, poptOption::argInfo, poptItem_s::argv, poptAlias::argv, poptOption::descrip, poptOption::longName, poptAlias::longName, poptItem_s::option, POPT_ARGFLAG_DOC_HIDDEN, poptAddItem(), poptOption::shortName, poptAlias::shortName, and poptOption::val. |
|
Add alias/exec item to context.
Definition at line 1099 of file popt.c. References poptContext_s::aliases, poptOption::arg, poptItem_s::argc, poptOption::argDescrip, poptOption::argInfo, poptItem_s::argv, poptOption::descrip, poptContext_s::execs, poptOption::longName, poptContext_s::numAliases, poptContext_s::numExecs, poptItem_s::option, poptOption::shortName, poptOption::val, and xstrdup(). Referenced by configLine(), and poptAddAlias(). |
|
Return the option which caused the most recent error.
Definition at line 1144 of file popt.c. References optionStackEntry::argv, optionStackEntry::next, poptContext_s::optionStack, poptContext_s::os, and POPT_BADOPTION_NOALIAS. Referenced by main(), and rpmcliInit(). |
|
Parses an input configuration file and returns an string that is a command line. For use with popt. You must free the return value when done. Given the file: # this line is ignored # this one too aaa bbb ccc bla=bla this_is = fdsafdas bad_line= reall bad line reall bad line = again 5555= 55555 test = with lots of spaces The result is: --aaa --bbb --ccc --bla="bla" --this_is="fdsafdas" --5555="55555" --test="with lots of spaces" Passing this to poptParseArgvString() yields an argv of: '--aaa' '--bbb' '--ccc' '--bla=bla' '--this_is=fdsafdas' '--5555=55555' '--test=with lots of spaces'
Definition at line 129 of file poptparse.c. References POPT_ERROR_MALLOC, POPT_ERROR_NULLARG, and POPT_ERROR_OVERFLOW. |
|
Duplicate an argument array. @note: The argument array is malloc'd as a single area, so only argv must be free'd.
Definition at line 14 of file poptparse.c. References argv, POPT_ERROR_MALLOC, and POPT_ERROR_NOARG. Referenced by handleAlias(), poptParseArgvString(), and poptStuffArgs(). |
|
Destroy context.
Definition at line 1036 of file popt.c. References _free(), poptContext_s::aliases, poptContext_s::appName, poptContext_s::arg_strip, optionStackEntry::argb, poptOption::argDescrip, poptItem_s::argv, poptOption::descrip, poptContext_s::execPath, poptContext_s::execs, poptContext_s::finalArgv, poptContext_s::leftovers, poptOption::longName, poptContext_s::numAliases, poptContext_s::numExecs, poptItem_s::option, poptContext_s::os, poptContext_s::otherHelp, PBM_FREE, and poptResetContext(). Referenced by doSetupMacro(), main(), parseDescription(), parseFiles(), parseScript(), and rpmcliFini(). |
|
Return next argument.
Definition at line 1004 of file popt.c. References poptContext_s::leftovers, poptContext_s::nextLeftover, and poptContext_s::numLeftovers. Referenced by main(), parseDescription(), parseFiles(), and parseScript(). |
|
Return remaining arguments.
Definition at line 1021 of file popt.c. References poptContext_s::leftovers, poptContext_s::nextLeftover, and poptContext_s::numLeftovers. Referenced by main(). |
|
Initialize popt context.
Definition at line 153 of file popt.c. References poptContext_s::aliases, poptContext_s::appName, poptContext_s::arg_strip, optionStackEntry::argb, optionStackEntry::argc, argv, optionStackEntry::argv, poptContext_s::execAbsolute, poptContext_s::execs, poptContext_s::finalArgv, poptContext_s::finalArgvAlloced, poptContext_s::flags, getenv(), invokeCallbacksPRE(), poptContext_s::leftovers, optionStackEntry::next, poptContext_s::numAliases, poptContext_s::numExecs, poptContext_s::options, poptContext_s::optionStack, poptContext_s::os, POPT_CONTEXT_KEEP_FIRST, and POPT_CONTEXT_POSIXMEHARDER. Referenced by doSetupMacro(), main(), parseDescription(), parseFiles(), parseScript(), and rpmcliInit(). |
|
Return argv[0] from context.
Definition at line 1207 of file popt.c. References optionStackEntry::argv, and poptContext_s::os. |
|
|
Return next option argument (if any).
Definition at line 992 of file popt.c. References optionStackEntry::nextArg, and poptContext_s::os. Referenced by doSetupMacro(), main(), and rpmcliInit(). |
|
Parse a string into an argument array. The parse allows ', ", and \ quoting, but ' is treated the same as " and both may include \ quotes. @note: The argument array is malloc'd as a single area, so only argv must be free'd.
Definition at line 57 of file poptparse.c. References alloca(), argv, POPT_ARGV_ARRAY_GROW_DELTA, POPT_ERROR_BADQUOTE, POPT_ERROR_MALLOC, and poptDupArgv(). Referenced by addOrAppendListEntry(), checkPassPhrase(), configLine(), doScript(), doSetupMacro(), handlePreambleTag(), ignoreDep(), makeGPGSignature(), makePGPSignature(), open_dso(), parseDescription(), parseFiles(), parseScript(), rpmfcExec(), and rpmGlob(). |
|
Peek at current argument.
Definition at line 1012 of file popt.c. References poptContext_s::leftovers, poptContext_s::nextLeftover, and poptContext_s::numLeftovers. Referenced by main(), parseDescription(), parseFiles(), and parseScript(). |
|
Print detailed description of options.
Definition at line 505 of file popthelp.c. References maxArgWidth(), poptContext_s::options, poptContext_s::otherHelp, POPT_, showHelpIntro(), and singleTableHelp(). Referenced by displayArgs(), and printUsage(). |
|
Print terse description of options.
Definition at line 708 of file popthelp.c. References poptContext_s::aliases, alloca(), poptContext_s::execs, itemUsage(), poptDone_s::maxopts, poptDone_s::nopts, poptContext_s::numAliases, poptContext_s::numExecs, poptContext_s::options, poptDone_s::opts, poptContext_s::otherHelp, showHelpIntro(), showShortOptions(), and singleTableUsage(). Referenced by displayArgs(), and printUsage(). |
|
Read configuration file.
Definition at line 95 of file poptconfig.c. References alloca(), configLine(), errno, POPT_ERROR_ERRNO, and SEEK_END. Referenced by main(), poptReadDefaultConfig(), and rpmcliInit(). |
|
Read default configuration from /etc/popt and $HOME/.popt.
Definition at line 166 of file poptconfig.c. References alloca(), poptContext_s::appName, getenv(), and poptReadConfigFile(). Referenced by main(), and rpmcliInit(). |
|
Reinitialize popt context.
Definition at line 211 of file popt.c. References _free(), poptContext_s::arg_strip, optionStackEntry::argb, cleanOSE(), optionStackEntry::currAlias, poptContext_s::doExec, poptContext_s::finalArgv, poptContext_s::finalArgvCount, optionStackEntry::next, optionStackEntry::nextArg, optionStackEntry::nextCharArg, poptContext_s::nextLeftover, poptContext_s::numLeftovers, poptContext_s::optionStack, poptContext_s::os, PBM_FREE, and poptContext_s::restLeftover. Referenced by poptFreeContext(). |
|
Limit search for executables.
Definition at line 52 of file popt.c. References _free(), poptContext_s::execAbsolute, poptContext_s::execPath, and xstrdup(). Referenced by main(), and rpmcliInit(). |
|
Provide text to replace default "[OPTION...]" in help/usage output.
Definition at line 736 of file popthelp.c. References _free(), poptContext_s::otherHelp, and xstrdup(). |
|
Return formatted error string for popt failure.
Definition at line 1156 of file popt.c. References errno, error(), POPT_, POPT_ERROR_BADNUMBER, POPT_ERROR_BADOPERATION, POPT_ERROR_BADOPT, POPT_ERROR_BADQUOTE, POPT_ERROR_ERRNO, POPT_ERROR_MALLOC, POPT_ERROR_NOARG, POPT_ERROR_NULLARG, POPT_ERROR_OPTSTOODEEP, POPT_ERROR_OVERFLOW, and strerror(). Referenced by doSetupMacro(), main(), and rpmcliInit(). |
|
Shuffle argv pointers to remove stripped args, returns new argc.
Definition at line 1213 of file popt.c. References poptContext_s::arg_strip, argv, and PBM_ISSET. |
|
Add arguments to context.
Definition at line 1184 of file popt.c. References optionStackEntry::argb, optionStackEntry::argc, argv, optionStackEntry::argv, optionStackEntry::currAlias, optionStackEntry::next, optionStackEntry::nextArg, optionStackEntry::nextCharArg, poptContext_s::optionStack, poptContext_s::os, POPT_ERROR_OPTSTOODEEP, POPT_OPTION_DEPTH, poptDupArgv(), and optionStackEntry::stuffed. Referenced by queryArgCallback(). |
|
Empty table marker to enable displaying popt alias/exec options.
|