diff -up ntp-4.2.2p1/ntpd/ntp_crypto.c.evpverify ntp-4.2.2p1/ntpd/ntp_crypto.c --- ntp-4.2.2p1/ntpd/ntp_crypto.c.evpverify 2006-06-06 22:16:39.000000000 +0200 +++ ntp-4.2.2p1/ntpd/ntp_crypto.c 2009-01-13 16:05:45.000000000 +0100 @@ -1606,7 +1606,7 @@ crypto_verify( */ EVP_VerifyInit(&ctx, peer->digest); EVP_VerifyUpdate(&ctx, (u_char *)&ep->tstamp, vallen + 12); - if (!EVP_VerifyFinal(&ctx, (u_char *)&ep->pkt[i], siglen, pkey)) + if (EVP_VerifyFinal(&ctx, (u_char *)&ep->pkt[i], siglen, pkey) <= 0) return (XEVNT_SIG); if (peer->crypto & CRYPTO_FLAG_VRFY) {