Gcc is bailing out on Compiling libads/kerberos_verify.c "libads/kerberos_verify.c", line 77: improper member use: keyblock cc: acomp failed for libads/kerberos_verify.c *** Error code 2 The code-line on line 77 is entry.keyblock = *key; Os: Solaris 9 Ldap: 2.1.22 kerberos: 1.3.1 Gcc: 3.2.3
Are you using MIT or Heimdal kerberos? The comment in the code indicates that this error can only occur using MIT but in-memory keytabs should only be supported under Heimdal.
Now I look at the version numbers it's obvious that you are using MIT. (-:
Created attachment 142 [details] Patch for in-memory keytab configure test I would be interested in seeing the fragment of config.log where the in-memory keytab function is tested for. This patch reverses the sense of the test twice which should leave it the same, unless there is a link or compile error. Mine looks like this: configure:27097: checking for memory keytab support configure:27131: gcc -o conftest -gstabs -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -DDEBUG_PASSWORD -DDEVELOPER -I/usr/include -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -I/usr/include conftest.c -lresolv -lnsl -ldl -L/usr/lib -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lresolv >&5 configure:27447: warning: return type defaults to `int' configure:27447: warning: function declaration isn't a prototype configure:27134: $? = 0 configure:27136: ./conftest configure:27139: $? = 1 configure: program exited with status 1 configure: failed program was: | #line 27110 "configure" | /* confdefs.h. */ [stuff deleted] | /* end confdefs.h. */ | | #include<krb5.h> | main() | { | krb5_context context; | krb5_keytab keytab; | | krb5_init_context(&context); | if (krb5_kt_resolve(context, "MEMORY:", &keytab)) | exit(1); | exit(0); | } configure:27153: result: no
configure:25244: checking for memory keytab support configure:25272: gcc -o conftest -g -O2 -I/usr/local/include -I/usr/local/includ e -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/local/include -L /usr/local/ lib conftest.c -lsec -lgen -lresolv -lsocket -lnsl -ldl -L/usr/local/lib -R/u sr/local/lib -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lsocket -lnsl -lresolv > &5 configure:25275: $? = 0 configure:25277: ./conftest configure:25280: $? = 0
Is that with or without the patch in attachment 142 [details]?
I re-run the configure and make and suddenly it worked. I don't know why, it could be that my brain is still in weekend mode.
Well I'll mark it closed for now. Please re-open it if you see it happening again.
originally reported against one of the 3.0.0rc[1-4] releases. Cleaning up non-production versions.
database cleanup