From owner-freebsd-current Fri Apr 21 19:28:34 2000 Delivered-To: freebsd-current@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.ORG [204.216.27.21]) by hub.freebsd.org (Postfix) with ESMTP id A720E37B793 for ; Fri, 21 Apr 2000 19:28:28 -0700 (PDT) (envelope-from kris@FreeBSD.org) Received: from localhost (kris@localhost) by freefall.freebsd.org (8.9.3/8.9.2) with ESMTP id TAA69245 for ; Fri, 21 Apr 2000 19:28:28 -0700 (PDT) (envelope-from kris@FreeBSD.org) X-Authentication-Warning: freefall.freebsd.org: kris owned process doing -bs Date: Fri, 21 Apr 2000 19:28:28 -0700 (PDT) From: Kris Kennaway To: current@freebsd.org Subject: OpenSSL asm optimizations Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-1239093499-956370508=:68716" Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --0-1239093499-956370508=:68716 Content-Type: TEXT/PLAIN; charset=US-ASCII OpenSSL includes asm code for several platforms to speed up various operations. Currently we don't build any of this - the attached patch turns on asm code for Pentiums and above (it relies on an uncommitted patch to sys.mk which defined MACHINE_CPU ?= i386). Set MACHINE_CPU to "i586" or "i686" (both are actually identical at present) and rebuild. Typical speed improvements are between 2x and 5x for BigNum, Blowfish, CAST, DES, MD5, RC4, RC5, RIPEMD-160, and SHA-1 operations, as measured by 'openssl speed' on my Pentium Pro 233 (speeds are in K/sec for packets of the given size): === BLOWFISH === type 8 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes blowfish cbc 3325.35k 4417.62k 4553.81k 4572.46k 4595.71k type 8 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes blowfish cbc 7073.58k 8099.29k 8286.63k 8328.53k 8315.07k === CAST === type 8 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes cast cbc 3249.59k 4231.19k 4394.88k 4401.69k 4437.97k type 8 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes cast cbc 6956.17k 7999.28k 8208.47k 8199.05k 8192.00k === DES === type 8 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes des cbc 2291.38k 2404.86k 2426.97k 2436.64k 2443.95k des ede3 492.61k 516.87k 519.83k 521.18k 520.20k type 8 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes des cbc 4830.90k 5301.97k 5412.18k 5419.02k 5355.72k des ede3 1831.93k 1919.80k 1929.86k 1932.36k 1913.72k === MD5 === type 8 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes md5 1636.10k 7736.92k 13991.76k 17495.04k 18879.83k type 8 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes md5 2609.84k 13585.19k 26511.38k 34934.97k 38629.09k === RC4 === type 8 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes rc4 12947.45k 16970.70k 18044.59k 18370.22k 18275.58k type 8 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes rc4 18209.51k 25287.65k 26100.65k 26139.99k 26512.82k === RC5 === type 8 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes rc5-32/12 cbc 5115.15k 8124.08k 8766.29k 8814.59k 8928.03k type 8 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes rc5-32/12 cbc 12462.59k 15226.54k 15804.76k 16218.86k 16447.82k === RIPEMD-160 === type 8 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes rmd160 849.94k 3680.04k 6326.22k 7626.07k 8123.73k type 8 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes rmd160 1279.72k 5915.67k 10461.46k 12978.21k 13944.41k === SHA1 === type 8 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes sha1 1081.31k 2844.71k 5784.80k 7765.50k 8650.75k type 8 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes sha1 1617.59k 7664.76k 13538.05k 17012.18k 18419.89k Kris ---- In God we Trust -- all others must submit an X.509 certificate. -- Charles Forsythe --0-1239093499-956370508=:68716 Content-Type: TEXT/PLAIN; charset=US-ASCII; name=p Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename=p SW5kZXg6IE1ha2VmaWxlDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1Mg ZmlsZTogL2hvbWUvbmN2cy9zcmMvc2VjdXJlL2xpYi9saWJjcnlwdG8vTWFr ZWZpbGUsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjE3DQpkaWZmIC11IC1y MS4xNyBNYWtlZmlsZQ0KLS0tIE1ha2VmaWxlCTIwMDAvMDQvMTMgMDc6MzY6 MDkJMS4xNw0KKysrIE1ha2VmaWxlCTIwMDAvMDQvMjIgMDI6MTY6NTcNCkBA IC05LDExICs5LDExIEBADQogCSR7TENSWVBUT19TUkN9L2VyciAke0xDUllQ VE9fU1JDfS9ldnAgJHtMQ1JZUFRPX1NSQ30vaG1hYyBcDQogCSR7TENSWVBU T19TUkN9L2xoYXNoICR7TENSWVBUT19TUkN9L21kMiAke0xDUllQVE9fU1JD fS9tZDUgXA0KIAkke0xDUllQVE9fU1JDfS9tZGMyICR7TENSWVBUT19TUkN9 L29iamVjdHMgJHtMQ1JZUFRPX1NSQ30vcGVtIFwNCi0JJHtMQ1JZUFRPX1NS Q30vcGtjczcgJHtMQ1JZUFRPX1NSQ30vcGtjczEyICR7TENSWVBUT19TUkN9 L3JhbmQgXA0KLQkke0xDUllQVE9fU1JDfS9yYzIgJHtMQ1JZUFRPX1NSQ30v cmM0ICR7TENSWVBUT19TUkN9L3JjNSBcDQotCSR7TENSWVBUT19TUkN9L3Jp cGVtZCAke0xDUllQVE9fU1JDfS9yc2EgJHtMQ1JZUFRPX1NSQ30vLi4vcnNh cmVmIFwNCi0JJHtMQ1JZUFRPX1NSQ30vc2hhICR7TENSWVBUT19TUkN9L3N0 YWNrICR7TENSWVBUT19TUkN9L3R4dF9kYiBcDQotCSR7TENSWVBUT19TUkN9 L3g1MDkgJHtMQ1JZUFRPX1NSQ30veDUwOXYzDQorCSR7TENSWVBUT19TUkN9 L3Blcmxhc20gJHtMQ1JZUFRPX1NSQ30vcGtjczcgJHtMQ1JZUFRPX1NSQ30v cGtjczEyIFwNCisJJHtMQ1JZUFRPX1NSQ30vcmFuZCAke0xDUllQVE9fU1JD fS9yYzIgJHtMQ1JZUFRPX1NSQ30vcmM0IFwNCisJJHtMQ1JZUFRPX1NSQ30v cmM1ICR7TENSWVBUT19TUkN9L3JpcGVtZCAke0xDUllQVE9fU1JDfS9yc2Eg XA0KKwkke0xDUllQVE9fU1JDfS8uLi9yc2FyZWYgJHtMQ1JZUFRPX1NSQ30v c2hhICR7TENSWVBUT19TUkN9L3N0YWNrIFwNCisJJHtMQ1JZUFRPX1NSQ30v dHh0X2RiICR7TENSWVBUT19TUkN9L3g1MDkgJHtMQ1JZUFRPX1NSQ30veDUw OXYzDQogDQogTElCPQkJY3J5cHRvDQogU0hMSUJfTUFKT1I9CTENCkBAIC00 MSwyNCArNDEsNjkgQEANCiAJeF94NTA5YS5jIFwNCiANCiAjIGJsb3dmaXNo DQotU1JDUys9CWJmX2NmYjY0LmMgYmZfZWNiLmMgYmZfZW5jLmMgYmZfb2Zi NjQuYyBiZl9za2V5LmMNCitTUkNTKz0JYmZfY2ZiNjQuYyBiZl9lY2IuYyBi Zl9vZmI2NC5jIGJmX3NrZXkuYw0KIA0KKy5pZiAoJHtNQUNISU5FX0FSQ0h9 ID09ICJpMzg2IiAmJiAoJHtNQUNISU5FX0NQVX0gPT0gImk1ODYiIHx8ICR7 TUFDSElORV9DUFV9ID09ICJpNjg2IikpDQorU1RBVElDT0JKUys9CWJ4ODYt ZWxmLm8NCitTT0JKUys9CQlieDg2LWVsZi5vDQorLmVsc2UNCitTUkNTKz0J YmZfZW5jLmMgDQorLmVuZGlmDQorDQorYng4Ni1lbGYubzogYng4NnVuaXgu Y3BwDQorCWNwcCAtREVMRiAteCBjIGJ4ODZ1bml4LmNwcCB8IGFzIC1vIGJ4 ODYtZWxmLm8NCisNCitieDg2dW5peC5jcHA6IGFzbS9iZi01ODYucGwgeDg2 YXNtLnBsDQorCXBlcmwgLUkke0xDUllQVE9fU1JDfS9wZXJsYXNtICR7TENS WVBUT19TUkN9L2JmL2FzbS9iZi01ODYucGwgY3BwID4gYng4NnVuaXguY3Bw DQorDQogIyBiaW8NCiBTUkNTKz0JYl9kdW1wLmMgYl9wcmludC5jIGJfc29j ay5jIGJmX2J1ZmYuYyBiZl9uYmlvLmMgYmZfbnVsbC5jIFwNCiAJYmlvX2Ni LmMgYmlvX2Vyci5jIGJpb19saWIuYyBic3NfYWNwdC5jIGJzc19iaW8uYyBi c3NfY29ubi5jIFwNCiAJYnNzX2ZkLmMgYnNzX2ZpbGUuYyBic3NfbG9nLmMg YnNzX21lbS5jIGJzc19udWxsLmMgYnNzX3NvY2suYw0KIA0KICMgYm4NCi1T UkNTKz0JYm5fYWRkLmMgYm5fYXNtLmMgYm5fYmxpbmQuYyBibl9jdHguYyBi bl9kaXYuYyBibl9lcnIuYyBibl9leHAuYyBcDQorU1JDUys9CWJuX2FkZC5j IGJuX2JsaW5kLmMgYm5fY3R4LmMgYm5fZGl2LmMgYm5fZXJyLmMgYm5fZXhw LmMgXA0KIAlibl9leHAyLmMgYm5fZ2NkLmMgYm5fbGliLmMgYm5fbW9udC5j IGJuX21waS5jIGJuX211bC5jIGJuX3ByaW1lLmMgXA0KIAlibl9wcmludC5j IGJuX3JhbmQuYyBibl9yZWNwLmMgYm5fc2hpZnQuYyBibl9zcXIuYyBibl93 b3JkLmMNCiANCisuaWYgKCR7TUFDSElORV9BUkNIfSA9PSAiaTM4NiIgJiYg KCR7TUFDSElORV9DUFV9ID09ICJpNTg2IiB8fCAke01BQ0hJTkVfQ1BVfSA9 PSAiaTY4NiIpKQ0KK1NUQVRJQ09CSlMrPQlibjg2LWVsZi5vIGNvODYtZWxm Lm8NCitTT0JKUys9CQlibjg2LWVsZi5vIGNvODYtZWxmLm8NCisuZWxzZQ0K K1NSQ1MrPQlibl9hc20uYyANCisuZW5kaWYNCisNCitibjg2LWVsZi5vOiBi bjg2dW5peC5jcHANCisJY3BwIC1ERUxGIC14IGMgYm44NnVuaXguY3BwIHwg YXMgLW8gYm44Ni1lbGYubw0KKw0KK2JuODZ1bml4LmNwcDogYXNtL2JuLTU4 Ni5wbCB4ODZhc20ucGwNCisJcGVybCAtSSR7TENSWVBUT19TUkN9L3Blcmxh c20gJHtMQ1JZUFRPX1NSQ30vYm4vYXNtL2JuLTU4Ni5wbCBjcHAgPiBibjg2 dW5peC5jcHANCisNCitjbzg2LWVsZi5vOiBjbzg2dW5peC5jcHANCisJY3Bw IC1ERUxGIC14IGMgY284NnVuaXguY3BwIHwgYXMgLW8gY284Ni1lbGYubw0K Kw0KK2NvODZ1bml4LmNwcDogYXNtL2NvLTU4Ni5wbCB4ODZhc20ucGwNCisJ cGVybCAtSSR7TENSWVBUT19TUkN9L3Blcmxhc20gJHtMQ1JZUFRPX1NSQ30v Ym4vYXNtL2NvLTU4Ni5wbCBjcHAgPiBjbzg2dW5peC5jcHANCisNCiAjIGJ1 ZmZlcg0KIFNSQ1MrPQlidWZfZXJyLmMgYnVmZmVyLmMgDQogDQogIyBjYXN0 DQotU1JDUys9CWNfY2ZiNjQuYyBjX2VjYi5jIGNfZW5jLmMgY19vZmI2NC5j IGNfc2tleS5jDQorU1JDUys9CWNfY2ZiNjQuYyBjX2VjYi5jIGNfb2ZiNjQu YyBjX3NrZXkuYw0KIA0KKy5pZiAoJHtNQUNISU5FX0FSQ0h9ID09ICJpMzg2 IiAmJiAoJHtNQUNISU5FX0NQVX0gPT0gImk1ODYiIHx8ICR7TUFDSElORV9D UFV9ID09ICJpNjg2IikpDQorU1RBVElDT0JKUys9CWN4ODYtZWxmLm8NCitT T0JKUys9CQljeDg2LWVsZi5vDQorLmVsc2UNCitTUkNTKz0JY19lbmMuYyAN CisuZW5kaWYNCisNCitjeDg2LWVsZi5vOiBjeDg2dW5peC5jcHANCisJY3Bw IC1ERUxGIC14IGMgY3g4NnVuaXguY3BwIHwgYXMgLW8gY3g4Ni1lbGYubw0K Kw0KK2N4ODZ1bml4LmNwcDogYXNtL2Nhc3QtNTg2LnBsIHg4NmFzbS5wbCBj YmMucGwNCisJcGVybCAtSSR7TENSWVBUT19TUkN9L3Blcmxhc20gJHtMQ1JZ UFRPX1NSQ30vY2FzdC9hc20vY2FzdC01ODYucGwgY3BwID4gY3g4NnVuaXgu Y3BwDQorDQogIyBjb21wDQogU1JDUys9CWNfcmxlLmMgY196bGliLmMgY29t cF9saWIuYw0KIA0KQEAgLTY2LDEyICsxMTEsMzEgQEANCiBTUkNTKz0JY29u Zi5jIGNvbmZfZXJyLmMNCiANCiAjIGRlcw0KLVNSQ1MrPQljYmNfY2tzbS5j IGNiY19lbmMuYyBjZmI2NGVkZS5jIGNmYjY0ZW5jLmMgY2ZiX2VuYy5jIGRl c19lbmMuYyBcDQotCWVjYjNfZW5jLmMgZWNiX2VuYy5jIGVkZV9jYmNtX2Vu Yy5jIGVuY19yZWFkLmMgZW5jX3dyaXQuYyBmY3J5cHQuYyBcDQotCWZjcnlw dF9iLmMgb2ZiNjRlZGUuYyBvZmI2NGVuYy5jIG9mYl9lbmMuYyBwY2JjX2Vu Yy5jIHF1ZF9ja3NtLmMgXA0KK1NSQ1MrPQljYmNfY2tzbS5jIGNiY19lbmMu YyBjZmI2NGVkZS5jIGNmYjY0ZW5jLmMgY2ZiX2VuYy5jIFwNCisJZWNiM19l bmMuYyBlY2JfZW5jLmMgZWRlX2NiY21fZW5jLmMgZW5jX3JlYWQuYyBlbmNf d3JpdC5jIFwNCisJZmNyeXB0LmMgb2ZiNjRlZGUuYyBvZmI2NGVuYy5jIG9m Yl9lbmMuYyBwY2JjX2VuYy5jIHF1ZF9ja3NtLmMgXA0KIAlyYW5kX2tleS5j IHJlYWQycHdkLmMgcmVhZF9wd2QuYyBybmRfa2V5cy5jIHJwY19lbmMuYyBz ZXRfa2V5LmMgXA0KIAlzdHIya2V5LmMgc3VwcC5jIHhjYmNfZW5jLmMgDQog DQorLmlmICgke01BQ0hJTkVfQVJDSH0gPT0gImkzODYiICYmICgke01BQ0hJ TkVfQ1BVfSA9PSAiaTU4NiIgfHwgJHtNQUNISU5FX0NQVX0gPT0gImk2ODYi KSkNCitTVEFUSUNPQkpTKz0JZHg4Ni1lbGYubyB5eDg2LWVsZi5vDQorU09C SlMrPQkJZHg4Ni1lbGYubyB5eDg2LWVsZi5vDQorLmVsc2UNCitTUkNTKz0J ZGVzX2VuYy5jIGZjcnlwdF9iLmMNCisuZW5kaWYNCisNCitkeDg2LWVsZi5v OiBkeDg2dW5peC5jcHANCisJY3BwIC1ERUxGIC14IGMgZHg4NnVuaXguY3Bw IHwgYXMgLW8gZHg4Ni1lbGYubw0KKw0KK3l4ODYtZWxmLm86IHl4ODZ1bml4 LmNwcA0KKwljcHAgLURFTEYgLXggYyB5eDg2dW5peC5jcHAgfCBhcyAtbyB5 eDg2LWVsZi5vDQorDQorZHg4NnVuaXguY3BwOiBhc20vZGVzLTU4Ni5wbCB4 ODZhc20ucGwgY2JjLnBsDQorCXBlcmwgLUkke0xDUllQVE9fU1JDfS9wZXJs YXNtIC1JJHtMQ1JZUFRPX1NSQ30vZGVzL2FzbSAke0xDUllQVE9fU1JDfS9k ZXMvYXNtL2Rlcy01ODYucGwgY3BwID4gZHg4NnVuaXguY3BwDQorDQoreXg4 NnVuaXguY3BwOiBhc20vY3J5cHQ1ODYucGwgeDg2YXNtLnBsDQorCXBlcmwg LUkke0xDUllQVE9fU1JDfS9wZXJsYXNtIC1JJHtMQ1JZUFRPX1NSQ30vZGVz L2FzbSAke0xDUllQVE9fU1JDfS9kZXMvYXNtL2NyeXB0NTg2LnBsIGNwcCA+ IHl4ODZ1bml4LmNwcA0KKw0KICMgZGgNCiBTUkNTKz0JZGhfY2hlY2suYyBk aF9lcnIuYyBkaF9nZW4uYyBkaF9rZXkuYyBkaF9saWIuYw0KIA0KQEAgLTEw Niw2ICsxNzAsMTcgQEANCiANCiAjIG1kNQ0KIFNSQ1MrPQltZDVfZGdzdC5j IG1kNV9vbmUuYw0KKy5pZiAoJHtNQUNISU5FX0FSQ0h9ID09ICJpMzg2IiAm JiAoJHtNQUNISU5FX0NQVX0gPT0gImk1ODYiIHx8ICR7TUFDSElORV9DUFV9 ID09ICJpNjg2IikpDQorU1RBVElDT0JKUys9CW14ODYtZWxmLm8NCitTT0JK Uys9CW14ODYtZWxmLm8NCitDRkxBR1MrPSAtRE1ENV9BU00NCisuZW5kaWYN CisNCitteDg2LWVsZi5vOiBteDg2dW5peC5jcHANCisJY3BwIC1ERUxGIC14 IGMgbXg4NnVuaXguY3BwIHwgYXMgLW8gbXg4Ni1lbGYubw0KKw0KK214ODZ1 bml4LmNwcDogYXNtL21kNS01ODYucGwgeDg2YXNtLnBsDQorCXBlcmwgLUkk e0xDUllQVE9fU1JDfS9wZXJsYXNtICR7TENSWVBUT19TUkN9L21kNS9hc20v bWQ1LTU4Ni5wbCBjcHAgPiBteDg2dW5peC5jcHANCiANCiAjIG1kYzINCiBT UkNTKz0JbWRjMmRnc3QuYyBtZGMyX29uZS5jDQpAQCAtMTMxLDE0ICsyMDYs NTIgQEANCiBTUkNTKz0JcmMyX2NiYy5jIHJjMmNmYjY0LmMgcmMyX2VjYi5j IHJjMm9mYjY0LmMgcmMyX3NrZXkuYyANCiANCiAjIHJjNA0KLVNSQ1MrPQly YzRfZW5jLmMgcmM0X3NrZXkuYw0KK1NSQ1MrPQlyYzRfc2tleS5jDQorDQor LmlmICgke01BQ0hJTkVfQVJDSH0gPT0gImkzODYiICYmICgke01BQ0hJTkVf Q1BVfSA9PSAiaTU4NiIgfHwgJHtNQUNISU5FX0NQVX0gPT0gImk2ODYiKSkN CitTVEFUSUNPQkpTKz0Jcng4Ni1lbGYubw0KK1NPQkpTKz0JCXJ4ODYtZWxm Lm8NCisuZWxzZQ0KK1NSQ1MrPQlyYzRfZW5jLmMgDQorLmVuZGlmDQogDQor cng4Ni1lbGYubzogcng4NnVuaXguY3BwDQorCWNwcCAtREVMRiAteCBjIHJ4 ODZ1bml4LmNwcCB8IGFzIC1vIHJ4ODYtZWxmLm8NCisNCityeDg2dW5peC5j cHA6IGFzbS9yYzQtNTg2LnBsIHg4NmFzbS5wbA0KKwlwZXJsIC1JJHtMQ1JZ UFRPX1NSQ30vcGVybGFzbSAke0xDUllQVE9fU1JDfS9yYzQvYXNtL3JjNC01 ODYucGwgY3BwID4gcng4NnVuaXguY3BwDQorDQogIyByYzUNCi1TUkNTKz0J cmM1Y2ZiNjQuYyByYzVfZWNiLmMgcmM1X2VuYy5jIHJjNW9mYjY0LmMgcmM1 X3NrZXkuYyANCitTUkNTKz0JcmM1Y2ZiNjQuYyByYzVfZWNiLmMgcmM1b2Zi NjQuYyByYzVfc2tleS5jIA0KKw0KKy5pZiAoJHtNQUNISU5FX0FSQ0h9ID09 ICJpMzg2IiAmJiAoJHtNQUNISU5FX0NQVX0gPT0gImk1ODYiIHx8ICR7TUFD SElORV9DUFV9ID09ICJpNjg2IikpDQorU1RBVElDT0JKUys9CXI1ODYtZWxm Lm8NCitTT0JKUys9CQlyNTg2LWVsZi5vDQorLmVsc2UNCitTUkNTKz0JcmM1 X2VuYy5jIA0KKy5lbmRpZg0KKw0KK3I1ODYtZWxmLm86IHI1ODZ1bml4LmNw cA0KKwljcHAgLURFTEYgLXggYyByNTg2dW5peC5jcHAgfCBhcyAtbyByNTg2 LWVsZi5vDQogDQorcjU4NnVuaXguY3BwOiBhc20vcmM1LTU4Ni5wbCB4ODZh c20ucGwNCisJcGVybCAtSSR7TENSWVBUT19TUkN9L3Blcmxhc20gJHtMQ1JZ UFRPX1NSQ30vcmM1L2FzbS9yYzUtNTg2LnBsIGNwcCA+IHI1ODZ1bml4LmNw cA0KKw0KICMgcmlwZW1kDQogU1JDUys9CXJtZF9kZ3N0LmMgcm1kX29uZS5j DQogDQorLmlmICgke01BQ0hJTkVfQVJDSH0gPT0gImkzODYiICYmICgke01B Q0hJTkVfQ1BVfSA9PSAiaTU4NiIgfHwgJHtNQUNISU5FX0NQVX0gPT0gImk2 ODYiKSkNCitTVEFUSUNPQkpTKz0Jcm04Ni1lbGYubw0KK1NPQkpTKz0JCXJt ODYtZWxmLm8NCitDRkxBR1MrPSAtRFJNRDE2MF9BU00NCisuZW5kaWYNCisN CitybTg2LWVsZi5vOiBybTg2dW5peC5jcHANCisJY3BwIC1ERUxGIC14IGMg cm04NnVuaXguY3BwIHwgYXMgLW8gcm04Ni1lbGYubw0KKw0KK3JtODZ1bml4 LmNwcDogYXNtL3JtZC01ODYucGwgeDg2YXNtLnBsDQorCXBlcmwgLUkke0xD UllQVE9fU1JDfS9wZXJsYXNtICR7TENSWVBUT19TUkN9L3JpcGVtZC9hc20v cm1kLTU4Ni5wbCBjcHAgPiBybTg2dW5peC5jcHANCisNCiAjIHJzYQ0KIC5p ZiBkZWZpbmVkKFdJVEhfUlNBKSAmJiAke1dJVEhfUlNBfSA9PSBZRVMNCiBT UkNTKz0JcnNhX2Noay5jIHJzYV9lcnIuYyByc2FfZ2VuLmMgcnNhX2xpYi5j IHJzYV9ub25lLmMgcnNhX251bGwuYyBcDQpAQCAtMTQ3LDYgKzI2MCwxOCBA QA0KIA0KICMgc2hhDQogU1JDUys9CXNoYV9kZ3N0LmMgc2hhX29uZS5jIHNo YTFfb25lLmMgc2hhMWRnc3QuYw0KKw0KKy5pZiAoJHtNQUNISU5FX0FSQ0h9 ID09ICJpMzg2IiAmJiAoJHtNQUNISU5FX0NQVX0gPT0gImk1ODYiIHx8ICR7 TUFDSElORV9DUFV9ID09ICJpNjg2IikpDQorU1RBVElDT0JKUys9CXN4ODYt ZWxmLm8NCitTT0JKUys9CQlzeDg2LWVsZi5vDQorQ0ZMQUdTKz0gLURTSEEx X0FTTQ0KKy5lbmRpZg0KKw0KK3N4ODYtZWxmLm86IHN4ODZ1bml4LmNwcA0K KwljcHAgLURFTEYgLXggYyBzeDg2dW5peC5jcHAgfCBhcyAtbyBzeDg2LWVs Zi5vDQorDQorc3g4NnVuaXguY3BwOiBhc20vc2hhMS01ODYucGwgeDg2YXNt LnBsDQorCXBlcmwgLUkke0xDUllQVE9fU1JDfS9wZXJsYXNtICR7TENSWVBU T19TUkN9L3NoYS9hc20vc2hhMS01ODYucGwgY3BwID4gc3g4NnVuaXguY3Bw DQogDQogIyBzdGFjaw0KIFNSQ1MrPQlzdGFjay5jDQo= --0-1239093499-956370508=:68716-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message