gnupg interferance?
Mark Hounschell
markh at compro.net
Fri Jan 14 15:47:32 CET 2005
I have a very strange problem that appears to have something to do with
gnupg. First I'll tell you I know nothing about gnupg. I am running SuSE
9.2 BTW. I don't clain to know much about how X and kde get started but
if there is a .gnupg directory present in my home directory and I am
logging it at the console via KDM, my kde session appears to start via
the following command:
gpg-agent --daemon --no-detach --keep-display ssh-agent
/etc/X11/xinit/xinitrc
If the .gnupg directory does not exsist my session starts with the
following command:
ssh-agent /etc/X11/xinit/xinitrc
Whenn my session starts via the gpg-agent, no realtime signals can be
received by any of my applications. If I move the .gnupg directory aside
and re-login via KDM I can receive realtime signals from within my
applications until such time as this .gnupg directory mysteriously
reappears. Also if I login from run level 3 or just ssh into the box, my
applications receive realtime signals OK.
The contents of that .gnupg directory are:
markh at harley:~> ls -Ral .gnupg/
.gnupg/:
total 24
drwx------ 3 markh users 4096 2005-01-12 16:01 .
drwxr-xr-x 47 markh users 4096 2005-01-12 16:04 ..
-rw------- 1 markh users 8538 2005-01-12 10:11 gpg.conf
drwx------ 2 markh users 4096 2005-01-12 15:59 private-keys-v1.d
-rw------- 1 markh users 0 2005-01-12 10:11 pubring.gpg
.gnupg/private-keys-v1.d:
total 8
drwx------ 2 markh users 4096 2005-01-12 15:59 .
drwx------ 3 markh users 4096 2005-01-12 16:01 ..
I have not modified anything in this directory.
I am very confused as to why anything concerning gnupg could affect the
recept of realtime signals within an application. A simple sample
application that fails to recieve a realtime signal is follows:
#include <stdio.h>
#include <stdlib.h>
#include <signal.h>
long i; /* global variables */
void SIGhandler(int); /* RT-SIGNAL handler */
void SIGhandler(int sig)
{
i = 1;
}
int main(void)
{
printf("About to send signal\n");
signal(SIGRTMIN + 5, SIGhandler); /* setup handler */
raise(SIGRTMIN + 5); /* fire the signal */
if (i == 1) {
printf("We received out signal\n");
} else {
printf("We did not receive the signal Oops...\n");
}
exit(0);
}
I have duplicated this on multiple SuSE-9.2 machines. What causes this
directory to be re-created days after I move it aside? How could gnupg
affect my environment such that applications I execute cannot receive
realtime signals. The same program using SIGUSR1 or SIGUSR2 will
function ok? It seems only realtime signals are affected?
markh at harley:~> rpm -qa | grep gpg
gpg2-1.9.10-3
gpg-1.2.5-3
gpgme-0.9.0-2
libgpg-error-0.7-6
libgpg-error-devel-0.7-6
gpg-pubkey-9c800aca-40d8063e
gpg-pubkey-3d25d3d9-36e12d04
Thanks and regards
confused Mark
More information about the Gnupg-users
mailing list