Use it to control policy and module file checks. The default settings
correspond to the current behavior: disallow path separators in policy
names, but allow them in module names; verify ownership and permissions
for both policy files and modules.
git-svn-id: svn+ssh://svn.openpam.org/svn/openpam/trunk@594 185d5e19-27fe-0310-9dcf-9bff6b9f3609
but within a double-quoted string, it is a line continuation.
git-svn-id: svn+ssh://svn.openpam.org/svn/openpam/trunk@585 185d5e19-27fe-0310-9dcf-9bff6b9f3609
strings. This reveals a bug relating to line continuations within
double-quoted strings.
git-svn-id: svn+ssh://svn.openpam.org/svn/openpam/trunk@584 185d5e19-27fe-0310-9dcf-9bff6b9f3609
this is adequately documented in openpam_readlinev(3).
git-svn-id: svn+ssh://svn.openpam.org/svn/openpam/trunk@581 185d5e19-27fe-0310-9dcf-9bff6b9f3609
Get libt.a from pwd, not srcdir. Technically, it's in builddir, but
builddir is always equal to pwd.
List libt.a before libpam.la, in case we start using surrogates and
want to share them between tests.
git-svn-id: svn+ssh://svn.openpam.org/svn/openpam/trunk@572 185d5e19-27fe-0310-9dcf-9bff6b9f3609
Fix line continuation (newline is stripped, not quoted)
Further improve the documentation
git-svn-id: svn+ssh://svn.openpam.org/svn/openpam/trunk@567 185d5e19-27fe-0310-9dcf-9bff6b9f3609
for double quotes). Add several more. Also add a test of line
continuations (backslash-newline). Several of these tests fail due to
discrepancies between openpam_readword() and POSIX quoting rules.
git-svn-id: svn+ssh://svn.openpam.org/svn/openpam/trunk@564 185d5e19-27fe-0310-9dcf-9bff6b9f3609
expect it to generate a BEL character, and I might at some point
decide to implement that. Instead, use \z, which has no special
meaning in any C-like language I know of.
git-svn-id: svn+ssh://svn.openpam.org/svn/openpam/trunk@563 185d5e19-27fe-0310-9dcf-9bff6b9f3609
but I can't quite decide whether the code or the test is incorrect.
git-svn-id: svn+ssh://svn.openpam.org/svn/openpam/trunk@562 185d5e19-27fe-0310-9dcf-9bff6b9f3609
or error messages that are shorter than what we printed.
git-svn-id: svn+ssh://svn.openpam.org/svn/openpam/trunk@558 185d5e19-27fe-0310-9dcf-9bff6b9f3609
before running it. End it with a carriage return so that any actual
output will overwrite it.
git-svn-id: svn+ssh://svn.openpam.org/svn/openpam/trunk@556 185d5e19-27fe-0310-9dcf-9bff6b9f3609
If the first character encountered is a quote, immediately allocate a
single byte. This way, if the word we've started reading is actually
an empty quoted string ('' or ""), we correctly return an empty string
instead of NULL.
git-svn-id: svn+ssh://svn.openpam.org/svn/openpam/trunk@553 185d5e19-27fe-0310-9dcf-9bff6b9f3609
trailing whitespace, openpam_readword() should *always* push back the
last character read (which is a no-op in the EOF case).
git-svn-id: svn+ssh://svn.openpam.org/svn/openpam/trunk@550 185d5e19-27fe-0310-9dcf-9bff6b9f3609
string, reallocating the string if necessary.
Add an openpam_readword() function that reads a single word from a
file according to the usual shell quoting rules.
Add an openpam_readlinev() function that uses openpam_readword() to
read an entire line and return a list of the words it contained.
Rewrite openpam_parse_chain() using openpam_readlinev(), which greatly
simplifies the code and ensures correct parsing of module option.
Thanks to Maëlle Lesage for pointing out the issue and writing an
early version of what became the main loop in openpam_readword().
git-svn-id: svn+ssh://svn.openpam.org/svn/openpam/trunk@547 185d5e19-27fe-0310-9dcf-9bff6b9f3609