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

Problem running kadmind



Hi all,

I have a problem with running kadmind. When I run it, kadmind immediately
exits and logs an error message as:

   14-Dec-1998 10:22:58 krb5_recvauth: Socket operation on non-socket

I'm using heimdal-0.0t. I might be missing something because I can't find
much documentation about kadmind. Here is the command I use:

    /usr/heimdal/libexec/kadmind --keytab=/var/heimdal/kadm5.keytab &

where kadm5.keytab has the keys for kadmin/admin and kadmin/changepw.

My config files look like:

/etc/krb5.conf:
===============
[libdefaults]
        default_realm = DSTC.QUT.EDU.AU

[realms]
        DSTC.QUT.EDU.AU = {
                kdc = midori.dstc.qut.edu.au:88
                kadmind = midori.dstc.qut.edu.au:749
        }

[domain_realm]
        dstc.qut.edu.au = DSTC.QUT.EDU.AU
        .dstc.qut.edu.au = DSTC.QUT.EDU.AU


[logging]
        kdc = FILE:/var/heimdal/krb5kdc.log
        kadmind = FILE:/var/heimdal/kadmind.log
        default = FILE:/var/heimdal/krb5lib.log

/var/heimdal/kdc.conf:
======================
[kdc]
        key-file = /var/heimdal/m-key
        ports = 88, 750
        kadmind_ports = 749

In these config files, those lines referring kadmind are only my guess. I
only
know that the line about logging works.

Tracing through the source code, I found that the call causing the error is

a getsockname() call with a socket descriptor of 0. The calls stack looks
like:

    #0  0x401336f0 in __getsockname ()
    #1  0x400679c1 in krb5_auth_con_setaddrs_from_fd (context=0x804a130,
        auth_context=0x804a7c8, p_fd=0xbffff86c) at auth_context.c:163
    #2  0x400749b7 in krb5_recvauth (context=0x804a130,
auth_context=0xbffff870,
        p_fd=0xbffff86c, appl_version=0x8048ebe "KADM0.0",
server=0x804a7b0,
        flags=0, keytab=0x0, ticket=0xbffff868) at recvauth.c:76
    #3  0x8048c95 in main (argc=1, argv=0xbffff8a4) at kadmind.c:150

The socket descriptor is declared as "fd" in kadmind.c and has the value of
0
as it (or its address) is passed around.

I'd be most grateful if someone can tell me what's wrong in this situation.

Thanks,
Nam