Date: Wed, 9 Mar 2016 01:16:53 -0800 From: Xin Li <delphij@delphij.net> To: Antoine Brodin <antoine@FreeBSD.org>, Xin LI <delphij@gmail.com> Cc: Mathieu Arnold <mat@freebsd.org>, Jung-Uk Kim <jkim@freebsd.org>, Bryan Drewery <bdrewery@freebsd.org>, Xin LI <delphij@freebsd.org>, "src-committers@freebsd.org" <src-committers@freebsd.org>, "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>, svn-src-releng@freebsd.org Subject: Re: svn commit: r296465 - in releng/9.3: . crypto/openssl crypto/openssl/apps crypto/openssl/bugs crypto/openssl/crypto crypto/openssl/crypto/aes crypto/openssl/crypto/asn1 crypto/openssl/crypto/bf cry... Message-ID: <56DFEA05.6060501@delphij.net> In-Reply-To: <CAALwa8mXg-eE3tZ1R=LAd9nWNAmTkqPmrSaZAmtrQ=u4-=wEeg@mail.gmail.com> References: <201603071622.u27GMC4a082792@repo.freebsd.org> <9B6D673B7B15CCDC424E97A8@atuin.in.mat.cc> <56DEFD08.6050100@FreeBSD.org> <63FB9E5BBBF224CA12839457@ogg.in.absolight.net> <56DEFDF5.2040500@FreeBSD.org> <1E2DCDEE8775312979CE7D0B@ogg.in.absolight.net> <56DF0234.2090307@FreeBSD.org> <56DF025B.1090706@FreeBSD.org> <DC10EFD5F03DA877503B6C3E@ogg.in.absolight.net> <56DF0550.6000604@FreeBSD.org> <E24637388915226D9A922B8B@atuin.in.mat.cc> <CAGMYy3tfrty-8r-Efzzd56d4AOdV0H%2BParrkUtBWR4f%2B0ZtxWw@mail.gmail.com> <CAALwa8mXg-eE3tZ1R=LAd9nWNAmTkqPmrSaZAmtrQ=u4-=wEeg@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --774Dh2Jq2oobcRMhc89n9LSoJJVmQ5OiC Content-Type: multipart/mixed; boundary="SeCef0iwHIoNH1LukmLLTks6deFApNAGo" From: Xin Li <delphij@delphij.net> To: Antoine Brodin <antoine@FreeBSD.org>, Xin LI <delphij@gmail.com> Cc: Mathieu Arnold <mat@freebsd.org>, Jung-Uk Kim <jkim@freebsd.org>, Bryan Drewery <bdrewery@freebsd.org>, Xin LI <delphij@freebsd.org>, "src-committers@freebsd.org" <src-committers@freebsd.org>, "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>, svn-src-releng@freebsd.org Message-ID: <56DFEA05.6060501@delphij.net> Subject: Re: svn commit: r296465 - in releng/9.3: . crypto/openssl crypto/openssl/apps crypto/openssl/bugs crypto/openssl/crypto crypto/openssl/crypto/aes crypto/openssl/crypto/asn1 crypto/openssl/crypto/bf cry... References: <201603071622.u27GMC4a082792@repo.freebsd.org> <9B6D673B7B15CCDC424E97A8@atuin.in.mat.cc> <56DEFD08.6050100@FreeBSD.org> <63FB9E5BBBF224CA12839457@ogg.in.absolight.net> <56DEFDF5.2040500@FreeBSD.org> <1E2DCDEE8775312979CE7D0B@ogg.in.absolight.net> <56DF0234.2090307@FreeBSD.org> <56DF025B.1090706@FreeBSD.org> <DC10EFD5F03DA877503B6C3E@ogg.in.absolight.net> <56DF0550.6000604@FreeBSD.org> <E24637388915226D9A922B8B@atuin.in.mat.cc> <CAGMYy3tfrty-8r-Efzzd56d4AOdV0H+ParrkUtBWR4f+0ZtxWw@mail.gmail.com> <CAALwa8mXg-eE3tZ1R=LAd9nWNAmTkqPmrSaZAmtrQ=u4-=wEeg@mail.gmail.com> In-Reply-To: <CAALwa8mXg-eE3tZ1R=LAd9nWNAmTkqPmrSaZAmtrQ=u4-=wEeg@mail.gmail.com> --SeCef0iwHIoNH1LukmLLTks6deFApNAGo Content-Type: multipart/mixed; boundary="------------050501080008040300060008" This is a multi-part message in MIME format. --------------050501080008040300060008 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable FYI -- I can confirm that libcrypto is broken and have a reliable way to trigger it. So far I was able to narrow down this to this change and here is a temporary workaround (which will reintroduce CVE-2016-0702). Cheers, --------------050501080008040300060008 Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="bn-revert.diff" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="bn-revert.diff" SW5kZXg6IGNyeXB0by9vcGVuc3NsL2NyeXB0by9ibi9ibi5oCj09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t IGNyeXB0by9vcGVuc3NsL2NyeXB0by9ibi9ibi5oCShyZXZpc2lvbiAyOTY1NTYpCisrKyBj cnlwdG8vb3BlbnNzbC9jcnlwdG8vYm4vYm4uaAkod29ya2luZyBjb3B5KQpAQCAtNjksMTMg KzY5LDEzIEBACiAgKgogICovCiAKLSNpZm5kZWYgSEVBREVSX0JOX0gNCi0jIGRlZmluZSBI RUFERVJfQk5fSA0KLQ0KLSMgaW5jbHVkZSA8bGltaXRzLmg+DQotIyBpbmNsdWRlIDxvcGVu c3NsL2Vfb3MyLmg+DQotIyBpZm5kZWYgT1BFTlNTTF9OT19GUF9BUEkNCi0jICBpbmNsdWRl IDxzdGRpby5oPiAgICAgICAgICAgIC8qIEZJTEUgKi8NCisjaWZuZGVmIEhFQURFUl9CTl9I CisjIGRlZmluZSBIRUFERVJfQk5fSAorCisjIGluY2x1ZGUgPGxpbWl0cy5oPgorIyBpbmNs dWRlIDxvcGVuc3NsL2Vfb3MyLmg+CisjIGlmbmRlZiBPUEVOU1NMX05PX0ZQX0FQSQorIyAg aW5jbHVkZSA8c3RkaW8uaD4gICAgICAgICAgICAvKiBGSUxFICovCiAjIGVuZGlmCiAjIGlu Y2x1ZGUgPG9wZW5zc2wvb3NzbF90eXAuaD4KIApAQCAtNzAyLDIzICs3MDIsMjMgQEAgY29u c3QgQklHTlVNICpCTl9nZXQwX25pc3RfcHJpbWVfMjI0KHZvaWQpOwogY29uc3QgQklHTlVN ICpCTl9nZXQwX25pc3RfcHJpbWVfMjU2KHZvaWQpOwogY29uc3QgQklHTlVNICpCTl9nZXQw X25pc3RfcHJpbWVfMzg0KHZvaWQpOwogY29uc3QgQklHTlVNICpCTl9nZXQwX25pc3RfcHJp bWVfNTIxKHZvaWQpOwotDQotLyogbGlicmFyeSBpbnRlcm5hbCBmdW5jdGlvbnMgKi8NCi0N Ci0jIGRlZmluZSBibl9leHBhbmQoYSxiaXRzKSBcDQotICAgICggXA0KLSAgICAgICAgYml0 cyA+IChJTlRfTUFYIC0gQk5fQklUUzIgKyAxKSA/IFwNCi0gICAgICAgICAgICBOVUxMIFwN Ci0gICAgICAgIDogXA0KLSAgICAgICAgICAgICgoKGJpdHMrQk5fQklUUzItMSkvQk5fQklU UzIpIDw9IChhKS0+ZG1heCkgPyBcDQotICAgICAgICAgICAgICAgIChhKSBcDQotICAgICAg ICAgICAgOiBcDQotICAgICAgICAgICAgICAgIGJuX2V4cGFuZDIoKGEpLChiaXRzK0JOX0JJ VFMyLTEpL0JOX0JJVFMyKSBcDQotICAgICkNCi0NCi0jIGRlZmluZSBibl93ZXhwYW5kKGEs d29yZHMpICgoKHdvcmRzKSA8PSAoYSktPmRtYXgpPyhhKTpibl9leHBhbmQyKChhKSwod29y ZHMpKSkNCi1CSUdOVU0gKmJuX2V4cGFuZDIoQklHTlVNICphLCBpbnQgd29yZHMpOw0KLSMg aWZuZGVmIE9QRU5TU0xfTk9fREVQUkVDQVRFRA0KKworLyogbGlicmFyeSBpbnRlcm5hbCBm dW5jdGlvbnMgKi8KKworIyBkZWZpbmUgYm5fZXhwYW5kKGEsYml0cykgXAorICAgICggXAor ICAgICAgICBiaXRzID4gKElOVF9NQVggLSBCTl9CSVRTMiArIDEpID8gXAorICAgICAgICAg ICAgTlVMTCBcCisgICAgICAgIDogXAorICAgICAgICAgICAgKCgoYml0cytCTl9CSVRTMi0x KS9CTl9CSVRTMikgPD0gKGEpLT5kbWF4KSA/IFwKKyAgICAgICAgICAgICAgICAoYSkgXAor ICAgICAgICAgICAgOiBcCisgICAgICAgICAgICAgICAgYm5fZXhwYW5kMigoYSksKGJpdHMr Qk5fQklUUzItMSkvQk5fQklUUzIpIFwKKyAgICApCisKKyMgZGVmaW5lIGJuX3dleHBhbmQo YSx3b3JkcykgKCgod29yZHMpIDw9IChhKS0+ZG1heCk/KGEpOmJuX2V4cGFuZDIoKGEpLCh3 b3JkcykpKQorQklHTlVNICpibl9leHBhbmQyKEJJR05VTSAqYSwgaW50IHdvcmRzKTsKKyMg aWZuZGVmIE9QRU5TU0xfTk9fREVQUkVDQVRFRAogQklHTlVNICpibl9kdXBfZXhwYW5kKGNv bnN0IEJJR05VTSAqYSwgaW50IHdvcmRzKTsgLyogdW51c2VkICovCiAjIGVuZGlmCiAKSW5k ZXg6IGNyeXB0by9vcGVuc3NsL2NyeXB0by9ibi9ibl9leHAuYwo9PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t LSBjcnlwdG8vb3BlbnNzbC9jcnlwdG8vYm4vYm5fZXhwLmMJKHJldmlzaW9uIDI5NjU1NikK KysrIGNyeXB0by9vcGVuc3NsL2NyeXB0by9ibi9ibl9leHAuYwkod29ya2luZyBjb3B5KQpA QCAtMTA3LDEzICsxMDcsMTIgQEAKICAqIChlYXlAY3J5cHRzb2Z0LmNvbSkuICBUaGlzIHBy b2R1Y3QgaW5jbHVkZXMgc29mdHdhcmUgd3JpdHRlbiBieSBUaW0KICAqIEh1ZHNvbiAodGpo QGNyeXB0c29mdC5jb20pLgogICoKLSAqLw0KLQ0KLSNpbmNsdWRlICJjcnlwdGxpYi5oIg0K LSNpbmNsdWRlICJjb25zdGFudF90aW1lX2xvY2wuaCINCi0jaW5jbHVkZSAiYm5fbGNsLmgi DQotDQotLyogbWF4aW11bSBwcmVjb21wdXRhdGlvbiB0YWJsZSBzaXplIGZvciAqdmFyaWFi bGUqIHNsaWRpbmcgd2luZG93cyAqLw0KKyAqLworCisjaW5jbHVkZSAiY3J5cHRsaWIuaCIK KyNpbmNsdWRlICJibl9sY2wuaCIKKworLyogbWF4aW11bSBwcmVjb21wdXRhdGlvbiB0YWJs ZSBzaXplIGZvciAqdmFyaWFibGUqIHNsaWRpbmcgd2luZG93cyAqLwogI2RlZmluZSBUQUJM RV9TSVpFICAgICAgMzIKIAogLyogdGhpcyBvbmUgd29ya3MgLSBzaW1wbGUgYnV0IHdvcmtz ICovCkBAIC01MjEsNzkgKzUyMCw0MSBAQCBpbnQgQk5fbW9kX2V4cF9tb250KEJJR05VTSAq cnIsIGNvbnN0IEJJR05VTSAqYSwgYwogICogcGF0dGVybiBhcyBmYXIgYXMgY2FjaGUgbGlu ZXMgYXJlIGNvbmNlcm5lZC4gIFRoZSBmb2xsb3dpbmcgZnVuY3Rpb25zIGFyZQogICogdXNl ZCB0byB0cmFuc2ZlciBhIEJJR05VTSBmcm9tL3RvIHRoYXQgdGFibGUuCiAgKi8KLQ0KLXN0 YXRpYyBpbnQgTU9EX0VYUF9DVElNRV9DT1BZX1RPX1BSRUJVRihCSUdOVU0gKmIsIGludCB0 b3AsDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVk IGNoYXIgKmJ1ZiwgaW50IGlkeCwNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgaW50IHdpbmRvdykNCi17DQotICAgIGludCBpLCBqOw0KLSAgICBpbnQgd2lk dGggPSAxIDw8IHdpbmRvdzsNCi0gICAgQk5fVUxPTkcgKnRhYmxlID0gKEJOX1VMT05HICop YnVmOw0KLQ0KLSAgICBpZiAoYm5fd2V4cGFuZChiLCB0b3ApID09IE5VTEwpDQotICAgICAg ICByZXR1cm4gMDsNCisKK3N0YXRpYyBpbnQgTU9EX0VYUF9DVElNRV9DT1BZX1RPX1BSRUJV RihCSUdOVU0gKmIsIGludCB0b3AsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdW5zaWduZWQgY2hhciAqYnVmLCBpbnQgaWR4LAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGludCB3aWR0aCkKK3sKKyAgICBzaXplX3QgaSwg ajsKKworICAgIGlmIChibl93ZXhwYW5kKGIsIHRvcCkgPT0gTlVMTCkKKyAgICAgICAgcmV0 dXJuIDA7CiAgICAgd2hpbGUgKGItPnRvcCA8IHRvcCkgewotICAgICAgICBiLT5kW2ItPnRv cCsrXSA9IDA7DQotICAgIH0NCi0NCi0gICAgZm9yIChpID0gMCwgaiA9IGlkeDsgaSA8IHRv cDsgaSsrLCBqICs9IHdpZHRoKSB7DQotICAgICAgICB0YWJsZVtqXSA9IGItPmRbaV07DQot ICAgIH0NCi0NCi0gICAgYm5fY29ycmVjdF90b3AoYik7DQorICAgICAgICBiLT5kW2ItPnRv cCsrXSA9IDA7CisgICAgfQorCisgICAgZm9yIChpID0gMCwgaiA9IGlkeDsgaSA8IHRvcCAq IHNpemVvZiBiLT5kWzBdOyBpKyssIGogKz0gd2lkdGgpIHsKKyAgICAgICAgYnVmW2pdID0g KCh1bnNpZ25lZCBjaGFyICopYi0+ZClbaV07CisgICAgfQorCisgICAgYm5fY29ycmVjdF90 b3AoYik7CiAgICAgcmV0dXJuIDE7CiB9Ci0NCi1zdGF0aWMgaW50IE1PRF9FWFBfQ1RJTUVf Q09QWV9GUk9NX1BSRUJVRihCSUdOVU0gKmIsIGludCB0b3AsDQotICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqYnVmLCBpbnQgaWR4 LA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCB3aW5k b3cpDQotew0KLSAgICBpbnQgaSwgajsNCi0gICAgaW50IHdpZHRoID0gMSA8PCB3aW5kb3c7 DQotICAgIHZvbGF0aWxlIEJOX1VMT05HICp0YWJsZSA9ICh2b2xhdGlsZSBCTl9VTE9ORyAq KWJ1ZjsNCi0NCi0gICAgaWYgKGJuX3dleHBhbmQoYiwgdG9wKSA9PSBOVUxMKQ0KLSAgICAg ICAgcmV0dXJuIDA7DQotDQotICAgIGlmICh3aW5kb3cgPD0gMykgew0KLSAgICAgICAgZm9y IChpID0gMDsgaSA8IHRvcDsgaSsrLCB0YWJsZSArPSB3aWR0aCkgew0KLSAgICAgICAgICAg IEJOX1VMT05HIGFjYyA9IDA7DQotDQotICAgICAgICAgICAgZm9yIChqID0gMDsgaiA8IHdp ZHRoOyBqKyspIHsNCi0gICAgICAgICAgICAgICAgYWNjIHw9IHRhYmxlW2pdICYNCi0gICAg ICAgICAgICAgICAgICAgICAgICgoQk5fVUxPTkcpMCAtIChjb25zdGFudF90aW1lX2VxX2lu dChqLGlkeCkmMSkpOw0KLSAgICAgICAgICAgIH0NCi0NCi0gICAgICAgICAgICBiLT5kW2ld ID0gYWNjOw0KLSAgICAgICAgfQ0KLSAgICB9IGVsc2Ugew0KLSAgICAgICAgaW50IHhzdHJp ZGUgPSAxIDw8ICh3aW5kb3cgLSAyKTsNCi0gICAgICAgIEJOX1VMT05HIHkwLCB5MSwgeTIs IHkzOw0KLQ0KLSAgICAgICAgaSA9IGlkeCA+PiAod2luZG93IC0gMik7ICAgICAgICAvKiBl cXVpdmFsZW50IG9mIGlkeCAvIHhzdHJpZGUgKi8NCi0gICAgICAgIGlkeCAmPSB4c3RyaWRl IC0gMTsgICAgICAgICAgICAgLyogZXF1aXZhbGVudCBvZiBpZHggJSB4c3RyaWRlICovDQot DQotICAgICAgICB5MCA9IChCTl9VTE9ORykwIC0gKGNvbnN0YW50X3RpbWVfZXFfaW50KGks MCkmMSk7DQotICAgICAgICB5MSA9IChCTl9VTE9ORykwIC0gKGNvbnN0YW50X3RpbWVfZXFf aW50KGksMSkmMSk7DQotICAgICAgICB5MiA9IChCTl9VTE9ORykwIC0gKGNvbnN0YW50X3Rp bWVfZXFfaW50KGksMikmMSk7DQotICAgICAgICB5MyA9IChCTl9VTE9ORykwIC0gKGNvbnN0 YW50X3RpbWVfZXFfaW50KGksMykmMSk7DQotDQotICAgICAgICBmb3IgKGkgPSAwOyBpIDwg dG9wOyBpKyssIHRhYmxlICs9IHdpZHRoKSB7DQotICAgICAgICAgICAgQk5fVUxPTkcgYWNj ID0gMDsNCi0NCi0gICAgICAgICAgICBmb3IgKGogPSAwOyBqIDwgeHN0cmlkZTsgaisrKSB7 DQotICAgICAgICAgICAgICAgIGFjYyB8PSAoICh0YWJsZVtqICsgMCAqIHhzdHJpZGVdICYg eTApIHwNCi0gICAgICAgICAgICAgICAgICAgICAgICAgKHRhYmxlW2ogKyAxICogeHN0cmlk ZV0gJiB5MSkgfA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAodGFibGVbaiArIDIgKiB4 c3RyaWRlXSAmIHkyKSB8DQotICAgICAgICAgICAgICAgICAgICAgICAgICh0YWJsZVtqICsg MyAqIHhzdHJpZGVdICYgeTMpICkNCi0gICAgICAgICAgICAgICAgICAgICAgICYgKChCTl9V TE9ORykwIC0gKGNvbnN0YW50X3RpbWVfZXFfaW50KGosaWR4KSYxKSk7DQotICAgICAgICAg ICAgfQ0KLQ0KLSAgICAgICAgICAgIGItPmRbaV0gPSBhY2M7DQotICAgICAgICB9DQotICAg IH0NCi0NCi0gICAgYi0+dG9wID0gdG9wOw0KKworc3RhdGljIGludCBNT0RfRVhQX0NUSU1F X0NPUFlfRlJPTV9QUkVCVUYoQklHTlVNICpiLCBpbnQgdG9wLAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqYnVmLCBpbnQgaWR4 LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHdpZHRo KQoreworICAgIHNpemVfdCBpLCBqOworCisgICAgaWYgKGJuX3dleHBhbmQoYiwgdG9wKSA9 PSBOVUxMKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGZvciAoaSA9IDAsIGogPSBpZHg7 IGkgPCB0b3AgKiBzaXplb2YgYi0+ZFswXTsgaSsrLCBqICs9IHdpZHRoKSB7CisgICAgICAg ICgodW5zaWduZWQgY2hhciAqKWItPmQpW2ldID0gYnVmW2pdOworICAgIH0KKworICAgIGIt PnRvcCA9IHRvcDsKICAgICBibl9jb3JyZWN0X3RvcChiKTsKICAgICByZXR1cm4gMTsKIH0K QEAgLTY4NCwxMyArNjQ1LDEzIEBAIGludCBCTl9tb2RfZXhwX21vbnRfY29uc3R0aW1lKEJJ R05VTSAqcnIsIGNvbnN0IEJJCiAgICAgLyoKICAgICAgKiBJbml0aWFsaXplIHRoZSBpbnRl cm1lZGlhdGUgcmVzdWx0LiBEbyB0aGlzIGVhcmx5IHRvIHNhdmUgZG91YmxlCiAgICAgICog Y29udmVyc2lvbiwgb25jZSBlYWNoIGZvciBhXjAgYW5kIGludGVybWVkaWF0ZSByZXN1bHQu Ci0gICAgICovDQotICAgIGlmICghQk5fdG9fbW9udGdvbWVyeShyLCBCTl92YWx1ZV9vbmUo KSwgbW9udCwgY3R4KSkNCi0gICAgICAgIGdvdG8gZXJyOw0KLSAgICBpZiAoIU1PRF9FWFBf Q1RJTUVfQ09QWV9UT19QUkVCVUYociwgdG9wLCBwb3dlcmJ1ZiwgMCwgd2luZG93KSkNCi0g ICAgICAgIGdvdG8gZXJyOw0KLQ0KLSAgICAvKiBJbml0aWFsaXplIGNvbXB1dGVUZW1wIGFz IGFeMSB3aXRoIG1vbnRnb21lcnkgcHJlY2FsY3MgKi8NCisgICAgICovCisgICAgaWYgKCFC Tl90b19tb250Z29tZXJ5KHIsIEJOX3ZhbHVlX29uZSgpLCBtb250LCBjdHgpKQorICAgICAg ICBnb3RvIGVycjsKKyAgICBpZiAoIU1PRF9FWFBfQ1RJTUVfQ09QWV9UT19QUkVCVUYociwg dG9wLCBwb3dlcmJ1ZiwgMCwgbnVtUG93ZXJzKSkKKyAgICAgICAgZ290byBlcnI7CisKKyAg ICAvKiBJbml0aWFsaXplIGNvbXB1dGVUZW1wIGFzIGFeMSB3aXRoIG1vbnRnb21lcnkgcHJl Y2FsY3MgKi8KICAgICBjb21wdXRlVGVtcCA9IEJOX0NUWF9nZXQoY3R4KTsKICAgICBhbSA9 IEJOX0NUWF9nZXQoY3R4KTsKICAgICBpZiAoY29tcHV0ZVRlbXAgPT0gTlVMTCB8fCBhbSA9 PSBOVUxMKQpAQCAtNzAzLDEzICs2NjQsMTMgQEAgaW50IEJOX21vZF9leHBfbW9udF9jb25z dHRpbWUoQklHTlVNICpyciwgY29uc3QgQkkKICAgICB9IGVsc2UKICAgICAgICAgYWEgPSBh OwogICAgIGlmICghQk5fdG9fbW9udGdvbWVyeShhbSwgYWEsIG1vbnQsIGN0eCkpCi0gICAg ICAgIGdvdG8gZXJyOw0KLSAgICBpZiAoIUJOX2NvcHkoY29tcHV0ZVRlbXAsIGFtKSkNCi0g ICAgICAgIGdvdG8gZXJyOw0KLSAgICBpZiAoIU1PRF9FWFBfQ1RJTUVfQ09QWV9UT19QUkVC VUYoYW0sIHRvcCwgcG93ZXJidWYsIDEsIHdpbmRvdykpDQotICAgICAgICBnb3RvIGVycjsN Ci0NCi0gICAgLyoNCisgICAgICAgIGdvdG8gZXJyOworICAgIGlmICghQk5fY29weShjb21w dXRlVGVtcCwgYW0pKQorICAgICAgICBnb3RvIGVycjsKKyAgICBpZiAoIU1PRF9FWFBfQ1RJ TUVfQ09QWV9UT19QUkVCVUYoYW0sIHRvcCwgcG93ZXJidWYsIDEsIG51bVBvd2VycykpCisg ICAgICAgIGdvdG8gZXJyOworCisgICAgLyoKICAgICAgKiBJZiB0aGUgd2luZG93IHNpemUg aXMgZ3JlYXRlciB0aGFuIDEsIHRoZW4gY2FsY3VsYXRlCiAgICAgICogdmFsW2k9Mi4uMl53 aW5zaXplLTFdLiBQb3dlcnMgYXJlIGNvbXB1dGVkIGFzIGEqYV4oaS0xKSAoZXZlbiBwb3dl cnMKICAgICAgKiBjb3VsZCBpbnN0ZWFkIGJlIGNvbXB1dGVkIGFzIChhXihpLzIpKV4yIHRv IHVzZSB0aGUgc2xpZ2h0IHBlcmZvcm1hbmNlCkBAIC03MTgsMTQgKzY3OSwxNCBAQCBpbnQg Qk5fbW9kX2V4cF9tb250X2NvbnN0dGltZShCSUdOVU0gKnJyLCBjb25zdCBCSQogICAgIGlm ICh3aW5kb3cgPiAxKSB7CiAgICAgICAgIGZvciAoaSA9IDI7IGkgPCBudW1Qb3dlcnM7IGkr KykgewogICAgICAgICAgICAgLyogQ2FsY3VsYXRlIGFeaSA9IGFeKGktMSkgKiBhICovCi0g ICAgICAgICAgICBpZiAoIUJOX21vZF9tdWxfbW9udGdvbWVyeQ0KLSAgICAgICAgICAgICAg ICAoY29tcHV0ZVRlbXAsIGFtLCBjb21wdXRlVGVtcCwgbW9udCwgY3R4KSkNCi0gICAgICAg ICAgICAgICAgZ290byBlcnI7DQotICAgICAgICAgICAgaWYgKCFNT0RfRVhQX0NUSU1FX0NP UFlfVE9fUFJFQlVGKGNvbXB1dGVUZW1wLCB0b3AsIHBvd2VyYnVmLCBpLA0KLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cpKQ0KLSAgICAg ICAgICAgICAgICBnb3RvIGVycjsNCi0gICAgICAgIH0NCi0gICAgfQ0KKyAgICAgICAgICAg IGlmICghQk5fbW9kX211bF9tb250Z29tZXJ5CisgICAgICAgICAgICAgICAgKGNvbXB1dGVU ZW1wLCBhbSwgY29tcHV0ZVRlbXAsIG1vbnQsIGN0eCkpCisgICAgICAgICAgICAgICAgZ290 byBlcnI7CisgICAgICAgICAgICBpZiAoIU1PRF9FWFBfQ1RJTUVfQ09QWV9UT19QUkVCVUYK KyAgICAgICAgICAgICAgICAoY29tcHV0ZVRlbXAsIHRvcCwgcG93ZXJidWYsIGksIG51bVBv d2VycykpCisgICAgICAgICAgICAgICAgZ290byBlcnI7CisgICAgICAgIH0KKyAgICB9CiAK ICAgICAvKgogICAgICAqIEFkanVzdCB0aGUgbnVtYmVyIG9mIGJpdHMgdXAgdG8gYSBtdWx0 aXBsZSBvZiB0aGUgd2luZG93IHNpemUuIElmIHRoZQpJbmRleDogY3J5cHRvL29wZW5zc2wv Y3J5cHRvL2JuL2JuX3ByaW50LmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gY3J5cHRvL29wZW5zc2wv Y3J5cHRvL2JuL2JuX3ByaW50LmMJKHJldmlzaW9uIDI5NjU1NikKKysrIGNyeXB0by9vcGVu c3NsL2NyeXB0by9ibi9ibl9wcmludC5jCSh3b3JraW5nIGNvcHkpCkBAIC01NSwxNCArNTUs MTQgQEAKICAqIGNvcGllZCBhbmQgcHV0IHVuZGVyIGFub3RoZXIgZGlzdHJpYnV0aW9uIGxp Y2VuY2UKICAqIFtpbmNsdWRpbmcgdGhlIEdOVSBQdWJsaWMgTGljZW5jZS5dCiAgKi8KLQ0K LSNpbmNsdWRlIDxzdGRpby5oPg0KLSNpbmNsdWRlIDxjdHlwZS5oPg0KLSNpbmNsdWRlIDxs aW1pdHMuaD4NCi0jaW5jbHVkZSAiY3J5cHRsaWIuaCINCi0jaW5jbHVkZSA8b3BlbnNzbC9i dWZmZXIuaD4NCi0jaW5jbHVkZSAiYm5fbGNsLmgiDQogCisjaW5jbHVkZSA8c3RkaW8uaD4K KyNpbmNsdWRlIDxjdHlwZS5oPgorI2luY2x1ZGUgPGxpbWl0cy5oPgorI2luY2x1ZGUgImNy eXB0bGliLmgiCisjaW5jbHVkZSA8b3BlbnNzbC9idWZmZXIuaD4KKyNpbmNsdWRlICJibl9s Y2wuaCIKKwogc3RhdGljIGNvbnN0IGNoYXIgSGV4W10gPSAiMDEyMzQ1Njc4OUFCQ0RFRiI7 CiAKIC8qIE11c3QgJ09QRU5TU0xfZnJlZScgdGhlIHJldHVybmVkIGRhdGEgKi8KQEAgLTE4 NywxOSArMTg3LDE5IEBAIGludCBCTl9oZXgyYm4oQklHTlVNICoqYm4sIGNvbnN0IGNoYXIg KmEpCiAKICAgICBpZiAoKmEgPT0gJy0nKSB7CiAgICAgICAgIG5lZyA9IDE7Ci0gICAgICAg IGErKzsNCi0gICAgfQ0KLQ0KLSAgICBmb3IgKGkgPSAwOyBpIDw9IChJTlRfTUFYLzQpICYm IGlzeGRpZ2l0KCh1bnNpZ25lZCBjaGFyKWFbaV0pOyBpKyspDQotICAgICAgICBjb250aW51 ZTsNCi0NCi0gICAgaWYgKGkgPiBJTlRfTUFYLzQpDQotICAgICAgICBnb3RvIGVycjsNCi0N Ci0gICAgbnVtID0gaSArIG5lZzsNCi0gICAgaWYgKGJuID09IE5VTEwpDQotICAgICAgICBy ZXR1cm4gKG51bSk7DQorICAgICAgICBhKys7CisgICAgfQogCisgICAgZm9yIChpID0gMDsg aSA8PSAoSU5UX01BWC80KSAmJiBpc3hkaWdpdCgodW5zaWduZWQgY2hhcilhW2ldKTsgaSsr KQorICAgICAgICBjb250aW51ZTsKKworICAgIGlmIChpID4gSU5UX01BWC80KQorICAgICAg ICBnb3RvIGVycjsKKworICAgIG51bSA9IGkgKyBuZWc7CisgICAgaWYgKGJuID09IE5VTEwp CisgICAgICAgIHJldHVybiAobnVtKTsKKwogICAgIC8qIGEgaXMgdGhlIHN0YXJ0IG9mIHRo ZSBoZXggZGlnaXRzLCBhbmQgaXQgaXMgJ2knIGxvbmcgKi8KICAgICBpZiAoKmJuID09IE5V TEwpIHsKICAgICAgICAgaWYgKChyZXQgPSBCTl9uZXcoKSkgPT0gTlVMTCkKQEAgLTIwNiwx MyArMjA2LDEzIEBAIGludCBCTl9oZXgyYm4oQklHTlVNICoqYm4sIGNvbnN0IGNoYXIgKmEp CiAgICAgICAgICAgICByZXR1cm4gKDApOwogICAgIH0gZWxzZSB7CiAgICAgICAgIHJldCA9 ICpibjsKLSAgICAgICAgQk5femVybyhyZXQpOw0KLSAgICB9DQotDQotICAgIC8qIGkgaXMg dGhlIG51bWJlciBvZiBoZXggZGlnaXRzICovDQotICAgIGlmIChibl9leHBhbmQocmV0LCBp ICogNCkgPT0gTlVMTCkNCi0gICAgICAgIGdvdG8gZXJyOw0KLQ0KKyAgICAgICAgQk5femVy byhyZXQpOworICAgIH0KKworICAgIC8qIGkgaXMgdGhlIG51bWJlciBvZiBoZXggZGlnaXRz ICovCisgICAgaWYgKGJuX2V4cGFuZChyZXQsIGkgKiA0KSA9PSBOVUxMKQorICAgICAgICBn b3RvIGVycjsKKwogICAgIGogPSBpOyAgICAgICAgICAgICAgICAgICAgICAvKiBsZWFzdCBz aWduaWZpY2FudCAnaGV4JyAqLwogICAgIG0gPSAwOwogICAgIGggPSAwOwpAQCAtMjYyLDE5 ICsyNjIsMTkgQEAgaW50IEJOX2RlYzJibihCSUdOVU0gKipibiwgY29uc3QgY2hhciAqYSkK ICAgICAgICAgcmV0dXJuICgwKTsKICAgICBpZiAoKmEgPT0gJy0nKSB7CiAgICAgICAgIG5l ZyA9IDE7Ci0gICAgICAgIGErKzsNCi0gICAgfQ0KLQ0KLSAgICBmb3IgKGkgPSAwOyBpIDw9 IChJTlRfTUFYLzQpICYmIGlzZGlnaXQoKHVuc2lnbmVkIGNoYXIpYVtpXSk7IGkrKykNCi0g ICAgICAgIGNvbnRpbnVlOw0KLQ0KLSAgICBpZiAoaSA+IElOVF9NQVgvNCkNCi0gICAgICAg IGdvdG8gZXJyOw0KLQ0KLSAgICBudW0gPSBpICsgbmVnOw0KLSAgICBpZiAoYm4gPT0gTlVM TCkNCi0gICAgICAgIHJldHVybiAobnVtKTsNCisgICAgICAgIGErKzsKKyAgICB9CiAKKyAg ICBmb3IgKGkgPSAwOyBpIDw9IChJTlRfTUFYLzQpICYmIGlzZGlnaXQoKHVuc2lnbmVkIGNo YXIpYVtpXSk7IGkrKykKKyAgICAgICAgY29udGludWU7CisKKyAgICBpZiAoaSA+IElOVF9N QVgvNCkKKyAgICAgICAgZ290byBlcnI7CisKKyAgICBudW0gPSBpICsgbmVnOworICAgIGlm IChibiA9PSBOVUxMKQorICAgICAgICByZXR1cm4gKG51bSk7CisKICAgICAvKgogICAgICAq IGEgaXMgdGhlIHN0YXJ0IG9mIHRoZSBkaWdpdHMsIGFuZCBpdCBpcyAnaScgbG9uZy4gV2Ug Y2hvcCBpdCBpbnRvCiAgICAgICogQk5fREVDX05VTSBkaWdpdHMgYXQgYSB0aW1lCkBAIC0y ODQsMTMgKzI4NCwxMyBAQCBpbnQgQk5fZGVjMmJuKEJJR05VTSAqKmJuLCBjb25zdCBjaGFy ICphKQogICAgICAgICAgICAgcmV0dXJuICgwKTsKICAgICB9IGVsc2UgewogICAgICAgICBy ZXQgPSAqYm47Ci0gICAgICAgIEJOX3plcm8ocmV0KTsNCi0gICAgfQ0KLQ0KLSAgICAvKiBp IGlzIHRoZSBudW1iZXIgb2YgZGlnaXRzLCBhIGJpdCBvZiBhbiBvdmVyIGV4cGFuZCAqLw0K LSAgICBpZiAoYm5fZXhwYW5kKHJldCwgaSAqIDQpID09IE5VTEwpDQotICAgICAgICBnb3Rv IGVycjsNCi0NCisgICAgICAgIEJOX3plcm8ocmV0KTsKKyAgICB9CisKKyAgICAvKiBpIGlz IHRoZSBudW1iZXIgb2YgZGlnaXRzLCBhIGJpdCBvZiBhbiBvdmVyIGV4cGFuZCAqLworICAg IGlmIChibl9leHBhbmQocmV0LCBpICogNCkgPT0gTlVMTCkKKyAgICAgICAgZ290byBlcnI7 CisKICAgICBqID0gQk5fREVDX05VTSAtIChpICUgQk5fREVDX05VTSk7CiAgICAgaWYgKGog PT0gQk5fREVDX05VTSkKICAgICAgICAgaiA9IDA7Cg== --------------050501080008040300060008-- --SeCef0iwHIoNH1LukmLLTks6deFApNAGo-- --774Dh2Jq2oobcRMhc89n9LSoJJVmQ5OiC Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iQIcBAEBCgAGBQJW3+oFAAoJEJW2GBstM+nsXqcP/0dxSTMAkTAP1ZqnUc0HFKBV DebJ0/7ZVQ7+TV1PzmZ/zheW9Yhf1Cq2rTwn42zUkswM7KJU6WQIYQ0b5v+ZTOvT kezZIbK1VGu2iuU6x5Gm+2wh51lzGF+XKyzOWW+o/PGzp+/YFLrB5NOIGI7srK4l RckUHEHgSMsQxPLHPUi+r2SuPz0U5p6T0xxa0H6jI+pM4ZjsxX7BtdIpI1hSPlEY Nl035OcnOmMBHwQOQXuZ8yu0Rh1eFBr7LKPU5GgAoGxUzjZZn4yNctSihspMagux Iy3LbglS1jH8tYC0tnthA45OnxNp2EIiOmYetwgLhE1GRMaecHMwwLq+pKTQdlpN FA+rWJ/LX1u6+X6ioMbfJzWfDBhRY+oN3vJwOm01tzyf+596iZG7hfmXVsfeKWx6 mqMmpLZJi3Gfd/SblqVt/IpmkNhLTOkkKvhY3GOtJkDYaDoTXaX7kMkf3OJdKuF1 D5xPX5dEMe5/kkvLb1T34bj1V1wROg4+hlAjfHknW58u9JY80SD6cTGtGpRRQjEa 6uzz2XS4/xyTDuKhKLL5pkR8t7QiGhVYM6LjsRZu7zzFdYnJ90bO4nHZnHmnR/1u UwQh9+Qah1S1X0CngLy5zdpTsU/JZLoiRD56J+iKLun1BSpkVirJmoRC4RgVdH6v uxzwh7zeZ1D25ZLW3jKu =Is7P -----END PGP SIGNATURE----- --774Dh2Jq2oobcRMhc89n9LSoJJVmQ5OiC--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?56DFEA05.6060501>