popt
1.16
|
Go to the source code of this file.
Macros | |
#define | LLONG_MAX 9223372036854775807LL |
#define | LLONG_MIN (-LLONG_MAX - 1LL) |
#define | DBL_EPSILON 2.2204460492503131e-16 |
#define | POPT_ABS(a) ((((a) - 0.0) < DBL_EPSILON) ? -(a) : (a)) |
Functions | |
static char * | strerror (int errno) |
void | poptSetExecPath (poptContext con, const char *path, int allowAbsolute) |
static void | invokeCallbacksPRE (poptContext con, const struct poptOption *opt) |
static void | invokeCallbacksPOST (poptContext con, const struct poptOption *opt) |
static void | invokeCallbacksOPTION (poptContext con, const struct poptOption *opt, const struct poptOption *myOpt, const void *myData, int shorty) |
poptContext | poptGetContext (const char *name, int argc, const char **argv, const struct poptOption *options, unsigned int flags) |
static void | cleanOSE (struct optionStackEntry *os) |
void | poptResetContext (poptContext con) |
static int | handleExec (poptContext con, const char *longName, char shortName) |
static int | longOptionStrcmp (const struct poptOption *opt, const char *longName, size_t longNameLen) |
Compare long option for equality, adjusting for POPT_ARGFLAG_TOGGLE. More... | |
static int | handleAlias (poptContext con, const char *longName, size_t longNameLen, char shortName, const char *nextArg) |
static const char * | findProgramPath (const char *argv0) |
Return absolute path to executable by searching PATH. More... | |
static int | execCommand (poptContext con) |
static const struct poptOption * | findOption (const struct poptOption *opt, const char *longName, size_t longNameLen, char shortName, poptCallbackType *callback, const void **callbackData, unsigned int argInfo) |
static const char * | findNextArg (poptContext con, unsigned argx, int delete_arg) |
static const char * | expandNextArg (poptContext con, const char *s) |
static void | poptStripArg (poptContext con, int which) |
static int | _poptBitsNew (poptBits *bitsp) |
int | poptBitsAdd (poptBits bits, const char *s) |
int | poptBitsChk (poptBits bits, const char *s) |
int | poptBitsClr (poptBits bits) |
int | poptBitsDel (poptBits bits, const char *s) |
int | poptBitsIntersect (poptBits *ap, const poptBits b) |
int | poptBitsUnion (poptBits *ap, const poptBits b) |
int | poptBitsArgs (poptContext con, poptBits *ap) |
int | poptSaveBits (poptBits *bitsp, unsigned int argInfo, const char *s) |
Save a string into a bit set (experimental). More... | |
int | poptSaveString (const char ***argvp, unsigned int argInfo, const char *val) |
Add a string to an argv array. More... | |
int | poptSaveLongLong (long long *arg, unsigned int argInfo, long long aLongLong) |
Save a long long, performing logical operation with value. More... | |
int | poptSaveLong (long *arg, unsigned int argInfo, long aLong) |
Save a long, performing logical operation with value. More... | |
int | poptSaveInt (int *arg, unsigned int argInfo, long aLong) |
Save an integer, performing logical operation with value. More... | |
int | poptSaveShort (short *arg, unsigned int argInfo, long aLong) |
Save a short integer, performing logical operation with value. More... | |
static unsigned int | poptArgInfo (poptContext con, const struct poptOption *opt) |
Return argInfo field, handling POPT_ARGFLAG_TOGGLE overrides. More... | |
static int | poptParseInteger (long long *llp, unsigned int argInfo, const char *val) |
Parse an integer expression. More... | |
static int | poptSaveArg (poptContext con, const struct poptOption *opt) |
Save the option argument through the (*opt->arg) pointer. More... | |
int | poptGetNextOpt (poptContext con) |
char * | poptGetOptArg (poptContext con) |
const char * | poptGetArg (poptContext con) |
const char * | poptPeekArg (poptContext con) |
const char ** | poptGetArgs (poptContext con) |
static poptItem | poptFreeItems (poptItem items, int nitems) |
poptContext | poptFreeContext (poptContext con) |
int | poptAddAlias (poptContext con, struct poptAlias alias, int flags) |
int | poptAddItem (poptContext con, poptItem newItem, int flags) |
const char * | poptBadOption (poptContext con, unsigned int flags) |
const char * | poptStrerror (const int error) |
int | poptStuffArgs (poptContext con, const char **argv) |
const char * | poptGetInvocationName (poptContext con) |
int | poptStrippedArgv (poptContext con, int argc, char **argv) |
Variables | |
unsigned int | _poptArgMask = 0x000000FFU |
unsigned int | _poptGroupMask = 0x0000FF00U |
unsigned int | _poptBitsN = 1024U |
unsigned int | _poptBitsM = ((3U * 1024U ) / 2U) |
unsigned int | _poptBitsK = 16U |
static unsigned int | seed = 0 |
#define DBL_EPSILON 2.2204460492503131e-16 |
#define LLONG_MAX 9223372036854775807LL |
#define LLONG_MIN (-LLONG_MAX - 1LL) |
#define POPT_ABS | ( | a | ) | ((((a) - 0.0) < DBL_EPSILON) ? -(a) : (a)) |
|
static |
< opt->arg should not be NULL
Definition at line 773 of file popt.c.
References _POPT_BITS_K, _POPT_BITS_M, _POPT_BITS_N, _poptBitsK, _poptBitsM, _poptBitsN, PBM_ALLOC, and POPT_ERROR_NULLARG.
Referenced by poptBitsArgs(), poptBitsIntersect(), poptBitsUnion(), and poptSaveBits().
|
static |
Definition at line 216 of file popt.c.
References _free(), optionStackEntry::argb, optionStackEntry::argv, optionStackEntry::nextArg, and PBM_FREE.
Referenced by poptGetNextOpt(), and poptResetContext().
|
static |
< errno set, use strerror(errno)
< missing argument
< missing argument
< memory allocation failed
< missing argument
Definition at line 482 of file popt.c.
References poptItem_s::argc, poptItem_s::argv, poptContext_s::doExec, poptContext_s::execAbsolute, poptContext_s::execPath, poptContext_s::finalArgv, poptContext_s::finalArgvCount, findProgramPath(), poptContext_s::leftovers, poptContext_s::numLeftovers, POPT_ERROR_ERRNO, POPT_ERROR_MALLOC, POPT_ERROR_NOARG, and stpcpy().
Referenced by poptGetNextOpt().
|
static |
Definition at line 694 of file popt.c.
References findNextArg(), and stpcpy().
Referenced by poptGetNextOpt().
|
static |
Definition at line 654 of file popt.c.
References optionStackEntry::argb, optionStackEntry::argc, optionStackEntry::argv, optionStackEntry::next, poptContext_s::optionStack, poptContext_s::os, PBM_ALLOC, PBM_ISSET, and PBM_SET.
Referenced by expandNextArg().
|
static |
< allow -longoption
< arg points to table
< table-wide callback... must be set first in table; arg points to callback, descrip points to callback data to pass
< allow -longoption
< allow -longoption
< use data from the include line, not the subtable
Definition at line 585 of file popt.c.
References poptOption::arg, poptOption::argInfo, poptArg_u::cb, CBF_ISSET, poptOption::descrip, F_ISSET, LF_ISSET, poptOption::longName, longOptionStrcmp(), POPT_ARG_CALLBACK, POPT_ARG_INCLUDE_TABLE, poptArgType, poptSubstituteHelpI18N, poptArg_u::ptr, and poptOption::shortName.
Referenced by poptGetNextOpt().
|
static |
|
static |
< aliases nested too deeply
Definition at line 359 of file popt.c.
References poptContext_s::aliases, optionStackEntry::argb, optionStackEntry::argc, poptItem_s::argc, optionStackEntry::argv, poptItem_s::argv, optionStackEntry::currAlias, poptOption::longName, longOptionStrcmp(), optionStackEntry::next, optionStackEntry::nextArg, optionStackEntry::nextCharArg, poptContext_s::numAliases, poptItem_s::option, poptContext_s::optionStack, poptContext_s::os, POPT_ERROR_OPTSTOODEEP, POPT_OPTION_DEPTH, poptDupArgv(), poptOption::shortName, and optionStackEntry::stuffed.
Referenced by poptGetNextOpt().
|
static |
< ignore exec expansions
Definition at line 260 of file popt.c.
References poptContext_s::doExec, poptContext_s::execs, poptContext_s::finalArgv, poptContext_s::finalArgvAlloced, poptContext_s::finalArgvCount, poptContext_s::flags, poptOption::longName, poptContext_s::numExecs, poptItem_s::option, POPT_CONTEXT_NO_EXEC, poptOption::shortName, and stpcpy().
Referenced by poptGetNextOpt().
|
static |
< arg points to table
< table-wide callback... must be set first in table; arg points to callback, descrip points to callback data to pass
< don't callback with option
< continue callbacks with option
Definition at line 123 of file popt.c.
References poptOption::arg, poptArg_u::cb, CBF_ISSET, poptOption::descrip, poptOption::longName, optionStackEntry::nextArg, poptContext_s::os, POPT_ARG_CALLBACK, POPT_ARG_INCLUDE_TABLE, POPT_CALLBACK_REASON_OPTION, poptArgType, poptSubstituteHelpI18N, poptArg_u::ptr, and poptOption::shortName.
Referenced by poptGetNextOpt().
|
static |
< arg points to table
< table-wide callback... must be set first in table; arg points to callback, descrip points to callback data to pass
< call the callback after parse
Definition at line 99 of file popt.c.
References poptOption::arg, poptArg_u::cb, CBF_ISSET, poptOption::descrip, poptOption::longName, poptArg_u::opt, POPT_ARG_CALLBACK, POPT_ARG_INCLUDE_TABLE, POPT_CALLBACK_REASON_POST, poptArgType, poptSubstituteHelpI18N, poptArg_u::ptr, and poptOption::shortName.
Referenced by poptGetNextOpt().
|
static |
< arg points to table
< table-wide callback... must be set first in table; arg points to callback, descrip points to callback data to pass
< call the callback before parse
Definition at line 75 of file popt.c.
References poptOption::arg, poptArg_u::cb, CBF_ISSET, poptOption::descrip, poptOption::longName, poptArg_u::opt, POPT_ARG_CALLBACK, POPT_ARG_INCLUDE_TABLE, POPT_CALLBACK_REASON_PRE, poptArgType, poptSubstituteHelpI18N, poptArg_u::ptr, and poptOption::shortName.
Referenced by poptGetContext().
|
static |
Compare long option for equality, adjusting for POPT_ARGFLAG_TOGGLE.
opt | option |
longName | arg option |
longNameLen | arg option length |
< permit –[no]opt prefix toggle
Definition at line 327 of file popt.c.
References F_ISSET, and poptOption::longName.
Referenced by findOption(), and handleAlias().
int poptAddAlias | ( | poptContext | con, |
struct poptAlias | alias, | ||
int | flags | ||
) |
Add alias to context.
con | context |
alias | alias to add |
flags | (unused) |
< don't show in help/usage
Definition at line 1647 of file popt.c.
References poptAlias::argc, poptAlias::argv, poptAlias::longName, POPT_ARGFLAG_DOC_HIDDEN, poptAddItem(), and poptAlias::shortName.
int poptAddItem | ( | poptContext | con, |
poptItem | newItem, | ||
int | flags | ||
) |
Add alias/exec item to context.
con | context |
newItem | alias/exec item to add |
flags | 0 for alias, 1 for exec |
Definition at line 1668 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 poptAddAlias(), and poptConfigLine().
|
static |
Return argInfo field, handling POPT_ARGFLAG_TOGGLE overrides.
con | context |
opt | option |
< permit –[no]opt prefix toggle
< arg will be xor'ed
< arg will be or'ed
< arg will be and'ed
< arg will be xor'ed
< arg will be or'ed
< arg will be and'ed
< arg will be negated
Definition at line 1141 of file popt.c.
References poptOption::argInfo, optionStackEntry::argv, LF_ISSET, poptOption::longName, optionStackEntry::next, poptContext_s::os, POPT_ARGFLAG_AND, POPT_ARGFLAG_NOT, and POPT_ARGFLAG_OR.
Referenced by poptGetNextOpt(), and poptSaveArg().
const char* poptBadOption | ( | poptContext | con, |
unsigned int | flags | ||
) |
Return the option which caused the most recent error.
con | context |
flags |
< don't go into an alias
Definition at line 1713 of file popt.c.
References optionStackEntry::argc, optionStackEntry::argv, poptItem_s::argv, poptContext_s::doExec, optionStackEntry::next, optionStackEntry::nextCharArg, poptContext_s::optionStack, poptContext_s::os, and POPT_BADOPTION_NOALIAS.
int poptBitsAdd | ( | poptBits | bits, |
const char * | s | ||
) |
< opt->arg should not be NULL
Definition at line 795 of file popt.c.
References _poptBitsK, _poptBitsM, PBM_SET, POPT_ERROR_NULLARG, and poptJlu32lpair().
Referenced by poptBitsArgs(), and poptSaveBits().
int poptBitsArgs | ( | poptContext | con, |
poptBits * | ap | ||
) |
< opt->arg should not be NULL
Definition at line 907 of file popt.c.
References _poptBitsNew(), poptContext_s::leftovers, poptContext_s::nextLeftover, poptContext_s::numLeftovers, POPT_ERROR_NULLARG, and poptBitsAdd().
int poptBitsChk | ( | poptBits | bits, |
const char * | s | ||
) |
< opt->arg should not be NULL
Definition at line 814 of file popt.c.
References _poptBitsK, _poptBitsM, PBM_ISSET, POPT_ERROR_NULLARG, and poptJlu32lpair().
Referenced by poptSaveBits().
int poptBitsClr | ( | poptBits | bits | ) |
< opt->arg should not be NULL
Definition at line 837 of file popt.c.
References __PBM_IX, __PBM_NBITS, _poptBitsM, and POPT_ERROR_NULLARG.
int poptBitsDel | ( | poptBits | bits, |
const char * | s | ||
) |
< opt->arg should not be NULL
Definition at line 848 of file popt.c.
References _poptBitsK, _poptBitsM, PBM_CLR, POPT_ERROR_NULLARG, and poptJlu32lpair().
Referenced by poptSaveBits().
< opt->arg should not be NULL
Definition at line 867 of file popt.c.
References __PBM_BITS, __PBM_IX, _poptBitsM, _poptBitsNew(), and POPT_ERROR_NULLARG.
< opt->arg should not be NULL
Definition at line 887 of file popt.c.
References __PBM_BITS, __PBM_IX, _poptBitsM, _poptBitsNew(), and POPT_ERROR_NULLARG.
poptContext poptFreeContext | ( | poptContext | con | ) |
Destroy context.
con | context |
Definition at line 1624 of file popt.c.
References _free(), poptContext_s::aliases, poptContext_s::appName, poptContext_s::arg_strip, optionStackEntry::argb, poptContext_s::execPath, poptContext_s::execs, poptContext_s::finalArgv, poptContext_s::leftovers, poptContext_s::numAliases, poptContext_s::numExecs, poptContext_s::os, poptContext_s::otherHelp, PBM_FREE, poptFreeItems(), and poptResetContext().
Referenced by displayArgs(), and poptFini().
Definition at line 1605 of file popt.c.
References _free(), poptOption::argDescrip, poptItem_s::argv, poptOption::descrip, poptOption::longName, and poptItem_s::option.
Referenced by poptFreeContext().
const char* poptGetArg | ( | poptContext | con | ) |
Return next argument.
con | context |
Definition at line 1574 of file popt.c.
References poptContext_s::leftovers, poptContext_s::nextLeftover, and poptContext_s::numLeftovers.
const char** poptGetArgs | ( | poptContext | con | ) |
Return remaining arguments.
con | context |
Definition at line 1590 of file popt.c.
References poptContext_s::leftovers, poptContext_s::nextLeftover, and poptContext_s::numLeftovers.
poptContext poptGetContext | ( | const char * | name, |
int | argc, | ||
const char ** | argv, | ||
const struct poptOption * | options, | ||
unsigned int | flags | ||
) |
Initialize popt context.
name | context name (usually argv[0] program name) |
argc | no. of arguments |
argv | argument array |
options | address of popt option table |
flags | or'd POPT_CONTEXT_* bits |
< pay attention to argv[0]
< options can't follow args
Definition at line 169 of file popt.c.
References poptContext_s::aliases, poptContext_s::appName, poptContext_s::arg_strip, optionStackEntry::argb, optionStackEntry::argc, optionStackEntry::argv, poptContext_s::execAbsolute, poptContext_s::execs, poptContext_s::finalArgv, poptContext_s::finalArgvAlloced, poptContext_s::flags, 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, POPT_CONTEXT_POSIXMEHARDER, and xstrdup().
Referenced by poptInit().
const char* poptGetInvocationName | ( | poptContext | con | ) |
Return argv[0] from context.
con | context |
Definition at line 1788 of file popt.c.
References optionStackEntry::argv, and poptContext_s::os.
int poptGetNextOpt | ( | poptContext | con | ) |
Return value of next option found.
con | context |
< unknown option
< options can't follow args
< return args as options with value 0
< unknown option
< allow -longoption
< allow -longoption
< unknown option
< strip this arg from argv(only applies to long args)
< unknown option
< unknown option
< no arg
< mutually exclusive logical operations requested
< arg should take value val
< mutually exclusive logical operations requested
< no arg
< arg may be missing
< missing argument
< strip this arg from argv(only applies to long args)
< arg may be missing
< arg should take value val
< allow -longoption
< no arg
< arg should take value val
< no arg
Definition at line 1309 of file popt.c.
References _free(), poptOption::arg, optionStackEntry::argb, optionStackEntry::argc, poptOption::argInfo, optionStackEntry::argv, cleanOSE(), poptContext_s::doExec, execCommand(), expandNextArg(), F_ISSET, poptContext_s::finalArgv, poptContext_s::finalArgvAlloced, poptContext_s::finalArgvCount, findOption(), poptContext_s::flags, handleAlias(), handleExec(), invokeCallbacksOPTION(), invokeCallbacksPOST(), poptContext_s::leftovers, LF_ISSET, poptOption::longName, poptContext_s::maincall, optionStackEntry::next, optionStackEntry::nextArg, optionStackEntry::nextCharArg, poptContext_s::numLeftovers, poptContext_s::options, poptContext_s::optionStack, poptContext_s::os, PBM_ISSET, POPT_ARG_NONE, POPT_ARG_VAL, POPT_ARGFLAG_ONEDASH, POPT_CONTEXT_ARG_OPTS, POPT_CONTEXT_POSIXMEHARDER, POPT_ERROR_BADOPERATION, POPT_ERROR_BADOPT, POPT_ERROR_NOARG, poptArgInfo(), poptArgType, poptSaveArg(), poptSaveInt(), poptStripArg(), poptContext_s::restLeftover, poptOption::shortName, stpcpy(), poptOption::val, and xstrdup().
char* poptGetOptArg | ( | poptContext | con | ) |
Return next option argument (if any).
con | context |
Definition at line 1564 of file popt.c.
References optionStackEntry::nextArg, and poptContext_s::os.
|
static |
Parse an integer expression.
*llp | integer expression value |
argInfo | integer expression type |
val | integer expression string |
< invalid numeric value
Definition at line 1171 of file popt.c.
References POPT_ERROR_BADNUMBER.
Referenced by poptSaveArg().
const char* poptPeekArg | ( | poptContext | con | ) |
Peek at current argument.
con | context |
Definition at line 1582 of file popt.c.
References poptContext_s::leftovers, poptContext_s::nextLeftover, and poptContext_s::numLeftovers.
void poptResetContext | ( | poptContext | con | ) |
Reinitialize popt context.
con | context |
Definition at line 226 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().
|
static |
Save the option argument through the (*opt->arg) pointer.
con | context |
opt | option |
< arg ==> bit set
< dupe'd arg appended to realloc'd argv array.
< arg will be saved as string
< arg ==> int
< arg ==> short
< arg ==> long
< arg ==> long long
< arg ==> long long
< number too large or too small
< arg ==> long
< number too large or too small
< arg ==> int
< number too large or too small
< arg ==> short
< number too large or too small
< arg ==> float
< arg ==> double
< number too large or too small
< invalid numeric value
< arg ==> double
< arg ==> float
< number too large or too small
< EXPERIMENTAL: return (*arg) (argc, argv)
Definition at line 1195 of file popt.c.
References poptOption::arg, poptOption::argInfo, poptArg_u::argv, DBL_EPSILON, poptArg_u::doublep, poptArg_u::floatp, poptArg_u::intp, LLONG_MAX, LLONG_MIN, poptArg_u::longlongp, poptArg_u::longp, poptContext_s::maincall, optionStackEntry::nextArg, poptContext_s::os, POPT_, POPT_ABS, POPT_ARG_ARGV, POPT_ARG_BITSET, POPT_ARG_DOUBLE, POPT_ARG_FLOAT, POPT_ARG_INT, POPT_ARG_LONG, POPT_ARG_LONGLONG, POPT_ARG_MAINCALL, POPT_ARG_SHORT, POPT_ARG_STRING, POPT_ERROR_BADNUMBER, POPT_ERROR_OVERFLOW, poptArgInfo(), poptArgType, poptParseInteger(), poptSaveBits(), poptSaveInt(), poptSaveLong(), poptSaveLongLong(), poptSaveShort(), poptSaveString(), poptArg_u::ptr, poptArg_u::shortp, and xstrdup().
Referenced by poptGetNextOpt().
int poptSaveBits | ( | poptBits * | bitsp, |
unsigned int | argInfo, | ||
const char * | s | ||
) |
Save a string into a bit set (experimental).
*bits | bit set (lazily malloc'd if NULL) |
argInfo | logical operation (see POPT_ARGFLAG_*) |
s | string to add to bit set |
< opt->arg should not be NULL
Definition at line 928 of file popt.c.
References _free(), _poptBitsNew(), POPT_ERROR_NULLARG, poptBitsAdd(), poptBitsChk(), poptBitsDel(), and xstrdup().
Referenced by poptSaveArg().
int poptSaveInt | ( | int * | arg, |
unsigned int | argInfo, | ||
long | aLong | ||
) |
Save an integer, performing logical operation with value.
arg | integer pointer, aligned on int boundary. |
argInfo | logical operation (see POPT_ARGFLAG_*) |
aLong | value to use |
< opt->arg should not be NULL
< random value in [1,arg]
< mutually exclusive logical operations requested
< arg will be negated
< arg will be or'ed
< arg will be and'ed
< arg will be xor'ed
< arg will be or'ed
< arg will be and'ed
< arg will be xor'ed
< mutually exclusive logical operations requested
Definition at line 1066 of file popt.c.
References LF_ISSET, POPT_ARGFLAG_AND, POPT_ARGFLAG_OR, POPT_ARGFLAG_XOR, POPT_ERROR_BADOPERATION, POPT_ERROR_NULLARG, and seed.
Referenced by poptGetNextOpt(), and poptSaveArg().
int poptSaveLong | ( | long * | arg, |
unsigned int | argInfo, | ||
long | aLong | ||
) |
Save a long, performing logical operation with value.
arg | integer pointer, aligned on int boundary. |
argInfo | logical operation (see POPT_ARGFLAG_*) |
aLong | value to use |
< opt->arg should not be NULL
< random value in [1,arg]
< mutually exclusive logical operations requested
< arg will be negated
< arg will be or'ed
< arg will be and'ed
< arg will be xor'ed
< arg will be or'ed
< arg will be and'ed
< arg will be xor'ed
< mutually exclusive logical operations requested
Definition at line 1033 of file popt.c.
References LF_ISSET, POPT_ARGFLAG_AND, POPT_ARGFLAG_OR, POPT_ARGFLAG_XOR, POPT_ERROR_BADOPERATION, POPT_ERROR_NULLARG, and seed.
Referenced by poptSaveArg().
int poptSaveLongLong | ( | long long * | arg, |
unsigned int | argInfo, | ||
long long | aLongLong | ||
) |
Save a long long, performing logical operation with value.
arg | integer pointer, aligned on int boundary. |
argInfo | logical operation (see POPT_ARGFLAG_*) |
aLongLong | value to use |
< opt->arg should not be NULL
< random value in [1,arg]
< mutually exclusive logical operations requested
< arg will be negated
< arg will be or'ed
< arg will be and'ed
< arg will be xor'ed
< arg will be or'ed
< arg will be and'ed
< arg will be xor'ed
< mutually exclusive logical operations requested
Definition at line 988 of file popt.c.
References LF_ISSET, POPT_ARGFLAG_AND, POPT_ARGFLAG_OR, POPT_ARGFLAG_XOR, POPT_ERROR_BADOPERATION, POPT_ERROR_NULLARG, and seed.
Referenced by poptSaveArg().
int poptSaveShort | ( | short * | arg, |
unsigned int | argInfo, | ||
long | aLong | ||
) |
Save a short integer, performing logical operation with value.
arg | short pointer, aligned on short boundary. |
argInfo | logical operation (see POPT_ARGFLAG_*) |
aLong | value to use |
< opt->arg should not be NULL
< random value in [1,arg]
< mutually exclusive logical operations requested
< arg will be negated
< arg will be or'ed
< arg will be and'ed
< arg will be xor'ed
< arg will be or'ed
< arg will be and'ed
< arg will be xor'ed
< mutually exclusive logical operations requested
Definition at line 1099 of file popt.c.
References LF_ISSET, POPT_ARGFLAG_AND, POPT_ARGFLAG_OR, POPT_ARGFLAG_XOR, POPT_ERROR_BADOPERATION, POPT_ERROR_NULLARG, and seed.
Referenced by poptSaveArg().
int poptSaveString | ( | const char *** | argvp, |
unsigned int | argInfo, | ||
const char * | val | ||
) |
Add a string to an argv array.
*argvp | argv array |
argInfo | (unused) |
val | string arg to add (using strdup) |
< opt->arg should not be NULL
Definition at line 963 of file popt.c.
References optionStackEntry::argc, POPT_ERROR_NULLARG, xrealloc(), and xstrdup().
Referenced by poptSaveArg().
void poptSetExecPath | ( | poptContext | con, |
const char * | path, | ||
int | allowAbsolute | ||
) |
Limit search for executables.
con | context |
path | single path to search for executables |
allowAbsolute | absolute paths only? |
Definition at line 66 of file popt.c.
References _free(), poptContext_s::execAbsolute, poptContext_s::execPath, and xstrdup().
const char* poptStrerror | ( | const int | error | ) |
Return formatted error string for popt failure.
error | popt error |
< missing argument
< unknown option
< mutually exclusive logical operations requested
< opt->arg should not be NULL
< aliases nested too deeply
< error in paramter quoting
< invalid numeric value
< number too large or too small
< memory allocation failed
< config file failed sanity test
< errno set, use strerror(errno)
< no context
Definition at line 1730 of file popt.c.
References POPT_, POPT_ERROR_BADCONFIG, POPT_ERROR_BADNUMBER, POPT_ERROR_BADOPERATION, POPT_ERROR_BADOPT, POPT_ERROR_BADQUOTE, POPT_ERROR_ERRNO, POPT_ERROR_MALLOC, POPT_ERROR_NOARG, POPT_ERROR_NOCONTEXT, POPT_ERROR_NULLARG, POPT_ERROR_OPTSTOODEEP, POPT_ERROR_OVERFLOW, and strerror().
|
static |
Definition at line 751 of file popt.c.
References poptContext_s::arg_strip, optionStackEntry::argc, poptContext_s::optionStack, PBM_ALLOC, and PBM_SET.
Referenced by poptGetNextOpt().
int poptStrippedArgv | ( | poptContext | con, |
int | argc, | ||
char ** | argv | ||
) |
Shuffle argv pointers to remove stripped args, returns new argc.
con | context |
argc | no. of args |
argv | arg vector |
Definition at line 1793 of file popt.c.
References poptContext_s::arg_strip, optionStackEntry::argc, optionStackEntry::argv, and PBM_ISSET.
int poptStuffArgs | ( | poptContext | con, |
const char ** | argv | ||
) |
Add arguments to context.
con | context |
argv | argument array, NULL terminated |
< no context
< aliases nested too deeply
Definition at line 1762 of file popt.c.
References optionStackEntry::argb, optionStackEntry::argc, optionStackEntry::argv, optionStackEntry::currAlias, optionStackEntry::next, optionStackEntry::nextArg, optionStackEntry::nextCharArg, poptContext_s::optionStack, poptContext_s::os, POPT_ERROR_NOCONTEXT, POPT_ERROR_OPTSTOODEEP, POPT_OPTION_DEPTH, poptDupArgv(), and optionStackEntry::stuffed.
|
static |
unsigned int _poptBitsK = 16U |
Definition at line 770 of file popt.c.
Referenced by _poptBitsNew(), poptBitsAdd(), poptBitsChk(), and poptBitsDel().
unsigned int _poptBitsM = ((3U * 1024U ) / 2U) |
Definition at line 768 of file popt.c.
Referenced by _poptBitsNew(), poptBitsAdd(), poptBitsChk(), poptBitsClr(), poptBitsDel(), poptBitsIntersect(), and poptBitsUnion().
unsigned int _poptBitsN = 1024U |
Definition at line 766 of file popt.c.
Referenced by _poptBitsNew().
|
static |
Definition at line 986 of file popt.c.
Referenced by poptSaveInt(), poptSaveLong(), poptSaveLongLong(), and poptSaveShort().