From 7bb828af6e4e8563e90f4bb6058dce15010bb555 Mon Sep 17 00:00:00 2001 From: arvidn Date: Fri, 9 Nov 2018 09:15:51 +0100 Subject: [PATCH 01/10] back-port the new test SSL cert from master --- test/ssl/dhparams.pem | 12 +-- test/ssl/peer_certificate.pem | 117 ++++++++++++------------ test/ssl/peer_private_key.pem | 56 ++++++------ test/ssl/regenerate_test_certificate.sh | 16 ++-- test/ssl/root_ca_cert.pem | 117 ++++++++++++------------ test/ssl/root_ca_private.pem | 56 ++++++------ 6 files changed, 188 insertions(+), 186 deletions(-) diff --git a/test/ssl/dhparams.pem b/test/ssl/dhparams.pem index 1f34372f3..70433b222 100644 --- a/test/ssl/dhparams.pem +++ b/test/ssl/dhparams.pem @@ -1,8 +1,8 @@ -----BEGIN DH PARAMETERS----- -MIIBCAKCAQEAkAw6MH42r7NeMH2PeaHqt+OW+0CznNyUQxXeVl/Rab/hYwsaBiGH -6bm/32zlb9A09g8kZS4vGWY3TJDTaTtNZVAGKPWRqtAlh4YQOy66eFVY0NhEGlHb -ETTJCIaHxY+OphYeV1CvwCtiNIGUW24NORB2DTSj66jTJ2/46LWktIWdn5gYBPoH -e3cXJXEvmnlzfRYgLrOTmYyTtppV2LUrjUuSDvhaulSsuijPv1GNBZlNLVthydZ9 -RbuqOb5RmRqILfuwcgr2YmdufQ0rKxRnMbfKDajBHKxBhwroLL1R923F+uXfzRsg -FN7Je4vnKVrODg9d82TTsxEM7A4XrMn1mwIBAg== +MIIBCAKCAQEA1Qps5gSFEOvOEhMwWJyPL0JU0KcBM0cIycj4sdIwBiRbV0RgSrO1 +2QtwBmS4uYRH4on2Xatx8mqOGansACdc3Mq5OLTpx2cAQS9MAZxhqHyH18qNnoDo +LsGP6M1jEa2RNBql822ySXDCr57IZj99m5+7LPazYF97Grx0M7TGD9vodnGeDInN +mxSpdXfDHmGrBDt1J+Y7UKqs45ZG319HlrR88j5uf/KodOO4GO7E5WLq4JYNTk3A +Osk+ygr4JBGSlnGBYbVUdKDAgrLCdnbhyGJBJAWHworIGFlsxx681rnjZ3Z3hrus ++G1lPjcmz2aurwC5vL6tmcpkBg+3tZAvywIBAg== -----END DH PARAMETERS----- diff --git a/test/ssl/peer_certificate.pem b/test/ssl/peer_certificate.pem index ad084f66f..c68dfa9fe 100644 --- a/test/ssl/peer_certificate.pem +++ b/test/ssl/peer_certificate.pem @@ -1,35 +1,36 @@ Certificate: Data: Version: 3 (0x2) - Serial Number: 16401505873524892479 (0xe39ddab16cef233f) - Signature Algorithm: sha1WithRSAEncryption + Serial Number: + a6:49:54:a6:89:93:53:60 + Signature Algorithm: sha256WithRSAEncryption Issuer: C=AU, ST=Some-State, O=Internet Widgits Pty Ltd, CN=test Validity - Not Before: Nov 1 14:18:00 2017 GMT - Not After : Nov 1 14:18:00 2018 GMT + Not Before: Nov 2 23:39:18 2018 GMT + Not After : Nov 2 23:39:18 2019 GMT Subject: C=AU, ST=Some-State, O=Internet Widgits Pty Ltd, CN=* Subject Public Key Info: Public Key Algorithm: rsaEncryption Public-Key: (2048 bit) Modulus: - 00:e4:b7:31:a6:b1:46:57:4b:74:a1:8a:52:a2:10: - be:36:b8:2e:2a:57:b9:52:95:47:6a:8a:8e:df:dc: - a3:c9:a3:d6:63:2e:85:b8:d4:b3:f5:f4:14:77:26: - 5c:2d:7e:ba:16:e0:96:80:8c:26:4c:8a:e0:b1:00: - 95:7d:30:19:78:30:73:35:cd:3b:3b:f5:b6:dd:f4: - 51:37:16:2e:99:96:d0:f8:77:f7:4a:87:0b:76:7e: - e9:02:ac:11:85:d1:13:0d:94:96:6e:2f:85:36:03: - 32:cd:22:b2:b3:9c:b5:78:e7:c8:40:b8:1d:7d:fa: - ab:48:c6:59:a5:79:3d:14:44:d1:b3:7e:11:8a:51: - 6c:04:52:53:eb:8a:0f:bc:c9:8d:d2:fa:54:13:43: - 62:cc:19:85:61:cb:c8:bb:1d:88:ee:d8:36:97:0e: - d0:d7:64:4c:79:f0:1c:52:fa:b9:f4:ff:91:78:8a: - a2:a5:a9:2e:9a:8d:a1:d0:60:6d:9a:f1:04:80:cb: - b6:3e:55:cb:db:26:70:35:3c:ca:ee:70:ff:26:f1: - 54:b8:f2:4b:0c:00:c1:0f:b3:36:75:dd:45:ea:fe: - e1:c7:27:21:fb:0e:1e:57:08:d5:4a:77:dc:85:dc: - b7:97:67:4d:3e:a2:2e:fa:61:63:ad:ee:6b:35:b1: - 1e:ef + 00:f1:0b:dc:2a:78:1e:04:07:36:f1:22:6e:e1:f7: + b6:13:de:2b:9d:ab:8a:32:7b:84:26:e0:98:48:59: + c4:53:fc:a9:d6:38:e2:87:0f:a6:17:f2:90:48:2a: + cb:99:f2:c6:cd:3d:d1:eb:30:13:58:3e:8f:c4:d6: + b3:9c:e8:de:b8:65:04:01:a9:1f:dd:6e:43:10:82: + 88:08:1b:72:a6:dd:d3:89:18:28:62:b6:8f:53:46: + f2:f4:37:d6:e9:b3:33:67:60:ee:d3:e0:47:7d:0f: + 38:9e:1f:9d:60:2f:b3:12:02:eb:d3:ee:db:54:85: + 79:16:9b:e2:d1:38:55:1b:ae:e8:12:5b:e6:23:43: + 20:54:cf:0c:f5:9f:fe:40:fd:fe:27:4e:e5:ac:63: + f4:6b:9f:82:dc:0d:6d:6e:a2:14:5e:17:67:65:17: + b4:37:78:24:08:c5:01:83:f8:67:8f:f1:a0:7f:a5: + 50:81:2a:d5:89:2f:b4:7f:14:e5:fe:45:bf:ee:ec: + ba:c1:30:e3:6a:f1:15:52:88:cb:be:ea:38:fd:43: + 3d:66:3d:06:f9:5b:7c:46:6d:2f:54:33:4e:1d:1d: + 7c:f8:9b:1e:52:ce:1f:79:64:2a:1d:5a:97:db:77: + c0:d7:ff:0b:be:83:0d:a5:08:17:77:48:e7:a9:40: + aa:c1 Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Basic Constraints: @@ -37,45 +38,45 @@ Certificate: Netscape Comment: OpenSSL Generated Certificate X509v3 Subject Key Identifier: - 1D:F7:51:09:3A:01:2F:B3:0C:26:E4:43:EE:A6:67:30:B5:30:93:F0 + FE:63:9F:EB:7C:FD:DD:A1:5F:9E:0A:09:9B:52:5D:76:1B:8C:C6:0A X509v3 Authority Key Identifier: - keyid:74:98:02:FA:11:B6:2A:BD:53:F4:64:92:85:8E:BF:1C:64:86:00:AF + keyid:1F:7A:B8:01:77:75:AD:E0:62:E6:C6:AD:0C:A8:50:33:47:F3:2D:33 - Signature Algorithm: sha1WithRSAEncryption - 55:1a:c2:1c:b9:75:96:27:29:d3:6a:16:29:66:a5:3b:1b:76: - a3:07:55:c6:ef:70:41:85:58:4d:36:61:cb:27:2c:17:cb:3f: - 79:e4:4e:68:1e:02:74:3d:73:84:bf:29:65:67:c7:9a:6a:24: - b1:73:e0:63:ba:cb:50:51:b8:2c:37:80:bc:88:47:c6:9c:5a: - 9c:4c:31:8a:73:b7:2a:6b:be:d2:6f:7b:02:d4:28:e1:c9:e9: - c6:c4:51:7e:a6:5a:cd:dd:23:92:43:f8:40:e5:37:9a:84:32: - 94:70:09:3f:01:5c:b8:11:35:4e:f6:17:fd:c8:27:85:c5:3c: - 6e:35:db:d4:82:04:94:bf:31:6d:ab:f0:8b:bc:62:27:61:36: - 15:ed:9f:5e:20:dd:de:6b:13:a0:93:35:4c:18:12:fc:db:0e: - fb:9f:d0:6e:14:04:e1:ee:e6:8b:e3:bf:08:25:be:25:cb:78: - f5:11:b9:79:6a:ff:0d:82:e3:33:2b:d8:78:6a:1a:a9:51:fb: - 04:8f:87:5e:7b:98:e7:91:27:27:05:41:97:9a:51:7a:72:e8: - e0:81:74:f8:04:2e:d5:48:ac:1a:61:71:ab:32:d7:cd:fc:27: - 4d:0b:44:79:03:84:df:76:5b:a4:c2:9e:ae:25:5d:06:74:30: - a9:60:1a:18 + Signature Algorithm: sha256WithRSAEncryption + 4c:13:55:fe:43:04:f4:b3:af:e0:1c:b2:05:3b:24:73:17:d6: + bf:83:b5:f2:e1:25:3b:ba:19:f5:1b:dd:74:96:35:1e:ec:80: + 1e:5c:c5:40:db:83:26:c5:fe:64:1a:12:4f:d4:b7:2a:03:13: + 2b:e9:e0:0f:a2:f7:66:88:3d:ac:f4:fe:43:a3:1e:63:ea:56: + 9b:97:ae:71:7c:df:ef:7c:57:ff:52:7f:08:68:46:0a:1c:90: + bd:5f:b8:c1:6e:4a:f6:7b:f0:02:ef:8a:72:d7:c4:6c:99:d9: + fb:f8:00:03:7d:6d:c5:41:c3:ab:eb:df:c1:21:ac:2b:ba:66: + 44:dd:d7:c9:46:46:b0:f5:48:fe:6a:24:b8:1b:cf:6f:44:cf: + 60:ab:e8:65:f3:47:cd:ce:21:01:e2:49:c8:97:fa:08:4e:b9: + ca:bd:78:db:6b:27:d8:0f:e1:8f:f6:36:b8:f5:2d:0a:c9:4f: + 3c:bd:c6:fe:61:86:7f:51:fa:27:a0:ad:72:47:ed:f4:e0:0f: + 8d:fb:e3:63:d0:cc:89:2c:07:41:88:f4:a6:06:59:cc:64:4f: + 80:00:d9:be:0e:84:52:01:4b:08:b4:12:f9:7d:91:57:a5:bc: + 8e:5b:d7:fc:94:45:b7:e2:e7:6e:00:54:7f:e3:14:a5:08:1b: + 7c:b9:22:dd -----BEGIN CERTIFICATE----- -MIIDozCCAougAwIBAgIJAOOd2rFs7yM/MA0GCSqGSIb3DQEBBQUAMFQxCzAJBgNV +MIIDozCCAougAwIBAgIJAKZJVKaJk1NgMA0GCSqGSIb3DQEBCwUAMFQxCzAJBgNV BAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBX -aWRnaXRzIFB0eSBMdGQxDTALBgNVBAMMBHRlc3QwHhcNMTcxMTAxMTQxODAwWhcN -MTgxMTAxMTQxODAwWjBRMQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29tZS1TdGF0 +aWRnaXRzIFB0eSBMdGQxDTALBgNVBAMMBHRlc3QwHhcNMTgxMTAyMjMzOTE4WhcN +MTkxMTAyMjMzOTE4WjBRMQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29tZS1TdGF0 ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMQowCAYDVQQDDAEq -MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5LcxprFGV0t0oYpSohC+ -NrguKle5UpVHaoqO39yjyaPWYy6FuNSz9fQUdyZcLX66FuCWgIwmTIrgsQCVfTAZ -eDBzNc07O/W23fRRNxYumZbQ+Hf3SocLdn7pAqwRhdETDZSWbi+FNgMyzSKys5y1 -eOfIQLgdffqrSMZZpXk9FETRs34RilFsBFJT64oPvMmN0vpUE0NizBmFYcvIux2I -7tg2lw7Q12RMefAcUvq59P+ReIqipakumo2h0GBtmvEEgMu2PlXL2yZwNTzK7nD/ -JvFUuPJLDADBD7M2dd1F6v7hxych+w4eVwjVSnfchdy3l2dNPqIu+mFjre5rNbEe -7wIDAQABo3sweTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdl -bmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUHfdRCToBL7MMJuRD7qZnMLUw -k/AwHwYDVR0jBBgwFoAUdJgC+hG2Kr1T9GSShY6/HGSGAK8wDQYJKoZIhvcNAQEF -BQADggEBAFUawhy5dZYnKdNqFilmpTsbdqMHVcbvcEGFWE02YcsnLBfLP3nkTmge -AnQ9c4S/KWVnx5pqJLFz4GO6y1BRuCw3gLyIR8acWpxMMYpztyprvtJvewLUKOHJ -6cbEUX6mWs3dI5JD+EDlN5qEMpRwCT8BXLgRNU72F/3IJ4XFPG4129SCBJS/MW2r -8Iu8YidhNhXtn14g3d5rE6CTNUwYEvzbDvuf0G4UBOHu5ovjvwglviXLePURuXlq -/w2C4zMr2HhqGqlR+wSPh157mOeRJycFQZeaUXpy6OCBdPgELtVIrBphcasy1838 -J00LRHkDhN92W6TCnq4lXQZ0MKlgGhg= +MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA8QvcKngeBAc28SJu4fe2 +E94rnauKMnuEJuCYSFnEU/yp1jjihw+mF/KQSCrLmfLGzT3R6zATWD6PxNaznOje +uGUEAakf3W5DEIKICBtypt3TiRgoYraPU0by9DfW6bMzZ2Du0+BHfQ84nh+dYC+z +EgLr0+7bVIV5Fpvi0ThVG67oElvmI0MgVM8M9Z/+QP3+J07lrGP0a5+C3A1tbqIU +XhdnZRe0N3gkCMUBg/hnj/Ggf6VQgSrViS+0fxTl/kW/7uy6wTDjavEVUojLvuo4 +/UM9Zj0G+Vt8Rm0vVDNOHR18+JseUs4feWQqHVqX23fA1/8LvoMNpQgXd0jnqUCq +wQIDAQABo3sweTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdl +bmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQU/mOf63z93aFfngoJm1JddhuM +xgowHwYDVR0jBBgwFoAUH3q4AXd1reBi5satDKhQM0fzLTMwDQYJKoZIhvcNAQEL +BQADggEBAEwTVf5DBPSzr+AcsgU7JHMX1r+DtfLhJTu6GfUb3XSWNR7sgB5cxUDb +gybF/mQaEk/UtyoDEyvp4A+i92aIPaz0/kOjHmPqVpuXrnF83+98V/9SfwhoRgoc +kL1fuMFuSvZ78ALvinLXxGyZ2fv4AAN9bcVBw6vr38EhrCu6ZkTd18lGRrD1SP5q +JLgbz29Ez2Cr6GXzR83OIQHiSciX+ghOucq9eNtrJ9gP4Y/2Nrj1LQrJTzy9xv5h +hn9R+iegrXJH7fTgD43742PQzIksB0GI9KYGWcxkT4AA2b4OhFIBSwi0Evl9kVel +vI5b1/yURbfi524AVH/jFKUIG3y5It0= -----END CERTIFICATE----- diff --git a/test/ssl/peer_private_key.pem b/test/ssl/peer_private_key.pem index bdae7f929..06994bbe7 100644 --- a/test/ssl/peer_private_key.pem +++ b/test/ssl/peer_private_key.pem @@ -1,30 +1,30 @@ -----BEGIN ENCRYPTED PRIVATE KEY----- -MIIFHzBJBgkqhkiG9w0BBQ0wPDAbBgkqhkiG9w0BBQwwDgQI5Noy5Ex7rssCAggA -MB0GCWCGSAFlAwQBKgQQkdHJsEIagXjvW3zAbqcNLwSCBNC2BPAzNj53MS7toQAh -1lUwvkEJYEsip4OcxpZggRkG4VhRIOZpYuS7gGa+2QoFFLI+j1j7NDDRnSS2P41Y -M3JWkmz/qVss8l41ttjMe+AbXXl+R8rwqK8Z/Mg2ZaUGYO38rU8VFO1ihS3gBvfW -HzpQsjceU2PPOt0pee0AypSPaZoQOw2tgzw5U1bPkPnWti40AiCR3u380h2e0yBw -1xyniWHSjL+ZXOOelyOHEi3+q6/SB/lR3IRipnXuIheiUZeEtBrJJcJq+CB+Jxae -yN4Cd/3ezhzvXY3PumyM14tueimJyB2VjRoGPdDmlzicSspyeJkFYSesgBwXSoCa -aWEFJnphFFUrEdFywXcHdsakeVMrP3vBfTWVZ9gC0tWdAMF84bxe1y8/A+PLGkds -z8R2xdilsgi64WQ9dwEsHkbw0SwKWHnKAP80PC7ZFF5nslK03DQ/Nm5KqFdQEFML -ICVMLFIRwBbWmOf/L/WW8jUR9XgNhx0WALevsegeEQd3k6jwSHINmyhKKRTyF4CJ -nFo2S22xZUbdzUjG3UYlVLzIOuRkhfyqQ+C3Ewdce87gbQJjgMEa8ggGP0eUMM7W -64qSKshJum6rIt5KEzFXyMoWVqNiIREj3k4viXzfSK8WNAs0XunwkXpkq2fHck6H -xtV5IkRpFqJNBMi45K5S5yE0aa1URYpQYmTidn9paFUhsU8nHStSysVnVJiRVF5y -HP6gE0Nlh2ZyzTAHoqGVhHxDMB5Uay/NwwAbqBaZLXrizlv4jRsoaAGVCbUwscQA -oEnZx+nxasOTUSDBXw7bre1tzXTnhwv7P55nVA4vEVV1ZnJ3kAtDSN1vT9JVd4R/ -dZRvV+YgeL/8VafMrBe/yiVvZ6YavDzXirB/ZmfyrY+5h09JTP0pKXGLJf6T7u5Q -eDTKob3NOdc42KcLl8u3lhCT2V8L9lHvu0FpK/Bk1NFECfj9sTJtqmbkyD4oKIRH -oXCmTWukhDEO1669nmMWqU6DXFdujPUfEz/6W2FJmW8lSjT1tt2+E9wF/DnSS935 -NYfVagvQTp6rdAV7IE9iWG5ifGeI/Fy3l0IP2lXwfus9TqQmFL96+uKHqIW37kVT -YeV0iLF1tCXYJVjthVHWKprRDJDPTs93+vjEBYwUmFBnDMQE1dmdPRPZpGCz8kqu -Zv8y1sB23sjvhnuFKn9vame7wC89PLt06w+czn/WVmc0ugJBid8Hk4SMUxlCUxfA -aF38OKd63BdcLZCijF2mmzZGrdTuglONb2UpOkVFZ3Lc2MGFmEYnuF42j04lPLDH -LiL1IMO9By0mAXOG+JMiekX1sGX2TgRzCL9pvaXpsVe6II3vBoXS3/nc0jgIbbfb -onBZ2eDEidxa8xWltk4LAxR6XGi96dUjwOqN4k6eW+ZE02QEZ4N7s90DVlHrDpgx -vRyJNju+et+bglFlC8qe4NnrQ7YoW26lfedgXN7fDZR3RSIltdR6KlPYb+fo52UI -muSooXLYNKad5ZiGfWBcehtsPq+5jnLHwIjAwaiDD5LScyAt0c3h7BaO3eZAYXQL -bLNSDRk08nwHu0TRJVEz2KpvFfo0esAU5KwQVICiF3E3HgChloDlFP4gjBhPiSXG -0muhAPEAoKRnrVEo5TqU+VmhxQ== +MIIFHDBOBgkqhkiG9w0BBQ0wQTApBgkqhkiG9w0BBQwwHAQIp0wEfuikgkgCAggA +MAwGCCqGSIb3DQIJBQAwFAYIKoZIhvcNAwcECOg5CJvKqiHPBIIEyN1QXHE+Lr0h +7tV8iPyo5phdd+pgC13sjVqHf3Hc4HawuupXLqp8l81cByYL1klEOwevUALo6WoJ +YcLG/XUYEp1hbEQYR+gFam3DBsu+uuRj9nYYOHp2MHd6C8KTOfwKYrP6QBUWRAgS +Xp8g24IOMaKJOcSwm/W1exdX1ZujS0AOFreCk+3KgSKoNaFvPXXI13hFejr+Jauj +WNqF/6QZd4afaP8kWjooIosGBJaJcd3eEbt5Bd3nEcn42Ll/a9b0uir0x2t5yttA +IVdw0XeZ8kbwnTYiVXUL4ZsU4ctVFF14kRSDACNP0rPpae4M2FqYjj3Uec88vL6z +QKmE1ypMM+EPyTyGevOnrIt3+p8kRNhAsP7fmdWT0sab6a5Q/eM8cuaVfql87cNM +eAY2AqMEgrJqY9zPA/Me8+/D0MV51ydkFkTdsSA7aryu4iM5VlpSamGDQkzn8Hoe +/AHk6MlW+K8Uiwc9og/UM/reAqsHi7BF0MiMU/wpAvtMQ40v/4ZDBcm1qHVWgyGJ +fiPYjhejB4ik04cE9abcAjpXIs1PVpRlRAEohb/WdmljbWyobYFBtC7XQFOXEbys +SD27MPtX6mGzytxDqpw1xxrMhNfQ9ytt3cMENPZjYElgkUKByUkBjeDMrssZYblA +WV02GYzTfn14HrlDkhULkvgYvwQM+arczKNsD4Z93A8TUQo/4LRS8efKpv5nGWeL +L485M4Un/VcSC7+tgjoG8HtoG6Chd9EosToEx8md95MN1T6lqFwbLvef25tAqFmX +IHzbJB+VHx3nSW/LEm0uTEPKBb1nEZKV9ey4HWmLW35nlw492ttpCeOrCuEmf6+q +tMy8GCKsf21ZxJZfm38hDs051vflZUC+oBaPFSgwj4eODZjKIBp+rGAz28sT9Jee +OPf2yrcIIpz2ls9NllVy7QACTi0OqqnnxCX/CWTfRijUuPZRutYOL57eM1lps/7d +m2wIUPW9zYpmjfi66In/Oyijx7CqaAyG+AQDetdTeDiyAI7YGU77WCFXaMd3WOXn +SVMqe/8faH949uWm6d0KHCZv3qCdM/jX6LbsJAE9AMSiZKP6+0uIUA6Pjhsns2bn +VzgOKsVOIINC08iUISYVwhW0vhZKj8N8lmsK5xYFupcLcfBhKcs9ehgSusUnkA2K +1yi9p7Lro2syOlx56X+0OzBuUPTo4q0HT+LbwxJn019DRi3dlZHK0AtLbmWMlCjX +ciBu/QZhQIPfkELKBzrXON6HHh1vpMIb3Knpi3PdQ/mn8ioTQHxjG2YbNITq+zbn +MukrxtuLybLxD4Us7KoCZOcbzEdOn3EgpEGESadcm1uCa0noZ6ITkCpytMR5qCsW +JSBZdf2QEnHxddpUl51NkRLd5WI3tdg2sYoFksahN9ix3jFjzTc7k2x11jfDF4pb +fAPxWdWf+H7E/+/fJm94Lpyk/rK4QNQUkgX4DKiZzLFIFUIN0CM28CKf8Ee1JNc+ +8XEHbwtTrP7BumQ42yI2ytqCX/J6wzk7Yb7OinmvlkN2/5+ME1Hz2tllCk8aW7uY +noPy0aaakFyV2gdCHcNzQiMdr/z1oe7izuUuZ4bDNEaKhY1VFh0jKvZ8pJfoep17 +paL+2JdhEQ+jdKZKNSQ+WA== -----END ENCRYPTED PRIVATE KEY----- diff --git a/test/ssl/regenerate_test_certificate.sh b/test/ssl/regenerate_test_certificate.sh index a7c68177f..2897f05c5 100755 --- a/test/ssl/regenerate_test_certificate.sh +++ b/test/ssl/regenerate_test_certificate.sh @@ -2,26 +2,26 @@ set -e -PATH=$PATH:/usr/local/etc/openssl/misc +PATH=$PATH:/usr/local/etc/openssl/misc:/usr/lib/ssl/misc rm -rf demoCA -printf "\n\n ======== \x1b[33muse passphrase: \"test\" \x1b[0m=========\n\n" -printf "\n\n ======== \x1b[33muse common name: \"test\" \x1b[0m=========\n\n" +printf "\n\n ======== \e[33muse passphrase: \"test\" \e[0m=========\n\n" +printf "\n\n ======== \e[33muse common name: \"test\" \e[0m=========\n\n" -CA.sh -newca +CA.pl -newca cp ./demoCA/cacert.pem root_ca_cert.pem cp ./demoCA/private/cakey.pem root_ca_private.pem -printf "\n\n ======== \x1b[33muse passphrase: \"test\" \x1b[0m=========\n\n" -printf "\n\n ======== \x1b[33muse common name: * \x1b[0m=========\n\n" +printf "\n\n ======== \e[33muse passphrase: \"test\" \e[0m=========\n\n" +printf "\n\n ======== \e[33muse common name: * \e[0m=========\n\n" -CA.sh -newreq +CA.pl -newreq cp newkey.pem peer_private_key.pem -CA.sh -sign +CA.pl -sign cp newcert.pem peer_certificate.pem diff --git a/test/ssl/root_ca_cert.pem b/test/ssl/root_ca_cert.pem index 7a94cef9e..5081286fd 100644 --- a/test/ssl/root_ca_cert.pem +++ b/test/ssl/root_ca_cert.pem @@ -1,78 +1,79 @@ Certificate: Data: Version: 3 (0x2) - Serial Number: 16401505873524892478 (0xe39ddab16cef233e) - Signature Algorithm: sha1WithRSAEncryption + Serial Number: + a6:49:54:a6:89:93:53:5f + Signature Algorithm: sha256WithRSAEncryption Issuer: C=AU, ST=Some-State, O=Internet Widgits Pty Ltd, CN=test Validity - Not Before: Nov 1 14:17:41 2017 GMT - Not After : Oct 31 14:17:41 2020 GMT + Not Before: Nov 2 23:39:03 2018 GMT + Not After : Oct 30 23:39:03 2028 GMT Subject: C=AU, ST=Some-State, O=Internet Widgits Pty Ltd, CN=test Subject Public Key Info: Public Key Algorithm: rsaEncryption Public-Key: (2048 bit) Modulus: - 00:c4:73:fa:40:3b:53:9f:86:ce:98:96:01:cd:10: - 2d:82:bb:9e:94:f8:76:7d:cf:f5:32:c5:77:08:72: - 35:89:ca:6b:e4:b0:13:50:98:25:78:ba:f0:f8:30: - 3e:8f:04:3f:fa:9e:68:ec:4f:ab:63:04:4a:0d:1d: - 54:c0:82:03:de:ec:7d:cf:f8:ef:23:82:61:09:26: - 13:cf:6d:9b:a5:2b:e2:2e:34:f7:2b:5c:56:1b:20: - e5:bb:23:fc:10:7a:27:0b:a3:0b:59:90:2d:a5:19: - e5:05:2e:39:78:49:34:19:91:d0:3e:23:9c:32:5c: - 5f:a8:29:fd:2d:38:b7:ee:a7:e3:c2:5e:6d:d4:e3: - 07:b9:39:f1:00:f2:57:b8:38:d1:e6:d8:10:28:22: - df:3f:8d:af:85:26:b5:ce:c8:d3:5e:7a:d7:46:5e: - 19:a2:f7:17:44:21:d3:91:f8:46:26:b7:1d:55:e6: - e6:8a:6e:86:aa:1e:56:75:22:df:9b:43:65:42:3b: - 5a:96:0f:f8:54:55:19:00:b5:57:04:25:c5:4b:cf: - db:8b:e6:52:3e:59:a6:ae:43:52:9a:70:d5:f8:2d: - 5a:43:07:c6:ee:39:4b:46:0b:0e:45:a5:b7:dd:69: - e8:2e:71:9f:05:7c:6a:1d:85:8f:a5:f6:aa:a2:cb: - 65:c3 + 00:cf:42:13:5a:fc:e9:cd:d9:9e:5a:c9:79:7c:29: + b8:7b:a4:53:6d:03:2e:55:eb:de:f7:b6:de:30:76: + 41:c1:27:52:65:b9:f0:8d:56:02:04:85:d5:b4:cc: + db:7f:b9:e2:f0:99:ef:05:ac:5b:cb:16:65:a7:18: + c0:86:0f:9b:de:98:fa:d5:46:63:30:6d:d2:91:fe: + 6d:fb:08:13:f3:08:32:38:7b:c3:a1:3b:c2:4f:ca: + b5:31:b1:e0:4d:f0:4f:a0:bf:22:d4:c1:e1:82:27: + 40:46:c1:0d:ac:c1:28:4d:39:37:5c:a9:64:32:d9: + 3a:bc:13:b7:a7:7f:95:7f:3b:b3:8f:12:23:03:58: + dc:56:05:72:0b:74:55:36:6c:f9:a8:f3:f9:b8:f1: + 57:81:d1:78:11:d9:3b:63:11:ea:01:40:3e:2a:5a: + a2:2e:a4:ea:c7:57:86:b2:aa:9e:5a:63:66:60:ee: + a5:04:23:83:d5:48:d9:4b:28:e9:c1:a6:c2:66:fb: + c3:5f:89:70:c9:e5:b6:9c:2c:2a:49:e3:8b:a3:f7: + a0:5c:38:01:3f:6d:21:5a:8e:a8:38:24:82:22:1f: + c2:ec:e6:cc:f2:7c:60:80:bb:8d:4a:72:42:8d:48: + 6f:0f:c5:bc:25:9e:91:f6:63:63:d5:4e:04:15:fe: + d4:c1 Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Subject Key Identifier: - 74:98:02:FA:11:B6:2A:BD:53:F4:64:92:85:8E:BF:1C:64:86:00:AF + 1F:7A:B8:01:77:75:AD:E0:62:E6:C6:AD:0C:A8:50:33:47:F3:2D:33 X509v3 Authority Key Identifier: - keyid:74:98:02:FA:11:B6:2A:BD:53:F4:64:92:85:8E:BF:1C:64:86:00:AF + keyid:1F:7A:B8:01:77:75:AD:E0:62:E6:C6:AD:0C:A8:50:33:47:F3:2D:33 - X509v3 Basic Constraints: + X509v3 Basic Constraints: critical CA:TRUE - Signature Algorithm: sha1WithRSAEncryption - 7c:41:90:e9:74:9a:ba:32:da:27:27:1d:fc:49:56:30:70:f1: - 96:14:46:a6:a7:b6:0f:0a:04:9e:d5:0f:3a:4d:c0:14:33:92: - 5f:db:d6:26:e8:8f:97:0b:50:16:c1:2d:c5:8a:79:99:b6:52: - 41:98:8a:10:9f:39:38:50:1f:10:c5:cc:5e:4f:90:43:a3:8e: - 74:71:9d:2d:f6:3f:d7:88:f4:fb:1a:01:3e:aa:ea:e5:52:c1: - 23:d1:e9:3b:1c:17:4c:62:ff:72:27:8c:eb:a1:c5:ba:1d:eb: - 96:c0:4a:b3:dd:6b:67:d0:6f:37:1c:11:a8:aa:25:5e:af:87: - 9e:c2:29:6c:83:5d:13:a0:1c:46:8c:0a:83:f6:cc:02:3c:d4: - d3:ca:3c:11:8f:96:26:56:19:57:4f:0a:98:5c:4a:b8:10:b7: - a5:7f:2c:38:e0:f3:d4:68:31:de:53:47:36:21:f1:86:6d:8d: - 07:d2:cf:58:a8:96:a3:03:52:1b:fb:24:0b:17:28:da:20:06: - 4f:ca:52:76:23:f3:81:c6:e9:32:08:bc:f3:05:ce:1c:5d:f1: - c9:80:7c:68:f0:f6:eb:4c:8f:b6:30:88:53:5c:01:92:f4:64: - 4c:9b:0a:13:ab:1e:7f:82:6a:f1:92:e0:84:66:2e:87:fb:f9: - 6d:a9:cf:a0 + Signature Algorithm: sha256WithRSAEncryption + 27:74:1e:29:85:e9:52:92:67:84:ad:3b:9b:f7:10:64:7f:fd: + f2:54:46:bb:be:3b:89:07:e9:f8:ed:1a:e6:91:56:a5:96:80: + 94:52:fc:90:24:e4:e1:d9:43:6d:69:d0:e3:a3:cc:39:4f:8c: + 5e:70:af:b8:a4:88:87:5b:6e:20:3b:df:52:07:20:f7:43:97: + ad:7b:42:61:52:86:6e:9b:ac:7c:83:3a:5e:77:f3:75:37:82: + 52:30:55:10:2a:f2:aa:32:c3:48:61:b3:8f:a1:28:2a:77:48: + 03:d6:10:1a:53:ab:9e:47:38:78:10:2b:43:41:90:4c:eb:c4: + d7:5f:df:d3:92:86:ab:82:d7:25:38:bd:06:6c:ac:2c:c3:97: + 49:af:6d:62:98:44:cb:05:f7:5f:c2:0a:d2:c5:3a:e0:24:3b: + 33:bc:68:08:5b:e5:98:2b:a8:f3:57:c9:49:b5:84:96:d7:4a: + 00:a5:b4:2e:39:a6:59:a5:0d:24:a7:69:31:bd:4b:11:cc:b9: + 80:ae:d4:4a:db:ba:d2:75:f5:c7:0b:61:d9:4f:58:ca:9f:a0: + a2:7a:37:b9:ac:76:cf:6f:a3:89:b3:35:a2:08:5a:4c:bc:0d: + 6f:77:1c:67:9c:1c:f8:9c:46:9c:22:74:e9:1f:6f:f6:f3:5b: + d5:61:d3:c9 -----BEGIN CERTIFICATE----- -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 -----END CERTIFICATE----- diff --git a/test/ssl/root_ca_private.pem b/test/ssl/root_ca_private.pem index eb95ee9e5..81ea54e11 100644 --- a/test/ssl/root_ca_private.pem +++ b/test/ssl/root_ca_private.pem @@ -1,30 +1,30 @@ -----BEGIN ENCRYPTED PRIVATE KEY----- -MIIFHzBJBgkqhkiG9w0BBQ0wPDAbBgkqhkiG9w0BBQwwDgQIIfu7jg47z0YCAggA -MB0GCWCGSAFlAwQBKgQQcS1zoA9/tSFIzvwDdNBAGQSCBNCCCGl48T+mAuF10Io2 -496dwfjaNuhHy7hUqqR87NR39ROJau2hcqNaRH2zUhAoLm87RpLLK7en26M0/pqe -wgmyX8zw+jpjNPJ153NpGWqMSWFPtKjWqp4jxpLtaGHaucoOVIraj1SKXxG580SA -/yaUvOFtOostdte19edYEhRm/5q+JZTz1CaoulDxcQjqdSgUOZey+yxgT/Nh4WJB -fKtSni4k76NyXPAS+aE8gzZ+7N8x0W5fxzKJmmCznyTx/wWtW084ajBccfXzJuY1 -H2hoGmlkZSJeiMtGP9FBt0YJnNr+Qi9XuGb7MUv3yCbYA2pD4ohSeOsVn4yR1hyX -e4sern5gVQBDzYZmzq2YVHmCvrLtiKzLoAKCfoXJl3mzE9b2lnv08GE0TOJACEQ2 -vVFn/qk9rUm7g36mIRHNMWekzy4ogxYyn9PBtz6mIZ+Uf9pF9laHxWrvhUlFMERk -BFLE6hTHqBw2pQXjCuMJuu5mLlGlqfz15nm/UQ5GnYJp00s5/D5xE8qsCN+arj+u -rleqhK8IGSGq2mE7Q6aX5mCfzR26qnQDQG3nvPYCLV5dDxr3LMSSEtbDOVSkNLre -Hsne1f6Z7j59Bp7Wno0lg+0gz8IjfzSD4t6tHqFuCBcFwtiFFnqrDGwuz1zBjEFP -w4T/Xx+JbbkNzwZsGwY+vd/PG3bByvZajTo9DLv53YSP4ohNprH1rEbxAm81BPnk -/P35oqd6eH3iQgM6A9sF2JD3cs175vRrnKJmomX3zShkf/rsmXcOwUcFrLKxPIZv -2ViHyshiJMInjQwlFc5aEyV+4NzJVZimcC684xfFOV2jru3pepnw9jqT4kROTAul -hKNZHxz/5W67d5sEFAOze9GMC9iVgZLJkc6bf3izEL+miee6RSb5krNSyOvLWe34 -Gba7bBc+B5kbWi+/4xfQl+fMbGfQbdhqKLiveXez4bZYwL4qfc8h0NbFqQky4621 -q8apa0SDNCh+q1PI4692sTVOpRCIfffkodw3RKosAnbs3DCt053vjPJ+pjNXHvBQ -oPSJ6xWnLf0HlLhZQ/+NspJ1v0ADn7dvkDkCvdIsGqgQkk4SpdDrEDH48bN6RF+I -nV8LXqZ3j4xjWQLgoFkoKOqhL8bBEYZr6IHAaIVL8hF0cpCP3FP2hKcek0Qx28gk -Sqh3ooOvcic0iLYjvGi/4ORDHnJuOL+P+Gr4O8sqsM4ywYo7q6JoB2cpp9pDWyU0 -Z0QSOVQWNZ4FLmBvrYDlIpCPEMQw/whY4M+kQScQrJFiykKrW0fitqaK1z6B4Xu7 -vFVjOsoGBLdzhJbo1+BbZZJbPTq+bdeODFL18QHmxMH5p1qPg4HsGnNrak5+0Cct -q2IYV8uDE7JgWgEEbDyFq0GLJFZVu2oQd2nAOGO6lIO/RRItXSHkVpd1QKiutQgH -lMHaJga379VQ482JWLhFtqKcTmnfW542LNOKNqXNhd6HxgdydNCC+eLZKMcHELdZ -9B4UJlhHvDbuvRTOEmvMJpOPFc+e5JayQgo1kwwxG3I9uOkkIxmiT+Wp3n6Bz4Re -sE1F6MDHM2F9adVHAuzHa6GUQNn7YhVk1gzJKts7XCeNsNWKmoq57xXAnDYYqBpX -sXSlz2kQ3PO+R5dVqPwro2us3g== +MIIFHDBOBgkqhkiG9w0BBQ0wQTApBgkqhkiG9w0BBQwwHAQIPWn8Fm1bwioCAggA +MAwGCCqGSIb3DQIJBQAwFAYIKoZIhvcNAwcECGWF6PTROiTeBIIEyJWUjTA6mp2W +xHlKqrbw2WID9XfxnyzTmNUO6BUktoO8hvczTyoXPeOuvVBevKxRf0PQeyV+WmGz +oc9LbAg3xCJQsEecMSSc5eEMqUbb/omvHrYqrjfsA3l6hmQlFYZ5N/kq4ELxOX2S +aQzFhip6R3d2/xQlxN/1aYUA3m1mnB2zyz0Rig6A8MgmCziE9xztgt6usnP5w4tH +qDh7vYFHan0Mou3bvEhK7H+dAXz1CzvIVx1Z04cQyftXkY7aShNOUlkmvGKx0brb +Q9HohBY5HyyOofx1f3P72tJyLlMB6cZOoU1wlkgnNH0WIuziKlxLmH/pbo6Org2P ++31dXNT/bCx27a9FIzF+ghVxr/pDZ2fA2eeHD2CZU3ZpdV4P7zXNOuEY5QjYO/8j +qd/idq+dhFz/6zmaoVJjRzeUkfRni0ldPCHmmrUAZc34nXlC1C6H8Ko+f7KNcDSf +q5RsBBqg/ARVf55JTqo5bRBBthFOsUOGqqbcZuQQ3XnilYia50/L+Jrl7OvmAGYK +Eh9/lbaBIQty8Hfyh/3hqIGBPKnj+wqJtJD08xX3P2yzypKN4WR6nxBOL/P5SoPx +qSstIpeHQHdJZuK6wsbqOWi4ZWE5iKzQr6XQHDeMqXOxgjIomURjYBIDBUoOA6rB +0Z5i7avzBP6OJsFLfC2xN4xWBFovJhaxHytebnvQmE7vUtpykpRx0585/NZwjmWH +qqC7wXz5xQbssBkLsJSbQlOKZuiiGQmAE4bAJHcEW44Ia4LvW5e0EIG1l5cj3IPf +6iT7lLVEm9ur7BPSEMJyV+oaRfL85g2VyzWelXVtEnyHP3bLEHVtyDB1K8BhYfOU +KkQqYv17ypYowKM42znRExxUQELpFU5ZFjq51+/YG2/MkAva1UD3DW9J+/pPmozr +0F3v8UYZ4sH1MfJWyANqEw0NMoz1skzqgsFNfMmOtbdTnyXpd1nz2KbjtaW0p0YY +/0GR8NaIgeKJzXk4W8stkpcYpJTrlR1/lrej96RNuJNAvUgeiWR0v5kVRL70DscQ +Tx9zMQX7a9h53icfZiBSwgbBM2ntNSY77g8aDXtm4iP3Z/S2LZCfFUXYDPYwbKXY +HfleyZuCsLSOwfX9s8QZzpXTQgK4AFq/LpprWZMIAIaGSPWd2uJ+oFQUryhFrfU7 +TNG1LFbJl0VVtvCH7VpLSpRmyVSynchm+idbKpDRPO12a6yPRznzKJFWWe9FLLfe +cGEu4SUnEmS8HuLdhv6/VtI6Q8z246EVuT7XZZ1waPfDnNhwy26mZrII7DwP/UN7 +/1N8mUlSsLWkC1fbZrvgIH+CxuYuw/jqJanSOO7RJZNHEGE3/A8wj42CiUImi6HY +pWwz3ao1iIq6o8yoHt96XIZSHSVBkf3NPZMzpY/ze2GFhL8AXLlDpgJ1JkBNCZmU +POkBH4hSj2gueO8eZMg8eh0nGtZKlmwCV+tR40ytw2pBzvQoA+GVSuNDezYqfTPF +VYdn7uylw/KkK41cKHv84L0dZExVKcRgW8jlhLmNVa5aTeCB7izAKrYwQucv5YHa +nC4/fAuD9nj8csz+pobjYoEulL5mW6BM/96DHkdyGv9HI44Oy2wZznUBt3L8OZLJ +cd6M92y7yAggI6I0n2/smw== -----END ENCRYPTED PRIVATE KEY----- From a2a10e9bee0ac4a567df948629fa17b3525480fb Mon Sep 17 00:00:00 2001 From: arvidn Date: Fri, 9 Nov 2018 10:43:16 +0100 Subject: [PATCH 02/10] expose some dht alert fields as bytes instead of strings --- bindings/python/src/alert.cpp | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/bindings/python/src/alert.cpp b/bindings/python/src/alert.cpp index a9ec1bebb..7b0e8eefa 100644 --- a/bindings/python/src/alert.cpp +++ b/bindings/python/src/alert.cpp @@ -109,19 +109,19 @@ list dht_stats_routing_table(dht_stats_alert const& a) dict dht_immutable_item(dht_immutable_item_alert const& alert) { dict d; - d["key"] = alert.target.to_string(); - d["value"] = alert.item.to_string(); + d["key"] = alert.target; + d["value"] = bytes(alert.item.to_string()); return d; } dict dht_mutable_item(dht_mutable_item_alert const& alert) { dict d; - d["key"] = std::string(alert.key.data(), alert.key.size()); - d["value"] = alert.item.to_string(); - d["signature"] = std::string(alert.signature.data(), alert.signature.size()); + d["key"] = bytes(alert.key.data(), alert.key.size()); + d["value"] = bytes(alert.item.to_string()); + d["signature"] = bytes(alert.signature.data(), alert.signature.size()); d["seq"] = alert.seq; - d["salt"] = alert.salt; + d["salt"] = bytes(alert.salt); d["authoritative"] = alert.authoritative; return d; } @@ -130,12 +130,12 @@ dict dht_put_item(dht_put_alert const& alert) { dict d; if (alert.target.is_all_zeros()) { - d["public_key"] = std::string(alert.public_key.data(), alert.public_key.size()); - d["signature"] = std::string(alert.signature.data(), alert.signature.size()); + d["public_key"] = bytes(alert.public_key.data(), alert.public_key.size()); + d["signature"] = bytes(alert.signature.data(), alert.signature.size()); d["seq"] = alert.seq; - d["salt"] = alert.salt; + d["salt"] = bytes(alert.salt); } else { - d["target"] = alert.target.to_string(); + d["target"] = alert.target; } return d; } From fccf25e8390a6aa4b3323697eb6232fab729689c Mon Sep 17 00:00:00 2001 From: Eugene Shalygin Date: Sun, 11 Nov 2018 21:23:19 +0100 Subject: [PATCH 03/10] cmake: strip directories and library prefixes for pkg-config Replace full library names with -L commands and -llib-name pairs. This way it resembles what autotools produce and additionally -l can not be used with GNU linker and full paths (as it prepends "lib" to such arguments). Fixes #3424. --- cmake/Modules/GeneratePkgConfig.cmake | 3 -- .../generate-pkg-config.cmake.in | 32 ++++++++++++++++++- .../target-compile-settings.cmake.in | 1 + 3 files changed, 32 insertions(+), 4 deletions(-) diff --git a/cmake/Modules/GeneratePkgConfig.cmake b/cmake/Modules/GeneratePkgConfig.cmake index 2bb76a0ef..f7250e12b 100644 --- a/cmake/Modules/GeneratePkgConfig.cmake +++ b/cmake/Modules/GeneratePkgConfig.cmake @@ -147,9 +147,6 @@ function(generate_and_install_pkg_config_file _target) set(_output_name "${_target}") endif() - # TODO make it robust - set(_output_name "lib${_output_name}") - # remove standard include directories foreach(d IN LISTS CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES) list(REMOVE_ITEM _interface_include_dirs "${d}") diff --git a/cmake/Modules/GeneratePkgConfig/generate-pkg-config.cmake.in b/cmake/Modules/GeneratePkgConfig/generate-pkg-config.cmake.in index 807876f10..2bd230d12 100644 --- a/cmake/Modules/GeneratePkgConfig/generate-pkg-config.cmake.in +++ b/cmake/Modules/GeneratePkgConfig/generate-pkg-config.cmake.in @@ -12,7 +12,37 @@ function (cmake_list_to_pkg_config _result _list _prefix) set(${_result} "${_tmp_list}" PARENT_SCOPE) endfunction() -cmake_list_to_pkg_config(_interface_link_libraries "${_TARGET_INTERFACE_LINK_LIBRARIES}" "-l") +# Helper function for splitting full library paths into [dir, name] and merging repetitive dir entries +function(split_library_dirs _libraries _base_library_dir _library_dirs_var _library_names_var) + set(libdirs "${_base_library_dir}") + set(libs "") + foreach (l IN LISTS _libraries) + get_filename_component(lDir "${l}" DIRECTORY) + if (lDir) + get_filename_component(lDir "${lDir}" REALPATH) + endif() + get_filename_component(lFile "${l}" NAME_WE) + string(REGEX REPLACE "${_SHARED_LIBRARY_PREFIX}" "" lFile "${lFile}") + list(APPEND libdirs "${lDir}") + list(APPEND libs "${lFile}") + endforeach() + list(REMOVE_DUPLICATES libdirs) + list(REMOVE_AT libdirs 0) # as it is the base libdir and will be handled separately + + set(${_library_dirs_var} "${libdirs}" PARENT_SCOPE) + set(${_library_names_var} "${libs}" PARENT_SCOPE) +endfunction() + +split_library_dirs("${_TARGET_INTERFACE_LINK_LIBRARIES}" "${CMAKE_INSTALL_PREFIX}/${_INSTALL_LIBDIR}" _lib_dirs _library_names) +cmake_list_to_pkg_config(_libs "${_library_names}" "-l") +list(LENGTH _lib_dirs _additional_libdirs_count) +if (_additional_libdirs_count GREATER 0) + cmake_list_to_pkg_config(_additional_libdirs "${_lib_dirs}" "-L") + set(_interface_link_libraries "${_additional_libdirs} ${_libs}") +else() + set(_interface_link_libraries "${_libs}") +endif() + cmake_list_to_pkg_config(_interface_definitions "${_TARGET_INTERFACE_DEFINITIONS}" "-D") cmake_list_to_pkg_config(_interface_include_dirs "${_TARGET_INTERFACE_INCLUDE_DIRS}" "-I") set(_interface_compile_options "${_TARGET_INTERFACE_COMPILE_OPTIONS}") diff --git a/cmake/Modules/GeneratePkgConfig/target-compile-settings.cmake.in b/cmake/Modules/GeneratePkgConfig/target-compile-settings.cmake.in index e5090e3b8..e16d7bcb0 100644 --- a/cmake/Modules/GeneratePkgConfig/target-compile-settings.cmake.in +++ b/cmake/Modules/GeneratePkgConfig/target-compile-settings.cmake.in @@ -6,6 +6,7 @@ set(_TARGET_OUTPUT_NAME "@_output_name@") set(_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@") set(_INSTALL_INCLUDEDIR "@CMAKE_INSTALL_INCLUDEDIR@") +set(_SHARED_LIBRARY_PREFIX "@CMAKE_SHARED_LIBRARY_PREFIX@") set(_PROJECT_NAME "@PROJECT_NAME@") set(_PROJECT_DESCRIPTION "@PROJECT_DESCRIPTION@") From dc7cc3ef37fd6dba872d081f7685c2af834158aa Mon Sep 17 00:00:00 2001 From: arvidn Date: Sat, 10 Nov 2018 15:45:25 +0100 Subject: [PATCH 04/10] bump max size of read/write handlers --- include/libtorrent/config.hpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/libtorrent/config.hpp b/include/libtorrent/config.hpp index e27e1b7e7..0fe4dce31 100644 --- a/include/libtorrent/config.hpp +++ b/include/libtorrent/config.hpp @@ -624,7 +624,7 @@ int snprintf(char* buf, int len, char const* fmt, ...) #endif #if !defined(TORRENT_READ_HANDLER_MAX_SIZE) -# ifdef _GLIBCXX_DEBUG +# if defined _GLIBCXX_DEBUG || !defined NDEBUG # define TORRENT_READ_HANDLER_MAX_SIZE 400 # else // if this is not divisible by 8, we're wasting space @@ -633,7 +633,7 @@ int snprintf(char* buf, int len, char const* fmt, ...) #endif #if !defined(TORRENT_WRITE_HANDLER_MAX_SIZE) -# ifdef _GLIBCXX_DEBUG +# if defined _GLIBCXX_DEBUG || !defined NDEBUG # define TORRENT_WRITE_HANDLER_MAX_SIZE 400 # else // if this is not divisible by 8, we're wasting space From 2edb86c5439430c00fe194914507ed6fd65250c8 Mon Sep 17 00:00:00 2001 From: arvidn Date: Sun, 11 Nov 2018 23:31:54 +0100 Subject: [PATCH 05/10] fix some warnings in utp_stream --- src/utp_stream.cpp | 38 ++++++++++++++------------------------ 1 file changed, 14 insertions(+), 24 deletions(-) diff --git a/src/utp_stream.cpp b/src/utp_stream.cpp index c97836273..48388cff7 100644 --- a/src/utp_stream.cpp +++ b/src/utp_stream.cpp @@ -138,16 +138,7 @@ enum // if a packet receives more than this number of // duplicate acks, we'll trigger a fast re-send - dup_ack_limit = 3, - - // the max number of packets to fast-resend per - // selective ack message - // only re-sending a single packet per sack - // appears to improve performance by making it - // less likely to loose the re-sent packet. Because - // when that happens, we must time-out in order - // to continue, which takes a long time. - sack_resend_limit = 1 + dup_ack_limit = 3 }; // compare if lhs is less than rhs, taking wrapping @@ -1605,15 +1596,21 @@ void utp_socket_impl::parse_sack(boost::uint16_t packet_ack, boost::uint8_t cons { experienced_loss(m_fast_resend_seq_nr); int num_resent = 0; - while (m_fast_resend_seq_nr != last_ack) + + // only re-sending a single packet per sack + // appears to improve performance by making it + // less likely to loose the re-sent packet. Because + // when that happens, we must time-out in order + // to continue, which takes a long time. + if (m_fast_resend_seq_nr != last_ack) { packet* p = m_outbuf.at(m_fast_resend_seq_nr); m_fast_resend_seq_nr = (m_fast_resend_seq_nr + 1) & ACK_MASK; - if (!p) continue; - ++num_resent; - if (!resend_packet(p, true)) break; - m_duplicate_acks = 0; - if (num_resent >= sack_resend_limit) break; + if (p) + { + ++num_resent; + if (resend_packet(p, true)) m_duplicate_acks = 0; + } } } } @@ -2985,14 +2982,7 @@ bool utp_socket_impl::incoming_packet(boost::uint8_t const* buf, int size return true; } int next_extension = *ptr++; - int len = *ptr++; - if (len < 0) - { - UTP_LOGV("%8p: invalid extension length:%d packet:%d\n" - , static_cast(this), len, int(ptr - buf)); - m_sm->inc_stats_counter(counters::utp_invalid_pkts_in); - return true; - } + int const len = *ptr++; if (ptr - buf + len > ptrdiff_t(size)) { UTP_LOG("%8p: ERROR: invalid extension header size:%d packet:%d\n" From a233d3cc28b9ac466287b6d2623ba74c044cbef1 Mon Sep 17 00:00:00 2001 From: arvidn Date: Sun, 11 Nov 2018 20:36:06 +0100 Subject: [PATCH 06/10] actually fix the issue with the second tracker announce with port 0 --- src/torrent.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/torrent.cpp b/src/torrent.cpp index fc6f18aef..1f88ae49f 100644 --- a/src/torrent.cpp +++ b/src/torrent.cpp @@ -3722,6 +3722,9 @@ namespace { req.private_torrent = m_torrent_file->priv(); req.second_announce = true; +#ifdef TORRENT_USE_OPENSSL + req.ssl_ctx = NULL; +#endif // tell the tracker to bind to the opposite protocol type req.bind_ip = tracker_ip.is_v4() From 5c533522cb8be8390f2e2183a179e5ebab6edfbf Mon Sep 17 00:00:00 2001 From: Eugene Shalygin Date: Mon, 12 Nov 2018 12:52:34 +0100 Subject: [PATCH 07/10] cmake: make pkg-config package name independent of target name --- CMakeLists.txt | 2 +- cmake/Modules/GeneratePkgConfig.cmake | 4 +++- cmake/Modules/GeneratePkgConfig/generate-pkg-config.cmake.in | 4 ++-- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 3adbb0c79..03ad72e8a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -408,7 +408,7 @@ foreach (s ${COMPILETIME_OPTIONS_LIST}) set (COMPILETIME_OPTIONS "${COMPILETIME_OPTIONS} -D${s}") endforeach (s) -generate_and_install_pkg_config_file(torrent-rasterbar) +generate_and_install_pkg_config_file(torrent-rasterbar libtorrent-rasterbar) install(TARGETS torrent-rasterbar EXPORT LibtorrentRasterbarTargets LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} diff --git a/cmake/Modules/GeneratePkgConfig.cmake b/cmake/Modules/GeneratePkgConfig.cmake index f7250e12b..3c4520b22 100644 --- a/cmake/Modules/GeneratePkgConfig.cmake +++ b/cmake/Modules/GeneratePkgConfig.cmake @@ -136,7 +136,7 @@ function(_expand_targets _targets _libraries_var _include_dirs_var _compile_opti endfunction() # Generates and installs a pkg-config file for a given target -function(generate_and_install_pkg_config_file _target) +function(generate_and_install_pkg_config_file _target _packageName) # collect target properties _expand_targets(${_target} _interface_link_libraries _interface_include_dirs @@ -147,6 +147,8 @@ function(generate_and_install_pkg_config_file _target) set(_output_name "${_target}") endif() + set(_package_name "${_packageName}") + # remove standard include directories foreach(d IN LISTS CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES) list(REMOVE_ITEM _interface_include_dirs "${d}") diff --git a/cmake/Modules/GeneratePkgConfig/generate-pkg-config.cmake.in b/cmake/Modules/GeneratePkgConfig/generate-pkg-config.cmake.in index 2bd230d12..252589adf 100644 --- a/cmake/Modules/GeneratePkgConfig/generate-pkg-config.cmake.in +++ b/cmake/Modules/GeneratePkgConfig/generate-pkg-config.cmake.in @@ -48,5 +48,5 @@ cmake_list_to_pkg_config(_interface_include_dirs "${_TARGET_INTERFACE_INCLUDE_DI set(_interface_compile_options "${_TARGET_INTERFACE_COMPILE_OPTIONS}") string(REPLACE ";" " " _interface_compile_options "${_interface_compile_options}") -configure_file("@_pkg_config_file_template_filename@" "@_generate_target_dir@/@_output_name@.pc" @ONLY) -file(INSTALL "@_generate_target_dir@/@_output_name@.pc" DESTINATION "@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@/pkgconfig") +configure_file("@_pkg_config_file_template_filename@" "@_generate_target_dir@/@_package_name@.pc" @ONLY) +file(INSTALL "@_generate_target_dir@/@_package_name@.pc" DESTINATION "@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@/pkgconfig") From 049b090e8d8e1b3346a87672c6bc4245e5807163 Mon Sep 17 00:00:00 2001 From: arvidn Date: Mon, 12 Nov 2018 17:38:01 +0100 Subject: [PATCH 08/10] detect cases where TORRENT_EXPORT is placed where gen_reference_doc.py ignores it, and fix the code --- docs/gen_reference_doc.py | 23 +++++++++++++++++++++++ include/libtorrent/bdecode.hpp | 2 +- include/libtorrent/magnet_uri.hpp | 4 ++-- include/libtorrent/upnp.hpp | 2 +- 4 files changed, 27 insertions(+), 4 deletions(-) diff --git a/docs/gen_reference_doc.py b/docs/gen_reference_doc.py index bf4e49779..ee8ea3421 100644 --- a/docs/gen_reference_doc.py +++ b/docs/gen_reference_doc.py @@ -32,6 +32,8 @@ overviews = {} # maps names -> URL symbols = {} +global orphaned_export + # some files that need pre-processing to turn symbols into # links into the reference documentation preprocess_rst = \ @@ -243,6 +245,9 @@ def parse_function(lno, lines, filename): end_paren = 0 signature = '' + global orphaned_export + orphaned_export = False + while lno < len(lines): l = lines[lno].strip() lno += 1 @@ -309,6 +314,8 @@ def parse_class(lno, lines, filename): decl = decl.replace('TORRENT_FINAL', 'final') name = decl.split(':')[0].replace('class ', '').replace('struct ', '').replace('final', '').strip() + global orphaned_export + orphaned_export = False while lno < len(lines): l = lines[lno].strip() @@ -609,7 +616,14 @@ for filename in files: blanks = 0 lno = 0 + global orphaned_export + orphaned_export = False + while lno < len(lines): + if orphaned_export: + print('ERROR: TORRENT_EXPORT without function or class!\n%s:%d\n%s' % (filename, lno, l)) + sys.exit(1) + l = lines[lno].strip() lno += 1 @@ -618,6 +632,15 @@ for filename in files: context = '' continue + if 'TORRENT_EXPORT' in l.split() \ + and not 'ifndef TORRENT_EXPORT' in l \ + and not 'define TORRENT_DEPRECATED_EXPORT TORRENT_EXPORT' in l \ + and not 'define TORRENT_EXPORT' in l \ + and not 'for TORRENT_EXPORT' in l \ + and not 'TORRENT_EXPORT TORRENT_CFG' in l: + orphaned_export = True; + if verbose: print 'maybe orphaned: %s\n' % l + if l.startswith('//') and l[2:].strip() == 'OVERVIEW': # this is a section overview current_overview = '' diff --git a/include/libtorrent/bdecode.hpp b/include/libtorrent/bdecode.hpp index cde025663..5eeaf10b5 100644 --- a/include/libtorrent/bdecode.hpp +++ b/include/libtorrent/bdecode.hpp @@ -101,7 +101,7 @@ namespace libtorrent { TORRENT_EXPORT boost::system::error_category& bdecode_category(); #ifndef TORRENT_NO_DEPRECATED -TORRENT_DEPRECATED TORRENT_EXPORT +TORRENT_DEPRECATED_EXPORT boost::system::error_category& get_bdecode_category(); #endif diff --git a/include/libtorrent/magnet_uri.hpp b/include/libtorrent/magnet_uri.hpp index 019d8dee8..33e7668ae 100644 --- a/include/libtorrent/magnet_uri.hpp +++ b/include/libtorrent/magnet_uri.hpp @@ -77,8 +77,8 @@ namespace libtorrent // This function parses out information from the magnet link and populates the // add_torrent_params object. - TORRENT_EXPORT - void parse_magnet_uri(std::string const& uri, add_torrent_params& p, error_code& ec); + TORRENT_EXPORT void parse_magnet_uri(std::string const& uri + , add_torrent_params& p, error_code& ec); // internal, delete when merge in master TORRENT_EXTRA_EXPORT diff --git a/include/libtorrent/upnp.hpp b/include/libtorrent/upnp.hpp index b4eae7f0c..b5c908dc7 100644 --- a/include/libtorrent/upnp.hpp +++ b/include/libtorrent/upnp.hpp @@ -97,7 +97,7 @@ namespace libtorrent TORRENT_EXPORT boost::system::error_category& upnp_category(); #ifndef TORRENT_NO_DEPRECATED - TORRENT_DEPRECATED TORRENT_EXPORT + TORRENT_DEPRECATED_EXPORT boost::system::error_category& get_upnp_category(); #endif From 13dd7cfe1e80e82197d60e29c520f20ba22664d3 Mon Sep 17 00:00:00 2001 From: arvidn Date: Mon, 12 Nov 2018 18:06:31 +0100 Subject: [PATCH 09/10] a better fix to the ssl port announce bug --- src/session_impl.cpp | 2 +- src/torrent.cpp | 3 --- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/src/session_impl.cpp b/src/session_impl.cpp index 9c03069b5..d61c68702 100644 --- a/src/session_impl.cpp +++ b/src/session_impl.cpp @@ -1319,7 +1319,7 @@ namespace aux { #ifdef TORRENT_USE_OPENSSL // SSL torrents use the SSL listen port - if (req.ssl_ctx) req.listen_port = ssl_listen_port(); + if (req.ssl_ctx && req.ssl_ctx != &m_ssl_ctx) req.listen_port = ssl_listen_port(); else req.ssl_ctx = &m_ssl_ctx; #endif #if TORRENT_USE_I2P diff --git a/src/torrent.cpp b/src/torrent.cpp index 1f88ae49f..fc6f18aef 100644 --- a/src/torrent.cpp +++ b/src/torrent.cpp @@ -3722,9 +3722,6 @@ namespace { req.private_torrent = m_torrent_file->priv(); req.second_announce = true; -#ifdef TORRENT_USE_OPENSSL - req.ssl_ctx = NULL; -#endif // tell the tracker to bind to the opposite protocol type req.bind_ip = tracker_ip.is_v4() From e5dfcfc6b8df420e64d4895ec74e69a7b9314851 Mon Sep 17 00:00:00 2001 From: sledgehammer_999 Date: Wed, 14 Nov 2018 02:58:50 +0200 Subject: [PATCH 10/10] Include cmake file in the tarball --- Makefile.am | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile.am b/Makefile.am index 49eb59a49..4aa50bcf3 100644 --- a/Makefile.am +++ b/Makefile.am @@ -118,6 +118,7 @@ EXTRA_DIST = \ CMakeLists.txt \ test/CMakeLists.txt \ setup.py \ + LibtorrentRasterbarConfig.cmake.in \ LICENSE \ README.rst \ cmake/Modules/FindLibGcrypt.cmake \