[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: MIT to Heimdal porting, libraries to link with?

On 6 Sep 2000, Love wrote:

> joda@pdc.kth.se (Johan Danielsson) writes:
> > Kalle Svensson <kalle@nohup.se> writes:
> > 
> > > LIBS   = -lkadm5clnt -lgssrpc -lgssapi_krb5 -lkdb5 -lkrb5 -lk5crypto
> > > LIBS  += -ldyn -lcom_err -lpam -ldl -lc
> > 
> > It depends on what it tries to do.

It's a PAM module that adds users to Kerberos, called pam_krb5_migrate.
It can be found on ftp://ftp.netexpress.net/pub/pam/pam_krb5_migrate.tgz

> > I assume that -lkadm5clnt -lgssrpc -lgssapi_krb5 can be replaced with
> > only -lkadm5clnt, -lkdb5 is probably equivalent to -lhdb, but these
> > libraries are totally different, does this app grovel around in the
> > database by itself?
> > 
> > The rest can probably be replace by -lkrb5 -ldes -lcom_err
> Don't forget any combination of -lasn1, -lroken, -ldb, and -lresolv.
> -lroken depends on some platforms on -ldb and -lresolv.

I tried -lkadm5clnt -lasn1 -lroken -ldb -lresolv -lhdb -lkrb5
-ldes -lcom_err -lpam -ldl -lc
And this got me further than before, but ld fails with:
pam_krb5_migrate.o: In function `pam_sm_authenticate':
pam_krb5_migrate.o(.text+0x895): undefined reference to `kadm5_get_policy'
pam_krb5_migrate.o(.text+0x8dc): undefined reference to `kadm5_free_policy_ent'

When grepping the heimdal source, they only show up in a couple of header
files. Does this mean they aren't implemented (I'm no C programmer, as
you might have guessed...)? If so, what are they supposed to do, and can
I remove the calls to them? They are in this piece of code:

if (!kadm5_get_policy(handle, "default", &defpol)) {
    if (debug) {
        _log_err(LOG_DEBUG, pamh,
                 "no policy specified for %s; assigning \"default\"",
    newprinc.policy = "default";
    mask |= KADM5_POLICY;
    (void) kadm5_free_policy_ent(handle, &defpol);
} else {
    if (debug) {
        _log_err(LOG_DEBUG, pamh,
                 "no policy specified for %s; defaulting to no policy",
mask &= ~KADM5_POLICY_CLR;

  Kalle Svensson