]> eyrie.org Git - kerberos/krb5-strength.git/log
kerberos/krb5-strength.git
10 years agoImported Upstream version 2.1 upstream/2.1
Russ Allbery [Fri, 11 Oct 2013 00:09:00 +0000 (17:09 -0700)]
Imported Upstream version 2.1

10 years agoRelease 2.1 release/2.1
Russ Allbery [Fri, 11 Oct 2013 00:06:30 +0000 (17:06 -0700)]
Release 2.1

10 years agoAdd NEWS entries for TinyCDB build fixes
Russ Allbery [Tue, 8 Oct 2013 19:12:30 +0000 (12:12 -0700)]
Add NEWS entries for TinyCDB build fixes

10 years agoUpdate some of the password rejection error messages
Russ Allbery [Tue, 8 Oct 2013 19:10:55 +0000 (12:10 -0700)]
Update some of the password rejection error messages

Refer to "list of common passwords" when rejecting passwords due
to presence in a CDB dictionary, and say that passwords based on
the principal are based on "username or principal" to be more
technically accurate.

10 years agoSimplify TinyCDB Autoconf probes
Russ Allbery [Tue, 8 Oct 2013 18:33:40 +0000 (11:33 -0700)]
Simplify TinyCDB Autoconf probes

Refactor common code and ensure that rra_use_CDB is always set
properly.

10 years agoFix compilation without TinyCDB
Russ Allbery [Tue, 8 Oct 2013 18:32:52 +0000 (11:32 -0700)]
Fix compilation without TinyCDB

The build without TinyCDB support was apparently not retested
after some refactoring, so some functions had the wrong signatures
or were not properly prototyped.

10 years agoFix handling of --with-tinycdb
Russ Allbery [Tue, 8 Oct 2013 18:19:40 +0000 (11:19 -0700)]
Fix handling of --with-tinycdb

Avoid adding -Lyes/lib and -Iyes/include to flags when given
--with-tinydb.  All this should do is make building with TinyCDB
mandatory.

10 years agoFlesh out test suite requirements in README
Russ Allbery [Tue, 8 Oct 2013 18:04:42 +0000 (11:04 -0700)]
Flesh out test suite requirements in README

10 years agoUpdate BLURB in README based on the new Debian description
Russ Allbery [Tue, 8 Oct 2013 05:23:26 +0000 (22:23 -0700)]
Update BLURB in README based on the new Debian description

The previous version was rather outdated and didn't talk about
all of the plugin's capabilities.

10 years agoImported Upstream version 2.0 upstream/2.0
Russ Allbery [Mon, 7 Oct 2013 23:21:06 +0000 (16:21 -0700)]
Imported Upstream version 2.0

10 years agoFix distribution contents for the release release/2.0
Russ Allbery [Mon, 7 Oct 2013 19:40:13 +0000 (12:40 -0700)]
Fix distribution contents for the release

It's been a while and a lot of changes, so there were various
places where the contents of the distribution as defined by
Makefile.am were out of date.

10 years agoRemove now-unneeded strlcat and strlcpy .gitignore entries
Russ Allbery [Mon, 7 Oct 2013 23:15:13 +0000 (16:15 -0700)]
Remove now-unneeded strlcat and strlcpy .gitignore entries

These tests are no longer included.

10 years agoFix logic to find the test CDB database
Russ Allbery [Mon, 7 Oct 2013 23:09:35 +0000 (16:09 -0700)]
Fix logic to find the test CDB database

This is in the source package, not built dynamically as part of
the test suite, so we need to use test_file_path to find it.

10 years agoAdjust the test suite for being run with a weird umask
Russ Allbery [Mon, 7 Oct 2013 19:46:33 +0000 (12:46 -0700)]
Adjust the test suite for being run with a weird umask

If the test suite is run with a read-only source distribution, we
create files that aren't writable and then various things go awry.
Force permissions in a few key places to correct the problem.

10 years agoRelease 2.0
Russ Allbery [Mon, 7 Oct 2013 19:37:24 +0000 (12:37 -0700)]
Release 2.0

10 years agoRewrite LICENSE in Debian copyright-format 1.0
Russ Allbery [Thu, 3 Oct 2013 04:33:10 +0000 (21:33 -0700)]
Rewrite LICENSE in Debian copyright-format 1.0

10 years agoFix copyright dates and cracklib/LICENCE reference in README
Russ Allbery [Thu, 3 Oct 2013 04:32:52 +0000 (21:32 -0700)]
Fix copyright dates and cracklib/LICENCE reference in README

10 years agoRemove a cdbmake-wordlist comment that confused build-license
Russ Allbery [Thu, 3 Oct 2013 04:32:31 +0000 (21:32 -0700)]
Remove a cdbmake-wordlist comment that confused build-license

One copyright statemnet per file works better.

10 years agoAdd a license statement to the heimdal-strength documentation
Russ Allbery [Thu, 3 Oct 2013 04:32:21 +0000 (21:32 -0700)]
Add a license statement to the heimdal-strength documentation

10 years agoAdd more standard sections to README
Russ Allbery [Thu, 3 Oct 2013 04:20:35 +0000 (21:20 -0700)]
Add more standard sections to README

Add SUPPORT, SOURCE REPOSITORY, and LICENSE sections.

10 years agoFix a clang analysis error in the CDB code
Russ Allbery [Thu, 3 Oct 2013 04:09:45 +0000 (21:09 -0700)]
Fix a clang analysis error in the CDB code

The code was actually safe, but it wasn't clear enough for clang.
Add an explicit initialization to make the code clearer.

10 years agoAdd additional checks for passwords based on principals
Russ Allbery [Thu, 3 Oct 2013 04:05:56 +0000 (21:05 -0700)]
Add additional checks for passwords based on principals

The check for passwords based on the principal now check for passwords
formed by reversing or adding numbers before and after each separate
component of the principal.  This will catch passwords based on the
realm or components of the realm, which will often catch passwords
based on the name of the local institution.

10 years agoRename generic tests to principal tests
Russ Allbery [Thu, 3 Oct 2013 03:07:08 +0000 (20:07 -0700)]
Rename generic tests to principal tests

They're actually tests for passwords based on a principal, so name
them accordingly.

10 years agoDocument that checking against the principal is always done
Russ Allbery [Thu, 3 Oct 2013 02:58:17 +0000 (19:58 -0700)]
Document that checking against the principal is always done

Even if there are no dictionaries configured, we still check whether
the password is based on the principal.

10 years agoChange strength_check to take a saner argument order
Russ Allbery [Thu, 3 Oct 2013 02:56:58 +0000 (19:56 -0700)]
Change strength_check to take a saner argument order

It makes more sense to pass in the principal before the password.
Change all the internal APIs to use that order.

10 years agoRefactor checking for passwords based on principals
Russ Allbery [Thu, 3 Oct 2013 02:53:29 +0000 (19:53 -0700)]
Refactor checking for passwords based on principals

Move this code into a separate file in preparation for expanding
the nature of the checks, and following the general principal of
putting each type of check in a separate file.

10 years agoClean up and refactor configuration handling
Russ Allbery [Thu, 3 Oct 2013 02:40:58 +0000 (19:40 -0700)]
Clean up and refactor configuration handling

Each "module" (CDB and CrackLib) now handles its own configuration
and setup, and the internal APIs are more straightforward and
simpler.

The plugin can now be configured without a dictionary, in which case
only the simpler checks available through the new configuration
variables are done.  This mode is mostly useful for testing, since
such simple checking can more easily be done via less complex password
strength configurations.

10 years agoUse krb5_xfree for krb5_free_default_realm on Heimdal
Russ Allbery [Thu, 3 Oct 2013 02:00:34 +0000 (19:00 -0700)]
Use krb5_xfree for krb5_free_default_realm on Heimdal

The documentation says to use free, but this doesn't make sense
since the memory is allocated inside the Kerberos library.

10 years agoSeparate Kerberos configuration handling into a separate file
Russ Allbery [Thu, 3 Oct 2013 01:55:51 +0000 (18:55 -0700)]
Separate Kerberos configuration handling into a separate file

Provide a cleaner interface and hard-code the section values to
reduce the number of required arguments.  Factor out the realm
handling and properly free the default realms, avoiding memory
leaks.

10 years agoRemove unnecessary includes in plugin/cracklib.c
Russ Allbery [Thu, 3 Oct 2013 01:55:41 +0000 (18:55 -0700)]
Remove unnecessary includes in plugin/cracklib.c

10 years agoRefactor the CrackLib code into a separate source file
Russ Allbery [Thu, 3 Oct 2013 01:17:12 +0000 (18:17 -0700)]
Refactor the CrackLib code into a separate source file

Also rename api.c to general.c, which more accurately reflects the
current contents of that file.

10 years agoMove CDB initialization into plugin/cdb.c
Russ Allbery [Wed, 2 Oct 2013 06:43:40 +0000 (23:43 -0700)]
Move CDB initialization into plugin/cdb.c

Move a bit farther down the path of having the different portions
of strength checking properly separated out.

10 years agoRemove duplicate definition of KADM5_PASS_Q_GENERIC
Russ Allbery [Wed, 2 Oct 2013 06:35:57 +0000 (23:35 -0700)]
Remove duplicate definition of KADM5_PASS_Q_GENERIC

This is now handled by portable/kadmin.h.

10 years agoRefactor error handling inside the plugin
Russ Allbery [Wed, 2 Oct 2013 06:33:20 +0000 (23:33 -0700)]
Refactor error handling inside the plugin

Add a set of generic functions for setting the error message in
the Kerberos context, move some of the error message strings out
where they can be easily manipulated, and use a similar error
message for CDB matches as the other password error messages.

10 years agoClean up error handling in the Heimdal plugin
Russ Allbery [Wed, 2 Oct 2013 05:27:47 +0000 (22:27 -0700)]
Clean up error handling in the Heimdal plugin

Move the code to convert the Kerberos error to an error string
into a separate function and use that to simplify the error
reporting.  Remove an unnecessary prefix to the error for
initializing the password strength checking.

10 years agoRename the internal plugin functions
Russ Allbery [Wed, 2 Oct 2013 05:15:24 +0000 (22:15 -0700)]
Rename the internal plugin functions

Use a standard prefix of strength_ rather than pwcheck_.  This
matches the name of the plugin and is somewhat more informative.

10 years agoChange the default plugin install path and name
Russ Allbery [Wed, 2 Oct 2013 05:02:33 +0000 (22:02 -0700)]
Change the default plugin install path and name

The default installation path for this plugin is now
/usr/local/lib/krb5/plugins/pwqual/strength.so (for both MIT and
Heimdal), assuming a --libdir setting of /usr/local/lib.  This may
require updates to the Kerberos KDC configuration or moving the plugin
when upgrading from earlier versions.

10 years agoFix Heimdal pwcheck header probing
Russ Allbery [Wed, 2 Oct 2013 04:44:40 +0000 (21:44 -0700)]
Fix Heimdal pwcheck header probing

The configure probe was never going to work properly.  Fix that by
adding the correct includes.  Drop the fallback for versions of
Heimdal without the include file installed, which is not required
for Debian squeeze and later.

10 years agoHide internal functions
Russ Allbery [Wed, 2 Oct 2013 04:34:39 +0000 (21:34 -0700)]
Hide internal functions

Mark all the internal plugin functions and all the CrackLib functions
as hidden.

10 years agoMark the portable_dummy symbol as hidden
Russ Allbery [Wed, 2 Oct 2013 04:33:31 +0000 (21:33 -0700)]
Mark the portable_dummy symbol as hidden

This was leaking out of shared libraries that used libportable.
Whoops.

10 years agoRemove strlcat and strlcpy portable replacements
Russ Allbery [Wed, 2 Oct 2013 04:23:38 +0000 (21:23 -0700)]
Remove strlcat and strlcpy portable replacements

I no longer use either function in this package, so there's no
need to include the replacements and the code to test them.

10 years agoReorganize the plugin tests
Russ Allbery [Wed, 2 Oct 2013 04:20:36 +0000 (21:20 -0700)]
Reorganize the plugin tests

Make the organization of the test suite reflect the organization
of the source code.

10 years agoUpdate EXTRA_DIST for file changes
Russ Allbery [Wed, 2 Oct 2013 04:16:17 +0000 (21:16 -0700)]
Update EXTRA_DIST for file changes

Various things have been moved around and a bunch of new files
added.  Update EXTRA_DIST accordingly.

10 years agoMove heimdal-strength test
Russ Allbery [Wed, 2 Oct 2013 04:15:58 +0000 (21:15 -0700)]
Move heimdal-strength test

Now that the program is in tools, move the test accordingly.

10 years agoRename plugin/api.h to plugin/internal.h
Russ Allbery [Wed, 2 Oct 2013 04:09:29 +0000 (21:09 -0700)]
Rename plugin/api.h to plugin/internal.h

This no longer defines the default API, since that is now an
internal implementation detail.  Rename the header file to match
the sort of thing I do with other projects.

10 years agoUse krb5_free_string to free krb5_appdefault_string results
Russ Allbery [Wed, 2 Oct 2013 04:04:13 +0000 (21:04 -0700)]
Use krb5_free_string to free krb5_appdefault_string results

After parsing a numeric setting, free the string returned by
krb5_appdefault_string with krb5_free_string instead of free.

10 years agoAdd configurable checks for ASCII and for non-letters
Russ Allbery [Wed, 2 Oct 2013 03:51:55 +0000 (20:51 -0700)]
Add configurable checks for ASCII and for non-letters

New boolean settings require_ascii_printable and require_non_letter
are supported in the krb5-strength setting of [appdefaults] in
krb5.conf.  The former rejects passwords containing characters other
than printable ASCII characters (including space), and the latter
requires that passwords contain at least one character that is not a
letter (upper or lower case) or a space.

10 years agoSupport UTF-8 data in password test cases
Russ Allbery [Wed, 2 Oct 2013 03:43:41 +0000 (20:43 -0700)]
Support UTF-8 data in password test cases

In make-c-data, when generating C source from the JSON data,
properly encode UTF-8 strings.  This still requires a C compiler
that can handle raw UTF-8 input, but hopefully that won't be a
serious portability issue.

10 years agoAdd support for enforcing a minimum password length
Russ Allbery [Wed, 2 Oct 2013 00:55:30 +0000 (17:55 -0700)]
Add support for enforcing a minimum password length

This is configured using the minimum_length setting in krb5.conf
in the krb5-strength section of [appdefaults].  This length check
is independent of CrackLib's checks.

10 years agoProbe for setrlimit for the xmalloc tests
Russ Allbery [Wed, 2 Oct 2013 00:27:45 +0000 (17:27 -0700)]
Probe for setrlimit for the xmalloc tests

Testing the xmalloc utility library requires knowing whether
setrlimit exists.  Add the check to configure.

10 years agoSeparate generic tests from CrackLib tests
Russ Allbery [Tue, 1 Oct 2013 22:03:03 +0000 (15:03 -0700)]
Separate generic tests from CrackLib tests

Move the generic password tests into a separate file so that
they can be run independent from the CrackLib tests, and run
them for both CrackLib and CDB configurations.

10 years agoMove password test data into a subdirectory
Russ Allbery [Tue, 1 Oct 2013 21:21:09 +0000 (14:21 -0700)]
Move password test data into a subdirectory

The number of files is only going to grow, so move it into a
subdirectory and use a loop in autogen to generate C versions of
every file to make it easier to add new blocks of test data.

10 years agoAdd Perl testing from rra-c-util
Russ Allbery [Tue, 1 Oct 2013 21:07:11 +0000 (14:07 -0700)]
Add Perl testing from rra-c-util

Delete the old, simple POD tests that only looked at the docs for
heimdal-strength and add full POD and Perl testing using the
generic tests from rra-c-util.

10 years agoAdd missing POD spelling stopword for cdbmake-wordlist
Russ Allbery [Tue, 1 Oct 2013 21:06:53 +0000 (14:06 -0700)]
Add missing POD spelling stopword for cdbmake-wordlist

10 years agoFix style problems in the heimdal/external test
Russ Allbery [Tue, 1 Oct 2013 21:06:26 +0000 (14:06 -0700)]
Fix style problems in the heimdal/external test

Some style and formatting issues crept in via various rewrites.
Clean those up again.

10 years agoFix naming of cdbmake-wordlist test
Russ Allbery [Tue, 1 Oct 2013 20:58:03 +0000 (13:58 -0700)]
Fix naming of cdbmake-wordlist test

We've been using -t instead of .t since this is an Automake
project.  Be consistent.

10 years agoAdd test suite for util/messages-krb5
Russ Allbery [Tue, 1 Oct 2013 20:52:30 +0000 (13:52 -0700)]
Add test suite for util/messages-krb5

10 years agoMove heimdal-strength to the tools directory
Russ Allbery [Tue, 1 Oct 2013 20:49:35 +0000 (13:49 -0700)]
Move heimdal-strength to the tools directory

Try to keep the proliferation of directories to a minimum and put
all the command-line tools in the same directory.

10 years agoRenamed cdb.m4 to tinycdb.m4
Russ Allbery [Tue, 1 Oct 2013 06:19:58 +0000 (23:19 -0700)]
Renamed cdb.m4 to tinycdb.m4

Reflect the contents more accurately in the name.

10 years agoAdd support for checking against a CDB database
Russ Allbery [Tue, 1 Oct 2013 06:15:51 +0000 (23:15 -0700)]
Add support for checking against a CDB database

Add support for building with TinyCDB and then checking passwords
against a CDB database.  There is a new password_dictionary_cdb
krb5.conf configuration setting that configures a CDB directory to
use.  The tests with a CDB dictionary are much simpler: passwords are
rejected if found in the dictionary either literally, with one or two
characters removed from the start or end, or with one character
removed from both the start and the end.  Both a CrackLib and a CDB
dictionary can be specified to check both dictionaries.

10 years agoInclude strerror results in Kerberos error messages
Russ Allbery [Tue, 1 Oct 2013 03:46:40 +0000 (20:46 -0700)]
Include strerror results in Kerberos error messages

When reporting a Kerberos error message from a system call failure,
include the strerror results in the message.

10 years agoAdd cdbmake-wordlist test to the default test suite
Russ Allbery [Tue, 1 Oct 2013 03:46:23 +0000 (20:46 -0700)]
Add cdbmake-wordlist test to the default test suite

10 years agoAdd a test suite for cdbmake-wordlist
Russ Allbery [Tue, 1 Oct 2013 02:17:56 +0000 (19:17 -0700)]
Add a test suite for cdbmake-wordlist

10 years agoAdd initial version of cdbmake-wordlist tool
Russ Allbery [Tue, 1 Oct 2013 01:38:26 +0000 (18:38 -0700)]
Add initial version of cdbmake-wordlist tool

This creates a *.cdb file from a wordlist and will be used for the
new cdb support coming to krb5-strength.  For right now, there's no
test suite.

10 years agoRemove appdefaults realm support for MIT from TODO
Russ Allbery [Sat, 28 Sep 2013 18:47:40 +0000 (11:47 -0700)]
Remove appdefaults realm support for MIT from TODO

This was completed.

10 years agoUse the Kerberos context to set the error message
Russ Allbery [Fri, 27 Sep 2013 05:21:35 +0000 (22:21 -0700)]
Use the Kerberos context to set the error message

The plugin now sets the Kerberos error message in the context to pass
error information, resulting in higher-quality error reporting in the
MIT Kerberos plugin.

10 years agoUse die_krb5 in the external password checker
Russ Allbery [Fri, 27 Sep 2013 04:36:31 +0000 (21:36 -0700)]
Use die_krb5 in the external password checker

This is pointless at the moment, since we're only using it for
failures in krb5_init_context, but it will be more useful later.

10 years agoMove krb5.conf configuration into the plugin
Russ Allbery [Wed, 25 Sep 2013 06:59:02 +0000 (23:59 -0700)]
Move krb5.conf configuration into the plugin

Load the configuration inside the plugin when we initialize it,
and pass in a Kerberos context to the plugin so that this is
possible.  Obtain or pass in an existing Kerberos context in the
places where we weren't already doing so.

This loses some more detailed error reporting, particularly around
non-existent configured dictionaries, which will be restored later
by using the Kerberos error message.

10 years agoFix memory management in the MIT plugin test
Russ Allbery [Wed, 25 Sep 2013 06:58:40 +0000 (23:58 -0700)]
Fix memory management in the MIT plugin test

We were freeing one of our testing paths before using it again.

10 years agoRemove some reachable leaks, static data in cracklib, tests
Russ Allbery [Wed, 25 Sep 2013 06:00:44 +0000 (23:00 -0700)]
Remove some reachable leaks, static data in cracklib, tests

Don't attempt an optimization where we keep the last block of
the dictionary in memory to answer questions, since each call
may use a different dictionary.  Close the password dictionary
after each lookup (although this doesn't recover all of the
memory due to more static data elsewhere).

Free more memory at the end of the MIT plugin test.

10 years agoUse standard CrackLib tools when not using embedded
Russ Allbery [Wed, 25 Sep 2013 04:43:36 +0000 (21:43 -0700)]
Use standard CrackLib tools when not using embedded

When building with the system CrackLib, use the standard tools to
build the test dictionary instead of building the embedded code
just to use the packer.

Also use the tools to build the dictionary so that the word list
in the test suite doesn't have to be sorted.

10 years agoRemove explicit CPPFLAGS setting for the plugin
Russ Allbery [Wed, 25 Sep 2013 02:27:57 +0000 (19:27 -0700)]
Remove explicit CPPFLAGS setting for the plugin

This is handled by the global setting.

10 years agoUpdate EXTRA_DIST and libportable sources
Russ Allbery [Wed, 25 Sep 2013 02:27:25 +0000 (19:27 -0700)]
Update EXTRA_DIST and libportable sources

Add the new header files to libportable so that they're included
in the distribution, and remove obsolete files from EXTRA_DIST.

10 years agoMake the way too short error consistent with CrackLib
Russ Allbery [Wed, 25 Sep 2013 02:26:21 +0000 (19:26 -0700)]
Make the way too short error consistent with CrackLib

Current CrackLib returns "it is WAY too short" rather than
"it's WAY too short".  Be consistent so that more of the test
suite will pass correctly.

10 years agoRewrite the MIT plugin tests in C
Russ Allbery [Wed, 25 Sep 2013 01:14:45 +0000 (18:14 -0700)]
Rewrite the MIT plugin tests in C

Rewrite the MIT plugin test in pure C, using the generated C
data and calling the shell script to create the necessary krb5.conf
file.  Check configuration both via the internal dictionary path
and via appdefaults.

10 years agoFix configuration and status codes in the MIT plugin
Russ Allbery [Wed, 25 Sep 2013 01:10:05 +0000 (18:10 -0700)]
Fix configuration and status codes in the MIT plugin

Modify the MIT plugin to support [appdefaults] configuration in
addition to the dictionary path configured in the KDC.  Modify the
core code to return meaningful error codes instead of just 0 and 1,
adjust the Heimdal module accordingly to translate them into 0 and
1, and use that to allow the MIT code to return real error codes.

In order to support this, import more of the Kerberos portability
layer including new portability for kadmin headers.

10 years agoReport a real plan for the heimdal/external test
Russ Allbery [Tue, 24 Sep 2013 22:27:29 +0000 (15:27 -0700)]
Report a real plan for the heimdal/external test

We can calculate how many tests we're going to run, so do so and
report a real plan.

10 years agoRewrite the Heimdal plugin tests in C
Russ Allbery [Tue, 24 Sep 2013 22:22:58 +0000 (15:22 -0700)]
Rewrite the Heimdal plugin tests in C

Add a new Perl program to generate a C version of the password
test data from the JSON source, and run that program during
autogen so that we can ship the source in the distribution and
not require JSON support for the basic test suite.  Add a new
shell script to generate the necessary krb5.conf file.

Rewrite the Heimdal plugin test in pure C, using the generated C
data and calling the shell script to create the necessary krb5.conf
file.

10 years agoRewrite the heimdal-strength tests in Perl
Russ Allbery [Tue, 24 Sep 2013 04:22:47 +0000 (21:22 -0700)]
Rewrite the heimdal-strength tests in Perl

Externalize the passwords and expected results in a JSON file
and rewrite the test case in Perl, making it read the list of
test cases from that file.  Add a stripped-down krb5.conf file
used by the test suite instead of trying to manipulate the system
krb5.conf file.

10 years agoImport Perl test support modules from rra-c-util
Russ Allbery [Tue, 24 Sep 2013 04:20:52 +0000 (21:20 -0700)]
Import Perl test support modules from rra-c-util

Import Test::RRA, Test::RRA::Automake, and Test::RRA::Config
from rra-c-util 4.10 for the use of test cases written in Perl.

10 years agoClean up the leading comment on the MIT plugin code
Russ Allbery [Thu, 19 Sep 2013 23:57:05 +0000 (16:57 -0700)]
Clean up the leading comment on the MIT plugin code

10 years agoReformat the prototype for pwqual_strength_initvt
Russ Allbery [Thu, 19 Sep 2013 23:56:28 +0000 (16:56 -0700)]
Reformat the prototype for pwqual_strength_initvt

10 years agoUse util/macros.h for the UNUSED macro
Russ Allbery [Thu, 19 Sep 2013 23:55:12 +0000 (16:55 -0700)]
Use util/macros.h for the UNUSED macro

Also reorganize the MIT plugin code a little bit.

10 years agoImport the util layer from rra-c-util, use for heimdal-strength
Russ Allbery [Thu, 19 Sep 2013 23:50:15 +0000 (16:50 -0700)]
Import the util layer from rra-c-util, use for heimdal-strength

Rather than rolling our own versions of xmalloc, xstrdup, and die,
import the util layer and use the standard versions of those
functions.  Also import the test suite.

10 years agoUse the correct Stanford copyright notice, update dates
Russ Allbery [Thu, 19 Sep 2013 05:43:06 +0000 (22:43 -0700)]
Use the correct Stanford copyright notice, update dates

10 years agoInclude portable/krb5.h instead of krb5.h
Russ Allbery [Thu, 19 Sep 2013 04:44:34 +0000 (21:44 -0700)]
Include portable/krb5.h instead of krb5.h

Make use of the portability layer to figure out which Kerberos
header to include.

10 years agoRemove an old TODO item related to the MIT patch
Russ Allbery [Thu, 19 Sep 2013 04:39:54 +0000 (21:39 -0700)]
Remove an old TODO item related to the MIT patch

10 years agoDon't purge the autom4te.cache directory
Russ Allbery [Thu, 19 Sep 2013 04:38:52 +0000 (21:38 -0700)]
Don't purge the autom4te.cache directory

Retain this to make subsequent autogen runs faster.

10 years agoUse the portability layer and close a memory leak
Russ Allbery [Thu, 19 Sep 2013 04:27:43 +0000 (21:27 -0700)]
Use the portability layer and close a memory leak

Free the unparsed principal name when checking passwords in
Heimdal, and use the portability layer in the external strength
program.

10 years agoAdd a more extensive Kerberos portability layer
Russ Allbery [Thu, 19 Sep 2013 04:26:27 +0000 (21:26 -0700)]
Add a more extensive Kerberos portability layer

We don't really care about portability for krb5_get_error_message
since we effectively will require that it exists, but may as well
use the same structure as other code.  Add some other functions
that we're using (or should be using).

10 years agoAdd support for new MIT plugin interface, drop old patch
Russ Allbery [Thu, 19 Sep 2013 03:55:02 +0000 (20:55 -0700)]
Add support for new MIT plugin interface, drop old patch

Add support for the MIT Kerberos password quality plugin interface,
available in MIT Kerberos 1.9 and later, contributed by Greg Hudson
and MIT.  Drop the patch for MIT Kerberos 1.4 (and hence support for
versions of MIT Kerberos prior to 1.9).

10 years agoAdd additional CrackLib changes to cracklib/HISTORY
Russ Allbery [Thu, 19 Sep 2013 00:51:53 +0000 (17:51 -0700)]
Add additional CrackLib changes to cracklib/HISTORY

10 years agoFix the path to the Heimdal password strength header
Russ Allbery [Thu, 19 Sep 2013 00:41:58 +0000 (17:41 -0700)]
Fix the path to the Heimdal password strength header

Expect the Heimdal password strength checking plugin header in
kadm5/kadm5-pwcheck.h instead of outside of the kadm5 directory.  This
is the path used by current versions of Heimdal.

10 years agoUpdate to the latest warning flags fromr rra-c-util 4.9
Russ Allbery [Thu, 19 Sep 2013 00:34:36 +0000 (17:34 -0700)]
Update to the latest warning flags fromr rra-c-util 4.9

10 years agoAdd a missing ANSI C prototyping fix
Russ Allbery [Thu, 19 Sep 2013 00:34:26 +0000 (17:34 -0700)]
Add a missing ANSI C prototyping fix

10 years agoRemove the need for tests/data/.placeholder
Russ Allbery [Wed, 18 Sep 2013 23:30:27 +0000 (16:30 -0700)]
Remove the need for tests/data/.placeholder

Just create the tests/data directory if needed before running
the packer to create the dictionary.

10 years agoUpdate to rra-c-util 4.9 and C TAP Harness 2.2
Russ Allbery [Wed, 18 Sep 2013 23:27:45 +0000 (16:27 -0700)]
Update to rra-c-util 4.9 and C TAP Harness 2.2

Update to rra-c-util 4.9:

* Probe for Kerberos headers using file checks instead of compiles.
* Improve probe for the Heimdal libroken library.
* Always build with large file support.
* Conditionally call AM_PROG_AR for portability to new Autotools.

Update to C TAP Harness 2.2:

* Allow more easily running single programs under tests/runtests.
* Flush the output from the test harness after each test.

10 years agoMake the simplicity check dependent on password length
Russ Allbery [Wed, 18 Sep 2013 22:47:10 +0000 (15:47 -0700)]
Make the simplicity check dependent on password length

CrackLib checks for passwords where a character is a simple increment
or decrement of the previous character.  In previous versions, the
embedded version of CrackLib allowed at most four such occurrences in
the entire password.  This results in false positives on long
passphrases, since such accidental letter relationships aren't
uncommon in human languages.  Change the embedded CrackLib to allow
one such simple increment for every three characters in the password,
which tightens the check somewhat for shorter passwords and loosens it
considerably for longer passwords.

12 years agoImported Upstream version 1.1 upstream/1.1
Russ Allbery [Fri, 11 May 2012 21:48:01 +0000 (14:48 -0700)]
Imported Upstream version 1.1

12 years agoAdd new rra-c-util files to the distribution release/1.1
Russ Allbery [Fri, 11 May 2012 21:44:53 +0000 (14:44 -0700)]
Add new rra-c-util files to the distribution