summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/usr.bin/openssl/speed.c155
1 files changed, 76 insertions, 79 deletions
diff --git a/src/usr.bin/openssl/speed.c b/src/usr.bin/openssl/speed.c
index 2b44662170..3e9b4faa9d 100644
--- a/src/usr.bin/openssl/speed.c
+++ b/src/usr.bin/openssl/speed.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: speed.c,v 1.45 2025/05/25 04:54:41 joshua Exp $ */ 1/* $OpenBSD: speed.c,v 1.46 2025/05/25 05:05:30 joshua Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -149,7 +149,6 @@ volatile sig_atomic_t run;
149static int mr = 0; 149static int mr = 0;
150static int usertime = 1; 150static int usertime = 1;
151 151
152static double Time_F(int s);
153static void print_message(const char *s, long num, int length); 152static void print_message(const char *s, long num, int length);
154static void 153static void
155pkey_print_message(const char *str, const char *str2, 154pkey_print_message(const char *str, const char *str2,
@@ -917,16 +916,14 @@ sig_done(int sig)
917#define START TM_RESET 916#define START TM_RESET
918#define STOP TM_GET 917#define STOP TM_GET
919 918
920
921static double 919static double
922Time_F(int s) 920time_f(int s)
923{ 921{
924 if (usertime) 922 if (usertime)
925 return app_timer_user(s); 923 return app_timer_user(s);
926 else
927 return app_timer_real(s);
928}
929 924
925 return app_timer_real(s);
926}
930 927
931static const int KDF1_SHA1_len = 20; 928static const int KDF1_SHA1_len = 20;
932static void * 929static void *
@@ -1586,10 +1583,10 @@ speed_main(int argc, char **argv)
1586 if (doit[D_MD4]) { 1583 if (doit[D_MD4]) {
1587 for (j = 0; j < SIZE_NUM; j++) { 1584 for (j = 0; j < SIZE_NUM; j++) {
1588 print_message(names[D_MD4], c[D_MD4][j], lengths[j]); 1585 print_message(names[D_MD4], c[D_MD4][j], lengths[j]);
1589 Time_F(START); 1586 time_f(START);
1590 for (count = 0, run = 1; COND(c[D_MD4][j]); count++) 1587 for (count = 0, run = 1; COND(c[D_MD4][j]); count++)
1591 EVP_Digest(&(buf[0]), (unsigned long) lengths[j], md, NULL, EVP_md4(), NULL); 1588 EVP_Digest(&(buf[0]), (unsigned long) lengths[j], md, NULL, EVP_md4(), NULL);
1592 d = Time_F(STOP); 1589 d = time_f(STOP);
1593 print_result(D_MD4, j, count, d); 1590 print_result(D_MD4, j, count, d);
1594 } 1591 }
1595 } 1592 }
@@ -1599,10 +1596,10 @@ speed_main(int argc, char **argv)
1599 if (doit[D_MD5]) { 1596 if (doit[D_MD5]) {
1600 for (j = 0; j < SIZE_NUM; j++) { 1597 for (j = 0; j < SIZE_NUM; j++) {
1601 print_message(names[D_MD5], c[D_MD5][j], lengths[j]); 1598 print_message(names[D_MD5], c[D_MD5][j], lengths[j]);
1602 Time_F(START); 1599 time_f(START);
1603 for (count = 0, run = 1; COND(c[D_MD5][j]); count++) 1600 for (count = 0, run = 1; COND(c[D_MD5][j]); count++)
1604 EVP_Digest(&(buf[0]), (unsigned long) lengths[j], md, NULL, EVP_get_digestbyname("md5"), NULL); 1601 EVP_Digest(&(buf[0]), (unsigned long) lengths[j], md, NULL, EVP_get_digestbyname("md5"), NULL);
1605 d = Time_F(STOP); 1602 d = time_f(STOP);
1606 print_result(D_MD5, j, count, d); 1603 print_result(D_MD5, j, count, d);
1607 } 1604 }
1608 } 1605 }
@@ -1622,7 +1619,7 @@ speed_main(int argc, char **argv)
1622 1619
1623 for (j = 0; j < SIZE_NUM; j++) { 1620 for (j = 0; j < SIZE_NUM; j++) {
1624 print_message(names[D_HMAC], c[D_HMAC][j], lengths[j]); 1621 print_message(names[D_HMAC], c[D_HMAC][j], lengths[j]);
1625 Time_F(START); 1622 time_f(START);
1626 for (count = 0, run = 1; COND(c[D_HMAC][j]); count++) { 1623 for (count = 0, run = 1; COND(c[D_HMAC][j]); count++) {
1627 if (!HMAC_Init_ex(hctx, NULL, 0, NULL, NULL)) { 1624 if (!HMAC_Init_ex(hctx, NULL, 0, NULL, NULL)) {
1628 HMAC_CTX_free(hctx); 1625 HMAC_CTX_free(hctx);
@@ -1637,7 +1634,7 @@ speed_main(int argc, char **argv)
1637 goto end; 1634 goto end;
1638 } 1635 }
1639 } 1636 }
1640 d = Time_F(STOP); 1637 d = time_f(STOP);
1641 print_result(D_HMAC, j, count, d); 1638 print_result(D_HMAC, j, count, d);
1642 } 1639 }
1643 HMAC_CTX_free(hctx); 1640 HMAC_CTX_free(hctx);
@@ -1647,10 +1644,10 @@ speed_main(int argc, char **argv)
1647 if (doit[D_SHA1]) { 1644 if (doit[D_SHA1]) {
1648 for (j = 0; j < SIZE_NUM; j++) { 1645 for (j = 0; j < SIZE_NUM; j++) {
1649 print_message(names[D_SHA1], c[D_SHA1][j], lengths[j]); 1646 print_message(names[D_SHA1], c[D_SHA1][j], lengths[j]);
1650 Time_F(START); 1647 time_f(START);
1651 for (count = 0, run = 1; COND(c[D_SHA1][j]); count++) 1648 for (count = 0, run = 1; COND(c[D_SHA1][j]); count++)
1652 EVP_Digest(buf, (unsigned long) lengths[j], md, NULL, EVP_sha1(), NULL); 1649 EVP_Digest(buf, (unsigned long) lengths[j], md, NULL, EVP_sha1(), NULL);
1653 d = Time_F(STOP); 1650 d = time_f(STOP);
1654 print_result(D_SHA1, j, count, d); 1651 print_result(D_SHA1, j, count, d);
1655 } 1652 }
1656 } 1653 }
@@ -1658,10 +1655,10 @@ speed_main(int argc, char **argv)
1658 if (doit[D_SHA256]) { 1655 if (doit[D_SHA256]) {
1659 for (j = 0; j < SIZE_NUM; j++) { 1656 for (j = 0; j < SIZE_NUM; j++) {
1660 print_message(names[D_SHA256], c[D_SHA256][j], lengths[j]); 1657 print_message(names[D_SHA256], c[D_SHA256][j], lengths[j]);
1661 Time_F(START); 1658 time_f(START);
1662 for (count = 0, run = 1; COND(c[D_SHA256][j]); count++) 1659 for (count = 0, run = 1; COND(c[D_SHA256][j]); count++)
1663 SHA256(buf, lengths[j], md); 1660 SHA256(buf, lengths[j], md);
1664 d = Time_F(STOP); 1661 d = time_f(STOP);
1665 print_result(D_SHA256, j, count, d); 1662 print_result(D_SHA256, j, count, d);
1666 } 1663 }
1667 } 1664 }
@@ -1671,10 +1668,10 @@ speed_main(int argc, char **argv)
1671 if (doit[D_SHA512]) { 1668 if (doit[D_SHA512]) {
1672 for (j = 0; j < SIZE_NUM; j++) { 1669 for (j = 0; j < SIZE_NUM; j++) {
1673 print_message(names[D_SHA512], c[D_SHA512][j], lengths[j]); 1670 print_message(names[D_SHA512], c[D_SHA512][j], lengths[j]);
1674 Time_F(START); 1671 time_f(START);
1675 for (count = 0, run = 1; COND(c[D_SHA512][j]); count++) 1672 for (count = 0, run = 1; COND(c[D_SHA512][j]); count++)
1676 SHA512(buf, lengths[j], md); 1673 SHA512(buf, lengths[j], md);
1677 d = Time_F(STOP); 1674 d = time_f(STOP);
1678 print_result(D_SHA512, j, count, d); 1675 print_result(D_SHA512, j, count, d);
1679 } 1676 }
1680 } 1677 }
@@ -1685,10 +1682,10 @@ speed_main(int argc, char **argv)
1685 if (doit[D_RMD160]) { 1682 if (doit[D_RMD160]) {
1686 for (j = 0; j < SIZE_NUM; j++) { 1683 for (j = 0; j < SIZE_NUM; j++) {
1687 print_message(names[D_RMD160], c[D_RMD160][j], lengths[j]); 1684 print_message(names[D_RMD160], c[D_RMD160][j], lengths[j]);
1688 Time_F(START); 1685 time_f(START);
1689 for (count = 0, run = 1; COND(c[D_RMD160][j]); count++) 1686 for (count = 0, run = 1; COND(c[D_RMD160][j]); count++)
1690 EVP_Digest(buf, (unsigned long) lengths[j], md, NULL, EVP_ripemd160(), NULL); 1687 EVP_Digest(buf, (unsigned long) lengths[j], md, NULL, EVP_ripemd160(), NULL);
1691 d = Time_F(STOP); 1688 d = time_f(STOP);
1692 print_result(D_RMD160, j, count, d); 1689 print_result(D_RMD160, j, count, d);
1693 } 1690 }
1694 } 1691 }
@@ -1697,11 +1694,11 @@ speed_main(int argc, char **argv)
1697 if (doit[D_RC4]) { 1694 if (doit[D_RC4]) {
1698 for (j = 0; j < SIZE_NUM; j++) { 1695 for (j = 0; j < SIZE_NUM; j++) {
1699 print_message(names[D_RC4], c[D_RC4][j], lengths[j]); 1696 print_message(names[D_RC4], c[D_RC4][j], lengths[j]);
1700 Time_F(START); 1697 time_f(START);
1701 for (count = 0, run = 1; COND(c[D_RC4][j]); count++) 1698 for (count = 0, run = 1; COND(c[D_RC4][j]); count++)
1702 RC4(&rc4_ks, (unsigned int) lengths[j], 1699 RC4(&rc4_ks, (unsigned int) lengths[j],
1703 buf, buf); 1700 buf, buf);
1704 d = Time_F(STOP); 1701 d = time_f(STOP);
1705 print_result(D_RC4, j, count, d); 1702 print_result(D_RC4, j, count, d);
1706 } 1703 }
1707 } 1704 }
@@ -1710,23 +1707,23 @@ speed_main(int argc, char **argv)
1710 if (doit[D_CBC_DES]) { 1707 if (doit[D_CBC_DES]) {
1711 for (j = 0; j < SIZE_NUM; j++) { 1708 for (j = 0; j < SIZE_NUM; j++) {
1712 print_message(names[D_CBC_DES], c[D_CBC_DES][j], lengths[j]); 1709 print_message(names[D_CBC_DES], c[D_CBC_DES][j], lengths[j]);
1713 Time_F(START); 1710 time_f(START);
1714 for (count = 0, run = 1; COND(c[D_CBC_DES][j]); count++) 1711 for (count = 0, run = 1; COND(c[D_CBC_DES][j]); count++)
1715 DES_ncbc_encrypt(buf, buf, lengths[j], &sch, 1712 DES_ncbc_encrypt(buf, buf, lengths[j], &sch,
1716 &DES_iv, DES_ENCRYPT); 1713 &DES_iv, DES_ENCRYPT);
1717 d = Time_F(STOP); 1714 d = time_f(STOP);
1718 print_result(D_CBC_DES, j, count, d); 1715 print_result(D_CBC_DES, j, count, d);
1719 } 1716 }
1720 } 1717 }
1721 if (doit[D_EDE3_DES]) { 1718 if (doit[D_EDE3_DES]) {
1722 for (j = 0; j < SIZE_NUM; j++) { 1719 for (j = 0; j < SIZE_NUM; j++) {
1723 print_message(names[D_EDE3_DES], c[D_EDE3_DES][j], lengths[j]); 1720 print_message(names[D_EDE3_DES], c[D_EDE3_DES][j], lengths[j]);
1724 Time_F(START); 1721 time_f(START);
1725 for (count = 0, run = 1; COND(c[D_EDE3_DES][j]); count++) 1722 for (count = 0, run = 1; COND(c[D_EDE3_DES][j]); count++)
1726 DES_ede3_cbc_encrypt(buf, buf, lengths[j], 1723 DES_ede3_cbc_encrypt(buf, buf, lengths[j],
1727 &sch, &sch2, &sch3, 1724 &sch, &sch2, &sch3,
1728 &DES_iv, DES_ENCRYPT); 1725 &DES_iv, DES_ENCRYPT);
1729 d = Time_F(STOP); 1726 d = time_f(STOP);
1730 print_result(D_EDE3_DES, j, count, d); 1727 print_result(D_EDE3_DES, j, count, d);
1731 } 1728 }
1732 } 1729 }
@@ -1735,72 +1732,72 @@ speed_main(int argc, char **argv)
1735 if (doit[D_CBC_128_AES]) { 1732 if (doit[D_CBC_128_AES]) {
1736 for (j = 0; j < SIZE_NUM; j++) { 1733 for (j = 0; j < SIZE_NUM; j++) {
1737 print_message(names[D_CBC_128_AES], c[D_CBC_128_AES][j], lengths[j]); 1734 print_message(names[D_CBC_128_AES], c[D_CBC_128_AES][j], lengths[j]);
1738 Time_F(START); 1735 time_f(START);
1739 for (count = 0, run = 1; COND(c[D_CBC_128_AES][j]); count++) 1736 for (count = 0, run = 1; COND(c[D_CBC_128_AES][j]); count++)
1740 AES_cbc_encrypt(buf, buf, 1737 AES_cbc_encrypt(buf, buf,
1741 (unsigned long) lengths[j], &aes_ks1, 1738 (unsigned long) lengths[j], &aes_ks1,
1742 iv, AES_ENCRYPT); 1739 iv, AES_ENCRYPT);
1743 d = Time_F(STOP); 1740 d = time_f(STOP);
1744 print_result(D_CBC_128_AES, j, count, d); 1741 print_result(D_CBC_128_AES, j, count, d);
1745 } 1742 }
1746 } 1743 }
1747 if (doit[D_CBC_192_AES]) { 1744 if (doit[D_CBC_192_AES]) {
1748 for (j = 0; j < SIZE_NUM; j++) { 1745 for (j = 0; j < SIZE_NUM; j++) {
1749 print_message(names[D_CBC_192_AES], c[D_CBC_192_AES][j], lengths[j]); 1746 print_message(names[D_CBC_192_AES], c[D_CBC_192_AES][j], lengths[j]);
1750 Time_F(START); 1747 time_f(START);
1751 for (count = 0, run = 1; COND(c[D_CBC_192_AES][j]); count++) 1748 for (count = 0, run = 1; COND(c[D_CBC_192_AES][j]); count++)
1752 AES_cbc_encrypt(buf, buf, 1749 AES_cbc_encrypt(buf, buf,
1753 (unsigned long) lengths[j], &aes_ks2, 1750 (unsigned long) lengths[j], &aes_ks2,
1754 iv, AES_ENCRYPT); 1751 iv, AES_ENCRYPT);
1755 d = Time_F(STOP); 1752 d = time_f(STOP);
1756 print_result(D_CBC_192_AES, j, count, d); 1753 print_result(D_CBC_192_AES, j, count, d);
1757 } 1754 }
1758 } 1755 }
1759 if (doit[D_CBC_256_AES]) { 1756 if (doit[D_CBC_256_AES]) {
1760 for (j = 0; j < SIZE_NUM; j++) { 1757 for (j = 0; j < SIZE_NUM; j++) {
1761 print_message(names[D_CBC_256_AES], c[D_CBC_256_AES][j], lengths[j]); 1758 print_message(names[D_CBC_256_AES], c[D_CBC_256_AES][j], lengths[j]);
1762 Time_F(START); 1759 time_f(START);
1763 for (count = 0, run = 1; COND(c[D_CBC_256_AES][j]); count++) 1760 for (count = 0, run = 1; COND(c[D_CBC_256_AES][j]); count++)
1764 AES_cbc_encrypt(buf, buf, 1761 AES_cbc_encrypt(buf, buf,
1765 (unsigned long) lengths[j], &aes_ks3, 1762 (unsigned long) lengths[j], &aes_ks3,
1766 iv, AES_ENCRYPT); 1763 iv, AES_ENCRYPT);
1767 d = Time_F(STOP); 1764 d = time_f(STOP);
1768 print_result(D_CBC_256_AES, j, count, d); 1765 print_result(D_CBC_256_AES, j, count, d);
1769 } 1766 }
1770 } 1767 }
1771 if (doit[D_IGE_128_AES]) { 1768 if (doit[D_IGE_128_AES]) {
1772 for (j = 0; j < SIZE_NUM; j++) { 1769 for (j = 0; j < SIZE_NUM; j++) {
1773 print_message(names[D_IGE_128_AES], c[D_IGE_128_AES][j], lengths[j]); 1770 print_message(names[D_IGE_128_AES], c[D_IGE_128_AES][j], lengths[j]);
1774 Time_F(START); 1771 time_f(START);
1775 for (count = 0, run = 1; COND(c[D_IGE_128_AES][j]); count++) 1772 for (count = 0, run = 1; COND(c[D_IGE_128_AES][j]); count++)
1776 AES_ige_encrypt(buf, buf2, 1773 AES_ige_encrypt(buf, buf2,
1777 (unsigned long) lengths[j], &aes_ks1, 1774 (unsigned long) lengths[j], &aes_ks1,
1778 iv, AES_ENCRYPT); 1775 iv, AES_ENCRYPT);
1779 d = Time_F(STOP); 1776 d = time_f(STOP);
1780 print_result(D_IGE_128_AES, j, count, d); 1777 print_result(D_IGE_128_AES, j, count, d);
1781 } 1778 }
1782 } 1779 }
1783 if (doit[D_IGE_192_AES]) { 1780 if (doit[D_IGE_192_AES]) {
1784 for (j = 0; j < SIZE_NUM; j++) { 1781 for (j = 0; j < SIZE_NUM; j++) {
1785 print_message(names[D_IGE_192_AES], c[D_IGE_192_AES][j], lengths[j]); 1782 print_message(names[D_IGE_192_AES], c[D_IGE_192_AES][j], lengths[j]);
1786 Time_F(START); 1783 time_f(START);
1787 for (count = 0, run = 1; COND(c[D_IGE_192_AES][j]); count++) 1784 for (count = 0, run = 1; COND(c[D_IGE_192_AES][j]); count++)
1788 AES_ige_encrypt(buf, buf2, 1785 AES_ige_encrypt(buf, buf2,
1789 (unsigned long) lengths[j], &aes_ks2, 1786 (unsigned long) lengths[j], &aes_ks2,
1790 iv, AES_ENCRYPT); 1787 iv, AES_ENCRYPT);
1791 d = Time_F(STOP); 1788 d = time_f(STOP);
1792 print_result(D_IGE_192_AES, j, count, d); 1789 print_result(D_IGE_192_AES, j, count, d);
1793 } 1790 }
1794 } 1791 }
1795 if (doit[D_IGE_256_AES]) { 1792 if (doit[D_IGE_256_AES]) {
1796 for (j = 0; j < SIZE_NUM; j++) { 1793 for (j = 0; j < SIZE_NUM; j++) {
1797 print_message(names[D_IGE_256_AES], c[D_IGE_256_AES][j], lengths[j]); 1794 print_message(names[D_IGE_256_AES], c[D_IGE_256_AES][j], lengths[j]);
1798 Time_F(START); 1795 time_f(START);
1799 for (count = 0, run = 1; COND(c[D_IGE_256_AES][j]); count++) 1796 for (count = 0, run = 1; COND(c[D_IGE_256_AES][j]); count++)
1800 AES_ige_encrypt(buf, buf2, 1797 AES_ige_encrypt(buf, buf2,
1801 (unsigned long) lengths[j], &aes_ks3, 1798 (unsigned long) lengths[j], &aes_ks3,
1802 iv, AES_ENCRYPT); 1799 iv, AES_ENCRYPT);
1803 d = Time_F(STOP); 1800 d = time_f(STOP);
1804 print_result(D_IGE_256_AES, j, count, d); 1801 print_result(D_IGE_256_AES, j, count, d);
1805 } 1802 }
1806 } 1803 }
@@ -1810,10 +1807,10 @@ speed_main(int argc, char **argv)
1810 1807
1811 for (j = 0; j < SIZE_NUM; j++) { 1808 for (j = 0; j < SIZE_NUM; j++) {
1812 print_message(names[D_GHASH], c[D_GHASH][j], lengths[j]); 1809 print_message(names[D_GHASH], c[D_GHASH][j], lengths[j]);
1813 Time_F(START); 1810 time_f(START);
1814 for (count = 0, run = 1; COND(c[D_GHASH][j]); count++) 1811 for (count = 0, run = 1; COND(c[D_GHASH][j]); count++)
1815 CRYPTO_gcm128_aad(ctx, buf, lengths[j]); 1812 CRYPTO_gcm128_aad(ctx, buf, lengths[j]);
1816 d = Time_F(STOP); 1813 d = time_f(STOP);
1817 print_result(D_GHASH, j, count, d); 1814 print_result(D_GHASH, j, count, d);
1818 } 1815 }
1819 CRYPTO_gcm128_release(ctx); 1816 CRYPTO_gcm128_release(ctx);
@@ -1836,11 +1833,11 @@ speed_main(int argc, char **argv)
1836 1833
1837 for (j = 0; j < SIZE_NUM; j++) { 1834 for (j = 0; j < SIZE_NUM; j++) {
1838 print_message(names[D_AES_128_GCM],c[D_AES_128_GCM][j],lengths[j]); 1835 print_message(names[D_AES_128_GCM],c[D_AES_128_GCM][j],lengths[j]);
1839 Time_F(START); 1836 time_f(START);
1840 for (count = 0, run = 1; COND(c[D_AES_128_GCM][j]); count++) 1837 for (count = 0, run = 1; COND(c[D_AES_128_GCM][j]); count++)
1841 EVP_AEAD_CTX_seal(ctx, buf, &buf_len, BUFSIZE, nonce, 1838 EVP_AEAD_CTX_seal(ctx, buf, &buf_len, BUFSIZE, nonce,
1842 nonce_len, buf, lengths[j], NULL, 0); 1839 nonce_len, buf, lengths[j], NULL, 0);
1843 d=Time_F(STOP); 1840 d = time_f(STOP);
1844 print_result(D_AES_128_GCM,j,count,d); 1841 print_result(D_AES_128_GCM,j,count,d);
1845 } 1842 }
1846 EVP_AEAD_CTX_free(ctx); 1843 EVP_AEAD_CTX_free(ctx);
@@ -1864,11 +1861,11 @@ speed_main(int argc, char **argv)
1864 1861
1865 for (j = 0; j < SIZE_NUM; j++) { 1862 for (j = 0; j < SIZE_NUM; j++) {
1866 print_message(names[D_AES_256_GCM],c[D_AES_256_GCM][j],lengths[j]); 1863 print_message(names[D_AES_256_GCM],c[D_AES_256_GCM][j],lengths[j]);
1867 Time_F(START); 1864 time_f(START);
1868 for (count = 0, run = 1; COND(c[D_AES_256_GCM][j]); count++) 1865 for (count = 0, run = 1; COND(c[D_AES_256_GCM][j]); count++)
1869 EVP_AEAD_CTX_seal(ctx, buf, &buf_len, BUFSIZE, nonce, 1866 EVP_AEAD_CTX_seal(ctx, buf, &buf_len, BUFSIZE, nonce,
1870 nonce_len, buf, lengths[j], NULL, 0); 1867 nonce_len, buf, lengths[j], NULL, 0);
1871 d=Time_F(STOP); 1868 d = time_f(STOP);
1872 print_result(D_AES_256_GCM, j, count, d); 1869 print_result(D_AES_256_GCM, j, count, d);
1873 } 1870 }
1874 EVP_AEAD_CTX_free(ctx); 1871 EVP_AEAD_CTX_free(ctx);
@@ -1894,11 +1891,11 @@ speed_main(int argc, char **argv)
1894 for (j = 0; j < SIZE_NUM; j++) { 1891 for (j = 0; j < SIZE_NUM; j++) {
1895 print_message(names[D_CHACHA20_POLY1305], 1892 print_message(names[D_CHACHA20_POLY1305],
1896 c[D_CHACHA20_POLY1305][j], lengths[j]); 1893 c[D_CHACHA20_POLY1305][j], lengths[j]);
1897 Time_F(START); 1894 time_f(START);
1898 for (count = 0, run = 1; COND(c[D_CHACHA20_POLY1305][j]); count++) 1895 for (count = 0, run = 1; COND(c[D_CHACHA20_POLY1305][j]); count++)
1899 EVP_AEAD_CTX_seal(ctx, buf, &buf_len, BUFSIZE, nonce, 1896 EVP_AEAD_CTX_seal(ctx, buf, &buf_len, BUFSIZE, nonce,
1900 nonce_len, buf, lengths[j], NULL, 0); 1897 nonce_len, buf, lengths[j], NULL, 0);
1901 d=Time_F(STOP); 1898 d = time_f(STOP);
1902 print_result(D_CHACHA20_POLY1305, j, count, d); 1899 print_result(D_CHACHA20_POLY1305, j, count, d);
1903 } 1900 }
1904 EVP_AEAD_CTX_free(ctx); 1901 EVP_AEAD_CTX_free(ctx);
@@ -1908,36 +1905,36 @@ speed_main(int argc, char **argv)
1908 if (doit[D_CBC_128_CML]) { 1905 if (doit[D_CBC_128_CML]) {
1909 for (j = 0; j < SIZE_NUM; j++) { 1906 for (j = 0; j < SIZE_NUM; j++) {
1910 print_message(names[D_CBC_128_CML], c[D_CBC_128_CML][j], lengths[j]); 1907 print_message(names[D_CBC_128_CML], c[D_CBC_128_CML][j], lengths[j]);
1911 Time_F(START); 1908 time_f(START);
1912 for (count = 0, run = 1; COND(c[D_CBC_128_CML][j]); count++) 1909 for (count = 0, run = 1; COND(c[D_CBC_128_CML][j]); count++)
1913 Camellia_cbc_encrypt(buf, buf, 1910 Camellia_cbc_encrypt(buf, buf,
1914 (unsigned long) lengths[j], &camellia_ks1, 1911 (unsigned long) lengths[j], &camellia_ks1,
1915 iv, CAMELLIA_ENCRYPT); 1912 iv, CAMELLIA_ENCRYPT);
1916 d = Time_F(STOP); 1913 d = time_f(STOP);
1917 print_result(D_CBC_128_CML, j, count, d); 1914 print_result(D_CBC_128_CML, j, count, d);
1918 } 1915 }
1919 } 1916 }
1920 if (doit[D_CBC_192_CML]) { 1917 if (doit[D_CBC_192_CML]) {
1921 for (j = 0; j < SIZE_NUM; j++) { 1918 for (j = 0; j < SIZE_NUM; j++) {
1922 print_message(names[D_CBC_192_CML], c[D_CBC_192_CML][j], lengths[j]); 1919 print_message(names[D_CBC_192_CML], c[D_CBC_192_CML][j], lengths[j]);
1923 Time_F(START); 1920 time_f(START);
1924 for (count = 0, run = 1; COND(c[D_CBC_192_CML][j]); count++) 1921 for (count = 0, run = 1; COND(c[D_CBC_192_CML][j]); count++)
1925 Camellia_cbc_encrypt(buf, buf, 1922 Camellia_cbc_encrypt(buf, buf,
1926 (unsigned long) lengths[j], &camellia_ks2, 1923 (unsigned long) lengths[j], &camellia_ks2,
1927 iv, CAMELLIA_ENCRYPT); 1924 iv, CAMELLIA_ENCRYPT);
1928 d = Time_F(STOP); 1925 d = time_f(STOP);
1929 print_result(D_CBC_192_CML, j, count, d); 1926 print_result(D_CBC_192_CML, j, count, d);
1930 } 1927 }
1931 } 1928 }
1932 if (doit[D_CBC_256_CML]) { 1929 if (doit[D_CBC_256_CML]) {
1933 for (j = 0; j < SIZE_NUM; j++) { 1930 for (j = 0; j < SIZE_NUM; j++) {
1934 print_message(names[D_CBC_256_CML], c[D_CBC_256_CML][j], lengths[j]); 1931 print_message(names[D_CBC_256_CML], c[D_CBC_256_CML][j], lengths[j]);
1935 Time_F(START); 1932 time_f(START);
1936 for (count = 0, run = 1; COND(c[D_CBC_256_CML][j]); count++) 1933 for (count = 0, run = 1; COND(c[D_CBC_256_CML][j]); count++)
1937 Camellia_cbc_encrypt(buf, buf, 1934 Camellia_cbc_encrypt(buf, buf,
1938 (unsigned long) lengths[j], &camellia_ks3, 1935 (unsigned long) lengths[j], &camellia_ks3,
1939 iv, CAMELLIA_ENCRYPT); 1936 iv, CAMELLIA_ENCRYPT);
1940 d = Time_F(STOP); 1937 d = time_f(STOP);
1941 print_result(D_CBC_256_CML, j, count, d); 1938 print_result(D_CBC_256_CML, j, count, d);
1942 } 1939 }
1943 } 1940 }
@@ -1946,12 +1943,12 @@ speed_main(int argc, char **argv)
1946 if (doit[D_CBC_IDEA]) { 1943 if (doit[D_CBC_IDEA]) {
1947 for (j = 0; j < SIZE_NUM; j++) { 1944 for (j = 0; j < SIZE_NUM; j++) {
1948 print_message(names[D_CBC_IDEA], c[D_CBC_IDEA][j], lengths[j]); 1945 print_message(names[D_CBC_IDEA], c[D_CBC_IDEA][j], lengths[j]);
1949 Time_F(START); 1946 time_f(START);
1950 for (count = 0, run = 1; COND(c[D_CBC_IDEA][j]); count++) 1947 for (count = 0, run = 1; COND(c[D_CBC_IDEA][j]); count++)
1951 idea_cbc_encrypt(buf, buf, 1948 idea_cbc_encrypt(buf, buf,
1952 (unsigned long) lengths[j], &idea_ks, 1949 (unsigned long) lengths[j], &idea_ks,
1953 iv, IDEA_ENCRYPT); 1950 iv, IDEA_ENCRYPT);
1954 d = Time_F(STOP); 1951 d = time_f(STOP);
1955 print_result(D_CBC_IDEA, j, count, d); 1952 print_result(D_CBC_IDEA, j, count, d);
1956 } 1953 }
1957 } 1954 }
@@ -1960,12 +1957,12 @@ speed_main(int argc, char **argv)
1960 if (doit[D_CBC_RC2]) { 1957 if (doit[D_CBC_RC2]) {
1961 for (j = 0; j < SIZE_NUM; j++) { 1958 for (j = 0; j < SIZE_NUM; j++) {
1962 print_message(names[D_CBC_RC2], c[D_CBC_RC2][j], lengths[j]); 1959 print_message(names[D_CBC_RC2], c[D_CBC_RC2][j], lengths[j]);
1963 Time_F(START); 1960 time_f(START);
1964 for (count = 0, run = 1; COND(c[D_CBC_RC2][j]); count++) 1961 for (count = 0, run = 1; COND(c[D_CBC_RC2][j]); count++)
1965 RC2_cbc_encrypt(buf, buf, 1962 RC2_cbc_encrypt(buf, buf,
1966 (unsigned long) lengths[j], &rc2_ks, 1963 (unsigned long) lengths[j], &rc2_ks,
1967 iv, RC2_ENCRYPT); 1964 iv, RC2_ENCRYPT);
1968 d = Time_F(STOP); 1965 d = time_f(STOP);
1969 print_result(D_CBC_RC2, j, count, d); 1966 print_result(D_CBC_RC2, j, count, d);
1970 } 1967 }
1971 } 1968 }
@@ -1974,12 +1971,12 @@ speed_main(int argc, char **argv)
1974 if (doit[D_CBC_BF]) { 1971 if (doit[D_CBC_BF]) {
1975 for (j = 0; j < SIZE_NUM; j++) { 1972 for (j = 0; j < SIZE_NUM; j++) {
1976 print_message(names[D_CBC_BF], c[D_CBC_BF][j], lengths[j]); 1973 print_message(names[D_CBC_BF], c[D_CBC_BF][j], lengths[j]);
1977 Time_F(START); 1974 time_f(START);
1978 for (count = 0, run = 1; COND(c[D_CBC_BF][j]); count++) 1975 for (count = 0, run = 1; COND(c[D_CBC_BF][j]); count++)
1979 BF_cbc_encrypt(buf, buf, 1976 BF_cbc_encrypt(buf, buf,
1980 (unsigned long) lengths[j], &bf_ks, 1977 (unsigned long) lengths[j], &bf_ks,
1981 iv, BF_ENCRYPT); 1978 iv, BF_ENCRYPT);
1982 d = Time_F(STOP); 1979 d = time_f(STOP);
1983 print_result(D_CBC_BF, j, count, d); 1980 print_result(D_CBC_BF, j, count, d);
1984 } 1981 }
1985 } 1982 }
@@ -1988,12 +1985,12 @@ speed_main(int argc, char **argv)
1988 if (doit[D_CBC_CAST]) { 1985 if (doit[D_CBC_CAST]) {
1989 for (j = 0; j < SIZE_NUM; j++) { 1986 for (j = 0; j < SIZE_NUM; j++) {
1990 print_message(names[D_CBC_CAST], c[D_CBC_CAST][j], lengths[j]); 1987 print_message(names[D_CBC_CAST], c[D_CBC_CAST][j], lengths[j]);
1991 Time_F(START); 1988 time_f(START);
1992 for (count = 0, run = 1; COND(c[D_CBC_CAST][j]); count++) 1989 for (count = 0, run = 1; COND(c[D_CBC_CAST][j]); count++)
1993 CAST_cbc_encrypt(buf, buf, 1990 CAST_cbc_encrypt(buf, buf,
1994 (unsigned long) lengths[j], &cast_ks, 1991 (unsigned long) lengths[j], &cast_ks,
1995 iv, CAST_ENCRYPT); 1992 iv, CAST_ENCRYPT);
1996 d = Time_F(STOP); 1993 d = time_f(STOP);
1997 print_result(D_CBC_CAST, j, count, d); 1994 print_result(D_CBC_CAST, j, count, d);
1998 } 1995 }
1999 } 1996 }
@@ -2026,7 +2023,7 @@ speed_main(int argc, char **argv)
2026 EVP_EncryptInit_ex(ctx, evp_cipher, NULL, key16, iv); 2023 EVP_EncryptInit_ex(ctx, evp_cipher, NULL, key16, iv);
2027 EVP_CIPHER_CTX_set_padding(ctx, 0); 2024 EVP_CIPHER_CTX_set_padding(ctx, 0);
2028 2025
2029 Time_F(START); 2026 time_f(START);
2030 if (decrypt) 2027 if (decrypt)
2031 for (count = 0, run = 1; COND(save_count * 4 * lengths[0] / lengths[j]); count++) 2028 for (count = 0, run = 1; COND(save_count * 4 * lengths[0] / lengths[j]); count++)
2032 EVP_DecryptUpdate(ctx, buf, &outl, buf, lengths[j]); 2029 EVP_DecryptUpdate(ctx, buf, &outl, buf, lengths[j]);
@@ -2037,7 +2034,7 @@ speed_main(int argc, char **argv)
2037 EVP_DecryptFinal_ex(ctx, buf, &outl); 2034 EVP_DecryptFinal_ex(ctx, buf, &outl);
2038 else 2035 else
2039 EVP_EncryptFinal_ex(ctx, buf, &outl); 2036 EVP_EncryptFinal_ex(ctx, buf, &outl);
2040 d = Time_F(STOP); 2037 d = time_f(STOP);
2041 EVP_CIPHER_CTX_free(ctx); 2038 EVP_CIPHER_CTX_free(ctx);
2042 } 2039 }
2043 if (evp_md) { 2040 if (evp_md) {
@@ -2045,11 +2042,11 @@ speed_main(int argc, char **argv)
2045 print_message(names[D_EVP], save_count, 2042 print_message(names[D_EVP], save_count,
2046 lengths[j]); 2043 lengths[j]);
2047 2044
2048 Time_F(START); 2045 time_f(START);
2049 for (count = 0, run = 1; COND(save_count * 4 * lengths[0] / lengths[j]); count++) 2046 for (count = 0, run = 1; COND(save_count * 4 * lengths[0] / lengths[j]); count++)
2050 EVP_Digest(buf, lengths[j], &(md[0]), NULL, evp_md, NULL); 2047 EVP_Digest(buf, lengths[j], &(md[0]), NULL, evp_md, NULL);
2051 2048
2052 d = Time_F(STOP); 2049 d = time_f(STOP);
2053 } 2050 }
2054 print_result(D_EVP, j, count, d); 2051 print_result(D_EVP, j, count, d);
2055 } 2052 }
@@ -2069,7 +2066,7 @@ speed_main(int argc, char **argv)
2069 rsa_c[j][0], rsa_bits[j], 2066 rsa_c[j][0], rsa_bits[j],
2070 RSA_SECONDS); 2067 RSA_SECONDS);
2071/* RSA_blinding_on(rsa_key[j],NULL); */ 2068/* RSA_blinding_on(rsa_key[j],NULL); */
2072 Time_F(START); 2069 time_f(START);
2073 for (count = 0, run = 1; COND(rsa_c[j][0]); count++) { 2070 for (count = 0, run = 1; COND(rsa_c[j][0]); count++) {
2074 ret = RSA_sign(NID_md5_sha1, buf, 36, buf2, 2071 ret = RSA_sign(NID_md5_sha1, buf, 36, buf2,
2075 &rsa_num, rsa_key[j]); 2072 &rsa_num, rsa_key[j]);
@@ -2081,7 +2078,7 @@ speed_main(int argc, char **argv)
2081 break; 2078 break;
2082 } 2079 }
2083 } 2080 }
2084 d = Time_F(STOP); 2081 d = time_f(STOP);
2085 BIO_printf(bio_err, mr ? "+R1:%ld:%d:%.2f\n" 2082 BIO_printf(bio_err, mr ? "+R1:%ld:%d:%.2f\n"
2086 : "%ld %d bit private RSA in %.2fs\n", 2083 : "%ld %d bit private RSA in %.2fs\n",
2087 count, rsa_bits[j], d); 2084 count, rsa_bits[j], d);
@@ -2098,7 +2095,7 @@ speed_main(int argc, char **argv)
2098 pkey_print_message("public", "rsa", 2095 pkey_print_message("public", "rsa",
2099 rsa_c[j][1], rsa_bits[j], 2096 rsa_c[j][1], rsa_bits[j],
2100 RSA_SECONDS); 2097 RSA_SECONDS);
2101 Time_F(START); 2098 time_f(START);
2102 for (count = 0, run = 1; COND(rsa_c[j][1]); count++) { 2099 for (count = 0, run = 1; COND(rsa_c[j][1]); count++) {
2103 ret = RSA_verify(NID_md5_sha1, buf, 36, buf2, 2100 ret = RSA_verify(NID_md5_sha1, buf, 36, buf2,
2104 rsa_num, rsa_key[j]); 2101 rsa_num, rsa_key[j]);
@@ -2110,7 +2107,7 @@ speed_main(int argc, char **argv)
2110 break; 2107 break;
2111 } 2108 }
2112 } 2109 }
2113 d = Time_F(STOP); 2110 d = time_f(STOP);
2114 BIO_printf(bio_err, mr ? "+R2:%ld:%d:%.2f\n" 2111 BIO_printf(bio_err, mr ? "+R2:%ld:%d:%.2f\n"
2115 : "%ld %d bit public RSA in %.2fs\n", 2112 : "%ld %d bit public RSA in %.2fs\n",
2116 count, rsa_bits[j], d); 2113 count, rsa_bits[j], d);
@@ -2143,7 +2140,7 @@ speed_main(int argc, char **argv)
2143 pkey_print_message("sign", "dsa", 2140 pkey_print_message("sign", "dsa",
2144 dsa_c[j][0], dsa_bits[j], 2141 dsa_c[j][0], dsa_bits[j],
2145 DSA_SECONDS); 2142 DSA_SECONDS);
2146 Time_F(START); 2143 time_f(START);
2147 for (count = 0, run = 1; COND(dsa_c[j][0]); count++) { 2144 for (count = 0, run = 1; COND(dsa_c[j][0]); count++) {
2148 ret = DSA_sign(EVP_PKEY_DSA, buf, 20, buf2, 2145 ret = DSA_sign(EVP_PKEY_DSA, buf, 20, buf2,
2149 &kk, dsa_key[j]); 2146 &kk, dsa_key[j]);
@@ -2155,7 +2152,7 @@ speed_main(int argc, char **argv)
2155 break; 2152 break;
2156 } 2153 }
2157 } 2154 }
2158 d = Time_F(STOP); 2155 d = time_f(STOP);
2159 BIO_printf(bio_err, mr ? "+R3:%ld:%d:%.2f\n" 2156 BIO_printf(bio_err, mr ? "+R3:%ld:%d:%.2f\n"
2160 : "%ld %d bit DSA signs in %.2fs\n", 2157 : "%ld %d bit DSA signs in %.2fs\n",
2161 count, dsa_bits[j], d); 2158 count, dsa_bits[j], d);
@@ -2173,7 +2170,7 @@ speed_main(int argc, char **argv)
2173 pkey_print_message("verify", "dsa", 2170 pkey_print_message("verify", "dsa",
2174 dsa_c[j][1], dsa_bits[j], 2171 dsa_c[j][1], dsa_bits[j],
2175 DSA_SECONDS); 2172 DSA_SECONDS);
2176 Time_F(START); 2173 time_f(START);
2177 for (count = 0, run = 1; COND(dsa_c[j][1]); count++) { 2174 for (count = 0, run = 1; COND(dsa_c[j][1]); count++) {
2178 ret = DSA_verify(EVP_PKEY_DSA, buf, 20, buf2, 2175 ret = DSA_verify(EVP_PKEY_DSA, buf, 20, buf2,
2179 kk, dsa_key[j]); 2176 kk, dsa_key[j]);
@@ -2185,7 +2182,7 @@ speed_main(int argc, char **argv)
2185 break; 2182 break;
2186 } 2183 }
2187 } 2184 }
2188 d = Time_F(STOP); 2185 d = time_f(STOP);
2189 BIO_printf(bio_err, mr ? "+R4:%ld:%d:%.2f\n" 2186 BIO_printf(bio_err, mr ? "+R4:%ld:%d:%.2f\n"
2190 : "%ld %d bit DSA verify in %.2fs\n", 2187 : "%ld %d bit DSA verify in %.2fs\n",
2191 count, dsa_bits[j], d); 2188 count, dsa_bits[j], d);
@@ -2226,7 +2223,7 @@ speed_main(int argc, char **argv)
2226 test_curves_bits[j], 2223 test_curves_bits[j],
2227 ECDSA_SECONDS); 2224 ECDSA_SECONDS);
2228 2225
2229 Time_F(START); 2226 time_f(START);
2230 for (count = 0, run = 1; COND(ecdsa_c[j][0]); 2227 for (count = 0, run = 1; COND(ecdsa_c[j][0]);
2231 count++) { 2228 count++) {
2232 ret = ECDSA_sign(0, buf, 20, 2229 ret = ECDSA_sign(0, buf, 20,
@@ -2239,7 +2236,7 @@ speed_main(int argc, char **argv)
2239 break; 2236 break;
2240 } 2237 }
2241 } 2238 }
2242 d = Time_F(STOP); 2239 d = time_f(STOP);
2243 2240
2244 BIO_printf(bio_err, mr ? "+R5:%ld:%d:%.2f\n" : 2241 BIO_printf(bio_err, mr ? "+R5:%ld:%d:%.2f\n" :
2245 "%ld %d bit ECDSA signs in %.2fs \n", 2242 "%ld %d bit ECDSA signs in %.2fs \n",
@@ -2260,7 +2257,7 @@ speed_main(int argc, char **argv)
2260 ecdsa_c[j][1], 2257 ecdsa_c[j][1],
2261 test_curves_bits[j], 2258 test_curves_bits[j],
2262 ECDSA_SECONDS); 2259 ECDSA_SECONDS);
2263 Time_F(START); 2260 time_f(START);
2264 for (count = 0, run = 1; COND(ecdsa_c[j][1]); count++) { 2261 for (count = 0, run = 1; COND(ecdsa_c[j][1]); count++) {
2265 ret = ECDSA_verify(0, buf, 20, ecdsasig, ecdsasiglen, ecdsa[j]); 2262 ret = ECDSA_verify(0, buf, 20, ecdsasig, ecdsasiglen, ecdsa[j]);
2266 if (ret != 1) { 2263 if (ret != 1) {
@@ -2270,7 +2267,7 @@ speed_main(int argc, char **argv)
2270 break; 2267 break;
2271 } 2268 }
2272 } 2269 }
2273 d = Time_F(STOP); 2270 d = time_f(STOP);
2274 BIO_printf(bio_err, mr ? "+R6:%ld:%d:%.2f\n" 2271 BIO_printf(bio_err, mr ? "+R6:%ld:%d:%.2f\n"
2275 : "%ld %d bit ECDSA verify in %.2fs\n", 2272 : "%ld %d bit ECDSA verify in %.2fs\n",
2276 count, test_curves_bits[j], d); 2273 count, test_curves_bits[j], d);
@@ -2347,7 +2344,7 @@ speed_main(int argc, char **argv)
2347 ecdh_c[j][0], 2344 ecdh_c[j][0],
2348 test_curves_bits[j], 2345 test_curves_bits[j],
2349 ECDH_SECONDS); 2346 ECDH_SECONDS);
2350 Time_F(START); 2347 time_f(START);
2351 for (count = 0, run = 1; 2348 for (count = 0, run = 1;
2352 COND(ecdh_c[j][0]); count++) { 2349 COND(ecdh_c[j][0]); count++) {
2353 ECDH_compute_key(secret_a, 2350 ECDH_compute_key(secret_a,
@@ -2355,7 +2352,7 @@ speed_main(int argc, char **argv)
2355 EC_KEY_get0_public_key(ecdh_b[j]), 2352 EC_KEY_get0_public_key(ecdh_b[j]),
2356 ecdh_a[j], kdf); 2353 ecdh_a[j], kdf);
2357 } 2354 }
2358 d = Time_F(STOP); 2355 d = time_f(STOP);
2359 BIO_printf(bio_err, mr 2356 BIO_printf(bio_err, mr
2360 ? "+R7:%ld:%d:%.2f\n" 2357 ? "+R7:%ld:%d:%.2f\n"
2361 : "%ld %d-bit ECDH ops in %.2fs\n", 2358 : "%ld %d-bit ECDH ops in %.2fs\n",