Skip to content

mit-krb5 default plugins broken? #74

Description

@coyhile

Trying to bootstrap an MIT KDC based on mit-krb5-1.14.6, one sees the following behavior:

[root@krbtest ~]# kdb5_util create
Loading random data
Initializing database '/var/krb5kdc/principal' for realm 'LOCAL',
master key name 'K/M@LOCAL'
You will be prompted for the database Master Password.
It is important that you NOT FORGET this password.
Enter KDC database master key:
Re-enter KDC database master key to verify:
kdb5_util: Unable to load requested database module 'db2': plugin symbol 'kdb_function_table' not found while creating database '/var/krb5kdc/principal'
[root@krbtest ~]#

Looking further, we see from truss (in relevant part):

93041:  ioctl(3, TCSETS, 0xFFFFBF7FFFDFF900)            = 0
93041:  sigaction(SIGINT, 0xFFFFBF7FFFDFF7E0, 0x00000000) = 0
93041:  close(3)                                        = 0
93041:  time()                                          = 1516974864
93041:  stat("/etc/krb5.conf", 0xFFFFBF7FFFDFF670)      = 0
93041:  time()                                          = 1516974864
93041:  time()                                          = 1516974864
93041:  stat("/opt/local/lib/krb5/plugins/kdb/db2", 0xFFFFBF7FFFDFF770) Err#2 ENOENT
93041:  open("/usr/lib/locale/en_US.UTF-8/LC_MESSAGES/SUNW_OST_OSLIB.mo", O_RDONLY) Err#2 ENOENT
93041:  stat("/opt/local/lib/krb5/plugins/kdb/db2.so", 0xFFFFBF7FFFDFF770) Err#2 ENOENT
93041:  fstat(2, 0xFFFFBF7FFFDFE520)                    = 0
kdb5_util93041: write(2, " k d b 5 _ u t i l", 9)               = 9
: 93041:        write(2, " :  ", 2)                             = 2
Unable to load requested database module 'db2': plugin symbol 'kdb_function_table' not found93041:      write(2, " U n a b l e   t o   l o".., 92)      = 92
 93041: write(2, "  ", 1)                               = 1
while creating database '93041: write(2, " w h i l e   c r e a t i".., 25)      = 25
/var/krb5kdc/principal93041:    write(2, " / v a r / k r b 5 k d c".., 22)      = 22

And looking at the directory called out there, we see

[root@krbtest ~]# ls /opt/local/lib/krb5/plugins/kdb/
libdb2.la  libdb2.so
[root@krbtest ~]#

Creating a symlink allows the operation to complete successfully:

[root@krbtest ~]# ln -s /opt/local/lib/krb5/plugins/kdb/libdb2.so /opt/local/lib/krb5/plugins/kdb/db2.so
[root@krbtest ~]#  kdb5_util create
Loading random data
Initializing database '/var/krb5kdc/principal' for realm 'LOCAL',
master key name 'K/M@LOCAL'
You will be prompted for the database Master Password.
It is important that you NOT FORGET this password.
Enter KDC database master key:
Re-enter KDC database master key to verify:
[root@krbtest ~]#

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions