gpg via cgi under BSDi
Sebastian Henschel
shensche@defcom.de
Wed, 19 Jan 2000 14:02:16 +0100
hello again..
Werner Koch wrote:
>
> > as you can see, it stops before this DEK (whatever that is, looks
>
> data encryption key = the random session key which is used for
> symmentric encryption of the data.
>
> > somehow like a fingerprint) thing is done. well, stopping is not the
> > right term. it just hangs and does nothing more, no quitting, no
> > advancing :(
>
> I guess it is collecting random - did you use EGD?
no, i did not. but how can i do that under BSDi?
i started the demon as proposed (egd.pl ~/.gnupg/entropy) and put
"load-extension rndegd" into my options file.
but gpg seems to use the file /usr/local/lib/gnupg/rndegd and outputs
the following:
gpg: /usr/local/lib/gnupg/rndegd: error loading extension: can't process
object file: Inappropriate file type or format
when i start egd with "egd.pl /usr/local/lib/gnupg/rndegd" gpg says:
gpg: /usr/local/lib/gnupg/rndegd: error loading extension: can't process
object file: Operation not supported
"cat"ting this file now gives me nearly the same answer. btw it seems to
have always the size of 0, rights: 4777.
a snippet with --debug-all (although i have no idea where to start
concerning this egd matter):
------------------ snip -------------------------
# similar stuff before
gpg: DBG: mpi_alloc(2048)
gpg: DBG: mpi_alloc_limb_space(2048)
gpg: DBG: mpi_alloc(32)
gpg: DBG: mpi_alloc_limb_space(32)
gpg: DBG: mpi_alloc(2048)
gpg: DBG: mpi_alloc_limb_space(2048)
gpg: DBG: parse_packet(iob=3): type=2 length=75 (parse.ringedit.c.1237)
gpg: DBG: mpi_alloc(160)
gpg: DBG: mpi_alloc_limb_space(160)
gpg: DBG: mpi_alloc(160)
gpg: DBG: mpi_alloc_limb_space(160)
gpg: DBG: iobuf-3.0: underflow: req=8192 got=0 rc=-1
gpg: DBG: /foobar/.gnupg/pubring.gpg: close fd 3
gpg: DBG: iobuf-3.0: underflow: eof
gpg: /usr/local/lib/gnupg/rndegd: error loading extension: can't process
object file: Operation not supported
gpg: DBG: mpi_alloc(2048)
gpg: DBG: mpi_alloc_limb_space(2048)
gpg: DBG: mpi_alloc(32)
gpg: DBG: mpi_alloc_limb_space(32)
gpg: DBG: mpi_alloc(2048)
gpg: DBG: mpi_alloc_limb_space(2048)
gpg: DBG: free_packet() type=6
gpg: DBG: mpi_free
gpg: DBG: Ooops, m_size called
gpg: DBG: mpi_free_limb_space of size 0
gpg: DBG: mpi_free
# similar stuff afterwards
------------------ snap -------------------------
*sigh*
i remind you all, that you cannot make gnupg with
"--enable-static-rnd=none" or "--enable-static-rnd=egd" on BSDi. and you
have to touch the startup rndegd, tiger, rndunix in the cipher dir of
the source tree (which are found afterwards in /usr/local/lib/gnupg).
> Or something is wrong with your CGI program, run it under strace/truss
> to see where it hangs.
unfortunately strace does not support BSDi (i start hating this
derivate).
well, ktrace (as replacement for truss) does not give _me_ so much more
info. one thing i found interesting is that another gpg-process is
forked shortly before the programm hangs. although in the ktrace dump
you can only see the fork, but in the process list you have two gpgs
running. if anyone is interested i can post him/her the whole output
(about 30K) until i killed the process.
slightly desperate, tia
sebastian
--
defcom webdressing gmbh
ohlauer str. 42
10999 berlin
phone: +49 30 617 76 999