]> git.ipfire.org Git - thirdparty/krb5.git/log
thirdparty/krb5.git
12 years agoWhitespace cleanup
Ben Kaduk [Mon, 15 Oct 2012 23:04:47 +0000 (19:04 -0400)] 
Whitespace cleanup

Prior to a mass rename of the RST sources and utilities.

12 years agoRemove stale implement document
Ben Kaduk [Mon, 15 Oct 2012 17:50:58 +0000 (13:50 -0400)] 
Remove stale implement document

As with the texinfo implementor's guide, it is sufficiently stale
so as to be untrustworthy without verification.
Content of this nature should live on k5wiki.kerberos.org.

ticket: 7408

12 years agoRemove the last vestiges of the texinfo docs
Ben Kaduk [Mon, 15 Oct 2012 17:38:05 +0000 (13:38 -0400)] 
Remove the last vestiges of the texinfo docs

We needed these last stragglers to build the NOTICE file at the
root of the tree, but we now generate a notice.txt from reST.

Man pages have been generated from reST for some time now, we no
longer need scripts to turn them into HTML and ps, as those can
be generated directly from the reST source.

The Makefile only existed to serve the texinfo builds, so it goes
away, too.  (The tgz target appears to have been broken since 1996.)

ticket: 7408

12 years agoMake rules for building NOTICE from RST
Ben Kaduk [Mon, 15 Oct 2012 21:47:33 +0000 (17:47 -0400)] 
Make rules for building NOTICE from RST

Sphinx-build wants to scan over all the sources in the source dir,
and its text output engine does not handle the spanning row cells
used in some of our fancy tables, so it will crash if we attempt
to generate text output from our full suite of documents.
We could work around this by attempting to just compile the one
source file as an additional argument to sphinx-build, but this
seems to insist on producing an index.txt as well as a notice.txt.
Furthermore, we cannot use the same conf.py as in rst_composite because
the paths substitutions are not available with just the minimal
contents of rst_notice.  Make a copy and remove the irrelevant parts,
for now, changing only the master_doc field as appropriate.

For the HTML build, we use the standard |copy| macro from isonum.txt
to get the unicode copyright symbol glyph, but for ASCII output we
prefer to just use the literal "(C)".

ticket: 7407

12 years agoAdd notice.rst
Ben Kaduk [Fri, 12 Oct 2012 21:12:55 +0000 (17:12 -0400)] 
Add notice.rst

To replace the texinfo sources previously used to generate NOTICE.

When compiled to HTML, compares well against the original NOTICE;
use notice.rst in mitK5license.rst instead of using a literal
include of the old NOTICE file.

ticket: 7407

12 years agoRemove texinfo implementors guide
Ben Kaduk [Fri, 12 Oct 2012 16:42:10 +0000 (12:42 -0400)] 
Remove texinfo implementors guide

It is sufficiently old and unloved that nothing in it should be
taken as truth without independent verification.
Content of this nature should live on k5wiki.kerberos.org
in the future.

ticket: 7408

12 years agoRemove unused texinfo sources
Ben Kaduk [Fri, 12 Oct 2012 16:05:30 +0000 (12:05 -0400)] 
Remove unused texinfo sources

Now that the users guide make rules are removed, some of the texinfo
sources are not referenced from anywhere and can be safely removed.

ticket: 7408

12 years agoRemove make glue for texinfo users guide
Ben Kaduk [Fri, 12 Oct 2012 15:58:07 +0000 (11:58 -0400)] 
Remove make glue for texinfo users guide

Towards removing the texinfo docs entirely.

ticket: 7408

12 years agoDisconnect the texinfo users guide from the build
Ben Kaduk [Fri, 12 Oct 2012 15:36:38 +0000 (11:36 -0400)] 
Disconnect the texinfo users guide from the build

Its content has been migrated to or superseded by the krb_users
reST documentation.

The texinfo document attempted to have a general introduction to
Kerberos, but it is not quite suitable for the target audience
of the user's guide and will be rewritten.

A few portions of the texinfo document are simply no longer relevant
and do not need to be migrated.  In particular:
The krb5-appl utilities are out of scope for this document, as they
have been moved to a separate repository.  Coverage of ksu may be
brought back at a later time, though.
The Kerberos Glossary will be expanded and handled separately.

ticket: 7408

12 years agoSet pointers to NULL after freeing them
Zhanna Tsitkov [Mon, 15 Oct 2012 20:14:24 +0000 (16:14 -0400)] 
Set pointers to NULL after freeing them

12 years agoBump libkdb5 API and DAL versions
Greg Hudson [Mon, 15 Oct 2012 18:07:09 +0000 (14:07 -0400)] 
Bump libkdb5 API and DAL versions

We made two sets of incompatible changes to the DAL and libkdb5 API
during development for 1.11 (master key list simplification and policy
extensions), so increment the appropriate version numbers.

12 years agoWait for correct message in t_iprop.py
Greg Hudson [Mon, 15 Oct 2012 17:11:18 +0000 (13:11 -0400)] 
Wait for correct message in t_iprop.py

The message "Got incremental updates from the master" precedes
actually replaying the updates on the slave.  Instead look for
"Incremental updates:" (the statistics message), which happens just
after the updates are replayed.

Also, we don't need to import time now that we're not sleeping.

12 years agoAdd a -C flag to klist to also show config entries
Nalin Dahyabhai [Tue, 24 Jul 2012 00:35:02 +0000 (20:35 -0400)] 
Add a -C flag to klist to also show config entries

12 years agoUse hex escaping for non-printable trace data
Nalin Dahyabhai [Tue, 24 Jul 2012 00:36:07 +0000 (20:36 -0400)] 
Use hex escaping for non-printable trace data

When adding {str}, {lenstr}, or {data} to trace output, scan for
bytes which might be non-printable, and add them as hex-escaped
versions of themselves if any are found.

12 years agoExport krb5_cc_move()
Nalin Dahyabhai [Wed, 10 Oct 2012 22:41:13 +0000 (18:41 -0400)] 
Export krb5_cc_move()

12 years agoCorrect type mismatches for get_as_key callbacks
Nalin Dahyabhai [Fri, 12 Oct 2012 17:03:24 +0000 (13:03 -0400)] 
Correct type mismatches for get_as_key callbacks

12 years agoHandle anonymous-as-signed-data-with-no-signers
Nalin Dahyabhai [Tue, 9 Oct 2012 18:47:08 +0000 (14:47 -0400)] 
Handle anonymous-as-signed-data-with-no-signers

Update to generate and consume signed-data with no signer-info, which we
need for anonymous PKINIT.

12 years agoMake sure that pkinit_octetstring_hkdf() inits NSS
Nalin Dahyabhai [Tue, 9 Oct 2012 17:46:42 +0000 (13:46 -0400)] 
Make sure that pkinit_octetstring_hkdf() inits NSS

Create an NSS context for use when performing KDF, so that the tests,
which call into the function directly, will work.

12 years agoDon't try to free an uninitialized keyblock
Nalin Dahyabhai [Tue, 9 Oct 2012 17:45:25 +0000 (13:45 -0400)] 
Don't try to free an uninitialized keyblock

12 years agoSanity-check loading keys and certs from PEM files
Nalin Dahyabhai [Tue, 9 Oct 2012 17:41:46 +0000 (13:41 -0400)] 
Sanity-check loading keys and certs from PEM files

Print a debug message if we're unable to locate the matching private key
for a certificate when we've just loaded both of them from PEM files.

12 years agoReset the prompt_types list after calling prompter
Nalin Dahyabhai [Tue, 9 Oct 2012 17:38:48 +0000 (13:38 -0400)] 
Reset the prompt_types list after calling prompter

Reset the prompt_types list immediately after the prompter callback
returns, as is done everywhere else.

12 years agoAdd responder support to preauth_otp
Nathaniel McCallum [Mon, 15 Oct 2012 14:49:21 +0000 (10:49 -0400)] 
Add responder support to preauth_otp

12 years agoMigrate to non-destructive tokeninfo selection
Nathaniel McCallum [Mon, 15 Oct 2012 01:38:02 +0000 (21:38 -0400)] 
Migrate to non-destructive tokeninfo selection

12 years agoMove forward tokeninfo filtering
Nathaniel McCallum [Mon, 15 Oct 2012 01:32:49 +0000 (21:32 -0400)] 
Move forward tokeninfo filtering

12 years agoMove pa_data encoding into a separate function
Nathaniel McCallum [Mon, 15 Oct 2012 01:29:26 +0000 (21:29 -0400)] 
Move pa_data encoding into a separate function

12 years agoEliminate races in t_iprop.py
Greg Hudson [Sat, 13 Oct 2012 15:40:51 +0000 (11:40 -0400)] 
Eliminate races in t_iprop.py

After we start kpropd, read about the initial full dump before making
changes on the master.  Avoid prodding kpropd for this read (by
shifting responsibility for the initial prod to the caller) since
kpropd doesn't sleep before its first request.

When waiting for sync, note whether we got a full propagation and
match that up with our expectations.

Use a long polling interval so kpropd doesn't wake up on its own and
confuse the test script with an extra incremental update.

12 years agoDon't use void * arithmetic in interposed_oid
Greg Hudson [Sat, 13 Oct 2012 14:58:14 +0000 (10:58 -0400)] 
Don't use void * arithmetic in interposed_oid

12 years agoMake t_iprop.py faster and more robust
Greg Hudson [Fri, 12 Oct 2012 20:12:48 +0000 (16:12 -0400)] 
Make t_iprop.py faster and more robust

Catch SIGUSR1 in iprop-mode kpropd so that we can use it to interrupt
sleeps and make kpropd do an iprop request immediately.

In k5test.py, add prod_kpropd and read_from_kpropd methods to allow
test scripts to send a SIGUSR1 to kpropd and to read its stdout/stderr
output; also allow the test script to specify additional arguments
when starting kpropd.

In t_iprop.py, start kpropd with -d and, instead of sleeping, read
kpropd output until we see an indication that kpropd is in sync with
the master.  To avoid delays, prod kpropd before waiting for sync and
after a completed full prop.

12 years agoFix a couple of typos
Nalin Dahyabhai [Tue, 24 Jul 2012 02:55:29 +0000 (22:55 -0400)] 
Fix a couple of typos

12 years agoAdd responder support to preauth_encts/preauth_ec
Nathaniel McCallum [Fri, 12 Oct 2012 14:34:19 +0000 (10:34 -0400)] 
Add responder support to preauth_encts/preauth_ec

12 years agoAdd responder support to get_as_key()
Nathaniel McCallum [Fri, 12 Oct 2012 14:33:36 +0000 (10:33 -0400)] 
Add responder support to get_as_key()

This follows the design laid out on the project page:
  http://k5wiki.kerberos.org/wiki/Projects/Password_response_item

12 years agoAllow null inputs to response item functions
Nathaniel McCallum [Fri, 12 Oct 2012 14:30:09 +0000 (10:30 -0400)] 
Allow null inputs to response item functions

12 years agoRemove unused texinfo sources
Ben Kaduk [Thu, 11 Oct 2012 17:46:02 +0000 (13:46 -0400)] 
Remove unused texinfo sources

Now that the admin guide make rules are removed, quite a few of the
texinfo sources are not referenced from anywhere and can be safely
removed.

ticket: 7408

12 years agoRemove make glue for texinfo admin guide
Ben Kaduk [Thu, 11 Oct 2012 17:07:24 +0000 (13:07 -0400)] 
Remove make glue for texinfo admin guide

Towards removing the texinfo docs entirely.

ticket: 7408

12 years agoDisconnect the texinfo admin guide from the build
Ben Kaduk [Thu, 11 Oct 2012 16:42:05 +0000 (12:42 -0400)] 
Disconnect the texinfo admin guide from the build

Its content has been migrated to or superseded by the reST documentation,
essentially entirely in krb_admins.

A few portions of the texinfo document are simply no longer relevant
and do not need to be migrated.  In particular:
Information about reporting bugs lives on k5wiki.kerberos.org.
General Kerberos concepts/introduction will be elsewhere in the tree.
We do not need to document the time zones accepted by kadmin.
We do not need a table of the various error codes and strings in our
formal documentation.
A complete description of the layout of our source tree is not useful
or relevant to most Kerberos administrators.

ticket: 7408

12 years agoFix cast regexp in C style checker
Greg Hudson [Thu, 11 Oct 2012 17:22:29 +0000 (13:22 -0400)] 
Fix cast regexp in C style checker

In check_cast, we want to match cast operators with or without spaces
after the closing paren, and then check for spaces after we match.
Also, per the comment, we want to match potential cast operators
followed by an open paren.

12 years agoImprove the ktadd and ktremove synopses
Ben Kaduk [Tue, 9 Oct 2012 20:00:53 +0000 (16:00 -0400)] 
Improve the ktadd and ktremove synopses

Mention the options on the synopsis line, and do not imply that
the principal argument(s) for ktadd are optional.
reST line blocks are needed to keep the two forms of ktadd on
separate lines.

12 years agoFix ordered list style
Ben Kaduk [Fri, 5 Oct 2012 20:44:40 +0000 (16:44 -0400)] 
Fix ordered list style

Sphynx outputs class information that corresponds to its generated
basic.css, which we do not include.  This results in all lists,
even nested lists, using arabic numerals.
Import the class properties into kerb.css for now.

12 years agoFix copy/paste errors in dbadmin
Ben Kaduk [Fri, 5 Oct 2012 18:35:45 +0000 (14:35 -0400)] 
Fix copy/paste errors in dbadmin

We should include the stashsrvpw content in that section, not
the list content.  Likewise, the list_policy content instead
of the destroy_policy content.

12 years agoUpdate kdb5_util example output
Ben Kaduk [Fri, 5 Oct 2012 17:04:16 +0000 (13:04 -0400)] 
Update kdb5_util example output

This text has not caught up with changes to the utility itself.
As a side effect, our output text box is narrower and does not have
to scroll on as many browser windows.

12 years agoWordsmith kdb5_util stash -f
Ben Kaduk [Fri, 5 Oct 2012 16:44:52 +0000 (12:44 -0400)] 
Wordsmith kdb5_util stash -f

The keyfile worth overriding is the one in kdc.conf. Though using
stash -f would override kdb5_util's -sf argument, there is no reason to
pass both flags to the same invocation.
In any case, the "at startup" language is not really correct.

12 years agoRemove pronoun referent ambiguity
Ben Kaduk [Fri, 5 Oct 2012 16:24:42 +0000 (12:24 -0400)] 
Remove pronoun referent ambiguity

The policy must be unused, not the delete_policy command.

12 years agoMove cross-realm info to the cross-realm section
Ben Kaduk [Fri, 5 Oct 2012 16:12:47 +0000 (12:12 -0400)] 
Move cross-realm info to the cross-realm section

It's really not appropriate for the "examples" subsection of
"Adding, modifying and deleting principals".

While here, update the enctype recommendation for cross-realm principals
to something that does not include weak crypto.

12 years agoNormalize format of kadmin option descriptions
Ben Kaduk [Fri, 5 Oct 2012 14:52:11 +0000 (10:52 -0400)] 
Normalize format of kadmin option descriptions

Start with a capital letter and end with a full stop, making
the description a sentence (or at least close to one).

12 years agoCorrect kadm5.acl synopsis
Ben Kaduk [Thu, 4 Oct 2012 22:04:41 +0000 (18:04 -0400)] 
Correct kadm5.acl synopsis

The target principal and restrictions arguments are not orthogonal;
a target principal argument must be given in order for a restriction
list to be supplied.

12 years agoMake the kadm5.acl example sane
Ben Kaduk [Thu, 4 Oct 2012 22:00:07 +0000 (18:00 -0400)] 
Make the kadm5.acl example sane

It is an eggregious security violation to give all admin principals
admin rights and then give all null instances permission to change
the password of the associated admin instance.

While here, don't assume that admin and root are the only non-null
instances, and correct the formatting of an entry with restrictions.

12 years agokadm5.acl line order is important
Ben Kaduk [Thu, 4 Oct 2012 21:22:36 +0000 (17:22 -0400)] 
kadm5.acl line order is important

Make it a special note in the documentation to help it stand out.

12 years agoWordsmith in kadm5_acl.rst
Ben Kaduk [Thu, 4 Oct 2012 21:22:04 +0000 (17:22 -0400)] 
Wordsmith in kadm5_acl.rst

Grammar fixup and avoid jargon.

12 years agoFix slow kprop dejagnu test
Greg Hudson [Wed, 10 Oct 2012 17:11:46 +0000 (13:11 -0400)] 
Fix slow kprop dejagnu test

Fix kpropd -S -t to actually exit after processing one connection (it
was breaking out of the switch statement, not the while loop).  Use
the -t when invoking kpropd from the dejagnu test framework;
previously it was unnecessary because kpropd -S -d exited after one
connection.  Clear up some confusion in the kprop.exp comments about
whether kpropd is expected to exit.

12 years agoWordsmith SRV records for KDCs
Ben Kaduk [Thu, 4 Oct 2012 18:02:23 +0000 (14:02 -0400)] 
Wordsmith SRV records for KDCs

Tweak the wording a bit to be more clear and avoid using multiple
words deriving from the stem "use" in close succession.

12 years agoDocument TXT records for realm lookup
Ben Kaduk [Thu, 4 Oct 2012 17:42:13 +0000 (13:42 -0400)] 
Document TXT records for realm lookup

Even though they are subject to vulnerabilities via DNS spoofing
and we accordingly don't recommend their use, we do have the code
to use them.  Just as we document dns_lookup_realm in krb5.conf(5),
document them here.

ticket: 7407

12 years agoFix argument order when calling the responder
Nathaniel McCallum [Mon, 8 Oct 2012 12:16:34 +0000 (08:16 -0400)] 
Fix argument order when calling the responder

12 years agoRemove unused texinfo sources
Ben Kaduk [Wed, 3 Oct 2012 20:44:28 +0000 (16:44 -0400)] 
Remove unused texinfo sources

Now that the install guide make rules are removed, nothing references
build.texinfo or install.texinfo any more (other than the tgz target,
which is updated accordingly).

ticket: 7408

12 years agoRemove make glue for texinfo install guide
Ben Kaduk [Wed, 3 Oct 2012 20:40:51 +0000 (16:40 -0400)] 
Remove make glue for texinfo install guide

Towards removing the texinfo docs entirely.

ticket: 7408

12 years agoDisconnect texinfo install guide from the build
Ben Kaduk [Wed, 3 Oct 2012 20:16:26 +0000 (16:16 -0400)] 
Disconnect texinfo install guide from the build

Its content has been migrated to or superseded by the RST documentation,
split amongst krb_build and various sections of krb_admins.

A few portions of the texinfo document are simply no longer relevant
and do not need to be migrated.  In particular:
It's 2012; we don't need to specify that we require a C89 compiler.
It's 2012; it will be easy to get enough disk to build krb5.
The KADM5 tests are part of 'make check' and don't need separate
documentation.
Shared library support is not limited to "a few operating systems".
We do not need to document incompatibilities with ancient/dead OSes.
kadmind4 and v5passwdd are no longer relevant.

ticket: 7408

12 years agoAdd section on updating from single-DES
Ben Kaduk [Wed, 3 Oct 2012 19:56:46 +0000 (15:56 -0400)] 
Add section on updating from single-DES

There are, unfortunately, still some single-DES deployments out
there.  Try to help them along by documenting a procedure for
migrating to stronger crypto.

The texinfo install guide had a section on "upgrading", but it was
not really suitable for direct import into a RST document.  For one,
it gave a high profile to the on-disk incompatibilities in upgrades
to 1.1 and 1.2.  It also was driven at upgrading *to* triple-des (or RC4),
which are something of a dead-end.  This new text attempts to be more
general and applicable to today's environment.

12 years agoAdd a kdb5_util examples for old KDC upgrades
Ben Kaduk [Wed, 3 Oct 2012 16:29:20 +0000 (12:29 -0400)] 
Add a kdb5_util examples for old KDC upgrades

It's a slightly less-contrived use case of the utility than the
other example, which reads more like a usage statement.
Give a motivating sentence before each example, and note that this
new example is not needed in the general upgrade case.

The need to dump/load for upgrades prior to 1.2 was documented in
the texinfo install guide, but not in any RST sources until now.

ticket: 7407

12 years agoDe-conditionalize Camellia code
Greg Hudson [Tue, 9 Oct 2012 18:27:04 +0000 (14:27 -0400)] 
De-conditionalize Camellia code

The Camellia enctypes and cksumtypes have received IANA assignments.
Add #defines using those assignments to krb5.h, remove the CAMELLIA
conditional, and enable testing code as appropriate.

The Camellia draft has not received an RFC number yet, so there is no
Doxygen markup for the enctype and cksumtype #defines.  That can be
added once the RFC number is known.

12 years agoDocument DejaGnu dependency and manual tests
Ben Kaduk [Tue, 2 Oct 2012 22:03:16 +0000 (18:03 -0400)] 
Document DejaGnu dependency and manual tests

The Texinfo install guide had a separate subsection about the DejaGnu
tests which did not get converted to the RST source.

In the testing section, also link to the wiki page on manual testing.

ticket: 7407

12 years agoRemove bug-report.texinfo
Ben Kaduk [Wed, 26 Sep 2012 16:00:58 +0000 (12:00 -0400)] 
Remove bug-report.texinfo

It is unused; send-pr.texinfo supercedes it at the moment anyway.

ticket: 7408

12 years agoUntabify preauth_sam2.c
Greg Hudson [Mon, 8 Oct 2012 17:07:31 +0000 (13:07 -0400)] 
Untabify preauth_sam2.c

12 years agoRemove iprop dejagnu test
Greg Hudson [Mon, 8 Oct 2012 16:18:35 +0000 (12:18 -0400)] 
Remove iprop dejagnu test

Both the Python and dejagnu iprop tests are slow since they use sleeps
to give kpropd time to do its work (although we can fix this with some
work).  Since the Python tests cover the same ground as the dejagnu
tests, we don't need both.

12 years agoImport and complete Greg Hudson's iprop test
Nicolas Williams [Mon, 3 Sep 2012 20:57:03 +0000 (15:57 -0500)] 
Import and complete Greg Hudson's iprop test

ticket: 7374

12 years agoPrep k5test.py for iprop (add start_kpropd(), ...)
Nicolas Williams [Mon, 3 Sep 2012 23:06:44 +0000 (18:06 -0500)] 
Prep k5test.py for iprop (add start_kpropd(), ...)

Add a start_kpropd() method to K5Realm and make start_kadmind() use the
kadmind -p, -K, and -F options.

ticket: 7378

12 years agokrb5_db_delete_principal() can fail to unlock ulog
Nicolas Williams [Wed, 3 Oct 2012 22:22:12 +0000 (17:22 -0500)] 
krb5_db_delete_principal() can fail to unlock ulog

Not really: only when the KDB backend lacks a delete method.  Still.

ticket: 7403

12 years agoRemove an old, incorrect comment in kpropd.c
Nicolas Williams [Mon, 24 Sep 2012 23:04:50 +0000 (18:04 -0500)] 
Remove an old, incorrect comment in kpropd.c

We absolutely do not want a parking brake on the kprop protocol as
described in the comment being removed.  Instead the kprop command
should be fixed so it doesn't die on error (assuming it even still does
or ever did, neither of which I've checked).

12 years agoSend kpropd debug msgs to stderr
Nicolas Williams [Sat, 22 Sep 2012 03:10:39 +0000 (22:10 -0500)] 
Send kpropd debug msgs to stderr

12 years agoFix a minor race in kdb5_util load
Nicolas Williams [Wed, 3 Oct 2012 03:19:00 +0000 (22:19 -0500)] 
Fix a minor race in kdb5_util load

If a kdb5_util load gets killed between rename()ing the new KDB file
into place and resetting the iprop ulog then the ulog can reflect the
pre-load state, which will almost certainly be incorrect.

This matters because we want to impose a timeout on full resyncs in
kpropd when iprop dictates that a full resync is needed, and the
simplest timeout scheme involves signaling the kdb5_util load process.
But also, we want no such races in general.

The fix is simple: re-initialize the ulog before renaming the new KDB
file into place, then proceed as usual.  If the ulog is not properly
updated at the end of the load it will at least always result in
subsequent iprop get updates operations always indicating that a full
resync is required.

ticket: 7399

12 years agoMake kadmind iprop never return UPDATE_BUSY
Nicolas Williams [Thu, 20 Sep 2012 19:37:45 +0000 (15:37 -0400)] 
Make kadmind iprop never return UPDATE_BUSY

Currently kadmind allows slaves to poll for updates as often as they
like, but not within 10s of the last update.  This means that iprop will
appear to fail to synchronize the KDC at any site whose master KDC
processes at least one write transaction every 10 seconds consistently.

The original intention must have been to throttle iprop clients (slave
KDCs) that poll too often.  But UPDATE_BUSY as implemented is not that,
and implementing a throttle would be difficult (requires keeping state
in a table) and mostly useless (admins can manage their poll timers just
fine without a throttle in kadmind).

ticket: 7369

12 years agoRemove MAX_ULOGENTRIES
Nicolas Williams [Mon, 24 Sep 2012 22:48:48 +0000 (17:48 -0500)] 
Remove MAX_ULOGENTRIES

If a master KDC uses only a 64-bit libkadm5srv then there is no reason
to impose any limit on ulog size: the practical maximum will be given by
the filesystem and available storage space.

Even when using a 32-bit libkadm5srv the maximum practical ulog size
will be found easily enough when mmap() fails.

ticket: 7368

12 years agoAdd -R option to kproplog to force full resyncs
Nicolas Williams [Thu, 6 Sep 2012 20:31:59 +0000 (15:31 -0500)] 
Add -R option to kproplog to force full resyncs

ticket: 7375

12 years agoFix policy refcount corruption race in dump
Nicolas Williams [Thu, 27 Sep 2012 22:10:41 +0000 (17:10 -0500)] 
Fix policy refcount corruption race in dump

ticket: 7384

12 years agoSync iprop header in kdb5_util dump
Nicolas Williams [Fri, 5 Oct 2012 18:56:35 +0000 (14:56 -0400)] 
Sync iprop header in kdb5_util dump

[ghudson@mit.edu: split out from previous commit]

12 years agokdb5_util load needs iprop safety net
Nicolas Williams [Sat, 22 Sep 2012 04:38:49 +0000 (23:38 -0500)] 
kdb5_util load needs iprop safety net

ticket: 7370

12 years agoDeprecate kpropd -S option
Nicolas Williams [Mon, 24 Sep 2012 15:17:53 +0000 (10:17 -0500)] 
Deprecate kpropd -S option

ticket: 7376

12 years agoCorrect docs re: kpropd usage w/ iprop
Nicolas Williams [Mon, 24 Sep 2012 15:24:54 +0000 (10:24 -0500)] 
Correct docs re: kpropd usage w/ iprop

ticket: 7379

12 years agoAdd -p, -F, -K options to kadmind
Nicolas Williams [Mon, 24 Sep 2012 18:38:20 +0000 (13:38 -0500)] 
Add -p, -F, -K options to kadmind

New options:

    -p path-to-kdb5_util
    -K path-to-kprop
    -F dump-file

These are needed for testing without first having to install.

ticket: 7372

12 years agoipropd_svc.c DPRINT improvements
Nicolas Williams [Mon, 24 Sep 2012 20:56:42 +0000 (15:56 -0500)] 
ipropd_svc.c DPRINT improvements

Make DPRINT a varargs macro and add some new debug prints.

12 years agoFix kdb5_util dump race
Nicolas Williams [Wed, 26 Sep 2012 22:32:56 +0000 (17:32 -0500)] 
Fix kdb5_util dump race

ticket: 7377

12 years agoCleanup dump_db()
Nicolas Williams [Wed, 26 Sep 2012 22:05:05 +0000 (17:05 -0500)] 
Cleanup dump_db()

12 years agoUse a single global dump for iprop full syncs
Nicolas Williams [Fri, 17 Aug 2012 23:19:31 +0000 (18:19 -0500)] 
Use a single global dump for iprop full syncs

Use a global dump (the default dump file) for full syncs for iprop.
When a slave asks for a fullsync we kprop the existing global dump to it
if that is good enough, else we dump the DB and send the new global
dump.

Before this change kadmind would run kdb5_util dump -i... each time a
slave asked for a full dump.  This was done in a sub-process,
thankfully, but it was still a waste of time and storage (e.g., if one
has a huge KDB).

Also, long dump times might cause a slave to give up (the timeout for
this is now configurable).  But since iprop dumps bear a serial number
and timestamp and since slaves will resync from that point forward, it
doesn't matter if the dump we send a slave is fresh as long as it is
fresh enough (i.e., that its sno and timestamp are in the ulog).

Also:

 - Rename dumps into place instead of unlink, create, write (but we
   still keep the dump ok files as lock files and as a method of
   signaling to kprop that the dump is complete).

ticket: 7371

12 years agoImprove kpropd debug and syslog output
Nicolas Williams [Fri, 5 Oct 2012 17:23:48 +0000 (13:23 -0400)] 
Improve kpropd debug and syslog output

Add additional debug output and syslogs.  Remove "kpropd:" from
syslogs.  Always call openlog().  Clean up C style of a few messages.

[ghudson@mit.edu: split and combine commits; commit message]

12 years agoImprove kpropd behavior in iprop mode
Nicolas Williams [Tue, 25 Sep 2012 02:09:17 +0000 (21:09 -0500)] 
Improve kpropd behavior in iprop mode

 - Make kpropd in iprop mode fork a child to listen for kprops from the
   master.  The child writes progress and outcome reports to the parent
   for each kprop.  This fixes a race between asking for a full resync
   and setting up a listener socket for it.

 - Add runonce (-t) for kpropd do_standalone() too.

 - Add a new iprop parameter: iprop_resync_timeout.  kpropd will keep
   asking for incremental updates while waiting for a full resync to
   finish, and will re-request a full resync if kadmind continues to
   indicate that one is needed after this timeout passes since the
   previous full resync was requested.

 - Allow polling intervals less than 10 seconds.

[ghudson@mit.edu: split out debug output changes; note polling interval
change in commit message]

ticket: 7373

12 years agoAdd Python scripts to check for C style issues
Greg Hudson [Mon, 24 Sep 2012 20:39:39 +0000 (16:39 -0400)] 
Add Python scripts to check for C style issues

util/cstyle-file.py checks a file for C style issues and displays
line-by-line output.  It is not terribly sophisticated, and can
probably be improved upon (e.g. by doing an emacs batch-reindent of
the file and checking for differences in indentation).

util/cstyle.py produces diffs using git, runs the file checker on each
modified C source file in each diff, and displays the output lines
attribute to the diff.

12 years agoGENC should always export composite names
Luke Howard [Sat, 1 Sep 2012 01:08:27 +0000 (11:08 +1000)] 
GENC should always export composite names

RFC 6680 requires that gss_export_name_composite begin the output
token with 04 02.  So we must produce a composite token even if the
name has no authdata, and be able to consume a composite token with no
authdata attributes.

[ghudson@mit.edu: expanded commit message]

ticket: 7400 (new)

12 years agoAdd SPI calls to import objects by mech oid
Simo Sorce [Tue, 28 Aug 2012 14:47:23 +0000 (16:47 +0200)] 
Add SPI calls to import objects by mech oid

An interposer mech needs to be able to handle multiple mechanisms.
When importing a mech token for a name, cred, or context, the
interposer mech needs to know the mech type of the token being
imported.  To make this work, add SPI calls which accept a mech type
argument.

[ghudson@mit.edu: Stylistic changes, commit squashing, commit message]

12 years agoUse interposer mechanisms in mechglue functions
Simo Sorce [Tue, 5 Jun 2012 12:09:15 +0000 (08:09 -0400)] 
Use interposer mechanisms in mechglue functions

Wherever a GSSAPI mechglue function accepts a mech OID from the
caller, use gssint_select_mech_type() to choose the mechanism to use.
Wherever a mechglue function outputs a mech OID to the caller, use
gssint_get_public_oid() or gssint_make_public_oid_set() to expose the
public mech OID.

[ghudson@mit.edu: Stylistic changes, commit squashing, commit message]

12 years agoAdd primitives for using interposed mechanisms
Simo Sorce [Mon, 11 Jun 2012 15:50:26 +0000 (11:50 -0400)] 
Add primitives for using interposed mechanisms

Add gssint_select_mechanism() to determine what mechanism to use for a
caller-specified OID, gssint_get_public_oid() to determine what
mechanism to expose to the caller, and gssint_make_public_oid_set to
translate an array of mech OIDs into a set of public OIDs.  In
gssint_get_mechanism(), match interposed OIDs as well as real ones.

[ghudson@mit.edu: Stylistic changes, commit squashing, commit message]

12 years agoAdd support for loading interposer modules
Simo Sorce [Tue, 18 Sep 2012 02:00:44 +0000 (22:00 -0400)] 
Add support for loading interposer modules

Extend the syntax of the gss mech config file to allow a module type
delimited by triangle brackets.  If the module type is "interposer",
flag the mechanism entry as being an interposer mechanism.  A module
marked as an interposer is loaded immediately (so it can interpose a
built-in mechanism) and produces a list of OIDs to interpose.
Interposer mechanisms are not exposed to applications.

[ghudson@mit.edu: Stylistic changes, commit squashing, commit
message]

12 years agoCache TGS-REPs too
Tom Yu [Thu, 27 Sep 2012 21:18:18 +0000 (17:18 -0400)] 
Cache TGS-REPs too

Changes in r25660 inadvertently failed to insert TGS-REPs into the
lookaside cache.  Call finish_dispatch_cache() at the end of
dispatch() to handle this case.

ticket: 7388 (new)
target_version: 1.10.4
tags: pullup

12 years agoAdd version info for ccapiserver.exe
Ben Kaduk [Thu, 27 Sep 2012 19:16:28 +0000 (15:16 -0400)] 
Add version info for ccapiserver.exe

Executables and shared libraries should have a file version, so
that the upgrade process works as expected.

ticket: 7386 (new)
tags: pullup
target_version: 1.10.4

12 years agoFix typo
Ben Kaduk [Thu, 27 Sep 2012 17:11:41 +0000 (13:11 -0400)] 
Fix typo

Actually expand the OUTPRE variable instead of just using a literal
string.

ticket: 7387 (new)
subject: Windows build leaves (OUTPRE)/krb5ccNN.res in ccapi/lib/win/srctmp
tags: pullup
target_version: 1.10.4

12 years agoRemove some dead Makefile code
Ben Kaduk [Fri, 21 Sep 2012 17:33:01 +0000 (13:33 -0400)] 
Remove some dead Makefile code

FILES is unused in util/{ss,et}/Makefile.in; some other unused
variables were nearby.

12 years agoRemove kerbsrc.win
Ben Kaduk [Fri, 21 Sep 2012 17:01:06 +0000 (13:01 -0400)] 
Remove kerbsrc.win

It has been unloved and broken repeatedly for many years, requiring
updating of several variables whenever new directories are added
and similar tedia.  It was originally intended to avoid the need
for Unix utilities on Windows, but Microsoft provides the Utilities
and SDK for UNIX-based Applications which is enough rope to do a
native build.

Leave behind a warning message to anyone who does try to build the
target.

Clean up some now-unused infrastructure in the build system.

ticket: 7367 (new)

12 years agoRemove kerbsrc-nt
Ben Kaduk [Fri, 21 Sep 2012 15:13:32 +0000 (11:13 -0400)] 
Remove kerbsrc-nt

NT is long-gone; we don't need to keep a special-case error message
around telling people not to use it.
Clean out the unneeded code from the Makefile.in

12 years agoRemove kerbsrc83
Ben Kaduk [Thu, 20 Sep 2012 22:03:54 +0000 (18:03 -0400)] 
Remove kerbsrc83

It's been a long time since systems were limited to 8.3 format
for file names.  No one should be thinking to try and build this
target, and if they do, we don't need a custom error message anymore.
Clean out the unneeded code from the Makefile.in.

12 years agoUpdate FILES and WINFILES for kerbsrc.zip
Ben Kaduk [Thu, 20 Sep 2012 18:17:37 +0000 (14:17 -0400)] 
Update FILES and WINFILES for kerbsrc.zip

Note that windows/wshelper/* was removed from the list, as it doesn't
exist.

The kerbsrc.zip target is slated for removal, but attempt to make it
more correct before removing it should it need to be revived.

Submitted by: Blaine Elzey  blaine.elzey at alcatel-lucent.com

ticket: 7364 (new)

12 years agoDo not add empty dir to the include search list
Ben Kaduk [Thu, 20 Sep 2012 18:03:20 +0000 (14:03 -0400)] 
Do not add empty dir to the include search list

windows/leashdll/include contains only a krb4 directory.
We have a dubious need for the latter through AFSroutines.c,
but the former can be eliminated.

12 years agoUpdate windows/README
Ben Kaduk [Wed, 19 Sep 2012 16:13:30 +0000 (12:13 -0400)] 
Update windows/README

The build instructions have changed somewhat, as have the requirements
for a build environment.
The default behavior for KRB5_CONFIG and KRB5CCNAME has also changed.
Attempt to remove mention of overly specific Windows versions that
are now quite old when the behavior persists in newer versions of Windows.
Document the usage of DNS by default and the reduced need for a large
krb5.ini file.
Talk a little more about the LSA cache.

The kerbsrc.win target is no longer supported.

ticket: 7363 (new)
target_version: 1.10.4
tags: pullup

12 years agoFix t_s4u2proxy_krb5 cleanup
Greg Hudson [Mon, 24 Sep 2012 20:57:24 +0000 (16:57 -0400)] 
Fix t_s4u2proxy_krb5 cleanup

Unlike most GSS test programs, t_s4u2proxy_krb5 uses a cleanup
handler, so we have to be careful to initialize everything we clean
up--particularly service2_name, which is initialized after a possible
goto.  Also, remember to release acceptor_name.