sub checkcryptodb {
logger("CRYPTO INFO: Checking GnuPG Database");
- my $ret = system("gpg --list-keys | grep -q $myid");
- unless ( "$ret" eq "0" ) {
- message("CRYPTO WARN: The GnuPG isn't configured correctly. Trying now to fix this.");
- message("CRYPTO WARN: It's normal to see this on first execution.");
- message("CRYPTO WARN: If this message is being shown repeatedly, check if time and date are set correctly, and if IPFire can connect via port 11371 TCP.");
- my $command = "gpg --keyserver pgp.ipfire.org --always-trust --status-fd 2";
- system("$command --recv-key $myid >> $Conf::logdir/gnupg-database.log 2>&1");
- } else {
- logger("CRYPTO INFO: Database is okay");
- }
+ system("gpg --fingerprint $myid >/dev/null");
+ return if ($? == 0);
+
+ message("CRYPTO WARN: The GnuPG isn't configured correctly. Trying now to fix this.");
+ message("CRYPTO WARN: It's normal to see this on first execution.");
+ message("CRYPTO WARN: If this message is being shown repeatedly, check if time and date are set correctly, and if IPFire can connect via port 11371 TCP.");
+
+ my $command = "gpg --keyserver pgp.ipfire.org --always-trust --status-fd 2";
+ system("$command --recv-key $myid >> $Conf::logdir/gnupg-database.log 2>&1");
}
sub callback {