Heimdal prototype problem on OpenVMS

Andrew Bartlett abartlet at samba.org
Thu Oct 20 22:50:33 GMT 2005

On Thu, 2005-10-20 at 16:55 -0400, John E. Malmberg wrote:
> Love wrote:
> > "John E. Malmberg" <wb8tyw at qsl.net> writes:
> > 
> >>It appears that I can not build the Heimdal library because it is
> >>providing it's own prototypes for routines also supplied by standard C
> >>library headers.
> > 
> > [...]
> > 
> >>Is there some reason that the standard definitions are not being used
> >>and some way to get set this up to also build on OpenVMS?
> > 
> > Add the missing autoconf tests ? The all compat functions are wrapped in
> > #ifndef statements, and they need autoconftest to not be defined.
> Configure is currently barely on speaking terms with me.  I have already 
> notice that it's standard method of testing is with out the standard 
> header modules present.
> On the OpenVMS platform, this is almost guaranteed to have the tests 
> produce incorrect results, because with out the header files, the 
> compiler will use different rules to find the called routines than with 
> the headers present because of conditional directives in the header
> files control which variant of a routine to expose.

So, on any other platform the correct approach would be to pull in more
of the heimdal roken configure tests, or for functions we don't use at
all, place #define HAVE_.... in heimdal_build/config.h

> The OpenVMS behavior is to provide backwards compatibility with source 
> code written before the ANSI and X/Open Standards.  Or to provide a bug 
> compatible behavior that older programs came to expect before it was 
> realized that it was a bug.
> Because of that, it is likely that other platforms that also need to 
> provide backwards compatibility are not ending up with the optimal 
> results from running Configure.

It sounds like a good first start would be to get upstream Heimdal to
correctly build on OpenVMS, so we have a baseline to work from.

> My current work around is to back door the configure process with a CC 
> alias that pulls the missing definitions back in so that the results are 
> more sane.  But that also means that I also have to carefully check what 
> Configure did.
> Is there an interest in fixing Configure so that it actually is doing 
> the tests in a way that are more likely to not have false failures?
> If so, I can remove my hacks and work on fixing the tests as part of 
> what I am doing.
> > Or simply remove them from roken.h if they are not used by the
> > kerberos/gssapi library.
> Because the current build seems to create some source code on the fly, 
> and I have yet to get a build done, I do not know if they are needed.
> A simple search of the source code seems to indicate that they are not used.
> Also, since OpenVMS already has Kerberos V5 included, do I even need to 
> build the Heimdal version?

We use a specially hacked local version of Heimdal, because we need to
know some particular behaviours, and have certain plugin-points not
available in the system libraries.

Andrew Bartlett

Andrew Bartlett                                http://samba.org/~abartlet/
Samba Developer, SuSE Labs, Novell Inc.        http://suse.de
Authentication Developer, Samba Team           http://samba.org
Student Network Administrator, Hawker College  http://hawkerc.net
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : http://lists.samba.org/archive/samba-technical/attachments/20051021/99156fbc/attachment.bin

More information about the samba-technical mailing list