Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1s2V6g-003WpQ-B0 for pgsql-hackers@arkaria.postgresql.org; Thu, 02 May 2024 12:00:10 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1s2V6c-0002xS-RM for pgsql-hackers@arkaria.postgresql.org; Thu, 02 May 2024 12:00:07 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1s2V6c-0002xK-Ec for pgsql-hackers@lists.postgresql.org; Thu, 02 May 2024 12:00:07 +0000 Received: from mail-lj1-x234.google.com ([2a00:1450:4864:20::234]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1s2V6Z-001ANb-WA for pgsql-hackers@lists.postgresql.org; Thu, 02 May 2024 12:00:06 +0000 Received: by mail-lj1-x234.google.com with SMTP id 38308e7fff4ca-2dd6c14d000so96650031fa.0 for ; Thu, 02 May 2024 05:00:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1714651203; x=1715256003; darn=lists.postgresql.org; h=in-reply-to:from:references:cc:to:content-language:subject :user-agent:mime-version:date:message-id:from:to:cc:subject:date :message-id:reply-to; bh=4QpR9cFSJmZ1nA6wf9DdF3nTjEc0sUL3Qam+frZdrW4=; b=Mj9OZS2Fl453nNr7Hd6pE14jssk9qqipLKvYaLnawg4qIBMJqM5RZqw5zANKdmxogT cQyS50ocz0q/dq0taTf7EnRUDRbI++OOaFTA//21KMAxdzlbuNDKj0o5qKcN479386CG YIjpCw/dW8opYoNAx4AESoDp6TGsUjTXyjnjIHu+teOLSGNAwL1KRXRO2ibvM1xQbhEU x8cAGellejRc9bxUpAlRsgTEdjk3ys9qD4opQiTVsaUgjyFEfmYxJcS5hyGSaImGAtds qqJ9f+EfJwCqDuOzUbwGRtKollfr2kdTubjwJlt19BpeBCbz7tD7TiJyVHp4bQhBdwh6 /4Hw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1714651203; x=1715256003; h=in-reply-to:from:references:cc:to:content-language:subject :user-agent:mime-version:date:message-id:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=4QpR9cFSJmZ1nA6wf9DdF3nTjEc0sUL3Qam+frZdrW4=; b=wzxYmW9lAzNK9JQ3OHFrk+21wrLyLu7V21YZVvvjvGIkvqNEETel+IwdbEfYoLOj5W RnXX1HPX6YgR2NMoAqB5pNSKpnS1F/NORI/iI7A4sXy0bsndjE3mEsCYRV9B1Hj0K6k1 E3Q1kdHLN4bfL9xyHwn72pHXNNBWM57iaWFwNHgapO9fTnCm1pbun4w5s5Bd+bwruWDS VfLp9CgEnnB8A/V8tM1MXPgPE8Rs/4Sed0iBO8viDJibQMYs3cDtcKlUXC1AG8mMQ+Un 8mcZWmw2Kk9O1jLZJqdv7K+xuK62R7KNa1GTSMEwZRPzrB3J49V019uy2yR6ODPQiopY 5goQ== X-Forwarded-Encrypted: i=1; AJvYcCXx8XkfjUJih/+4xSScKGi0Y3IeEX7m8WR6Ys1d9w68oUCRJKtLSU0zEKWWkGn+fnUBKcTa7TIfFDqSwx8KpWyylSkDIVNkcTpDBfsZlMX+Evzz X-Gm-Message-State: AOJu0YyhU3ZGME+tE1W52xj37T+wQtb80VzTukSuKqecbwfScq0ZHmqE reZlx6lzDjSU9wC4D5iypctKrWA8V8ZJgdLyO0z3f51DifcN+y7T X-Google-Smtp-Source: AGHT+IGynHl3Q1JBlf4uvNVv0b4fvQ2QN+y8y1EPEcwapLUQtoreRMrsdHiF2ST78j3FnCD5aDz1HA== X-Received: by 2002:a2e:b553:0:b0:2e0:ffea:4298 with SMTP id a19-20020a2eb553000000b002e0ffea4298mr1176849ljn.34.1714651202558; Thu, 02 May 2024 05:00:02 -0700 (PDT) Received: from [1.0.0.7] ([178.155.23.194]) by smtp.gmail.com with ESMTPSA id q16-20020a2e9150000000b002e0ecdd9e8csm157878ljg.61.2024.05.02.05.00.01 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 02 May 2024 05:00:01 -0700 (PDT) Content-Type: multipart/mixed; boundary="------------BWiPlslFr7MUc67h0w3ne4sz" Message-ID: Date: Thu, 2 May 2024 15:00:00 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2 Subject: Re: Typos in the code and README Content-Language: en-US To: David Rowley , Daniel Gustafsson Cc: Nazir Bilal Yavuz , Heikki Linnakangas , PostgreSQL Developers References: <3F577953-A29E-4722-98AD-2DA9EFF2CBB8@yesql.se> <3E020742-206E-4052-83AF-8721190A10E0@yesql.se> <39A535AF-154F-4FFD-B887-3C4EDC362DA4@yesql.se> From: Alexander Lakhin In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------BWiPlslFr7MUc67h0w3ne4sz Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hello, 28.04.2024 11:05, David Rowley wrote: > On Sat, 20 Apr 2024 at 16:09, David Rowley wrote: >> Here are a few more to see if it motivates anyone else to do a more >> thorough search for another batch. > I've pushed these now. Please look also at the list of other typos and inconsistencies I've found on the master branch: additional_notnulls -> old_notnulls (cf. b0e96f311) ATAddCheckConstraint ->? ATAddCheckNNConstraint (cf. b0e96f311) bt_page_check -> bt_target_page_check (cf. 5ae208720) calblack_arg -> callback_arg combinig -> combining compaining -> complaining ctllock - remove (cf. 53c2a97a9) dabatase -> database eval_const_exprs_mutator -> eval_const_expressions_mutator ExecEndValuesScan - remove (cf. d060e921e) get_json_nested_columns -> get_json_table_nested_columns io_direct -> debug_io_direct iS ->? IS (a neatnik-ism) joing ->? join (cf. 20f90a0e4) _jumbleRangeTblEntry - remove (cf. 367c989cd) Mallroy -> Mallory onstead -> instead procedual -> procedural psql_safe -> safe_psql read_quoted_pattern -> read_quoted_string repertiore -> repertoire rightfirstdataoffset ->? rightfirstoffset (cf. 5ae208720) Sincle ->? Since (perhaps the whole sentence could be rephrased) sslnegotition=direct/requiredirectwould -> sslnegotiation=direct/requiredirect would sslnegotitation -> sslnegotiation walreciever -> walreceiver xid_wrapround -> xid_wraparound (some of them are located in doc/, so it's not a code-only change) I've attached the patch for your convenience, though maybe some of the suggestions are to be discarded. Best regards, Alexander --------------BWiPlslFr7MUc67h0w3ne4sz Content-Type: text/x-patch; charset=UTF-8; name="fix-v17-typos.patch" Content-Disposition: attachment; filename="fix-v17-typos.patch" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2NvbnRyaWIvYW1jaGVjay92ZXJpZnlfbmJ0cmVlLmMgYi9jb250cmli L2FtY2hlY2svdmVyaWZ5X25idHJlZS5jCmluZGV4IDIwZGE0YTQ2YmEuLjcwZjY1YjY0NWEg MTAwNjQ0Ci0tLSBhL2NvbnRyaWIvYW1jaGVjay92ZXJpZnlfbmJ0cmVlLmMKKysrIGIvY29u dHJpYi9hbWNoZWNrL3ZlcmlmeV9uYnRyZWUuYwpAQCAtMTA4Niw3ICsxMDg2LDcgQEAgYnRf ZW50cnlfdW5pcXVlX2NoZWNrKEJ0cmVlQ2hlY2tTdGF0ZSAqc3RhdGUsIEluZGV4VHVwbGUg aXR1cCwKIAogCS8qCiAJICogQ3VycmVudCB0dXBsZSBoYXMgbm8gcG9zdGluZyBsaXN0LiBJ ZiBUSUQgaXMgdmlzaWJsZSBzYXZlIGluZm8gYWJvdXQgaXQKLQkgKiBmb3IgdGhlIG5leHQg Y29tcGFyaXNvbnMgaW4gdGhlIGxvb3AgaW4gYnRfcGFnZV9jaGVjaygpLiBSZXBvcnQKKwkg KiBmb3IgdGhlIG5leHQgY29tcGFyaXNvbnMgaW4gdGhlIGxvb3AgaW4gYnRfdGFyZ2V0X3Bh Z2VfY2hlY2soKS4gUmVwb3J0CiAJICogZHVwbGljYXRlIGlmIGxWaXNfdGlkIGlzIGFscmVh ZHkgdmFsaWQuCiAJICovCiAJZWxzZQpAQCAtMTk1Myw3ICsxOTUzLDcgQEAgYnRfdGFyZ2V0 X3BhZ2VfY2hlY2soQnRyZWVDaGVja1N0YXRlICpzdGF0ZSkKICAqIE5vdGUgdGhhdCAhcmVh ZG9ubHkgY2FsbGVycyBtdXN0IHJldmVyaWZ5IHRoYXQgdGFyZ2V0IHBhZ2UgaGFzIG5vdAog ICogYmVlbiBjb25jdXJyZW50bHkgZGVsZXRlZC4KICAqCi0gKiBTYXZlIHJpZ2h0Zmlyc3Rk YXRhb2Zmc2V0IGZvciBkZXRhaWxlZCBlcnJvciBtZXNzYWdlLgorICogU2F2ZSByaWdodGZp cnN0b2Zmc2V0IGZvciBkZXRhaWxlZCBlcnJvciBtZXNzYWdlLgogICovCiBzdGF0aWMgQlRT Y2FuSW5zZXJ0CiBidF9yaWdodF9wYWdlX2NoZWNrX3NjYW5rZXkoQnRyZWVDaGVja1N0YXRl ICpzdGF0ZSwgT2Zmc2V0TnVtYmVyICpyaWdodGZpcnN0b2Zmc2V0KQpkaWZmIC0tZ2l0IGEv ZG9jL3NyYy9zZ21sL3JlZ3Jlc3Muc2dtbCBiL2RvYy9zcmMvc2dtbC9yZWdyZXNzLnNnbWwK aW5kZXggZDdlNzgyMDRhZC4uZjRiMDAzOTllNCAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21s L3JlZ3Jlc3Muc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvcmVncmVzcy5zZ21sCkBAIC0zMzEs NyArMzMxLDcgQEAgbWFrZSBjaGVjay13b3JsZCBQR19URVNUX0VYVFJBPSdrZXJiZXJvcyBs ZGFwIHNzbCBsb2FkX2JhbGFuY2UgbGlicHFfZW5jcnlwdGlvbicKICAgICAgPHRlcm0+PGxp dGVyYWw+eGlkX3dyYXBhcm91bmQ8L2xpdGVyYWw+PC90ZXJtPgogICAgICA8bGlzdGl0ZW0+ CiAgICAgICA8cGFyYT4KLSAgICAgICBSdW5zIHRoZSB0ZXN0IHN1aXRlIHVuZGVyIDxmaWxl bmFtZT5zcmMvdGVzdC9tb2R1bGUveGlkX3dyYXByb3VuZDwvZmlsZW5hbWU+LgorICAgICAg IFJ1bnMgdGhlIHRlc3Qgc3VpdGUgdW5kZXIgPGZpbGVuYW1lPnNyYy90ZXN0L21vZHVsZS94 aWRfd3JhcGFyb3VuZDwvZmlsZW5hbWU+LgogICAgICAgIE5vdCBlbmFibGVkIGJ5IGRlZmF1 bHQgYmVjYXVzZSBpdCBpcyByZXNvdXJjZSBpbnRlbnNpdmUuCiAgICAgICA8L3BhcmE+CiAg ICAgIDwvbGlzdGl0ZW0+CmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvdGFyZ2V0cy1tZXNv bi50eHQgYi9kb2Mvc3JjL3NnbWwvdGFyZ2V0cy1tZXNvbi50eHQKaW5kZXggMWM0MmRkMzAy OC4uYmQ0NzBjODdhNyAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3RhcmdldHMtbWVzb24u dHh0CisrKyBiL2RvYy9zcmMvc2dtbC90YXJnZXRzLW1lc29uLnR4dApAQCAtMTEsNyArMTEs NyBAQCBDb2RlIFRhcmdldHM6CiAgIGJhY2tlbmQgICAgICAgICAgICAgICAgICAgICAgIEJ1 aWxkIGJhY2tlbmQgYW5kIHJlbGF0ZWQgbW9kdWxlcwogICBiaW4gICAgICAgICAgICAgICAg ICAgICAgICAgICBCdWlsZCBmcm9udGVuZCBiaW5hcmllcwogICBjb250cmliICAgICAgICAg ICAgICAgICAgICAgICBCdWlsZCBjb250cmliIG1vZHVsZXMKLSAgcGwgICAgICAgICAgICAg ICAgICAgICAgICAgICAgQnVpbGQgcHJvY2VkdWFsIGxhbmd1YWdlcworICBwbCAgICAgICAg ICAgICAgICAgICAgICAgICAgICBCdWlsZCBwcm9jZWR1cmFsIGxhbmd1YWdlcwogCiBEZXZl bG9wZXIgVGFyZ2V0czoKICAgcmVmb3JtYXQtZGF0LWZpbGVzICAgICAgICAgICAgUmV3cml0 ZSBjYXRhbG9nIGRhdGEgZmlsZXMgaW50byBzdGFuZGFyZCBmb3JtYXQKZGlmZiAtLWdpdCBh L3NyYy9iYWNrZW5kL2FjY2Vzcy9icmluL2JyaW4uYyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy9i cmluL2JyaW4uYwppbmRleCBiZjI4NDAwZGQ4Li5kMGYzODQ4Yzk1IDEwMDY0NAotLS0gYS9z cmMvYmFja2VuZC9hY2Nlc3MvYnJpbi9icmluLmMKKysrIGIvc3JjL2JhY2tlbmQvYWNjZXNz L2JyaW4vYnJpbi5jCkBAIC0yNTk4LDcgKzI1OTgsNyBAQCBfYnJpbl9wYXJhbGxlbF9oZWFw c2NhbihCcmluQnVpbGRTdGF0ZSAqc3RhdGUpCiAgKgogICogQWZ0ZXIgd2FpdGluZyBmb3Ig YWxsIHdvcmtlcnMgdG8gZmluaXNoLCBtZXJnZSB0aGUgcGVyLXdvcmtlciByZXN1bHRzIGlu dG8KICAqIHRoZSBjb21wbGV0ZSBpbmRleC4gVGhlIHJlc3VsdHMgZnJvbSBlYWNoIHdvcmtl ciBhcmUgc29ydGVkIGJ5IGJsb2NrIG51bWJlcgotICogKHN0YXJ0IG9mIHRoZSBwYWdlIHJh bmdlKS4gV2hpbGUgY29tYmluaWcgdGhlIHBlci13b3JrZXIgcmVzdWx0cyB3ZSBtZXJnZQor ICogKHN0YXJ0IG9mIHRoZSBwYWdlIHJhbmdlKS4gV2hpbGUgY29tYmluaW5nIHRoZSBwZXIt d29ya2VyIHJlc3VsdHMgd2UgbWVyZ2UKICAqIHN1bW1hcmllcyBmb3IgdGhlIHNhbWUgcGFn ZSByYW5nZSwgYW5kIGFsc28gZmlsbC1pbiBlbXB0eSBzdW1tYXJpZXMgZm9yCiAgKiByYW5n ZXMgd2l0aG91dCBhbnkgdHVwbGVzLgogICoKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2Fj Y2Vzcy90cmFuc2FtL3NscnUuYyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3NscnUu YwppbmRleCBmOTllYzM4YTRhLi43N2IwNWNjMGE3IDEwMDY0NAotLS0gYS9zcmMvYmFja2Vu ZC9hY2Nlc3MvdHJhbnNhbS9zbHJ1LmMKKysrIGIvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5z YW0vc2xydS5jCkBAIC0yMjgsNyArMjI4LDYgQEAgU2ltcGxlTHJ1QXV0b3R1bmVCdWZmZXJz KGludCBkaXZpc29yLCBpbnQgbWF4KQogICogbmFtZTogbmFtZSBvZiBTTFJVLiAgKFRoaXMg aXMgdXNlci12aXNpYmxlLCBwaWNrIHdpdGggY2FyZSEpCiAgKiBuc2xvdHM6IG51bWJlciBv ZiBwYWdlIHNsb3RzIHRvIHVzZS4KICAqIG5sc25zOiBudW1iZXIgb2YgTFNOIGdyb3VwcyBw ZXIgcGFnZSAoc2V0IHRvIHplcm8gaWYgbm90IHJlbGV2YW50KS4KLSAqIGN0bGxvY2s6IExX TG9jayB0byB1c2UgdG8gY29udHJvbCBhY2Nlc3MgdG8gdGhlIHNoYXJlZCBjb250cm9sIHN0 cnVjdHVyZS4KICAqIHN1YmRpcjogUEdEQVRBLXJlbGF0aXZlIHN1YmRpcmVjdG9yeSB0aGF0 IHdpbGwgY29udGFpbiB0aGUgZmlsZXMuCiAgKiBidWZmZXJfdHJhbmNoZV9pZDogdHJhbmNo ZSBJRCB0byB1c2UgZm9yIHRoZSBTTFJVJ3MgcGVyLWJ1ZmZlciBMV0xvY2tzLgogICogYmFu a190cmFuY2hlX2lkOiB0cmFuY2hlIElEIHRvIHVzZSBmb3IgdGhlIGJhbmsgTFdMb2Nrcy4K ZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3hsb2cuYyBiL3NyYy9i YWNrZW5kL2FjY2Vzcy90cmFuc2FtL3hsb2cuYwppbmRleCAzNGEyYzcxODEyLi5jM2ZkOWMx ZWFlIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94bG9nLmMKKysr IGIvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0veGxvZy5jCkBAIC04NTA3LDcgKzg1MDcs NyBAQCB4bG9nX3JlZG8oWExvZ1JlYWRlclN0YXRlICpyZWNvcmQpCiAKIC8qCiAgKiBSZXR1 cm4gdGhlIGV4dHJhIG9wZW4gZmxhZ3MgdXNlZCBmb3Igb3BlbmluZyBhIGZpbGUsIGRlcGVu ZGluZyBvbiB0aGUKLSAqIHZhbHVlIG9mIHRoZSBHVUNzIHdhbF9zeW5jX21ldGhvZCwgZnN5 bmMgYW5kIGlvX2RpcmVjdC4KKyAqIHZhbHVlIG9mIHRoZSBHVUNzIHdhbF9zeW5jX21ldGhv ZCwgZnN5bmMgYW5kIGRlYnVnX2lvX2RpcmVjdC4KICAqLwogc3RhdGljIGludAogZ2V0X3N5 bmNfYml0KGludCBtZXRob2QpCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jYXRhbG9nL2hl YXAuYyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvaGVhcC5jCmluZGV4IGYwMjc4YjljMDEuLjFk OWYyNjk2NWIgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvaGVhcC5jCisrKyBi L3NyYy9iYWNrZW5kL2NhdGFsb2cvaGVhcC5jCkBAIC0yNDY1LDcgKzI0NjUsNyBAQCBBZGRS ZWxhdGlvbk5ld0NvbnN0cmFpbnRzKFJlbGF0aW9uIHJlbCwKIAkJCQkgKiBDaGVjayBhZ2Fp bnN0IHByZS1leGlzdGluZyBjb25zdHJhaW50cy4gIElmIHdlIGFyZSBhbGxvd2VkCiAJCQkJ ICogdG8gbWVyZ2Ugd2l0aCBhbiBleGlzdGluZyBjb25zdHJhaW50LCB0aGVyZSdzIG5vIG1v cmUgdG8gZG8KIAkJCQkgKiBoZXJlLiAoV2Ugb21pdCB0aGUgZHVwbGljYXRlIGNvbnN0cmFp bnQgZnJvbSB0aGUgcmVzdWx0LAotCQkJCSAqIHdoaWNoIGlzIHdoYXQgQVRBZGRDaGVja0Nv bnN0cmFpbnQgd2FudHMuKQorCQkJCSAqIHdoaWNoIGlzIHdoYXQgQVRBZGRDaGVja05OQ29u c3RyYWludCB3YW50cy4pCiAJCQkJICovCiAJCQkJaWYgKE1lcmdlV2l0aEV4aXN0aW5nQ29u c3RyYWludChyZWwsIGNjbmFtZSwgZXhwciwKIAkJCQkJCQkJCQkJCWFsbG93X21lcmdlLCBp c19sb2NhbCwKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2V4ZWN1dG9yL25vZGVWYWx1ZXNz Y2FuLmMgYi9zcmMvYmFja2VuZC9leGVjdXRvci9ub2RlVmFsdWVzc2Nhbi5jCmluZGV4IDc4 YjUxMjkzMWIuLjkyOTQ4OTE3YTAgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2V4ZWN1dG9y L25vZGVWYWx1ZXNzY2FuLmMKKysrIGIvc3JjL2JhY2tlbmQvZXhlY3V0b3Ivbm9kZVZhbHVl c3NjYW4uYwpAQCAtMTgsNyArMTgsNiBAQAogICoJCUV4ZWNWYWx1ZXNTY2FuCQkJc2NhbnMg YSB2YWx1ZXMgbGlzdC4KICAqCQlFeGVjVmFsdWVzTmV4dAkJCXJldHJpZXZlIG5leHQgdHVw bGUgaW4gc2VxdWVudGlhbCBvcmRlci4KICAqCQlFeGVjSW5pdFZhbHVlc1NjYW4JCWNyZWF0 ZXMgYW5kIGluaXRpYWxpemVzIGEgdmFsdWVzc2NhbiBub2RlLgotICoJCUV4ZWNFbmRWYWx1 ZXNTY2FuCQlyZWxlYXNlcyBhbnkgc3RvcmFnZSBhbGxvY2F0ZWQuCiAgKgkJRXhlY1JlU2Nh blZhbHVlc1NjYW4JcmVzY2FucyB0aGUgdmFsdWVzIGxpc3QKICAqLwogI2luY2x1ZGUgInBv c3RncmVzLmgiCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9ub2Rlcy9xdWVyeWp1bWJsZWZ1 bmNzLmMgYi9zcmMvYmFja2VuZC9ub2Rlcy9xdWVyeWp1bWJsZWZ1bmNzLmMKaW5kZXggYmU4 MjNhN2Y4Zi4uMTI5ZmI0NDcwOSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvbm9kZXMvcXVl cnlqdW1ibGVmdW5jcy5jCisrKyBiL3NyYy9iYWNrZW5kL25vZGVzL3F1ZXJ5anVtYmxlZnVu Y3MuYwpAQCAtNTcsNyArNTcsNiBAQCBzdGF0aWMgdm9pZCBSZWNvcmRDb25zdExvY2F0aW9u KEp1bWJsZVN0YXRlICpqc3RhdGUsIGludCBsb2NhdGlvbik7CiBzdGF0aWMgdm9pZCBfanVt YmxlTm9kZShKdW1ibGVTdGF0ZSAqanN0YXRlLCBOb2RlICpub2RlKTsKIHN0YXRpYyB2b2lk IF9qdW1ibGVBX0NvbnN0KEp1bWJsZVN0YXRlICpqc3RhdGUsIE5vZGUgKm5vZGUpOwogc3Rh dGljIHZvaWQgX2p1bWJsZUxpc3QoSnVtYmxlU3RhdGUgKmpzdGF0ZSwgTm9kZSAqbm9kZSk7 Ci1zdGF0aWMgdm9pZCBfanVtYmxlUmFuZ2VUYmxFbnRyeShKdW1ibGVTdGF0ZSAqanN0YXRl LCBOb2RlICpub2RlKTsKIAogLyoKICAqIEdpdmVuIGEgcG9zc2libHkgbXVsdGktc3RhdGVt ZW50IHNvdXJjZSBzdHJpbmcsIGNvbmZpbmUgb3VyIGF0dGVudGlvbiB0byB0aGUKZGlmZiAt LWdpdCBhL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwvc2xvdHN5bmMuYyBiL3Ny Yy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwvc2xvdHN5bmMuYwppbmRleCAzOWZmNWZl OTY5Li4zODllN2RiMmM2IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi9s b2dpY2FsL3Nsb3RzeW5jLmMKKysrIGIvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vbG9naWNh bC9zbG90c3luYy5jCkBAIC0xMDQxLDcgKzEwNDEsNyBAQCBWYWxpZGF0ZVNsb3RTeW5jUGFy YW1zKGludCBlbGV2ZWwpCiAJLyoKIAkgKiBMb2dpY2FsIHNsb3Qgc3luYy9jcmVhdGlvbiBy ZXF1aXJlcyB3YWxfbGV2ZWwgPj0gbG9naWNhbC4KIAkgKgotCSAqIFNpbmNsZSBhbHRlcmlu ZyB0aGUgd2FsX2xldmVsIHJlcXVpcmVzIGEgc2VydmVyIHJlc3RhcnQsIHNvIGVycm9yIG91 dAorCSAqIFNpbmNlIGFsdGVyaW5nIHRoZSB3YWxfbGV2ZWwgcmVxdWlyZXMgYSBzZXJ2ZXIg cmVzdGFydCwgc28gZXJyb3Igb3V0CiAJICogaW4gdGhpcyBjYXNlIHJlZ2FyZGxlc3Mgb2Yg ZWxldmVsIHByb3ZpZGVkIGJ5IGNhbGxlci4KIAkgKi8KIAlpZiAod2FsX2xldmVsIDwgV0FM X0xFVkVMX0xPR0lDQUwpCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91dGlscy9hZHQvcnVs ZXV0aWxzLmMgYi9zcmMvYmFja2VuZC91dGlscy9hZHQvcnVsZXV0aWxzLmMKaW5kZXggYjM0 MjhlMmFlNC4uMzAyY2Q4ZTdmMyAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMvYWR0 L3J1bGV1dGlscy5jCisrKyBiL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9ydWxldXRpbHMuYwpA QCAtMTE2MzIsNyArMTE2MzIsNyBAQCBnZXRfeG1sdGFibGUoVGFibGVGdW5jICp0ZiwgZGVw YXJzZV9jb250ZXh0ICpjb250ZXh0LCBib29sIHNob3dpbXBsaWNpdCkKIH0KIAogLyoKLSAq IGdldF9qc29uX25lc3RlZF9jb2x1bW5zIC0gUGFyc2UgYmFjayBuZXN0ZWQgSlNPTl9UQUJM RSBjb2x1bW5zCisgKiBnZXRfanNvbl90YWJsZV9uZXN0ZWRfY29sdW1ucyAtIFBhcnNlIGJh Y2sgbmVzdGVkIEpTT05fVEFCTEUgY29sdW1ucwogICovCiBzdGF0aWMgdm9pZAogZ2V0X2pz b25fdGFibGVfbmVzdGVkX2NvbHVtbnMoVGFibGVGdW5jICp0ZiwgSnNvblRhYmxlUGxhbiAq cGxhbiwKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC92YXJsZW5hLmMgYi9z cmMvYmFja2VuZC91dGlscy9hZHQvdmFybGVuYS5jCmluZGV4IGQxYjA5ZGVkZmQuLmRjY2Qx MzBjOTEgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC92YXJsZW5hLmMKKysr IGIvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3ZhcmxlbmEuYwpAQCAtNjI4NCw3ICs2Mjg0LDcg QEAgdW5pY29kZV9ub3JtX2Zvcm1fZnJvbV9zdHJpbmcoY29uc3QgY2hhciAqZm9ybXN0cikK IC8qCiAgKiBSZXR1cm5zIHZlcnNpb24gb2YgVW5pY29kZSB1c2VkIGJ5IFBvc3RncmVzIGlu ICJtYWpvci5taW5vciIgZm9ybWF0ICh0aGUKICAqIHNhbWUgZm9ybWF0IGFzIHRoZSBVbmlj b2RlIHZlcnNpb24gcmVwb3J0ZWQgYnkgSUNVKS4gVGhlIHRoaXJkIGNvbXBvbmVudAotICog KCJ1cGRhdGUgdmVyc2lvbiIpIG5ldmVyIGludm9sdmVzIGFkZGl0aW9ucyB0byB0aGUgY2hh cmFjdGVyIHJlcGVydGlvcmUgYW5kCisgKiAoInVwZGF0ZSB2ZXJzaW9uIikgbmV2ZXIgaW52 b2x2ZXMgYWRkaXRpb25zIHRvIHRoZSBjaGFyYWN0ZXIgcmVwZXJ0b2lyZSBhbmQKICAqIGlz IHVuaW1wb3J0YW50IGZvciBtb3N0IHB1cnBvc2VzLgogICoKICAqIFNlZTogaHR0cHM6Ly91 bmljb2RlLm9yZy92ZXJzaW9ucy8KZGlmZiAtLWdpdCBhL3NyYy9iaW4vcGdfY29tYmluZWJh Y2t1cC9wZ19jb21iaW5lYmFja3VwLmMgYi9zcmMvYmluL3BnX2NvbWJpbmViYWNrdXAvcGdf Y29tYmluZWJhY2t1cC5jCmluZGV4IDAyN2ExNmEyNmMuLmY0YTFmNDk5NTMgMTAwNjQ0Ci0t LSBhL3NyYy9iaW4vcGdfY29tYmluZWJhY2t1cC9wZ19jb21iaW5lYmFja3VwLmMKKysrIGIv c3JjL2Jpbi9wZ19jb21iaW5lYmFja3VwL3BnX2NvbWJpbmViYWNrdXAuYwpAQCAtODQ0LDcg Kzg0NCw3IEBAIHByb2Nlc3NfZGlyZWN0b3J5X3JlY3Vyc2l2ZWx5KE9pZCB0c29pZCwKIAkg KiBmaWxlcyByZXF1aXJpbmcgcmVjb25zdHJ1Y3Rpb24uIElmIHN1Y2ggZmlsZXMgb2NjdXIg b3V0c2lkZSB0aGVzZQogCSAqIGRpcmVjdG9yaWVzLCB3ZSB3YW50IHRvIGp1c3QgY29weSB0 aGVtIHN0cmFpZ2h0IHRvIHRoZSBvdXRwdXQKIAkgKiBkaXJlY3RvcnkuIFRoaXMgaXMgdG8g cHJvdGVjdCBhZ2FpbnN0IGEgdXNlciBjcmVhdGluZyBhIGZpbGUgd2l0aCBhCi0JICogc3Ry YW5nZSBuYW1lIGxpa2UgSU5DUkVNRU5UQUwuY29uZmlnIGFuZCB0aGVuIGNvbXBhaW5pbmcg dGhhdAorCSAqIHN0cmFuZ2UgbmFtZSBsaWtlIElOQ1JFTUVOVEFMLmNvbmZpZyBhbmQgdGhl biBjb21wbGFpbmluZyB0aGF0CiAJICogaW5jcmVtZW50YWwgYmFja3VwcyBkb24ndCB3b3Jr IHByb3Blcmx5LiBUaGUgdGVzdCBoZXJlIGlzIGEgYml0IHRyaWNreToKIAkgKiBpbmNyZW1l bnRhbCBmaWxlcyBvY2N1ciBpbiBzdWJkaXJlY3RvcmllcyBvZiBiYXNlLCBpbiBwZ19nbG9i YWwgaXRzZWxmLAogCSAqIGFuZCBpbiBzdWJkaXJlY3RvcmllcyBvZiBwZ190YmxzcGMgb25s eSBpZiBpbi1wbGFjZSB0YWJsZXNwYWNlcyBhcmUKZGlmZiAtLWdpdCBhL3NyYy9iaW4vcGdf ZHVtcC9maWx0ZXIuYyBiL3NyYy9iaW4vcGdfZHVtcC9maWx0ZXIuYwppbmRleCA5ZmRiOWNi ZGNkLi4zZmI5M2M1ZjE1IDEwMDY0NAotLS0gYS9zcmMvYmluL3BnX2R1bXAvZmlsdGVyLmMK KysrIGIvc3JjL2Jpbi9wZ19kdW1wL2ZpbHRlci5jCkBAIC0yMDQsNyArMjA0LDcgQEAgZmls dGVyX2dldF9rZXl3b3JkKGNvbnN0IGNoYXIgKipsaW5lLCBpbnQgKnNpemUpCiB9CiAKIC8q Ci0gKiByZWFkX3F1b3RlZF9wYXR0ZXJuIC0gcmVhZCBxdW90ZWQgcG9zc2libHkgbXVsdGkg bGluZSBzdHJpbmcKKyAqIHJlYWRfcXVvdGVkX3N0cmluZyAtIHJlYWQgcXVvdGVkIHBvc3Np Ymx5IG11bHRpIGxpbmUgc3RyaW5nCiAgKgogICogUmVhZHMgYSBxdW90ZWQgc3RyaW5nIHdo aWNoIGNhbiBzcGFuIG92ZXIgbXVsdGlwbGUgbGluZXMgYW5kIHJldHVybnMgYQogICogcG9p bnRlciB0byBuZXh0IGNoYXIgYWZ0ZXIgZW5kaW5nIGRvdWJsZSBxdW90ZXM7IGl0IHdpbGwg ZXhpdCBvbiBlcnJvcnMuCmRpZmYgLS1naXQgYS9zcmMvYmluL3BnX3VwZ3JhZGUvY2hlY2su YyBiL3NyYy9iaW4vcGdfdXBncmFkZS9jaGVjay5jCmluZGV4IGFkMWY4ZTNiY2IuLjExZTcw NWU4ZWMgMTAwNjQ0Ci0tLSBhL3NyYy9iaW4vcGdfdXBncmFkZS9jaGVjay5jCisrKyBiL3Ny Yy9iaW4vcGdfdXBncmFkZS9jaGVjay5jCkBAIC0xOTQ1LDcgKzE5NDUsNyBAQCBjaGVja19v bGRfY2x1c3Rlcl9zdWJzY3JpcHRpb25fc3RhdGUodm9pZCkKIAkJCQkJCQkJCSIJT04gby5y b25hbWUgPSAncGdfJyB8fCBzLm9pZCAiCiAJCQkJCQkJCQkiSU5ORVIgSk9JTiBwZ19jYXRh bG9nLnBnX2RhdGFiYXNlIGQgIgogCQkJCQkJCQkJIglPTiBkLm9pZCA9IHMuc3ViZGJpZCAi Ci0JCQkJCQkJCQkiV0hFUkUgby5yb25hbWUgaVMgTlVMTDsiKTsKKwkJCQkJCQkJCSJXSEVS RSBvLnJvbmFtZSBJUyBOVUxMOyIpOwogCiAJCQludHVwID0gUFFudHVwbGVzKHJlcyk7CiAJ CQlmb3IgKGludCBpID0gMDsgaSA8IG50dXA7IGkrKykKZGlmZiAtLWdpdCBhL3NyYy9mZV91 dGlscy9yZWNvdmVyeV9nZW4uYyBiL3NyYy9mZV91dGlscy9yZWNvdmVyeV9nZW4uYwppbmRl eCA3MzM5ODJhODJmLi5jNDgzOGE0YmRkIDEwMDY0NAotLS0gYS9zcmMvZmVfdXRpbHMvcmVj b3ZlcnlfZ2VuLmMKKysrIGIvc3JjL2ZlX3V0aWxzL3JlY292ZXJ5X2dlbi5jCkBAIC0yMCw3 ICsyMCw3IEBAIHN0YXRpYyBjaGFyICplc2NhcGVfcXVvdGVzKGNvbnN0IGNoYXIgKnNyYyk7 CiAgKiByZXR1cm4gaXQuCiAgKgogICogVGhpcyBhY2NlcHRzIHRoZSBkYm5hbWUgd2hpY2gg d2lsbCBiZSBhcHBlbmRlZCB0byB0aGUgcHJpbWFyeV9jb25uaW5mby4KLSAqIFRoZSBkYm5h bWUgd2lsbCBiZSBpZ25vcmVkIGJ5IHdhbHJlY2lldmVyIHByb2Nlc3MgYnV0IHNsb3RzeW5j IHdvcmtlciB1c2VzCisgKiBUaGUgZGJuYW1lIHdpbGwgYmUgaWdub3JlZCBieSB3YWxyZWNl aXZlciBwcm9jZXNzIGJ1dCBzbG90c3luYyB3b3JrZXIgdXNlcwogICogaXQgdG8gY29ubmVj dCB0byB0aGUgcHJpbWFyeSBzZXJ2ZXIuCiAgKi8KIFBRRXhwQnVmZmVyCmRpZmYgLS1naXQg YS9zcmMvaW5jbHVkZS9jYXRhbG9nL2hlYXAuaCBiL3NyYy9pbmNsdWRlL2NhdGFsb2cvaGVh cC5oCmluZGV4IDIxZTMxZjljOTcuLmU0NDZkNDliM2UgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNs dWRlL2NhdGFsb2cvaGVhcC5oCisrKyBiL3NyYy9pbmNsdWRlL2NhdGFsb2cvaGVhcC5oCkBA IC0xMTYsNyArMTE2LDcgQEAgZXh0ZXJuIExpc3QgKkFkZFJlbGF0aW9uTmV3Q29uc3RyYWlu dHMoUmVsYXRpb24gcmVsLAogCQkJCQkJCQkJICAgY29uc3QgY2hhciAqcXVlcnlTdHJpbmcp OwogZXh0ZXJuIExpc3QgKkFkZFJlbGF0aW9uTm90TnVsbENvbnN0cmFpbnRzKFJlbGF0aW9u IHJlbCwKIAkJCQkJCQkJCQkgICBMaXN0ICpjb25zdHJhaW50cywKLQkJCQkJCQkJCQkgICBM aXN0ICphZGRpdGlvbmFsX25vdG51bGxzKTsKKwkJCQkJCQkJCQkgICBMaXN0ICpvbGRfbm90 bnVsbHMpOwogCiBleHRlcm4gdm9pZCBSZWxhdGlvbkNsZWFyTWlzc2luZyhSZWxhdGlvbiBy ZWwpOwogZXh0ZXJuIHZvaWQgU2V0QXR0ck1pc3NpbmcoT2lkIHJlbGlkLCBjaGFyICphdHRu YW1lLCBjaGFyICp2YWx1ZSk7CmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9jb21tb24vYmxr cmVmdGFibGUuaCBiL3NyYy9pbmNsdWRlL2NvbW1vbi9ibGtyZWZ0YWJsZS5oCmluZGV4IDQy Mjk1YjdjNTIuLjQzYjkxM2E4MmUgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL2NvbW1vbi9i bGtyZWZ0YWJsZS5oCisrKyBiL3NyYy9pbmNsdWRlL2NvbW1vbi9ibGtyZWZ0YWJsZS5oCkBA IC00NCw3ICs0NCw3IEBAIHR5cGVkZWYgc3RydWN0IEJsb2NrUmVmVGFibGVXcml0ZXIgQmxv Y2tSZWZUYWJsZVdyaXRlcjsKICAqIHJlcG9ydF9lcnJvcl9mbiBzaG91bGQgbm90IHJldHVy bi4KICAqLwogdHlwZWRlZiBpbnQgKCppb19jYWxsYmFja19mbikgKHZvaWQgKmNhbGxiYWNr X2FyZywgdm9pZCAqZGF0YSwgaW50IGxlbmd0aCk7Ci10eXBlZGVmIHZvaWQgKCpyZXBvcnRf ZXJyb3JfZm4pICh2b2lkICpjYWxibGFja19hcmcsIGNoYXIgKm1zZywuLi4pIHBnX2F0dHJp YnV0ZV9wcmludGYoMiwgMyk7Cit0eXBlZGVmIHZvaWQgKCpyZXBvcnRfZXJyb3JfZm4pICh2 b2lkICpjYWxsYmFja19hcmcsIGNoYXIgKm1zZywuLi4pIHBnX2F0dHJpYnV0ZV9wcmludGYo MiwgMyk7CiAKIAogLyoKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL25vZGVzL3BhdGhub2Rl cy5oIGIvc3JjL2luY2x1ZGUvbm9kZXMvcGF0aG5vZGVzLmgKaW5kZXggYjgxNDFmMTQxYS4u OTFhNmNlOTBkOCAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvbm9kZXMvcGF0aG5vZGVzLmgK KysrIGIvc3JjL2luY2x1ZGUvbm9kZXMvcGF0aG5vZGVzLmgKQEAgLTE4NjcsNyArMTg2Nyw3 IEBAIHR5cGVkZWYgc3RydWN0IEZvcmVpZ25QYXRoCiAgKgogICogV2UgcHJvdmlkZSBhIHNl dCBvZiBob29rcyBoZXJlIC0gd2hpY2ggdGhlIHByb3ZpZGVyIG11c3QgdGFrZSBjYXJlIHRv IHNldAogICogdXAgY29ycmVjdGx5IC0gdG8gYWxsb3cgZXh0ZW5zaW9ucyB0byBzdXBwbHkg dGhlaXIgb3duIG1ldGhvZHMgb2Ygc2Nhbm5pbmcKLSAqIGEgcmVsYXRpb24gb3Igam9pbmcg cmVsYXRpb25zLiAgRm9yIGV4YW1wbGUsIGEgcHJvdmlkZXIgbWlnaHQgcHJvdmlkZSBHUFUK KyAqIGEgcmVsYXRpb24gb3Igam9pbiByZWxhdGlvbnMuICBGb3IgZXhhbXBsZSwgYSBwcm92 aWRlciBtaWdodCBwcm92aWRlIEdQVQogICogYWNjZWxlcmF0aW9uLCBhIGNhY2hlLWJhc2Vk IHNjYW4sIG9yIHNvbWUgb3RoZXIga2luZCBvZiBsb2dpYyB3ZSBoYXZlbid0CiAgKiBkcmVh bWVkIHVwIHlldC4KICAqCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9ub2Rlcy9wcmltbm9k ZXMuaCBiL3NyYy9pbmNsdWRlL25vZGVzL3ByaW1ub2Rlcy5oCmluZGV4IDI0N2NlY2I0YjQu LjQzZjU3NjZkNzMgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL25vZGVzL3ByaW1ub2Rlcy5o CisrKyBiL3NyYy9pbmNsdWRlL25vZGVzL3ByaW1ub2Rlcy5oCkBAIC0xNjQxLDcgKzE2NDEs NyBAQCB0eXBlZGVmIHN0cnVjdCBKc29uUmV0dXJuaW5nCiAgKgogICogVGhlIGFjdHVhbCB2 YWx1ZSBpcyBvYnRhaW5lZCBieSBldmFsdWF0aW5nIGZvcm1hdHRlZF9leHByLiAgcmF3X2V4 cHIgaXMKICAqIG9ubHkgdGhlcmUgZm9yIGRpc3BsYXlpbmcgdGhlIG9yaWdpbmFsIHVzZXIt d3JpdHRlbiBleHByZXNzaW9uIGFuZCBpcyBub3QKLSAqIGV2YWx1YXRlZCBieSBFeGVjSW50 ZXJwRXhwcigpIGFuZCBldmFsX2NvbnN0X2V4cHJzX211dGF0b3IoKS4KKyAqIGV2YWx1YXRl ZCBieSBFeGVjSW50ZXJwRXhwcigpIGFuZCBldmFsX2NvbnN0X2V4cHJlc3Npb25zX211dGF0 b3IoKS4KICAqLwogdHlwZWRlZiBzdHJ1Y3QgSnNvblZhbHVlRXhwcgogewpkaWZmIC0tZ2l0 IGEvc3JjL2ludGVyZmFjZXMvbGlicHEvdC8wMDVfbmVnb3RpYXRlX2VuY3J5cHRpb24ucGwg Yi9zcmMvaW50ZXJmYWNlcy9saWJwcS90LzAwNV9uZWdvdGlhdGVfZW5jcnlwdGlvbi5wbApp bmRleCAxYzM3ZjgzMmU3Li4wM2E5MDc5ZjNmIDEwMDY0NAotLS0gYS9zcmMvaW50ZXJmYWNl cy9saWJwcS90LzAwNV9uZWdvdGlhdGVfZW5jcnlwdGlvbi5wbAorKysgYi9zcmMvaW50ZXJm YWNlcy9saWJwcS90LzAwNV9uZWdvdGlhdGVfZW5jcnlwdGlvbi5wbApAQCAtMzk1LDcgKzM5 NSw3IEBAIG5vZ3NzdXNlciAgIGRpc2FibGUgICAgICBkaXNhYmxlICAgICAgKiAgICAgICAg ICAgICAgY29ubmVjdCwgYXV0aG9rCiAJIyBUaGUgZXhwZWN0ZWQgZXZlbnRzIGFuZCBvdXRj b21lcyBhYm92ZSBhc3N1bWUgdGhhdCBTU0wgc3VwcG9ydAogCSMgaXMgZW5hYmxlZC4gV2hl biBsaWJwcSBpcyBjb21waWxlZCB3aXRob3V0IFNTTCBzdXBwb3J0LCBhbGwKIAkjIGF0dGVt cHRzIHRvIGNvbm5lY3Qgd2l0aCBzc2xtb2RlPXJlcXVpcmUgb3IKLQkjIHNzbG5lZ290aXRp b249ZGlyZWN0L3JlcXVpcmVkaXJlY3R3b3VsZCBmYWlsIGltbWVkaWF0ZWx5IHdpdGhvdXQK KwkjIHNzbG5lZ290aWF0aW9uPWRpcmVjdC9yZXF1aXJlZGlyZWN0IHdvdWxkIGZhaWwgaW1t ZWRpYXRlbHkgd2l0aG91dAogCSMgZXZlbiBjb25uZWN0aW5nIHRvIHRoZSBzZXJ2ZXIuIFNr aXAgdGhvc2UsIGJlY2F1c2Ugd2UgdGVzdGVkCiAJIyB0aGVtIGVhcmxpZXIgYWxyZWFkeS4K IAlteSAoJHNzbG1vZGVzLCAkc3NsbmVnb3RpYXRpb25zKTsKQEAgLTU1Miw3ICs1NTIsNyBA QCBkb25lX3Rlc3RpbmcoKTsKIAogIyMjIEhlbHBlciBmdW5jdGlvbnMKIAotIyBUZXN0IHRo ZSBjdWJlIG9mIHBhcmFtZXRlcnM6IHVzZXIsIGdzc2VuY21vZGUsIHNzbG1vZGUsIGFuZCBz c2xuZWdvdGl0YXRpb24KKyMgVGVzdCB0aGUgY3ViZSBvZiBwYXJhbWV0ZXJzOiB1c2VyLCBn c3NlbmNtb2RlLCBzc2xtb2RlLCBhbmQgc3NsbmVnb3RpYXRpb24KIHN1YiB0ZXN0X21hdHJp eAogewogCWxvY2FsICRUZXN0OjpCdWlsZGVyOjpMZXZlbCA9ICRUZXN0OjpCdWlsZGVyOjpM ZXZlbCArIDE7CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9hdXRoZW50aWNhdGlvbi90LzAwNl9s b2dpbl90cmlnZ2VyLnBsIGIvc3JjL3Rlc3QvYXV0aGVudGljYXRpb24vdC8wMDZfbG9naW5f dHJpZ2dlci5wbAppbmRleCA4MjI5NDkwYWUyLi4zMGQ4NTJhOTZhIDEwMDY0NAotLS0gYS9z cmMvdGVzdC9hdXRoZW50aWNhdGlvbi90LzAwNl9sb2dpbl90cmlnZ2VyLnBsCisrKyBiL3Ny Yy90ZXN0L2F1dGhlbnRpY2F0aW9uL3QvMDA2X2xvZ2luX3RyaWdnZXIucGwKQEAgLTE0Myw3 ICsxNDMsNyBAQCBwc3FsX2NvbW1hbmQoCiAJbG9nX2V4YWN0ID0+ICcyJywKIAllcnJfbGlr ZSA9PiBbcXIvWW91IGFyZSB3ZWxjb21lL10pOwogCi0jIFRyeSB0byBsb2dpbiBhcyBhbGxv d2VkIEFsaWNlLiAgV2UgZG9uJ3QgY2hlY2sgdGhlIE1hbGxyb3kgbG9naW4sIGJlY2F1c2UK KyMgVHJ5IHRvIGxvZ2luIGFzIGFsbG93ZWQgQWxpY2UuICBXZSBkb24ndCBjaGVjayB0aGUg TWFsbG9yeSBsb2dpbiwgYmVjYXVzZQogIyBGQVRBTCBlcnJvciBjb3VsZCBjYXVzZSBhIHRp bWluZy1kZXBlbmRhbnQgcGFuaWMgb2YgSVBDOjpSdW4uCiBwc3FsX2NvbW1hbmQoCiAJJG5v ZGUsICdTRUxFQ1QgMTsnLCAwLCAndHJ5IHJlZ3Jlc3NfYWxpY2UnLApkaWZmIC0tZ2l0IGEv c3JjL3Rlc3QvbW9kdWxlcy90ZXN0X2pzb25fcGFyc2VyL3QvMDA0X3Rlc3RfcGFyc2VyX3Bl cmYucGwgYi9zcmMvdGVzdC9tb2R1bGVzL3Rlc3RfanNvbl9wYXJzZXIvdC8wMDRfdGVzdF9w YXJzZXJfcGVyZi5wbAppbmRleCBjNjFmZGY4OThhLi5lODJiYjM2OTViIDEwMDY0NAotLS0g YS9zcmMvdGVzdC9tb2R1bGVzL3Rlc3RfanNvbl9wYXJzZXIvdC8wMDRfdGVzdF9wYXJzZXJf cGVyZi5wbAorKysgYi9zcmMvdGVzdC9tb2R1bGVzL3Rlc3RfanNvbl9wYXJzZXIvdC8wMDRf dGVzdF9wYXJzZXJfcGVyZi5wbApAQCAtNCw3ICs0LDcgQEAKICMgVGVzdCB0aGUgSlNPTiBw YXJzZXIgcGVyZm9ybWFuY2UgdGVzdGVyLiBIZXJlIHdlIGFyZSBqdXN0IGNoZWNraW5nIHRo YXQKICMgdGhlIHBlcmZvcm1hbmNlIHRlc3RlciBjYW4gcnVuLCBib3RoIHdpdGggdGhlIHN0 YW5kYXJkIHBhcnNlciBhbmQgdGhlCiAjIGluY3JlbWVudGFsIHBhcnNlci4gQW4gYWN0dWFs IHBlcmZvcm1hbmNlIHRlc3Qgd2lsbCBydW4gd2l0aCB0aG91c2FuZHMKLSMgb2YgaXRlcmF0 aW9ucyBvbnN0ZWFkIG9mIGp1c3Qgb25lLgorIyBvZiBpdGVyYXRpb25zIGluc3RlYWQgb2Yg anVzdCBvbmUuCiAKIHVzZSBzdHJpY3Q7CiB1c2Ugd2FybmluZ3M7CmRpZmYgLS1naXQgYS9z cmMvdGVzdC9tb2R1bGVzL3dvcmtlcl9zcGkvdC8wMDFfd29ya2VyX3NwaS5wbCBiL3NyYy90 ZXN0L21vZHVsZXMvd29ya2VyX3NwaS90LzAwMV93b3JrZXJfc3BpLnBsCmluZGV4IDE3N2Ux YzYzMTQuLmZjZDc2YjQzZTggMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L21vZHVsZXMvd29ya2Vy X3NwaS90LzAwMV93b3JrZXJfc3BpLnBsCisrKyBiL3NyYy90ZXN0L21vZHVsZXMvd29ya2Vy X3NwaS90LzAwMV93b3JrZXJfc3BpLnBsCkBAIC0xMTUsNyArMTE1LDcgQEAgbXkgJG5vY29u bmRiX2lkID0gJG5vZGUtPnNhZmVfcHNxbCgnbXlkYicsCiBteSAkbG9nX29mZnNldCA9IC1z ICRub2RlLT5sb2dmaWxlOwogCiAjIHdvcmtlcl9zcGlfbGF1bmNoKCkgbWF5IGJlIGFibGUg dG8gZGV0ZWN0IHRoYXQgdGhlIHdvcmtlciBoYXMgYmVlbgotIyBzdG9wcGVkLCBzbyBkbyBu b3QgcmVseSBvbiBwc3FsX3NhZmUoKS4KKyMgc3RvcHBlZCwgc28gZG8gbm90IHJlbHkgb24g c2FmZV9wc3FsKCkuCiAkbm9kZS0+cHNxbCgncG9zdGdyZXMnLAogCXFxW1NFTEVDVCB3b3Jr ZXJfc3BpX2xhdW5jaCgxMiwgJG5vY29ubmRiX2lkLCAkbXlyb2xlX2lkKTtdKTsKICRub2Rl LT53YWl0X2Zvcl9sb2coCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9tb2R1bGVzL3dvcmtlcl9z cGkvd29ya2VyX3NwaS5jIGIvc3JjL3Rlc3QvbW9kdWxlcy93b3JrZXJfc3BpL3dvcmtlcl9z cGkuYwppbmRleCAyMjE3N2NmMmI1Li43ZTEwNDJmNGFiIDEwMDY0NAotLS0gYS9zcmMvdGVz dC9tb2R1bGVzL3dvcmtlcl9zcGkvd29ya2VyX3NwaS5jCisrKyBiL3NyYy90ZXN0L21vZHVs ZXMvd29ya2VyX3NwaS93b3JrZXJfc3BpLmMKQEAgLTM4NCw3ICszODQsNyBAQCBfUEdfaW5p dCh2b2lkKQogCS8qCiAJICogTm93IGZpbGwgaW4gd29ya2VyLXNwZWNpZmljIGRhdGEsIGFu ZCBkbyB0aGUgYWN0dWFsIHJlZ2lzdHJhdGlvbnMuCiAJICoKLQkgKiBiZ3dfZXh0cmEgY2Fu IG9wdGlvbmFsbHkgaW5jbHVkZSBhIGRhYmF0YXNlIE9JRCwgYSByb2xlIE9JRCBhbmQgYSBz ZXQKKwkgKiBiZ3dfZXh0cmEgY2FuIG9wdGlvbmFsbHkgaW5jbHVkZSBhIGRhdGFiYXNlIE9J RCwgYSByb2xlIE9JRCBhbmQgYSBzZXQKIAkgKiBvZiBmbGFncy4gIFRoaXMgaXMgbGVmdCBl bXB0eSBoZXJlIHRvIGZhbGxiYWNrIHRvIHRoZSByZWxhdGVkIEdVQ3MgYXQKIAkgKiBzdGFy dHVwICgwIGZvciB0aGUgYmd3b3JrZXIgZmxhZ3MpLgogCSAqLwo= --------------BWiPlslFr7MUc67h0w3ne4sz--