[Opendnssec-user] SoftHSM is blocking

Carsten Strotmann (Men&Mice) carsten at menandmice.com
Tue Aug 4 10:25:59 UTC 2009


Hello Rickard,

here is the strace output before the "hang":

-----(snip)-----
fcntl64(4, F_SETLK64, {type=F_RDLCK, whence=SEEK_SET, start=1073741824, 
len=1}, 0xbfcf6c74) = 0
fcntl64(4, F_SETLK64, {type=F_RDLCK, whence=SEEK_SET, start=1073741826, 
len=510}, 0xbfcf6c74) = 0
fcntl64(4, F_SETLK64, {type=F_UNLCK, whence=SEEK_SET, start=1073741824, 
len=1}, 0xbfcf6c74) = 0
access("/var/softhsm/slot0.db-journal", F_OK) = -1 ENOENT (No such file 
or directory)
fstat64(4, {st_mode=S_IFREG|0644, st_size=4096, ...}) = 0
_llseek(4, 24, [24], SEEK_SET)          = 0
read(4, "\0\0\0U\0\0\0\0\0\0\0\0\0\0\0\0"..., 16) = 16
fcntl64(4, F_SETLK64, {type=F_UNLCK, whence=SEEK_SET, start=0, len=0}, 
0xbfcf7464) = 0
fcntl64(4, F_SETLK64, {type=F_RDLCK, whence=SEEK_SET, start=1073741824, 
len=1}, 0xbfcf6c74) = 0
fcntl64(4, F_SETLK64, {type=F_RDLCK, whence=SEEK_SET, start=1073741826, 
len=510}, 0xbfcf6c74) = 0
fcntl64(4, F_SETLK64, {type=F_UNLCK, whence=SEEK_SET, start=1073741824, 
len=1}, 0xbfcf6c74) = 0
access("/var/softhsm/slot0.db-journal", F_OK) = -1 ENOENT (No such file 
or directory)
fstat64(4, {st_mode=S_IFREG|0644, st_size=4096, ...}) = 0
_llseek(4, 24, [24], SEEK_SET)          = 0
read(4, "\0\0\0U\0\0\0\0\0\0\0\0\0\0\0\0"..., 16) = 16
fcntl64(4, F_SETLK64, {type=F_UNLCK, whence=SEEK_SET, start=0, len=0}, 
0xbfcf6cb4) = 0
close(4)                                = 0
time(NULL)                              = 1249380991
send(3, "<15>Aug  4 12:16:31 softhsm: Soft"..., 60, MSG_NOSIGNAL) = 60
open("/dev/random", O_RDONLY|O_NOCTTY|O_NONBLOCK) = 4
open("/dev/srandom", O_RDONLY|O_NOCTTY|O_NONBLOCK) = -1 ENOENT (No such 
file or directory)
open("/dev/urandom", O_RDONLY|O_NOCTTY|O_NONBLOCK) = 5
socket(PF_FILE, SOCK_STREAM, 0)         = 6
connect(6, {sa_family=AF_FILE, path="/var/run/egd-pool"...}, 20) = -1 
ENOENT (No such file or directory)
close(6)                                = 0
socket(PF_FILE, SOCK_STREAM, 0)         = 6
connect(6, {sa_family=AF_FILE, path="/dev/egd-pool"...}, 16) = -1 ENOENT 
(No such file or directory)
close(6)                                = 0
clock_gettime(CLOCK_REALTIME, {1249380991, 369760095}) = 0
gettimeofday({1249380991, 369873}, NULL) = 0
select(5, [4], NULL, NULL, {0, 5000})   = 1 (in [4], left {0, 4993})
read(4, "\330?!\360T\205\37\346\33\31\6\27\301\34\3444\35\211\217&B3Z 
\312\210\337\365UB[\2t"..., 96) = 37
stat64("/", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat64("/tmp", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=4096, ...}) = 0
stat64("/var/tmp", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=4096, ...}) = 0
stat64("/usr", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat64("/home", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat64("/etc/passwd", {st_mode=S_IFREG|0644, st_size=1815, ...}) = 0
stat64(".", {st_mode=S_IFDIR|0755, st_size=12288, ...}) = 0
stat64("..", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
getppid()                               = 6698
getuid32()                              = 0
geteuid32()                             = 0
getegid32()                             = 0
getpgrp()                               = 6698
getsid(0)                               = 6664
getrusage(RUSAGE_SELF, {ru_utime={0, 32002}, ru_stime={0, 28001}, ...}) = 0
getrusage(RUSAGE_CHILDREN, {ru_utime={0, 0}, ru_stime={0, 0}, ...}) = 0
clock_gettime(CLOCK_REALTIME, {1249380991, 390415797}) = 0
gettimeofday({1249380991, 390486}, NULL) = 0
select(5, [4], NULL, NULL, {0, 20000})  = 0 (Timeout)
select(6, [5], NULL, NULL, {0, 20000})  = 1 (in [5], left {0, 19994})
read(5, 
"z\342\310\371\314\363\5\374\26k+F\351\354\377:\200\372K\376x\3\234\211h\177\312v\6\225\10\203\346"..., 
96) = 96
open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 6
fstat64(6, {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0
fcntl64(6, F_GETFD)                     = 0x1 (flags FD_CLOEXEC)
getdents(6, /* 49 entries */, 1024)     = 1024
lstat64("/proc/dri", {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0
open("/proc/dri", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 7
fstat64(7, {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0
lstat64("/proc/asound", {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0
open("/proc/asound", 
O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 8
fstat64(8, {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0
lstat64("/proc/sysrq-trigger", {st_mode=S_IFREG|0200, st_size=0, ...}) = 0
open("/proc/sysrq-trigger", O_RDONLY|O_NOCTTY) = 9
read(9, 0x957dd88, 4096)                = -1 EIO (Input/output error)
close(9)                                = 0
lstat64("/proc/partitions", {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
open("/proc/partitions", O_RDONLY|O_NOCTTY) = 9
read(9, "major minor  #blocks  name\n\n   8 "..., 4096) = 177
close(9)                                = 0
lstat64("/proc/diskstats", {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
open("/proc/diskstats", O_RDONLY|O_NOCTTY) = 9
read(9, "   1       0 ram0 0 0 0 0 0 0 0 0"..., 4096) = 976
close(9)                                = 0
lstat64("/proc/crypto", {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
open("/proc/crypto", O_RDONLY|O_NOCTTY) = 9
read(9, "name         : ecb(arc4)\ndriver  "..., 4096) = 796
close(9)                                = 0
lstat64("/proc/key-users", {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
open("/proc/key-users", O_RDONLY|O_NOCTTY) = 9
read(9, "    0:     3 2/2 0/200 0/20000\n 1"..., 4096) = 63
close(9)                                = 0
lstat64("/proc/version_signature", {st_mode=S_IFREG|0444, st_size=0, 
...}) = 0
open("/proc/version_signature", O_RDONLY|O_NOCTTY) = 9
read(9, "Ubuntu 2.6.28-14.47-generic\n"..., 4096) = 28
close(9)                                = 0
lstat64("/proc/kpageflags", {st_mode=S_IFREG|0400, st_size=0, ...}) = 0
open("/proc/kpageflags", O_RDONLY|O_NOCTTY) = 9
read(9, 
"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 
4096) = 4096
close(9)                                = 0
lstat64("/proc/kpagecount", {st_mode=S_IFREG|0400, st_size=0, ...}) = 0
open("/proc/kpagecount", O_RDONLY|O_NOCTTY) = 9
read(9, 
"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 
4096) = 4096
close(9)                                = 0
lstat64("/proc/kmsg", {st_mode=S_IFREG|0400, st_size=0, ...}) = 0
open("/proc/kmsg", O_RDONLY|O_NOCTTY)   = 9
read(9,
-----(snip)-----

is this collecting entropy for key generation?

Best regards

Carsten

-- 
Carsten Strotmann
Men & Mice Services
Address: Noatun 17, IS-105, Reykjavik, Iceland
Phone:   +354-412-1500
Email:    carsten.strotmann at menandmice.com
http://www.menandmice.com.

Men & Mice
We bring control and flexibility to network management

Disclaimer : www.menandmice.com/disclaimer


----- "Rickard Bondesson" <rickard.bondesson at iis.se> wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
> 
> > I was able to compile all parts of OpenDNSSEC on Ubuntu Linux 9.04.
> > 
> > then, when I try to initialize the SoftHSM token with
> > softhsm --init-token --slot 0 --label "OpenDNSSEC"
> > 
> > I can enter the SO PIN and user PIN, but then the softhsm 
> > process "hangs". I have compiled OpenDNSSEC with loglevel=4 
> > and see the following log messages from SoftHSM:
> > 
> > Aug  2 19:11:58 csmobile2 softhsm: SoftHSM: C_Initialize: Calling
> > Aug  2 19:11:58 csmobile2 softhsm: SoftHSM: C_Initialize: OK
> > Aug  2 19:12:01 csmobile2 softhsm: SoftHSM: C_InitToken: Calling
> > Aug  2 19:12:03 csmobile2 softhsm: SoftHSM: C_OpenSession: Calling
> > 
> > Any ideas where I can look for the cause of this issue?
> 
> We have also got a report from a user with Fedora 11 and a similar
> problem. Will have a look into this.
> 
> There should also be a line saying: "SoftHSM: C_InitToken: OK",
> right?
> 
> Could you run "strace softhsm --init-token --slot 0 --label
> 'OpenDNSSEC'" and give my the last page of lines before it hangs?
> 
> // Rickard
> -----BEGIN PGP SIGNATURE-----
> Version: 9.8.3 (Build 4028)
> Charset: utf-8
> 
> wsBVAwUBSngJW+CjgaNTdVjaAQjjVwf+O7elT0cgghYXA9uoLzo2qmts6zGy+Jix
> 0VCNFYFeI070Gz2Ircz9NqLVAS+TF3wykS61XMbNpyvsFiISQgxLHuBN8zVPm4Av
> j67miTEzrN3ACyXdvp4qGB0OLn4KYOaFjeO5eUbpKgK7LLQElRDapA2jpUu85INQ
> MhTarRw3I003laRKOh6fEu5zz/ORomU6M5EOW5xvy8tE0ysvQ/CbXnNQX+5PYoNR
> 7Gbji1ofjCcGw2zZUnsowIBw3TvBs8VVmpeB6bh9h8RmI4B/PVpdhJeOmKm8rn0h
> gRTDafpH0mAhj0aCK+zKjDBkCU8kepmG2WDq0JzTV+bhz/4JxW5gkQ==
> =Zv7W
> -----END PGP SIGNATURE-----
> 
> 
> _______________________________________________
> Opendnssec-user mailing list
> Opendnssec-user at lists.opendnssec.org
> https://lists.opendnssec.org/mailman/listinfo/opendnssec-user



More information about the Opendnssec-user mailing list