From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Stone Subject: [PATCH igt v7 2/4] tests: Run igt.cocci Date: Thu, 29 Oct 2015 10:35:22 +0000 Message-ID: <1446114924-7192-1-git-send-email-daniels@collabora.com> References: <1446114679-6844-1-git-send-email-daniels@collabora.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-f41.google.com (mail-wm0-f41.google.com [74.125.82.41]) by gabe.freedesktop.org (Postfix) with ESMTPS id 97DDB6E63C for ; Thu, 29 Oct 2015 03:35:31 -0700 (PDT) Received: by wmeg8 with SMTP id g8so21783204wme.0 for ; Thu, 29 Oct 2015 03:35:30 -0700 (PDT) Received: from fxhe.lan (93-97-222-139.zone5.bethere.co.uk. [93.97.222.139]) by smtp.gmail.com with ESMTPSA id iw8sm1109771wjb.5.2015.10.29.03.35.27 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 29 Oct 2015 03:35:29 -0700 (PDT) In-Reply-To: <1446114679-6844-1-git-send-email-daniels@collabora.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org U2lnbmVkLW9mZi1ieTogRGFuaWVsIFN0b25lIDxkYW5pZWxzQGNvbGxhYm9yYS5jb20+Ci0tLQog dGVzdHMvZHJtX2ltcG9ydF9leHBvcnQuYyAgICAgICAgfCAgMiArLQogdGVzdHMvZ2VtX2JhZF9y ZWxvYy5jICAgICAgICAgICAgfCAgOCArKy0tLS0KIHRlc3RzL2dlbV9jb25jdXJyZW50X2FsbC5j ICAgICAgIHwgIDYgKystLQogdGVzdHMvZ2VtX2N0eF9leGVjLmMgICAgICAgICAgICAgfCAgOSAr Ky0tLS0KIHRlc3RzL2dlbV9jdHhfcGFyYW1fYmFzaWMuYyAgICAgIHwgIDQgKy0tCiB0ZXN0cy9n ZW1fbW1hcF9ndHQuYyAgICAgICAgICAgICB8ICA4ICsrLS0tLQogdGVzdHMvZ2VtX3Bpbi5jICAg ICAgICAgICAgICAgICAgfCAgNCArLS0KIHRlc3RzL2dlbV9wd3JpdGVfcHJlYWQuYyAgICAgICAg IHwgMTIgKysrKy0tLS0KIHRlc3RzL2dlbV9yZWdfcmVhZC5jICAgICAgICAgICAgIHwgIDIgKy0K IHRlc3RzL2dlbV90aWxlZF9zd2FwcGluZy5jICAgICAgIHwgIDQgKy0tCiB0ZXN0cy9nZW1fdGls ZWRfd2IuYyAgICAgICAgICAgICB8ICAyICstCiB0ZXN0cy9nZW1fdGlsZWRfd2MuYyAgICAgICAg ICAgICB8ICAyICstCiB0ZXN0cy9rbXNfZHJhd19jcmMuYyAgICAgICAgICAgICB8ICA2ICsrLS0K IHRlc3RzL2ttc19mcm9udGJ1ZmZlcl90cmFja2luZy5jIHwgNjAgKysrKysrKysrKysrKysrKysr KystLS0tLS0tLS0tLS0tLS0tLS0tLQogdGVzdHMva21zX3BhbmVsX2ZpdHRpbmcuYyAgICAgICAg fCAgMiArLQogdGVzdHMva21zX3BpcGVfYl9jX2l2Yi5jICAgICAgICAgfCAzMCArKysrKysrKysr LS0tLS0tLS0tLQogdGVzdHMva21zX3BsYW5lX3NjYWxpbmcuYyAgICAgICAgfCAgMiArLQogdGVz dHMva21zX3JvdGF0aW9uX2NyYy5jICAgICAgICAgfCAgNCArLS0KIHRlc3RzL3BtX2JhY2tsaWdo dC5jICAgICAgICAgICAgIHwgMjAgKysrKysrKy0tLS0tLS0KIDE5IGZpbGVzIGNoYW5nZWQsIDg4 IGluc2VydGlvbnMoKyksIDk5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Rlc3RzL2RybV9p bXBvcnRfZXhwb3J0LmMgYi90ZXN0cy9kcm1faW1wb3J0X2V4cG9ydC5jCmluZGV4IDI5YzIyOGYu LjQ5NDg2YWIgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2RybV9pbXBvcnRfZXhwb3J0LmMKKysrIGIvdGVz dHMvZHJtX2ltcG9ydF9leHBvcnQuYwpAQCAtMjEyLDcgKzIxMiw3IEBAIHN0YXRpYyB2b2lkIHRl c3RfaW1wb3J0X2Nsb3NlX3JhY2Uodm9pZCkKIAkJZWxzZSB7CiAJCQlwdGhyZWFkX211dGV4X2xv Y2soJnRfZGF0YS5tdXRleCk7CiAJCQlpZ3RfYXNzZXJ0X2VxKGRybV9pbnRlbF9ib19nZW1fZXhw b3J0X3RvX3ByaW1lKGJvLCAmKHRfZGF0YS5wcmltZV9mZCkpLCAwKTsKLQkJCWlndF9hc3NlcnQo dF9kYXRhLnByaW1lX2ZkICE9IC0xKTsKKwkJCWlndF9hc3NlcnRfbmVxKHRfZGF0YS5wcmltZV9m ZCwgLTEpOwogCQkJcHRocmVhZF9tdXRleF91bmxvY2soJnRfZGF0YS5tdXRleCk7CiAJCX0KIApk aWZmIC0tZ2l0IGEvdGVzdHMvZ2VtX2JhZF9yZWxvYy5jIGIvdGVzdHMvZ2VtX2JhZF9yZWxvYy5j CmluZGV4IDljMjg1ZWQuLmU4NzAxZGEgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2dlbV9iYWRfcmVsb2Mu YworKysgYi90ZXN0cy9nZW1fYmFkX3JlbG9jLmMKQEAgLTEwNyw5ICsxMDcsNyBAQCBzdGF0aWMg aW50IG5lZ2F0aXZlX3JlbG9jKGludCBmZCwgdW5zaWduZWQgZmxhZ3MpCiAJZXhlY2J1Zi5idWZm ZXJfY291bnQgPSAyOwogCWV4ZWNidWYuYmF0Y2hfbGVuID0gODsKIAotCWRvX29yX2RpZShkcm1J b2N0bChmZCwKLQkJCSAgIERSTV9JT0NUTF9JOTE1X0dFTV9FWEVDQlVGRkVSMiwKLQkJCSAgICZl eGVjYnVmKSk7CisJZG9faW9jdGwoZmQsIERSTV9JT0NUTF9JOTE1X0dFTV9FWEVDQlVGRkVSMiwg JmV4ZWNidWYpOwogCWdlbV9jbG9zZShmZCwgZ2VtX2V4ZWNbMV0uaGFuZGxlKTsKIAogCWlndF9p bmZvKCJGb3VuZCBvZmZzZXQgJWxsZCBmb3IgNGsgYmF0Y2hcbiIsIChsb25nIGxvbmcpZ2VtX2V4 ZWNbMF0ub2Zmc2V0KTsKQEAgLTEzNiw5ICsxMzQsNyBAQCBzdGF0aWMgaW50IG5lZ2F0aXZlX3Jl bG9jKGludCBmZCwgdW5zaWduZWQgZmxhZ3MpCiAKIAlleGVjYnVmLmJ1ZmZlcl9jb3VudCA9IDE7 CiAJZXhlY2J1Zi5mbGFncyA9IGZsYWdzICYgVVNFX0xVVDsKLQlkb19vcl9kaWUoZHJtSW9jdGwo ZmQsCi0JCQkgICBEUk1fSU9DVExfSTkxNV9HRU1fRVhFQ0JVRkZFUjIsCi0JCQkgICAmZXhlY2J1 ZikpOworCWRvX2lvY3RsKGZkLCBEUk1fSU9DVExfSTkxNV9HRU1fRVhFQ0JVRkZFUjIsICZleGVj YnVmKTsKIAogCWlndF9pbmZvKCJCYXRjaCBpcyBub3cgYXQgb2Zmc2V0ICVsbGRcbiIsIChsb25n IGxvbmcpZ2VtX2V4ZWNbMF0ub2Zmc2V0KTsKIApkaWZmIC0tZ2l0IGEvdGVzdHMvZ2VtX2NvbmN1 cnJlbnRfYWxsLmMgYi90ZXN0cy9nZW1fY29uY3VycmVudF9hbGwuYwppbmRleCAxZDJkNzg3Li4z OTcwZmM2IDEwMDY0NAotLS0gYS90ZXN0cy9nZW1fY29uY3VycmVudF9hbGwuYworKysgYi90ZXN0 cy9nZW1fY29uY3VycmVudF9hbGwuYwpAQCAtMjk4LDggKzI5OCw4IEBAIGdwdV9zZXRfYm8oZHJt X2ludGVsX2JvICpibywgdWludDMyX3QgdmFsLCBpbnQgd2lkdGgsIGludCBoZWlnaHQpCiAJZ2Vt X3B3cml0ZS5vZmZzZXQgPSAwOwogCWdlbV9wd3JpdGUuc2l6ZSA9IGV4ZWNidWYuYmF0Y2hfbGVu OwogCWdlbV9wd3JpdGUuZGF0YV9wdHIgPSAodWludHB0cl90KWJ1ZjsKLQlkb19vcl9kaWUoZHJt SW9jdGwoZmQsIERSTV9JT0NUTF9JOTE1X0dFTV9QV1JJVEUsICZnZW1fcHdyaXRlKSk7Ci0JZG9f b3JfZGllKGRybUlvY3RsKGZkLCBEUk1fSU9DVExfSTkxNV9HRU1fRVhFQ0JVRkZFUjIsICZleGVj YnVmKSk7CisJZG9faW9jdGwoZmQsIERSTV9JT0NUTF9JOTE1X0dFTV9QV1JJVEUsICZnZW1fcHdy aXRlKTsKKwlkb19pb2N0bChmZCwgRFJNX0lPQ1RMX0k5MTVfR0VNX0VYRUNCVUZGRVIyLCAmZXhl Y2J1Zik7CiAKIAlkcm1Jb2N0bChmZCwgRFJNX0lPQ1RMX0dFTV9DTE9TRSwgJmNyZWF0ZS5oYW5k bGUpOwogfQpAQCAtODY4LDcgKzg2OCw3IEBAIHN0YXRpYyB2b2lkIGJpdDE3X3JlcXVpcmUodm9p ZCkKIAlhcmcuaGFuZGxlID0gZ2VtX2NyZWF0ZShmZCwgNDA5Nik7CiAJZ2VtX3NldF90aWxpbmco ZmQsIGFyZy5oYW5kbGUsIEk5MTVfVElMSU5HX1gsIDUxMik7CiAKLQlkb19vcl9kaWUoZHJtSW9j dGwoZmQsIERSTV9JT0NUTF9JOTE1X0dFTV9HRVRfVElMSU5HMiwgJmFyZykpOworCWRvX2lvY3Rs KGZkLCBEUk1fSU9DVExfSTkxNV9HRU1fR0VUX1RJTElORzIsICZhcmcpOwogCWdlbV9jbG9zZShm ZCwgYXJnLmhhbmRsZSk7CiAJaWd0X3JlcXVpcmUoYXJnLnBoeXNfc3dpenpsZV9tb2RlID09IGFy Zy5zd2l6emxlX21vZGUpOwogfQpkaWZmIC0tZ2l0IGEvdGVzdHMvZ2VtX2N0eF9leGVjLmMgYi90 ZXN0cy9nZW1fY3R4X2V4ZWMuYwppbmRleCBmMmI3Y2I2Li4xNzllOTkxIDEwMDY0NAotLS0gYS90 ZXN0cy9nZW1fY3R4X2V4ZWMuYworKysgYi90ZXN0cy9nZW1fY3R4X2V4ZWMuYwpAQCAtMTE2LDgg KzExNiw3IEBAIHN0YXRpYyB2b2lkIGJpZ19leGVjKGludCBmZCwgdWludDMyX3QgaGFuZGxlLCBp bnQgcmluZykKIAogCWV4ZWNidWYuYnVmZmVyX2NvdW50ID0gMTsKIAlpOTE1X2V4ZWNidWZmZXIy X3NldF9jb250ZXh0X2lkKGV4ZWNidWYsIGN0eF9pZDEpOwotCWlndF9hc3NlcnQoZHJtSW9jdGwo ZmQsIERSTV9JT0NUTF9JOTE1X0dFTV9FWEVDQlVGRkVSMiwKLQkJCSAgICAmZXhlY2J1ZikgPT0g MCk7CisJZG9faW9jdGwoZmQsIERSTV9JT0NUTF9JOTE1X0dFTV9FWEVDQlVGRkVSMiwgJmV4ZWNi dWYpOwogCiAJZm9yIChpID0gMDsgaSA8IG51bV9idWZmZXJzOyBpKyspIHsKIAkJdWludDMyX3Qg dG1wX2hhbmRsZSA9IGdlbV9jcmVhdGUoZmQsIDQwOTYpOwpAQCAtMTQxLDEyICsxNDAsMTAgQEAg c3RhdGljIHZvaWQgYmlnX2V4ZWMoaW50IGZkLCB1aW50MzJfdCBoYW5kbGUsIGludCByaW5nKQog CSAgICAgICBpIC0gMSwgbnVtX2J1ZmZlcnMpOwogCiAJLyogZG91YmxlIGNoZWNrIHRoYXQgaXQg d29ya3MgKi8KLQlpZ3RfYXNzZXJ0KGRybUlvY3RsKGZkLCBEUk1fSU9DVExfSTkxNV9HRU1fRVhF Q0JVRkZFUjIsCi0JCQkgICAgJmV4ZWNidWYpID09IDApOworCWRvX2lvY3RsKGZkLCBEUk1fSU9D VExfSTkxNV9HRU1fRVhFQ0JVRkZFUjIsICZleGVjYnVmKTsKIAogCWk5MTVfZXhlY2J1ZmZlcjJf c2V0X2NvbnRleHRfaWQoZXhlY2J1ZiwgY3R4X2lkMik7Ci0JaWd0X2Fzc2VydChkcm1Jb2N0bChm ZCwgRFJNX0lPQ1RMX0k5MTVfR0VNX0VYRUNCVUZGRVIyLAotCQkJICAgICZleGVjYnVmKSA9PSAw KTsKKwlkb19pb2N0bChmZCwgRFJNX0lPQ1RMX0k5MTVfR0VNX0VYRUNCVUZGRVIyLCAmZXhlY2J1 Zik7CiAJZ2VtX3N5bmMoZmQsIGhhbmRsZSk7CiB9CiAKZGlmZiAtLWdpdCBhL3Rlc3RzL2dlbV9j dHhfcGFyYW1fYmFzaWMuYyBiL3Rlc3RzL2dlbV9jdHhfcGFyYW1fYmFzaWMuYwppbmRleCA5NDI0 NWNlLi5iNzU4MDBjIDEwMDY0NAotLS0gYS90ZXN0cy9nZW1fY3R4X3BhcmFtX2Jhc2ljLmMKKysr IGIvdGVzdHMvZ2VtX2N0eF9wYXJhbV9iYXNpYy5jCkBAIC00MCw5ICs0MCw5IEBAIGludDMyX3Qg Y3R4OwogI2RlZmluZSBMT0NBTF9JT0NUTF9JOTE1X0dFTV9DT05URVhUX1NFVFBBUkFNIERSTV9J T1dSIChEUk1fQ09NTUFORF9CQVNFICsgTE9DQUxfSTkxNV9HRU1fQ09OVEVYVF9TRVRQQVJBTSwg c3RydWN0IGxvY2FsX2k5MTVfZ2VtX2NvbnRleHRfcGFyYW0pCiAKICNkZWZpbmUgVEVTVF9TVUND RVNTKGlvYykgXAotCWlndF9hc3NlcnQoZHJtSW9jdGwoZmQsIChpb2MpLCAmY3R4X3BhcmFtKSA9 PSAwKTsKKwlkb19pb2N0bChmZCwgKGlvYyksICZjdHhfcGFyYW0pOwogI2RlZmluZSBURVNUX0ZB SUwoaW9jLCBleHBfZXJybm8pIFwKLQlpZ3RfYXNzZXJ0KGRybUlvY3RsKGZkLCAoaW9jKSwgJmN0 eF9wYXJhbSkgPCAwICYmIGVycm5vID09IGV4cF9lcnJubyk7CisJZG9faW9jdGxfZXJyKGZkLCAo aW9jKSwgJmN0eF9wYXJhbSwgZXhwX2Vycm5vKTsKIAogaWd0X21haW4KIHsKZGlmZiAtLWdpdCBh L3Rlc3RzL2dlbV9tbWFwX2d0dC5jIGIvdGVzdHMvZ2VtX21tYXBfZ3R0LmMKaW5kZXggNjJiYTM1 Zi4uZjU4NmJmMSAxMDA2NDQKLS0tIGEvdGVzdHMvZ2VtX21tYXBfZ3R0LmMKKysrIGIvdGVzdHMv Z2VtX21tYXBfZ3R0LmMKQEAgLTkwLDkgKzkwLDcgQEAgdGVzdF9hY2Nlc3MoaW50IGZkKQogCiAJ LyogQ2hlY2sgdGhhdCBmZDEgY2FuIG1tYXAuICovCiAJbW1hcF9hcmcuaGFuZGxlID0gaGFuZGxl OwotCWlndF9hc3NlcnQoZHJtSW9jdGwoZmQsCi0JCQkgICAgRFJNX0lPQ1RMX0k5MTVfR0VNX01N QVBfR1RULAotCQkJICAgICZtbWFwX2FyZykgPT0gMCk7CisJZG9faW9jdGwoZmQsIERSTV9JT0NU TF9JOTE1X0dFTV9NTUFQX0dUVCwgJm1tYXBfYXJnKTsKIAogCWlndF9hc3NlcnQobW1hcDY0KDAs IE9CSkVDVF9TSVpFLCBQUk9UX1JFQUQgfCBQUk9UX1dSSVRFLAogCQkJICBNQVBfU0hBUkVELCBm ZCwgbW1hcF9hcmcub2Zmc2V0KSk7CkBAIC0xMjIsOSArMTIwLDcgQEAgdGVzdF9zaG9ydChpbnQg ZmQpCiAJbW1hcF9hcmcuaGFuZGxlID0gZ2VtX2NyZWF0ZShmZCwgT0JKRUNUX1NJWkUpOwogCWln dF9hc3NlcnQobW1hcF9hcmcuaGFuZGxlKTsKIAotCWlndF9hc3NlcnQoZHJtSW9jdGwoZmQsCi0J CQkgICAgRFJNX0lPQ1RMX0k5MTVfR0VNX01NQVBfR1RULAotCQkJICAgICZtbWFwX2FyZykgPT0g MCk7CisJZG9faW9jdGwoZmQsIERSTV9JT0NUTF9JOTE1X0dFTV9NTUFQX0dUVCwgJm1tYXBfYXJn KTsKIAlmb3IgKHBhZ2VzID0gMTsgcGFnZXMgPD0gT0JKRUNUX1NJWkUgLyBQQUdFX1NJWkU7IHBh Z2VzIDw8PSAxKSB7CiAJCXVpbnQ4X3QgKnIsICp3OwogCmRpZmYgLS1naXQgYS90ZXN0cy9nZW1f cGluLmMgYi90ZXN0cy9nZW1fcGluLmMKaW5kZXggZTQ5ZDBmNy4uOGRhNzVjNSAxMDA2NDQKLS0t IGEvdGVzdHMvZ2VtX3Bpbi5jCisrKyBiL3Rlc3RzL2dlbV9waW4uYwpAQCAtODAsNyArODAsNyBA QCBzdGF0aWMgdm9pZCBleGVjKGludCBmZCwgdWludDMyX3QgaGFuZGxlLCB1aW50MzJfdCBvZmZz ZXQpCiAJaTkxNV9leGVjYnVmZmVyMl9zZXRfY29udGV4dF9pZChleGVjYnVmLCAwKTsKIAlleGVj YnVmLnJzdmQyID0gMDsKIAotCWRvX29yX2RpZShkcm1Jb2N0bChmZCwgRFJNX0lPQ1RMX0k5MTVf R0VNX0VYRUNCVUZGRVIyLCAmZXhlY2J1ZikpOworCWRvX2lvY3RsKGZkLCBEUk1fSU9DVExfSTkx NV9HRU1fRVhFQ0JVRkZFUjIsICZleGVjYnVmKTsKIAlpZ3RfYXNzZXJ0KGdlbV9leGVjWzBdLm9m ZnNldCA9PSBvZmZzZXQpOwogfQogCkBAIC0xNzIsNyArMTcyLDcgQEAgc3RhdGljIHZvaWQgbWFr ZV9idXN5KGludCBmZCwgdWludDMyX3QgaGFuZGxlKQogCiAJZ2VtX3dyaXRlKGZkLCBoYW5kbGUs IDAsIGJhdGNoLCBleGVjYnVmLmJhdGNoX2xlbik7CiAJZm9yIChjb3VudCA9IDA7IGNvdW50IDwg MTA7IGNvdW50KyspCi0JCWRvX29yX2RpZShkcm1Jb2N0bChmZCwgRFJNX0lPQ1RMX0k5MTVfR0VN X0VYRUNCVUZGRVIyLCAmZXhlY2J1ZikpOworCQlkb19pb2N0bChmZCwgRFJNX0lPQ1RMX0k5MTVf R0VNX0VYRUNCVUZGRVIyLCAmZXhlY2J1Zik7CiAJZ2VtX2Nsb3NlKGZkLCB0bXApOwogfQogCmRp ZmYgLS1naXQgYS90ZXN0cy9nZW1fcHdyaXRlX3ByZWFkLmMgYi90ZXN0cy9nZW1fcHdyaXRlX3By ZWFkLmMKaW5kZXggZWY4ODkwZS4uZmUxMzZkMyAxMDA2NDQKLS0tIGEvdGVzdHMvZ2VtX3B3cml0 ZV9wcmVhZC5jCisrKyBiL3Rlc3RzL2dlbV9wd3JpdGVfcHJlYWQuYwpAQCAtMTAwLDcgKzEwMCw3 IEBAIHN0YXRpYyB2b2lkIGNvcHkoaW50IGZkLCB1aW50MzJfdCBzcmMsIHVpbnQzMl90IGRzdCwg dm9pZCAqYnVmLCBpbnQgbGVuLCBpbnQgbG9vCiAKIAl3aGlsZSAobG9vcHMtLSkgewogCQlnZW1f d3JpdGUoZmQsIHNyYywgMCwgYnVmLCBsZW4pOwotCQlkb19vcl9kaWUoZHJtSW9jdGwoZmQsIERS TV9JT0NUTF9JOTE1X0dFTV9FWEVDQlVGRkVSMiwgJmV4ZWNidWYpKTsKKwkJZG9faW9jdGwoZmQs IERSTV9JT0NUTF9JOTE1X0dFTV9FWEVDQlVGRkVSMiwgJmV4ZWNidWYpOwogCQlnZW1fcmVhZChm ZCwgZHN0LCAwLCBidWYsIGxlbik7CiAJfQogCkBAIC0xMjAsNyArMTIwLDcgQEAgc3RhdGljIHZv aWQgYXNfZ3R0X21tYXAoaW50IGZkLCB1aW50MzJfdCBzcmMsIHVpbnQzMl90IGRzdCwgdm9pZCAq YnVmLCBpbnQgbGVuLAogCQkJICAgICAgIEk5MTVfR0VNX0RPTUFJTl9HVFQsIEk5MTVfR0VNX0RP TUFJTl9HVFQpOwogCQltZW1jcHkoc3JjX3B0ciwgYnVmLCBsZW4pOwogCi0JCWRvX29yX2RpZShk cm1Jb2N0bChmZCwgRFJNX0lPQ1RMX0k5MTVfR0VNX0VYRUNCVUZGRVIyLCAmZXhlY2J1ZikpOwor CQlkb19pb2N0bChmZCwgRFJNX0lPQ1RMX0k5MTVfR0VNX0VYRUNCVUZGRVIyLCAmZXhlY2J1Zik7 CiAJCWdlbV9zZXRfZG9tYWluKGZkLCBkc3QsCiAJCQkgICAgICAgSTkxNV9HRU1fRE9NQUlOX0dU VCwgMCk7CiAJCW1lbWNweShidWYsIGRzdF9wdHIsIGxlbik7CkBAIC0xNDUsNyArMTQ1LDcgQEAg c3RhdGljIHZvaWQgYXNfY3B1X21tYXAoaW50IGZkLCB1aW50MzJfdCBzcmMsIHVpbnQzMl90IGRz dCwgdm9pZCAqYnVmLCBpbnQgbGVuLAogCQkJICAgICAgIEk5MTVfR0VNX0RPTUFJTl9DUFUsIEk5 MTVfR0VNX0RPTUFJTl9DUFUpOwogCQltZW1jcHkoc3JjX3B0ciwgYnVmLCBsZW4pOwogCi0JCWRv X29yX2RpZShkcm1Jb2N0bChmZCwgRFJNX0lPQ1RMX0k5MTVfR0VNX0VYRUNCVUZGRVIyLCAmZXhl Y2J1ZikpOworCQlkb19pb2N0bChmZCwgRFJNX0lPQ1RMX0k5MTVfR0VNX0VYRUNCVUZGRVIyLCAm ZXhlY2J1Zik7CiAJCWdlbV9zZXRfZG9tYWluKGZkLCBkc3QsCiAJCQkgICAgICAgSTkxNV9HRU1f RE9NQUlOX0NQVSwgMCk7CiAJCW1lbWNweShidWYsIGRzdF9wdHIsIGxlbik7CkBAIC0xNjcsNyAr MTY3LDcgQEAgc3RhdGljIHZvaWQgdGVzdF9jb3B5KGludCBmZCwgdWludDMyX3Qgc3JjLCB1aW50 MzJfdCBkc3QsIHVpbnQzMl90ICpidWYsIGludCBsZW4KIAlnZW1fd3JpdGUoZmQsIHNyYywgMCwg YnVmLCBsZW4pOwogCW1lbXNldChidWYsIDAsIGxlbik7CiAKLQlkb19vcl9kaWUoZHJtSW9jdGwo ZmQsIERSTV9JT0NUTF9JOTE1X0dFTV9FWEVDQlVGRkVSMiwgJmV4ZWNidWYpKTsKKwlkb19pb2N0 bChmZCwgRFJNX0lPQ1RMX0k5MTVfR0VNX0VYRUNCVUZGRVIyLCAmZXhlY2J1Zik7CiAJZ2VtX3Jl YWQoZmQsIGRzdCwgMCwgYnVmLCBsZW4pOwogCiAJZ2VtX2Nsb3NlKGZkLCBleGVjWzJdLmhhbmRs ZSk7CkBAIC0xODksNyArMTg5LDcgQEAgc3RhdGljIHZvaWQgdGVzdF9hc19ndHRfbW1hcChpbnQg ZmQsIHVpbnQzMl90IHNyYywgdWludDMyX3QgZHN0LCBpbnQgbGVuKQogCWZvciAoaSA9IDA7IGkg PCBsZW4vNDsgaSsrKQogCQlzcmNfcHRyW2ldID0gaTsKIAotCWRvX29yX2RpZShkcm1Jb2N0bChm ZCwgRFJNX0lPQ1RMX0k5MTVfR0VNX0VYRUNCVUZGRVIyLCAmZXhlY2J1ZikpOworCWRvX2lvY3Rs KGZkLCBEUk1fSU9DVExfSTkxNV9HRU1fRVhFQ0JVRkZFUjIsICZleGVjYnVmKTsKIAlnZW1fY2xv c2UoZmQsIGV4ZWNbMl0uaGFuZGxlKTsKIAogCWdlbV9zZXRfZG9tYWluKGZkLCBkc3QsIEk5MTVf R0VNX0RPTUFJTl9HVFQsIDApOwpAQCAtMjEzLDcgKzIxMyw3IEBAIHN0YXRpYyB2b2lkIHRlc3Rf YXNfY3B1X21tYXAoaW50IGZkLCB1aW50MzJfdCBzcmMsIHVpbnQzMl90IGRzdCwgaW50IGxlbikK IAlmb3IgKGkgPSAwOyBpIDwgbGVuLzQ7IGkrKykKIAkJc3JjX3B0cltpXSA9IGk7CiAKLQlkb19v cl9kaWUoZHJtSW9jdGwoZmQsIERSTV9JT0NUTF9JOTE1X0dFTV9FWEVDQlVGRkVSMiwgJmV4ZWNi dWYpKTsKKwlkb19pb2N0bChmZCwgRFJNX0lPQ1RMX0k5MTVfR0VNX0VYRUNCVUZGRVIyLCAmZXhl Y2J1Zik7CiAJZ2VtX2Nsb3NlKGZkLCBleGVjWzJdLmhhbmRsZSk7CiAKIAlnZW1fc2V0X2RvbWFp bihmZCwgZHN0LCBJOTE1X0dFTV9ET01BSU5fQ1BVLCAwKTsKZGlmZiAtLWdpdCBhL3Rlc3RzL2dl bV9yZWdfcmVhZC5jIGIvdGVzdHMvZ2VtX3JlZ19yZWFkLmMKaW5kZXggOGZhNzBkMC4uNzlmYWNj MSAxMDA2NDQKLS0tIGEvdGVzdHMvZ2VtX3JlZ19yZWFkLmMKKysrIGIvdGVzdHMvZ2VtX3JlZ19y ZWFkLmMKQEAgLTY1LDcgKzY1LDcgQEAgc3RhdGljIGJvb2wgY2hlY2tfa2VybmVsX3g4Nl82NCh2 b2lkKQogCXN0cnVjdCB1dHNuYW1lIHV0czsKIAogCXJldCA9IHVuYW1lKCZ1dHMpOwotCWlndF9h c3NlcnQocmV0ID09IDApOworCWlndF9hc3NlcnRfZXEocmV0LCAwKTsKIAogCWlmICghc3RyY21w KHV0cy5tYWNoaW5lLCAieDg2XzY0IikpCiAJCXJldHVybiB0cnVlOwpkaWZmIC0tZ2l0IGEvdGVz dHMvZ2VtX3RpbGVkX3N3YXBwaW5nLmMgYi90ZXN0cy9nZW1fdGlsZWRfc3dhcHBpbmcuYwppbmRl eCBmNDUyNDRiLi5iNTg0OWJjIDEwMDY0NAotLS0gYS90ZXN0cy9nZW1fdGlsZWRfc3dhcHBpbmcu YworKysgYi90ZXN0cy9nZW1fdGlsZWRfc3dhcHBpbmcuYwpAQCAtMTU3LDggKzE1Nyw4IEBAIHN0 YXRpYyB2b2lkIHRocmVhZF9maW5pKHN0cnVjdCB0aHJlYWQgKnQpCiAKIHN0YXRpYyB2b2lkIGNo ZWNrX21lbW9yeV9sYXlvdXQodm9pZCkKIHsKLQlpZiAoaWd0X2RlYnVnZnNfc2VhcmNoKCJpOTE1 X3N3aXp6bGVfaW5mbyIsICJMLXNoYXBlZCIpKQotCQlpZ3Rfc2tpcCgiTC1zaGFwZWQgbWVtb3J5 IGNvbmZpZ3VyYXRpb24gZGV0ZWN0ZWRcbiIpOworCWlndF9za2lwX29uX2YoaWd0X2RlYnVnZnNf c2VhcmNoKCJpOTE1X3N3aXp6bGVfaW5mbyIsICJMLXNoYXBlZCIpLAorCQkgICAgICAiTC1zaGFw ZWQgbWVtb3J5IGNvbmZpZ3VyYXRpb24gZGV0ZWN0ZWRcbiIpOwogCiAJaWd0X2RlYnVnKCJub3Jt YWwgbWVtb3J5IGNvbmZpZ3VyYXRpb24gZGV0ZWN0ZWQsIGNvbnRpbnVpbmdcbiIpOwogfQpkaWZm IC0tZ2l0IGEvdGVzdHMvZ2VtX3RpbGVkX3diLmMgYi90ZXN0cy9nZW1fdGlsZWRfd2IuYwppbmRl eCAyMjdlYmRlLi42N2Q1NGJkIDEwMDY0NAotLS0gYS90ZXN0cy9nZW1fdGlsZWRfd2IuYworKysg Yi90ZXN0cy9nZW1fdGlsZWRfd2IuYwpAQCAtMTIzLDcgKzEyMyw3IEBAIGdldF90aWxpbmcoaW50 IGZkLCB1aW50MzJfdCBoYW5kbGUsIHVpbnQzMl90ICp0aWxpbmcsIHVpbnQzMl90ICpzd2l6emxl KQogCW1lbXNldCgmYXJnLCAwLCBzaXplb2YoYXJnKSk7CiAJYXJnLmhhbmRsZSA9IGhhbmRsZTsK IAotCWRvX29yX2RpZShkcm1Jb2N0bChmZCwgRFJNX0lPQ1RMX0k5MTVfR0VNX0dFVF9USUxJTkcy LCAmYXJnKSk7CisJZG9faW9jdGwoZmQsIERSTV9JT0NUTF9JOTE1X0dFTV9HRVRfVElMSU5HMiwg JmFyZyk7CiAJaWd0X3JlcXVpcmUoYXJnLnBoeXNfc3dpenpsZV9tb2RlID09IGFyZy5zd2l6emxl X21vZGUpOwogCiAJKnRpbGluZyA9IGFyZy50aWxpbmdfbW9kZTsKZGlmZiAtLWdpdCBhL3Rlc3Rz L2dlbV90aWxlZF93Yy5jIGIvdGVzdHMvZ2VtX3RpbGVkX3djLmMKaW5kZXggYTYzMTZjYy4uNjVh YzM4NSAxMDA2NDQKLS0tIGEvdGVzdHMvZ2VtX3RpbGVkX3djLmMKKysrIGIvdGVzdHMvZ2VtX3Rp bGVkX3djLmMKQEAgLTExOCw3ICsxMTgsNyBAQCBnZXRfdGlsaW5nKGludCBmZCwgdWludDMyX3Qg aGFuZGxlLCB1aW50MzJfdCAqdGlsaW5nLCB1aW50MzJfdCAqc3dpenpsZSkKIAltZW1zZXQoJmFy ZywgMCwgc2l6ZW9mKGFyZykpOwogCWFyZy5oYW5kbGUgPSBoYW5kbGU7CiAKLQlkb19vcl9kaWUo ZHJtSW9jdGwoZmQsIERSTV9JT0NUTF9JOTE1X0dFTV9HRVRfVElMSU5HMiwgJmFyZykpOworCWRv X2lvY3RsKGZkLCBEUk1fSU9DVExfSTkxNV9HRU1fR0VUX1RJTElORzIsICZhcmcpOwogCWlndF9y ZXF1aXJlKGFyZy5waHlzX3N3aXp6bGVfbW9kZSA9PSBhcmcuc3dpenpsZV9tb2RlKTsKIAogCSp0 aWxpbmcgPSBhcmcudGlsaW5nX21vZGU7CmRpZmYgLS1naXQgYS90ZXN0cy9rbXNfZHJhd19jcmMu YyBiL3Rlc3RzL2ttc19kcmF3X2NyYy5jCmluZGV4IDEwYTg0ZmEuLmRjY2Y1MzUgMTAwNjQ0Ci0t LSBhL3Rlc3RzL2ttc19kcmF3X2NyYy5jCisrKyBiL3Rlc3RzL2ttc19kcmF3X2NyYy5jCkBAIC0x MzgsNyArMTM4LDcgQEAgc3RhdGljIHZvaWQgZ2V0X21ldGhvZF9jcmMoZW51bSBpZ3RfZHJhd19t ZXRob2QgbWV0aG9kLCB1aW50MzJfdCBkcm1fZm9ybWF0LAogCiAJcmMgPSBkcm1Nb2RlU2V0Q3J0 Yyhkcm1fZmQsIG1zLmNydGNfaWQsIGZiLmZiX2lkLCAwLCAwLAogCQkJICAgICZtcy5jb25uZWN0 b3JfaWQsIDEsIG1zLm1vZGUpOwotCWlndF9hc3NlcnQocmMgPT0gMCk7CisJaWd0X2Fzc2VydF9l cShyYywgMCk7CiAKIAlpZ3RfcGlwZV9jcmNfY29sbGVjdF9jcmMocGlwZV9jcmMsIGNyYyk7CiAK QEAgLTE4MSw3ICsxODEsNyBAQCBzdGF0aWMgdm9pZCBnZXRfZmlsbF9jcmModWludDY0X3QgdGls aW5nLCBpZ3RfY3JjX3QgKmNyYykKIAogCXJjID0gZHJtTW9kZVNldENydGMoZHJtX2ZkLCBtcy5j cnRjX2lkLCBmYi5mYl9pZCwgMCwgMCwKIAkJCSAgICAmbXMuY29ubmVjdG9yX2lkLCAxLCBtcy5t b2RlKTsKLQlpZ3RfYXNzZXJ0KHJjID09IDApOworCWlndF9hc3NlcnRfZXEocmMsIDApOwogCiAJ aWd0X3BpcGVfY3JjX2NvbGxlY3RfY3JjKHBpcGVfY3JjLCBjcmMpOwogCkBAIC0yMDcsNyArMjA3 LDcgQEAgc3RhdGljIHZvaWQgZmlsbF9mYl9zdWJ0ZXN0KHZvaWQpCiAKIAlyYyA9IGRybU1vZGVT ZXRDcnRjKGRybV9mZCwgbXMuY3J0Y19pZCwgZmIuZmJfaWQsIDAsIDAsCiAJCQkgICAgJm1zLmNv bm5lY3Rvcl9pZCwgMSwgbXMubW9kZSk7Ci0JaWd0X2Fzc2VydChyYyA9PSAwKTsKKwlpZ3RfYXNz ZXJ0X2VxKHJjLCAwKTsKIAogCWlndF9waXBlX2NyY19jb2xsZWN0X2NyYyhwaXBlX2NyYywgJmJh c2VfY3JjKTsKIApkaWZmIC0tZ2l0IGEvdGVzdHMva21zX2Zyb250YnVmZmVyX3RyYWNraW5nLmMg Yi90ZXN0cy9rbXNfZnJvbnRidWZmZXJfdHJhY2tpbmcuYwppbmRleCAxNTcwN2I5Li4zOGVkNjYy IDEwMDY0NAotLS0gYS90ZXN0cy9rbXNfZnJvbnRidWZmZXJfdHJhY2tpbmcuYworKysgYi90ZXN0 cy9rbXNfZnJvbnRidWZmZXJfdHJhY2tpbmcuYwpAQCAtNzE3LDcgKzcxNyw3IEBAIHN0YXRpYyB2 b2lkIGZiY19wcmludF9zdGF0dXModm9pZCkKIAljaGFyIGJ1ZlsxMjhdOwogCiAJaWd0X2RlYnVn ZnNfcmVhZCgiaTkxNV9mYmNfc3RhdHVzIiwgYnVmKTsKLQlwcmludGYoIkZCQyBzdGF0dXM6XG4l c1xuIiwgYnVmKTsKKwlpZ3RfaW5mbygiRkJDIHN0YXR1czpcbiVzXG4iLCBidWYpOwogfQogCiBz dGF0aWMgYm9vbCBwc3JfaXNfZW5hYmxlZCh2b2lkKQpAQCAtNzM0LDcgKzczNCw3IEBAIHN0YXRp YyB2b2lkIHBzcl9wcmludF9zdGF0dXModm9pZCkKIAljaGFyIGJ1ZlsyNTZdOwogCiAJaWd0X2Rl YnVnZnNfcmVhZCgiaTkxNV9lZHBfcHNyX3N0YXR1cyIsIGJ1Zik7Ci0JcHJpbnRmKCJQU1Igc3Rh dHVzOlxuJXNcbiIsIGJ1Zik7CisJaWd0X2luZm8oIlBTUiBzdGF0dXM6XG4lc1xuIiwgYnVmKTsK IH0KIAogc3RhdGljIHN0cnVjdCB0aW1lc3BlYyBmYmNfZ2V0X2xhc3RfYWN0aW9uKHZvaWQpCkBA IC05ODgsNyArOTg4LDcgQEAgc3RhdGljIHN0cnVjdCByZWN0IHBhdDRfZ2V0X3JlY3Qoc3RydWN0 IGZiX3JlZ2lvbiAqZmIsIGludCByKQogewogCXN0cnVjdCByZWN0IHJlY3Q7CiAKLQlpZ3RfYXNz ZXJ0KHIgPT0gMCk7CisJaWd0X2Fzc2VydF9lcShyLCAwKTsKIAogCXJlY3QueCA9IDA7CiAJcmVj dC55ID0gMDsKQEAgLTEwNTgsMTYgKzEwNTgsMTYgQEAgc3RhdGljIHZvaWQgdW5zZXRfYWxsX2Ny dGNzKHZvaWQpCiAJZm9yIChpID0gMDsgaSA8IGRybS5yZXMtPmNvdW50X2NydGNzOyBpKyspIHsK IAkJcmMgPSBkcm1Nb2RlU2V0Q3J0Yyhkcm0uZmQsIGRybS5yZXMtPmNydGNzW2ldLCAtMSwgMCwg MCwgTlVMTCwKIAkJCQkgICAgMCwgTlVMTCk7Ci0JCWlndF9hc3NlcnQocmMgPT0gMCk7CisJCWln dF9hc3NlcnRfZXEocmMsIDApOwogCiAJCXJjID0gZHJtTW9kZVNldEN1cnNvcihkcm0uZmQsIGRy bS5yZXMtPmNydGNzW2ldLCAwLCAwLCAwKTsKLQkJaWd0X2Fzc2VydChyYyA9PSAwKTsKKwkJaWd0 X2Fzc2VydF9lcShyYywgMCk7CiAJfQogCiAJZm9yIChpID0gMDsgaSA8IGRybS5wbGFuZV9yZXMt PmNvdW50X3BsYW5lczsgaSsrKSB7CiAJCXJjID0gZHJtTW9kZVNldFBsYW5lKGRybS5mZCwgZHJt LnBsYW5lX3Jlcy0+cGxhbmVzW2ldLCAwLCAwLCAwLAogCQkJCSAgICAgMCwgMCwgMCwgMCwgMCwg MCwgMCwgMCk7Ci0JCWlndF9hc3NlcnQocmMgPT0gMCk7CisJCWlndF9hc3NlcnRfZXEocmMsIDAp OwogCX0KIH0KIApAQCAtMTExOSw3ICsxMTE5LDcgQEAgc3RhdGljIHZvaWQgc3RhcnRfYnVzeV90 aHJlYWQoc3RydWN0IGlndF9mYiAqZmIpCiAJYnVzeV90aHJlYWQuYnBwID0gZmJfZ2V0X2JwcChm Yik7CiAKIAlyYyA9IHB0aHJlYWRfY3JlYXRlKCZidXN5X3RocmVhZC50aHJlYWQsIE5VTEwsIGJ1 c3lfdGhyZWFkX2Z1bmMsIE5VTEwpOwotCWlndF9hc3NlcnQocmMgPT0gMCk7CisJaWd0X2Fzc2Vy dF9lcShyYywgMCk7CiB9CiAKIHN0YXRpYyB2b2lkIHN0b3BfYnVzeV90aHJlYWQodm9pZCkKQEAg LTExNzIsNyArMTE3Miw3IEBAIHN0YXRpYyB2b2lkIGluaXRfYmx1ZV9jcmMoZW51bSBwaXhlbF9m b3JtYXQgZm9ybWF0KQogCXJjID0gZHJtTW9kZVNldENydGMoZHJtLmZkLCBwcmltX21vZGVfcGFy YW1zLmNydGNfaWQsCiAJCQkgICAgYmx1ZS5mYl9pZCwgMCwgMCwgJnByaW1fbW9kZV9wYXJhbXMu Y29ubmVjdG9yX2lkLCAxLAogCQkJICAgIHByaW1fbW9kZV9wYXJhbXMubW9kZSk7Ci0JaWd0X2Fz c2VydChyYyA9PSAwKTsKKwlpZ3RfYXNzZXJ0X2VxKHJjLCAwKTsKIAljb2xsZWN0X2NyY3MoJmJs dWVfY3Jjc1tmb3JtYXRdLmNyYyk7CiAKIAlwcmludF9jcmMoIkJsdWUgQ1JDOiAgIiwgJmJsdWVf Y3Jjc1tmb3JtYXRdLmNyYyk7CkBAIC0xMjIwLDcgKzEyMjAsNyBAQCBzdGF0aWMgdm9pZCBpbml0 X2NyY3MoZW51bSBwaXhlbF9mb3JtYXQgZm9ybWF0LAogCQkJCSAgIHRtcF9mYnNbcl0uZmJfaWQs IDAsIDAsCiAJCQkJICAgJnByaW1fbW9kZV9wYXJhbXMuY29ubmVjdG9yX2lkLCAxLAogCQkJCSAg IHByaW1fbW9kZV9wYXJhbXMubW9kZSk7Ci0JCWlndF9hc3NlcnQocmMgPT0gMCk7CisJCWlndF9h c3NlcnRfZXEocmMsIDApOwogCQljb2xsZWN0X2NyY3MoJnBhdHRlcm4tPmNyY3NbZm9ybWF0XVty XSk7CiAJfQogCkBAIC0xMzM2LDcgKzEzMzYsNyBAQCBzdGF0aWMgdm9pZCBzZXR1cF9zaW5rX2Ny Yyh2b2lkKQogCXNldF9tb2RlX2Zvcl9wYXJhbXMoJnByaW1fbW9kZV9wYXJhbXMpOwogCiAJc2lu a19jcmMuZmQgPSBpZ3RfZGVidWdmc19vcGVuKCJpOTE1X3NpbmtfY3JjX2VEUDEiLCBPX1JET05M WSk7Ci0JaWd0X2Fzc2VydChzaW5rX2NyYy5mZCA+PSAwKTsKKwlpZ3RfYXNzZXJ0X2x0ZSgwLCBz aW5rX2NyYy5mZCk7CiAKIAlyYyA9IHJlYWQoc2lua19jcmMuZmQsIGNyYy5kYXRhLCBTSU5LX0NS Q19TSVpFKTsKIAllcnJub18gPSBlcnJubzsKQEAgLTE2NzIsMTMgKzE2NzIsMTMgQEAgc3RhdGlj IHZvaWQgc2V0X2N1cnNvcl9mb3JfdGVzdChjb25zdCBzdHJ1Y3QgdGVzdF9tb2RlICp0LAogCWZp bGxfZmJfcmVnaW9uKCZwYXJhbXMtPmN1cnNvciwgQ09MT1JfUFJJTV9CRyk7CiAKIAlyYyA9IGRy bU1vZGVNb3ZlQ3Vyc29yKGRybS5mZCwgcGFyYW1zLT5jcnRjX2lkLCAwLCAwKTsKLQlpZ3RfYXNz ZXJ0KHJjID09IDApOworCWlndF9hc3NlcnRfZXEocmMsIDApOwogCiAJcmMgPSBkcm1Nb2RlU2V0 Q3Vyc29yKGRybS5mZCwgcGFyYW1zLT5jcnRjX2lkLAogCQkJICAgICAgcGFyYW1zLT5jdXJzb3Iu ZmItPmdlbV9oYW5kbGUsCiAJCQkgICAgICBwYXJhbXMtPmN1cnNvci53LAogCQkJICAgICAgcGFy YW1zLT5jdXJzb3IuaCk7Ci0JaWd0X2Fzc2VydChyYyA9PSAwKTsKKwlpZ3RfYXNzZXJ0X2VxKHJj LCAwKTsKIAogCWRvX2Fzc2VydGlvbnMoQVNTRVJUX05PX0FDVElPTl9DSEFOR0UpOwogfQpAQCAt MTY5NSw3ICsxNjk1LDcgQEAgc3RhdGljIHZvaWQgc2V0X3Nwcml0ZV9mb3JfdGVzdChjb25zdCBz dHJ1Y3QgdGVzdF9tb2RlICp0LAogCQkJICAgICBwYXJhbXMtPnNwcml0ZS53LCBwYXJhbXMtPnNw cml0ZS5oLAogCQkJICAgICAwLCAwLCBwYXJhbXMtPnNwcml0ZS53IDw8IDE2LAogCQkJICAgICBw YXJhbXMtPnNwcml0ZS5oIDw8IDE2KTsKLQlpZ3RfYXNzZXJ0KHJjID09IDApOworCWlndF9hc3Nl cnRfZXEocmMsIDApOwogCiAJZG9fYXNzZXJ0aW9ucyhBU1NFUlRfTk9fQUNUSU9OX0NIQU5HRSk7 CiB9CkBAIC0yMTcwLDcgKzIxNzAsNyBAQCBzdGF0aWMgdm9pZCB3YWl0X2ZsaXBfZXZlbnQodm9p ZCkKIAkJYnJlYWs7CiAJY2FzZSAxOgogCQlyYyA9IGRybUhhbmRsZUV2ZW50KGRybS5mZCwgJmV2 Y3R4KTsKLQkJaWd0X2Fzc2VydChyYyA9PSAwKTsKKwkJaWd0X2Fzc2VydF9lcShyYywgMCk7CiAJ CWJyZWFrOwogCWRlZmF1bHQ6CiAJCWlndF9hc3NlcnRfZihmYWxzZSwgIlVuZXhwZWN0ZWQgcG9s bCByYyAlZFxuIiwgcmMpOwpAQCAtMjE4NywxMyArMjE4NywxMyBAQCBzdGF0aWMgdm9pZCBwYWdl X2ZsaXBfZm9yX3BhcmFtcyhzdHJ1Y3QgbW9kZXNldF9wYXJhbXMgKnBhcmFtcywKIAljYXNlIEZM SVBfUEFHRUZMSVA6CiAJCXJjID0gZHJtTW9kZVBhZ2VGbGlwKGRybS5mZCwgcGFyYW1zLT5jcnRj X2lkLAogCQkJCSAgICAgcGFyYW1zLT5mYi5mYi0+ZmJfaWQsIDAsIE5VTEwpOwotCQlpZ3RfYXNz ZXJ0KHJjID09IDApOworCQlpZ3RfYXNzZXJ0X2VxKHJjLCAwKTsKIAkJYnJlYWs7CiAJY2FzZSBG TElQX1BBR0VGTElQX0VWRU5UOgogCQlyYyA9IGRybU1vZGVQYWdlRmxpcChkcm0uZmQsIHBhcmFt cy0+Y3J0Y19pZCwKIAkJCQkgICAgIHBhcmFtcy0+ZmIuZmItPmZiX2lkLAogCQkJCSAgICAgRFJN X01PREVfUEFHRV9GTElQX0VWRU5ULCBOVUxMKTsKLQkJaWd0X2Fzc2VydChyYyA9PSAwKTsKKwkJ aWd0X2Fzc2VydF9lcShyYywgMCk7CiAJCXdhaXRfZmxpcF9ldmVudCgpOwogCQlicmVhazsKIAlj YXNlIEZMSVBfTU9ERVNFVDoKQEAgLTIzNDksNyArMjM0OSw3IEBAIHN0YXRpYyB2b2lkIG1vdmVf c3VidGVzdChjb25zdCBzdHJ1Y3QgdGVzdF9tb2RlICp0KQogCQljYXNlIFBMQU5FX0NVUjoKIAkJ CXJjID0gZHJtTW9kZU1vdmVDdXJzb3IoZHJtLmZkLCBwYXJhbXMtPmNydGNfaWQsIHJlY3QueCwK IAkJCQkJICAgICAgIHJlY3QueSk7Ci0JCQlpZ3RfYXNzZXJ0KHJjID09IDApOworCQkJaWd0X2Fz c2VydF9lcShyYywgMCk7CiAJCQlicmVhazsKIAkJY2FzZSBQTEFORV9TUFI6CiAJCQlyYyA9IGRy bU1vZGVTZXRQbGFuZShkcm0uZmQsIHBhcmFtcy0+c3ByaXRlX2lkLApAQCAtMjM1OCw3ICsyMzU4 LDcgQEAgc3RhdGljIHZvaWQgbW92ZV9zdWJ0ZXN0KGNvbnN0IHN0cnVjdCB0ZXN0X21vZGUgKnQp CiAJCQkJCSAgICAgcmVjdC54LCByZWN0LnksIHJlY3QudywKIAkJCQkJICAgICByZWN0LmgsIDAs IDAsIHJlY3QudyA8PCAxNiwKIAkJCQkJICAgICByZWN0LmggPDwgMTYpOwotCQkJaWd0X2Fzc2Vy dChyYyA9PSAwKTsKKwkJCWlndF9hc3NlcnRfZXEocmMsIDApOwogCQkJYnJlYWs7CiAJCWRlZmF1 bHQ6CiAJCQlpZ3RfYXNzZXJ0KGZhbHNlKTsKQEAgLTI0MTAsMTMgKzI0MTAsMTMgQEAgc3RhdGlj IHZvaWQgb25vZmZfc3VidGVzdChjb25zdCBzdHJ1Y3QgdGVzdF9tb2RlICp0KQogCQkJY2FzZSBQ TEFORV9DVVI6CiAJCQkJcmMgPSBkcm1Nb2RlU2V0Q3Vyc29yKGRybS5mZCwgcGFyYW1zLT5jcnRj X2lkLAogCQkJCQkJICAgICAgMCwgMCwgMCk7Ci0JCQkJaWd0X2Fzc2VydChyYyA9PSAwKTsKKwkJ CQlpZ3RfYXNzZXJ0X2VxKHJjLCAwKTsKIAkJCQlicmVhazsKIAkJCWNhc2UgUExBTkVfU1BSOgog CQkJCXJjID0gZHJtTW9kZVNldFBsYW5lKGRybS5mZCwgcGFyYW1zLT5zcHJpdGVfaWQsCiAJCQkJ CQkgICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsCiAJCQkJCQkgICAgIDAsIDApOwotCQkJ CWlndF9hc3NlcnQocmMgPT0gMCk7CisJCQkJaWd0X2Fzc2VydF9lcShyYywgMCk7CiAJCQkJYnJl YWs7CiAJCQlkZWZhdWx0OgogCQkJCWlndF9hc3NlcnQoZmFsc2UpOwpAQCAtMjQzMCw3ICsyNDMw LDcgQEAgc3RhdGljIHZvaWQgb25vZmZfc3VidGVzdChjb25zdCBzdHJ1Y3QgdGVzdF9tb2RlICp0 KQogCQkJCQkJICBwYXJhbXMtPmN1cnNvci5mYi0+Z2VtX2hhbmRsZSwKIAkJCQkJCSAgcGFyYW1z LT5jdXJzb3IudywKIAkJCQkJCSAgcGFyYW1zLT5jdXJzb3IuaCk7Ci0JCQkJaWd0X2Fzc2VydChy YyA9PSAwKTsKKwkJCQlpZ3RfYXNzZXJ0X2VxKHJjLCAwKTsKIAkJCQlicmVhazsKIAkJCWNhc2Ug UExBTkVfU1BSOgogCQkJCXJjID0gZHJtTW9kZVNldFBsYW5lKGRybS5mZCwgcGFyYW1zLT5zcHJp dGVfaWQsCkBAIC0yNDQxLDcgKzI0NDEsNyBAQCBzdGF0aWMgdm9pZCBvbm9mZl9zdWJ0ZXN0KGNv bnN0IHN0cnVjdCB0ZXN0X21vZGUgKnQpCiAJCQkJCQkgICAgIDAsCiAJCQkJCQkgICAgIHBhcmFt cy0+c3ByaXRlLncgPDwgMTYsCiAJCQkJCQkgICAgIHBhcmFtcy0+c3ByaXRlLmggPDwgMTYpOwot CQkJCWlndF9hc3NlcnQocmMgPT0gMCk7CisJCQkJaWd0X2Fzc2VydF9lcShyYywgMCk7CiAJCQkJ YnJlYWs7CiAJCQlkZWZhdWx0OgogCQkJCWlndF9hc3NlcnQoZmFsc2UpOwpAQCAtMjQ3MSw3ICsy NDcxLDcgQEAgc3RhdGljIGJvb2wgcHJpbV9wbGFuZV9kaXNhYmxlZCh2b2lkKQogCWlndF9hc3Nl cnQoZm91bmQpOwogCiAJcmMgPSBkcm1TZXRDbGllbnRDYXAoZHJtLmZkLCBEUk1fQ0xJRU5UX0NB UF9VTklWRVJTQUxfUExBTkVTLCAwKTsKLQlpZ3RfYXNzZXJ0KHJjID09IDApOworCWlndF9hc3Nl cnRfZXEocmMsIDApOwogCiAJcmV0dXJuIGRpc2FibGVkOwogfQpAQCAtMjUxMyw3ICsyNTEzLDcg QEAgc3RhdGljIHZvaWQgZnVsbHNjcmVlbl9wbGFuZV9zdWJ0ZXN0KGNvbnN0IHN0cnVjdCB0ZXN0 X21vZGUgKnQpCiAJCQkgICAgIGZ1bGxzY3JlZW5fZmIuaGVpZ2h0LCAwLCAwLAogCQkJICAgICBm dWxsc2NyZWVuX2ZiLndpZHRoIDw8IDE2LAogCQkJICAgICBmdWxsc2NyZWVuX2ZiLmhlaWdodCA8 PCAxNik7Ci0JaWd0X2Fzc2VydChyYyA9PSAwKTsKKwlpZ3RfYXNzZXJ0X2VxKHJjLCAwKTsKIAl1 cGRhdGVfd2FudGVkX2NyYyh0LCAmcGF0dGVybi0+Y3Jjc1t0LT5mb3JtYXRdWzBdKTsKIAogCXN3 aXRjaCAodC0+c2NyZWVuKSB7CkBAIC0yNTMzLDcgKzI1MzMsNyBAQCBzdGF0aWMgdm9pZCBmdWxs c2NyZWVuX3BsYW5lX3N1YnRlc3QoY29uc3Qgc3RydWN0IHRlc3RfbW9kZSAqdCkKIAogCXJjID0g ZHJtTW9kZVNldFBsYW5lKGRybS5mZCwgcGFyYW1zLT5zcHJpdGVfaWQsIDAsIDAsIDAsIDAsIDAs IDAsIDAsIDAsCiAJCQkgICAgIDAsIDAsIDApOwotCWlndF9hc3NlcnQocmMgPT0gMCk7CisJaWd0 X2Fzc2VydF9lcShyYywgMCk7CiAKIAlpZiAodC0+c2NyZWVuID09IFNDUkVFTl9QUklNKQogCQlh c3NlcnRpb25zID0gQVNTRVJUX0xBU1RfQUNUSU9OX0NIQU5HRUQ7CkBAIC0yODE3LDE1ICsyODE3 LDE1IEBAIHN0YXRpYyB2b2lkIHRyeV9pbnZhbGlkX3N0cmlkZXModm9pZCkKIAogCS8qIFNtYWxs ZXIgdGhhbiA1MTIsIHlldCBzdGlsbCA2NC1ieXRlIGFsaWduZWQuICovCiAJcmMgPSBfX2dlbV9z ZXRfdGlsaW5nKGRybS5mZCwgZ2VtX2hhbmRsZSwgSTkxNV9USUxJTkdfWCwgNDQ4KTsKLQlpZ3Rf YXNzZXJ0KHJjID09IC1FSU5WQUwpOworCWlndF9hc3NlcnRfZXEocmMsIC1FSU5WQUwpOwogCiAJ LyogQmlnZ2VyIHRoYW4gNTEyLCBidXQgbm90IDY0LWJ5dGUgYWxpZ25lZC4gKi8KIAlyYyA9IF9f Z2VtX3NldF90aWxpbmcoZHJtLmZkLCBnZW1faGFuZGxlLCBJOTE1X1RJTElOR19YLCAxMDIyKTsK LQlpZ3RfYXNzZXJ0KHJjID09IC1FSU5WQUwpOworCWlndF9hc3NlcnRfZXEocmMsIC1FSU5WQUwp OwogCiAJLyogSnVzdCBtYWtlIHN1cmUgc29tZXRoaW5nIGFjdHVhbGx5IHdvcmtzLiAqLwogCXJj ID0gX19nZW1fc2V0X3RpbGluZyhkcm0uZmQsIGdlbV9oYW5kbGUsIEk5MTVfVElMSU5HX1gsIDEw MjQpOwotCWlndF9hc3NlcnQocmMgPT0gMCk7CisJaWd0X2Fzc2VydF9lcShyYywgMCk7CiAKIAln ZW1fY2xvc2UoZHJtLmZkLCBnZW1faGFuZGxlKTsKIH0KQEAgLTI5NTAsMTEgKzI5NTAsMTEgQEAg c3RhdGljIGludCBvcHRfaGFuZGxlcihpbnQgb3B0aW9uLCBpbnQgb3B0aW9uX2luZGV4LCB2b2lk ICpkYXRhKQogCQlpZ3RfYXNzZXJ0KGVycm5vID09IDApOwogCQlicmVhazsKIAljYXNlICcxJzoK LQkJaWd0X2Fzc2VydChvcHQub25seV9waXBlcyA9PSBQSVBFX0NPVU5UKTsKKwkJaWd0X2Fzc2Vy dF9lcShvcHQub25seV9waXBlcywgUElQRV9DT1VOVCk7CiAJCW9wdC5vbmx5X3BpcGVzID0gUElQ RV9TSU5HTEU7CiAJCWJyZWFrOwogCWNhc2UgJzInOgotCQlpZ3RfYXNzZXJ0KG9wdC5vbmx5X3Bp cGVzID09IFBJUEVfQ09VTlQpOworCQlpZ3RfYXNzZXJ0X2VxKG9wdC5vbmx5X3BpcGVzLCBQSVBF X0NPVU5UKTsKIAkJb3B0Lm9ubHlfcGlwZXMgPSBQSVBFX0RVQUw7CiAJCWJyZWFrOwogCWRlZmF1 bHQ6CmRpZmYgLS1naXQgYS90ZXN0cy9rbXNfcGFuZWxfZml0dGluZy5jIGIvdGVzdHMva21zX3Bh bmVsX2ZpdHRpbmcuYwppbmRleCA2YjQ0MjQxLi5mODcyNmUyIDEwMDY0NAotLS0gYS90ZXN0cy9r bXNfcGFuZWxfZml0dGluZy5jCisrKyBiL3Rlc3RzL2ttc19wYW5lbF9maXR0aW5nLmMKQEAgLTEy Miw3ICsxMjIsNyBAQCBzdGF0aWMgdm9pZCBwcmVwYXJlX2NydGMoZGF0YV90ICpkYXRhLCBpZ3Rf b3V0cHV0X3QgKm91dHB1dCwgZW51bSBwaXBlIHBpcGUsCiAJCQkJJm91dHB1dC0+aWQsCiAJCQkJ MSwKIAkJCQltb2RlKTsKLQkJaWd0X2Fzc2VydChyZXQgPT0gMCk7CisJCWlndF9hc3NlcnRfZXEo cmV0LCAwKTsKIAl9IGVsc2UgewogCQlpZ3RfZGlzcGxheV9jb21taXQyKGRpc3BsYXksIHMpOwog CX0KZGlmZiAtLWdpdCBhL3Rlc3RzL2ttc19waXBlX2JfY19pdmIuYyBiL3Rlc3RzL2ttc19waXBl X2JfY19pdmIuYwppbmRleCA5ZDY2YmRhLi5iZDcyN2YwIDEwMDY0NAotLS0gYS90ZXN0cy9rbXNf cGlwZV9iX2NfaXZiLmMKKysrIGIvdGVzdHMva21zX3BpcGVfYl9jX2l2Yi5jCkBAIC05NCw3ICs5 NCw3IEBAIHNldF9tb2RlX29uX3BpcGUoZGF0YV90ICpkYXRhLCBlbnVtIHBpcGUgcGlwZSwgaWd0 X291dHB1dF90ICpvdXRwdXQpCiAJCQkJICAgIG1vZGUtPmhkaXNwbGF5LCBtb2RlLT52ZGlzcGxh eSwKIAkJCQkgICAgRFJNX0ZPUk1BVF9YUkdCODg4OCwgSTkxNV9USUxJTkdfTk9ORSwKIAkJCQkg ICAgMS4wLCAxLjAsIDEuMCwgJmZiKTsKLQlpZ3RfYXNzZXJ0KGZiX2lkID49IDApOworCWlndF9h c3NlcnRfbHRlKDAsIGZiX2lkKTsKIAogCWlndF9wbGFuZV9zZXRfZmIocHJpbWFyeSwgJmZiKTsK IAlyZXR1cm4gaWd0X2Rpc3BsYXlfdHJ5X2NvbW1pdDIoJmRhdGEtPmRpc3BsYXksIENPTU1JVF9M RUdBQ1kpOwpAQCAtMTUwLDEyICsxNTAsMTIgQEAgdGVzdF9kcG1zKGRhdGFfdCAqZGF0YSkKIAkJ IGttc3Rlc3RfcGlwZV9uYW1lKFBJUEVfQyksIGlndF9vdXRwdXRfbmFtZShvdXRwdXQyKSk7CiAK IAlyZXQgPSBzZXRfYmlnX21vZGVfb25fcGlwZShkYXRhLCBQSVBFX0IsIG91dHB1dDEpOwotCWln dF9hc3NlcnQocmV0ID09IDApOworCWlndF9hc3NlcnRfZXEocmV0LCAwKTsKIAogCWttc3Rlc3Rf c2V0X2Nvbm5lY3Rvcl9kcG1zKGRhdGEtPmRybV9mZCwgb3V0cHV0MS0+Y29uZmlnLmNvbm5lY3Rv ciwgRFJNX01PREVfRFBNU19PRkYpOwogCiAJcmV0ID0gc2V0X2JpZ19tb2RlX29uX3BpcGUoZGF0 YSwgUElQRV9DLCBvdXRwdXQyKTsKLQlpZ3RfYXNzZXJ0KHJldCAhPSAwKTsKKwlpZ3RfYXNzZXJ0 X25lcShyZXQsIDApOwogfQogCiBzdGF0aWMgdm9pZApAQCAtMTcyLDEzICsxNzIsMTMgQEAgdGVz dF9sYW5lX3JlZHVjdGlvbihkYXRhX3QgKmRhdGEpCiAJCSBrbXN0ZXN0X3BpcGVfbmFtZShQSVBF X0MpLCBpZ3Rfb3V0cHV0X25hbWUob3V0cHV0MikpOwogCiAJcmV0ID0gc2V0X2JpZ19tb2RlX29u X3BpcGUoZGF0YSwgUElQRV9CLCBvdXRwdXQxKTsKLQlpZ3RfYXNzZXJ0KHJldCA9PSAwKTsKKwlp Z3RfYXNzZXJ0X2VxKHJldCwgMCk7CiAKIAlyZXQgPSBzZXRfbm9ybWFsX21vZGVfb25fcGlwZShk YXRhLCBQSVBFX0IsIG91dHB1dDEpOwotCWlndF9hc3NlcnQocmV0ID09IDApOworCWlndF9hc3Nl cnRfZXEocmV0LCAwKTsKIAogCXJldCA9IHNldF9ub3JtYWxfbW9kZV9vbl9waXBlKGRhdGEsIFBJ UEVfQywgb3V0cHV0Mik7Ci0JaWd0X2Fzc2VydChyZXQgPT0gMCk7CisJaWd0X2Fzc2VydF9lcShy ZXQsIDApOwogfQogCiBzdGF0aWMgdm9pZApAQCAtMTk1LDE2ICsxOTUsMTYgQEAgdGVzdF9kaXNh YmxlX3BpcGVfQihkYXRhX3QgKmRhdGEpCiAJCSBrbXN0ZXN0X3BpcGVfbmFtZShQSVBFX0MpLCBp Z3Rfb3V0cHV0X25hbWUob3V0cHV0MikpOwogCiAJcmV0ID0gc2V0X2JpZ19tb2RlX29uX3BpcGUo ZGF0YSwgUElQRV9CLCBvdXRwdXQxKTsKLQlpZ3RfYXNzZXJ0KHJldCA9PSAwKTsKKwlpZ3RfYXNz ZXJ0X2VxKHJldCwgMCk7CiAKIAlyZXQgPSBkaXNhYmxlX3BpcGUoZGF0YSwgUElQRV9CLCBvdXRw dXQxKTsKLQlpZ3RfYXNzZXJ0KHJldCA9PSAwKTsKKwlpZ3RfYXNzZXJ0X2VxKHJldCwgMCk7CiAK IAlyZXQgPSBzZXRfbm9ybWFsX21vZGVfb25fcGlwZShkYXRhLCBQSVBFX0MsIG91dHB1dDIpOwot CWlndF9hc3NlcnQocmV0ID09IDApOworCWlndF9hc3NlcnRfZXEocmV0LCAwKTsKIAogCXJldCA9 IHNldF9ub3JtYWxfbW9kZV9vbl9waXBlKGRhdGEsIFBJUEVfQiwgb3V0cHV0MSk7Ci0JaWd0X2Fz c2VydChyZXQgPT0gMCk7CisJaWd0X2Fzc2VydF9lcShyZXQsIDApOwogfQogCiBzdGF0aWMgdm9p ZApAQCAtMjIxLDEzICsyMjEsMTMgQEAgdGVzdF9mcm9tX0NfdG9fQl93aXRoXzNfbGFuZXMoZGF0 YV90ICpkYXRhKQogCQkga21zdGVzdF9waXBlX25hbWUoUElQRV9DKSwgaWd0X291dHB1dF9uYW1l KG91dHB1dDIpKTsKIAogCXJldCA9IHNldF9ub3JtYWxfbW9kZV9vbl9waXBlKGRhdGEsIFBJUEVf Qywgb3V0cHV0Mik7Ci0JaWd0X2Fzc2VydChyZXQgPT0gMCk7CisJaWd0X2Fzc2VydF9lcShyZXQs IDApOwogCiAJcmV0ID0gZGlzYWJsZV9waXBlKGRhdGEsIFBJUEVfQywgb3V0cHV0Mik7Ci0JaWd0 X2Fzc2VydChyZXQgPT0gMCk7CisJaWd0X2Fzc2VydF9lcShyZXQsIDApOwogCiAJcmV0ID0gc2V0 X2JpZ19tb2RlX29uX3BpcGUoZGF0YSwgUElQRV9CLCBvdXRwdXQxKTsKLQlpZ3RfYXNzZXJ0KHJl dCA9PSAwKTsKKwlpZ3RfYXNzZXJ0X2VxKHJldCwgMCk7CiB9CiAKIHN0YXRpYyB2b2lkCkBAIC0y NDQsMTAgKzI0NCwxMCBAQCB0ZXN0X2ZhaWxfZW5hYmxlX3BpcGVfQ193aGlsZV9CX2hhc18zX2xh bmVzKGRhdGFfdCAqZGF0YSkKIAkJIGttc3Rlc3RfcGlwZV9uYW1lKFBJUEVfQyksIGlndF9vdXRw dXRfbmFtZShvdXRwdXQyKSk7CiAKIAlyZXQgPSBzZXRfYmlnX21vZGVfb25fcGlwZShkYXRhLCBQ SVBFX0IsIG91dHB1dDEpOwotCWlndF9hc3NlcnQocmV0ID09IDApOworCWlndF9hc3NlcnRfZXEo cmV0LCAwKTsKIAogCXJldCA9IHNldF9ub3JtYWxfbW9kZV9vbl9waXBlKGRhdGEsIFBJUEVfQywg b3V0cHV0Mik7Ci0JaWd0X2Fzc2VydChyZXQgIT0gMCk7CisJaWd0X2Fzc2VydF9uZXEocmV0LCAw KTsKIH0KIAogc3RhdGljIGRhdGFfdCBkYXRhOwpkaWZmIC0tZ2l0IGEvdGVzdHMva21zX3BsYW5l X3NjYWxpbmcuYyBiL3Rlc3RzL2ttc19wbGFuZV9zY2FsaW5nLmMKaW5kZXggMjJlMDM4OC4uNzRi YzZmOCAxMDA2NDQKLS0tIGEvdGVzdHMva21zX3BsYW5lX3NjYWxpbmcuYworKysgYi90ZXN0cy9r bXNfcGxhbmVfc2NhbGluZy5jCkBAIC0xMjQsNyArMTI0LDcgQEAgc3RhdGljIHZvaWQgcHJlcGFy ZV9jcnRjKGRhdGFfdCAqZGF0YSwgaWd0X291dHB1dF90ICpvdXRwdXQsIGVudW0gcGlwZSBwaXBl LAogCQkJCSZvdXRwdXQtPmlkLAogCQkJCTEsCiAJCQkJbW9kZSk7Ci0JCWlndF9hc3NlcnQocmV0 ID09IDApOworCQlpZ3RfYXNzZXJ0X2VxKHJldCwgMCk7CiAJfSBlbHNlIHsKIAkJaWd0X2Rpc3Bs YXlfY29tbWl0MihkaXNwbGF5LCBzKTsKIAl9CmRpZmYgLS1naXQgYS90ZXN0cy9rbXNfcm90YXRp b25fY3JjLmMgYi90ZXN0cy9rbXNfcm90YXRpb25fY3JjLmMKaW5kZXggNGZiMDBhYi4uZTcxMjZh ZCAxMDA2NDQKLS0tIGEvdGVzdHMva21zX3JvdGF0aW9uX2NyYy5jCisrKyBiL3Rlc3RzL2ttc19y b3RhdGlvbl9jcmMuYwpAQCAtMjY4LDkgKzI2OCw5IEBAIHN0YXRpYyB2b2lkIHRlc3RfcGxhbmVf cm90YXRpb24oZGF0YV90ICpkYXRhLCBlbnVtIGlndF9wbGFuZSBwbGFuZV90eXBlKQogCQkJaWd0 X3BsYW5lX3NldF9yb3RhdGlvbihwbGFuZSwgZGF0YS0+cm90YXRpb24pOwogCQkJcmV0ID0gaWd0 X2Rpc3BsYXlfdHJ5X2NvbW1pdDIoZGlzcGxheSwgY29tbWl0KTsKIAkJCWlmIChkYXRhLT5vdmVy cmlkZV9mbXQgfHwgZGF0YS0+b3ZlcnJpZGVfdGlsaW5nKSB7Ci0JCQkJaWd0X2Fzc2VydChyZXQg PT0gLUVJTlZBTCk7CisJCQkJaWd0X2Fzc2VydF9lcShyZXQsIC1FSU5WQUwpOwogCQkJfSBlbHNl IHsKLQkJCQlpZ3RfYXNzZXJ0KHJldCA9PSAwKTsKKwkJCQlpZ3RfYXNzZXJ0X2VxKHJldCwgMCk7 CiAJCQkJaWd0X3BpcGVfY3JjX2NvbGxlY3RfY3JjKGRhdGEtPnBpcGVfY3JjLAogCQkJCQkJCSAm Y3JjX291dHB1dCk7CiAJCQkJaWd0X2Fzc2VydF9jcmNfZXF1YWwoJmRhdGEtPnJlZl9jcmMsCmRp ZmYgLS1naXQgYS90ZXN0cy9wbV9iYWNrbGlnaHQuYyBiL3Rlc3RzL3BtX2JhY2tsaWdodC5jCmlu ZGV4IGJjMWQ0MTcuLmQyNGZiMTAgMTAwNjQ0Ci0tLSBhL3Rlc3RzL3BtX2JhY2tsaWdodC5jCisr KyBiL3Rlc3RzL3BtX2JhY2tsaWdodC5jCkBAIC05NSwxMiArOTUsMTIgQEAgc3RhdGljIHZvaWQg dGVzdF9hbmRfdmVyaWZ5KGludCB2YWwpCiB7CiAJaW50IHJlc3VsdDsKIAotCWlndF9hc3NlcnQo YmFja2xpZ2h0X3dyaXRlKHZhbCwgImJyaWdodG5lc3MiKSA9PSAwKTsKLQlpZ3RfYXNzZXJ0KGJh Y2tsaWdodF9yZWFkKCZyZXN1bHQsICJicmlnaHRuZXNzIikgPT0gMCk7CisJaWd0X2Fzc2VydF9l cShiYWNrbGlnaHRfd3JpdGUodmFsLCAiYnJpZ2h0bmVzcyIpLCAwKTsKKwlpZ3RfYXNzZXJ0X2Vx KGJhY2tsaWdodF9yZWFkKCZyZXN1bHQsICJicmlnaHRuZXNzIiksIDApOwogCS8qIENoZWNrIHRo YXQgdGhlIGV4YWN0IHZhbHVlIHN0aWNrcyAqLwotCWlndF9hc3NlcnQocmVzdWx0ID09IHZhbCk7 CisJaWd0X2Fzc2VydF9lcShyZXN1bHQsIHZhbCk7CiAKLQlpZ3RfYXNzZXJ0KGJhY2tsaWdodF9y ZWFkKCZyZXN1bHQsICJhY3R1YWxfYnJpZ2h0bmVzcyIpID09IDApOworCWlndF9hc3NlcnRfZXEo YmFja2xpZ2h0X3JlYWQoJnJlc3VsdCwgImFjdHVhbF9icmlnaHRuZXNzIiksIDApOwogCS8qIFNv bWUgcm91bmRpbmcgbWF5IGhhcHBlbiBkZXBlbmRpbmcgb24gaHcuIEp1c3QgY2hlY2sgdGhhdCBp dCdzIGNsb3NlIGVub3VnaC4gKi8KIAlpZ3RfYXNzZXJ0KHJlc3VsdCA8PSB2YWwgKyB2YWwgKiBU T0xFUkFOQ0UgLyAxMDAgJiYgcmVzdWx0ID49IHZhbCAtIHZhbCAqIFRPTEVSQU5DRSAvIDEwMCk7 CiB9CkBAIC0xMTgsMTUgKzExOCwxNSBAQCBzdGF0aWMgdm9pZCB0ZXN0X2JhZF9icmlnaHRuZXNz KGludCBtYXgpCiAJLyogRmlyc3Qgd3JpdGUgc29tZSBzYW5lIHZhbHVlICovCiAJYmFja2xpZ2h0 X3dyaXRlKG1heCAvIDIsICJicmlnaHRuZXNzIik7CiAJLyogV3JpdGluZyBpbnZhbGlkIHZhbHVl cyBzaG91bGQgZmFpbCBhbmQgbm90IGNoYW5nZSB0aGUgdmFsdWUgKi8KLQlpZ3RfYXNzZXJ0KGJh Y2tsaWdodF93cml0ZSgtMSwgImJyaWdodG5lc3MiKSA8IDApOworCWlndF9hc3NlcnRfbHQoYmFj a2xpZ2h0X3dyaXRlKC0xLCAiYnJpZ2h0bmVzcyIpLCAwKTsKIAliYWNrbGlnaHRfcmVhZCgmdmFs LCAiYnJpZ2h0bmVzcyIpOwotCWlndF9hc3NlcnQodmFsID09IG1heCAvIDIpOwotCWlndF9hc3Nl cnQoYmFja2xpZ2h0X3dyaXRlKG1heCArIDEsICJicmlnaHRuZXNzIikgPCAwKTsKKwlpZ3RfYXNz ZXJ0X2VxKHZhbCwgbWF4IC8gMik7CisJaWd0X2Fzc2VydF9sdChiYWNrbGlnaHRfd3JpdGUobWF4 ICsgMSwgImJyaWdodG5lc3MiKSwgMCk7CiAJYmFja2xpZ2h0X3JlYWQoJnZhbCwgImJyaWdodG5l c3MiKTsKLQlpZ3RfYXNzZXJ0KHZhbCA9PSBtYXggLyAyKTsKLQlpZ3RfYXNzZXJ0KGJhY2tsaWdo dF93cml0ZShJTlRfTUFYLCAiYnJpZ2h0bmVzcyIpIDwgMCk7CisJaWd0X2Fzc2VydF9lcSh2YWws IG1heCAvIDIpOworCWlndF9hc3NlcnRfbHQoYmFja2xpZ2h0X3dyaXRlKElOVF9NQVgsICJicmln aHRuZXNzIiksIDApOwogCWJhY2tsaWdodF9yZWFkKCZ2YWwsICJicmlnaHRuZXNzIik7Ci0JaWd0 X2Fzc2VydCh2YWwgPT0gbWF4IC8gMik7CisJaWd0X2Fzc2VydF9lcSh2YWwsIG1heCAvIDIpOwog fQogCiBzdGF0aWMgdm9pZCB0ZXN0X2ZhZGUoaW50IG1heCkKLS0gCjIuNS4wCgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBs aXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=