lprng uses private Kerberos Functions?
meeroh at MIT.EDU
Wed Feb 20 08:52:01 EST 2002
> > >I'm trying to compile LPRNG with Kerberos support for MacOS X but
> > >I'm getting an undefined symbols for _krb5_read_message
> > >_krb5_write_message _krb5_xfree _valid_cksumtype. I have included
> > >the Kerberos5Core framework which seems to have these symbols
>> >defined. This is the prototype found in the code, are they
>> >different from the version of Kerberos for the Mac?
>Try downloading the latest Kerberos release from MIT, install
>it, then use:
>./configure --with-ldopts="-L/usr/local/lib" \
> --with-cppopts="-I/usr/local/include" --enable-kerberos
This is not a useful answer. It is not helpful to tell him to replace
a component with his own, because a. it will be blown away the next
time he upgrades the OS b. his users won't have the 'fixed' version
anyway c. your suggestion wouldn't even work correctly because you
would end up with /usr/lib binaries which work differently from
/System/Library/Frameworks binaries, which is a recipe for disaster.
> > krb5_read_message, krb5_write_message, krb5_xfree, valid_cksumtype
>> are private functions internal to the Kerberos 5 library. As a
>> result, they are not exported by the Kerberos framework, and you
>> should not be calling them. Yes, I realize that they are in the
>> krb5.h header file, but they shouldn't be.
>Ummm... have you heard of 'legacy software support?'
Yes, we have. This is one of the cases in which we consciously
decided to break it. This API has been wrong to use for years, and
that didn't have any influence on whether people use it or not. Now
that we removed it, finally people are fixing their code. Since they
have to recompile for Mac OS X _anyway_, it was a reasonable point to
force them to fix their code in our opinion.
>The various kerberized utilities use them, and I ripped the
>code out of the kerberos utilities :-)
That is what we recommend in general -- it is not the responsibility
of Kerberos libraries to provide you with network send and receive
code, but if you need an example of how to do it, you should feel
free to look at our code which does it. Sounds like that's exactly
what you are doing :-)
<http://web.meeroh.org/> | MIT I/S Mac developer | KB1FMP
"Well, I must endure the presence of two or three caterpillars if I
wish to become acquainted with the butterflies." -- Antoine de
Saint-Exupery, "The Little Prince"
More information about the krbdev