Return-Path: Received: from out01.mta.xmission.com ([166.70.13.231]:36316 "EHLO out01.mta.xmission.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752232AbbJAQXO (ORCPT ); Thu, 1 Oct 2015 12:23:14 -0400 From: ebiederm@xmission.com (Eric W. Biederman) To: Cc: Greg Kroah-Hartman , Sasha Levin , Jiri Slaby , Willy Tarreau , Li Zefan , Ben Hutchings Date: Thu, 01 Oct 2015 11:15:47 -0500 Message-ID: <87a8s2a7kc.fsf@x220.int.ebiederm.org> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Subject: [PATCHES] Bind mount escape fixes (CVE-2015-2925) Sender: stable-owner@vger.kernel.org List-ID: --=-=-= Content-Type: text/plain With a strategically placed rename bind mounts can be tricked into giving processes access to the entire filesystem instead of just a piece of it. This misfeature has existed since bind mounts were introduced into the kernel. This issue has been fixed in Linus's tree and below are my tested backports of the fixes to 4.2.1, 4.1.8, 3.18.21, 3.14.53, 3.12.48, 3.10.89, 3.4.109, 3.2.71, 2.6.32.68. All of the kernels currently listed as being active. The fixes backported are: cde93be45a8a90d8c264c776fab63487b5038a65 dcache: Handle escaped paths in prepend_path 397d425dc26da728396e66d392d5dcb8dac30c37 vfs: Test for and handle paths that are unreachable from their mnt_root As I backported the patches the logical work remained the same but the exact implemenation details changed to fit in with the vfs present in the older kernels. Minor changes were needed for every the backport to every kernel except 4.2.1. Please queue these changes for the appropriate stable trees. --=-=-= Content-Type: application/mbox Content-Disposition: attachment; filename=bind-4.2.mbox Content-Transfer-Encoding: base64 RnJvbSAxNDMwODFhMTNmMzFiY2YwNWNiNTY4NWY2MjhiNmZkYTY1ZDA1MjM3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiRXJpYyBXLiBCaWVkZXJtYW4iIDxlYmllZGVybUB4bWlzc2lv bi5jb20+CkRhdGU6IFNhdCwgMTUgQXVnIDIwMTUgMTM6MzY6MTIgLTA1MDAKU3ViamVjdDogW1BB VENIIDEvMl0gZGNhY2hlOiBIYW5kbGUgZXNjYXBlZCBwYXRocyBpbiBwcmVwZW5kX3BhdGgKCmNv bW1pdCBjZGU5M2JlNDVhOGE5MGQ4YzI2NGM3NzZmYWI2MzQ4N2I1MDM4YTY1IHVwc3RyZWFtLgoK QSByZW5hbWUgY2FuIHJlc3VsdCBpbiBhIGRlbnRyeSB0aGF0IGJ5IHdhbGtpbmcgdXAgZF9wYXJl bnQKd2lsbCBuZXZlciByZWFjaCBpdCdzIG1udF9yb290LiAgRm9yIGxhY2sgb2YgYSBiZXR0ZXIg dGVybQpJIGNhbGwgdGhpcyBhbiBlc2NhcGVkIHBhdGguCgpwcmVwZW5kX3BhdGggaXMgY2FsbGVk IGJ5IGZvdXIgZGlmZmVyZW50IGZ1bmN0aW9ucyBfX2RfcGF0aCwKZF9hYnNvbHV0ZV9wYXRoLCBk X3BhdGgsIGFuZCBnZXRjd2QuCgpfX2RfcGF0aCBvbmx5IHdhbnRzIHRvIHNlZSBwYXRocyBhcmUg Y29ubmVjdGVkIHRvIHRoZSByb290IGl0IHBhc3Nlcwppbi4gIFNvIF9fZF9wYXRoIG5lZWRzIHBy ZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3IuCgpkX2Fic29sdXRlX3BhdGggc2ltaWxhcmx5 IHdhbnRzIHRvIHNlZSBwYXRocyB0aGF0IGFyZSBjb25uZWN0ZWQgdG8Kc29tZSByb290LiAgRXNj YXBlZCBwYXRocyBhcmUgbm90IGNvbm5lY3RlZCB0byBhbnkgbW50X3Jvb3Qgc28KZF9hYnNvbHV0 ZV9wYXRoIG5lZWRzIHByZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3IgZ3JlYXRlcgp0aGFu IDEuICBTbyBlc2NhcGVkIHBhdGhzIHdpbGwgYmUgdHJlYXRlZCBsaWtlIHBhdGhzIG9uIGxhemls eQp1bm1vdW50ZWQgbW91bnRzLgoKZ2V0Y3dkIG5lZWRzIHRvIHByZXBlbmQgIih1bnJlYWNoYWJs ZSkiIHNvIGdldGN3ZCBhbHNvIG5lZWRzCnByZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3Iu CgpkX3BhdGggaXMgdGhlIGludGVyZXN0aW5nIGhvbGQgb3V0LiAgZF9wYXRoIGp1c3Qgd2FudHMg dG8gcHJpbnQKc29tZXRoaW5nLCBhbmQgZG9lcyBub3QgY2FyZSBhYm91dCB0aGUgd2VpcmQgY2Fz ZXMuICBXaGljaCByYWlzZXMKdGhlIHF1ZXN0aW9uIHdoYXQgc2hvdWxkIGJlIHByaW50ZWQ/CgpH aXZlbiB0aGF0IDxlc2NhcGVkX3BhdGg+Lzxhbnl0aGluZz4gc2hvdWxkIHJlc3VsdCBpbiAtRU5P RU5UIEkKYmVsaWV2ZSBpdCBpcyBkZXNpcmFibGUgZm9yIGVzY2FwZWQgcGF0aHMgdG8gYmUgcHJp bnRlZCBhcyBlbXB0eQpwYXRocy4gIEFzIHRoZXJlIGFyZSBub3QgcmVhbGx5IGFueSBtZWFuaW5m dWwgcGF0aCBjb21wb25lbnRzIHdoZW4KY29uc2lkZXJlZCBmcm9tIHRoZSBwZXJzcGVjdGl2ZSBv ZiBhIG1vdW50IHRyZWUuCgpTbyB0d2VhayBwcmVwZW5kX3BhdGggdG8gcmV0dXJuIGFuIGVtcHR5 IHBhdGggd2l0aCBhbiBuZXcgZXJyb3IKY29kZSBvZiAzIHdoZW4gaXQgZW5jb3VudGVycyBhbiBl c2NhcGVkIHBhdGguCgpTaWduZWQtb2ZmLWJ5OiAiRXJpYyBXLiBCaWVkZXJtYW4iIDxlYmllZGVy bUB4bWlzc2lvbi5jb20+ClNpZ25lZC1vZmYtYnk6IEFsIFZpcm8gPHZpcm9AemVuaXYubGludXgu b3JnLnVrPgotLS0KIGZzL2RjYWNoZS5jIHwgNyArKysrKysrCiAxIGZpbGUgY2hhbmdlZCwgNyBp bnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZnMvZGNhY2hlLmMgYi9mcy9kY2FjaGUuYwppbmRl eCA5YjVmZTUwM2Y2Y2IuLmUzYjQ0Y2E3NWExYiAxMDA2NDQKLS0tIGEvZnMvZGNhY2hlLmMKKysr IGIvZnMvZGNhY2hlLmMKQEAgLTI5MjYsNiArMjkyNiwxMyBAQCByZXN0YXJ0OgogCiAJCWlmIChk ZW50cnkgPT0gdmZzbW50LT5tbnRfcm9vdCB8fCBJU19ST09UKGRlbnRyeSkpIHsKIAkJCXN0cnVj dCBtb3VudCAqcGFyZW50ID0gQUNDRVNTX09OQ0UobW50LT5tbnRfcGFyZW50KTsKKwkJCS8qIEVz Y2FwZWQ/ICovCisJCQlpZiAoZGVudHJ5ICE9IHZmc21udC0+bW50X3Jvb3QpIHsKKwkJCQlicHRy ID0gKmJ1ZmZlcjsKKwkJCQlibGVuID0gKmJ1ZmxlbjsKKwkJCQllcnJvciA9IDM7CisJCQkJYnJl YWs7CisJCQl9CiAJCQkvKiBHbG9iYWwgcm9vdD8gKi8KIAkJCWlmIChtbnQgIT0gcGFyZW50KSB7 CiAJCQkJZGVudHJ5ID0gQUNDRVNTX09OQ0UobW50LT5tbnRfbW91bnRwb2ludCk7Ci0tIAoyLjIu MQoKCkZyb20gNzAxY2YyMDZkNzZhZjI0ZmM5NDhiM2E3OThjNGVlNmI3ZjE0OTkxMCBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkVyaWMgVy4gQmllZGVybWFuIiA8ZWJpZWRlcm1AeG1p c3Npb24uY29tPgpEYXRlOiBTYXQsIDE1IEF1ZyAyMDE1IDIwOjI3OjEzIC0wNTAwClN1YmplY3Q6 IFtQQVRDSCAyLzJdIHZmczogVGVzdCBmb3IgYW5kIGhhbmRsZSBwYXRocyB0aGF0IGFyZSB1bnJl YWNoYWJsZSBmcm9tCiB0aGVpciBtbnRfcm9vdAoKY29tbWl0IDM5N2Q0MjVkYzI2ZGE3MjgzOTZl NjZkMzkyZDVkY2I4ZGFjMzBjMzcgdXBzdHJlYW0uCgpJbiByYXJlIGNhc2VzIGEgZGlyZWN0b3J5 IGNhbiBiZSByZW5hbWVkIG91dCBmcm9tIHVuZGVyIGEgYmluZCBtb3VudC4KSW4gdGhvc2UgY2Fz ZXMgd2l0aG91dCBzcGVjaWFsIGhhbmRsaW5nIGl0IGJlY29tZXMgcG9zc2libGUgdG8gd2FsayB1 cAp0aGUgZGlyZWN0b3J5IHRyZWUgdG8gdGhlIHJvb3QgZGVudHJ5IG9mIHRoZSBmaWxlc3lzdGVt IGFuZCBkb3duCmZyb20gdGhlIHJvb3QgZGVudHJ5IHRvIGV2ZXJ5IG90aGVyIGZpbGUgb3IgZGly ZWN0b3J5IG9uIHRoZSBmaWxlc3lzdGVtLgoKTGlrZSBkaXZpc2lvbiBieSB6ZXJvIC4uIGZyb20g YW4gdW5jb25uZWN0ZWQgcGF0aCBjYW4gbm90IGJlIGdpdmVuCmEgdXNlZnVsIHNlbWFudGljIGFz IHRoZXJlIGlzIG5vIHByZWRpY3RpbmcgYXQgd2hpY2ggcGF0aCBjb21wb25lbnQKdGhlIGNvZGUg d2lsbCByZWFsaXplIGl0IGlzIHVuY29ubmVjdGVkLiAgV2UgY2VydGFpbmx5IGNhbiBub3QgbWF0 Y2gKdGhlIGN1cnJlbnQgYmVoYXZpb3IgYXMgdGhlIGN1cnJlbnQgYmVoYXZpb3IgaXMgYSBzZWN1 cml0eSBob2xlLgoKVGhlcmVmb3JlIHdoZW4gZW5jb3VudGluZyAuLiB3aGVuIGZvbGxvd2luZyBh biB1bmNvbm5lY3RlZCBwYXRoCnJldHVybiAtRU5PRU5ULgoKLSBBZGQgYSBmdW5jdGlvbiBwYXRo X2Nvbm5lY3RlZCB0byB2ZXJpZnkgcGF0aC0+ZGVudHJ5IGlzIHJlYWNoYWJsZQogIGZyb20gcGF0 aC0+bW50Lm1udF9yb290LiAgQUtBIHRvIHZhbGlkYXRlIHRoYXQgcmVuYW1lIGRpZCBub3QgZG8K ICBzb21ldGhpbmcgbmFzdHkgdG8gdGhlIGJpbmQgbW91bnQuCgogIFRvIGF2b2lkIHJhY2VzIHBh dGhfY29ubmVjdGVkIG11c3QgYmUgY2FsbGVkIGFmdGVyIGZvbGxvd2luZyBhIHBhdGgKICBjb21w b25lbnQgdG8gaXQncyBuZXh0IHBhdGggY29tcG9uZW50LgoKU2lnbmVkLW9mZi1ieTogIkVyaWMg Vy4gQmllZGVybWFuIiA8ZWJpZWRlcm1AeG1pc3Npb24uY29tPgpTaWduZWQtb2ZmLWJ5OiBBbCBW aXJvIDx2aXJvQHplbml2LmxpbnV4Lm9yZy51az4KLS0tCiBmcy9uYW1laS5jIHwgMjcgKysrKysr KysrKysrKysrKysrKysrKysrKy0tCiAxIGZpbGUgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKSwg MiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9mcy9uYW1laS5jIGIvZnMvbmFtZWkuYwppbmRl eCAxYzIxMDVlZDIwYzUuLjI5YjkyNzkzOGI4YyAxMDA2NDQKLS0tIGEvZnMvbmFtZWkuYworKysg Yi9mcy9uYW1laS5jCkBAIC01NjAsNiArNTYwLDI0IEBAIHN0YXRpYyBpbnQgX19uZF9hbGxvY19z dGFjayhzdHJ1Y3QgbmFtZWlkYXRhICpuZCkKIAlyZXR1cm4gMDsKIH0KIAorLyoqCisgKiBwYXRo X2Nvbm5lY3RlZCAtIFZlcmlmeSB0aGF0IGEgcGF0aC0+ZGVudHJ5IGlzIGJlbG93IHBhdGgtPm1u dC5tbnRfcm9vdAorICogQHBhdGg6IG5hbWVpZGF0ZSB0byB2ZXJpZnkKKyAqCisgKiBSZW5hbWUg Y2FuIHNvbWV0aW1lcyBtb3ZlIGEgZmlsZSBvciBkaXJlY3Rvcnkgb3V0c2lkZSBvZiBhIGJpbmQK KyAqIG1vdW50LCBwYXRoX2Nvbm5lY3RlZCBhbGxvd3MgdGhvc2UgY2FzZXMgdG8gYmUgZGV0ZWN0 ZWQuCisgKi8KK3N0YXRpYyBib29sIHBhdGhfY29ubmVjdGVkKGNvbnN0IHN0cnVjdCBwYXRoICpw YXRoKQoreworCXN0cnVjdCB2ZnNtb3VudCAqbW50ID0gcGF0aC0+bW50OworCisJLyogT25seSBi aW5kIG1vdW50cyBjYW4gaGF2ZSBkaXNjb25uZWN0ZWQgcGF0aHMgKi8KKwlpZiAobW50LT5tbnRf cm9vdCA9PSBtbnQtPm1udF9zYi0+c19yb290KQorCQlyZXR1cm4gdHJ1ZTsKKworCXJldHVybiBp c19zdWJkaXIocGF0aC0+ZGVudHJ5LCBtbnQtPm1udF9yb290KTsKK30KKwogc3RhdGljIGlubGlu ZSBpbnQgbmRfYWxsb2Nfc3RhY2soc3RydWN0IG5hbWVpZGF0YSAqbmQpCiB7CiAJaWYgKGxpa2Vs eShuZC0+ZGVwdGggIT0gRU1CRURERURfTEVWRUxTKSkKQEAgLTEyOTYsNiArMTMxNCw4IEBAIHN0 YXRpYyBpbnQgZm9sbG93X2RvdGRvdF9yY3Uoc3RydWN0IG5hbWVpZGF0YSAqbmQpCiAJCQkJcmV0 dXJuIC1FQ0hJTEQ7CiAJCQluZC0+cGF0aC5kZW50cnkgPSBwYXJlbnQ7CiAJCQluZC0+c2VxID0g c2VxOworCQkJaWYgKHVubGlrZWx5KCFwYXRoX2Nvbm5lY3RlZCgmbmQtPnBhdGgpKSkKKwkJCQly ZXR1cm4gLUVOT0VOVDsKIAkJCWJyZWFrOwogCQl9IGVsc2UgewogCQkJc3RydWN0IG1vdW50ICpt bnQgPSByZWFsX21vdW50KG5kLT5wYXRoLm1udCk7CkBAIC0xMzk2LDcgKzE0MTYsNyBAQCBzdGF0 aWMgdm9pZCBmb2xsb3dfbW91bnQoc3RydWN0IHBhdGggKnBhdGgpCiAJfQogfQogCi1zdGF0aWMg dm9pZCBmb2xsb3dfZG90ZG90KHN0cnVjdCBuYW1laWRhdGEgKm5kKQorc3RhdGljIGludCBmb2xs b3dfZG90ZG90KHN0cnVjdCBuYW1laWRhdGEgKm5kKQogewogCWlmICghbmQtPnJvb3QubW50KQog CQlzZXRfcm9vdChuZCk7CkBAIC0xNDEyLDYgKzE0MzIsOCBAQCBzdGF0aWMgdm9pZCBmb2xsb3df ZG90ZG90KHN0cnVjdCBuYW1laWRhdGEgKm5kKQogCQkJLyogcmFyZSBjYXNlIG9mIGxlZ2l0aW1h dGUgZGdldF9wYXJlbnQoKS4uLiAqLwogCQkJbmQtPnBhdGguZGVudHJ5ID0gZGdldF9wYXJlbnQo bmQtPnBhdGguZGVudHJ5KTsKIAkJCWRwdXQob2xkKTsKKwkJCWlmICh1bmxpa2VseSghcGF0aF9j b25uZWN0ZWQoJm5kLT5wYXRoKSkpCisJCQkJcmV0dXJuIC1FTk9FTlQ7CiAJCQlicmVhazsKIAkJ fQogCQlpZiAoIWZvbGxvd191cCgmbmQtPnBhdGgpKQpAQCAtMTQxOSw2ICsxNDQxLDcgQEAgc3Rh dGljIHZvaWQgZm9sbG93X2RvdGRvdChzdHJ1Y3QgbmFtZWlkYXRhICpuZCkKIAl9CiAJZm9sbG93 X21vdW50KCZuZC0+cGF0aCk7CiAJbmQtPmlub2RlID0gbmQtPnBhdGguZGVudHJ5LT5kX2lub2Rl OworCXJldHVybiAwOwogfQogCiAvKgpAQCAtMTYzNCw3ICsxNjU3LDcgQEAgc3RhdGljIGlubGlu ZSBpbnQgaGFuZGxlX2RvdHMoc3RydWN0IG5hbWVpZGF0YSAqbmQsIGludCB0eXBlKQogCQlpZiAo bmQtPmZsYWdzICYgTE9PS1VQX1JDVSkgewogCQkJcmV0dXJuIGZvbGxvd19kb3Rkb3RfcmN1KG5k KTsKIAkJfSBlbHNlCi0JCQlmb2xsb3dfZG90ZG90KG5kKTsKKwkJCXJldHVybiBmb2xsb3dfZG90 ZG90KG5kKTsKIAl9CiAJcmV0dXJuIDA7CiB9Ci0tIAoyLjIuMQoK --=-=-= Content-Type: application/mbox Content-Disposition: attachment; filename=bind-4.1.mbox Content-Transfer-Encoding: base64 RnJvbSA1NjAzMjM4ODIxNTQxYmIwZDRiMzQ1NWYxNDNhZGM4ODM0YTFjNDJmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiRXJpYyBXLiBCaWVkZXJtYW4iIDxlYmllZGVybUB4bWlzc2lv bi5jb20+CkRhdGU6IFNhdCwgMTUgQXVnIDIwMTUgMTM6MzY6MTIgLTA1MDAKU3ViamVjdDogW1BB VENIIDEvMl0gZGNhY2hlOiBIYW5kbGUgZXNjYXBlZCBwYXRocyBpbiBwcmVwZW5kX3BhdGgKCmNv bW1pdCBjZGU5M2JlNDVhOGE5MGQ4YzI2NGM3NzZmYWI2MzQ4N2I1MDM4YTY1IHVwc3RyZWFtLgoK QSByZW5hbWUgY2FuIHJlc3VsdCBpbiBhIGRlbnRyeSB0aGF0IGJ5IHdhbGtpbmcgdXAgZF9wYXJl bnQKd2lsbCBuZXZlciByZWFjaCBpdCdzIG1udF9yb290LiAgRm9yIGxhY2sgb2YgYSBiZXR0ZXIg dGVybQpJIGNhbGwgdGhpcyBhbiBlc2NhcGVkIHBhdGguCgpwcmVwZW5kX3BhdGggaXMgY2FsbGVk IGJ5IGZvdXIgZGlmZmVyZW50IGZ1bmN0aW9ucyBfX2RfcGF0aCwKZF9hYnNvbHV0ZV9wYXRoLCBk X3BhdGgsIGFuZCBnZXRjd2QuCgpfX2RfcGF0aCBvbmx5IHdhbnRzIHRvIHNlZSBwYXRocyBhcmUg Y29ubmVjdGVkIHRvIHRoZSByb290IGl0IHBhc3Nlcwppbi4gIFNvIF9fZF9wYXRoIG5lZWRzIHBy ZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3IuCgpkX2Fic29sdXRlX3BhdGggc2ltaWxhcmx5 IHdhbnRzIHRvIHNlZSBwYXRocyB0aGF0IGFyZSBjb25uZWN0ZWQgdG8Kc29tZSByb290LiAgRXNj YXBlZCBwYXRocyBhcmUgbm90IGNvbm5lY3RlZCB0byBhbnkgbW50X3Jvb3Qgc28KZF9hYnNvbHV0 ZV9wYXRoIG5lZWRzIHByZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3IgZ3JlYXRlcgp0aGFu IDEuICBTbyBlc2NhcGVkIHBhdGhzIHdpbGwgYmUgdHJlYXRlZCBsaWtlIHBhdGhzIG9uIGxhemls eQp1bm1vdW50ZWQgbW91bnRzLgoKZ2V0Y3dkIG5lZWRzIHRvIHByZXBlbmQgIih1bnJlYWNoYWJs ZSkiIHNvIGdldGN3ZCBhbHNvIG5lZWRzCnByZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3Iu CgpkX3BhdGggaXMgdGhlIGludGVyZXN0aW5nIGhvbGQgb3V0LiAgZF9wYXRoIGp1c3Qgd2FudHMg dG8gcHJpbnQKc29tZXRoaW5nLCBhbmQgZG9lcyBub3QgY2FyZSBhYm91dCB0aGUgd2VpcmQgY2Fz ZXMuICBXaGljaCByYWlzZXMKdGhlIHF1ZXN0aW9uIHdoYXQgc2hvdWxkIGJlIHByaW50ZWQ/CgpH aXZlbiB0aGF0IDxlc2NhcGVkX3BhdGg+Lzxhbnl0aGluZz4gc2hvdWxkIHJlc3VsdCBpbiAtRU5P RU5UIEkKYmVsaWV2ZSBpdCBpcyBkZXNpcmFibGUgZm9yIGVzY2FwZWQgcGF0aHMgdG8gYmUgcHJp bnRlZCBhcyBlbXB0eQpwYXRocy4gIEFzIHRoZXJlIGFyZSBub3QgcmVhbGx5IGFueSBtZWFuaW5m dWwgcGF0aCBjb21wb25lbnRzIHdoZW4KY29uc2lkZXJlZCBmcm9tIHRoZSBwZXJzcGVjdGl2ZSBv ZiBhIG1vdW50IHRyZWUuCgpTbyB0d2VhayBwcmVwZW5kX3BhdGggdG8gcmV0dXJuIGFuIGVtcHR5 IHBhdGggd2l0aCBhbiBuZXcgZXJyb3IKY29kZSBvZiAzIHdoZW4gaXQgZW5jb3VudGVycyBhbiBl c2NhcGVkIHBhdGguCgpTaWduZWQtb2ZmLWJ5OiAiRXJpYyBXLiBCaWVkZXJtYW4iIDxlYmllZGVy bUB4bWlzc2lvbi5jb20+ClNpZ25lZC1vZmYtYnk6IEFsIFZpcm8gPHZpcm9AemVuaXYubGludXgu b3JnLnVrPgotLS0KIGZzL2RjYWNoZS5jIHwgNyArKysrKysrCiAxIGZpbGUgY2hhbmdlZCwgNyBp bnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZnMvZGNhY2hlLmMgYi9mcy9kY2FjaGUuYwppbmRl eCA1ZDAzZWIwZWMwYWMuLjJlOGRkYzFkMDllOSAxMDA2NDQKLS0tIGEvZnMvZGNhY2hlLmMKKysr IGIvZnMvZGNhY2hlLmMKQEAgLTI5MjMsNiArMjkyMywxMyBAQCByZXN0YXJ0OgogCiAJCWlmIChk ZW50cnkgPT0gdmZzbW50LT5tbnRfcm9vdCB8fCBJU19ST09UKGRlbnRyeSkpIHsKIAkJCXN0cnVj dCBtb3VudCAqcGFyZW50ID0gQUNDRVNTX09OQ0UobW50LT5tbnRfcGFyZW50KTsKKwkJCS8qIEVz Y2FwZWQ/ICovCisJCQlpZiAoZGVudHJ5ICE9IHZmc21udC0+bW50X3Jvb3QpIHsKKwkJCQlicHRy ID0gKmJ1ZmZlcjsKKwkJCQlibGVuID0gKmJ1ZmxlbjsKKwkJCQllcnJvciA9IDM7CisJCQkJYnJl YWs7CisJCQl9CiAJCQkvKiBHbG9iYWwgcm9vdD8gKi8KIAkJCWlmIChtbnQgIT0gcGFyZW50KSB7 CiAJCQkJZGVudHJ5ID0gQUNDRVNTX09OQ0UobW50LT5tbnRfbW91bnRwb2ludCk7Ci0tIAoyLjIu MQoKCkZyb20gYzQwMWExNWRiNzdmMWEwYTdiZmZiNzk2NTBhNzQ5ZDIzYjMxMjI2ZiBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkVyaWMgVy4gQmllZGVybWFuIiA8ZWJpZWRlcm1AeG1p c3Npb24uY29tPgpEYXRlOiBTYXQsIDE1IEF1ZyAyMDE1IDIwOjI3OjEzIC0wNTAwClN1YmplY3Q6 IFtQQVRDSCAyLzJdIHZmczogVGVzdCBmb3IgYW5kIGhhbmRsZSBwYXRocyB0aGF0IGFyZSB1bnJl YWNoYWJsZSBmcm9tCiB0aGVpciBtbnRfcm9vdAoKY29tbWl0IDM5N2Q0MjVkYzI2ZGE3MjgzOTZl NjZkMzkyZDVkY2I4ZGFjMzBjMzcgdXBzdHJlYW0uCgpJbiByYXJlIGNhc2VzIGEgZGlyZWN0b3J5 IGNhbiBiZSByZW5hbWVkIG91dCBmcm9tIHVuZGVyIGEgYmluZCBtb3VudC4KSW4gdGhvc2UgY2Fz ZXMgd2l0aG91dCBzcGVjaWFsIGhhbmRsaW5nIGl0IGJlY29tZXMgcG9zc2libGUgdG8gd2FsayB1 cAp0aGUgZGlyZWN0b3J5IHRyZWUgdG8gdGhlIHJvb3QgZGVudHJ5IG9mIHRoZSBmaWxlc3lzdGVt IGFuZCBkb3duCmZyb20gdGhlIHJvb3QgZGVudHJ5IHRvIGV2ZXJ5IG90aGVyIGZpbGUgb3IgZGly ZWN0b3J5IG9uIHRoZSBmaWxlc3lzdGVtLgoKTGlrZSBkaXZpc2lvbiBieSB6ZXJvIC4uIGZyb20g YW4gdW5jb25uZWN0ZWQgcGF0aCBjYW4gbm90IGJlIGdpdmVuCmEgdXNlZnVsIHNlbWFudGljIGFz IHRoZXJlIGlzIG5vIHByZWRpY3RpbmcgYXQgd2hpY2ggcGF0aCBjb21wb25lbnQKdGhlIGNvZGUg d2lsbCByZWFsaXplIGl0IGlzIHVuY29ubmVjdGVkLiAgV2UgY2VydGFpbmx5IGNhbiBub3QgbWF0 Y2gKdGhlIGN1cnJlbnQgYmVoYXZpb3IgYXMgdGhlIGN1cnJlbnQgYmVoYXZpb3IgaXMgYSBzZWN1 cml0eSBob2xlLgoKVGhlcmVmb3JlIHdoZW4gZW5jb3VudGluZyAuLiB3aGVuIGZvbGxvd2luZyBh biB1bmNvbm5lY3RlZCBwYXRoCnJldHVybiAtRU5PRU5ULgoKLSBBZGQgYSBmdW5jdGlvbiBwYXRo X2Nvbm5lY3RlZCB0byB2ZXJpZnkgcGF0aC0+ZGVudHJ5IGlzIHJlYWNoYWJsZQogIGZyb20gcGF0 aC0+bW50Lm1udF9yb290LiAgQUtBIHRvIHZhbGlkYXRlIHRoYXQgcmVuYW1lIGRpZCBub3QgZG8K ICBzb21ldGhpbmcgbmFzdHkgdG8gdGhlIGJpbmQgbW91bnQuCgogIFRvIGF2b2lkIHJhY2VzIHBh dGhfY29ubmVjdGVkIG11c3QgYmUgY2FsbGVkIGFmdGVyIGZvbGxvd2luZyBhIHBhdGgKICBjb21w b25lbnQgdG8gaXQncyBuZXh0IHBhdGggY29tcG9uZW50LgoKU2lnbmVkLW9mZi1ieTogIkVyaWMg Vy4gQmllZGVybWFuIiA8ZWJpZWRlcm1AeG1pc3Npb24uY29tPgpTaWduZWQtb2ZmLWJ5OiBBbCBW aXJvIDx2aXJvQHplbml2LmxpbnV4Lm9yZy51az4KLS0tCiBmcy9uYW1laS5jIHwgMzEgKysrKysr KysrKysrKysrKysrKysrKysrKysrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDI4IGluc2VydGlvbnMo KyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZnMvbmFtZWkuYyBiL2ZzL25hbWVpLmMK aW5kZXggZmUzMGQzYmU0M2E4Li5hY2RhYjYxMDUyMWIgMTAwNjQ0Ci0tLSBhL2ZzL25hbWVpLmMK KysrIGIvZnMvbmFtZWkuYwpAQCAtNTA1LDYgKzUwNSwyNCBAQCBzdHJ1Y3QgbmFtZWlkYXRhIHsK IAljaGFyICpzYXZlZF9uYW1lc1tNQVhfTkVTVEVEX0xJTktTICsgMV07CiB9OwogCisvKioKKyAq IHBhdGhfY29ubmVjdGVkIC0gVmVyaWZ5IHRoYXQgYSBwYXRoLT5kZW50cnkgaXMgYmVsb3cgcGF0 aC0+bW50Lm1udF9yb290CisgKiBAcGF0aDogbmFtZWlkYXRlIHRvIHZlcmlmeQorICoKKyAqIFJl bmFtZSBjYW4gc29tZXRpbWVzIG1vdmUgYSBmaWxlIG9yIGRpcmVjdG9yeSBvdXRzaWRlIG9mIGEg YmluZAorICogbW91bnQsIHBhdGhfY29ubmVjdGVkIGFsbG93cyB0aG9zZSBjYXNlcyB0byBiZSBk ZXRlY3RlZC4KKyAqLworc3RhdGljIGJvb2wgcGF0aF9jb25uZWN0ZWQoY29uc3Qgc3RydWN0IHBh dGggKnBhdGgpCit7CisJc3RydWN0IHZmc21vdW50ICptbnQgPSBwYXRoLT5tbnQ7CisKKwkvKiBP bmx5IGJpbmQgbW91bnRzIGNhbiBoYXZlIGRpc2Nvbm5lY3RlZCBwYXRocyAqLworCWlmIChtbnQt Pm1udF9yb290ID09IG1udC0+bW50X3NiLT5zX3Jvb3QpCisJCXJldHVybiB0cnVlOworCisJcmV0 dXJuIGlzX3N1YmRpcihwYXRoLT5kZW50cnksIG1udC0+bW50X3Jvb3QpOworfQorCiAvKgogICog UGF0aCB3YWxraW5nIGhhcyAyIG1vZGVzLCByY3Utd2FsayBhbmQgcmVmLXdhbGsgKHNlZQogICog RG9jdW1lbnRhdGlvbi9maWxlc3lzdGVtcy9wYXRoLWxvb2t1cC50eHQpLiAgSW4gc2l0dWF0aW9u cyB3aGVuIHdlIGNhbid0CkBAIC0xMTk0LDYgKzEyMTIsOCBAQCBzdGF0aWMgaW50IGZvbGxvd19k b3Rkb3RfcmN1KHN0cnVjdCBuYW1laWRhdGEgKm5kKQogCQkJCWdvdG8gZmFpbGVkOwogCQkJbmQt PnBhdGguZGVudHJ5ID0gcGFyZW50OwogCQkJbmQtPnNlcSA9IHNlcTsKKwkJCWlmICh1bmxpa2Vs eSghcGF0aF9jb25uZWN0ZWQoJm5kLT5wYXRoKSkpCisJCQkJZ290byBmYWlsZWQ7CiAJCQlicmVh azsKIAkJfQogCQlpZiAoIWZvbGxvd191cF9yY3UoJm5kLT5wYXRoKSkKQEAgLTEyOTAsNyArMTMx MCw3IEBAIHN0YXRpYyB2b2lkIGZvbGxvd19tb3VudChzdHJ1Y3QgcGF0aCAqcGF0aCkKIAl9CiB9 CiAKLXN0YXRpYyB2b2lkIGZvbGxvd19kb3Rkb3Qoc3RydWN0IG5hbWVpZGF0YSAqbmQpCitzdGF0 aWMgaW50IGZvbGxvd19kb3Rkb3Qoc3RydWN0IG5hbWVpZGF0YSAqbmQpCiB7CiAJaWYgKCFuZC0+ cm9vdC5tbnQpCiAJCXNldF9yb290KG5kKTsKQEAgLTEzMDYsNiArMTMyNiwxMCBAQCBzdGF0aWMg dm9pZCBmb2xsb3dfZG90ZG90KHN0cnVjdCBuYW1laWRhdGEgKm5kKQogCQkJLyogcmFyZSBjYXNl IG9mIGxlZ2l0aW1hdGUgZGdldF9wYXJlbnQoKS4uLiAqLwogCQkJbmQtPnBhdGguZGVudHJ5ID0g ZGdldF9wYXJlbnQobmQtPnBhdGguZGVudHJ5KTsKIAkJCWRwdXQob2xkKTsKKwkJCWlmICh1bmxp a2VseSghcGF0aF9jb25uZWN0ZWQoJm5kLT5wYXRoKSkpIHsKKwkJCQlwYXRoX3B1dCgmbmQtPnBh dGgpOworCQkJCXJldHVybiAtRU5PRU5UOworCQkJfQogCQkJYnJlYWs7CiAJCX0KIAkJaWYgKCFm b2xsb3dfdXAoJm5kLT5wYXRoKSkKQEAgLTEzMTMsNiArMTMzNyw3IEBAIHN0YXRpYyB2b2lkIGZv bGxvd19kb3Rkb3Qoc3RydWN0IG5hbWVpZGF0YSAqbmQpCiAJfQogCWZvbGxvd19tb3VudCgmbmQt PnBhdGgpOwogCW5kLT5pbm9kZSA9IG5kLT5wYXRoLmRlbnRyeS0+ZF9pbm9kZTsKKwlyZXR1cm4g MDsKIH0KIAogLyoKQEAgLTE1NDEsNyArMTU2Niw3IEBAIHN0YXRpYyBpbmxpbmUgaW50IGhhbmRs ZV9kb3RzKHN0cnVjdCBuYW1laWRhdGEgKm5kLCBpbnQgdHlwZSkKIAkJCWlmIChmb2xsb3dfZG90 ZG90X3JjdShuZCkpCiAJCQkJcmV0dXJuIC1FQ0hJTEQ7CiAJCX0gZWxzZQotCQkJZm9sbG93X2Rv dGRvdChuZCk7CisJCQlyZXR1cm4gZm9sbG93X2RvdGRvdChuZCk7CiAJfQogCXJldHVybiAwOwog fQpAQCAtMjI5MCw3ICsyMzE1LDcgQEAgbW91bnRwb2ludF9sYXN0KHN0cnVjdCBuYW1laWRhdGEg Km5kLCBzdHJ1Y3QgcGF0aCAqcGF0aCkKIAlpZiAodW5saWtlbHkobmQtPmxhc3RfdHlwZSAhPSBM QVNUX05PUk0pKSB7CiAJCWVycm9yID0gaGFuZGxlX2RvdHMobmQsIG5kLT5sYXN0X3R5cGUpOwog CQlpZiAoZXJyb3IpCi0JCQlnb3RvIG91dDsKKwkJCXJldHVybiBlcnJvcjsKIAkJZGVudHJ5ID0g ZGdldChuZC0+cGF0aC5kZW50cnkpOwogCQlnb3RvIGRvbmU7CiAJfQotLSAKMi4yLjEKCg== --=-=-= Content-Type: application/mbox Content-Disposition: attachment; filename=bind-3.18.mbox Content-Transfer-Encoding: base64 RnJvbSBhOTc4Y2RmZTIzNjAxYjdhMWRjOGI2NzMzODE4Njc3ZTJkMTgzNWYxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiRXJpYyBXLiBCaWVkZXJtYW4iIDxlYmllZGVybUB4bWlzc2lv bi5jb20+CkRhdGU6IFNhdCwgMTUgQXVnIDIwMTUgMTM6MzY6MTIgLTA1MDAKU3ViamVjdDogW1BB VENIIDEvMl0gZGNhY2hlOiBIYW5kbGUgZXNjYXBlZCBwYXRocyBpbiBwcmVwZW5kX3BhdGgKCmNv bW1pdCBjZGU5M2JlNDVhOGE5MGQ4YzI2NGM3NzZmYWI2MzQ4N2I1MDM4YTY1IHVwc3RyZWFtLgoK QSByZW5hbWUgY2FuIHJlc3VsdCBpbiBhIGRlbnRyeSB0aGF0IGJ5IHdhbGtpbmcgdXAgZF9wYXJl bnQKd2lsbCBuZXZlciByZWFjaCBpdCdzIG1udF9yb290LiAgRm9yIGxhY2sgb2YgYSBiZXR0ZXIg dGVybQpJIGNhbGwgdGhpcyBhbiBlc2NhcGVkIHBhdGguCgpwcmVwZW5kX3BhdGggaXMgY2FsbGVk IGJ5IGZvdXIgZGlmZmVyZW50IGZ1bmN0aW9ucyBfX2RfcGF0aCwKZF9hYnNvbHV0ZV9wYXRoLCBk X3BhdGgsIGFuZCBnZXRjd2QuCgpfX2RfcGF0aCBvbmx5IHdhbnRzIHRvIHNlZSBwYXRocyBhcmUg Y29ubmVjdGVkIHRvIHRoZSByb290IGl0IHBhc3Nlcwppbi4gIFNvIF9fZF9wYXRoIG5lZWRzIHBy ZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3IuCgpkX2Fic29sdXRlX3BhdGggc2ltaWxhcmx5 IHdhbnRzIHRvIHNlZSBwYXRocyB0aGF0IGFyZSBjb25uZWN0ZWQgdG8Kc29tZSByb290LiAgRXNj YXBlZCBwYXRocyBhcmUgbm90IGNvbm5lY3RlZCB0byBhbnkgbW50X3Jvb3Qgc28KZF9hYnNvbHV0 ZV9wYXRoIG5lZWRzIHByZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3IgZ3JlYXRlcgp0aGFu IDEuICBTbyBlc2NhcGVkIHBhdGhzIHdpbGwgYmUgdHJlYXRlZCBsaWtlIHBhdGhzIG9uIGxhemls eQp1bm1vdW50ZWQgbW91bnRzLgoKZ2V0Y3dkIG5lZWRzIHRvIHByZXBlbmQgIih1bnJlYWNoYWJs ZSkiIHNvIGdldGN3ZCBhbHNvIG5lZWRzCnByZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3Iu CgpkX3BhdGggaXMgdGhlIGludGVyZXN0aW5nIGhvbGQgb3V0LiAgZF9wYXRoIGp1c3Qgd2FudHMg dG8gcHJpbnQKc29tZXRoaW5nLCBhbmQgZG9lcyBub3QgY2FyZSBhYm91dCB0aGUgd2VpcmQgY2Fz ZXMuICBXaGljaCByYWlzZXMKdGhlIHF1ZXN0aW9uIHdoYXQgc2hvdWxkIGJlIHByaW50ZWQ/CgpH aXZlbiB0aGF0IDxlc2NhcGVkX3BhdGg+Lzxhbnl0aGluZz4gc2hvdWxkIHJlc3VsdCBpbiAtRU5P RU5UIEkKYmVsaWV2ZSBpdCBpcyBkZXNpcmFibGUgZm9yIGVzY2FwZWQgcGF0aHMgdG8gYmUgcHJp bnRlZCBhcyBlbXB0eQpwYXRocy4gIEFzIHRoZXJlIGFyZSBub3QgcmVhbGx5IGFueSBtZWFuaW5m dWwgcGF0aCBjb21wb25lbnRzIHdoZW4KY29uc2lkZXJlZCBmcm9tIHRoZSBwZXJzcGVjdGl2ZSBv ZiBhIG1vdW50IHRyZWUuCgpTbyB0d2VhayBwcmVwZW5kX3BhdGggdG8gcmV0dXJuIGFuIGVtcHR5 IHBhdGggd2l0aCBhbiBuZXcgZXJyb3IKY29kZSBvZiAzIHdoZW4gaXQgZW5jb3VudGVycyBhbiBl c2NhcGVkIHBhdGguCgpTaWduZWQtb2ZmLWJ5OiAiRXJpYyBXLiBCaWVkZXJtYW4iIDxlYmllZGVy bUB4bWlzc2lvbi5jb20+ClNpZ25lZC1vZmYtYnk6IEFsIFZpcm8gPHZpcm9AemVuaXYubGludXgu b3JnLnVrPgotLS0KIGZzL2RjYWNoZS5jIHwgNyArKysrKysrCiAxIGZpbGUgY2hhbmdlZCwgNyBp bnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZnMvZGNhY2hlLmMgYi9mcy9kY2FjaGUuYwppbmRl eCBhNjZkNmQ4MGUyZDkuLjI4ZWUyMGFhMTIxZSAxMDA2NDQKLS0tIGEvZnMvZGNhY2hlLmMKKysr IGIvZnMvZGNhY2hlLmMKQEAgLTI4ODksNiArMjg4OSwxMyBAQCByZXN0YXJ0OgogCiAJCWlmIChk ZW50cnkgPT0gdmZzbW50LT5tbnRfcm9vdCB8fCBJU19ST09UKGRlbnRyeSkpIHsKIAkJCXN0cnVj dCBtb3VudCAqcGFyZW50ID0gQUNDRVNTX09OQ0UobW50LT5tbnRfcGFyZW50KTsKKwkJCS8qIEVz Y2FwZWQ/ICovCisJCQlpZiAoZGVudHJ5ICE9IHZmc21udC0+bW50X3Jvb3QpIHsKKwkJCQlicHRy ID0gKmJ1ZmZlcjsKKwkJCQlibGVuID0gKmJ1ZmxlbjsKKwkJCQllcnJvciA9IDM7CisJCQkJYnJl YWs7CisJCQl9CiAJCQkvKiBHbG9iYWwgcm9vdD8gKi8KIAkJCWlmIChtbnQgIT0gcGFyZW50KSB7 CiAJCQkJZGVudHJ5ID0gQUNDRVNTX09OQ0UobW50LT5tbnRfbW91bnRwb2ludCk7Ci0tIAoyLjIu MQoKCkZyb20gZGExOTA1ZTcyNTkxN2QyYWRjYjRlYjc5N2Y3N2E3ZmFhNGI2NmFmMCBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkVyaWMgVy4gQmllZGVybWFuIiA8ZWJpZWRlcm1AeG1p c3Npb24uY29tPgpEYXRlOiBTYXQsIDE1IEF1ZyAyMDE1IDIwOjI3OjEzIC0wNTAwClN1YmplY3Q6 IFtQQVRDSCAyLzJdIHZmczogVGVzdCBmb3IgYW5kIGhhbmRsZSBwYXRocyB0aGF0IGFyZSB1bnJl YWNoYWJsZSBmcm9tCiB0aGVpciBtbnRfcm9vdAoKY29tbWl0IDM5N2Q0MjVkYzI2ZGE3MjgzOTZl NjZkMzkyZDVkY2I4ZGFjMzBjMzcgdXBzdHJlYW0uCgpJbiByYXJlIGNhc2VzIGEgZGlyZWN0b3J5 IGNhbiBiZSByZW5hbWVkIG91dCBmcm9tIHVuZGVyIGEgYmluZCBtb3VudC4KSW4gdGhvc2UgY2Fz ZXMgd2l0aG91dCBzcGVjaWFsIGhhbmRsaW5nIGl0IGJlY29tZXMgcG9zc2libGUgdG8gd2FsayB1 cAp0aGUgZGlyZWN0b3J5IHRyZWUgdG8gdGhlIHJvb3QgZGVudHJ5IG9mIHRoZSBmaWxlc3lzdGVt IGFuZCBkb3duCmZyb20gdGhlIHJvb3QgZGVudHJ5IHRvIGV2ZXJ5IG90aGVyIGZpbGUgb3IgZGly ZWN0b3J5IG9uIHRoZSBmaWxlc3lzdGVtLgoKTGlrZSBkaXZpc2lvbiBieSB6ZXJvIC4uIGZyb20g YW4gdW5jb25uZWN0ZWQgcGF0aCBjYW4gbm90IGJlIGdpdmVuCmEgdXNlZnVsIHNlbWFudGljIGFz IHRoZXJlIGlzIG5vIHByZWRpY3RpbmcgYXQgd2hpY2ggcGF0aCBjb21wb25lbnQKdGhlIGNvZGUg d2lsbCByZWFsaXplIGl0IGlzIHVuY29ubmVjdGVkLiAgV2UgY2VydGFpbmx5IGNhbiBub3QgbWF0 Y2gKdGhlIGN1cnJlbnQgYmVoYXZpb3IgYXMgdGhlIGN1cnJlbnQgYmVoYXZpb3IgaXMgYSBzZWN1 cml0eSBob2xlLgoKVGhlcmVmb3JlIHdoZW4gZW5jb3VudGluZyAuLiB3aGVuIGZvbGxvd2luZyBh biB1bmNvbm5lY3RlZCBwYXRoCnJldHVybiAtRU5PRU5ULgoKLSBBZGQgYSBmdW5jdGlvbiBwYXRo X2Nvbm5lY3RlZCB0byB2ZXJpZnkgcGF0aC0+ZGVudHJ5IGlzIHJlYWNoYWJsZQogIGZyb20gcGF0 aC0+bW50Lm1udF9yb290LiAgQUtBIHRvIHZhbGlkYXRlIHRoYXQgcmVuYW1lIGRpZCBub3QgZG8K ICBzb21ldGhpbmcgbmFzdHkgdG8gdGhlIGJpbmQgbW91bnQuCgogIFRvIGF2b2lkIHJhY2VzIHBh dGhfY29ubmVjdGVkIG11c3QgYmUgY2FsbGVkIGFmdGVyIGZvbGxvd2luZyBhIHBhdGgKICBjb21w b25lbnQgdG8gaXQncyBuZXh0IHBhdGggY29tcG9uZW50LgoKU2lnbmVkLW9mZi1ieTogIkVyaWMg Vy4gQmllZGVybWFuIiA8ZWJpZWRlcm1AeG1pc3Npb24uY29tPgpTaWduZWQtb2ZmLWJ5OiBBbCBW aXJvIDx2aXJvQHplbml2LmxpbnV4Lm9yZy51az4KLS0tCiBmcy9uYW1laS5jIHwgMzEgKysrKysr KysrKysrKysrKysrKysrKysrKysrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDI4IGluc2VydGlvbnMo KyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZnMvbmFtZWkuYyBiL2ZzL25hbWVpLmMK aW5kZXggZDIwZjA2MWNkZGQzLi5iZTNkNTM4ZDU2YjMgMTAwNjQ0Ci0tLSBhL2ZzL25hbWVpLmMK KysrIGIvZnMvbmFtZWkuYwpAQCAtNDg3LDYgKzQ4NywyNCBAQCB2b2lkIHBhdGhfcHV0KGNvbnN0 IHN0cnVjdCBwYXRoICpwYXRoKQogfQogRVhQT1JUX1NZTUJPTChwYXRoX3B1dCk7CiAKKy8qKgor ICogcGF0aF9jb25uZWN0ZWQgLSBWZXJpZnkgdGhhdCBhIHBhdGgtPmRlbnRyeSBpcyBiZWxvdyBw YXRoLT5tbnQubW50X3Jvb3QKKyAqIEBwYXRoOiBuYW1laWRhdGUgdG8gdmVyaWZ5CisgKgorICog UmVuYW1lIGNhbiBzb21ldGltZXMgbW92ZSBhIGZpbGUgb3IgZGlyZWN0b3J5IG91dHNpZGUgb2Yg YSBiaW5kCisgKiBtb3VudCwgcGF0aF9jb25uZWN0ZWQgYWxsb3dzIHRob3NlIGNhc2VzIHRvIGJl IGRldGVjdGVkLgorICovCitzdGF0aWMgYm9vbCBwYXRoX2Nvbm5lY3RlZChjb25zdCBzdHJ1Y3Qg cGF0aCAqcGF0aCkKK3sKKwlzdHJ1Y3QgdmZzbW91bnQgKm1udCA9IHBhdGgtPm1udDsKKworCS8q IE9ubHkgYmluZCBtb3VudHMgY2FuIGhhdmUgZGlzY29ubmVjdGVkIHBhdGhzICovCisJaWYgKG1u dC0+bW50X3Jvb3QgPT0gbW50LT5tbnRfc2ItPnNfcm9vdCkKKwkJcmV0dXJuIHRydWU7CisKKwly ZXR1cm4gaXNfc3ViZGlyKHBhdGgtPmRlbnRyeSwgbW50LT5tbnRfcm9vdCk7Cit9CisKIC8qCiAg KiBQYXRoIHdhbGtpbmcgaGFzIDIgbW9kZXMsIHJjdS13YWxrIGFuZCByZWYtd2FsayAoc2VlCiAg KiBEb2N1bWVudGF0aW9uL2ZpbGVzeXN0ZW1zL3BhdGgtbG9va3VwLnR4dCkuICBJbiBzaXR1YXRp b25zIHdoZW4gd2UgY2FuJ3QKQEAgLTExNjQsNiArMTE4Miw4IEBAIHN0YXRpYyBpbnQgZm9sbG93 X2RvdGRvdF9yY3Uoc3RydWN0IG5hbWVpZGF0YSAqbmQpCiAJCQkJZ290byBmYWlsZWQ7CiAJCQlu ZC0+cGF0aC5kZW50cnkgPSBwYXJlbnQ7CiAJCQluZC0+c2VxID0gc2VxOworCQkJaWYgKHVubGlr ZWx5KCFwYXRoX2Nvbm5lY3RlZCgmbmQtPnBhdGgpKSkKKwkJCQlnb3RvIGZhaWxlZDsKIAkJCWJy ZWFrOwogCQl9CiAJCWlmICghZm9sbG93X3VwX3JjdSgmbmQtPnBhdGgpKQpAQCAtMTI2MCw3ICsx MjgwLDcgQEAgc3RhdGljIHZvaWQgZm9sbG93X21vdW50KHN0cnVjdCBwYXRoICpwYXRoKQogCX0K IH0KIAotc3RhdGljIHZvaWQgZm9sbG93X2RvdGRvdChzdHJ1Y3QgbmFtZWlkYXRhICpuZCkKK3N0 YXRpYyBpbnQgZm9sbG93X2RvdGRvdChzdHJ1Y3QgbmFtZWlkYXRhICpuZCkKIHsKIAlpZiAoIW5k LT5yb290Lm1udCkKIAkJc2V0X3Jvb3QobmQpOwpAQCAtMTI3Niw2ICsxMjk2LDEwIEBAIHN0YXRp YyB2b2lkIGZvbGxvd19kb3Rkb3Qoc3RydWN0IG5hbWVpZGF0YSAqbmQpCiAJCQkvKiByYXJlIGNh c2Ugb2YgbGVnaXRpbWF0ZSBkZ2V0X3BhcmVudCgpLi4uICovCiAJCQluZC0+cGF0aC5kZW50cnkg PSBkZ2V0X3BhcmVudChuZC0+cGF0aC5kZW50cnkpOwogCQkJZHB1dChvbGQpOworCQkJaWYgKHVu bGlrZWx5KCFwYXRoX2Nvbm5lY3RlZCgmbmQtPnBhdGgpKSkgeworCQkJCXBhdGhfcHV0KCZuZC0+ cGF0aCk7CisJCQkJcmV0dXJuIC1FTk9FTlQ7CisJCQl9CiAJCQlicmVhazsKIAkJfQogCQlpZiAo IWZvbGxvd191cCgmbmQtPnBhdGgpKQpAQCAtMTI4Myw2ICsxMzA3LDcgQEAgc3RhdGljIHZvaWQg Zm9sbG93X2RvdGRvdChzdHJ1Y3QgbmFtZWlkYXRhICpuZCkKIAl9CiAJZm9sbG93X21vdW50KCZu ZC0+cGF0aCk7CiAJbmQtPmlub2RlID0gbmQtPnBhdGguZGVudHJ5LT5kX2lub2RlOworCXJldHVy biAwOwogfQogCiAvKgpAQCAtMTUwMyw3ICsxNTI4LDcgQEAgc3RhdGljIGlubGluZSBpbnQgaGFu ZGxlX2RvdHMoc3RydWN0IG5hbWVpZGF0YSAqbmQsIGludCB0eXBlKQogCQkJaWYgKGZvbGxvd19k b3Rkb3RfcmN1KG5kKSkKIAkJCQlyZXR1cm4gLUVDSElMRDsKIAkJfSBlbHNlCi0JCQlmb2xsb3df ZG90ZG90KG5kKTsKKwkJCXJldHVybiBmb2xsb3dfZG90ZG90KG5kKTsKIAl9CiAJcmV0dXJuIDA7 CiB9CkBAIC0yMjM5LDcgKzIyNjQsNyBAQCBtb3VudHBvaW50X2xhc3Qoc3RydWN0IG5hbWVpZGF0 YSAqbmQsIHN0cnVjdCBwYXRoICpwYXRoKQogCWlmICh1bmxpa2VseShuZC0+bGFzdF90eXBlICE9 IExBU1RfTk9STSkpIHsKIAkJZXJyb3IgPSBoYW5kbGVfZG90cyhuZCwgbmQtPmxhc3RfdHlwZSk7 CiAJCWlmIChlcnJvcikKLQkJCWdvdG8gb3V0OworCQkJcmV0dXJuIGVycm9yOwogCQlkZW50cnkg PSBkZ2V0KG5kLT5wYXRoLmRlbnRyeSk7CiAJCWdvdG8gZG9uZTsKIAl9Ci0tIAoyLjIuMQoK --=-=-= Content-Type: application/mbox Content-Disposition: attachment; filename=bind-3.14.mbox Content-Transfer-Encoding: base64 RnJvbSBlYWY3YjA0YjFmMjA1ZDA0MzlmYzNmOTVlYWFiMDAwODgwM2JmY2RiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiRXJpYyBXLiBCaWVkZXJtYW4iIDxlYmllZGVybUB4bWlzc2lv bi5jb20+CkRhdGU6IFNhdCwgMTUgQXVnIDIwMTUgMTM6MzY6MTIgLTA1MDAKU3ViamVjdDogW1BB VENIIDEvMl0gZGNhY2hlOiBIYW5kbGUgZXNjYXBlZCBwYXRocyBpbiBwcmVwZW5kX3BhdGgKCmNv bW1pdCBjZGU5M2JlNDVhOGE5MGQ4YzI2NGM3NzZmYWI2MzQ4N2I1MDM4YTY1IHVwc3RyZWFtLgoK QSByZW5hbWUgY2FuIHJlc3VsdCBpbiBhIGRlbnRyeSB0aGF0IGJ5IHdhbGtpbmcgdXAgZF9wYXJl bnQKd2lsbCBuZXZlciByZWFjaCBpdCdzIG1udF9yb290LiAgRm9yIGxhY2sgb2YgYSBiZXR0ZXIg dGVybQpJIGNhbGwgdGhpcyBhbiBlc2NhcGVkIHBhdGguCgpwcmVwZW5kX3BhdGggaXMgY2FsbGVk IGJ5IGZvdXIgZGlmZmVyZW50IGZ1bmN0aW9ucyBfX2RfcGF0aCwKZF9hYnNvbHV0ZV9wYXRoLCBk X3BhdGgsIGFuZCBnZXRjd2QuCgpfX2RfcGF0aCBvbmx5IHdhbnRzIHRvIHNlZSBwYXRocyBhcmUg Y29ubmVjdGVkIHRvIHRoZSByb290IGl0IHBhc3Nlcwppbi4gIFNvIF9fZF9wYXRoIG5lZWRzIHBy ZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3IuCgpkX2Fic29sdXRlX3BhdGggc2ltaWxhcmx5 IHdhbnRzIHRvIHNlZSBwYXRocyB0aGF0IGFyZSBjb25uZWN0ZWQgdG8Kc29tZSByb290LiAgRXNj YXBlZCBwYXRocyBhcmUgbm90IGNvbm5lY3RlZCB0byBhbnkgbW50X3Jvb3Qgc28KZF9hYnNvbHV0 ZV9wYXRoIG5lZWRzIHByZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3IgZ3JlYXRlcgp0aGFu IDEuICBTbyBlc2NhcGVkIHBhdGhzIHdpbGwgYmUgdHJlYXRlZCBsaWtlIHBhdGhzIG9uIGxhemls eQp1bm1vdW50ZWQgbW91bnRzLgoKZ2V0Y3dkIG5lZWRzIHRvIHByZXBlbmQgIih1bnJlYWNoYWJs ZSkiIHNvIGdldGN3ZCBhbHNvIG5lZWRzCnByZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3Iu CgpkX3BhdGggaXMgdGhlIGludGVyZXN0aW5nIGhvbGQgb3V0LiAgZF9wYXRoIGp1c3Qgd2FudHMg dG8gcHJpbnQKc29tZXRoaW5nLCBhbmQgZG9lcyBub3QgY2FyZSBhYm91dCB0aGUgd2VpcmQgY2Fz ZXMuICBXaGljaCByYWlzZXMKdGhlIHF1ZXN0aW9uIHdoYXQgc2hvdWxkIGJlIHByaW50ZWQ/CgpH aXZlbiB0aGF0IDxlc2NhcGVkX3BhdGg+Lzxhbnl0aGluZz4gc2hvdWxkIHJlc3VsdCBpbiAtRU5P RU5UIEkKYmVsaWV2ZSBpdCBpcyBkZXNpcmFibGUgZm9yIGVzY2FwZWQgcGF0aHMgdG8gYmUgcHJp bnRlZCBhcyBlbXB0eQpwYXRocy4gIEFzIHRoZXJlIGFyZSBub3QgcmVhbGx5IGFueSBtZWFuaW5m dWwgcGF0aCBjb21wb25lbnRzIHdoZW4KY29uc2lkZXJlZCBmcm9tIHRoZSBwZXJzcGVjdGl2ZSBv ZiBhIG1vdW50IHRyZWUuCgpTbyB0d2VhayBwcmVwZW5kX3BhdGggdG8gcmV0dXJuIGFuIGVtcHR5 IHBhdGggd2l0aCBhbiBuZXcgZXJyb3IKY29kZSBvZiAzIHdoZW4gaXQgZW5jb3VudGVycyBhbiBl c2NhcGVkIHBhdGguCgpTaWduZWQtb2ZmLWJ5OiAiRXJpYyBXLiBCaWVkZXJtYW4iIDxlYmllZGVy bUB4bWlzc2lvbi5jb20+ClNpZ25lZC1vZmYtYnk6IEFsIFZpcm8gPHZpcm9AemVuaXYubGludXgu b3JnLnVrPgotLS0KIGZzL2RjYWNoZS5jIHwgNyArKysrKysrCiAxIGZpbGUgY2hhbmdlZCwgNyBp bnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZnMvZGNhY2hlLmMgYi9mcy9kY2FjaGUuYwppbmRl eCBkZjMyM2Y4MDllMDMuLjY1Y2NkZjBlMjg1NCAxMDA2NDQKLS0tIGEvZnMvZGNhY2hlLmMKKysr IGIvZnMvZGNhY2hlLmMKQEAgLTI3ODcsNiArMjc4NywxMyBAQCByZXN0YXJ0OgogCiAJCWlmIChk ZW50cnkgPT0gdmZzbW50LT5tbnRfcm9vdCB8fCBJU19ST09UKGRlbnRyeSkpIHsKIAkJCXN0cnVj dCBtb3VudCAqcGFyZW50ID0gQUNDRVNTX09OQ0UobW50LT5tbnRfcGFyZW50KTsKKwkJCS8qIEVz Y2FwZWQ/ICovCisJCQlpZiAoZGVudHJ5ICE9IHZmc21udC0+bW50X3Jvb3QpIHsKKwkJCQlicHRy ID0gKmJ1ZmZlcjsKKwkJCQlibGVuID0gKmJ1ZmxlbjsKKwkJCQllcnJvciA9IDM7CisJCQkJYnJl YWs7CisJCQl9CiAJCQkvKiBHbG9iYWwgcm9vdD8gKi8KIAkJCWlmIChtbnQgIT0gcGFyZW50KSB7 CiAJCQkJZGVudHJ5ID0gQUNDRVNTX09OQ0UobW50LT5tbnRfbW91bnRwb2ludCk7Ci0tIAoyLjIu MQoKCkZyb20gYmFjYjM2YjJlOTY2ZTUxNTI0ZThlNmQwNTRkYzRjZmZlYzA2MzEzOSBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkVyaWMgVy4gQmllZGVybWFuIiA8ZWJpZWRlcm1AeG1p c3Npb24uY29tPgpEYXRlOiBTYXQsIDE1IEF1ZyAyMDE1IDIwOjI3OjEzIC0wNTAwClN1YmplY3Q6 IFtQQVRDSCAyLzJdIHZmczogVGVzdCBmb3IgYW5kIGhhbmRsZSBwYXRocyB0aGF0IGFyZSB1bnJl YWNoYWJsZSBmcm9tCiB0aGVpciBtbnRfcm9vdAoKY29tbWl0IDM5N2Q0MjVkYzI2ZGE3MjgzOTZl NjZkMzkyZDVkY2I4ZGFjMzBjMzcgdXBzdHJlYW0uCgpJbiByYXJlIGNhc2VzIGEgZGlyZWN0b3J5 IGNhbiBiZSByZW5hbWVkIG91dCBmcm9tIHVuZGVyIGEgYmluZCBtb3VudC4KSW4gdGhvc2UgY2Fz ZXMgd2l0aG91dCBzcGVjaWFsIGhhbmRsaW5nIGl0IGJlY29tZXMgcG9zc2libGUgdG8gd2FsayB1 cAp0aGUgZGlyZWN0b3J5IHRyZWUgdG8gdGhlIHJvb3QgZGVudHJ5IG9mIHRoZSBmaWxlc3lzdGVt IGFuZCBkb3duCmZyb20gdGhlIHJvb3QgZGVudHJ5IHRvIGV2ZXJ5IG90aGVyIGZpbGUgb3IgZGly ZWN0b3J5IG9uIHRoZSBmaWxlc3lzdGVtLgoKTGlrZSBkaXZpc2lvbiBieSB6ZXJvIC4uIGZyb20g YW4gdW5jb25uZWN0ZWQgcGF0aCBjYW4gbm90IGJlIGdpdmVuCmEgdXNlZnVsIHNlbWFudGljIGFz IHRoZXJlIGlzIG5vIHByZWRpY3RpbmcgYXQgd2hpY2ggcGF0aCBjb21wb25lbnQKdGhlIGNvZGUg d2lsbCByZWFsaXplIGl0IGlzIHVuY29ubmVjdGVkLiAgV2UgY2VydGFpbmx5IGNhbiBub3QgbWF0 Y2gKdGhlIGN1cnJlbnQgYmVoYXZpb3IgYXMgdGhlIGN1cnJlbnQgYmVoYXZpb3IgaXMgYSBzZWN1 cml0eSBob2xlLgoKVGhlcmVmb3JlIHdoZW4gZW5jb3VudGluZyAuLiB3aGVuIGZvbGxvd2luZyBh biB1bmNvbm5lY3RlZCBwYXRoCnJldHVybiAtRU5PRU5ULgoKLSBBZGQgYSBmdW5jdGlvbiBwYXRo X2Nvbm5lY3RlZCB0byB2ZXJpZnkgcGF0aC0+ZGVudHJ5IGlzIHJlYWNoYWJsZQogIGZyb20gcGF0 aC0+bW50Lm1udF9yb290LiAgQUtBIHRvIHZhbGlkYXRlIHRoYXQgcmVuYW1lIGRpZCBub3QgZG8K ICBzb21ldGhpbmcgbmFzdHkgdG8gdGhlIGJpbmQgbW91bnQuCgogIFRvIGF2b2lkIHJhY2VzIHBh dGhfY29ubmVjdGVkIG11c3QgYmUgY2FsbGVkIGFmdGVyIGZvbGxvd2luZyBhIHBhdGgKICBjb21w b25lbnQgdG8gaXQncyBuZXh0IHBhdGggY29tcG9uZW50LgoKU2lnbmVkLW9mZi1ieTogIkVyaWMg Vy4gQmllZGVybWFuIiA8ZWJpZWRlcm1AeG1pc3Npb24uY29tPgpTaWduZWQtb2ZmLWJ5OiBBbCBW aXJvIDx2aXJvQHplbml2LmxpbnV4Lm9yZy51az4KLS0tCiBmcy9uYW1laS5jIHwgMzEgKysrKysr KysrKysrKysrKysrKysrKysrKysrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDI4IGluc2VydGlvbnMo KyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZnMvbmFtZWkuYyBiL2ZzL25hbWVpLmMK aW5kZXggYzZmYTA3OTQyYjJhLi5mNGY2NDYwYjY5NTggMTAwNjQ0Ci0tLSBhL2ZzL25hbWVpLmMK KysrIGIvZnMvbmFtZWkuYwpAQCAtNDg0LDYgKzQ4NCwyNCBAQCB2b2lkIHBhdGhfcHV0KGNvbnN0 IHN0cnVjdCBwYXRoICpwYXRoKQogfQogRVhQT1JUX1NZTUJPTChwYXRoX3B1dCk7CiAKKy8qKgor ICogcGF0aF9jb25uZWN0ZWQgLSBWZXJpZnkgdGhhdCBhIHBhdGgtPmRlbnRyeSBpcyBiZWxvdyBw YXRoLT5tbnQubW50X3Jvb3QKKyAqIEBwYXRoOiBuYW1laWRhdGUgdG8gdmVyaWZ5CisgKgorICog UmVuYW1lIGNhbiBzb21ldGltZXMgbW92ZSBhIGZpbGUgb3IgZGlyZWN0b3J5IG91dHNpZGUgb2Yg YSBiaW5kCisgKiBtb3VudCwgcGF0aF9jb25uZWN0ZWQgYWxsb3dzIHRob3NlIGNhc2VzIHRvIGJl IGRldGVjdGVkLgorICovCitzdGF0aWMgYm9vbCBwYXRoX2Nvbm5lY3RlZChjb25zdCBzdHJ1Y3Qg cGF0aCAqcGF0aCkKK3sKKwlzdHJ1Y3QgdmZzbW91bnQgKm1udCA9IHBhdGgtPm1udDsKKworCS8q IE9ubHkgYmluZCBtb3VudHMgY2FuIGhhdmUgZGlzY29ubmVjdGVkIHBhdGhzICovCisJaWYgKG1u dC0+bW50X3Jvb3QgPT0gbW50LT5tbnRfc2ItPnNfcm9vdCkKKwkJcmV0dXJuIHRydWU7CisKKwly ZXR1cm4gaXNfc3ViZGlyKHBhdGgtPmRlbnRyeSwgbW50LT5tbnRfcm9vdCk7Cit9CisKIC8qCiAg KiBQYXRoIHdhbGtpbmcgaGFzIDIgbW9kZXMsIHJjdS13YWxrIGFuZCByZWYtd2FsayAoc2VlCiAg KiBEb2N1bWVudGF0aW9uL2ZpbGVzeXN0ZW1zL3BhdGgtbG9va3VwLnR4dCkuICBJbiBzaXR1YXRp b25zIHdoZW4gd2UgY2FuJ3QKQEAgLTExNDksNiArMTE2Nyw4IEBAIHN0YXRpYyBpbnQgZm9sbG93 X2RvdGRvdF9yY3Uoc3RydWN0IG5hbWVpZGF0YSAqbmQpCiAJCQkJZ290byBmYWlsZWQ7CiAJCQlu ZC0+cGF0aC5kZW50cnkgPSBwYXJlbnQ7CiAJCQluZC0+c2VxID0gc2VxOworCQkJaWYgKHVubGlr ZWx5KCFwYXRoX2Nvbm5lY3RlZCgmbmQtPnBhdGgpKSkKKwkJCQlnb3RvIGZhaWxlZDsKIAkJCWJy ZWFrOwogCQl9CiAJCWlmICghZm9sbG93X3VwX3JjdSgmbmQtPnBhdGgpKQpAQCAtMTI0Miw3ICsx MjYyLDcgQEAgc3RhdGljIHZvaWQgZm9sbG93X21vdW50KHN0cnVjdCBwYXRoICpwYXRoKQogCX0K IH0KIAotc3RhdGljIHZvaWQgZm9sbG93X2RvdGRvdChzdHJ1Y3QgbmFtZWlkYXRhICpuZCkKK3N0 YXRpYyBpbnQgZm9sbG93X2RvdGRvdChzdHJ1Y3QgbmFtZWlkYXRhICpuZCkKIHsKIAlpZiAoIW5k LT5yb290Lm1udCkKIAkJc2V0X3Jvb3QobmQpOwpAQCAtMTI1OCw2ICsxMjc4LDEwIEBAIHN0YXRp YyB2b2lkIGZvbGxvd19kb3Rkb3Qoc3RydWN0IG5hbWVpZGF0YSAqbmQpCiAJCQkvKiByYXJlIGNh c2Ugb2YgbGVnaXRpbWF0ZSBkZ2V0X3BhcmVudCgpLi4uICovCiAJCQluZC0+cGF0aC5kZW50cnkg PSBkZ2V0X3BhcmVudChuZC0+cGF0aC5kZW50cnkpOwogCQkJZHB1dChvbGQpOworCQkJaWYgKHVu bGlrZWx5KCFwYXRoX2Nvbm5lY3RlZCgmbmQtPnBhdGgpKSkgeworCQkJCXBhdGhfcHV0KCZuZC0+ cGF0aCk7CisJCQkJcmV0dXJuIC1FTk9FTlQ7CisJCQl9CiAJCQlicmVhazsKIAkJfQogCQlpZiAo IWZvbGxvd191cCgmbmQtPnBhdGgpKQpAQCAtMTI2NSw2ICsxMjg5LDcgQEAgc3RhdGljIHZvaWQg Zm9sbG93X2RvdGRvdChzdHJ1Y3QgbmFtZWlkYXRhICpuZCkKIAl9CiAJZm9sbG93X21vdW50KCZu ZC0+cGF0aCk7CiAJbmQtPmlub2RlID0gbmQtPnBhdGguZGVudHJ5LT5kX2lub2RlOworCXJldHVy biAwOwogfQogCiAvKgpAQCAtMTQ4OCw3ICsxNTEzLDcgQEAgc3RhdGljIGlubGluZSBpbnQgaGFu ZGxlX2RvdHMoc3RydWN0IG5hbWVpZGF0YSAqbmQsIGludCB0eXBlKQogCQkJaWYgKGZvbGxvd19k b3Rkb3RfcmN1KG5kKSkKIAkJCQlyZXR1cm4gLUVDSElMRDsKIAkJfSBlbHNlCi0JCQlmb2xsb3df ZG90ZG90KG5kKTsKKwkJCXJldHVybiBmb2xsb3dfZG90ZG90KG5kKTsKIAl9CiAJcmV0dXJuIDA7 CiB9CkBAIC0yMjE0LDcgKzIyMzksNyBAQCBtb3VudHBvaW50X2xhc3Qoc3RydWN0IG5hbWVpZGF0 YSAqbmQsIHN0cnVjdCBwYXRoICpwYXRoKQogCWlmICh1bmxpa2VseShuZC0+bGFzdF90eXBlICE9 IExBU1RfTk9STSkpIHsKIAkJZXJyb3IgPSBoYW5kbGVfZG90cyhuZCwgbmQtPmxhc3RfdHlwZSk7 CiAJCWlmIChlcnJvcikKLQkJCWdvdG8gb3V0OworCQkJcmV0dXJuIGVycm9yOwogCQlkZW50cnkg PSBkZ2V0KG5kLT5wYXRoLmRlbnRyeSk7CiAJCWdvdG8gZG9uZTsKIAl9Ci0tIAoyLjIuMQoK --=-=-= Content-Type: application/mbox Content-Disposition: attachment; filename=bind-3.12.mbox Content-Transfer-Encoding: base64 RnJvbSA3MTZjNDdhMTMyNTQ1ZDYyOTUwYjFiYmMwODdjNDllOTYxMjc0ZDVlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiRXJpYyBXLiBCaWVkZXJtYW4iIDxlYmllZGVybUB4bWlzc2lv bi5jb20+CkRhdGU6IFNhdCwgMTUgQXVnIDIwMTUgMTM6MzY6MTIgLTA1MDAKU3ViamVjdDogW1BB VENIIDEvMl0gZGNhY2hlOiBIYW5kbGUgZXNjYXBlZCBwYXRocyBpbiBwcmVwZW5kX3BhdGgKCmNv bW1pdCBjZGU5M2JlNDVhOGE5MGQ4YzI2NGM3NzZmYWI2MzQ4N2I1MDM4YTY1IHVwc3RyZWFtLgoK QSByZW5hbWUgY2FuIHJlc3VsdCBpbiBhIGRlbnRyeSB0aGF0IGJ5IHdhbGtpbmcgdXAgZF9wYXJl bnQKd2lsbCBuZXZlciByZWFjaCBpdCdzIG1udF9yb290LiAgRm9yIGxhY2sgb2YgYSBiZXR0ZXIg dGVybQpJIGNhbGwgdGhpcyBhbiBlc2NhcGVkIHBhdGguCgpwcmVwZW5kX3BhdGggaXMgY2FsbGVk IGJ5IGZvdXIgZGlmZmVyZW50IGZ1bmN0aW9ucyBfX2RfcGF0aCwKZF9hYnNvbHV0ZV9wYXRoLCBk X3BhdGgsIGFuZCBnZXRjd2QuCgpfX2RfcGF0aCBvbmx5IHdhbnRzIHRvIHNlZSBwYXRocyBhcmUg Y29ubmVjdGVkIHRvIHRoZSByb290IGl0IHBhc3Nlcwppbi4gIFNvIF9fZF9wYXRoIG5lZWRzIHBy ZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3IuCgpkX2Fic29sdXRlX3BhdGggc2ltaWxhcmx5 IHdhbnRzIHRvIHNlZSBwYXRocyB0aGF0IGFyZSBjb25uZWN0ZWQgdG8Kc29tZSByb290LiAgRXNj YXBlZCBwYXRocyBhcmUgbm90IGNvbm5lY3RlZCB0byBhbnkgbW50X3Jvb3Qgc28KZF9hYnNvbHV0 ZV9wYXRoIG5lZWRzIHByZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3IgZ3JlYXRlcgp0aGFu IDEuICBTbyBlc2NhcGVkIHBhdGhzIHdpbGwgYmUgdHJlYXRlZCBsaWtlIHBhdGhzIG9uIGxhemls eQp1bm1vdW50ZWQgbW91bnRzLgoKZ2V0Y3dkIG5lZWRzIHRvIHByZXBlbmQgIih1bnJlYWNoYWJs ZSkiIHNvIGdldGN3ZCBhbHNvIG5lZWRzCnByZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3Iu CgpkX3BhdGggaXMgdGhlIGludGVyZXN0aW5nIGhvbGQgb3V0LiAgZF9wYXRoIGp1c3Qgd2FudHMg dG8gcHJpbnQKc29tZXRoaW5nLCBhbmQgZG9lcyBub3QgY2FyZSBhYm91dCB0aGUgd2VpcmQgY2Fz ZXMuICBXaGljaCByYWlzZXMKdGhlIHF1ZXN0aW9uIHdoYXQgc2hvdWxkIGJlIHByaW50ZWQ/CgpH aXZlbiB0aGF0IDxlc2NhcGVkX3BhdGg+Lzxhbnl0aGluZz4gc2hvdWxkIHJlc3VsdCBpbiAtRU5P RU5UIEkKYmVsaWV2ZSBpdCBpcyBkZXNpcmFibGUgZm9yIGVzY2FwZWQgcGF0aHMgdG8gYmUgcHJp bnRlZCBhcyBlbXB0eQpwYXRocy4gIEFzIHRoZXJlIGFyZSBub3QgcmVhbGx5IGFueSBtZWFuaW5m dWwgcGF0aCBjb21wb25lbnRzIHdoZW4KY29uc2lkZXJlZCBmcm9tIHRoZSBwZXJzcGVjdGl2ZSBv ZiBhIG1vdW50IHRyZWUuCgpTbyB0d2VhayBwcmVwZW5kX3BhdGggdG8gcmV0dXJuIGFuIGVtcHR5 IHBhdGggd2l0aCBhbiBuZXcgZXJyb3IKY29kZSBvZiAzIHdoZW4gaXQgZW5jb3VudGVycyBhbiBl c2NhcGVkIHBhdGguCgpTaWduZWQtb2ZmLWJ5OiAiRXJpYyBXLiBCaWVkZXJtYW4iIDxlYmllZGVy bUB4bWlzc2lvbi5jb20+ClNpZ25lZC1vZmYtYnk6IEFsIFZpcm8gPHZpcm9AemVuaXYubGludXgu b3JnLnVrPgotLS0KIGZzL2RjYWNoZS5jIHwgNyArKysrKysrCiAxIGZpbGUgY2hhbmdlZCwgNyBp bnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZnMvZGNhY2hlLmMgYi9mcy9kY2FjaGUuYwppbmRl eCA0YzIyN2Y4MTA1MWIuLjBmYTNiM2RiYTk2ZiAxMDA2NDQKLS0tIGEvZnMvZGNhY2hlLmMKKysr IGIvZnMvZGNhY2hlLmMKQEAgLTI4MDgsNiArMjgwOCwxMyBAQCByZXN0YXJ0OgogCQlzdHJ1Y3Qg ZGVudHJ5ICogcGFyZW50OwogCiAJCWlmIChkZW50cnkgPT0gdmZzbW50LT5tbnRfcm9vdCB8fCBJ U19ST09UKGRlbnRyeSkpIHsKKwkJCS8qIEVzY2FwZWQ/ICovCisJCQlpZiAoZGVudHJ5ICE9IHZm c21udC0+bW50X3Jvb3QpIHsKKwkJCQlicHRyID0gKmJ1ZmZlcjsKKwkJCQlibGVuID0gKmJ1Zmxl bjsKKwkJCQllcnJvciA9IDM7CisJCQkJYnJlYWs7CisJCQl9CiAJCQkvKiBHbG9iYWwgcm9vdD8g Ki8KIAkJCWlmIChtbnRfaGFzX3BhcmVudChtbnQpKSB7CiAJCQkJZGVudHJ5ID0gbW50LT5tbnRf bW91bnRwb2ludDsKLS0gCjIuMi4xCgoKRnJvbSA1MTk1ZGZmZGRmYTdkNzA4ZDJiZWE1ODhmNzkx ZmY0MTAxZTE1NTRkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiRXJpYyBXLiBCaWVk ZXJtYW4iIDxlYmllZGVybUB4bWlzc2lvbi5jb20+CkRhdGU6IFNhdCwgMTUgQXVnIDIwMTUgMjA6 Mjc6MTMgLTA1MDAKU3ViamVjdDogW1BBVENIIDIvMl0gdmZzOiBUZXN0IGZvciBhbmQgaGFuZGxl IHBhdGhzIHRoYXQgYXJlIHVucmVhY2hhYmxlIGZyb20KIHRoZWlyIG1udF9yb290Cgpjb21taXQg Mzk3ZDQyNWRjMjZkYTcyODM5NmU2NmQzOTJkNWRjYjhkYWMzMGMzNyB1cHN0cmVhbS4KCkluIHJh cmUgY2FzZXMgYSBkaXJlY3RvcnkgY2FuIGJlIHJlbmFtZWQgb3V0IGZyb20gdW5kZXIgYSBiaW5k IG1vdW50LgpJbiB0aG9zZSBjYXNlcyB3aXRob3V0IHNwZWNpYWwgaGFuZGxpbmcgaXQgYmVjb21l cyBwb3NzaWJsZSB0byB3YWxrIHVwCnRoZSBkaXJlY3RvcnkgdHJlZSB0byB0aGUgcm9vdCBkZW50 cnkgb2YgdGhlIGZpbGVzeXN0ZW0gYW5kIGRvd24KZnJvbSB0aGUgcm9vdCBkZW50cnkgdG8gZXZl cnkgb3RoZXIgZmlsZSBvciBkaXJlY3Rvcnkgb24gdGhlIGZpbGVzeXN0ZW0uCgpMaWtlIGRpdmlz aW9uIGJ5IHplcm8gLi4gZnJvbSBhbiB1bmNvbm5lY3RlZCBwYXRoIGNhbiBub3QgYmUgZ2l2ZW4K YSB1c2VmdWwgc2VtYW50aWMgYXMgdGhlcmUgaXMgbm8gcHJlZGljdGluZyBhdCB3aGljaCBwYXRo IGNvbXBvbmVudAp0aGUgY29kZSB3aWxsIHJlYWxpemUgaXQgaXMgdW5jb25uZWN0ZWQuICBXZSBj ZXJ0YWlubHkgY2FuIG5vdCBtYXRjaAp0aGUgY3VycmVudCBiZWhhdmlvciBhcyB0aGUgY3VycmVu dCBiZWhhdmlvciBpcyBhIHNlY3VyaXR5IGhvbGUuCgpUaGVyZWZvcmUgd2hlbiBlbmNvdW50aW5n IC4uIHdoZW4gZm9sbG93aW5nIGFuIHVuY29ubmVjdGVkIHBhdGgKcmV0dXJuIC1FTk9FTlQuCgot IEFkZCBhIGZ1bmN0aW9uIHBhdGhfY29ubmVjdGVkIHRvIHZlcmlmeSBwYXRoLT5kZW50cnkgaXMg cmVhY2hhYmxlCiAgZnJvbSBwYXRoLT5tbnQubW50X3Jvb3QuICBBS0EgdG8gdmFsaWRhdGUgdGhh dCByZW5hbWUgZGlkIG5vdCBkbwogIHNvbWV0aGluZyBuYXN0eSB0byB0aGUgYmluZCBtb3VudC4K CiAgVG8gYXZvaWQgcmFjZXMgcGF0aF9jb25uZWN0ZWQgbXVzdCBiZSBjYWxsZWQgYWZ0ZXIgZm9s bG93aW5nIGEgcGF0aAogIGNvbXBvbmVudCB0byBpdCdzIG5leHQgcGF0aCBjb21wb25lbnQuCgpT aWduZWQtb2ZmLWJ5OiAiRXJpYyBXLiBCaWVkZXJtYW4iIDxlYmllZGVybUB4bWlzc2lvbi5jb20+ ClNpZ25lZC1vZmYtYnk6IEFsIFZpcm8gPHZpcm9AemVuaXYubGludXgub3JnLnVrPgotLS0KIGZz L25hbWVpLmMgfCAzMSArKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tCiAxIGZpbGUgY2hh bmdlZCwgMjggaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9mcy9u YW1laS5jIGIvZnMvbmFtZWkuYwppbmRleCAwOTdiYmVhYzhjNjYuLmQxYzBiOTFiNDUzNCAxMDA2 NDQKLS0tIGEvZnMvbmFtZWkuYworKysgYi9mcy9uYW1laS5jCkBAIC00NzMsNiArNDczLDI0IEBA IHZvaWQgcGF0aF9wdXQoY29uc3Qgc3RydWN0IHBhdGggKnBhdGgpCiB9CiBFWFBPUlRfU1lNQk9M KHBhdGhfcHV0KTsKIAorLyoqCisgKiBwYXRoX2Nvbm5lY3RlZCAtIFZlcmlmeSB0aGF0IGEgcGF0 aC0+ZGVudHJ5IGlzIGJlbG93IHBhdGgtPm1udC5tbnRfcm9vdAorICogQHBhdGg6IG5hbWVpZGF0 ZSB0byB2ZXJpZnkKKyAqCisgKiBSZW5hbWUgY2FuIHNvbWV0aW1lcyBtb3ZlIGEgZmlsZSBvciBk aXJlY3Rvcnkgb3V0c2lkZSBvZiBhIGJpbmQKKyAqIG1vdW50LCBwYXRoX2Nvbm5lY3RlZCBhbGxv d3MgdGhvc2UgY2FzZXMgdG8gYmUgZGV0ZWN0ZWQuCisgKi8KK3N0YXRpYyBib29sIHBhdGhfY29u bmVjdGVkKGNvbnN0IHN0cnVjdCBwYXRoICpwYXRoKQoreworCXN0cnVjdCB2ZnNtb3VudCAqbW50 ID0gcGF0aC0+bW50OworCisJLyogT25seSBiaW5kIG1vdW50cyBjYW4gaGF2ZSBkaXNjb25uZWN0 ZWQgcGF0aHMgKi8KKwlpZiAobW50LT5tbnRfcm9vdCA9PSBtbnQtPm1udF9zYi0+c19yb290KQor CQlyZXR1cm4gdHJ1ZTsKKworCXJldHVybiBpc19zdWJkaXIocGF0aC0+ZGVudHJ5LCBtbnQtPm1u dF9yb290KTsKK30KKwogLyoKICAqIFBhdGggd2Fsa2luZyBoYXMgMiBtb2RlcywgcmN1LXdhbGsg YW5kIHJlZi13YWxrIChzZWUKICAqIERvY3VtZW50YXRpb24vZmlsZXN5c3RlbXMvcGF0aC1sb29r dXAudHh0KS4gIEluIHNpdHVhdGlvbnMgd2hlbiB3ZSBjYW4ndApAQCAtMTE2Miw2ICsxMTgwLDgg QEAgc3RhdGljIGludCBmb2xsb3dfZG90ZG90X3JjdShzdHJ1Y3QgbmFtZWlkYXRhICpuZCkKIAkJ CQlnb3RvIGZhaWxlZDsKIAkJCW5kLT5wYXRoLmRlbnRyeSA9IHBhcmVudDsKIAkJCW5kLT5zZXEg PSBzZXE7CisJCQlpZiAodW5saWtlbHkoIXBhdGhfY29ubmVjdGVkKCZuZC0+cGF0aCkpKQorCQkJ CWdvdG8gZmFpbGVkOwogCQkJYnJlYWs7CiAJCX0KIAkJaWYgKCFmb2xsb3dfdXBfcmN1KCZuZC0+ cGF0aCkpCkBAIC0xMjQ1LDcgKzEyNjUsNyBAQCBzdGF0aWMgdm9pZCBmb2xsb3dfbW91bnQoc3Ry dWN0IHBhdGggKnBhdGgpCiAJfQogfQogCi1zdGF0aWMgdm9pZCBmb2xsb3dfZG90ZG90KHN0cnVj dCBuYW1laWRhdGEgKm5kKQorc3RhdGljIGludCBmb2xsb3dfZG90ZG90KHN0cnVjdCBuYW1laWRh dGEgKm5kKQogewogCWlmICghbmQtPnJvb3QubW50KQogCQlzZXRfcm9vdChuZCk7CkBAIC0xMjYx LDYgKzEyODEsMTAgQEAgc3RhdGljIHZvaWQgZm9sbG93X2RvdGRvdChzdHJ1Y3QgbmFtZWlkYXRh ICpuZCkKIAkJCS8qIHJhcmUgY2FzZSBvZiBsZWdpdGltYXRlIGRnZXRfcGFyZW50KCkuLi4gKi8K IAkJCW5kLT5wYXRoLmRlbnRyeSA9IGRnZXRfcGFyZW50KG5kLT5wYXRoLmRlbnRyeSk7CiAJCQlk cHV0KG9sZCk7CisJCQlpZiAodW5saWtlbHkoIXBhdGhfY29ubmVjdGVkKCZuZC0+cGF0aCkpKSB7 CisJCQkJcGF0aF9wdXQoJm5kLT5wYXRoKTsKKwkJCQlyZXR1cm4gLUVOT0VOVDsKKwkJCX0KIAkJ CWJyZWFrOwogCQl9CiAJCWlmICghZm9sbG93X3VwKCZuZC0+cGF0aCkpCkBAIC0xMjY4LDYgKzEy OTIsNyBAQCBzdGF0aWMgdm9pZCBmb2xsb3dfZG90ZG90KHN0cnVjdCBuYW1laWRhdGEgKm5kKQog CX0KIAlmb2xsb3dfbW91bnQoJm5kLT5wYXRoKTsKIAluZC0+aW5vZGUgPSBuZC0+cGF0aC5kZW50 cnktPmRfaW5vZGU7CisJcmV0dXJuIDA7CiB9CiAKIC8qCkBAIC0xNDkxLDcgKzE1MTYsNyBAQCBz dGF0aWMgaW5saW5lIGludCBoYW5kbGVfZG90cyhzdHJ1Y3QgbmFtZWlkYXRhICpuZCwgaW50IHR5 cGUpCiAJCQlpZiAoZm9sbG93X2RvdGRvdF9yY3UobmQpKQogCQkJCXJldHVybiAtRUNISUxEOwog CQl9IGVsc2UKLQkJCWZvbGxvd19kb3Rkb3QobmQpOworCQkJcmV0dXJuIGZvbGxvd19kb3Rkb3Qo bmQpOwogCX0KIAlyZXR1cm4gMDsKIH0KQEAgLTIyNDgsNyArMjI3Myw3IEBAIG1vdW50cG9pbnRf bGFzdChzdHJ1Y3QgbmFtZWlkYXRhICpuZCwgc3RydWN0IHBhdGggKnBhdGgpCiAJaWYgKHVubGlr ZWx5KG5kLT5sYXN0X3R5cGUgIT0gTEFTVF9OT1JNKSkgewogCQllcnJvciA9IGhhbmRsZV9kb3Rz KG5kLCBuZC0+bGFzdF90eXBlKTsKIAkJaWYgKGVycm9yKQotCQkJZ290byBvdXQ7CisJCQlyZXR1 cm4gZXJyb3I7CiAJCWRlbnRyeSA9IGRnZXQobmQtPnBhdGguZGVudHJ5KTsKIAkJZ290byBkb25l OwogCX0KLS0gCjIuMi4xCgo= --=-=-= Content-Type: application/mbox Content-Disposition: attachment; filename=bind-3.10.mbox Content-Transfer-Encoding: base64 RnJvbSBmYjIzYjliM2RlY2U2MmI0Y2RmNjUxNTA1MTgxMTBkYjVmYjc0NjZkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiRXJpYyBXLiBCaWVkZXJtYW4iIDxlYmllZGVybUB4bWlzc2lv bi5jb20+CkRhdGU6IFNhdCwgMTUgQXVnIDIwMTUgMTM6MzY6MTIgLTA1MDAKU3ViamVjdDogW1BB VENIIDEvMl0gZGNhY2hlOiBIYW5kbGUgZXNjYXBlZCBwYXRocyBpbiBwcmVwZW5kX3BhdGgKCmNv bW1pdCBjZGU5M2JlNDVhOGE5MGQ4YzI2NGM3NzZmYWI2MzQ4N2I1MDM4YTY1IHVwc3RyZWFtLgoK QSByZW5hbWUgY2FuIHJlc3VsdCBpbiBhIGRlbnRyeSB0aGF0IGJ5IHdhbGtpbmcgdXAgZF9wYXJl bnQKd2lsbCBuZXZlciByZWFjaCBpdCdzIG1udF9yb290LiAgRm9yIGxhY2sgb2YgYSBiZXR0ZXIg dGVybQpJIGNhbGwgdGhpcyBhbiBlc2NhcGVkIHBhdGguCgpwcmVwZW5kX3BhdGggaXMgY2FsbGVk IGJ5IGZvdXIgZGlmZmVyZW50IGZ1bmN0aW9ucyBfX2RfcGF0aCwKZF9hYnNvbHV0ZV9wYXRoLCBk X3BhdGgsIGFuZCBnZXRjd2QuCgpfX2RfcGF0aCBvbmx5IHdhbnRzIHRvIHNlZSBwYXRocyBhcmUg Y29ubmVjdGVkIHRvIHRoZSByb290IGl0IHBhc3Nlcwppbi4gIFNvIF9fZF9wYXRoIG5lZWRzIHBy ZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3IuCgpkX2Fic29sdXRlX3BhdGggc2ltaWxhcmx5 IHdhbnRzIHRvIHNlZSBwYXRocyB0aGF0IGFyZSBjb25uZWN0ZWQgdG8Kc29tZSByb290LiAgRXNj YXBlZCBwYXRocyBhcmUgbm90IGNvbm5lY3RlZCB0byBhbnkgbW50X3Jvb3Qgc28KZF9hYnNvbHV0 ZV9wYXRoIG5lZWRzIHByZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3IgZ3JlYXRlcgp0aGFu IDEuICBTbyBlc2NhcGVkIHBhdGhzIHdpbGwgYmUgdHJlYXRlZCBsaWtlIHBhdGhzIG9uIGxhemls eQp1bm1vdW50ZWQgbW91bnRzLgoKZ2V0Y3dkIG5lZWRzIHRvIHByZXBlbmQgIih1bnJlYWNoYWJs ZSkiIHNvIGdldGN3ZCBhbHNvIG5lZWRzCnByZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3Iu CgpkX3BhdGggaXMgdGhlIGludGVyZXN0aW5nIGhvbGQgb3V0LiAgZF9wYXRoIGp1c3Qgd2FudHMg dG8gcHJpbnQKc29tZXRoaW5nLCBhbmQgZG9lcyBub3QgY2FyZSBhYm91dCB0aGUgd2VpcmQgY2Fz ZXMuICBXaGljaCByYWlzZXMKdGhlIHF1ZXN0aW9uIHdoYXQgc2hvdWxkIGJlIHByaW50ZWQ/CgpH aXZlbiB0aGF0IDxlc2NhcGVkX3BhdGg+Lzxhbnl0aGluZz4gc2hvdWxkIHJlc3VsdCBpbiAtRU5P RU5UIEkKYmVsaWV2ZSBpdCBpcyBkZXNpcmFibGUgZm9yIGVzY2FwZWQgcGF0aHMgdG8gYmUgcHJp bnRlZCBhcyBlbXB0eQpwYXRocy4gIEFzIHRoZXJlIGFyZSBub3QgcmVhbGx5IGFueSBtZWFuaW5m dWwgcGF0aCBjb21wb25lbnRzIHdoZW4KY29uc2lkZXJlZCBmcm9tIHRoZSBwZXJzcGVjdGl2ZSBv ZiBhIG1vdW50IHRyZWUuCgpTbyB0d2VhayBwcmVwZW5kX3BhdGggdG8gcmV0dXJuIGFuIGVtcHR5 IHBhdGggd2l0aCBhbiBuZXcgZXJyb3IKY29kZSBvZiAzIHdoZW4gaXQgZW5jb3VudGVycyBhbiBl c2NhcGVkIHBhdGguCgpTaWduZWQtb2ZmLWJ5OiAiRXJpYyBXLiBCaWVkZXJtYW4iIDxlYmllZGVy bUB4bWlzc2lvbi5jb20+ClNpZ25lZC1vZmYtYnk6IEFsIFZpcm8gPHZpcm9AemVuaXYubGludXgu b3JnLnVrPgotLS0KIGZzL2RjYWNoZS5jIHwgMTAgKysrKysrKysrKwogMSBmaWxlIGNoYW5nZWQs IDEwIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9mcy9kY2FjaGUuYyBiL2ZzL2RjYWNoZS5j CmluZGV4IDkwYmUyODA5ZTE1YS4uMzZkMzdiNmRjMWY3IDEwMDY0NAotLS0gYS9mcy9kY2FjaGUu YworKysgYi9mcy9kY2FjaGUuYwpAQCAtMjUzNCw2ICsyNTM0LDggQEAgc3RhdGljIGludCBwcmVw ZW5kX3BhdGgoY29uc3Qgc3RydWN0IHBhdGggKnBhdGgsCiAJc3RydWN0IGRlbnRyeSAqZGVudHJ5 ID0gcGF0aC0+ZGVudHJ5OwogCXN0cnVjdCB2ZnNtb3VudCAqdmZzbW50ID0gcGF0aC0+bW50Owog CXN0cnVjdCBtb3VudCAqbW50ID0gcmVhbF9tb3VudCh2ZnNtbnQpOworCWNoYXIgKm9yaWdfYnVm ZmVyID0gKmJ1ZmZlcjsKKwlpbnQgb3JpZ19sZW4gPSAqYnVmbGVuOwogCWJvb2wgc2xhc2ggPSBm YWxzZTsKIAlpbnQgZXJyb3IgPSAwOwogCkBAIC0yNTQxLDYgKzI1NDMsMTQgQEAgc3RhdGljIGlu dCBwcmVwZW5kX3BhdGgoY29uc3Qgc3RydWN0IHBhdGggKnBhdGgsCiAJCXN0cnVjdCBkZW50cnkg KiBwYXJlbnQ7CiAKIAkJaWYgKGRlbnRyeSA9PSB2ZnNtbnQtPm1udF9yb290IHx8IElTX1JPT1Qo ZGVudHJ5KSkgeworCQkJLyogRXNjYXBlZD8gKi8KKwkJCWlmIChkZW50cnkgIT0gdmZzbW50LT5t bnRfcm9vdCkgeworCQkJCSpidWZmZXIgPSBvcmlnX2J1ZmZlcjsKKwkJCQkqYnVmbGVuID0gb3Jp Z19sZW47CisJCQkJc2xhc2ggPSBmYWxzZTsKKwkJCQllcnJvciA9IDM7CisJCQkJZ290byBnbG9i YWxfcm9vdDsKKwkJCX0KIAkJCS8qIEdsb2JhbCByb290PyAqLwogCQkJaWYgKCFtbnRfaGFzX3Bh cmVudChtbnQpKQogCQkJCWdvdG8gZ2xvYmFsX3Jvb3Q7Ci0tIAoyLjIuMQoKCkZyb20gNTVmMjE5 ZjYyZThhMWMwMmUzYzhkMDMxZDVjYzQzOGNiMWEyYjIxMyBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogIkVyaWMgVy4gQmllZGVybWFuIiA8ZWJpZWRlcm1AeG1pc3Npb24uY29tPgpEYXRl OiBTYXQsIDE1IEF1ZyAyMDE1IDIwOjI3OjEzIC0wNTAwClN1YmplY3Q6IFtQQVRDSCAyLzJdIHZm czogVGVzdCBmb3IgYW5kIGhhbmRsZSBwYXRocyB0aGF0IGFyZSB1bnJlYWNoYWJsZSBmcm9tCiB0 aGVpciBtbnRfcm9vdAoKY29tbWl0IDM5N2Q0MjVkYzI2ZGE3MjgzOTZlNjZkMzkyZDVkY2I4ZGFj MzBjMzcgdXBzdHJlYW0uCgpJbiByYXJlIGNhc2VzIGEgZGlyZWN0b3J5IGNhbiBiZSByZW5hbWVk IG91dCBmcm9tIHVuZGVyIGEgYmluZCBtb3VudC4KSW4gdGhvc2UgY2FzZXMgd2l0aG91dCBzcGVj aWFsIGhhbmRsaW5nIGl0IGJlY29tZXMgcG9zc2libGUgdG8gd2FsayB1cAp0aGUgZGlyZWN0b3J5 IHRyZWUgdG8gdGhlIHJvb3QgZGVudHJ5IG9mIHRoZSBmaWxlc3lzdGVtIGFuZCBkb3duCmZyb20g dGhlIHJvb3QgZGVudHJ5IHRvIGV2ZXJ5IG90aGVyIGZpbGUgb3IgZGlyZWN0b3J5IG9uIHRoZSBm aWxlc3lzdGVtLgoKTGlrZSBkaXZpc2lvbiBieSB6ZXJvIC4uIGZyb20gYW4gdW5jb25uZWN0ZWQg cGF0aCBjYW4gbm90IGJlIGdpdmVuCmEgdXNlZnVsIHNlbWFudGljIGFzIHRoZXJlIGlzIG5vIHBy ZWRpY3RpbmcgYXQgd2hpY2ggcGF0aCBjb21wb25lbnQKdGhlIGNvZGUgd2lsbCByZWFsaXplIGl0 IGlzIHVuY29ubmVjdGVkLiAgV2UgY2VydGFpbmx5IGNhbiBub3QgbWF0Y2gKdGhlIGN1cnJlbnQg YmVoYXZpb3IgYXMgdGhlIGN1cnJlbnQgYmVoYXZpb3IgaXMgYSBzZWN1cml0eSBob2xlLgoKVGhl cmVmb3JlIHdoZW4gZW5jb3VudGluZyAuLiB3aGVuIGZvbGxvd2luZyBhbiB1bmNvbm5lY3RlZCBw YXRoCnJldHVybiAtRU5PRU5ULgoKLSBBZGQgYSBmdW5jdGlvbiBwYXRoX2Nvbm5lY3RlZCB0byB2 ZXJpZnkgcGF0aC0+ZGVudHJ5IGlzIHJlYWNoYWJsZQogIGZyb20gcGF0aC0+bW50Lm1udF9yb290 LiAgQUtBIHRvIHZhbGlkYXRlIHRoYXQgcmVuYW1lIGRpZCBub3QgZG8KICBzb21ldGhpbmcgbmFz dHkgdG8gdGhlIGJpbmQgbW91bnQuCgogIFRvIGF2b2lkIHJhY2VzIHBhdGhfY29ubmVjdGVkIG11 c3QgYmUgY2FsbGVkIGFmdGVyIGZvbGxvd2luZyBhIHBhdGgKICBjb21wb25lbnQgdG8gaXQncyBu ZXh0IHBhdGggY29tcG9uZW50LgoKU2lnbmVkLW9mZi1ieTogIkVyaWMgVy4gQmllZGVybWFuIiA8 ZWJpZWRlcm1AeG1pc3Npb24uY29tPgpTaWduZWQtb2ZmLWJ5OiBBbCBWaXJvIDx2aXJvQHplbml2 LmxpbnV4Lm9yZy51az4KLS0tCiBmcy9uYW1laS5jIHwgMjkgKysrKysrKysrKysrKysrKysrKysr KysrKysrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyNyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL2ZzL25hbWVpLmMgYi9mcy9uYW1laS5jCmluZGV4IDAzNmMyMTI0NmQ2 YS4uMTU3YzNkYmFjZjZjIDEwMDY0NAotLS0gYS9mcy9uYW1laS5jCisrKyBiL2ZzL25hbWVpLmMK QEAgLTQ3Myw2ICs0NzMsMjQgQEAgdm9pZCBwYXRoX3B1dChjb25zdCBzdHJ1Y3QgcGF0aCAqcGF0 aCkKIH0KIEVYUE9SVF9TWU1CT0wocGF0aF9wdXQpOwogCisvKioKKyAqIHBhdGhfY29ubmVjdGVk IC0gVmVyaWZ5IHRoYXQgYSBwYXRoLT5kZW50cnkgaXMgYmVsb3cgcGF0aC0+bW50Lm1udF9yb290 CisgKiBAcGF0aDogbmFtZWlkYXRlIHRvIHZlcmlmeQorICoKKyAqIFJlbmFtZSBjYW4gc29tZXRp bWVzIG1vdmUgYSBmaWxlIG9yIGRpcmVjdG9yeSBvdXRzaWRlIG9mIGEgYmluZAorICogbW91bnQs IHBhdGhfY29ubmVjdGVkIGFsbG93cyB0aG9zZSBjYXNlcyB0byBiZSBkZXRlY3RlZC4KKyAqLwor c3RhdGljIGJvb2wgcGF0aF9jb25uZWN0ZWQoY29uc3Qgc3RydWN0IHBhdGggKnBhdGgpCit7CisJ c3RydWN0IHZmc21vdW50ICptbnQgPSBwYXRoLT5tbnQ7CisKKwkvKiBPbmx5IGJpbmQgbW91bnRz IGNhbiBoYXZlIGRpc2Nvbm5lY3RlZCBwYXRocyAqLworCWlmIChtbnQtPm1udF9yb290ID09IG1u dC0+bW50X3NiLT5zX3Jvb3QpCisJCXJldHVybiB0cnVlOworCisJcmV0dXJuIGlzX3N1YmRpcihw YXRoLT5kZW50cnksIG1udC0+bW50X3Jvb3QpOworfQorCiAvKgogICogUGF0aCB3YWxraW5nIGhh cyAyIG1vZGVzLCByY3Utd2FsayBhbmQgcmVmLXdhbGsgKHNlZQogICogRG9jdW1lbnRhdGlvbi9m aWxlc3lzdGVtcy9wYXRoLWxvb2t1cC50eHQpLiAgSW4gc2l0dWF0aW9ucyB3aGVuIHdlIGNhbid0 CkBAIC0xMTQ4LDYgKzExNjYsOCBAQCBzdGF0aWMgaW50IGZvbGxvd19kb3Rkb3RfcmN1KHN0cnVj dCBuYW1laWRhdGEgKm5kKQogCQkJCWdvdG8gZmFpbGVkOwogCQkJbmQtPnBhdGguZGVudHJ5ID0g cGFyZW50OwogCQkJbmQtPnNlcSA9IHNlcTsKKwkJCWlmICh1bmxpa2VseSghcGF0aF9jb25uZWN0 ZWQoJm5kLT5wYXRoKSkpCisJCQkJZ290byBmYWlsZWQ7CiAJCQlicmVhazsKIAkJfQogCQlpZiAo IWZvbGxvd191cF9yY3UoJm5kLT5wYXRoKSkKQEAgLTEyMzEsNyArMTI1MSw3IEBAIHN0YXRpYyB2 b2lkIGZvbGxvd19tb3VudChzdHJ1Y3QgcGF0aCAqcGF0aCkKIAl9CiB9CiAKLXN0YXRpYyB2b2lk IGZvbGxvd19kb3Rkb3Qoc3RydWN0IG5hbWVpZGF0YSAqbmQpCitzdGF0aWMgaW50IGZvbGxvd19k b3Rkb3Qoc3RydWN0IG5hbWVpZGF0YSAqbmQpCiB7CiAJc2V0X3Jvb3QobmQpOwogCkBAIC0xMjQ2 LDYgKzEyNjYsMTAgQEAgc3RhdGljIHZvaWQgZm9sbG93X2RvdGRvdChzdHJ1Y3QgbmFtZWlkYXRh ICpuZCkKIAkJCS8qIHJhcmUgY2FzZSBvZiBsZWdpdGltYXRlIGRnZXRfcGFyZW50KCkuLi4gKi8K IAkJCW5kLT5wYXRoLmRlbnRyeSA9IGRnZXRfcGFyZW50KG5kLT5wYXRoLmRlbnRyeSk7CiAJCQlk cHV0KG9sZCk7CisJCQlpZiAodW5saWtlbHkoIXBhdGhfY29ubmVjdGVkKCZuZC0+cGF0aCkpKSB7 CisJCQkJcGF0aF9wdXQoJm5kLT5wYXRoKTsKKwkJCQlyZXR1cm4gLUVOT0VOVDsKKwkJCX0KIAkJ CWJyZWFrOwogCQl9CiAJCWlmICghZm9sbG93X3VwKCZuZC0+cGF0aCkpCkBAIC0xMjUzLDYgKzEy NzcsNyBAQCBzdGF0aWMgdm9pZCBmb2xsb3dfZG90ZG90KHN0cnVjdCBuYW1laWRhdGEgKm5kKQog CX0KIAlmb2xsb3dfbW91bnQoJm5kLT5wYXRoKTsKIAluZC0+aW5vZGUgPSBuZC0+cGF0aC5kZW50 cnktPmRfaW5vZGU7CisJcmV0dXJuIDA7CiB9CiAKIC8qCkBAIC0xNDc2LDcgKzE1MDEsNyBAQCBz dGF0aWMgaW5saW5lIGludCBoYW5kbGVfZG90cyhzdHJ1Y3QgbmFtZWlkYXRhICpuZCwgaW50IHR5 cGUpCiAJCQlpZiAoZm9sbG93X2RvdGRvdF9yY3UobmQpKQogCQkJCXJldHVybiAtRUNISUxEOwog CQl9IGVsc2UKLQkJCWZvbGxvd19kb3Rkb3QobmQpOworCQkJcmV0dXJuIGZvbGxvd19kb3Rkb3Qo bmQpOwogCX0KIAlyZXR1cm4gMDsKIH0KLS0gCjIuMi4xCgo= --=-=-= Content-Type: application/mbox Content-Disposition: attachment; filename=bind-3.4.mbox Content-Transfer-Encoding: base64 RnJvbSBkMWMzYzU4MjY3ZWQxOGJlOTI3NWY1M2M0OTY3M2NiOTcwMTY1ZjJhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiRXJpYyBXLiBCaWVkZXJtYW4iIDxlYmllZGVybUB4bWlzc2lv bi5jb20+CkRhdGU6IFNhdCwgMTUgQXVnIDIwMTUgMTM6MzY6MTIgLTA1MDAKU3ViamVjdDogW1BB VENIIDEvMl0gZGNhY2hlOiBIYW5kbGUgZXNjYXBlZCBwYXRocyBpbiBwcmVwZW5kX3BhdGgKCmNv bW1pdCBjZGU5M2JlNDVhOGE5MGQ4YzI2NGM3NzZmYWI2MzQ4N2I1MDM4YTY1IHVwc3RyZWFtLgoK QSByZW5hbWUgY2FuIHJlc3VsdCBpbiBhIGRlbnRyeSB0aGF0IGJ5IHdhbGtpbmcgdXAgZF9wYXJl bnQKd2lsbCBuZXZlciByZWFjaCBpdCdzIG1udF9yb290LiAgRm9yIGxhY2sgb2YgYSBiZXR0ZXIg dGVybQpJIGNhbGwgdGhpcyBhbiBlc2NhcGVkIHBhdGguCgpwcmVwZW5kX3BhdGggaXMgY2FsbGVk IGJ5IGZvdXIgZGlmZmVyZW50IGZ1bmN0aW9ucyBfX2RfcGF0aCwKZF9hYnNvbHV0ZV9wYXRoLCBk X3BhdGgsIGFuZCBnZXRjd2QuCgpfX2RfcGF0aCBvbmx5IHdhbnRzIHRvIHNlZSBwYXRocyBhcmUg Y29ubmVjdGVkIHRvIHRoZSByb290IGl0IHBhc3Nlcwppbi4gIFNvIF9fZF9wYXRoIG5lZWRzIHBy ZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3IuCgpkX2Fic29sdXRlX3BhdGggc2ltaWxhcmx5 IHdhbnRzIHRvIHNlZSBwYXRocyB0aGF0IGFyZSBjb25uZWN0ZWQgdG8Kc29tZSByb290LiAgRXNj YXBlZCBwYXRocyBhcmUgbm90IGNvbm5lY3RlZCB0byBhbnkgbW50X3Jvb3Qgc28KZF9hYnNvbHV0 ZV9wYXRoIG5lZWRzIHByZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3IgZ3JlYXRlcgp0aGFu IDEuICBTbyBlc2NhcGVkIHBhdGhzIHdpbGwgYmUgdHJlYXRlZCBsaWtlIHBhdGhzIG9uIGxhemls eQp1bm1vdW50ZWQgbW91bnRzLgoKZ2V0Y3dkIG5lZWRzIHRvIHByZXBlbmQgIih1bnJlYWNoYWJs ZSkiIHNvIGdldGN3ZCBhbHNvIG5lZWRzCnByZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3Iu CgpkX3BhdGggaXMgdGhlIGludGVyZXN0aW5nIGhvbGQgb3V0LiAgZF9wYXRoIGp1c3Qgd2FudHMg dG8gcHJpbnQKc29tZXRoaW5nLCBhbmQgZG9lcyBub3QgY2FyZSBhYm91dCB0aGUgd2VpcmQgY2Fz ZXMuICBXaGljaCByYWlzZXMKdGhlIHF1ZXN0aW9uIHdoYXQgc2hvdWxkIGJlIHByaW50ZWQ/CgpH aXZlbiB0aGF0IDxlc2NhcGVkX3BhdGg+Lzxhbnl0aGluZz4gc2hvdWxkIHJlc3VsdCBpbiAtRU5P RU5UIEkKYmVsaWV2ZSBpdCBpcyBkZXNpcmFibGUgZm9yIGVzY2FwZWQgcGF0aHMgdG8gYmUgcHJp bnRlZCBhcyBlbXB0eQpwYXRocy4gIEFzIHRoZXJlIGFyZSBub3QgcmVhbGx5IGFueSBtZWFuaW5m dWwgcGF0aCBjb21wb25lbnRzIHdoZW4KY29uc2lkZXJlZCBmcm9tIHRoZSBwZXJzcGVjdGl2ZSBv ZiBhIG1vdW50IHRyZWUuCgpTbyB0d2VhayBwcmVwZW5kX3BhdGggdG8gcmV0dXJuIGFuIGVtcHR5 IHBhdGggd2l0aCBhbiBuZXcgZXJyb3IKY29kZSBvZiAzIHdoZW4gaXQgZW5jb3VudGVycyBhbiBl c2NhcGVkIHBhdGguCgpTaWduZWQtb2ZmLWJ5OiAiRXJpYyBXLiBCaWVkZXJtYW4iIDxlYmllZGVy bUB4bWlzc2lvbi5jb20+ClNpZ25lZC1vZmYtYnk6IEFsIFZpcm8gPHZpcm9AemVuaXYubGludXgu b3JnLnVrPgotLS0KIGZzL2RjYWNoZS5jIHwgMTAgKysrKysrKysrKwogMSBmaWxlIGNoYW5nZWQs IDEwIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9mcy9kY2FjaGUuYyBiL2ZzL2RjYWNoZS5j CmluZGV4IGQwNzFlYTc2ODA1Ny4uMDNlYjJjMmE3ZTViIDEwMDY0NAotLS0gYS9mcy9kY2FjaGUu YworKysgYi9mcy9kY2FjaGUuYwpAQCAtMjUxOCw2ICsyNTE4LDggQEAgc3RhdGljIGludCBwcmVw ZW5kX3BhdGgoY29uc3Qgc3RydWN0IHBhdGggKnBhdGgsCiAJc3RydWN0IGRlbnRyeSAqZGVudHJ5 ID0gcGF0aC0+ZGVudHJ5OwogCXN0cnVjdCB2ZnNtb3VudCAqdmZzbW50ID0gcGF0aC0+bW50Owog CXN0cnVjdCBtb3VudCAqbW50ID0gcmVhbF9tb3VudCh2ZnNtbnQpOworCWNoYXIgKm9yaWdfYnVm ZmVyID0gKmJ1ZmZlcjsKKwlpbnQgb3JpZ19sZW4gPSAqYnVmbGVuOwogCWJvb2wgc2xhc2ggPSBm YWxzZTsKIAlpbnQgZXJyb3IgPSAwOwogCkBAIC0yNTI1LDYgKzI1MjcsMTQgQEAgc3RhdGljIGlu dCBwcmVwZW5kX3BhdGgoY29uc3Qgc3RydWN0IHBhdGggKnBhdGgsCiAJCXN0cnVjdCBkZW50cnkg KiBwYXJlbnQ7CiAKIAkJaWYgKGRlbnRyeSA9PSB2ZnNtbnQtPm1udF9yb290IHx8IElTX1JPT1Qo ZGVudHJ5KSkgeworCQkJLyogRXNjYXBlZD8gKi8KKwkJCWlmIChkZW50cnkgIT0gdmZzbW50LT5t bnRfcm9vdCkgeworCQkJCSpidWZmZXIgPSBvcmlnX2J1ZmZlcjsKKwkJCQkqYnVmbGVuID0gb3Jp Z19sZW47CisJCQkJc2xhc2ggPSBmYWxzZTsKKwkJCQllcnJvciA9IDM7CisJCQkJZ290byBnbG9i YWxfcm9vdDsKKwkJCX0KIAkJCS8qIEdsb2JhbCByb290PyAqLwogCQkJaWYgKCFtbnRfaGFzX3Bh cmVudChtbnQpKQogCQkJCWdvdG8gZ2xvYmFsX3Jvb3Q7Ci0tIAoyLjIuMQoKCkZyb20gYjk3ZmQz NGViZjkzOThhMWY3MmIzZTA0Y2YzNzFiMTU0YzFjZGI0ZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogIkVyaWMgVy4gQmllZGVybWFuIiA8ZWJpZWRlcm1AeG1pc3Npb24uY29tPgpEYXRl OiBTYXQsIDE1IEF1ZyAyMDE1IDIwOjI3OjEzIC0wNTAwClN1YmplY3Q6IFtQQVRDSCAyLzJdIHZm czogVGVzdCBmb3IgYW5kIGhhbmRsZSBwYXRocyB0aGF0IGFyZSB1bnJlYWNoYWJsZSBmcm9tCiB0 aGVpciBtbnRfcm9vdAoKY29tbWl0IDM5N2Q0MjVkYzI2ZGE3MjgzOTZlNjZkMzkyZDVkY2I4ZGFj MzBjMzcgdXBzdHJlYW0uCgpJbiByYXJlIGNhc2VzIGEgZGlyZWN0b3J5IGNhbiBiZSByZW5hbWVk IG91dCBmcm9tIHVuZGVyIGEgYmluZCBtb3VudC4KSW4gdGhvc2UgY2FzZXMgd2l0aG91dCBzcGVj aWFsIGhhbmRsaW5nIGl0IGJlY29tZXMgcG9zc2libGUgdG8gd2FsayB1cAp0aGUgZGlyZWN0b3J5 IHRyZWUgdG8gdGhlIHJvb3QgZGVudHJ5IG9mIHRoZSBmaWxlc3lzdGVtIGFuZCBkb3duCmZyb20g dGhlIHJvb3QgZGVudHJ5IHRvIGV2ZXJ5IG90aGVyIGZpbGUgb3IgZGlyZWN0b3J5IG9uIHRoZSBm aWxlc3lzdGVtLgoKTGlrZSBkaXZpc2lvbiBieSB6ZXJvIC4uIGZyb20gYW4gdW5jb25uZWN0ZWQg cGF0aCBjYW4gbm90IGJlIGdpdmVuCmEgdXNlZnVsIHNlbWFudGljIGFzIHRoZXJlIGlzIG5vIHBy ZWRpY3RpbmcgYXQgd2hpY2ggcGF0aCBjb21wb25lbnQKdGhlIGNvZGUgd2lsbCByZWFsaXplIGl0 IGlzIHVuY29ubmVjdGVkLiAgV2UgY2VydGFpbmx5IGNhbiBub3QgbWF0Y2gKdGhlIGN1cnJlbnQg YmVoYXZpb3IgYXMgdGhlIGN1cnJlbnQgYmVoYXZpb3IgaXMgYSBzZWN1cml0eSBob2xlLgoKVGhl cmVmb3JlIHdoZW4gZW5jb3VudGluZyAuLiB3aGVuIGZvbGxvd2luZyBhbiB1bmNvbm5lY3RlZCBw YXRoCnJldHVybiAtRU5PRU5ULgoKLSBBZGQgYSBmdW5jdGlvbiBwYXRoX2Nvbm5lY3RlZCB0byB2 ZXJpZnkgcGF0aC0+ZGVudHJ5IGlzIHJlYWNoYWJsZQogIGZyb20gcGF0aC0+bW50Lm1udF9yb290 LiAgQUtBIHRvIHZhbGlkYXRlIHRoYXQgcmVuYW1lIGRpZCBub3QgZG8KICBzb21ldGhpbmcgbmFz dHkgdG8gdGhlIGJpbmQgbW91bnQuCgogIFRvIGF2b2lkIHJhY2VzIHBhdGhfY29ubmVjdGVkIG11 c3QgYmUgY2FsbGVkIGFmdGVyIGZvbGxvd2luZyBhIHBhdGgKICBjb21wb25lbnQgdG8gaXQncyBu ZXh0IHBhdGggY29tcG9uZW50LgoKU2lnbmVkLW9mZi1ieTogIkVyaWMgVy4gQmllZGVybWFuIiA8 ZWJpZWRlcm1AeG1pc3Npb24uY29tPgpTaWduZWQtb2ZmLWJ5OiBBbCBWaXJvIDx2aXJvQHplbml2 LmxpbnV4Lm9yZy51az4KLS0tCiBmcy9uYW1laS5jIHwgMjkgKysrKysrKysrKysrKysrKysrKysr KysrKysrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyNyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL2ZzL25hbWVpLmMgYi9mcy9uYW1laS5jCmluZGV4IDljNGI5YjgxMWQ3 Yi4uNGZjMDM0ZmZkMjA5IDEwMDY0NAotLS0gYS9mcy9uYW1laS5jCisrKyBiL2ZzL25hbWVpLmMK QEAgLTM5Nyw2ICszOTcsMjQgQEAgdm9pZCBwYXRoX3B1dChzdHJ1Y3QgcGF0aCAqcGF0aCkKIH0K IEVYUE9SVF9TWU1CT0wocGF0aF9wdXQpOwogCisvKioKKyAqIHBhdGhfY29ubmVjdGVkIC0gVmVy aWZ5IHRoYXQgYSBwYXRoLT5kZW50cnkgaXMgYmVsb3cgcGF0aC0+bW50Lm1udF9yb290CisgKiBA cGF0aDogbmFtZWlkYXRlIHRvIHZlcmlmeQorICoKKyAqIFJlbmFtZSBjYW4gc29tZXRpbWVzIG1v dmUgYSBmaWxlIG9yIGRpcmVjdG9yeSBvdXRzaWRlIG9mIGEgYmluZAorICogbW91bnQsIHBhdGhf Y29ubmVjdGVkIGFsbG93cyB0aG9zZSBjYXNlcyB0byBiZSBkZXRlY3RlZC4KKyAqLworc3RhdGlj IGJvb2wgcGF0aF9jb25uZWN0ZWQoY29uc3Qgc3RydWN0IHBhdGggKnBhdGgpCit7CisJc3RydWN0 IHZmc21vdW50ICptbnQgPSBwYXRoLT5tbnQ7CisKKwkvKiBPbmx5IGJpbmQgbW91bnRzIGNhbiBo YXZlIGRpc2Nvbm5lY3RlZCBwYXRocyAqLworCWlmIChtbnQtPm1udF9yb290ID09IG1udC0+bW50 X3NiLT5zX3Jvb3QpCisJCXJldHVybiB0cnVlOworCisJcmV0dXJuIGlzX3N1YmRpcihwYXRoLT5k ZW50cnksIG1udC0+bW50X3Jvb3QpOworfQorCiAvKgogICogUGF0aCB3YWxraW5nIGhhcyAyIG1v ZGVzLCByY3Utd2FsayBhbmQgcmVmLXdhbGsgKHNlZQogICogRG9jdW1lbnRhdGlvbi9maWxlc3lz dGVtcy9wYXRoLWxvb2t1cC50eHQpLiAgSW4gc2l0dWF0aW9ucyB3aGVuIHdlIGNhbid0CkBAIC05 NDUsNiArOTYzLDggQEAgc3RhdGljIGludCBmb2xsb3dfZG90ZG90X3JjdShzdHJ1Y3QgbmFtZWlk YXRhICpuZCkKIAkJCQlnb3RvIGZhaWxlZDsKIAkJCW5kLT5wYXRoLmRlbnRyeSA9IHBhcmVudDsK IAkJCW5kLT5zZXEgPSBzZXE7CisJCQlpZiAodW5saWtlbHkoIXBhdGhfY29ubmVjdGVkKCZuZC0+ cGF0aCkpKQorCQkJCWdvdG8gZmFpbGVkOwogCQkJYnJlYWs7CiAJCX0KIAkJaWYgKCFmb2xsb3df dXBfcmN1KCZuZC0+cGF0aCkpCkBAIC0xMDI5LDcgKzEwNDksNyBAQCBzdGF0aWMgdm9pZCBmb2xs b3dfbW91bnQoc3RydWN0IHBhdGggKnBhdGgpCiAJfQogfQogCi1zdGF0aWMgdm9pZCBmb2xsb3df ZG90ZG90KHN0cnVjdCBuYW1laWRhdGEgKm5kKQorc3RhdGljIGludCBmb2xsb3dfZG90ZG90KHN0 cnVjdCBuYW1laWRhdGEgKm5kKQogewogCWlmICghbmQtPnJvb3QubW50KQogCQlzZXRfcm9vdChu ZCk7CkBAIC0xMDQ1LDYgKzEwNjUsMTAgQEAgc3RhdGljIHZvaWQgZm9sbG93X2RvdGRvdChzdHJ1 Y3QgbmFtZWlkYXRhICpuZCkKIAkJCS8qIHJhcmUgY2FzZSBvZiBsZWdpdGltYXRlIGRnZXRfcGFy ZW50KCkuLi4gKi8KIAkJCW5kLT5wYXRoLmRlbnRyeSA9IGRnZXRfcGFyZW50KG5kLT5wYXRoLmRl bnRyeSk7CiAJCQlkcHV0KG9sZCk7CisJCQlpZiAodW5saWtlbHkoIXBhdGhfY29ubmVjdGVkKCZu ZC0+cGF0aCkpKSB7CisJCQkJcGF0aF9wdXQoJm5kLT5wYXRoKTsKKwkJCQlyZXR1cm4gLUVOT0VO VDsKKwkJCX0KIAkJCWJyZWFrOwogCQl9CiAJCWlmICghZm9sbG93X3VwKCZuZC0+cGF0aCkpCkBA IC0xMDUyLDYgKzEwNzYsNyBAQCBzdGF0aWMgdm9pZCBmb2xsb3dfZG90ZG90KHN0cnVjdCBuYW1l aWRhdGEgKm5kKQogCX0KIAlmb2xsb3dfbW91bnQoJm5kLT5wYXRoKTsKIAluZC0+aW5vZGUgPSBu ZC0+cGF0aC5kZW50cnktPmRfaW5vZGU7CisJcmV0dXJuIDA7CiB9CiAKIC8qCkBAIC0xMjUyLDcg KzEyNzcsNyBAQCBzdGF0aWMgaW5saW5lIGludCBoYW5kbGVfZG90cyhzdHJ1Y3QgbmFtZWlkYXRh ICpuZCwgaW50IHR5cGUpCiAJCQlpZiAoZm9sbG93X2RvdGRvdF9yY3UobmQpKQogCQkJCXJldHVy biAtRUNISUxEOwogCQl9IGVsc2UKLQkJCWZvbGxvd19kb3Rkb3QobmQpOworCQkJcmV0dXJuIGZv bGxvd19kb3Rkb3QobmQpOwogCX0KIAlyZXR1cm4gMDsKIH0KLS0gCjIuMi4xCgo= --=-=-= Content-Type: application/mbox Content-Disposition: attachment; filename=bind-3.2.mbox Content-Transfer-Encoding: base64 RnJvbSBjNTg2MDQ2NDQzODEwZWU4MzYyMzhhYmYyNzI2NDViN2ZmM2UxNGY4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiRXJpYyBXLiBCaWVkZXJtYW4iIDxlYmllZGVybUB4bWlzc2lv bi5jb20+CkRhdGU6IFNhdCwgMTUgQXVnIDIwMTUgMTM6MzY6MTIgLTA1MDAKU3ViamVjdDogW1BB VENIIDEvMl0gZGNhY2hlOiBIYW5kbGUgZXNjYXBlZCBwYXRocyBpbiBwcmVwZW5kX3BhdGgKCmNv bW1pdCBjZGU5M2JlNDVhOGE5MGQ4YzI2NGM3NzZmYWI2MzQ4N2I1MDM4YTY1IHVwc3RyZWFtLgoK QSByZW5hbWUgY2FuIHJlc3VsdCBpbiBhIGRlbnRyeSB0aGF0IGJ5IHdhbGtpbmcgdXAgZF9wYXJl bnQKd2lsbCBuZXZlciByZWFjaCBpdCdzIG1udF9yb290LiAgRm9yIGxhY2sgb2YgYSBiZXR0ZXIg dGVybQpJIGNhbGwgdGhpcyBhbiBlc2NhcGVkIHBhdGguCgpwcmVwZW5kX3BhdGggaXMgY2FsbGVk IGJ5IGZvdXIgZGlmZmVyZW50IGZ1bmN0aW9ucyBfX2RfcGF0aCwKZF9hYnNvbHV0ZV9wYXRoLCBk X3BhdGgsIGFuZCBnZXRjd2QuCgpfX2RfcGF0aCBvbmx5IHdhbnRzIHRvIHNlZSBwYXRocyBhcmUg Y29ubmVjdGVkIHRvIHRoZSByb290IGl0IHBhc3Nlcwppbi4gIFNvIF9fZF9wYXRoIG5lZWRzIHBy ZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3IuCgpkX2Fic29sdXRlX3BhdGggc2ltaWxhcmx5 IHdhbnRzIHRvIHNlZSBwYXRocyB0aGF0IGFyZSBjb25uZWN0ZWQgdG8Kc29tZSByb290LiAgRXNj YXBlZCBwYXRocyBhcmUgbm90IGNvbm5lY3RlZCB0byBhbnkgbW50X3Jvb3Qgc28KZF9hYnNvbHV0 ZV9wYXRoIG5lZWRzIHByZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3IgZ3JlYXRlcgp0aGFu IDEuICBTbyBlc2NhcGVkIHBhdGhzIHdpbGwgYmUgdHJlYXRlZCBsaWtlIHBhdGhzIG9uIGxhemls eQp1bm1vdW50ZWQgbW91bnRzLgoKZ2V0Y3dkIG5lZWRzIHRvIHByZXBlbmQgIih1bnJlYWNoYWJs ZSkiIHNvIGdldGN3ZCBhbHNvIG5lZWRzCnByZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3Iu CgpkX3BhdGggaXMgdGhlIGludGVyZXN0aW5nIGhvbGQgb3V0LiAgZF9wYXRoIGp1c3Qgd2FudHMg dG8gcHJpbnQKc29tZXRoaW5nLCBhbmQgZG9lcyBub3QgY2FyZSBhYm91dCB0aGUgd2VpcmQgY2Fz ZXMuICBXaGljaCByYWlzZXMKdGhlIHF1ZXN0aW9uIHdoYXQgc2hvdWxkIGJlIHByaW50ZWQ/CgpH aXZlbiB0aGF0IDxlc2NhcGVkX3BhdGg+Lzxhbnl0aGluZz4gc2hvdWxkIHJlc3VsdCBpbiAtRU5P RU5UIEkKYmVsaWV2ZSBpdCBpcyBkZXNpcmFibGUgZm9yIGVzY2FwZWQgcGF0aHMgdG8gYmUgcHJp bnRlZCBhcyBlbXB0eQpwYXRocy4gIEFzIHRoZXJlIGFyZSBub3QgcmVhbGx5IGFueSBtZWFuaW5m dWwgcGF0aCBjb21wb25lbnRzIHdoZW4KY29uc2lkZXJlZCBmcm9tIHRoZSBwZXJzcGVjdGl2ZSBv ZiBhIG1vdW50IHRyZWUuCgpTbyB0d2VhayBwcmVwZW5kX3BhdGggdG8gcmV0dXJuIGFuIGVtcHR5 IHBhdGggd2l0aCBhbiBuZXcgZXJyb3IKY29kZSBvZiAzIHdoZW4gaXQgZW5jb3VudGVycyBhbiBl c2NhcGVkIHBhdGguCgpTaWduZWQtb2ZmLWJ5OiAiRXJpYyBXLiBCaWVkZXJtYW4iIDxlYmllZGVy bUB4bWlzc2lvbi5jb20+ClNpZ25lZC1vZmYtYnk6IEFsIFZpcm8gPHZpcm9AemVuaXYubGludXgu b3JnLnVrPgotLS0KIGZzL2RjYWNoZS5jIHwgMTAgKysrKysrKysrKwogMSBmaWxlIGNoYW5nZWQs IDEwIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9mcy9kY2FjaGUuYyBiL2ZzL2RjYWNoZS5j CmluZGV4IDhhMzUzMDA2N2YwMy4uNDYyNjVmNThiNWI4IDEwMDY0NAotLS0gYS9mcy9kY2FjaGUu YworKysgYi9mcy9kY2FjaGUuYwpAQCAtMjQ1Miw2ICsyNDUyLDggQEAgc3RhdGljIGludCBwcmVw ZW5kX3BhdGgoY29uc3Qgc3RydWN0IHBhdGggKnBhdGgsCiB7CiAJc3RydWN0IGRlbnRyeSAqZGVu dHJ5ID0gcGF0aC0+ZGVudHJ5OwogCXN0cnVjdCB2ZnNtb3VudCAqdmZzbW50ID0gcGF0aC0+bW50 OworCWNoYXIgKm9yaWdfYnVmZmVyID0gKmJ1ZmZlcjsKKwlpbnQgb3JpZ19sZW4gPSAqYnVmbGVu OwogCWJvb2wgc2xhc2ggPSBmYWxzZTsKIAlpbnQgZXJyb3IgPSAwOwogCkBAIC0yNDU5LDYgKzI0 NjEsMTQgQEAgc3RhdGljIGludCBwcmVwZW5kX3BhdGgoY29uc3Qgc3RydWN0IHBhdGggKnBhdGgs CiAJCXN0cnVjdCBkZW50cnkgKiBwYXJlbnQ7CiAKIAkJaWYgKGRlbnRyeSA9PSB2ZnNtbnQtPm1u dF9yb290IHx8IElTX1JPT1QoZGVudHJ5KSkgeworCQkJLyogRXNjYXBlZD8gKi8KKwkJCWlmIChk ZW50cnkgIT0gdmZzbW50LT5tbnRfcm9vdCkgeworCQkJCSpidWZmZXIgPSBvcmlnX2J1ZmZlcjsK KwkJCQkqYnVmbGVuID0gb3JpZ19sZW47CisJCQkJc2xhc2ggPSBmYWxzZTsKKwkJCQllcnJvciA9 IDM7CisJCQkJZ290byBnbG9iYWxfcm9vdDsKKwkJCX0KIAkJCS8qIEdsb2JhbCByb290PyAqLwog CQkJaWYgKHZmc21udC0+bW50X3BhcmVudCA9PSB2ZnNtbnQpIHsKIAkJCQlnb3RvIGdsb2JhbF9y b290OwotLSAKMi4yLjEKCgpGcm9tIDliNTAzMmIxZmIxMDdmMzFmZTMxMzY0MzNiNzZjY2QzOGM5 MGNmMjUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJFcmljIFcuIEJpZWRlcm1hbiIg PGViaWVkZXJtQHhtaXNzaW9uLmNvbT4KRGF0ZTogU2F0LCAxNSBBdWcgMjAxNSAyMDoyNzoxMyAt MDUwMApTdWJqZWN0OiBbUEFUQ0ggMi8yXSB2ZnM6IFRlc3QgZm9yIGFuZCBoYW5kbGUgcGF0aHMg dGhhdCBhcmUgdW5yZWFjaGFibGUgZnJvbQogdGhlaXIgbW50X3Jvb3QKCmNvbW1pdCAzOTdkNDI1 ZGMyNmRhNzI4Mzk2ZTY2ZDM5MmQ1ZGNiOGRhYzMwYzM3IHVwc3RyZWFtLgoKSW4gcmFyZSBjYXNl cyBhIGRpcmVjdG9yeSBjYW4gYmUgcmVuYW1lZCBvdXQgZnJvbSB1bmRlciBhIGJpbmQgbW91bnQu CkluIHRob3NlIGNhc2VzIHdpdGhvdXQgc3BlY2lhbCBoYW5kbGluZyBpdCBiZWNvbWVzIHBvc3Np YmxlIHRvIHdhbGsgdXAKdGhlIGRpcmVjdG9yeSB0cmVlIHRvIHRoZSByb290IGRlbnRyeSBvZiB0 aGUgZmlsZXN5c3RlbSBhbmQgZG93bgpmcm9tIHRoZSByb290IGRlbnRyeSB0byBldmVyeSBvdGhl ciBmaWxlIG9yIGRpcmVjdG9yeSBvbiB0aGUgZmlsZXN5c3RlbS4KCkxpa2UgZGl2aXNpb24gYnkg emVybyAuLiBmcm9tIGFuIHVuY29ubmVjdGVkIHBhdGggY2FuIG5vdCBiZSBnaXZlbgphIHVzZWZ1 bCBzZW1hbnRpYyBhcyB0aGVyZSBpcyBubyBwcmVkaWN0aW5nIGF0IHdoaWNoIHBhdGggY29tcG9u ZW50CnRoZSBjb2RlIHdpbGwgcmVhbGl6ZSBpdCBpcyB1bmNvbm5lY3RlZC4gIFdlIGNlcnRhaW5s eSBjYW4gbm90IG1hdGNoCnRoZSBjdXJyZW50IGJlaGF2aW9yIGFzIHRoZSBjdXJyZW50IGJlaGF2 aW9yIGlzIGEgc2VjdXJpdHkgaG9sZS4KClRoZXJlZm9yZSB3aGVuIGVuY291bnRpbmcgLi4gd2hl biBmb2xsb3dpbmcgYW4gdW5jb25uZWN0ZWQgcGF0aApyZXR1cm4gLUVOT0VOVC4KCi0gQWRkIGEg ZnVuY3Rpb24gcGF0aF9jb25uZWN0ZWQgdG8gdmVyaWZ5IHBhdGgtPmRlbnRyeSBpcyByZWFjaGFi bGUKICBmcm9tIHBhdGgtPm1udC5tbnRfcm9vdC4gIEFLQSB0byB2YWxpZGF0ZSB0aGF0IHJlbmFt ZSBkaWQgbm90IGRvCiAgc29tZXRoaW5nIG5hc3R5IHRvIHRoZSBiaW5kIG1vdW50LgoKICBUbyBh dm9pZCByYWNlcyBwYXRoX2Nvbm5lY3RlZCBtdXN0IGJlIGNhbGxlZCBhZnRlciBmb2xsb3dpbmcg YSBwYXRoCiAgY29tcG9uZW50IHRvIGl0J3MgbmV4dCBwYXRoIGNvbXBvbmVudC4KClNpZ25lZC1v ZmYtYnk6ICJFcmljIFcuIEJpZWRlcm1hbiIgPGViaWVkZXJtQHhtaXNzaW9uLmNvbT4KU2lnbmVk LW9mZi1ieTogQWwgVmlybyA8dmlyb0B6ZW5pdi5saW51eC5vcmcudWs+Ci0tLQogZnMvbmFtZWku YyB8IDI5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tCiAxIGZpbGUgY2hhbmdlZCwgMjcg aW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9mcy9uYW1laS5jIGIv ZnMvbmFtZWkuYwppbmRleCBjOGIxM2E5MmJmNjkuLjJjMjI2NTU5YzYzNyAxMDA2NDQKLS0tIGEv ZnMvbmFtZWkuYworKysgYi9mcy9uYW1laS5jCkBAIC0zOTgsNiArMzk4LDI0IEBAIHZvaWQgcGF0 aF9wdXQoc3RydWN0IHBhdGggKnBhdGgpCiB9CiBFWFBPUlRfU1lNQk9MKHBhdGhfcHV0KTsKIAor LyoqCisgKiBwYXRoX2Nvbm5lY3RlZCAtIFZlcmlmeSB0aGF0IGEgcGF0aC0+ZGVudHJ5IGlzIGJl bG93IHBhdGgtPm1udC5tbnRfcm9vdAorICogQHBhdGg6IG5hbWVpZGF0ZSB0byB2ZXJpZnkKKyAq CisgKiBSZW5hbWUgY2FuIHNvbWV0aW1lcyBtb3ZlIGEgZmlsZSBvciBkaXJlY3Rvcnkgb3V0c2lk ZSBvZiBhIGJpbmQKKyAqIG1vdW50LCBwYXRoX2Nvbm5lY3RlZCBhbGxvd3MgdGhvc2UgY2FzZXMg dG8gYmUgZGV0ZWN0ZWQuCisgKi8KK3N0YXRpYyBib29sIHBhdGhfY29ubmVjdGVkKGNvbnN0IHN0 cnVjdCBwYXRoICpwYXRoKQoreworCXN0cnVjdCB2ZnNtb3VudCAqbW50ID0gcGF0aC0+bW50Owor CisJLyogT25seSBiaW5kIG1vdW50cyBjYW4gaGF2ZSBkaXNjb25uZWN0ZWQgcGF0aHMgKi8KKwlp ZiAobW50LT5tbnRfcm9vdCA9PSBtbnQtPm1udF9zYi0+c19yb290KQorCQlyZXR1cm4gdHJ1ZTsK KworCXJldHVybiBpc19zdWJkaXIocGF0aC0+ZGVudHJ5LCBtbnQtPm1udF9yb290KTsKK30KKwog LyoKICAqIFBhdGggd2Fsa2luZyBoYXMgMiBtb2RlcywgcmN1LXdhbGsgYW5kIHJlZi13YWxrIChz ZWUKICAqIERvY3VtZW50YXRpb24vZmlsZXN5c3RlbXMvcGF0aC1sb29rdXAudHh0KS4gIEluIHNp dHVhdGlvbnMgd2hlbiB3ZSBjYW4ndApAQCAtOTMzLDYgKzk1MSw4IEBAIHN0YXRpYyBpbnQgZm9s bG93X2RvdGRvdF9yY3Uoc3RydWN0IG5hbWVpZGF0YSAqbmQpCiAJCQkJZ290byBmYWlsZWQ7CiAJ CQluZC0+cGF0aC5kZW50cnkgPSBwYXJlbnQ7CiAJCQluZC0+c2VxID0gc2VxOworCQkJaWYgKHVu bGlrZWx5KCFwYXRoX2Nvbm5lY3RlZCgmbmQtPnBhdGgpKSkKKwkJCQlnb3RvIGZhaWxlZDsKIAkJ CWJyZWFrOwogCQl9CiAJCWlmICghZm9sbG93X3VwX3JjdSgmbmQtPnBhdGgpKQpAQCAtMTAyNyw3 ICsxMDQ3LDcgQEAgc3RhdGljIHZvaWQgZm9sbG93X21vdW50KHN0cnVjdCBwYXRoICpwYXRoKQog CX0KIH0KIAotc3RhdGljIHZvaWQgZm9sbG93X2RvdGRvdChzdHJ1Y3QgbmFtZWlkYXRhICpuZCkK K3N0YXRpYyBpbnQgZm9sbG93X2RvdGRvdChzdHJ1Y3QgbmFtZWlkYXRhICpuZCkKIHsKIAlpZiAo IW5kLT5yb290Lm1udCkKIAkJc2V0X3Jvb3QobmQpOwpAQCAtMTA0Myw2ICsxMDYzLDEwIEBAIHN0 YXRpYyB2b2lkIGZvbGxvd19kb3Rkb3Qoc3RydWN0IG5hbWVpZGF0YSAqbmQpCiAJCQkvKiByYXJl IGNhc2Ugb2YgbGVnaXRpbWF0ZSBkZ2V0X3BhcmVudCgpLi4uICovCiAJCQluZC0+cGF0aC5kZW50 cnkgPSBkZ2V0X3BhcmVudChuZC0+cGF0aC5kZW50cnkpOwogCQkJZHB1dChvbGQpOworCQkJaWYg KHVubGlrZWx5KCFwYXRoX2Nvbm5lY3RlZCgmbmQtPnBhdGgpKSkgeworCQkJCXBhdGhfcHV0KCZu ZC0+cGF0aCk7CisJCQkJcmV0dXJuIC1FTk9FTlQ7CisJCQl9CiAJCQlicmVhazsKIAkJfQogCQlp ZiAoIWZvbGxvd191cCgmbmQtPnBhdGgpKQpAQCAtMTA1MCw2ICsxMDc0LDcgQEAgc3RhdGljIHZv aWQgZm9sbG93X2RvdGRvdChzdHJ1Y3QgbmFtZWlkYXRhICpuZCkKIAl9CiAJZm9sbG93X21vdW50 KCZuZC0+cGF0aCk7CiAJbmQtPmlub2RlID0gbmQtPnBhdGguZGVudHJ5LT5kX2lub2RlOworCXJl dHVybiAwOwogfQogCiAvKgpAQCAtMTI0MSw3ICsxMjY2LDcgQEAgc3RhdGljIGlubGluZSBpbnQg aGFuZGxlX2RvdHMoc3RydWN0IG5hbWVpZGF0YSAqbmQsIGludCB0eXBlKQogCQkJaWYgKGZvbGxv d19kb3Rkb3RfcmN1KG5kKSkKIAkJCQlyZXR1cm4gLUVDSElMRDsKIAkJfSBlbHNlCi0JCQlmb2xs b3dfZG90ZG90KG5kKTsKKwkJCXJldHVybiBmb2xsb3dfZG90ZG90KG5kKTsKIAl9CiAJcmV0dXJu IDA7CiB9Ci0tIAoyLjIuMQoK --=-=-= Content-Type: application/mbox Content-Disposition: attachment; filename=bind-2.6.32.mbox Content-Transfer-Encoding: base64 RnJvbSAzNGQ1NGQzMmIyMDM4YmM3ZWVmZjVmZWZmY2JkNjA4MDljNWMyMDY2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiRXJpYyBXLiBCaWVkZXJtYW4iIDxlYmllZGVybUB4bWlzc2lv bi5jb20+CkRhdGU6IFNhdCwgMTUgQXVnIDIwMTUgMTM6MzY6MTIgLTA1MDAKU3ViamVjdDogW1BB VENIIDEvMl0gZGNhY2hlOiBIYW5kbGUgZXNjYXBlZCBwYXRocyBpbiBwcmVwZW5kX3BhdGgKCmNv bW1pdCBjZGU5M2JlNDVhOGE5MGQ4YzI2NGM3NzZmYWI2MzQ4N2I1MDM4YTY1IHVwc3RyZWFtLgoK QSByZW5hbWUgY2FuIHJlc3VsdCBpbiBhIGRlbnRyeSB0aGF0IGJ5IHdhbGtpbmcgdXAgZF9wYXJl bnQKd2lsbCBuZXZlciByZWFjaCBpdCdzIG1udF9yb290LiAgRm9yIGxhY2sgb2YgYSBiZXR0ZXIg dGVybQpJIGNhbGwgdGhpcyBhbiBlc2NhcGVkIHBhdGguCgpwcmVwZW5kX3BhdGggaXMgY2FsbGVk IGJ5IGZvdXIgZGlmZmVyZW50IGZ1bmN0aW9ucyBfX2RfcGF0aCwKZF9hYnNvbHV0ZV9wYXRoLCBk X3BhdGgsIGFuZCBnZXRjd2QuCgpfX2RfcGF0aCBvbmx5IHdhbnRzIHRvIHNlZSBwYXRocyBhcmUg Y29ubmVjdGVkIHRvIHRoZSByb290IGl0IHBhc3Nlcwppbi4gIFNvIF9fZF9wYXRoIG5lZWRzIHBy ZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3IuCgpkX2Fic29sdXRlX3BhdGggc2ltaWxhcmx5 IHdhbnRzIHRvIHNlZSBwYXRocyB0aGF0IGFyZSBjb25uZWN0ZWQgdG8Kc29tZSByb290LiAgRXNj YXBlZCBwYXRocyBhcmUgbm90IGNvbm5lY3RlZCB0byBhbnkgbW50X3Jvb3Qgc28KZF9hYnNvbHV0 ZV9wYXRoIG5lZWRzIHByZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3IgZ3JlYXRlcgp0aGFu IDEuICBTbyBlc2NhcGVkIHBhdGhzIHdpbGwgYmUgdHJlYXRlZCBsaWtlIHBhdGhzIG9uIGxhemls eQp1bm1vdW50ZWQgbW91bnRzLgoKZ2V0Y3dkIG5lZWRzIHRvIHByZXBlbmQgIih1bnJlYWNoYWJs ZSkiIHNvIGdldGN3ZCBhbHNvIG5lZWRzCnByZXBlbmRfcGF0aCB0byByZXR1cm4gYW4gZXJyb3Iu CgpkX3BhdGggaXMgdGhlIGludGVyZXN0aW5nIGhvbGQgb3V0LiAgZF9wYXRoIGp1c3Qgd2FudHMg dG8gcHJpbnQKc29tZXRoaW5nLCBhbmQgZG9lcyBub3QgY2FyZSBhYm91dCB0aGUgd2VpcmQgY2Fz ZXMuICBXaGljaCByYWlzZXMKdGhlIHF1ZXN0aW9uIHdoYXQgc2hvdWxkIGJlIHByaW50ZWQ/CgpH aXZlbiB0aGF0IDxlc2NhcGVkX3BhdGg+Lzxhbnl0aGluZz4gc2hvdWxkIHJlc3VsdCBpbiAtRU5P RU5UIEkKYmVsaWV2ZSBpdCBpcyBkZXNpcmFibGUgZm9yIGVzY2FwZWQgcGF0aHMgdG8gYmUgcHJp bnRlZCBhcyBlbXB0eQpwYXRocy4gIEFzIHRoZXJlIGFyZSBub3QgcmVhbGx5IGFueSBtZWFuaW5m dWwgcGF0aCBjb21wb25lbnRzIHdoZW4KY29uc2lkZXJlZCBmcm9tIHRoZSBwZXJzcGVjdGl2ZSBv ZiBhIG1vdW50IHRyZWUuCgpTbyB0d2VhayBwcmVwZW5kX3BhdGggdG8gcmV0dXJuIGFuIGVtcHR5 IHBhdGggd2l0aCBhbiBuZXcgZXJyb3IKY29kZSBvZiAzIHdoZW4gaXQgZW5jb3VudGVycyBhbiBl c2NhcGVkIHBhdGguCgpTaWduZWQtb2ZmLWJ5OiAiRXJpYyBXLiBCaWVkZXJtYW4iIDxlYmllZGVy bUB4bWlzc2lvbi5jb20+ClNpZ25lZC1vZmYtYnk6IEFsIFZpcm8gPHZpcm9AemVuaXYubGludXgu b3JnLnVrPgotLS0KIGZzL2RjYWNoZS5jIHwgOSArKysrKysrKy0KIDEgZmlsZSBjaGFuZ2VkLCA4 IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9mcy9kY2FjaGUuYyBi L2ZzL2RjYWNoZS5jCmluZGV4IDQ0YzBhZWFmY2JjOS4uZTFhY2NjZTkyZjY4IDEwMDY0NAotLS0g YS9mcy9kY2FjaGUuYworKysgYi9mcy9kY2FjaGUuYwpAQCAtMTkxMCw3ICsxOTEwLDcgQEAgY2hh ciAqX19kX3BhdGgoY29uc3Qgc3RydWN0IHBhdGggKnBhdGgsIHN0cnVjdCBwYXRoICpyb290LAog CXN0cnVjdCBkZW50cnkgKmRlbnRyeSA9IHBhdGgtPmRlbnRyeTsKIAlzdHJ1Y3QgdmZzbW91bnQg KnZmc21udCA9IHBhdGgtPm1udDsKIAljaGFyICplbmQgPSBidWZmZXIgKyBidWZsZW47Ci0JY2hh ciAqcmV0dmFsOworCWNoYXIgKnJldHZhbCwgKnRhaWw7CiAKIAlzcGluX2xvY2soJnZmc21vdW50 X2xvY2spOwogCXByZXBlbmQoJmVuZCwgJmJ1ZmxlbiwgIlwwIiwgMSk7CkBAIC0xOTIzLDYgKzE5 MjMsNyBAQCBjaGFyICpfX2RfcGF0aChjb25zdCBzdHJ1Y3QgcGF0aCAqcGF0aCwgc3RydWN0IHBh dGggKnJvb3QsCiAJLyogR2V0ICcvJyByaWdodCAqLwogCXJldHZhbCA9IGVuZC0xOwogCSpyZXR2 YWwgPSAnLyc7CisJdGFpbCA9IGVuZDsKIAogCWZvciAoOzspIHsKIAkJc3RydWN0IGRlbnRyeSAq IHBhcmVudDsKQEAgLTE5MzAsNiArMTkzMSwxMiBAQCBjaGFyICpfX2RfcGF0aChjb25zdCBzdHJ1 Y3QgcGF0aCAqcGF0aCwgc3RydWN0IHBhdGggKnJvb3QsCiAJCWlmIChkZW50cnkgPT0gcm9vdC0+ ZGVudHJ5ICYmIHZmc21udCA9PSByb290LT5tbnQpCiAJCQlicmVhazsKIAkJaWYgKGRlbnRyeSA9 PSB2ZnNtbnQtPm1udF9yb290IHx8IElTX1JPT1QoZGVudHJ5KSkgeworCQkJLyogRXNjYXBlZD8g Ki8KKwkJCWlmIChkZW50cnkgIT0gdmZzbW50LT5tbnRfcm9vdCkgeworCQkJCXJldHZhbCA9IHRh aWw7CisJCQkJKnJldHZhbCA9ICcvJzsKKwkJCQlnb3RvIG91dDsKKwkJCX0KIAkJCS8qIEdsb2Jh bCByb290PyAqLwogCQkJaWYgKHZmc21udC0+bW50X3BhcmVudCA9PSB2ZnNtbnQpIHsKIAkJCQln b3RvIGdsb2JhbF9yb290OwotLSAKMi4yLjEKCgpGcm9tIDI0M2Q2ZTI0YTFiYTk3ZGZjODc1N2Vk MzNlMDFhZWFhNmY4OWU5NjQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJFcmljIFcu IEJpZWRlcm1hbiIgPGViaWVkZXJtQHhtaXNzaW9uLmNvbT4KRGF0ZTogU2F0LCAxNSBBdWcgMjAx NSAyMDoyNzoxMyAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggMi8yXSB2ZnM6IFRlc3QgZm9yIGFuZCBo YW5kbGUgcGF0aHMgdGhhdCBhcmUgdW5yZWFjaGFibGUgZnJvbQogdGhlaXIgbW50X3Jvb3QKCmNv bW1pdCAzOTdkNDI1ZGMyNmRhNzI4Mzk2ZTY2ZDM5MmQ1ZGNiOGRhYzMwYzM3IHVwc3RyZWFtLgoK SW4gcmFyZSBjYXNlcyBhIGRpcmVjdG9yeSBjYW4gYmUgcmVuYW1lZCBvdXQgZnJvbSB1bmRlciBh IGJpbmQgbW91bnQuCkluIHRob3NlIGNhc2VzIHdpdGhvdXQgc3BlY2lhbCBoYW5kbGluZyBpdCBi ZWNvbWVzIHBvc3NpYmxlIHRvIHdhbGsgdXAKdGhlIGRpcmVjdG9yeSB0cmVlIHRvIHRoZSByb290 IGRlbnRyeSBvZiB0aGUgZmlsZXN5c3RlbSBhbmQgZG93bgpmcm9tIHRoZSByb290IGRlbnRyeSB0 byBldmVyeSBvdGhlciBmaWxlIG9yIGRpcmVjdG9yeSBvbiB0aGUgZmlsZXN5c3RlbS4KCkxpa2Ug ZGl2aXNpb24gYnkgemVybyAuLiBmcm9tIGFuIHVuY29ubmVjdGVkIHBhdGggY2FuIG5vdCBiZSBn aXZlbgphIHVzZWZ1bCBzZW1hbnRpYyBhcyB0aGVyZSBpcyBubyBwcmVkaWN0aW5nIGF0IHdoaWNo IHBhdGggY29tcG9uZW50CnRoZSBjb2RlIHdpbGwgcmVhbGl6ZSBpdCBpcyB1bmNvbm5lY3RlZC4g IFdlIGNlcnRhaW5seSBjYW4gbm90IG1hdGNoCnRoZSBjdXJyZW50IGJlaGF2aW9yIGFzIHRoZSBj dXJyZW50IGJlaGF2aW9yIGlzIGEgc2VjdXJpdHkgaG9sZS4KClRoZXJlZm9yZSB3aGVuIGVuY291 bnRpbmcgLi4gd2hlbiBmb2xsb3dpbmcgYW4gdW5jb25uZWN0ZWQgcGF0aApyZXR1cm4gLUVOT0VO VC4KCi0gQWRkIGEgZnVuY3Rpb24gcGF0aF9jb25uZWN0ZWQgdG8gdmVyaWZ5IHBhdGgtPmRlbnRy eSBpcyByZWFjaGFibGUKICBmcm9tIHBhdGgtPm1udC5tbnRfcm9vdC4gIEFLQSB0byB2YWxpZGF0 ZSB0aGF0IHJlbmFtZSBkaWQgbm90IGRvCiAgc29tZXRoaW5nIG5hc3R5IHRvIHRoZSBiaW5kIG1v dW50LgoKICBUbyBhdm9pZCByYWNlcyBwYXRoX2Nvbm5lY3RlZCBtdXN0IGJlIGNhbGxlZCBhZnRl ciBmb2xsb3dpbmcgYSBwYXRoCiAgY29tcG9uZW50IHRvIGl0J3MgbmV4dCBwYXRoIGNvbXBvbmVu dC4KClNpZ25lZC1vZmYtYnk6ICJFcmljIFcuIEJpZWRlcm1hbiIgPGViaWVkZXJtQHhtaXNzaW9u LmNvbT4KU2lnbmVkLW9mZi1ieTogQWwgVmlybyA8dmlyb0B6ZW5pdi5saW51eC5vcmcudWs+Ci0t LQogZnMvbmFtZWkuYyB8IDMyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tCiAxIGZp bGUgY2hhbmdlZCwgMjkgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9mcy9uYW1laS5jIGIvZnMvbmFtZWkuYwppbmRleCAwZDc2NmQyMDEyMDAuLjY1NTFhY2JhMmEy YyAxMDA2NDQKLS0tIGEvZnMvbmFtZWkuYworKysgYi9mcy9uYW1laS5jCkBAIC00MzQsNiArNDM0 LDI0IEBAIHN0YXRpYyBzdHJ1Y3QgZGVudHJ5ICogY2FjaGVkX2xvb2t1cChzdHJ1Y3QgZGVudHJ5 ICogcGFyZW50LCBzdHJ1Y3QgcXN0ciAqIG5hbWUsCiAJcmV0dXJuIGRlbnRyeTsKIH0KIAorLyoq CisgKiBwYXRoX2Nvbm5lY3RlZCAtIFZlcmlmeSB0aGF0IGEgcGF0aC0+ZGVudHJ5IGlzIGJlbG93 IHBhdGgtPm1udC5tbnRfcm9vdAorICogQHBhdGg6IG5hbWVpZGF0ZSB0byB2ZXJpZnkKKyAqCisg KiBSZW5hbWUgY2FuIHNvbWV0aW1lcyBtb3ZlIGEgZmlsZSBvciBkaXJlY3Rvcnkgb3V0c2lkZSBv ZiBhIGJpbmQKKyAqIG1vdW50LCBwYXRoX2Nvbm5lY3RlZCBhbGxvd3MgdGhvc2UgY2FzZXMgdG8g YmUgZGV0ZWN0ZWQuCisgKi8KK3N0YXRpYyBib29sIHBhdGhfY29ubmVjdGVkKGNvbnN0IHN0cnVj dCBwYXRoICpwYXRoKQoreworCXN0cnVjdCB2ZnNtb3VudCAqbW50ID0gcGF0aC0+bW50OworCisJ LyogT25seSBiaW5kIG1vdW50cyBjYW4gaGF2ZSBkaXNjb25uZWN0ZWQgcGF0aHMgKi8KKwlpZiAo bW50LT5tbnRfcm9vdCA9PSBtbnQtPm1udF9zYi0+c19yb290KQorCQlyZXR1cm4gdHJ1ZTsKKwor CXJldHVybiBpc19zdWJkaXIocGF0aC0+ZGVudHJ5LCBtbnQtPm1udF9yb290KTsKK30KKwogLyoK ICAqIFNob3J0LWN1dCB2ZXJzaW9uIG9mIHBlcm1pc3Npb24oKSwgZm9yIGNhbGxpbmcgYnkKICAq IHBhdGhfd2FsaygpLCB3aGVuIGRjYWNoZSBsb2NrIGlzIGhlbGQuICBDb21iaW5lcyBwYXJ0cwpA QCAtNzU0LDcgKzc3Miw3IEBAIGludCBmb2xsb3dfZG93bihzdHJ1Y3QgcGF0aCAqcGF0aCkKIAly ZXR1cm4gMDsKIH0KIAotc3RhdGljIF9fYWx3YXlzX2lubGluZSB2b2lkIGZvbGxvd19kb3Rkb3Qo c3RydWN0IG5hbWVpZGF0YSAqbmQpCitzdGF0aWMgX19hbHdheXNfaW5saW5lIGludCBmb2xsb3df ZG90ZG90KHN0cnVjdCBuYW1laWRhdGEgKm5kKQogewogCXNldF9yb290KG5kKTsKIApAQCAtNzcx LDYgKzc4OSw4IEBAIHN0YXRpYyBfX2Fsd2F5c19pbmxpbmUgdm9pZCBmb2xsb3dfZG90ZG90KHN0 cnVjdCBuYW1laWRhdGEgKm5kKQogCQkJbmQtPnBhdGguZGVudHJ5ID0gZGdldChuZC0+cGF0aC5k ZW50cnktPmRfcGFyZW50KTsKIAkJCXNwaW5fdW5sb2NrKCZkY2FjaGVfbG9jayk7CiAJCQlkcHV0 KG9sZCk7CisJCQlpZiAodW5saWtlbHkoIXBhdGhfY29ubmVjdGVkKCZuZC0+cGF0aCkpKQorCQkJ CXJldHVybiAtRU5PRU5UOwogCQkJYnJlYWs7CiAJCX0KIAkJc3Bpbl91bmxvY2soJmRjYWNoZV9s b2NrKTsKQEAgLTc4OCw2ICs4MDgsNyBAQCBzdGF0aWMgX19hbHdheXNfaW5saW5lIHZvaWQgZm9s bG93X2RvdGRvdChzdHJ1Y3QgbmFtZWlkYXRhICpuZCkKIAkJbmQtPnBhdGgubW50ID0gcGFyZW50 OwogCX0KIAlmb2xsb3dfbW91bnQoJm5kLT5wYXRoKTsKKwlyZXR1cm4gMDsKIH0KIAogLyoKQEAg LTkwNSw3ICs5MjYsOSBAQCBzdGF0aWMgaW50IF9fbGlua19wYXRoX3dhbGsoY29uc3QgY2hhciAq bmFtZSwgc3RydWN0IG5hbWVpZGF0YSAqbmQpCiAJCQljYXNlIDI6CQogCQkJCWlmICh0aGlzLm5h bWVbMV0gIT0gJy4nKQogCQkJCQlicmVhazsKLQkJCQlmb2xsb3dfZG90ZG90KG5kKTsKKwkJCQll cnIgPSBmb2xsb3dfZG90ZG90KG5kKTsKKwkJCQlpZiAoZXJyIDwgMCkKKwkJCQkJZ290byBvdXRf bmRfcGF0aF9wdXQ7CiAJCQkJaW5vZGUgPSBuZC0+cGF0aC5kZW50cnktPmRfaW5vZGU7CiAJCQkJ LyogZmFsbHRocm91Z2ggKi8KIAkJCWNhc2UgMToKQEAgLTk2MCw3ICs5ODMsOSBAQCBsYXN0X2Nv bXBvbmVudDoKIAkJCWNhc2UgMjoJCiAJCQkJaWYgKHRoaXMubmFtZVsxXSAhPSAnLicpCiAJCQkJ CWJyZWFrOwotCQkJCWZvbGxvd19kb3Rkb3QobmQpOworCQkJCWVyciA9IGZvbGxvd19kb3Rkb3Qo bmQpOworCQkJCWlmIChlcnIgPCAwKQorCQkJCQlnb3RvIG91dF9uZF9wYXRoX3B1dDsKIAkJCQlp bm9kZSA9IG5kLT5wYXRoLmRlbnRyeS0+ZF9pbm9kZTsKIAkJCQkvKiBmYWxsdGhyb3VnaCAqLwog CQkJY2FzZSAxOgpAQCAtMTAyMiw2ICsxMDQ3LDcgQEAgb3V0X2RwdXQ6CiAJCXBhdGhfcHV0X2Nv bmRpdGlvbmFsKCZuZXh0LCBuZCk7CiAJCWJyZWFrOwogCX0KK291dF9uZF9wYXRoX3B1dDoKIAlw YXRoX3B1dCgmbmQtPnBhdGgpOwogcmV0dXJuX2VycjoKIAlyZXR1cm4gZXJyOwotLSAKMi4yLjEK Cg== --=-=-= Content-Type: text/plain Eric --=-=-=--