From: marko.makela Date: November 10 2011 11:31am Subject: bzr push into mysql-5.5 branch (marko.makela:3601 to 3602) List-Archive: http://lists.mysql.com/commits/141806 Message-Id: <201111101131.pAABVjvG027820@acsmt358.oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 IDM2MDIgTWFya28gTcOka2Vsw6QJMjAxMS0xMS0xMCBbbWVyZ2VdCiAgICAgIE1lcmdlIG15c3Fs LTUuMSB0byBteXNxbC01LjUuCgogICAgYWRkZWQ6CiAgICAgIG15c3FsLXRlc3Qvc3VpdGUvaW5u b2RiL3IvaW5ub2RiX3JlcGxhY2UucmVzdWx0CiAgICAgIG15c3FsLXRlc3Qvc3VpdGUvaW5ub2Ri L3QvaW5ub2RiX3JlcGxhY2UudGVzdAogICAgbW9kaWZpZWQ6CiAgICAgIHNxbC9zcWxfaW5zZXJ0 LmNjCiAgICAgIHN0b3JhZ2UvaW5ub2Jhc2UvaGFuZGxlci9oYV9pbm5vZGIuY2MKICAgICAgc3Rv cmFnZS9pbm5vYmFzZS9yb3cvcm93MGlucy5jCiAzNjAxIFNlcmdleSBWb2p0b3ZpY2gJMjAxMS0x MS0xMCBbbWVyZ2VdCiAgICAgIChubyBtZXNzYWdlKQoKICAgIG1vZGlmaWVkOgogICAgICBzcWwv c3FsX2NsYXNzLmgKICAgICAgc3FsL3NxbF9wbHVnaW4uY2MKPT09IGFkZGVkIGZpbGUgJ215c3Fs LXRlc3Qvc3VpdGUvaW5ub2RiL3IvaW5ub2RiX3JlcGxhY2UucmVzdWx0JwotLS0gYS9teXNxbC10 ZXN0L3N1aXRlL2lubm9kYi9yL2lubm9kYl9yZXBsYWNlLnJlc3VsdAkxOTcwLTAxLTAxIDAwOjAw OjAwICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvaW5ub2RiL3IvaW5ub2RiX3JlcGxhY2Uu cmVzdWx0CXJldmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTExMTEwMTEwODQyLTVkdDcz MmFrdm1nY3pydGUKQEAgLTAsMCArMSw3NyBAQAorIworI0J1ZyMxMTc1OTY4OCA1MjAyMDogSW5u b0RCIGNhbiBzdGlsbCBkZWFkbG9jaworI29uIGp1c3QgSU5TRVJULi4uT04gRFVQTElDQVRFIEtF WQorI2Euay5hLiBCdWcjNzk3NSBkZWFkbG9jayB3aXRob3V0IGFueSBsb2NraW5nLCBzaW1wbGUg c2VsZWN0IGFuZCB1cGRhdGUKKyMKK0NSRUFURSBUQUJMRSB0MSAoYSBJTlQgUFJJTUFSWSBLRVks IGIgSU5UIE5PVCBOVUxMKSBFTkdJTkU9SW5ub0RCOworSU5TRVJUIElOVE8gdDEgVkFMVUVTKDMs MSk7CitCRUdJTjsKK1NFVCBERUJVR19TWU5DPSd3cml0ZV9yb3dfbm9yZXBsYWNlIFNJR05BTCBp bnNlcnQxIFdBSVRfRk9SIHNlbGVjdDEnOworSU5TRVJUIElOVE8gdDEgVkFMVUVTKDMsMik7CitT RVQgREVCVUdfU1lOQz0nbm93IFdBSVRfRk9SIGluc2VydDEnOworU0VMRUNUICogRlJPTSB0MSBM T0NLIElOIFNIQVJFIE1PREU7CithCWIKKzMJMQorU0VMRUNUICogRlJPTSB0MSBGT1IgVVBEQVRF OworU0VUIERFQlVHX1NZTkM9J25vdyBTSUdOQUwgc2VsZWN0MSc7CitFUlJPUiAyMzAwMDogRHVw bGljYXRlIGVudHJ5ICczJyBmb3Iga2V5ICdQUklNQVJZJworSU5TRVJUIElOVE8gdDEgVkFMVUVT KDMsMykgT04gRFVQTElDQVRFIEtFWSBVUERBVEUgYj1iKzEwOworRVJST1IgNDAwMDE6IERlYWRs b2NrIGZvdW5kIHdoZW4gdHJ5aW5nIHRvIGdldCBsb2NrOyB0cnkgcmVzdGFydGluZyB0cmFuc2Fj dGlvbgorQ09NTUlUOworU0VUIERFQlVHX1NZTkM9J3dyaXRlX3Jvd19yZXBsYWNlIFNJR05BTCBp bnNlcnQyIFdBSVRfRk9SIHNlbGVjdDInOworUkVQTEFDRSBJTlRPIHQxIFZBTFVFUygzLDQpOwor U0VUIERFQlVHX1NZTkM9J25vdyBXQUlUX0ZPUiBpbnNlcnQyJzsKK1NFTEVDVCAqIEZST00gdDE7 CithCWIKKzMJMTEKK1NFTEVDVCAqIEZST00gdDEgTE9DSyBJTiBTSEFSRSBNT0RFOworU0VUIERF QlVHX1NZTkM9J25vdyBTSUdOQUwgc2VsZWN0Mic7CitTRVQgREVCVUdfU1lOQz0nd3JpdGVfcm93 X3JlcGxhY2UgU0lHTkFMIGluc2VydDMgV0FJVF9GT1Igc2VsZWN0Myc7CitJTlNFUlQgSU5UTyB0 MSBWQUxVRVMoMyw1KSBPTiBEVVBMSUNBVEUgS0VZIFVQREFURSBiPWIrMjA7CithCWIKKzMJNAor U0VUIERFQlVHX1NZTkM9J25vdyBXQUlUX0ZPUiBpbnNlcnQzJzsKK1NFTEVDVCBiIEZST00gdDEg TE9DSyBJTiBTSEFSRSBNT0RFOworU0VUIERFQlVHX1NZTkM9J25vdyBTSUdOQUwgc2VsZWN0Myc7 CitiCisyNAorU0VUIERFQlVHX1NZTkM9J3dyaXRlX3Jvd19ub3JlcGxhY2UgU0lHTkFMIGluc2Vy dDQgV0FJVF9GT1Igc2VsZWN0NCc7CitMT0FEIERBVEEgSU5GSUxFICcuLi8uLi9zdGRfZGF0YS9s b2FkZGF0YTUuZGF0JyBJTlRPIFRBQkxFIHQxIEZJRUxEUyBURVJNSU5BVEVEIEJZICcnIEVOQ0xP U0VEIEJZICcnIChhLCBiKTsKK1NFVCBERUJVR19TWU5DPSdub3cgV0FJVF9GT1IgaW5zZXJ0NCc7 CitTRUxFQ1QgYiBGUk9NIHQxIFdIRVJFIGE9MyBMT0NLIElOIFNIQVJFIE1PREU7CitiCisyNAor U0VMRUNUIGIgRlJPTSB0MSBXSEVSRSBhPTMgRk9SIFVQREFURTsKK1NFVCBERUJVR19TWU5DPSdu b3cgU0lHTkFMIHNlbGVjdDQnOworYgorMjQKK0VSUk9SIDIzMDAwOiBEdXBsaWNhdGUgZW50cnkg JzMnIGZvciBrZXkgJ1BSSU1BUlknCitTRVQgREVCVUdfU1lOQz0nd3JpdGVfcm93X25vcmVwbGFj ZSBTSUdOQUwgaW5zZXJ0NSBXQUlUX0ZPUiBzZWxlY3Q1JzsKK0xPQUQgREFUQSBJTkZJTEUgJy4u Ly4uL3N0ZF9kYXRhL2xvYWRkYXRhNS5kYXQnIElHTk9SRSBJTlRPIFRBQkxFIHQxIEZJRUxEUyBU RVJNSU5BVEVEIEJZICcnIEVOQ0xPU0VEIEJZICcnIChhLCBiKTsKK1NFVCBERUJVR19TWU5DPSdu b3cgV0FJVF9GT1IgaW5zZXJ0NSc7CitTRUxFQ1QgKiBGUk9NIHQxOworYQliCiszCTI0CitTRUxF Q1QgKiBGUk9NIHQxIFdIRVJFIGE9MyBMT0NLIElOIFNIQVJFIE1PREU7CithCWIKKzMJMjQKK1NF TEVDVCAqIEZST00gdDEgV0hFUkUgYT0zIEZPUiBVUERBVEU7CitTRVQgREVCVUdfU1lOQz0nbm93 IFNJR05BTCBzZWxlY3Q1JzsKK2EJYgorMwkyNAorU0VUIERFQlVHX1NZTkM9J3dyaXRlX3Jvd19y ZXBsYWNlIFNJR05BTCBpbnNlcnQ2IFdBSVRfRk9SIHNlbGVjdDYnOworTE9BRCBEQVRBIElORklM RSAnLi4vLi4vc3RkX2RhdGEvbG9hZGRhdGE1LmRhdCcgUkVQTEFDRSBJTlRPIFRBQkxFIHQxIEZJ RUxEUyBURVJNSU5BVEVEIEJZICcnIEVOQ0xPU0VEIEJZICcnIChhLCBiKTsKK1NFVCBERUJVR19T WU5DPSdub3cgV0FJVF9GT1IgaW5zZXJ0Nic7CitTRUxFQ1QgKiBGUk9NIHQxOworYQliCisxCTIK KzMJMjQKKzUJNgorU0VMRUNUIGEsYiBGUk9NIHQxIExPQ0sgSU4gU0hBUkUgTU9ERTsKK1NFVCBE RUJVR19TWU5DPSdub3cgU0lHTkFMIHNlbGVjdDYnOworYQliCisxCTIKKzMJNAorNQk2CitTRVQg REVCVUdfU1lOQz0nUkVTRVQnOworRFJPUCBUQUJMRSB0MTsKCj09PSBhZGRlZCBmaWxlICdteXNx bC10ZXN0L3N1aXRlL2lubm9kYi90L2lubm9kYl9yZXBsYWNlLnRlc3QnCi0tLSBhL215c3FsLXRl c3Qvc3VpdGUvaW5ub2RiL3QvaW5ub2RiX3JlcGxhY2UudGVzdAkxOTcwLTAxLTAxIDAwOjAwOjAw ICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvaW5ub2RiL3QvaW5ub2RiX3JlcGxhY2UudGVz dAlyZXZpZDptYXJrby5tYWtlbGFAb3JhY2xlLmNvbS0yMDExMTExMDExMDg0Mi01ZHQ3MzJha3Zt Z2N6cnRlCkBAIC0wLDAgKzEsMTg2IEBACistLXNvdXJjZSBpbmNsdWRlL2hhdmVfaW5ub2RiLmlu YworLS1zb3VyY2UgaW5jbHVkZS9oYXZlX2RlYnVnX3N5bmMuaW5jCisKKy0tZWNobyAjCistLWVj aG8gI0J1ZyMxMTc1OTY4OCA1MjAyMDogSW5ub0RCIGNhbiBzdGlsbCBkZWFkbG9jaworLS1lY2hv ICNvbiBqdXN0IElOU0VSVC4uLk9OIERVUExJQ0FURSBLRVkKKy0tZWNobyAjYS5rLmEuIEJ1ZyM3 OTc1IGRlYWRsb2NrIHdpdGhvdXQgYW55IGxvY2tpbmcsIHNpbXBsZSBzZWxlY3QgYW5kIHVwZGF0 ZQorLS1lY2hvICMKKworQ1JFQVRFIFRBQkxFIHQxIChhIElOVCBQUklNQVJZIEtFWSwgYiBJTlQg Tk9UIE5VTEwpIEVOR0lORT1Jbm5vREI7CisKK0lOU0VSVCBJTlRPIHQxIFZBTFVFUygzLDEpOwor Citjb25uZWN0IChjb24xLGxvY2FsaG9zdCxyb290LCwpOworY29ubmVjdCAoY29uMixsb2NhbGhv c3Qscm9vdCwsKTsKK2Nvbm5lY3Rpb24gY29uMTsKKworQkVHSU47CisjIG5vcm1hbCBJTlNFUlQg b2YgYSBkdXBsaWNhdGUgc2hvdWxkIG9ubHkgUy1sb2NrIHRoZSBleGlzdGluZyByZWNvcmQgKDMs MSkKK1NFVCBERUJVR19TWU5DPSd3cml0ZV9yb3dfbm9yZXBsYWNlIFNJR05BTCBpbnNlcnQxIFdB SVRfRk9SIHNlbGVjdDEnOworLS1zZW5kCitJTlNFUlQgSU5UTyB0MSBWQUxVRVMoMywyKTsKKwor Y29ubmVjdGlvbiBkZWZhdWx0OworU0VUIERFQlVHX1NZTkM9J25vdyBXQUlUX0ZPUiBpbnNlcnQx JzsKKyMgdGhpcyBzaG91bGQgUy1sb2NrICgzLDEpOyBubyBjb25mbGljdAorU0VMRUNUICogRlJP TSB0MSBMT0NLIElOIFNIQVJFIE1PREU7CisjIHRoaXMgc2hvdWxkIFgtbG9jayAoMywxKSwgY29u ZmxpY3Rpbmcgd2l0aCBjb24xCistLXNlbmQKK1NFTEVDVCAqIEZST00gdDEgRk9SIFVQREFURTsK KworY29ubmVjdGlvbiBjb24yOworIyBDaGVjayB0aGF0IHRoZSBhYm92ZSBTRUxFQ1QgaXMgYmxv Y2tlZAorbGV0ICR3YWl0X2NvbmRpdGlvbj0KKyAgc2VsZWN0IGNvdW50KCopID0gMSBmcm9tIGlu Zm9ybWF0aW9uX3NjaGVtYS5wcm9jZXNzbGlzdAorICB3aGVyZSBzdGF0ZSA9ICdTZW5kaW5nIGRh dGEnIGFuZAorICAgICAgICBpbmZvID0gJ1NFTEVDVCAqIEZST00gdDEgRk9SIFVQREFURSc7Cist LXNvdXJjZSBpbmNsdWRlL3dhaXRfY29uZGl0aW9uLmluYworU0VUIERFQlVHX1NZTkM9J25vdyBT SUdOQUwgc2VsZWN0MSc7CisKK2Nvbm5lY3Rpb24gY29uMTsKKy0tZXJyb3IgRVJfRFVQX0VOVFJZ CityZWFwOworIyBXZSBhcmUgc3RpbGwgaG9sZGluZyBhbiBTLWxvY2sgb24gKDMsMSkgYWZ0ZXIg dGhlIGZhaWxlZCBJTlNFUlQuCisjIFRoZSBmb2xsb3dpbmcgd2lsbCB1cGdyYWRlIGl0IHRvIGFu IFgtbG9jaywgY2F1c2luZyBhIGRlYWRsb2NrLgorIyBJbm5vREIgc2hvdWxkIHJlc29sdmUgdGhl IGRlYWRsb2NrIGJ5IGFib3J0aW5nIHRoZSBibG9ja2VkIFNFTEVDVC4KK0lOU0VSVCBJTlRPIHQx IFZBTFVFUygzLDMpIE9OIERVUExJQ0FURSBLRVkgVVBEQVRFIGI9YisxMDsKKworY29ubmVjdGlv biBkZWZhdWx0OworLS1lcnJvciBFUl9MT0NLX0RFQURMT0NLCityZWFwOworY29ubmVjdGlvbiBj b24xOworQ09NTUlUOworCitTRVQgREVCVUdfU1lOQz0nd3JpdGVfcm93X3JlcGxhY2UgU0lHTkFM IGluc2VydDIgV0FJVF9GT1Igc2VsZWN0Mic7CistLXNlbmQKK1JFUExBQ0UgSU5UTyB0MSBWQUxV RVMoMyw0KTsKKworY29ubmVjdGlvbiBkZWZhdWx0OworU0VUIERFQlVHX1NZTkM9J25vdyBXQUlU X0ZPUiBpbnNlcnQyJzsKK1NFTEVDVCAqIEZST00gdDE7CistLXNlbmQKK1NFTEVDVCAqIEZST00g dDEgTE9DSyBJTiBTSEFSRSBNT0RFOworCitjb25uZWN0aW9uIGNvbjI7CisjIENoZWNrIHRoYXQg dGhlIGFib3ZlIFNFTEVDVCBpcyBibG9ja2VkIGJlY2F1c2Ugb2YgWCBsb2NrLgorbGV0ICR3YWl0 X2NvbmRpdGlvbj0KKyAgc2VsZWN0IGNvdW50KCopID0gMSBmcm9tIGluZm9ybWF0aW9uX3NjaGVt YS5wcm9jZXNzbGlzdAorICB3aGVyZSBzdGF0ZSA9ICdTZW5kaW5nIGRhdGEnIGFuZAorICAgICAg ICBpbmZvID0gJ1NFTEVDVCAqIEZST00gdDEgTE9DSyBJTiBTSEFSRSBNT0RFJzsKKy0tc291cmNl IGluY2x1ZGUvd2FpdF9jb25kaXRpb24uaW5jCitTRVQgREVCVUdfU1lOQz0nbm93IFNJR05BTCBz ZWxlY3QyJzsKKworY29ubmVjdGlvbiBjb24xOworcmVhcDsKKworU0VUIERFQlVHX1NZTkM9J3dy aXRlX3Jvd19yZXBsYWNlIFNJR05BTCBpbnNlcnQzIFdBSVRfRk9SIHNlbGVjdDMnOworLS1zZW5k CitJTlNFUlQgSU5UTyB0MSBWQUxVRVMoMyw1KSBPTiBEVVBMSUNBVEUgS0VZIFVQREFURSBiPWIr MjA7CisKK2Nvbm5lY3Rpb24gZGVmYXVsdDsKK3JlYXA7CitTRVQgREVCVUdfU1lOQz0nbm93IFdB SVRfRk9SIGluc2VydDMnOworLS1zZW5kCitTRUxFQ1QgYiBGUk9NIHQxIExPQ0sgSU4gU0hBUkUg TU9ERTsKKworY29ubmVjdGlvbiBjb24yOworIyBDaGVjayB0aGF0IHRoZSBhYm92ZSBTRUxFQ1Qg aXMgYmxvY2tlZCBiZWNhdXNlIG9mIFggbG9jay4KK2xldCAkd2FpdF9jb25kaXRpb249CisgIHNl bGVjdCBjb3VudCgqKSA9IDEgZnJvbSBpbmZvcm1hdGlvbl9zY2hlbWEucHJvY2Vzc2xpc3QKKyAg d2hlcmUgc3RhdGUgPSAnU2VuZGluZyBkYXRhJyBhbmQKKyAgICAgICAgaW5mbyA9ICdTRUxFQ1Qg YiBGUk9NIHQxIExPQ0sgSU4gU0hBUkUgTU9ERSc7CistLXNvdXJjZSBpbmNsdWRlL3dhaXRfY29u ZGl0aW9uLmluYworU0VUIERFQlVHX1NZTkM9J25vdyBTSUdOQUwgc2VsZWN0Myc7CisKK2Nvbm5l Y3Rpb24gZGVmYXVsdDsKK3JlYXA7CisKK2Nvbm5lY3Rpb24gY29uMTsKK3JlYXA7CitTRVQgREVC VUdfU1lOQz0nd3JpdGVfcm93X25vcmVwbGFjZSBTSUdOQUwgaW5zZXJ0NCBXQUlUX0ZPUiBzZWxl Y3Q0JzsKKy0tc2VuZAorTE9BRCBEQVRBIElORklMRSAnLi4vLi4vc3RkX2RhdGEvbG9hZGRhdGE1 LmRhdCcgSU5UTyBUQUJMRSB0MSBGSUVMRFMgVEVSTUlOQVRFRCBCWSAnJyBFTkNMT1NFRCBCWSAn JyAoYSwgYik7CisKK2Nvbm5lY3Rpb24gZGVmYXVsdDsKK1NFVCBERUJVR19TWU5DPSdub3cgV0FJ VF9GT1IgaW5zZXJ0NCc7CisjIHRoaXMgc2hvdWxkIFMtbG9jayAoMywxKTsgbm8gY29uZmxpY3QK K1NFTEVDVCBiIEZST00gdDEgV0hFUkUgYT0zIExPQ0sgSU4gU0hBUkUgTU9ERTsKKyMgdGhpcyBz aG91bGQgWC1sb2NrICgzLDEpLCBjb25mbGljdGluZyB3aXRoIGNvbjEKKy0tc2VuZAorU0VMRUNU IGIgRlJPTSB0MSBXSEVSRSBhPTMgRk9SIFVQREFURTsKKworY29ubmVjdGlvbiBjb24yOworIyBD aGVjayB0aGF0IHRoZSBhYm92ZSBTRUxFQ1QgaXMgYmxvY2tlZAorbGV0ICR3YWl0X2NvbmRpdGlv bj0KKyAgc2VsZWN0IGNvdW50KCopID0gMSBmcm9tIGluZm9ybWF0aW9uX3NjaGVtYS5wcm9jZXNz bGlzdAorICB3aGVyZSBzdGF0ZSA9ICdzdGF0aXN0aWNzJyBhbmQKKyAgICAgICAgaW5mbyA9ICdT RUxFQ1QgYiBGUk9NIHQxIFdIRVJFIGE9MyBGT1IgVVBEQVRFJzsKKy0tc291cmNlIGluY2x1ZGUv d2FpdF9jb25kaXRpb24uaW5jCitTRVQgREVCVUdfU1lOQz0nbm93IFNJR05BTCBzZWxlY3Q0JzsK KworY29ubmVjdGlvbiBkZWZhdWx0OworcmVhcDsKKworY29ubmVjdGlvbiBjb24xOworLS1lcnJv ciBFUl9EVVBfRU5UUlkKK3JlYXA7CitTRVQgREVCVUdfU1lOQz0nd3JpdGVfcm93X25vcmVwbGFj ZSBTSUdOQUwgaW5zZXJ0NSBXQUlUX0ZPUiBzZWxlY3Q1JzsKKy0tc2VuZAorTE9BRCBEQVRBIElO RklMRSAnLi4vLi4vc3RkX2RhdGEvbG9hZGRhdGE1LmRhdCcgSUdOT1JFIElOVE8gVEFCTEUgdDEg RklFTERTIFRFUk1JTkFURUQgQlkgJycgRU5DTE9TRUQgQlkgJycgKGEsIGIpOworCitjb25uZWN0 aW9uIGRlZmF1bHQ7CitTRVQgREVCVUdfU1lOQz0nbm93IFdBSVRfRk9SIGluc2VydDUnOworU0VM RUNUICogRlJPTSB0MTsKKyMgdGhpcyBzaG91bGQgUy1sb2NrOyBubyBjb25mbGljdAorU0VMRUNU ICogRlJPTSB0MSBXSEVSRSBhPTMgTE9DSyBJTiBTSEFSRSBNT0RFOworIyB0aGlzIHNob3VsZCBY LWxvY2ssIGNvbmZsaWN0aW5nIHdpdGggdGhlIFMtbG9jayBvZiB0aGUgSUdOT1JFIGluIGNvbjEK Ky0tc2VuZAorU0VMRUNUICogRlJPTSB0MSBXSEVSRSBhPTMgRk9SIFVQREFURTsKKworY29ubmVj dGlvbiBjb24yOworIyBDaGVjayB0aGF0IHRoZSBhYm92ZSBTRUxFQ1QgaXMgYmxvY2tlZAorbGV0 ICR3YWl0X2NvbmRpdGlvbj0KKyAgc2VsZWN0IGNvdW50KCopID0gMSBmcm9tIGluZm9ybWF0aW9u X3NjaGVtYS5wcm9jZXNzbGlzdAorICB3aGVyZSBzdGF0ZSA9ICdzdGF0aXN0aWNzJyBhbmQKKyAg ICAgICAgaW5mbyA9ICdTRUxFQ1QgKiBGUk9NIHQxIFdIRVJFIGE9MyBGT1IgVVBEQVRFJzsKKy0t c291cmNlIGluY2x1ZGUvd2FpdF9jb25kaXRpb24uaW5jCitTRVQgREVCVUdfU1lOQz0nbm93IFNJ R05BTCBzZWxlY3Q1JzsKKworY29ubmVjdGlvbiBjb24xOworcmVhcDsKK2Nvbm5lY3Rpb24gZGVm YXVsdDsKK3JlYXA7CisKK2Nvbm5lY3Rpb24gY29uMTsKK1NFVCBERUJVR19TWU5DPSd3cml0ZV9y b3dfcmVwbGFjZSBTSUdOQUwgaW5zZXJ0NiBXQUlUX0ZPUiBzZWxlY3Q2JzsKKy0tc2VuZAorTE9B RCBEQVRBIElORklMRSAnLi4vLi4vc3RkX2RhdGEvbG9hZGRhdGE1LmRhdCcgUkVQTEFDRSBJTlRP IFRBQkxFIHQxIEZJRUxEUyBURVJNSU5BVEVEIEJZICcnIEVOQ0xPU0VEIEJZICcnIChhLCBiKTsK KworY29ubmVjdGlvbiBkZWZhdWx0OworU0VUIERFQlVHX1NZTkM9J25vdyBXQUlUX0ZPUiBpbnNl cnQ2JzsKK1NFTEVDVCAqIEZST00gdDE7CisjIHRoaXMgc2hvdWxkIGNvbmZsaWN0IHdpdGggdGhl IFgtbG9jayBhY3F1aXJlZCBieSB0aGUgUkVQTEFDRQorLS1zZW5kCitTRUxFQ1QgYSxiIEZST00g dDEgTE9DSyBJTiBTSEFSRSBNT0RFOworCitjb25uZWN0aW9uIGNvbjI7CisjIENoZWNrIHRoYXQg dGhlIGFib3ZlIFNFTEVDVCBpcyBibG9ja2VkCitsZXQgJHdhaXRfY29uZGl0aW9uPQorICBzZWxl Y3QgY291bnQoKikgPSAxIGZyb20gaW5mb3JtYXRpb25fc2NoZW1hLnByb2Nlc3NsaXN0CisgIHdo ZXJlIHN0YXRlID0gJ1NlbmRpbmcgZGF0YScgYW5kCisgICAgICAgIGluZm8gPSAnU0VMRUNUIGEs YiBGUk9NIHQxIExPQ0sgSU4gU0hBUkUgTU9ERSc7CistLXNvdXJjZSBpbmNsdWRlL3dhaXRfY29u ZGl0aW9uLmluYworU0VUIERFQlVHX1NZTkM9J25vdyBTSUdOQUwgc2VsZWN0Nic7CisKK2Nvbm5l Y3Rpb24gY29uMTsKK3JlYXA7Citjb25uZWN0aW9uIGRlZmF1bHQ7CityZWFwOworCitkaXNjb25u ZWN0IGNvbjE7CitkaXNjb25uZWN0IGNvbjI7CisKK2Nvbm5lY3Rpb24gZGVmYXVsdDsKK1NFVCBE RUJVR19TWU5DPSdSRVNFVCc7CitEUk9QIFRBQkxFIHQxOwoKPT09IG1vZGlmaWVkIGZpbGUgJ3Nx bC9zcWxfaW5zZXJ0LmNjJwotLS0gYS9zcWwvc3FsX2luc2VydC5jYwlyZXZpZDpzZXJnZXkudm9q dG92aWNoQG9yYWNsZS5jb20tMjAxMTExMTAwOTUzMDgteDk5eHNudGU5MzExcGh1agorKysgYi9z cWwvc3FsX2luc2VydC5jYwlyZXZpZDptYXJrby5tYWtlbGFAb3JhY2xlLmNvbS0yMDExMTExMDEx MDg0Mi01ZHQ3MzJha3ZtZ2N6cnRlCkBAIC03Nyw2ICs3Nyw4IEBACiAjaW5jbHVkZSAidHJhbnNh Y3Rpb24uaCIKICNpbmNsdWRlICJzcWxfYXVkaXQuaCIKIAorI2luY2x1ZGUgImRlYnVnX3N5bmMu aCIKKwogI2lmbmRlZiBFTUJFRERFRF9MSUJSQVJZCiBzdGF0aWMgYm9vbCBkZWxheWVkX2dldF90 YWJsZShUSEQgKnRoZCwgTURMX3JlcXVlc3QgKmdybF9wcm90ZWN0aW9uX3JlcXVlc3QsCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBUQUJMRV9MSVNUICp0YWJsZV9saXN0KTsKQEAgLTE1 NDEsNiArMTU0Myw4IEBAIGludCB3cml0ZV9yZWNvcmQoVEhEICp0aGQsIFRBQkxFICp0YWJsZSwK IAllcnJvcj0gSEFfRVJSX0ZPVU5EX0RVUFBfS0VZOyAgICAgICAgIC8qIERhdGFiYXNlIGNhbid0 IGZpbmQga2V5ICovCiAJZ290byBlcnI7CiAgICAgICB9CisgICAgICBERUJVR19TWU5DKHRoZCwg IndyaXRlX3Jvd19yZXBsYWNlIik7CisKICAgICAgIC8qIFJlYWQgYWxsIGNvbHVtbnMgZm9yIHRo ZSByb3cgd2UgYXJlIGdvaW5nIHRvIHJlcGxhY2UgKi8KICAgICAgIHRhYmxlLT51c2VfYWxsX2Nv bHVtbnMoKTsKICAgICAgIC8qCkBAIC0xNzI5LDYgKzE3MzMsNyBAQCBpbnQgd3JpdGVfcmVjb3Jk KFRIRCAqdGhkLCBUQUJMRSAqdGFibGUsCiAgIH0KICAgZWxzZSBpZiAoKGVycm9yPXRhYmxlLT5m aWxlLT5oYV93cml0ZV9yb3codGFibGUtPnJlY29yZFswXSkpKQogICB7CisgICAgREVCVUdfU1lO Qyh0aGQsICJ3cml0ZV9yb3dfbm9yZXBsYWNlIik7CiAgICAgaWYgKCFpbmZvLT5pZ25vcmUgfHwK ICAgICAgICAgdGFibGUtPmZpbGUtPmlzX2ZhdGFsX2Vycm9yKGVycm9yLCBIQV9DSEVDS19EVVAp KQogICAgICAgZ290byBlcnI7Cgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9pbm5vYmFzZS9o YW5kbGVyL2hhX2lubm9kYi5jYycKLS0tIGEvc3RvcmFnZS9pbm5vYmFzZS9oYW5kbGVyL2hhX2lu bm9kYi5jYwlyZXZpZDpzZXJnZXkudm9qdG92aWNoQG9yYWNsZS5jb20tMjAxMTExMTAwOTUzMDgt eDk5eHNudGU5MzExcGh1agorKysgYi9zdG9yYWdlL2lubm9iYXNlL2hhbmRsZXIvaGFfaW5ub2Ri LmNjCXJldmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTExMTEwMTEwODQyLTVkdDczMmFr dm1nY3pydGUKQEAgLTUwNjMsOCArNTA2Myw3IEBAIG5vX2NvbW1pdDoKIAogCQkJc3dpdGNoIChz cWxfY29tbWFuZCkgewogCQkJY2FzZSBTUUxDT01fTE9BRDoKLQkJCQlpZiAoKHRyeC0+ZHVwbGlj YXRlcwotCQkJCSAgICAmIChUUlhfRFVQX0lHTk9SRSB8IFRSWF9EVVBfUkVQTEFDRSkpKSB7CisJ CQkJaWYgKHRyeC0+ZHVwbGljYXRlcykgewogCiAJCQkJCWdvdG8gc2V0X21heF9hdXRvaW5jOwog CQkJCX0KQEAgLTUzMzksOCArNTMzOCw3IEBAIGhhX2lubm9iYXNlOjp1cGRhdGVfcm93KAogCSAg ICAmJiB0YWJsZS0+bmV4dF9udW1iZXJfZmllbGQKIAkgICAgJiYgbmV3X3JvdyA9PSB0YWJsZS0+ cmVjb3JkWzBdCiAJICAgICYmIHRoZF9zcWxfY29tbWFuZCh1c2VyX3RoZCkgPT0gU1FMQ09NX0lO U0VSVAotCSAgICAmJiAodHJ4LT5kdXBsaWNhdGVzICYgKFRSWF9EVVBfSUdOT1JFIHwgVFJYX0RV UF9SRVBMQUNFKSkKLQkJPT0gVFJYX0RVUF9JR05PUkUpICB7CisJICAgICYmIHRyeC0+ZHVwbGlj YXRlcykgIHsKIAogCQl1bG9uZ2xvbmcJYXV0b19pbmM7CiAJCXVsb25nbG9uZwljb2xfbWF4X3Zh bHVlOwpAQCAtODg0NSw2ICs4ODQzLDcgQEAgaGFfaW5ub2Jhc2U6OmV4dHJhKAogCQkJYnJlYWs7 CiAJCWNhc2UgSEFfRVhUUkFfUkVTRVRfU1RBVEU6CiAJCQlyZXNldF90ZW1wbGF0ZShwcmVidWls dCk7CisJCQl0aGRfdG9fdHJ4KGhhX3RoZCgpKS0+ZHVwbGljYXRlcyA9IDA7CiAJCQlicmVhazsK IAkJY2FzZSBIQV9FWFRSQV9OT19LRVlSRUFEOgogCQkJcHJlYnVpbHQtPnJlYWRfanVzdF9rZXkg PSAwOwpAQCAtODg2MiwxOSArODg2MSwxOCBAQCBoYV9pbm5vYmFzZTo6ZXh0cmEoCiAJCQlwYXJh bWV0ZXJzIGJlbG93LiAgV2UgbXVzdCBub3QgaW52b2tlIHVwZGF0ZV90aGQoKQogCQkJZWl0aGVy LCBiZWNhdXNlIHRoZSBjYWxsaW5nIHRocmVhZHMgbWF5IGNoYW5nZS4KIAkJCUNBUkVGVUwgSEVS RSwgT1IgTUVNT1JZIENPUlJVUFRJT04gTUFZIE9DQ1VSISAqLwotCQljYXNlIEhBX0VYVFJBX0lH Tk9SRV9EVVBfS0VZOgorCQljYXNlIEhBX0VYVFJBX0lOU0VSVF9XSVRIX1VQREFURToKIAkJCXRo ZF90b190cngoaGFfdGhkKCkpLT5kdXBsaWNhdGVzIHw9IFRSWF9EVVBfSUdOT1JFOwogCQkJYnJl YWs7CisJCWNhc2UgSEFfRVhUUkFfTk9fSUdOT1JFX0RVUF9LRVk6CisJCQl0aGRfdG9fdHJ4KGhh X3RoZCgpKS0+ZHVwbGljYXRlcyAmPSB+VFJYX0RVUF9JR05PUkU7CisJCQlicmVhazsKIAkJY2Fz ZSBIQV9FWFRSQV9XUklURV9DQU5fUkVQTEFDRToKIAkJCXRoZF90b190cngoaGFfdGhkKCkpLT5k dXBsaWNhdGVzIHw9IFRSWF9EVVBfUkVQTEFDRTsKIAkJCWJyZWFrOwogCQljYXNlIEhBX0VYVFJB X1dSSVRFX0NBTk5PVF9SRVBMQUNFOgogCQkJdGhkX3RvX3RyeChoYV90aGQoKSktPmR1cGxpY2F0 ZXMgJj0gflRSWF9EVVBfUkVQTEFDRTsKIAkJCWJyZWFrOwotCQljYXNlIEhBX0VYVFJBX05PX0lH Tk9SRV9EVVBfS0VZOgotCQkJdGhkX3RvX3RyeChoYV90aGQoKSktPmR1cGxpY2F0ZXMgJj0KLQkJ CQl+KFRSWF9EVVBfSUdOT1JFIHwgVFJYX0RVUF9SRVBMQUNFKTsKLQkJCWJyZWFrOwogCQlkZWZh dWx0Oi8qIERvIG5vdGhpbmcgKi8KIAkJCTsKIAl9Cgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFn ZS9pbm5vYmFzZS9yb3cvcm93MGlucy5jJwotLS0gYS9zdG9yYWdlL2lubm9iYXNlL3Jvdy9yb3cw aW5zLmMJcmV2aWQ6c2VyZ2V5LnZvanRvdmljaEBvcmFjbGUuY29tLTIwMTExMTEwMDk1MzA4LXg5 OXhzbnRlOTMxMXBodWoKKysrIGIvc3RvcmFnZS9pbm5vYmFzZS9yb3cvcm93MGlucy5jCXJldmlk Om1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTExMTEwMTEwODQyLTVkdDczMmFrdm1nY3pydGUK QEAgLTE2NTIsNyArMTY1Miw3IEBAIHJvd19pbnNfc2Nhbl9zZWNfaW5kZXhfZm9yX2R1cGxpY2F0 ZSgKIAl1bGludAkJbl9maWVsZHNfY21wOwogCWJ0cl9wY3VyX3QJcGN1cjsKIAl1bGludAkJZXJy CQk9IERCX1NVQ0NFU1M7Ci0JdW5zaWduZWQJYWxsb3dfZHVwbGljYXRlczsKKwl1bGludAkJYWxs b3dfZHVwbGljYXRlczsKIAltdHJfdAkJbXRyOwogCW1lbV9oZWFwX3QqCWhlYXAJCT0gTlVMTDsK IAl1bGludAkJb2Zmc2V0c19bUkVDX09GRlNfTk9STUFMX1NJWkVdOwpAQCAtMTY4Myw3ICsxNjgz LDcgQEAgcm93X2luc19zY2FuX3NlY19pbmRleF9mb3JfZHVwbGljYXRlKAogCiAJYnRyX3BjdXJf b3BlbihpbmRleCwgZW50cnksIFBBR0VfQ1VSX0dFLCBCVFJfU0VBUkNIX0xFQUYsICZwY3VyLCAm bXRyKTsKIAotCWFsbG93X2R1cGxpY2F0ZXMgPSB0aHJfZ2V0X3RyeCh0aHIpLT5kdXBsaWNhdGVz ICYgVFJYX0RVUF9JR05PUkU7CisJYWxsb3dfZHVwbGljYXRlcyA9IHRocl9nZXRfdHJ4KHRocikt PmR1cGxpY2F0ZXM7CiAKIAkvKiBTY2FuIGluZGV4IHJlY29yZHMgYW5kIGNoZWNrIGlmIHRoZXJl IGlzIGEgZHVwbGljYXRlICovCiAKQEAgLTE4MTcsNyArMTgxNyw3IEBAIHJvd19pbnNfZHVwbGlj YXRlX2Vycm9yX2luX2NsdXN0KAogCQkJc3VyZSB0aGF0IGluIHJvbGwtZm9yd2FyZCB3ZSBnZXQg dGhlIHNhbWUgZHVwbGljYXRlCiAJCQllcnJvcnMgYXMgaW4gb3JpZ2luYWwgZXhlY3V0aW9uICov CiAKLQkJCWlmICh0cngtPmR1cGxpY2F0ZXMgJiBUUlhfRFVQX0lHTk9SRSkgeworCQkJaWYgKHRy eC0+ZHVwbGljYXRlcykgewogCiAJCQkJLyogSWYgdGhlIFNRTC1xdWVyeSB3aWxsIHVwZGF0ZSBv ciByZXBsYWNlCiAJCQkJZHVwbGljYXRlIGtleSB3ZSB3aWxsIHRha2UgWC1sb2NrIGZvcgpAQCAt MTg2MSw3ICsxODYxLDcgQEAgcm93X2luc19kdXBsaWNhdGVfZXJyb3JfaW5fY2x1c3QoCiAJCQlv ZmZzZXRzID0gcmVjX2dldF9vZmZzZXRzKHJlYywgY3Vyc29yLT5pbmRleCwgb2Zmc2V0cywKIAkJ CQkJCSAgVUxJTlRfVU5ERUZJTkVELCAmaGVhcCk7CiAKLQkJCWlmICh0cngtPmR1cGxpY2F0ZXMg JiBUUlhfRFVQX0lHTk9SRSkgeworCQkJaWYgKHRyeC0+ZHVwbGljYXRlcykgewogCiAJCQkJLyog SWYgdGhlIFNRTC1xdWVyeSB3aWxsIHVwZGF0ZSBvciByZXBsYWNlCiAJCQkJZHVwbGljYXRlIGtl eSB3ZSB3aWxsIHRha2UgWC1sb2NrIGZvcgoKTm8gYnVuZGxlIChyZWFzb246IHVzZWxlc3MgZm9y IHB1c2ggZW1haWxzKS4=