[PROPOSAL] Require builtin or system krb5 libs

simo idra at samba.org
Mon Jan 2 23:36:00 MST 2012

On Mon, 2012-01-02 at 21:46 -0800, Jeremy Allison wrote: 
> On Tue, Jan 03, 2012 at 02:06:39PM +1100, Andrew Bartlett wrote:
> > 
> > I'm not totally clear what Jeremy's reasons are, but I agree we will
> > essentially need to set a minimum MIT and Heimdal version that we will
> > support (and then support any alternative/workalike that has the same
> > features).  
> Simple. I don't want to go back to the old ways of
> #ifdef MIT
> #elif HEIMDAL
> #elif..
> #endif

We cannot avoid this, we can only encapsulate behavior in wrapper
functions, the reason is that MIT and Heimdal have some basic data types
that differ, and other funny things, so there is really no way around

> way of doing code. That way ends up as 
> #ifdef HPUX
> #ifdef HPUX_4_2
> #endif
> #elif SOLARIS_5
> #elif SOLARIS_7
> ...

Hopefully we will be able to avoid most of it by creating pluggable
backends in GENSEC, so that most of what we need will be abstracted away
from most of the code, but some of it will always be around I am afraid.

> horrors that took many years to escape from.
> Heimdal and MIT are a *mess*, in terms of adopting
> standard API's and methods. Nearly as bad as we are
> with Samba3/Samba3 (just in case anyone thinks I'm
> being too hard on them :-) :-).
> As far as possible, let's detect features not version
> numbers please. That way lies madness.

Features detection is ok to weed off older versions, but for API
incompatibility there isn't much we can do.


Simo Sorce
Samba Team GPL Compliance Officer <simo at samba.org>
Principal Software Engineer at Red Hat, Inc. <simo at redhat.com>

More information about the samba-technical mailing list