<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<id>tag:old.nabble.com,2006:forum-961</id>
	<title>Nabble - Kerberos</title>
	<updated>2009-11-28T04:31:30Z</updated>
	<link rel="self" type="application/atom+xml" href="http://old.nabble.com/Kerberos-f961.xml" />
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Kerberos-f961.html" />
	<subtitle type="html">Kerberos is the Network Authentication Protocol. Kerberos home is &lt;a href=&quot;http://web.mit.edu/kerberos/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;.</subtitle>
	
<entry>
	<id>tag:old.nabble.com,2006:post-26552735</id>
	<title>Missing library in krb5-config --libs krb5 ?</title>
	<published>2009-11-28T04:31:30Z</published>
	<updated>2009-11-28T04:31:30Z</updated>
	<author>
		<name>Markus Moeller</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;&amp;nbsp;I use something like below in my application, but now it doesn't link 
&lt;br&gt;because the external symbol has moved to a library which is not part of the 
&lt;br&gt;krb5-config --libs krb5 command. &amp;nbsp;Can -lotp be added to it please ?
&lt;br&gt;&lt;br&gt;Thank you
&lt;br&gt;Markus
&lt;br&gt;&lt;br&gt;#include &amp;lt;stdio.h&amp;gt;
&lt;br&gt;#include &amp;lt;stdlib.h&amp;gt;
&lt;br&gt;#include &amp;lt;krb5.h&amp;gt;
&lt;br&gt;main () {
&lt;br&gt;printf(&amp;quot;Version %s\n&amp;quot;,heimdal_version);
&lt;br&gt;}
&lt;br&gt;&lt;br&gt;Version &amp;lt; 1.3.0
&lt;br&gt;&lt;br&gt;&amp;gt; gcc `/opt/heimdal-1.2.1/bin/krb5-config --cflags krb5` -o/tmp/print_hv 
&lt;br&gt;&amp;gt; /tmp/print_hv.c `/opt/heimdal-1.2.1/bin/krb5-config --libs krb5`
&lt;br&gt;&amp;gt; export LD_LIBRARY_PATH=/opt/heimdal-1.2.1/lib
&lt;br&gt;&amp;gt; /tmp/print_hv
&lt;br&gt;Version Heimdal 1.2.1
&lt;br&gt;&lt;br&gt;&lt;br&gt;Version &amp;gt; 1.3.0
&lt;br&gt;&lt;br&gt;&amp;gt; gcc `/opt/heimdal-1.3.1/bin/krb5-config --cflags krb5` -o/tmp/print_hv 
&lt;br&gt;&amp;gt; /tmp/print_hv.c `/opt/heimdal-1.3.1/bin/krb5-config --libs krb5`
&lt;br&gt;/tmp/ccWRvMqL.o: In function `main':
&lt;br&gt;print_hv.c:(.text+0x12): undefined reference to `heimdal_version'
&lt;br&gt;collect2: ld returned 1 exit status
&lt;br&gt;&lt;br&gt;&lt;br&gt;adding -lotp fixes it
&lt;br&gt;&lt;br&gt;&amp;gt; gcc `/opt/heimdal-1.3.1/bin/krb5-config --cflags krb5` -o/tmp/print_hv 
&lt;br&gt;&amp;gt; /tmp/print_hv.c `/opt/heimdal-1.3.1/bin/krb5-config --libs krb5` -lotp
&lt;br&gt;&amp;gt; export LD_LIBRARY_PATH=/opt/heimdal-1.3.1/lib
&lt;br&gt;&amp;gt; /tmp/print_hv
&lt;br&gt;Version Heimdal 1.3.1
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Heimdal---General-f969.html&quot; embed=&quot;fixTarget[969]&quot; target=&quot;_top&quot; &gt;Heimdal - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Missing-library-in-krb5-config---libs-krb5---tp26552735p26552735.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26548817</id>
	<title>Re: GSSAPI Question</title>
	<published>2009-11-27T14:49:14Z</published>
	<updated>2009-11-27T14:49:14Z</updated>
	<author>
		<name>Greg Hudson</name>
	</author>
	<content type="html">On Wed, 2009-11-25 at 16:12 -0500, Shirish Rai wrote:
&lt;br&gt;&amp;gt; I have looked at the code a bit and it seem GSS creates a new KRB context.
&lt;br&gt;&amp;gt; Is there a way to tell GSS to use an existing context and/or ccache. I tried
&lt;br&gt;&amp;gt; this with the gss_krb5_ccache_name API. But that did not change anything. 
&lt;br&gt;&lt;br&gt;There's no way to make it use an existing context, but that should not
&lt;br&gt;be necessary. &amp;nbsp;gss_krb5_ccache_name should make it use an existing
&lt;br&gt;ccache.
&lt;br&gt;&lt;br&gt;&amp;gt; I guess there must be a way to only user GSSAPI as well. If that is the
&lt;br&gt;&amp;gt; correct way to go about his, is there an example I can look at.
&lt;br&gt;&lt;br&gt;GSSAPI does not currently have a way to acquire initial credentials (in
&lt;br&gt;current MIT krb5, at least; I believe there are extensions unde
&lt;br&gt;consideration for the future). &amp;nbsp;So you have the right general approach. 
&lt;br&gt;&lt;br&gt;I think what's tripping you up is that krb5_get_init_creds_password
&lt;br&gt;doesn't store the resulting credential in a ccache. &amp;nbsp;You need to
&lt;br&gt;explicitly store my_creds into the default ccache or into one you create
&lt;br&gt;for this purpose.
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;krbdev mailing list &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26548817&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;krbdev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://mailman.mit.edu/mailman/listinfo/krbdev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://mailman.mit.edu/mailman/listinfo/krbdev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Kerberos---Dev-f964.html&quot; embed=&quot;fixTarget[964]&quot; target=&quot;_top&quot; &gt;Kerberos - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/GSSAPI-Question-tp26520396p26548817.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26536396</id>
	<title>[krbdev.mit.edu #6576] SVN Commit</title>
	<published>2009-11-26T16:00:07Z</published>
	<updated>2009-11-26T16:00:07Z</updated>
	<author>
		<name>Greg Hudson via RT</name>
	</author>
	<content type="html">&lt;br&gt;Add krb5_k_prf, the krb5_key version of krb5_c_prf.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://src.mit.edu/fisheye/changelog/krb5/?cs=23365&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://src.mit.edu/fisheye/changelog/krb5/?cs=23365&lt;/a&gt;&lt;br&gt;Commit By: ghudson
&lt;br&gt;Revision: 23365
&lt;br&gt;Changed Files:
&lt;br&gt;U &amp;nbsp; trunk/src/include/krb5/krb5.hin
&lt;br&gt;U &amp;nbsp; trunk/src/lib/crypto/krb/prf.c
&lt;br&gt;U &amp;nbsp; trunk/src/lib/crypto/libk5crypto.exports
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;krb5-bugs mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26536396&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;krb5-bugs@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://mailman.mit.edu/mailman/listinfo/krb5-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://mailman.mit.edu/mailman/listinfo/krb5-bugs&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Kerberos---Bugs-f963.html&quot; embed=&quot;fixTarget[963]&quot; target=&quot;_top&quot; &gt;Kerberos - Bugs&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-krbdev.mit.edu--6576--SVN-Commit-tp26536396p26536396.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26535629</id>
	<title>Re: Revisiting krb5_gic_opt_ext</title>
	<published>2009-11-26T14:15:47Z</published>
	<updated>2009-11-26T14:15:47Z</updated>
	<author>
		<name>Lukeh-3</name>
	</author>
	<content type="html">&lt;br&gt;On 26/11/2009, at 10:39 PM, Love Hörnquist Åstrand wrote:
&lt;br&gt;&lt;br&gt;&amp;gt;&amp;gt; The get_init_creds API is very clunky. &amp;nbsp;Time for a new one?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; The 4th try ? see krb5_init_creds_init() before you start the &amp;nbsp;
&lt;br&gt;&amp;gt; revolution.
&lt;br&gt;&lt;br&gt;This is in trunk now, BTW, so same as Heimdal (krb5_tkt_creds_XXX and &amp;nbsp;
&lt;br&gt;IAKERB not yet merged).
&lt;br&gt;&lt;br&gt;-- Luke
&lt;br&gt;_______________________________________________
&lt;br&gt;krbdev mailing list &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26535629&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;krbdev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://mailman.mit.edu/mailman/listinfo/krbdev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://mailman.mit.edu/mailman/listinfo/krbdev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Kerberos---Dev-f964.html&quot; embed=&quot;fixTarget[964]&quot; target=&quot;_top&quot; &gt;Kerberos - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Revisiting-krb5_gic_opt_ext-tp26519055p26535629.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26535236</id>
	<title>Re: Revisiting krb5_gic_opt_ext</title>
	<published>2009-11-26T13:39:18Z</published>
	<updated>2009-11-26T13:39:18Z</updated>
	<author>
		<name>Love Hörnquist Åstrand</name>
	</author>
	<content type="html">&amp;gt; The get_init_creds API is very clunky. &amp;nbsp;Time for a new one?
&lt;br&gt;&lt;br&gt;The 4th try ? see krb5_init_creds_init() before you start the revolution.
&lt;br&gt;&lt;br&gt;Love
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;krbdev mailing list &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26535236&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;krbdev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://mailman.mit.edu/mailman/listinfo/krbdev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://mailman.mit.edu/mailman/listinfo/krbdev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Kerberos---Dev-f964.html&quot; embed=&quot;fixTarget[964]&quot; target=&quot;_top&quot; &gt;Kerberos - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Revisiting-krb5_gic_opt_ext-tp26519055p26535236.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26535024</id>
	<title>Re: Revisiting krb5_gic_opt_ext</title>
	<published>2009-11-26T13:05:23Z</published>
	<updated>2009-11-26T13:05:23Z</updated>
	<author>
		<name>Nicolas Williams</name>
	</author>
	<content type="html">The get_init_creds API is very clunky. &amp;nbsp;Time for a new one?
&lt;br&gt;&lt;br&gt;Nico
&lt;br&gt;-- 
&lt;br&gt;_______________________________________________
&lt;br&gt;krbdev mailing list &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26535024&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;krbdev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://mailman.mit.edu/mailman/listinfo/krbdev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://mailman.mit.edu/mailman/listinfo/krbdev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Kerberos---Dev-f964.html&quot; embed=&quot;fixTarget[964]&quot; target=&quot;_top&quot; &gt;Kerberos - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Revisiting-krb5_gic_opt_ext-tp26519055p26535024.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26533218</id>
	<title>Re: How to get pre-authentication work with AD?</title>
	<published>2009-11-26T10:18:53Z</published>
	<updated>2009-11-26T10:18:53Z</updated>
	<author>
		<name>Love Hörnquist Åstrand</name>
	</author>
	<content type="html">&lt;br&gt;&amp;gt; I'm trying to get a simple user authentication working against AD KDC. I'm using krb5_get_init_creds_password function. I observe that this function fails with the message &amp;quot;Looping 11 times while getting initial credentials&amp;quot;. After deep diving into the code I see that the krb5_init_creds_step function is looping with the internal code KRB5KDC_ERR_PREAUTH_REQUIRED. 
&lt;br&gt;&amp;gt; I figure out that I should initialize the context in some way to send a pre-auth request to KDC. Could you explain how to do that? A sample code would be very appreciated.
&lt;br&gt;&lt;br&gt;It looks on the function you mentioned that you are using 1.3.x
&lt;br&gt;&lt;br&gt;Does your principal only have DES configured ?
&lt;br&gt;&lt;br&gt;Try enabling DES on the client (or even better, use aes or arcfour enctypes) by adding the following to your krb5.conf
&lt;br&gt;&lt;br&gt;[libdefaults]
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; allow_weak_crypto = true
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://www.h5l.org/blog/index.php/2008/10/des-will-die-in-heimdal/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.h5l.org/blog/index.php/2008/10/des-will-die-in-heimdal/&lt;/a&gt;&lt;br&gt;&lt;br&gt;Love
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Heimdal---General-f969.html&quot; embed=&quot;fixTarget[969]&quot; target=&quot;_top&quot; &gt;Heimdal - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/How-to-get-pre-authentication-work-with-AD--tp26533086p26533218.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26533086</id>
	<title>How to get pre-authentication work with AD?</title>
	<published>2009-11-26T10:08:25Z</published>
	<updated>2009-11-26T10:08:25Z</updated>
	<author>
		<name>Serge Emantayev</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;I'm trying to get a simple user authentication working against AD KDC. I'm using krb5_get_init_creds_password function. I observe that this function fails with the message &amp;quot;Looping 11 times while getting initial credentials&amp;quot;. After deep diving into the code I see that the krb5_init_creds_step function is looping with the internal code KRB5KDC_ERR_PREAUTH_REQUIRED. 
&lt;br&gt;I figure out that I should initialize the context in some way to send a pre-auth request to KDC. Could you explain how to do that? A sample code would be very appreciated.
&lt;br&gt;&lt;br&gt;Thanks
&lt;br&gt;Sergey Emantayev
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Heimdal---General-f969.html&quot; embed=&quot;fixTarget[969]&quot; target=&quot;_top&quot; &gt;Heimdal - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/How-to-get-pre-authentication-work-with-AD--tp26533086p26533086.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26524033</id>
	<title>[krbdev.mit.edu #6584] SVN Commit</title>
	<published>2009-11-25T19:55:01Z</published>
	<updated>2009-11-25T19:55:01Z</updated>
	<author>
		<name>Greg Hudson via RT</name>
	</author>
	<content type="html">&lt;br&gt;Pullup to 1.7-branch is only for the test case, as krb5-1.7 behaved
&lt;br&gt;correctly for these checksums.
&lt;br&gt;&lt;br&gt;Fix regression in MD4-DES and MD5-DES keyed checksums. &amp;nbsp;The original
&lt;br&gt;key was being used for the DES encryption, not the &amp;quot;xorkey&amp;quot;. &amp;nbsp;(key
&lt;br&gt;with each byte XORed with 0xf0)
&lt;br&gt;&lt;br&gt;Add a test case that will catch future regressions of this sort, by
&lt;br&gt;including a verification of a &amp;quot;known-good&amp;quot; checksum (derived from a
&lt;br&gt;known-to-be-interoperable version of the implementation).
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://src.mit.edu/fisheye/changelog/krb5/?cs=23361&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://src.mit.edu/fisheye/changelog/krb5/?cs=23361&lt;/a&gt;&lt;br&gt;Commit By: tlyu
&lt;br&gt;Revision: 23361
&lt;br&gt;Changed Files:
&lt;br&gt;U &amp;nbsp; trunk/src/lib/crypto/crypto_tests/Makefile.in
&lt;br&gt;U &amp;nbsp; trunk/src/lib/crypto/crypto_tests/t_cksum.c
&lt;br&gt;U &amp;nbsp; trunk/src/lib/crypto/krb/keyhash_provider/k5_md4des.c
&lt;br&gt;U &amp;nbsp; trunk/src/lib/crypto/krb/keyhash_provider/k5_md5des.c
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;krb5-bugs mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26524033&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;krb5-bugs@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://mailman.mit.edu/mailman/listinfo/krb5-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://mailman.mit.edu/mailman/listinfo/krb5-bugs&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Kerberos---Bugs-f963.html&quot; embed=&quot;fixTarget[963]&quot; target=&quot;_top&quot; &gt;Kerberos - Bugs&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-krbdev.mit.edu--6584--SVN-Commit-tp26524033p26524033.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26523873</id>
	<title>Re: [krbdev.mit.edu #6584] r22778 breaks zephyr; probable incompatible</title>
	<published>2009-11-25T19:23:44Z</published>
	<updated>2009-11-25T19:23:44Z</updated>
	<author>
		<name>Greg Hudson via RT</name>
	</author>
	<content type="html">I can confirm the patch works.
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;krb5-bugs mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26523873&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;krb5-bugs@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://mailman.mit.edu/mailman/listinfo/krb5-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://mailman.mit.edu/mailman/listinfo/krb5-bugs&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Kerberos---Bugs-f963.html&quot; embed=&quot;fixTarget[963]&quot; target=&quot;_top&quot; &gt;Kerberos - Bugs&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A--krbdev.mit.edu--6584--r22778-breaks-zephyr--probable-incompatible-tp26469919p26523873.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26523521</id>
	<title>pam-krb5 4.2 released</title>
	<published>2009-11-25T18:17:45Z</published>
	<updated>2009-11-25T18:17:45Z</updated>
	<author>
		<name>Russ Allbery</name>
	</author>
	<content type="html">I'm pleased to announce release 4.2 of pam-krb5.
&lt;br&gt;&lt;br&gt;pam-krb5 is a Kerberos v5 PAM module for either MIT Kerberos or Heimdal.
&lt;br&gt;It supports ticket refreshing by screen savers, configurable authorization
&lt;br&gt;handling, authentication of non-local accounts for network services,
&lt;br&gt;password changing, and password expiration, as well as all the standard
&lt;br&gt;expected PAM features. &amp;nbsp;It works correctly with OpenSSH, even with
&lt;br&gt;ChallengeResponseAuthentication and PrivilegeSeparation enabled, and
&lt;br&gt;supports extensive configuration either by PAM options or in krb5.conf or
&lt;br&gt;both. &amp;nbsp;PKINIT is supported with recent versions of both MIT Kerberos and
&lt;br&gt;Heimdal.
&lt;br&gt;&lt;br&gt;Changes from previous release:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; Add a new fail_pwchange option, which suppresses password changes for
&lt;br&gt;&amp;nbsp; &amp;nbsp; expired passwords and treats expired passwords the same as incorrect
&lt;br&gt;&amp;nbsp; &amp;nbsp; passwords.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; Include all the new header files from the portability code so that
&lt;br&gt;&amp;nbsp; &amp;nbsp; it will actually compile on non-Linux platforms.
&lt;br&gt;&lt;br&gt;You can download it from:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;lt;&lt;a href=&quot;http://www.eyrie.org/~eagle/software/pam-krb5/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.eyrie.org/~eagle/software/pam-krb5/&lt;/a&gt;&amp;gt;
&lt;br&gt;&lt;br&gt;This package is maintained using Git; see the instructions on the above
&lt;br&gt;page to access the Git repository.
&lt;br&gt;&lt;br&gt;Debian packages have been uploaded to Debian unstable.
&lt;br&gt;&lt;br&gt;Please let me know of any problems or feature requests not already listed
&lt;br&gt;in the TODO file.
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Russ Allbery (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26523521&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;rra@...&lt;/a&gt;) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;a href=&quot;http://www.eyrie.org/~eagle/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.eyrie.org/~eagle/&lt;/a&gt;&amp;gt;
&lt;br&gt;________________________________________________
&lt;br&gt;Kerberos mailing list &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26523521&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Kerberos@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://mailman.mit.edu/mailman/listinfo/kerberos&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://mailman.mit.edu/mailman/listinfo/kerberos&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Kerberos---General-f965.html&quot; embed=&quot;fixTarget[965]&quot; target=&quot;_top&quot; &gt;Kerberos - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/pam-krb5-4.2-released-tp26523521p26523521.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26523417</id>
	<title>kerberos in a virtual environment</title>
	<published>2009-11-25T17:58:28Z</published>
	<updated>2009-11-25T17:58:28Z</updated>
	<author>
		<name>michelle zhao</name>
	</author>
	<content type="html">Hi there,
&lt;br&gt;We are trying to set up a virtual domain under vmware with microsoft kdc,
&lt;br&gt;IIS and xp client.
&lt;br&gt;I noticed the naming difference. My content server is accessed through
&lt;br&gt;&lt;a href=&quot;http://*virtualname*.comp.com&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://*virtualname*.comp.com&lt;/a&gt;. But the system propery/computer name is &amp;quot;*
&lt;br&gt;realname*&amp;quot;. And &amp;quot;realname&amp;quot; is used in the kdc machine's active directory.
&lt;br&gt;NTLM works fine for the content server. But I can't see any kerberos
&lt;br&gt;handshake when I try to get the http page.
&lt;br&gt;&lt;br&gt;I don't see the name is used for kerberos protocol, but rather ip. Does
&lt;br&gt;anybody get similar setup working? Any idea?
&lt;br&gt;&lt;br&gt;thanks,
&lt;br&gt;Michelle
&lt;br&gt;________________________________________________
&lt;br&gt;Kerberos mailing list &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26523417&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Kerberos@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://mailman.mit.edu/mailman/listinfo/kerberos&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://mailman.mit.edu/mailman/listinfo/kerberos&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Kerberos---General-f965.html&quot; embed=&quot;fixTarget[965]&quot; target=&quot;_top&quot; &gt;Kerberos - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/kerberos-in-a-virtual-environment-tp26523417p26523417.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26523377</id>
	<title>Re: password expiration not prompting - solaris 10</title>
	<published>2009-11-25T17:55:57Z</published>
	<updated>2009-11-25T17:55:57Z</updated>
	<author>
		<name>Russ Allbery</name>
	</author>
	<content type="html">CT &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26523377&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;caltri@...&lt;/a&gt;&amp;gt; writes:
&lt;br&gt;&lt;br&gt;&amp;gt; Having an issue where when an account password has expired it doesn't
&lt;br&gt;&amp;gt; prompt user to change it and lets user login. &amp;nbsp;It does show a message
&lt;br&gt;&amp;gt; saying the it has expired.
&lt;br&gt;&lt;br&gt;Sun intentionally disables the normal Kerberos library support for
&lt;br&gt;changing passwords when authenticating with expired passwords. &amp;nbsp;I'm not
&lt;br&gt;sure why they chose to do that.
&lt;br&gt;&lt;br&gt;If you're running into this in the PAM context, you can work around this
&lt;br&gt;by using a PAM module and an application that supports the fully correct
&lt;br&gt;PAM method of handling expired accounts (return success from auth and then
&lt;br&gt;indicate a password change is needed in the account stack), or you can use
&lt;br&gt;a PAM module that detects and works around this case by doing the password
&lt;br&gt;change prompting itself in the auth stack (my pam-krb5 with force_pwchange
&lt;br&gt;set in the options, for instance).
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Russ Allbery (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26523377&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;rra@...&lt;/a&gt;) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;&lt;a href=&quot;http://www.eyrie.org/~eagle/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.eyrie.org/~eagle/&lt;/a&gt;&amp;gt;
&lt;br&gt;________________________________________________
&lt;br&gt;Kerberos mailing list &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26523377&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Kerberos@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://mailman.mit.edu/mailman/listinfo/kerberos&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://mailman.mit.edu/mailman/listinfo/kerberos&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Kerberos---General-f965.html&quot; embed=&quot;fixTarget[965]&quot; target=&quot;_top&quot; &gt;Kerberos - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/password-expiration-not-prompting---solaris-10-tp26518306p26523377.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26522511</id>
	<title>[krbdev.mit.edu #6586] SVN Commit</title>
	<published>2009-11-25T16:05:09Z</published>
	<updated>2009-11-25T16:05:09Z</updated>
	<author>
		<name>Greg Hudson via RT</name>
	</author>
	<content type="html">&lt;br&gt;Merge Luke's iakerb-libkrb5-as-only branch into trunk with several bug
&lt;br&gt;fixes. &amp;nbsp;Adds support for the krb5_init_creds APIs (same as Heimdal's)
&lt;br&gt;which allow AS requests to be performed via a different transport than
&lt;br&gt;the blocking send_to_kdc.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://src.mit.edu/fisheye/changelog/krb5/?cs=23358&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://src.mit.edu/fisheye/changelog/krb5/?cs=23358&lt;/a&gt;&lt;br&gt;Commit By: ghudson
&lt;br&gt;Revision: 23358
&lt;br&gt;Changed Files:
&lt;br&gt;U &amp;nbsp; trunk/src/include/krb5/krb5.hin
&lt;br&gt;U &amp;nbsp; trunk/src/lib/krb5/krb/fast.c
&lt;br&gt;U &amp;nbsp; trunk/src/lib/krb5/krb/gc_via_tkt.c
&lt;br&gt;U &amp;nbsp; trunk/src/lib/krb5/krb/get_in_tkt.c
&lt;br&gt;U &amp;nbsp; trunk/src/lib/krb5/krb/gic_keytab.c
&lt;br&gt;U &amp;nbsp; trunk/src/lib/krb5/krb/gic_pwd.c
&lt;br&gt;A &amp;nbsp; trunk/src/lib/krb5/krb/init_creds_ctx.h
&lt;br&gt;U &amp;nbsp; trunk/src/lib/krb5/krb/int-proto.h
&lt;br&gt;U &amp;nbsp; trunk/src/lib/krb5/krb/mk_req_ext.c
&lt;br&gt;U &amp;nbsp; trunk/src/lib/krb5/krb/send_tgs.c
&lt;br&gt;U &amp;nbsp; trunk/src/lib/krb5/libkrb5.exports
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;krb5-bugs mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26522511&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;krb5-bugs@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://mailman.mit.edu/mailman/listinfo/krb5-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://mailman.mit.edu/mailman/listinfo/krb5-bugs&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Kerberos---Bugs-f963.html&quot; embed=&quot;fixTarget[963]&quot; target=&quot;_top&quot; &gt;Kerberos - Bugs&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-krbdev.mit.edu--6586--SVN-Commit-tp26522511p26522511.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26521523</id>
	<title>Re: Revisiting krb5_gic_opt_ext</title>
	<published>2009-11-25T14:38:43Z</published>
	<updated>2009-11-25T14:38:43Z</updated>
	<author>
		<name>Greg Hudson</name>
	</author>
	<content type="html">On Wed, 2009-11-25 at 16:58 -0500, Sam Hartman wrote:
&lt;br&gt;&amp;gt; Why does krb5_get_init_creds (the synchronous wrapper) need to call
&lt;br&gt;&amp;gt; opt_to_opte?
&lt;br&gt;&amp;gt; Why not defer opt_to_opte until the init function?
&lt;br&gt;&lt;br&gt;The direct answer is: it receives an already opt_to_opte'd argument.
&lt;br&gt;&lt;br&gt;But the indirect answer is: I don't think any of the callers need to do
&lt;br&gt;that conversion. &amp;nbsp;So we can change krb5_get_init_creds to accept a
&lt;br&gt;non-opte'd options argument and sidestep the problem by only doing the
&lt;br&gt;conversion once, in krb5_init_creds_init. &amp;nbsp;No need to alter the
&lt;br&gt;opt_to_opte contract if we do that.
&lt;br&gt;&lt;br&gt;This change is slightly complicated because of all of the compatibility
&lt;br&gt;code which calls krb5_get_init_creds, but I will try to make it work.
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;krbdev mailing list &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26521523&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;krbdev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://mailman.mit.edu/mailman/listinfo/krbdev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://mailman.mit.edu/mailman/listinfo/krbdev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Kerberos---Dev-f964.html&quot; embed=&quot;fixTarget[964]&quot; target=&quot;_top&quot; &gt;Kerberos - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Revisiting-krb5_gic_opt_ext-tp26519055p26521523.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26521014</id>
	<title>Re: Revisiting krb5_gic_opt_ext</title>
	<published>2009-11-25T13:58:53Z</published>
	<updated>2009-11-25T13:58:53Z</updated>
	<author>
		<name>Sam Hartman</name>
	</author>
	<content type="html">Why does krb5_get_init_creds (the synchronous wrapper) need to call
&lt;br&gt;opt_to_opte?
&lt;br&gt;Why not defer opt_to_opte until the init function?
&lt;br&gt;_______________________________________________
&lt;br&gt;krbdev mailing list &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26521014&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;krbdev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://mailman.mit.edu/mailman/listinfo/krbdev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://mailman.mit.edu/mailman/listinfo/krbdev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Kerberos---Dev-f964.html&quot; embed=&quot;fixTarget[964]&quot; target=&quot;_top&quot; &gt;Kerberos - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Revisiting-krb5_gic_opt_ext-tp26519055p26521014.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26520580</id>
	<title>Re: Revisiting krb5_gic_opt_ext</title>
	<published>2009-11-25T13:24:58Z</published>
	<updated>2009-11-25T13:24:58Z</updated>
	<author>
		<name>Greg Hudson</name>
	</author>
	<content type="html">On Wed, 2009-11-25 at 15:58 -0500, Jeffrey Hutzelman wrote:
&lt;br&gt;&amp;gt; 4. Make opt_to_opte copy the structure only when the input is non-extended, 
&lt;br&gt;&amp;gt; and add a refcount to the extended version of the structure. &amp;nbsp;Creating an 
&lt;br&gt;&amp;gt; alias increments the refcount, and callers that currently free when the 
&lt;br&gt;&amp;gt; &amp;quot;shadowed&amp;quot; flag is set should instead call a put operation that decs the 
&lt;br&gt;&amp;gt; refcount and frees when appropriate.
&lt;br&gt;&lt;br&gt;I might do this as the stopgap for merging Luke's code. &amp;nbsp;The options I
&lt;br&gt;listed involve either copying an extended options structure (kind of a
&lt;br&gt;pain in the butt due to the complexity of the preauth_data field) or
&lt;br&gt;creating merge hassles for Sam and Luke by touching a bunch of code in
&lt;br&gt;the AS path.
&lt;br&gt;&lt;br&gt;There are only three places where we call opt_to_opte with the force
&lt;br&gt;flag set, so converting the corresponding frees should be fairly
&lt;br&gt;painless.
&lt;br&gt;&lt;br&gt;I'll amend #6034 to note the possiblity of eliminating the copies to
&lt;br&gt;simplify memory management, and that will be a future cleanup task.
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;krbdev mailing list &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26520580&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;krbdev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://mailman.mit.edu/mailman/listinfo/krbdev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://mailman.mit.edu/mailman/listinfo/krbdev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Kerberos---Dev-f964.html&quot; embed=&quot;fixTarget[964]&quot; target=&quot;_top&quot; &gt;Kerberos - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Revisiting-krb5_gic_opt_ext-tp26519055p26520580.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26520396</id>
	<title>GSSAPI Question</title>
	<published>2009-11-25T13:12:19Z</published>
	<updated>2009-11-25T13:12:19Z</updated>
	<author>
		<name>Shirish Rai</name>
	</author>
	<content type="html">I am trying to get GSSAPI client working with a Java based GSSAPI server.
&lt;br&gt;The underlying mechanism is of Kerberos. I first get a TGT and Service
&lt;br&gt;Ticket via Kerberos and then try to start the GSSAPI. I need to explicitly
&lt;br&gt;pass the credentials to be used. They cannot be the default user logged on
&lt;br&gt;etc. &amp;nbsp;However I keep getting the following error: 
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;GSS-API error gss_krb5_acquire_cred: Unspecified GSS failure. &amp;nbsp;Minor code
&lt;br&gt;may pro
&lt;br&gt;&lt;br&gt;vide more information
&lt;br&gt;&lt;br&gt;GSS-API error gss_krb5_acquire_cred: No credentials cache found
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;I have looked at the code a bit and it seem GSS creates a new KRB context.
&lt;br&gt;Is there a way to tell GSS to use an existing context and/or ccache. I tried
&lt;br&gt;this with the gss_krb5_ccache_name API. But that did not change anything. 
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;I guess there must be a way to only user GSSAPI as well. If that is the
&lt;br&gt;correct way to go about his, is there an example I can look at.
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;Here is the relevant code:
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;Any help would be greatly appreciated. 
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;Thanks. 
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;Shirish.
&lt;br&gt;&lt;br&gt;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;struct k5_data {
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; krb5_context ctx;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; krb5_ccache cc;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; krb5_principal me;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; char* name;
&lt;br&gt;&lt;br&gt;};
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;int _tmain(int argc, _TCHAR* argv[])
&lt;br&gt;&lt;br&gt;{
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; struct k5_data k5;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; memset(&amp;k5, 0, sizeof(k5));
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; krb5_error_code code = 0;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; krb5_creds my_creds;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; krb5_get_init_creds_opt *options = NULL;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; display_file = stdout;
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; cout &amp;lt;&amp;lt; &amp;quot;Starting Program &amp;quot; &amp;lt;&amp;lt; endl;
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; code = krb5_init_context(&amp;k5.ctx);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; if (code) {
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; com_err(&amp;quot;GSSAPI&amp;quot;, code, &amp;quot; while initializing library&amp;quot;);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; goto done;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; cout &amp;lt;&amp;lt; &amp;quot;done context&amp;quot; &amp;lt;&amp;lt; endl;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; code = krb5_cc_default(k5.ctx, &amp;k5.cc);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; if (code) {
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; com_err(&amp;quot;GSSAPI&amp;quot;, code, &amp;quot; while initializing cache&amp;quot;);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; goto done;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; const char* cache_name = krb5_cc_get_name(k5.ctx, k5.cc);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; cout &amp;lt;&amp;lt; &amp;quot;The name of default cache is &amp;quot; &amp;lt;&amp;lt; cache_name &amp;lt;&amp;lt; endl;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; cout &amp;lt;&amp;lt; &amp;quot;done cc cache&amp;quot; &amp;lt;&amp;lt; endl;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; code = krb5_parse_name(k5.ctx, USER_PRINCIPAL, &amp;k5.me);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; if (code) {
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; com_err(&amp;quot;GSSAPI&amp;quot;, code, &amp;quot; while parsing principal&amp;quot;);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; goto done;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; cout &amp;lt;&amp;lt; &amp;quot;done parse name&amp;quot; &amp;lt;&amp;lt; endl;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; code = krb5_get_init_creds_opt_alloc(k5.ctx, &amp;options);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; if (code) {
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; com_err(&amp;quot;GSSAPI&amp;quot;, code, &amp;quot; while allocating options&amp;quot;);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; goto done;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; cout &amp;lt;&amp;lt; &amp;quot;done alloc of options&amp;quot; &amp;lt;&amp;lt; endl;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; code = krb5_get_init_creds_password(k5.ctx, &amp;my_creds, k5.me,
&lt;br&gt;&amp;quot;Secret00&amp;quot;, 
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; NULL, NULL, 0, SERVICE_PRINCIPAL, NULL);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; if (code) {
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; com_err(&amp;quot;GSSAPI&amp;quot;, code, &amp;quot; while init_creds_password&amp;quot;);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; goto done;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; cout &amp;lt;&amp;lt; &amp;quot;Got service ticket&amp;quot; &amp;lt;&amp;lt; endl;
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; cout &amp;lt;&amp;lt; &amp;quot;Establishing GSS context &amp;quot; &amp;lt;&amp;lt; endl;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; OM_uint32 min_stat;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; const char* out_name;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; OM_uint32 maj_stat = gss_krb5_ccache_name(&amp;min_stat, cache_name,
&lt;br&gt;&amp;out_name);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; if (maj_stat != GSS_S_COMPLETE) {
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; display_status(&amp;quot;gss_krb5_ccache_name&amp;quot;, maj_stat, min_stat);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; gss_name_t desired_name;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; gss_cred_id_t cred;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; gss_buffer_desc name_tok;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; name_tok.value = USER_PRINCIPAL;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; name_tok.length = strlen(USER_PRINCIPAL);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; memset(&amp;cred, 0, sizeof(cred));
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; maj_stat = gss_import_name(&amp;min_stat, &amp;name_tok,
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; (gss_OID) gss_nt_service_name,
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;desired_name);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; if (maj_stat != GSS_S_COMPLETE) {
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; display_status(&amp;quot;parsing name&amp;quot;, maj_stat, min_stat);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; goto done;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; maj_stat = gss_acquire_cred(&amp;min_stat, desired_name, GSS_C_INDEFINITE,
&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; GSS_C_NULL_OID_SET, GSS_C_INITIATE, &amp;cred, NULL, NULL);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; if (maj_stat != GSS_S_COMPLETE) {
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; display_status(&amp;quot;gss_krb5_acquire_cred&amp;quot;, maj_stat, min_stat);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; goto done;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; [snip]
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; .
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; .
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;&lt;br /&gt; &lt;br /&gt;_______________________________________________
&lt;br&gt;krbdev mailing list &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26520396&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;krbdev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://mailman.mit.edu/mailman/listinfo/krbdev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://mailman.mit.edu/mailman/listinfo/krbdev&lt;/a&gt;&lt;br&gt;&lt;div class=&quot;small&quot;&gt;&lt;br/&gt;&lt;img src=&quot;http://old.nabble.com/images/icon_attachment.gif&quot; &gt; &lt;strong&gt;smime.p7s&lt;/strong&gt; (6K) &lt;a href=&quot;http://old.nabble.com/attachment/26520396/0/smime.p7s&quot; target=&quot;_top&quot;&gt;Download Attachment&lt;/a&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Kerberos---Dev-f964.html&quot; embed=&quot;fixTarget[964]&quot; target=&quot;_top&quot; &gt;Kerberos - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/GSSAPI-Question-tp26520396p26520396.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26520191</id>
	<title>Re: Revisiting krb5_gic_opt_ext</title>
	<published>2009-11-25T12:58:32Z</published>
	<updated>2009-11-25T12:58:32Z</updated>
	<author>
		<name>Jeffrey Hutzelman</name>
	</author>
	<content type="html">--On Wednesday, November 25, 2009 02:40:56 PM -0500 &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26520191&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ghudson@...&lt;/a&gt; wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Warning: grotty stuff ahead.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; The background: the krb5_get_init_creds system was originally
&lt;br&gt;&amp;gt; specified using a caller-allocated options structure
&lt;br&gt;&amp;gt; (krb5_get_init_creds_opt), which meant options fields couldn't be
&lt;br&gt;&amp;gt; added without breaking the ABI.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; To address this, krb5_gic_opt_ext was created. &amp;nbsp;This is a
&lt;br&gt;&amp;gt; library-allocated structure which is ABI-compatible with
&lt;br&gt;&amp;gt; krb5_get_init_creds_opt (sort of; see below). &amp;nbsp;If you're an API which
&lt;br&gt;&amp;gt; takes an options argument, you call krb5int_gic_opt_to_opte on it,
&lt;br&gt;&amp;gt; with the &amp;quot;force&amp;quot; flag set.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; opt_to_opte has an &amp;quot;interesting&amp;quot; contract: if the input is already an
&lt;br&gt;&amp;gt; extended structure, it creates an alias; otherwise, it creates a copy
&lt;br&gt;&amp;gt; and sets a &amp;quot;shadowed&amp;quot; flag. &amp;nbsp;The caller is supposed to check the
&lt;br&gt;&amp;gt; shadowed flag and free the structure when it is done.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; The problem: this contract is not nestable. &amp;nbsp;If the input of
&lt;br&gt;&amp;gt; opt_to_opte is a copy created by a previous call to opt_to_opte, then
&lt;br&gt;&amp;gt; the output will be an alias which looks like a copy, and that will
&lt;br&gt;&amp;gt; result in a double-free.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; We haven't run into this problem yet because we've never had a reason
&lt;br&gt;&amp;gt; to pass an opt_to_opte'd options structure to an external API. &amp;nbsp;But
&lt;br&gt;&amp;gt; I'm preparing to integrate some IAKERB support code which does;
&lt;br&gt;&amp;gt; specifically, the synchronous wrapper function krb5_get_init_creds
&lt;br&gt;&amp;gt; needs to supply options to krb5_init_creds_init.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Possible solutions:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; 1. Make opt_to_opte copy the structure if the input is shadowed and
&lt;br&gt;&amp;gt; the force flag is set. &amp;nbsp;This solves the immediate problem and creates
&lt;br&gt;&amp;gt; no extra work if the original caller used the new API.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; 2. Make opt_to_opte copy the structure all the time. &amp;nbsp;This is extra
&lt;br&gt;&amp;gt; work in the common case, but makes the code easier to analyze.
&lt;br&gt;&amp;gt; (&amp;quot;Maybe this is allocated and maybe this is an alias&amp;quot; is not a very
&lt;br&gt;&amp;gt; safe construction.)
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; 3. Eliminate the copies. &amp;nbsp;Instead, when peering at new options fields,
&lt;br&gt;&amp;gt; use accessors which can deal with either an extended or non-extended
&lt;br&gt;&amp;gt; options structure. &amp;nbsp;This would touch the most code, but would have the
&lt;br&gt;&amp;gt; same benefits of (2) without the extra allocation-and-copy work. &amp;nbsp;This
&lt;br&gt;&amp;gt; would probably entail changing internal interfaces like
&lt;br&gt;&amp;gt; krb5_get_init_creds to use pointers to krb5_get_init_creds_opt instead
&lt;br&gt;&amp;gt; of krb5_gic_opt_ext.
&lt;/div&gt;&lt;br&gt;&lt;br&gt;4. Make opt_to_opte copy the structure only when the input is non-extended, 
&lt;br&gt;and add a refcount to the extended version of the structure. &amp;nbsp;Creating an 
&lt;br&gt;alias increments the refcount, and callers that currently free when the 
&lt;br&gt;&amp;quot;shadowed&amp;quot; flag is set should instead call a put operation that decs the 
&lt;br&gt;refcount and frees when appropriate.
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;krbdev mailing list &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26520191&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;krbdev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://mailman.mit.edu/mailman/listinfo/krbdev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://mailman.mit.edu/mailman/listinfo/krbdev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Kerberos---Dev-f964.html&quot; embed=&quot;fixTarget[964]&quot; target=&quot;_top&quot; &gt;Kerberos - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Revisiting-krb5_gic_opt_ext-tp26519055p26520191.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26519055</id>
	<title>Revisiting krb5_gic_opt_ext</title>
	<published>2009-11-25T11:40:56Z</published>
	<updated>2009-11-25T11:40:56Z</updated>
	<author>
		<name>Greg Hudson</name>
	</author>
	<content type="html">Warning: grotty stuff ahead.
&lt;br&gt;&lt;br&gt;The background: the krb5_get_init_creds system was originally
&lt;br&gt;specified using a caller-allocated options structure
&lt;br&gt;(krb5_get_init_creds_opt), which meant options fields couldn't be
&lt;br&gt;added without breaking the ABI.
&lt;br&gt;&lt;br&gt;To address this, krb5_gic_opt_ext was created. &amp;nbsp;This is a
&lt;br&gt;library-allocated structure which is ABI-compatible with
&lt;br&gt;krb5_get_init_creds_opt (sort of; see below). &amp;nbsp;If you're an API which
&lt;br&gt;takes an options argument, you call krb5int_gic_opt_to_opte on it,
&lt;br&gt;with the &amp;quot;force&amp;quot; flag set.
&lt;br&gt;&lt;br&gt;opt_to_opte has an &amp;quot;interesting&amp;quot; contract: if the input is already an
&lt;br&gt;extended structure, it creates an alias; otherwise, it creates a copy
&lt;br&gt;and sets a &amp;quot;shadowed&amp;quot; flag. &amp;nbsp;The caller is supposed to check the
&lt;br&gt;shadowed flag and free the structure when it is done.
&lt;br&gt;&lt;br&gt;The problem: this contract is not nestable. &amp;nbsp;If the input of
&lt;br&gt;opt_to_opte is a copy created by a previous call to opt_to_opte, then
&lt;br&gt;the output will be an alias which looks like a copy, and that will
&lt;br&gt;result in a double-free.
&lt;br&gt;&lt;br&gt;We haven't run into this problem yet because we've never had a reason
&lt;br&gt;to pass an opt_to_opte'd options structure to an external API. &amp;nbsp;But
&lt;br&gt;I'm preparing to integrate some IAKERB support code which does;
&lt;br&gt;specifically, the synchronous wrapper function krb5_get_init_creds
&lt;br&gt;needs to supply options to krb5_init_creds_init.
&lt;br&gt;&lt;br&gt;Possible solutions:
&lt;br&gt;&lt;br&gt;1. Make opt_to_opte copy the structure if the input is shadowed and
&lt;br&gt;the force flag is set. &amp;nbsp;This solves the immediate problem and creates
&lt;br&gt;no extra work if the original caller used the new API.
&lt;br&gt;&lt;br&gt;2. Make opt_to_opte copy the structure all the time. &amp;nbsp;This is extra
&lt;br&gt;work in the common case, but makes the code easier to analyze.
&lt;br&gt;(&amp;quot;Maybe this is allocated and maybe this is an alias&amp;quot; is not a very
&lt;br&gt;safe construction.)
&lt;br&gt;&lt;br&gt;3. Eliminate the copies. &amp;nbsp;Instead, when peering at new options fields,
&lt;br&gt;use accessors which can deal with either an extended or non-extended
&lt;br&gt;options structure. &amp;nbsp;This would touch the most code, but would have the
&lt;br&gt;same benefits of (2) without the extra allocation-and-copy work. &amp;nbsp;This
&lt;br&gt;would probably entail changing internal interfaces like
&lt;br&gt;krb5_get_init_creds to use pointers to krb5_get_init_creds_opt instead
&lt;br&gt;of krb5_gic_opt_ext.
&lt;br&gt;&lt;br&gt;My current preference is for (3).
&lt;br&gt;&lt;br&gt;Some ancillary issues while I am in the neighborhood:
&lt;br&gt;&lt;br&gt;1. In RT #6034, Tom notes that krb5_gic_opt_ext is not guaranteed to
&lt;br&gt;be ABI-compatible with krb5_get_init_creds_opt simply because it has
&lt;br&gt;the same initial fields, and instead suggests making krb5_gic_opt_ext
&lt;br&gt;have a krb5_get_init_creds_opt as its first field. &amp;nbsp;It would be
&lt;br&gt;easy to make this change in concert with solution (3) above.
&lt;br&gt;&lt;br&gt;2. All of the new fields in krb5_gic_opt_ext are indirected through a
&lt;br&gt;field opt_private, which is a pointer to a krb5_gic_opt_private
&lt;br&gt;structure. &amp;nbsp;This feels needless; does anyone know why it was done this
&lt;br&gt;way, instead of just adding fields directly to krb5_gic_opt_ext?
&lt;br&gt;_______________________________________________
&lt;br&gt;krbdev mailing list &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26519055&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;krbdev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://mailman.mit.edu/mailman/listinfo/krbdev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://mailman.mit.edu/mailman/listinfo/krbdev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Kerberos---Dev-f964.html&quot; embed=&quot;fixTarget[964]&quot; target=&quot;_top&quot; &gt;Kerberos - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Revisiting-krb5_gic_opt_ext-tp26519055p26519055.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26518306</id>
	<title>password expiration not prompting - solaris 10</title>
	<published>2009-11-25T10:48:17Z</published>
	<updated>2009-11-25T10:48:17Z</updated>
	<author>
		<name>CT-8</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;Having an issue where when an account password has expired it doesn't
&lt;br&gt;prompt user to change it and lets user login. &amp;nbsp;It does show a message
&lt;br&gt;saying the it has expired.
&lt;br&gt;Running Solaris 10 client authenticating to AD kerberos. &amp;nbsp;Does anyone
&lt;br&gt;know how I can configure pam/kerberos to prompt ?
&lt;br&gt;&lt;br&gt;Thanks.
&lt;br&gt;________________________________________________
&lt;br&gt;Kerberos mailing list &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26518306&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Kerberos@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://mailman.mit.edu/mailman/listinfo/kerberos&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://mailman.mit.edu/mailman/listinfo/kerberos&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Kerberos---General-f965.html&quot; embed=&quot;fixTarget[965]&quot; target=&quot;_top&quot; &gt;Kerberos - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/password-expiration-not-prompting---solaris-10-tp26518306p26518306.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26516699</id>
	<title>Re: create principals fails</title>
	<published>2009-11-25T09:10:27Z</published>
	<updated>2009-11-25T09:10:27Z</updated>
	<author>
		<name>Greg Hudson</name>
	</author>
	<content type="html">On Tue, 2009-11-24 at 05:20 -0500, &amp;quot;kai plückhahn&amp;quot; wrote:
&lt;br&gt;&amp;gt; kadmin.local: Server error while initializing kadmin.local interface
&lt;br&gt;&lt;br&gt;Unfortunately, as noted in previous threads
&lt;br&gt;(&lt;a href=&quot;http://mailman.mit.edu/pipermail/kerberos/2009-August/015187.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mailman.mit.edu/pipermail/kerberos/2009-August/015187.html&lt;/a&gt;) the
&lt;br&gt;KDC LDAP code is generating a much more informative error message, but
&lt;br&gt;it isn't printed due to a problem with contexts. &amp;nbsp;That problem is fixed
&lt;br&gt;for 1.8, but that doesn't help you right now.
&lt;br&gt;&lt;br&gt;One workaround is to make a debugging build of the krb5 sources and step
&lt;br&gt;through the process with a debugger. &amp;nbsp;This is painful and laborious,
&lt;br&gt;though. &amp;nbsp;Another option is to run kadmin.local under a system call
&lt;br&gt;tracing tool like strace (Linux) or truss (Solaris) to see what system
&lt;br&gt;interactions kadmin.local made shortly before printing the error
&lt;br&gt;message, but that doesn't always yield helpful information.
&lt;br&gt;&lt;br&gt;The most common problem I've seen with using the KDC LDAP back end is in
&lt;br&gt;setting up the stash file containing the LDAP passwords for the DNs used
&lt;br&gt;by the KDC and kadmind. &amp;nbsp;This filename is specified with the variable
&lt;br&gt;ldap_service_password_file inside the database settings. &amp;nbsp;If you created
&lt;br&gt;it correctly, it should look like:
&lt;br&gt;&lt;br&gt;cn=admin,dc=directorate,dc=org#{HEX}abcde12345
&lt;br&gt;&lt;br&gt;where the DNs on the left should match the DNs specified in the
&lt;br&gt;ldap_kdc_dn and ldap_kadmind_dn variables. &amp;nbsp;You say that the file is
&lt;br&gt;there with both passwords, but you might want to double check.
&lt;br&gt;&lt;br&gt;There is a different file which holds the KDB master password. &amp;nbsp;This
&lt;br&gt;filename is specified with the variable key_stash_file inside the realm
&lt;br&gt;settings, and should point to a different filename. &amp;nbsp;It should contain
&lt;br&gt;binary data. &amp;nbsp;Make sure this is separate from your LDAP password stash.
&lt;br&gt;&lt;br&gt;&lt;br&gt;________________________________________________
&lt;br&gt;Kerberos mailing list &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26516699&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Kerberos@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://mailman.mit.edu/mailman/listinfo/kerberos&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://mailman.mit.edu/mailman/listinfo/kerberos&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Kerberos---General-f965.html&quot; embed=&quot;fixTarget[965]&quot; target=&quot;_top&quot; &gt;Kerberos - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/create-principals-fails-tp26486977p26516699.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26514545</id>
	<title>Re: Multiple database definitions are not parsed correctly</title>
	<published>2009-11-25T07:18:32Z</published>
	<updated>2009-11-25T07:18:32Z</updated>
	<author>
		<name>Gabor Gombas</name>
	</author>
	<content type="html">On Wed, Nov 25, 2009 at 07:15:35AM -0800, Love Hörnquist Ĺstrand wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; You are right, the syntax is:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; [kdc]
&lt;br&gt;&amp;gt; 	database = {
&lt;br&gt;&amp;gt; 		label = { 
&lt;br&gt;&amp;gt; 			realm = TEST.H5L.SE
&lt;br&gt;&amp;gt; 			...
&lt;br&gt;&amp;gt; 		}
&lt;br&gt;&amp;gt; 		label2 = { 
&lt;br&gt;&amp;gt; 			realm = TEST2.H5L.SE
&lt;br&gt;&amp;gt; 			...
&lt;br&gt;&amp;gt; 		}
&lt;br&gt;&amp;gt; 	}
&lt;/div&gt;&lt;br&gt;Yes, that works. Thanks.
&lt;br&gt;&lt;br&gt;Gabor
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;---------------------------------------------------------
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;MTA SZTAKI Computer and Automation Research Institute
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Hungarian Academy of Sciences
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;---------------------------------------------------------
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Heimdal---General-f969.html&quot; embed=&quot;fixTarget[969]&quot; target=&quot;_top&quot; &gt;Heimdal - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Multiple-database-definitions-are-not-parsed-correctly-tp26509425p26514545.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26514493</id>
	<title>Re: Multiple database definitions are not parsed correctly</title>
	<published>2009-11-25T07:15:35Z</published>
	<updated>2009-11-25T07:15:35Z</updated>
	<author>
		<name>Love Hörnquist Åstrand</name>
	</author>
	<content type="html">&lt;div class='shrinkable-quote'&gt;&amp;gt;&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt; The &amp;quot;database = {&amp;quot; are labels and not used by the hdb backend, change that database1 = { and database2 = { and your file should be parsed correctly.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; It may parse correctly, but it won't work, since hdb_get_dbinfo() does
&lt;br&gt;&amp;gt; this:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;db_binding = krb5_config_get_list(context, NULL,
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;quot;kdc&amp;quot;,
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;quot;database&amp;quot;,
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;NULL);
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; AFAIK that won't match &amp;quot;database1&amp;quot; or &amp;quot;database2&amp;quot;.
&lt;/div&gt;&lt;br&gt;You are right, the syntax is:
&lt;br&gt;&lt;br&gt;[kdc]
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; database = {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; label = { 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; realm = TEST.H5L.SE
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ...
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; label2 = { 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; realm = TEST2.H5L.SE
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ...
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;&lt;br&gt;Love
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Heimdal---General-f969.html&quot; embed=&quot;fixTarget[969]&quot; target=&quot;_top&quot; &gt;Heimdal - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Multiple-database-definitions-are-not-parsed-correctly-tp26509425p26514493.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26514110</id>
	<title>Re: Multiple database definitions are not parsed correctly</title>
	<published>2009-11-25T06:59:08Z</published>
	<updated>2009-11-25T06:59:08Z</updated>
	<author>
		<name>Gabor Gombas</name>
	</author>
	<content type="html">On Wed, Nov 25, 2009 at 02:32:24PM +0100, Love Hörnquist Ĺstrand wrote:
&lt;br&gt;&amp;gt; Gabor,
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; The &amp;quot;database = {&amp;quot; are labels and not used by the hdb backend, change that database1 = { and database2 = { and your file should be parsed correctly.
&lt;br&gt;&lt;br&gt;It may parse correctly, but it won't work, since hdb_get_dbinfo() does
&lt;br&gt;this:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; db_binding = krb5_config_get_list(context, NULL,
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;quot;kdc&amp;quot;,
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;quot;database&amp;quot;,
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; NULL);
&lt;br&gt;&lt;br&gt;AFAIK that won't match &amp;quot;database1&amp;quot; or &amp;quot;database2&amp;quot;.
&lt;br&gt;&lt;br&gt;&amp;gt; the reason you this behavior most of the time is if you have mutiple
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; [realms]
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; REALM = {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;kdc = 
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; entries in multiple files, you want the appended,and the current get_config_* doesn't understand to search for the same entry twice, so the tree is flatten on insert.
&lt;br&gt;&lt;br&gt;The problem is that in the case of &amp;quot;database&amp;quot;, the kdc really wants to
&lt;br&gt;see multiple entries with the same name.
&lt;br&gt;&lt;br&gt;A possible solution would be to introduce a new key, say &amp;quot;databases&amp;quot;,
&lt;br&gt;that in turn contain the names of the database definition sections, so
&lt;br&gt;kdc.conf would look like:
&lt;br&gt;&lt;br&gt;[kdc]
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; databases = database1 database2
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; database1 = { ... }
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; database2 = { ... }
&lt;br&gt;&lt;br&gt;If &amp;quot;databases&amp;quot; is missing, it would default to &amp;quot;database&amp;quot; so existing
&lt;br&gt;configurations would continue to work.
&lt;br&gt;&lt;br&gt;Gabor
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;---------------------------------------------------------
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;MTA SZTAKI Computer and Automation Research Institute
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Hungarian Academy of Sciences
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;---------------------------------------------------------
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Heimdal---General-f969.html&quot; embed=&quot;fixTarget[969]&quot; target=&quot;_top&quot; &gt;Heimdal - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Multiple-database-definitions-are-not-parsed-correctly-tp26509425p26514110.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26512693</id>
	<title>Re: Multiple database definitions are not parsed correctly</title>
	<published>2009-11-25T05:32:24Z</published>
	<updated>2009-11-25T05:32:24Z</updated>
	<author>
		<name>Love Hörnquist Åstrand</name>
	</author>
	<content type="html">Gabor,
&lt;br&gt;&lt;br&gt;The &amp;quot;database = {&amp;quot; are labels and not used by the hdb backend, change that database1 = { and database2 = { and your file should be parsed correctly.
&lt;br&gt;&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; &amp;quot;verify_krb5_conf --dumpconfig&amp;quot; shows it is parsed incorrectly:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; [kdc]
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;database = {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;realm = A.EXAMPLE.COM
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;dbname = /var/lib/heimdal-kdc/a
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;mkey_file = /var/lib/heimdal-kdc/a.mkey
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;log_file = /var/lib/heimdal-kdc/a.log
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;acl_file = /var/lib/heimdal-kdc/a.acl
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;realm = B.EXAMPLE.COM
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;dbname = /var/lib/heimdal-kdc/b
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;mkey_file = /var/lib/heimdal-kdc/b.mkey
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;log_file = /var/lib/heimdal-kdc/b.log
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;acl_file = /var/lib/heimdal-kdc/b.acl
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;}
&lt;/div&gt;&lt;br&gt;the reason you this behavior most of the time is if you have mutiple
&lt;br&gt;&lt;br&gt;[realms]
&lt;br&gt;&amp;nbsp; &amp;nbsp; REALM = {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;kdc = 
&lt;br&gt;&amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;entries in multiple files, you want the appended,and the current get_config_* doesn't understand to search for the same entry twice, so the tree is flatten on insert.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;gt; I have sent a patch more than two years ago to fix the parser and it
&lt;br&gt;&amp;gt; seems it is still needed:
&lt;br&gt;&lt;br&gt;Sorry for not catching it last time.
&lt;br&gt;&lt;br&gt;Love
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Heimdal---General-f969.html&quot; embed=&quot;fixTarget[969]&quot; target=&quot;_top&quot; &gt;Heimdal - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Multiple-database-definitions-are-not-parsed-correctly-tp26509425p26512693.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26512555</id>
	<title>Re: Build fixes</title>
	<published>2009-11-25T05:22:50Z</published>
	<updated>2009-11-25T05:22:50Z</updated>
	<author>
		<name>Love Hörnquist Åstrand</name>
	</author>
	<content type="html">Hello Gabor,
&lt;br&gt;&lt;br&gt;Please use git format-patch next time, that makes applies deltas a lot faster. Also please send it as a attached file since somehow patches usually get destroyed before arriving to me.
&lt;br&gt;&lt;br&gt;&amp;gt; I needed the following patches to make current git master build on
&lt;br&gt;&amp;gt; Linux:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; - &amp;quot;unix&amp;quot; is a built-in preprocessor symbol, so it cannot be used as a
&lt;br&gt;&amp;gt; &amp;nbsp;variable name
&lt;br&gt;&lt;br&gt;Applied
&lt;br&gt;&lt;br&gt;&amp;gt; - kdc and kinit wanted to use some symbols that were not exported by
&lt;br&gt;&amp;gt; &amp;nbsp;libkrb5/libkdc
&lt;br&gt;&lt;br&gt;renamed the libkdc symbol
&lt;br&gt;&lt;br&gt;&amp;gt; - the MIT DB code is between &amp;quot;#if HAVE_DB1... #endif&amp;quot;, so use the same
&lt;br&gt;&amp;gt; &amp;nbsp;check in the descriptor table
&lt;br&gt;&lt;br&gt;applied
&lt;br&gt;&lt;br&gt;&amp;gt; - glob.h did not define ROKEN_LIB_CALL and that caused havoc when it was
&lt;br&gt;&amp;gt; &amp;nbsp;included before other roken headers, because those only check for the
&lt;br&gt;&amp;gt; &amp;nbsp;existence of ROKEN_LIB_FUNCTION
&lt;br&gt;&lt;br&gt;did the same for the other generate header too.
&lt;br&gt;&lt;br&gt;Thanks for the patch,
&lt;br&gt;Love
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Heimdal---General-f969.html&quot; embed=&quot;fixTarget[969]&quot; target=&quot;_top&quot; &gt;Heimdal - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Build-fixes-tp26509135p26512555.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26509425</id>
	<title>Multiple database definitions are not parsed correctly</title>
	<published>2009-11-25T01:04:48Z</published>
	<updated>2009-11-25T01:04:48Z</updated>
	<author>
		<name>Gabor Gombas</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;Given the following config file:
&lt;br&gt;&lt;br&gt;[kdc]
&lt;br&gt;&amp;nbsp; &amp;nbsp; database = {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; realm = A.EXAMPLE.COM
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; dbname = /var/lib/heimdal-kdc/a
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; mkey_file = /var/lib/heimdal-kdc/a.mkey
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; log_file = /var/lib/heimdal-kdc/a.log
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; acl_file = /var/lib/heimdal-kdc/a.acl
&lt;br&gt;&amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; database = {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; realm = B.EXAMPLE.COM
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; dbname = /var/lib/heimdal-kdc/b
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; mkey_file = /var/lib/heimdal-kdc/b.mkey
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; log_file = /var/lib/heimdal-kdc/b.log
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; acl_file = /var/lib/heimdal-kdc/b.acl
&lt;br&gt;&amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;&amp;quot;verify_krb5_conf --dumpconfig&amp;quot; shows it is parsed incorrectly:
&lt;br&gt;&lt;br&gt;[kdc]
&lt;br&gt;&amp;nbsp; &amp;nbsp; database = {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; realm = A.EXAMPLE.COM
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; dbname = /var/lib/heimdal-kdc/a
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; mkey_file = /var/lib/heimdal-kdc/a.mkey
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; log_file = /var/lib/heimdal-kdc/a.log
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; acl_file = /var/lib/heimdal-kdc/a.acl
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; realm = B.EXAMPLE.COM
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; dbname = /var/lib/heimdal-kdc/b
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; mkey_file = /var/lib/heimdal-kdc/b.mkey
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; log_file = /var/lib/heimdal-kdc/b.log
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; acl_file = /var/lib/heimdal-kdc/b.acl
&lt;br&gt;&amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;I have sent a patch more than two years ago to fix the parser and it
&lt;br&gt;seems it is still needed:
&lt;br&gt;&lt;br&gt;diff --git a/lib/krb5/config_file.c b/lib/krb5/config_file.c
&lt;br&gt;index 821578d..61069ea 100644
&lt;br&gt;--- a/lib/krb5/config_file.c
&lt;br&gt;+++ b/lib/krb5/config_file.c
&lt;br&gt;@@ -107,6 +107,26 @@ get_entry(krb5_config_section **parent, const char *name, int type)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;return *q;
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;+static krb5_config_section *
&lt;br&gt;+get_new_entry(krb5_config_section **parent, const char *name, int type)
&lt;br&gt;+{
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;krb5_config_section **q;
&lt;br&gt;+
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;for(q = parent; *q != NULL; q = &amp;(*q)-&amp;gt;next)
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; /* Nothing */;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;*q = calloc(1, sizeof(**q));
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;if(*q == NULL)
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; return NULL;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;(*q)-&amp;gt;name = strdup(name);
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;(*q)-&amp;gt;type = type;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;if((*q)-&amp;gt;name == NULL) {
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; free(*q);
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; *q = NULL;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; return NULL;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;}
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;return *q;
&lt;br&gt;+}
&lt;br&gt;+
&lt;br&gt;&amp;nbsp;/*
&lt;br&gt;&amp;nbsp; * Parse a section:
&lt;br&gt;&amp;nbsp; *
&lt;br&gt;@@ -216,7 +236,7 @@ parse_binding(struct fileptr *f, unsigned *lineno, char *p,
&lt;br&gt;&amp;nbsp;	++p;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;*p2 = '\0';
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;if (*p == '{') {
&lt;br&gt;-	tmp = get_entry(parent, p1, krb5_config_list);
&lt;br&gt;+	tmp = get_new_entry(parent, p1, krb5_config_list);
&lt;br&gt;&amp;nbsp;	if (tmp == NULL) {
&lt;br&gt;&amp;nbsp;	 &amp;nbsp; &amp;nbsp;*error_message = &amp;quot;out of memory&amp;quot;;
&lt;br&gt;&amp;nbsp;	 &amp;nbsp; &amp;nbsp;return KRB5_CONFIG_BADFORMAT;
&lt;br&gt;&lt;br&gt;With the patch applied, the output of &amp;quot;verify_krb5_conf --dumpconfig&amp;quot; is
&lt;br&gt;identical to its input.
&lt;br&gt;&lt;br&gt;Gabor
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;---------------------------------------------------------
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;MTA SZTAKI Computer and Automation Research Institute
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Hungarian Academy of Sciences
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;---------------------------------------------------------
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Heimdal---General-f969.html&quot; embed=&quot;fixTarget[969]&quot; target=&quot;_top&quot; &gt;Heimdal - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Multiple-database-definitions-are-not-parsed-correctly-tp26509425p26509425.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26509135</id>
	<title>Build fixes</title>
	<published>2009-11-25T00:39:19Z</published>
	<updated>2009-11-25T00:39:19Z</updated>
	<author>
		<name>Gabor Gombas</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;I needed the following patches to make current git master build on
&lt;br&gt;Linux:
&lt;br&gt;&lt;br&gt;- &amp;quot;unix&amp;quot; is a built-in preprocessor symbol, so it cannot be used as a
&lt;br&gt;&amp;nbsp; variable name
&lt;br&gt;- kdc and kinit wanted to use some symbols that were not exported by
&lt;br&gt;&amp;nbsp; libkrb5/libkdc
&lt;br&gt;- the MIT DB code is between &amp;quot;#if HAVE_DB1... #endif&amp;quot;, so use the same
&lt;br&gt;&amp;nbsp; check in the descriptor table
&lt;br&gt;- glob.h did not define ROKEN_LIB_CALL and that caused havoc when it was
&lt;br&gt;&amp;nbsp; included before other roken headers, because those only check for the
&lt;br&gt;&amp;nbsp; existence of ROKEN_LIB_FUNCTION
&lt;br&gt;&lt;br&gt;Gabor
&lt;br&gt;&lt;br&gt;diff --git a/kcm/main.c b/kcm/main.c
&lt;br&gt;index 443c71b..2b3af22 100644
&lt;br&gt;--- a/kcm/main.c
&lt;br&gt;+++ b/kcm/main.c
&lt;br&gt;@@ -110,8 +110,8 @@ main(int argc, char **argv)
&lt;br&gt;&amp;nbsp;	heim_sipc mach;
&lt;br&gt;&amp;nbsp;	heim_sipc_launchd_mach_init(service_name, kcm_service, NULL, &amp;mach);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;} else {
&lt;br&gt;-	heim_sipc unix;
&lt;br&gt;-	heim_sipc_service_unix(service_name, kcm_service, NULL, &amp;unix);
&lt;br&gt;+	heim_sipc un;
&lt;br&gt;+	heim_sipc_service_unix(service_name, kcm_service, NULL, &amp;un);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;heim_ipc_main();
&lt;br&gt;diff --git a/kdc/version-script.map b/kdc/version-script.map
&lt;br&gt;index 47e90a9..91b0319 100644
&lt;br&gt;--- a/kdc/version-script.map
&lt;br&gt;+++ b/kdc/version-script.map
&lt;br&gt;@@ -13,6 +13,7 @@ HEIMDAL_KDC_1.0 {
&lt;br&gt;&amp;nbsp;		krb5_kdc_process_request;
&lt;br&gt;&amp;nbsp;		krb5_kdc_save_request;
&lt;br&gt;&amp;nbsp;		krb5_kdc_update_time;
&lt;br&gt;+		_kdc_pk_initialize;
&lt;br&gt;&amp;nbsp;	local:
&lt;br&gt;&amp;nbsp;		*;
&lt;br&gt;&amp;nbsp;};
&lt;br&gt;diff --git a/lib/hdb/hdb.c b/lib/hdb/hdb.c
&lt;br&gt;index 913e71a..97de918 100644
&lt;br&gt;--- a/lib/hdb/hdb.c
&lt;br&gt;+++ b/lib/hdb/hdb.c
&lt;br&gt;@@ -66,6 +66,8 @@ const int hdb_interface_version = HDB_INTERFACE_VERSION;
&lt;br&gt;&amp;nbsp;static struct hdb_method methods[] = {
&lt;br&gt;&amp;nbsp;#if HAVE_DB1 || HAVE_DB3
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;{ HDB_INTERFACE_VERSION, &amp;quot;db:&amp;quot;,	hdb_db_create},
&lt;br&gt;+#endif
&lt;br&gt;+#if HAVE_DB1
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;{ HDB_INTERFACE_VERSION, &amp;quot;mit-db:&amp;quot;,	hdb_mdb_create},
&lt;br&gt;&amp;nbsp;#endif
&lt;br&gt;&amp;nbsp;#if HAVE_NDBM
&lt;br&gt;diff --git a/lib/ipc/ts.c b/lib/ipc/ts.c
&lt;br&gt;index c5594c2..a10b0d3 100644
&lt;br&gt;--- a/lib/ipc/ts.c
&lt;br&gt;+++ b/lib/ipc/ts.c
&lt;br&gt;@@ -74,7 +74,7 @@ test_service(void *ctx, const heim_idata *req,
&lt;br&gt;&amp;nbsp;int
&lt;br&gt;&amp;nbsp;main(int argc, char **argv)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;- &amp;nbsp; &amp;nbsp;heim_sipc unix;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;heim_sipc un;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;int optidx = 0;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;setprogname(argv[0]);
&lt;br&gt;@@ -98,7 +98,7 @@ main(int argc, char **argv)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp;#endif
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;heim_sipc_service_unix(&amp;quot;org.h5l.test-ipc&amp;quot;,
&lt;br&gt;-			 &amp;nbsp; test_service, NULL, &amp;unix);
&lt;br&gt;+			 &amp;nbsp; test_service, NULL, &amp;un);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;heim_ipc_main();
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;return 0;
&lt;br&gt;diff --git a/lib/krb5/version-script.map b/lib/krb5/version-script.map
&lt;br&gt;index 898f992..71e99b1 100644
&lt;br&gt;--- a/lib/krb5/version-script.map
&lt;br&gt;+++ b/lib/krb5/version-script.map
&lt;br&gt;@@ -94,6 +94,7 @@ HEIMDAL_KRB5_2.0 {
&lt;br&gt;&amp;nbsp;		krb5_cc_get_config;
&lt;br&gt;&amp;nbsp;		krb5_cc_get_friendly_name;
&lt;br&gt;&amp;nbsp;		krb5_cc_get_full_name;
&lt;br&gt;+		krb5_cc_get_kdc_offset;
&lt;br&gt;&amp;nbsp;		krb5_cc_get_lifetime;
&lt;br&gt;&amp;nbsp;		krb5_cc_get_name;
&lt;br&gt;&amp;nbsp;		krb5_cc_get_ops;
&lt;br&gt;@@ -115,6 +116,7 @@ HEIMDAL_KRB5_2.0 {
&lt;br&gt;&amp;nbsp;		krb5_cc_set_flags;
&lt;br&gt;&amp;nbsp;		krb5_cc_start_seq_get;
&lt;br&gt;&amp;nbsp;		krb5_cc_store_cred;
&lt;br&gt;+		krb5_cc_support_switch;
&lt;br&gt;&amp;nbsp;		krb5_cc_switch;
&lt;br&gt;&amp;nbsp; 		krb5_cc_set_friendly_name;
&lt;br&gt;&amp;nbsp;		krb5_change_password;
&lt;br&gt;diff --git a/lib/roken/glob.hin b/lib/roken/glob.hin
&lt;br&gt;index ffb6081..5cdcdf2 100644
&lt;br&gt;--- a/lib/roken/glob.hin
&lt;br&gt;+++ b/lib/roken/glob.hin
&lt;br&gt;@@ -38,8 +38,10 @@
&lt;br&gt;&amp;nbsp;#ifndef ROKEN_LIB_FUNCTION
&lt;br&gt;&amp;nbsp;#ifdef _WIN32
&lt;br&gt;&amp;nbsp;#define ROKEN_LIB_FUNCTION _stdcall
&lt;br&gt;+#define ROKEN_LIB_CALL __cdecl
&lt;br&gt;&amp;nbsp;#else
&lt;br&gt;&amp;nbsp;#define ROKEN_LIB_FUNCTION
&lt;br&gt;+#define ROKEN_LIB_CALL
&lt;br&gt;&amp;nbsp;#endif
&lt;br&gt;&amp;nbsp;#endif
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;---------------------------------------------------------
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;MTA SZTAKI Computer and Automation Research Institute
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Hungarian Academy of Sciences
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;---------------------------------------------------------
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Heimdal---General-f969.html&quot; embed=&quot;fixTarget[969]&quot; target=&quot;_top&quot; &gt;Heimdal - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Build-fixes-tp26509135p26509135.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26507718</id>
	<title>Re: krb5/locate_plugin.h issue - heimdal-1.3.1</title>
	<published>2009-11-24T21:23:40Z</published>
	<updated>2009-11-24T21:23:40Z</updated>
	<author>
		<name>Love Hörnquist Åstrand</name>
	</author>
	<content type="html">&lt;div class='shrinkable-quote'&gt;&amp;gt;&amp;gt;&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Looking into this further, the above include was dropped deliberately 
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; (commit ecfa87ed), although the commit message does not say why. Should 
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; that commit be reverted or is there another fix I am missing?
&lt;br&gt;&amp;gt;&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt; I assume this is done since we don't want to hardwire in the location of &amp;lt;krb5.h&amp;gt; in the header file, it should really be &amp;lt;krb5/krb5.h&amp;gt;, but we don't do that yet.
&lt;br&gt;&amp;gt;&amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; OK. So this is a transition thing. &amp;nbsp;Although it seems a bit strange to 
&lt;br&gt;&amp;gt; me that a header file does not include all its needed headers.
&lt;/div&gt;&lt;br&gt;If it was up to me I would just require the caller to pull in &amp;lt;krb5/krb5.h&amp;gt; and thats it for all public interfaces.
&lt;br&gt;&lt;br&gt;Love
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Heimdal---General-f969.html&quot; embed=&quot;fixTarget[969]&quot; target=&quot;_top&quot; &gt;Heimdal - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/krb5-locate_plugin.h-issue---heimdal-1.3.1-tp26507420p26507718.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26507598</id>
	<title>Re: krb5/locate_plugin.h issue - heimdal-1.3.1</title>
	<published>2009-11-24T21:02:11Z</published>
	<updated>2009-11-24T21:02:11Z</updated>
	<author>
		<name>Allan McRae-3</name>
	</author>
	<content type="html">Love Hörnquist Åstrand wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; 25 nov 2009 kl. 05:30 skrev Allan McRae:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt; Hi,
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; When compiling samba against heimdal-1.3.1, I get warnings like:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; configure: WARNING: krb5/locate_plugin.h: present but cannot be compiled
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Testing with compiling a program with only &amp;quot;#include 
&lt;br&gt;&amp;gt;&amp;gt; &amp;lt;krb5/locate_plugin.h&amp;gt;&amp;quot; in it, I get the following error:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; In file included from test.c:1:
&lt;br&gt;&amp;gt;&amp;gt; /usr/include/krb5/locate_plugin.h:50: error: expected declaration 
&lt;br&gt;&amp;gt;&amp;gt; specifiers or ‘...’ before ‘*’ token
&lt;br&gt;&amp;gt;&amp;gt; /usr/include/krb5/locate_plugin.h:53: error: ‘krb5_error_code’ declared 
&lt;br&gt;&amp;gt;&amp;gt; as function returning a function
&lt;br&gt;&amp;gt;&amp;gt; /usr/include/krb5/locate_plugin.h:58: error: expected ‘)’ before ‘void’
&lt;br&gt;&amp;gt;&amp;gt; /usr/include/krb5/locate_plugin.h:59: error: expected ‘;’ before ‘void’
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Re-adding &amp;quot;#include &amp;lt;krb5.h&amp;gt;&amp;quot; at the top of the include file fixes the 
&lt;br&gt;&amp;gt;&amp;gt; compile error. This include was present in the heimdal-1.2 releases.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Looking into this further, the above include was dropped deliberately 
&lt;br&gt;&amp;gt;&amp;gt; (commit ecfa87ed), although the commit message does not say why. Should 
&lt;br&gt;&amp;gt;&amp;gt; that commit be reverted or is there another fix I am missing?
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I assume this is done since we don't want to hardwire in the location of &amp;lt;krb5.h&amp;gt; in the header file, it should really be &amp;lt;krb5/krb5.h&amp;gt;, but we don't do that yet.
&lt;br&gt;&amp;gt; 
&lt;/div&gt;&lt;br&gt;OK. So this is a transition thing. &amp;nbsp;Although it seems a bit strange to 
&lt;br&gt;me that a header file does not include all its needed headers.
&lt;br&gt;&lt;br&gt;&amp;gt; The samba folks should really include approriate krb5.h before pulling in locate_plugin.h in the autoconf test.
&lt;br&gt;&lt;br&gt;I will send them a message to let them know.
&lt;br&gt;&lt;br&gt;Allan
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Heimdal---General-f969.html&quot; embed=&quot;fixTarget[969]&quot; target=&quot;_top&quot; &gt;Heimdal - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/krb5-locate_plugin.h-issue---heimdal-1.3.1-tp26507420p26507598.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26507516</id>
	<title>Re: replay cache</title>
	<published>2009-11-24T20:46:12Z</published>
	<updated>2009-11-24T20:46:12Z</updated>
	<author>
		<name>Quanah Gibson-Mount-3</name>
	</author>
	<content type="html">--On Wednesday, November 25, 2009 5:37 AM +0100 Love Hörnquist Åstrand 
&lt;br&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26507516&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lha@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; 25 nov 2009 kl. 04:59 skrev Quanah Gibson-Mount:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Is there a way to disable the replay cache in Heimdal? &amp;nbsp;MIT provided
&lt;br&gt;&amp;gt;&amp;gt; that &amp;nbsp;functionality via an environment variable some time ago because of
&lt;br&gt;&amp;gt;&amp;gt; the &amp;nbsp;performance hit it can cause. &amp;nbsp;I didn't see anything immediate in
&lt;br&gt;&amp;gt;&amp;gt; browsing &amp;nbsp;the 1.2.1 source.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Replay cache is disabled by default.
&lt;br&gt;&lt;br&gt;Great, thanks!
&lt;br&gt;&lt;br&gt;--Quanah
&lt;br&gt;&lt;br&gt;--
&lt;br&gt;&lt;br&gt;Quanah Gibson-Mount
&lt;br&gt;Principal Software Engineer
&lt;br&gt;Zimbra, Inc
&lt;br&gt;--------------------
&lt;br&gt;Zimbra :: &amp;nbsp;the leader in open source messaging and collaboration
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Heimdal---General-f969.html&quot; embed=&quot;fixTarget[969]&quot; target=&quot;_top&quot; &gt;Heimdal - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/replay-cache-tp26507215p26507516.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26507472</id>
	<title>Re: krb5/locate_plugin.h issue - heimdal-1.3.1</title>
	<published>2009-11-24T20:40:07Z</published>
	<updated>2009-11-24T20:40:07Z</updated>
	<author>
		<name>Love Hörnquist Åstrand</name>
	</author>
	<content type="html">&lt;br&gt;25 nov 2009 kl. 05:30 skrev Allan McRae:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi,
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; When compiling samba against heimdal-1.3.1, I get warnings like:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; configure: WARNING: krb5/locate_plugin.h: present but cannot be compiled
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Testing with compiling a program with only &amp;quot;#include 
&lt;br&gt;&amp;gt; &amp;lt;krb5/locate_plugin.h&amp;gt;&amp;quot; in it, I get the following error:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; In file included from test.c:1:
&lt;br&gt;&amp;gt; /usr/include/krb5/locate_plugin.h:50: error: expected declaration 
&lt;br&gt;&amp;gt; specifiers or ‘...’ before ‘*’ token
&lt;br&gt;&amp;gt; /usr/include/krb5/locate_plugin.h:53: error: ‘krb5_error_code’ declared 
&lt;br&gt;&amp;gt; as function returning a function
&lt;br&gt;&amp;gt; /usr/include/krb5/locate_plugin.h:58: error: expected ‘)’ before ‘void’
&lt;br&gt;&amp;gt; /usr/include/krb5/locate_plugin.h:59: error: expected ‘;’ before ‘void’
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Re-adding &amp;quot;#include &amp;lt;krb5.h&amp;gt;&amp;quot; at the top of the include file fixes the 
&lt;br&gt;&amp;gt; compile error. This include was present in the heimdal-1.2 releases.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Looking into this further, the above include was dropped deliberately 
&lt;br&gt;&amp;gt; (commit ecfa87ed), although the commit message does not say why. Should 
&lt;br&gt;&amp;gt; that commit be reverted or is there another fix I am missing?
&lt;/div&gt;&lt;br&gt;I assume this is done since we don't want to hardwire in the location of &amp;lt;krb5.h&amp;gt; in the header file, it should really be &amp;lt;krb5/krb5.h&amp;gt;, but we don't do that yet.
&lt;br&gt;&lt;br&gt;The samba folks should really include approriate krb5.h before pulling in locate_plugin.h in the autoconf test.
&lt;br&gt;&lt;br&gt;Love
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Heimdal---General-f969.html&quot; embed=&quot;fixTarget[969]&quot; target=&quot;_top&quot; &gt;Heimdal - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/krb5-locate_plugin.h-issue---heimdal-1.3.1-tp26507420p26507472.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26507462</id>
	<title>Re: replay cache</title>
	<published>2009-11-24T20:37:39Z</published>
	<updated>2009-11-24T20:37:39Z</updated>
	<author>
		<name>Love Hörnquist Åstrand</name>
	</author>
	<content type="html">&lt;br&gt;25 nov 2009 kl. 04:59 skrev Quanah Gibson-Mount:
&lt;br&gt;&lt;br&gt;&amp;gt; Is there a way to disable the replay cache in Heimdal? &amp;nbsp;MIT provided that 
&lt;br&gt;&amp;gt; functionality via an environment variable some time ago because of the 
&lt;br&gt;&amp;gt; performance hit it can cause. &amp;nbsp;I didn't see anything immediate in browsing 
&lt;br&gt;&amp;gt; the 1.2.1 source.
&lt;br&gt;&lt;br&gt;Replay cache is disabled by default.
&lt;br&gt;&lt;br&gt;Love
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Heimdal---General-f969.html&quot; embed=&quot;fixTarget[969]&quot; target=&quot;_top&quot; &gt;Heimdal - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/replay-cache-tp26507215p26507462.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26507420</id>
	<title>krb5/locate_plugin.h issue - heimdal-1.3.1</title>
	<published>2009-11-24T20:30:33Z</published>
	<updated>2009-11-24T20:30:33Z</updated>
	<author>
		<name>Allan McRae-3</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;When compiling samba against heimdal-1.3.1, I get warnings like:
&lt;br&gt;&lt;br&gt;configure: WARNING: krb5/locate_plugin.h: present but cannot be compiled
&lt;br&gt;&lt;br&gt;Testing with compiling a program with only &amp;quot;#include 
&lt;br&gt;&amp;lt;krb5/locate_plugin.h&amp;gt;&amp;quot; in it, I get the following error:
&lt;br&gt;&lt;br&gt;In file included from test.c:1:
&lt;br&gt;/usr/include/krb5/locate_plugin.h:50: error: expected declaration 
&lt;br&gt;specifiers or ‘...’ before ‘*’ token
&lt;br&gt;/usr/include/krb5/locate_plugin.h:53: error: ‘krb5_error_code’ declared 
&lt;br&gt;as function returning a function
&lt;br&gt;/usr/include/krb5/locate_plugin.h:58: error: expected ‘)’ before ‘void’
&lt;br&gt;/usr/include/krb5/locate_plugin.h:59: error: expected ‘;’ before ‘void’
&lt;br&gt;&lt;br&gt;&lt;br&gt;Re-adding &amp;quot;#include &amp;lt;krb5.h&amp;gt;&amp;quot; at the top of the include file fixes the 
&lt;br&gt;compile error. This include was present in the heimdal-1.2 releases.
&lt;br&gt;&lt;br&gt;Looking into this further, the above include was dropped deliberately 
&lt;br&gt;(commit ecfa87ed), although the commit message does not say why. Should 
&lt;br&gt;that commit be reverted or is there another fix I am missing?
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;Allan
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Heimdal---General-f969.html&quot; embed=&quot;fixTarget[969]&quot; target=&quot;_top&quot; &gt;Heimdal - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/krb5-locate_plugin.h-issue---heimdal-1.3.1-tp26507420p26507420.html" />
</entry>

</feed>
