[641] in arla-drinkers

home help back first fref pref prev next nref lref last post

patch for ydr to play nicely with make -j

daemon@ATHENA.MIT.EDU (Derrick J Brashear)
Sat Feb 27 04:33:14 1999

From owner-arla-drinkers@stacken.kth.se Sat Feb 27 09:33:12 1999
Return-Path: <owner-arla-drinkers@stacken.kth.se>
Delivered-To: arla-drinkers-mtg@bloom-picayune.mit.edu
Received: (qmail 21091 invoked from network); 27 Feb 1999 09:33:09 -0000
Received: from unknown (HELO sundance.stacken.kth.se) (130.237.234.41)
  by bloom-picayune.mit.edu with SMTP; 27 Feb 1999 09:33:09 -0000
Received: (from majordom@localhost)
	by sundance.stacken.kth.se (8.8.8/8.8.8) id KAA11334
	for arla-drinkers-list; Sat, 27 Feb 1999 10:26:04 +0100 (MET)
Received: from alycia.dementia.org (ALYCIA.DEMENTIA.ORG [128.2.35.149])
	by sundance.stacken.kth.se (8.8.8/8.8.8) with ESMTP id KAA11327
	for <arla-drinkers@stacken.kth.se>; Sat, 27 Feb 1999 10:25:53 +0100 (MET)
Received: from jooky.trafford.dementia.org (IDENT:root@jooky.trafford.dementia.org [204.29.154.10])
	by alycia.dementia.org (8.9.1a/8.9.0) with SMTP id EAA09805;
	Sat, 27 Feb 1999 04:26:56 -0500 (EST)
Date: Sat, 27 Feb 1999 04:26:22 -0500 (EST)
From: Derrick J Brashear <shadow@dementia.org>
X-Sender: shadow@jooky.trafford.dementia.org
To: arla-drinkers@stacken.kth.se
cc: assar@sics.se
Subject: patch for ydr to play nicely with make -j
Message-ID: <Pine.LNX.3.95L.990227042440.563F-200000@jooky.trafford.dementia.org>
MIME-Version: 1.0
Content-Type: MULTIPART/MIXED; BOUNDARY="-1710568419-297143971-920107582=:563"
Sender: owner-arla-drinkers@stacken.kth.se
Precedence: bulk

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.
  Send mail to mime@docserver.cac.washington.edu for more info.

---1710568419-297143971-920107582=:563
Content-Type: TEXT/PLAIN; charset=US-ASCII

It's attached. It also makes "make clean" make cleaner (kill a few test
programs).

The idea is that make -j will work if there aren't files by the names
things are looking for which are only partially written, so this causes
them to be written as temporary files, and moved into place when they're
ready.

-D


---1710568419-297143971-920107582=:563
Content-Type: TEXT/PLAIN; name="arla-ydr.diff"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.LNX.3.95L.990227042622.563G@jooky.trafford.dementia.org>
Content-Description: 

ZGlmZiAtdXJOIGFybGEtMC4yMi9UT0RPIGFybGEtMC4yMi55ZHIvVE9ETw0K
LS0tIGFybGEtMC4yMi9UT0RPCVdlZCBEZWMgMjMgMjE6MDg6NDkgMTk5OA0K
KysrIGFybGEtMC4yMi55ZHIvVE9ETwlTYXQgRmViIDI3IDA0OjIzOjIzIDE5
OTkNCkBAIC05LDggKzksNiBAQA0KIA0KICovTWFrZWZpbGUuaW46IGFsbG93
IGNyZWF0aW9uIG9mIHNoYXJlZCBsaWJyYXJpZXMNCiANCi0qL01ha2VmaWxl
LmluOiBtYWtlIHN1cmUgbWFrZSAtaiB3b3JrcyBwcm9wZXJseQ0KLQ0KIHRl
c3RzOiBtYWtlIHN1cmUgYWxsIHRlc3RzIHdvcmsgZXZlcnl3aGVyZQ0KIA0K
IHRlc3RzOiBmaWd1cmUgb3V0IHdoYXQgb3V0cHV0IHNob3VsZCBiZSBzZW50
IHdoZXJlIGFuZCB3aXRoIHdoYXQgb3B0aW9ucw0KZGlmZiAtdXJOIGFybGEt
MC4yMi9sd3AvTWFrZWZpbGUuaW4gYXJsYS0wLjIyLnlkci9sd3AvTWFrZWZp
bGUuaW4NCi0tLSBhcmxhLTAuMjIvbHdwL01ha2VmaWxlLmluCU1vbiBGZWIg
IDEgMTk6NDY6MjAgMTk5OQ0KKysrIGFybGEtMC4yMi55ZHIvbHdwL01ha2Vm
aWxlLmluCVNhdCBGZWIgMjcgMDQ6MTk6MTEgMTk5OQ0KQEAgLTc4LDcgKzc4
LDcgQEANCiB0ZXN0bHdwLm86IHRlc3Rsd3AuYw0KIA0KIGNsZWFuOg0KLQly
bSAtZiAqLm8gKi5hIGNvcmUgcHJvY2Vzcy5zcyAkKExJQikgbWFrZS1wcm9j
ZXNzLm8uc2gNCisJcm0gLWYgKi5vICouYSBjb3JlIHByb2Nlc3Muc3MgJChM
SUIpIG1ha2UtcHJvY2Vzcy5vLnNoIHJ3IHRlc3Rsd3ANCiANCiBkaXN0Y2xl
YW46IGNsZWFuDQogDQpkaWZmIC11ck4gYXJsYS0wLjIyL3V0aWwvTWFrZWZp
bGUuaW4gYXJsYS0wLjIyLnlkci91dGlsL01ha2VmaWxlLmluDQotLS0gYXJs
YS0wLjIyL3V0aWwvTWFrZWZpbGUuaW4JU2F0IEZlYiAxMyAwMDowNDo1NyAx
OTk5DQorKysgYXJsYS0wLjIyLnlkci91dGlsL01ha2VmaWxlLmluCVNhdCBG
ZWIgMjcgMDQ6MjA6MDcgMTk5OQ0KQEAgLTM2LDEwICszNiwxMCBAQA0KIA0K
IGxpYnV0aWxfU1JDUwk9IGhhc2guYyBsaXN0LmMgZnJlZWxpc3QuYyB0aW1l
dmFsLmMgbG9nLmMgZWZpbGUuYyBcDQogCQkgIHN0cnV0aWwuYyBmbmFtZXV0
aWwuYyBkYXRlX3JmYzgyMi5jIHN0cm1hdGNoLmMgc3Ryc3BsaXQuYyBcDQot
CQkgIGF0b20uYyBpcC5jIG1tYXB0aW1lLmMgaGVhcC5jDQorCQkgIGF0b20u
YyBpcC5jIG1tYXB0aW1lLmMgaGVhcC5jIGVlZmlsZS5jDQogbGlidXRpbF9P
QkpTCT0gaGFzaC5vIGxpc3QubyBmcmVlbGlzdC5vIHRpbWV2YWwubyBsb2cu
byBlZmlsZS5vIFwNCiAJCSAgc3RydXRpbC5vIGZuYW1ldXRpbC5vIGRhdGVf
cmZjODIyLm8gc3RybWF0Y2gubyBzdHJzcGxpdC5vIFwNCi0JCSAgYXRvbS5v
IGlwLm8gbW1hcHRpbWUubyBoZWFwLm8NCisJCSAgYXRvbS5vIGlwLm8gbW1h
cHRpbWUubyBoZWFwLm8gZWVmaWxlLm8NCiANCiB1dGlsX3Rlc3Rlcl9QUk9H
ID0gdXRpbC10ZXN0ZXINCiANCkBAIC05NSw3ICs5NSw3IEBADQogCQkkKEVU
QUdTKSAtdCAkKFNSQ1MpDQogDQogY2xlYW46CQkNCi0JCXJtIC1mICQoT0JK
UykgbGlidXRpbC5hICp+ICoubyBjb3JlDQorCQlybSAtZiAkKE9CSlMpIGxp
YnV0aWwuYSAqfiAqLm8gY29yZSBoZWFwdGVzdCBtbWFwdGltZV90ZXN0IHV0
aWwtdGVzdGVyDQogDQogbW9zdGx5Y2xlYW46CWNsZWFuDQogDQpkaWZmIC11
ck4gYXJsYS0wLjIyL3V0aWwvZWVmaWxlLmMgYXJsYS0wLjIyLnlkci91dGls
L2VlZmlsZS5jDQotLS0gYXJsYS0wLjIyL3V0aWwvZWVmaWxlLmMJV2VkIERl
YyAzMSAxOTowMDowMCAxOTY5DQorKysgYXJsYS0wLjIyLnlkci91dGlsL2Vl
ZmlsZS5jCVNhdCBGZWIgMjcgMDQ6MDk6MzAgMTk5OQ0KQEAgLTAsMCArMSwx
MTIgQEANCisvKg0KKyAqIENvcHlyaWdodCAoYykgMTk5NSwgMTk5NiwgMTk5
NyBLdW5nbGlnYSBUZWtuaXNrYSBI9mdza29sYW4NCisgKiAoUm95YWwgSW5z
dGl0dXRlIG9mIFRlY2hub2xvZ3ksIFN0b2NraG9sbSwgU3dlZGVuKS4NCisg
KiBBbGwgcmlnaHRzIHJlc2VydmVkLg0KKyAqIA0KKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dA0KKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucw0KKyAqIGFy
ZSBtZXQ6DQorICogDQorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQNCisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuDQorICogDQorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQNCisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlDQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4NCisgKiANCisgKiAzLiBBbGwg
YWR2ZXJ0aXNpbmcgbWF0ZXJpYWxzIG1lbnRpb25pbmcgZmVhdHVyZXMgb3Ig
dXNlIG9mIHRoaXMgc29mdHdhcmUNCisgKiAgICBtdXN0IGRpc3BsYXkgdGhl
IGZvbGxvd2luZyBhY2tub3dsZWRnZW1lbnQ6DQorICogICAgICBUaGlzIHBy
b2R1Y3QgaW5jbHVkZXMgc29mdHdhcmUgZGV2ZWxvcGVkIGJ5IHRoZSBLdW5n
bGlnYSBUZWtuaXNrYQ0KKyAqICAgICAgSPZnc2tvbGFuIGFuZCBpdHMgY29u
dHJpYnV0b3JzLg0KKyAqIA0KKyAqIDQuIE5laXRoZXIgdGhlIG5hbWUgb2Yg
dGhlIEluc3RpdHV0ZSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRv
cnMNCisgKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUg
cHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUNCisgKiAgICB3
aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4NCisg
KiANCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBJTlNU
SVRVVEUgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EDQorICogQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFDQorICogSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSIFBVUlBPU0UNCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBJTlNUSVRVVEUgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RQ0KKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMDQorICogREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMNCisgKiBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikNCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVA0K
KyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkNCisgKiBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GDQorICogU1VDSCBEQU1BR0UuDQorICovDQor
DQorLyoNCisgKg0KKyAqLw0KKw0KKyNpZmRlZiBIQVZFX0NPTkZJR19IDQor
I2luY2x1ZGUgPGNvbmZpZy5oPg0KK1JDU0lEKCIkSWQ6IGVlZmlsZS5jLHYg
MS40IDE5OTgvMDIvMjIgMTE6MjI6MTQgYXNzYXIgRXhwICQiKTsNCisjZW5k
aWYNCisNCisjaW5jbHVkZSA8c3RkaW8uaD4NCisjaW5jbHVkZSA8cm9rZW4u
aD4NCisjaW5jbHVkZSAiZWVmaWxlLmgiDQorDQordm9pZA0KK2VlZm9wZW4g
KGNoYXIgKm5hbWUsIGNoYXIgKm1vZGUsIGZpbGVibG9iICpmKQ0KK3sNCisg
ICAgIGludCBzdHJlYW1mZDsNCisNCisgICAgIGYtPmN1cm5hbWUgPSAoY2hh
ciAqKWVtYWxsb2Moc3RybGVuKG5hbWUpKzcpOw0KKyAgICAgc25wcmludGYo
Zi0+Y3VybmFtZSwgc3RybGVuKG5hbWUpKzcsICIlc1hYWFhYWCIsIG5hbWUp
Ow0KKyAgICAgc3RyZWFtZmQgPSBta3N0ZW1wKGYtPmN1cm5hbWUpOw0KKyAg
ICAgZi0+c3RyZWFtID0gZmRvcGVuIChzdHJlYW1mZCwgbW9kZSk7DQorICAg
ICBpZiAoZi0+c3RyZWFtID09IE5VTEwpIHsNCisJICBmcHJpbnRmIChzdGRl
cnIsICJDb3VsZCBub3Qgb3BlbiBmaWxlICVzIGluIG1vZGUgJXNcbiIsDQor
CQkgICBmLT5jdXJuYW1lLCBtb2RlKTsNCisJICBwZXJyb3IgKCJvcGVuIik7
DQorCSAgZXhpdCAoMSk7DQorICAgICB9DQorICAgICBmLT5uZXduYW1lID0g
c3RyZHVwKG5hbWUpOw0KKyAgICAgcmV0dXJuOw0KK30NCisNCit2b2lkDQor
ZWVmY2xvc2UgKGZpbGVibG9iICpmKQ0KK3sNCisgICAgIGlmIChmY2xvc2Ug
KGYtPnN0cmVhbSkpIHsNCisJICBmcHJpbnRmIChzdGRlcnIsICJQcm9ibGVt
cyBjbG9zaW5nIGEgZmlsZVxuIik7DQorCSAgcGVycm9yICgiY2xvc2UiKTsN
CisgICAgIH0NCisgICAgIGlmIChyZW5hbWUoZi0+Y3VybmFtZSwgZi0+bmV3
bmFtZSkpIHsNCisJICBmcHJpbnRmIChzdGRlcnIsICJQcm9ibGVtcyByZW5h
bWluZyBhIGZpbGVcbiIpOw0KKwkgIHBlcnJvciAoInJlbmFtZSIpOw0KKyAg
ICAgfQ0KKyAgICAgZnJlZShmLT5jdXJuYW1lKTsNCisgICAgIGZyZWUoZi0+
bmV3bmFtZSk7DQorfQ0KKw0KK3NpemVfdA0KK2VlZnJlYWQgKHZvaWQgKnB0
ciwgc2l6ZV90IHNpemUsIHNpemVfdCBuaXRlbXMsIGZpbGVibG9iICpmKQ0K
K3sNCisgICAgIHNpemVfdCByZXM7DQorDQorICAgICByZXMgPSBmcmVhZCAo
cHRyLCBzaXplLCBuaXRlbXMsIGYtPnN0cmVhbSk7DQorICAgICBpZiAocmVz
ID09IDApIHsNCisJICBmcHJpbnRmIChzdGRlcnIsICJFcnJvciByZWFkaW5n
XG4iKTsNCisJICBwZXJyb3IgKCJyZWFkIik7DQorCSAgZXhpdCAoMSk7DQor
ICAgICB9DQorICAgICByZXR1cm4gcmVzOw0KK30NCisNCitzaXplX3QNCitl
ZWZ3cml0ZSAoY29uc3Qgdm9pZCAqcHRyLCBzaXplX3Qgc2l6ZSwgc2l6ZV90
IG5pdGVtcywgZmlsZWJsb2IgKmYpDQorew0KKyAgICAgc2l6ZV90IHJlczsN
CisNCisgICAgIHJlcyA9IGZ3cml0ZSAocHRyLCBzaXplLCBuaXRlbXMsIGYt
PnN0cmVhbSk7DQorICAgICBpZiAocmVzID09IDApIHsNCisJICBmcHJpbnRm
IChzdGRlcnIsICJFcnJvciB3cml0aW5nXG4iKTsNCisJICBwZXJyb3IgKCJy
ZWFkIik7DQorCSAgZXhpdCAoMSk7DQorICAgICB9DQorICAgICByZXR1cm4g
cmVzOw0KK30NCmRpZmYgLXVyTiBhcmxhLTAuMjIvdXRpbC9lZWZpbGUuaCBh
cmxhLTAuMjIueWRyL3V0aWwvZWVmaWxlLmgNCi0tLSBhcmxhLTAuMjIvdXRp
bC9lZWZpbGUuaAlXZWQgRGVjIDMxIDE5OjAwOjAwIDE5NjkNCisrKyBhcmxh
LTAuMjIueWRyL3V0aWwvZWVmaWxlLmgJU2F0IEZlYiAyNyAwMzozNjo0OCAx
OTk5DQpAQCAtMCwwICsxLDU5IEBADQorLyoNCisgKiBDb3B5cmlnaHQgKGMp
IDE5OTUsIDE5OTYsIDE5OTcgS3VuZ2xpZ2EgVGVrbmlza2EgSPZnc2tvbGFu
DQorICogKFJveWFsIEluc3RpdHV0ZSBvZiBUZWNobm9sb2d5LCBTdG9ja2hv
bG0sIFN3ZWRlbikuDQorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4NCisgKiAN
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQNCisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMNCisgKiBhcmUgbWV0Og0KKyAqIA0KKyAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0DQorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLg0KKyAqIA0KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0DQorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQ0KKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uDQor
ICogDQorICogMy4gQWxsIGFkdmVydGlzaW5nIG1hdGVyaWFscyBtZW50aW9u
aW5nIGZlYXR1cmVzIG9yIHVzZSBvZiB0aGlzIHNvZnR3YXJlDQorICogICAg
bXVzdCBkaXNwbGF5IHRoZSBmb2xsb3dpbmcgYWNrbm93bGVkZ2VtZW50Og0K
KyAqICAgICAgVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVs
b3BlZCBieSB0aGUgS3VuZ2xpZ2EgVGVrbmlza2ENCisgKiAgICAgIEj2Z3Nr
b2xhbiBhbmQgaXRzIGNvbnRyaWJ1dG9ycy4NCisgKiANCisgKiA0LiBOZWl0
aGVyIHRoZSBuYW1lIG9mIHRoZSBJbnN0aXR1dGUgbm9yIHRoZSBuYW1lcyBv
ZiBpdHMgY29udHJpYnV0b3JzDQorICogICAgbWF5IGJlIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNv
ZnR3YXJlDQorICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVu
IHBlcm1pc3Npb24uDQorICogDQorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgSU5TVElUVVRFIEFORCBDT05UUklCVVRPUlMgYGBBUyBJ
UycnIEFORA0KKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQ0KKyAqIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFDQorICogQVJFIERJU0NMQUlN
RUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgSU5TVElUVVRFIE9SIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUNCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTA0KKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTDQorICog
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pDQorICogSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QNCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZDQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRg0KKyAqIFNVQ0gg
REFNQUdFLg0KKyAqLw0KKw0KKy8qICRJZDogZWVmaWxlLmgsdiAxLjIgMTk5
Ny8xMS8wOSAyMzo0ODo0NyBhc3NhciBFeHAgJCAqLw0KKw0KKyNpZm5kZWYg
X0VFRklMRV8NCisjZGVmaW5lIF9FRUZJTEVfDQorDQorI2luY2x1ZGUgPHN0
ZGlvLmg+DQorI2luY2x1ZGUgPHN0ZGxpYi5oPg0KKw0KK3N0cnVjdCBfZmls
ZWJsb2Igew0KKyAgRklMRSAqc3RyZWFtOw0KKyAgY2hhciAqY3VybmFtZTsN
CisgIGNoYXIgKm5ld25hbWU7DQorfTsNCisNCit0eXBlZGVmIHN0cnVjdCBf
ZmlsZWJsb2IgZmlsZWJsb2I7DQordm9pZCBlZWZvcGVuKGNoYXIgKm5hbWUs
IGNoYXIgKm1vZGUsIGZpbGVibG9iICpmKTsNCit2b2lkIGVlZmNsb3NlKGZp
bGVibG9iICopOw0KK3NpemVfdCBlZWZyZWFkICh2b2lkICpwdHIsIHNpemVf
dCBzaXplLCBzaXplX3Qgbml0ZW1zLCBmaWxlYmxvYiAqc3RyZWFtKTsNCitz
aXplX3QgZWVmd3JpdGUgKGNvbnN0IHZvaWQgKnB0ciwgc2l6ZV90IHNpemUs
IHNpemVfdCBuaXRlbXMsIGZpbGVibG9iICpzdHJlYW0pOw0KKw0KKyNlbmRp
ZiAvKiBfRUVGSUxFXyAqLw0KZGlmZiAtdXJOIGFybGEtMC4yMi95ZHIvbWFp
bi5jIGFybGEtMC4yMi55ZHIveWRyL21haW4uYw0KLS0tIGFybGEtMC4yMi95
ZHIvbWFpbi5jCVRodSBGZWIgMTggMDA6NDg6NTUgMTk5OQ0KKysrIGFybGEt
MC4yMi55ZHIveWRyL21haW4uYwlTYXQgRmViIDI3IDAzOjUxOjU0IDE5OTkN
CkBAIC0xMDksOCArMTA5LDggQEANCiAgICAgeXlpbiA9IHBvcGVuIChhcmcs
ICJyIik7DQogICAgIGZyZWUgKGFyZyk7DQogICAgIHJldCA9IHl5cGFyc2Ug
KCk7DQotICAgIGdlbmVyYXRlX3NlcnZlcl9zd2l0Y2ggKHNlcnZlcmZpbGUs
IHNlcnZlcmhkcmZpbGUpOw0KLSAgICBnZW5lcmF0ZV90Y3BkdW1wX3BhdGNo
ZXMgKHRkX2ZpbGUpOw0KKyAgICBnZW5lcmF0ZV9zZXJ2ZXJfc3dpdGNoIChz
ZXJ2ZXJmaWxlLT5zdHJlYW0sIHNlcnZlcmhkcmZpbGUtPnN0cmVhbSk7DQor
ICAgIGdlbmVyYXRlX3RjcGR1bXBfcGF0Y2hlcyAodGRfZmlsZS0+c3RyZWFt
KTsNCiAgICAgcGNsb3NlICh5eWluKTsNCiAgICAgY2xvc2VfZ2VuZXJhdG9y
IChmaWxlbmFtZSk7DQogICAgIHVubGluayAodG1wX2ZpbGVuYW1lKTsNCmRp
ZmYgLXVyTiBhcmxhLTAuMjIveWRyL291dHB1dC5jIGFybGEtMC4yMi55ZHIv
eWRyL291dHB1dC5jDQotLS0gYXJsYS0wLjIyL3lkci9vdXRwdXQuYwlGcmkg
RmViIDEyIDIzOjQzOjM3IDE5OTkNCisrKyBhcmxhLTAuMjIueWRyL3lkci9v
dXRwdXQuYwlTYXQgRmViIDI3IDA0OjA3OjIzIDE5OTkNCkBAIC00Myw3ICs0
Myw3IEBADQogDQogI2luY2x1ZGUgPHN0ZGlvLmg+DQogI2luY2x1ZGUgPGxp
c3QuaD4NCi0jaW5jbHVkZSA8ZWZpbGUuaD4NCisjaW5jbHVkZSA8ZWVmaWxl
Lmg+DQogI2luY2x1ZGUgPHN0cmluZy5oPg0KICNpbmNsdWRlIDxzdHJ1dGls
Lmg+DQogI2luY2x1ZGUgPHJva2VuLmg+DQpAQCAtNjMsNyArNjMsNyBAQA0K
ICAqIEZpbGUgaGFuZGxlcyBmb3IgdGhlIGdlbmVyYXRlZCBmaWxlcyB0aGVt
c2VsdmVzLg0KICAqLw0KIA0KLUZJTEUgKmhlYWRlcmZpbGUsDQorZmlsZWJs
b2IgKmhlYWRlcmZpbGUsDQogICAgICpjbGllbnRmaWxlLA0KICAgICAqc2Vy
dmVyZmlsZSwNCiAgICAgKmNsaWVudGhkcmZpbGUsDQpAQCAtNzEsNiArNzEs
MTQgQEANCiAgICAgKnRkX2ZpbGUsDQogICAgICp5ZHJmaWxlOw0KIA0KK2Zp
bGVibG9iIF9oZWFkZXJmaWxlLA0KKyAgICBfY2xpZW50ZmlsZSwNCisgICAg
X3NlcnZlcmZpbGUsDQorICAgIF9jbGllbnRoZHJmaWxlLA0KKyAgICBfc2Vy
dmVyaGRyZmlsZSwNCisgICAgX3RkX2ZpbGUsDQorICAgIF95ZHJmaWxlOw0K
Kw0KIGxvbmcgdG1wY250ID0gMDsNCiANCiAvKg0KQEAgLTE2NjMsNzggKzE2
NzEsODYgQEANCiANCiAgICAgIGZ1bmNfbGlzdCA9IGxpc3RuZXcgKCk7DQog
DQorICAgICBoZWFkZXJmaWxlID0gJl9oZWFkZXJmaWxlOw0KKyAgICAgY2xp
ZW50ZmlsZSA9ICZfY2xpZW50ZmlsZTsNCisgICAgIHNlcnZlcmZpbGUgPSAm
X3NlcnZlcmZpbGU7DQorICAgICBjbGllbnRoZHJmaWxlID0gJl9jbGllbnRo
ZHJmaWxlOw0KKyAgICAgc2VydmVyaGRyZmlsZSA9ICZfc2VydmVyaGRyZmls
ZTsNCisgICAgIHRkX2ZpbGUgPSAmX3RkX2ZpbGU7DQorICAgICB5ZHJmaWxl
ID0gJl95ZHJmaWxlOw0KKw0KICAgICAgdG1wID0gKGNoYXIgKillbWFsbG9j
IChzdHJsZW4gKGZpbGVuYW1lKSArIDE3KTsNCiAgICAgIHNwcmludGYgKHRt
cCwgIiVzLmgiLCBmaWxlbmFtZSk7DQotICAgICBoZWFkZXJmaWxlID0gZWZv
cGVuICh0bXAsICJ3Iik7DQorICAgICBlZWZvcGVuICh0bXAsICJ3IiwgaGVh
ZGVyZmlsZSk7DQogICAgICBmaWxldXBwciA9IHN0cmR1cCAoZmlsZW5hbWUp
Ow0KICAgICAgc3RydXByIChmaWxldXBwcik7DQotICAgICBmcHJpbnRmICho
ZWFkZXJmaWxlLCAiLyogR2VuZXJhdGVkIGZyb20gJXMueGcgKi9cbiIsIGZp
bGVuYW1lKTsNCi0gICAgIGZwcmludGYgKGhlYWRlcmZpbGUsICIjaWZuZGVm
IF8lc19cbiINCisgICAgIGZwcmludGYgKGhlYWRlcmZpbGUtPnN0cmVhbSwg
Ii8qIEdlbmVyYXRlZCBmcm9tICVzLnhnICovXG4iLCBmaWxlbmFtZSk7DQor
ICAgICBmcHJpbnRmIChoZWFkZXJmaWxlLT5zdHJlYW0sICIjaWZuZGVmIF8l
c19cbiINCiAJICAgICAgIiNkZWZpbmUgXyVzX1xuXG4iLCBmaWxldXBwciwg
ZmlsZXVwcHIpOw0KICAgICAgZnJlZSAoZmlsZXVwcHIpOw0KICAgICAgDQog
ICAgICBzcHJpbnRmICh0bXAsICIlcy55ZHIuYyIsIGZpbGVuYW1lKTsNCi0g
ICAgIHlkcmZpbGUgPSBlZm9wZW4gKHRtcCwgInciKTsNCi0gICAgIGZwcmlu
dGYgKHlkcmZpbGUsICIvKiBHZW5lcmF0ZWQgZnJvbSAlcy54ZyAqL1xuIiwg
ZmlsZW5hbWUpOw0KLSAgICAgZnByaW50ZiAoeWRyZmlsZSwgIiNpbmNsdWRl
IDwlcy5oPlxuXG4iLCBmaWxlbmFtZSk7DQotICAgICBmcHJpbnRmICh5ZHJm
aWxlLCAiI2luY2x1ZGUgPHN0ZGlvLmg+XG4iKTsNCi0gICAgIGZwcmludGYg
KHlkcmZpbGUsICIjaW5jbHVkZSA8c3RkbGliLmg+XG4iKTsNCi0gICAgIGZw
cmludGYgKHlkcmZpbGUsICIjaW5jbHVkZSA8c3lzL3R5cGVzLmg+XG4iKTsN
Ci0gICAgIGZwcmludGYgKHlkcmZpbGUsICIjaW5jbHVkZSA8bmV0aW5ldC9p
bi5oPlxuIik7DQotICAgICBmcHJpbnRmICh5ZHJmaWxlLCAiI2luY2x1ZGUg
PHJva2VuLmg+XG4iKTsNCi0gICAgIGZwcmludGYgKHlkcmZpbGUsICIjaWZu
ZGVmIEhBVkVfQkNPUFlcbiINCisgICAgIGVlZm9wZW4gKHRtcCwgInciLCB5
ZHJmaWxlKTsNCisgICAgIGZwcmludGYgKHlkcmZpbGUtPnN0cmVhbSwgIi8q
IEdlbmVyYXRlZCBmcm9tICVzLnhnICovXG4iLCBmaWxlbmFtZSk7DQorICAg
ICBmcHJpbnRmICh5ZHJmaWxlLT5zdHJlYW0sICIjaW5jbHVkZSA8JXMuaD5c
blxuIiwgZmlsZW5hbWUpOw0KKyAgICAgZnByaW50ZiAoeWRyZmlsZS0+c3Ry
ZWFtLCAiI2luY2x1ZGUgPHN0ZGlvLmg+XG4iKTsNCisgICAgIGZwcmludGYg
KHlkcmZpbGUtPnN0cmVhbSwgIiNpbmNsdWRlIDxzdGRsaWIuaD5cbiIpOw0K
KyAgICAgZnByaW50ZiAoeWRyZmlsZS0+c3RyZWFtLCAiI2luY2x1ZGUgPHN5
cy90eXBlcy5oPlxuIik7DQorICAgICBmcHJpbnRmICh5ZHJmaWxlLT5zdHJl
YW0sICIjaW5jbHVkZSA8bmV0aW5ldC9pbi5oPlxuIik7DQorICAgICBmcHJp
bnRmICh5ZHJmaWxlLT5zdHJlYW0sICIjaW5jbHVkZSA8cm9rZW4uaD5cbiIp
Ow0KKyAgICAgZnByaW50ZiAoeWRyZmlsZS0+c3RyZWFtLCAiI2lmbmRlZiBI
QVZFX0JDT1BZXG4iDQogCSAgICAgICIjZGVmaW5lIGJjb3B5KGEsYixjKSBt
ZW1jcHkoKGIpLChhKSwoYykpXG4iDQogCSAgICAgICIjZW5kaWYgLyogIUhB
VkVfQkNPUFkgKi9cblxuIik7DQotICAgICBmcHJpbnRmICh5ZHJmaWxlLCAi
I2lmZGVmIFJDU0lEXG4iDQorICAgICBmcHJpbnRmICh5ZHJmaWxlLT5zdHJl
YW0sICIjaWZkZWYgUkNTSURcbiINCiAJICAgICAgIlJDU0lEKFwiJXMgZ2Vu
ZXJhdGVkIGZyb20gJXMueGcgd2l0aCAkSWQ6IG91dHB1dC5jLHYgMS40NCAx
OTk5LzAyLzEzIDA0OjQzOjM3IGFzc2FyIEV4cCAkXCIpO1xuIg0KIAkgICAg
ICAiI2VuZGlmXG5cbiIsIHRtcCwgZmlsZW5hbWUpOw0KIA0KICAgICAgc3By
aW50ZiAodG1wLCAiJXMuY3MuYyIsIGZpbGVuYW1lKTsNCi0gICAgIGNsaWVu
dGZpbGUgPSBlZm9wZW4gKHRtcCwgInciKTsNCi0gICAgIGZwcmludGYgKGNs
aWVudGZpbGUsICIvKiBHZW5lcmF0ZWQgZnJvbSAlcy54ZyAqL1xuIiwgZmls
ZW5hbWUpOw0KLSAgICAgZnByaW50ZiAoY2xpZW50ZmlsZSwgIiNpbmNsdWRl
IFwiJXMuaFwiXG5cbiIsIGZpbGVuYW1lKTsNCi0gICAgIGZwcmludGYgKGNs
aWVudGZpbGUsICIjaW5jbHVkZSBcIiVzLmNzLmhcIlxuXG4iLCBmaWxlbmFt
ZSk7DQotICAgICBmcHJpbnRmIChjbGllbnRmaWxlLCAiI2luY2x1ZGUgPHN0
ZGlvLmg+XG4iKTsNCi0gICAgIGZwcmludGYgKGNsaWVudGZpbGUsICIjaW5j
bHVkZSA8c3RkbGliLmg+XG4iKTsNCi0gICAgIGZwcmludGYgKGNsaWVudGZp
bGUsICIjaW5jbHVkZSA8c3lzL3R5cGVzLmg+XG4iKTsNCi0gICAgIGZwcmlu
dGYgKGNsaWVudGZpbGUsICIjaW5jbHVkZSA8bmV0aW5ldC9pbi5oPlxuIik7
DQotICAgICBmcHJpbnRmIChjbGllbnRmaWxlLCAiI2luY2x1ZGUgPHJva2Vu
Lmg+XG4iKTsNCi0gICAgIGZwcmludGYgKGNsaWVudGZpbGUsICIjaW5jbHVk
ZSA8YXJsYWQvZnNfZXJyb3JzLmg+XG4iKTsNCi0gICAgIGZwcmludGYgKGNs
aWVudGZpbGUsICIjaWZuZGVmIEhBVkVfQkNPUFlcbiINCisgICAgIGVlZm9w
ZW4gKHRtcCwgInciLCBjbGllbnRmaWxlKTsNCisgICAgIGZwcmludGYgKGNs
aWVudGZpbGUtPnN0cmVhbSwgIi8qIEdlbmVyYXRlZCBmcm9tICVzLnhnICov
XG4iLCBmaWxlbmFtZSk7DQorICAgICBmcHJpbnRmIChjbGllbnRmaWxlLT5z
dHJlYW0sICIjaW5jbHVkZSBcIiVzLmhcIlxuXG4iLCBmaWxlbmFtZSk7DQor
ICAgICBmcHJpbnRmIChjbGllbnRmaWxlLT5zdHJlYW0sICIjaW5jbHVkZSBc
IiVzLmNzLmhcIlxuXG4iLCBmaWxlbmFtZSk7DQorICAgICBmcHJpbnRmIChj
bGllbnRmaWxlLT5zdHJlYW0sICIjaW5jbHVkZSA8c3RkaW8uaD5cbiIpOw0K
KyAgICAgZnByaW50ZiAoY2xpZW50ZmlsZS0+c3RyZWFtLCAiI2luY2x1ZGUg
PHN0ZGxpYi5oPlxuIik7DQorICAgICBmcHJpbnRmIChjbGllbnRmaWxlLT5z
dHJlYW0sICIjaW5jbHVkZSA8c3lzL3R5cGVzLmg+XG4iKTsNCisgICAgIGZw
cmludGYgKGNsaWVudGZpbGUtPnN0cmVhbSwgIiNpbmNsdWRlIDxuZXRpbmV0
L2luLmg+XG4iKTsNCisgICAgIGZwcmludGYgKGNsaWVudGZpbGUtPnN0cmVh
bSwgIiNpbmNsdWRlIDxyb2tlbi5oPlxuIik7DQorICAgICBmcHJpbnRmIChj
bGllbnRmaWxlLT5zdHJlYW0sICIjaW5jbHVkZSA8YXJsYWQvZnNfZXJyb3Jz
Lmg+XG4iKTsNCisgICAgIGZwcmludGYgKGNsaWVudGZpbGUtPnN0cmVhbSwg
IiNpZm5kZWYgSEFWRV9CQ09QWVxuIg0KIAkgICAgICAiI2RlZmluZSBiY29w
eShhLGIsYykgbWVtY3B5KChiKSwoYSksKGMpKVxuIg0KIAkgICAgICAiI2Vu
ZGlmIC8qICFIQVZFX0JDT1BZICovXG5cbiIpOw0KLSAgICAgZnByaW50ZiAo
Y2xpZW50ZmlsZSwgIiNpZmRlZiBSQ1NJRFxuIg0KKyAgICAgZnByaW50ZiAo
Y2xpZW50ZmlsZS0+c3RyZWFtLCAiI2lmZGVmIFJDU0lEXG4iDQogCSAgICAg
ICJSQ1NJRChcIiVzIGdlbmVyYXRlZCBmcm9tICVzLnhnIHdpdGggJElkOiBv
dXRwdXQuYyx2IDEuNDQgMTk5OS8wMi8xMyAwNDo0MzozNyBhc3NhciBFeHAg
JFwiKTtcbiINCiAJICAgICAgIiNlbmRpZlxuXG4iLCB0bXAsIGZpbGVuYW1l
KTsNCiANCiAgICAgIHNwcmludGYgKHRtcCwgIiVzLnNzLmMiLCBmaWxlbmFt
ZSk7DQotICAgICBzZXJ2ZXJmaWxlID0gZWZvcGVuICh0bXAsICJ3Iik7DQot
ICAgICBmcHJpbnRmIChzZXJ2ZXJmaWxlLCAiLyogR2VuZXJhdGVkIGZyb20g
JXMueGcgKi9cbiIsIGZpbGVuYW1lKTsNCi0gICAgIGZwcmludGYgKHNlcnZl
cmZpbGUsICIjaW5jbHVkZSBcIiVzLmhcIlxuXG4iLCBmaWxlbmFtZSk7DQot
ICAgICBmcHJpbnRmIChzZXJ2ZXJmaWxlLCAiI2luY2x1ZGUgXCIlcy5zcy5o
XCJcblxuIiwgZmlsZW5hbWUpOw0KLSAgICAgZnByaW50ZiAoc2VydmVyZmls
ZSwgIiNpbmNsdWRlIDxzdGRpby5oPlxuIik7DQotICAgICBmcHJpbnRmIChz
ZXJ2ZXJmaWxlLCAiI2luY2x1ZGUgPHN0ZGxpYi5oPlxuIik7DQotICAgICBm
cHJpbnRmIChzZXJ2ZXJmaWxlLCAiI2luY2x1ZGUgPHN5cy90eXBlcy5oPlxu
Iik7DQotICAgICBmcHJpbnRmIChzZXJ2ZXJmaWxlLCAiI2luY2x1ZGUgPG5l
dGluZXQvaW4uaD5cbiIpOw0KLSAgICAgZnByaW50ZiAoc2VydmVyZmlsZSwg
IiNpbmNsdWRlIDxyb2tlbi5oPlxuIik7DQotICAgICBmcHJpbnRmIChzZXJ2
ZXJmaWxlLCAiI2lmbmRlZiBIQVZFX0JDT1BZXG4iDQorICAgICBlZWZvcGVu
ICh0bXAsICJ3Iiwgc2VydmVyZmlsZSk7DQorICAgICBmcHJpbnRmIChzZXJ2
ZXJmaWxlLT5zdHJlYW0sICIvKiBHZW5lcmF0ZWQgZnJvbSAlcy54ZyAqL1xu
IiwgZmlsZW5hbWUpOw0KKyAgICAgZnByaW50ZiAoc2VydmVyZmlsZS0+c3Ry
ZWFtLCAiI2luY2x1ZGUgXCIlcy5oXCJcblxuIiwgZmlsZW5hbWUpOw0KKyAg
ICAgZnByaW50ZiAoc2VydmVyZmlsZS0+c3RyZWFtLCAiI2luY2x1ZGUgXCIl
cy5zcy5oXCJcblxuIiwgZmlsZW5hbWUpOw0KKyAgICAgZnByaW50ZiAoc2Vy
dmVyZmlsZS0+c3RyZWFtLCAiI2luY2x1ZGUgPHN0ZGlvLmg+XG4iKTsNCisg
ICAgIGZwcmludGYgKHNlcnZlcmZpbGUtPnN0cmVhbSwgIiNpbmNsdWRlIDxz
dGRsaWIuaD5cbiIpOw0KKyAgICAgZnByaW50ZiAoc2VydmVyZmlsZS0+c3Ry
ZWFtLCAiI2luY2x1ZGUgPHN5cy90eXBlcy5oPlxuIik7DQorICAgICBmcHJp
bnRmIChzZXJ2ZXJmaWxlLT5zdHJlYW0sICIjaW5jbHVkZSA8bmV0aW5ldC9p
bi5oPlxuIik7DQorICAgICBmcHJpbnRmIChzZXJ2ZXJmaWxlLT5zdHJlYW0s
ICIjaW5jbHVkZSA8cm9rZW4uaD5cbiIpOw0KKyAgICAgZnByaW50ZiAoc2Vy
dmVyZmlsZS0+c3RyZWFtLCAiI2lmbmRlZiBIQVZFX0JDT1BZXG4iDQogCSAg
ICAgICIjZGVmaW5lIGJjb3B5KGEsYixjKSBtZW1jcHkoKGIpLChhKSwoYykp
XG4iDQogCSAgICAgICIjZW5kaWYgLyogIUhBVkVfQkNPUFkgKi9cblxuIik7
DQotICAgICBmcHJpbnRmIChzZXJ2ZXJmaWxlLCAiI2lmZGVmIFJDU0lEXG4i
DQorICAgICBmcHJpbnRmIChzZXJ2ZXJmaWxlLT5zdHJlYW0sICIjaWZkZWYg
UkNTSURcbiINCiAJICAgICAgIlJDU0lEKFwiJXMgZ2VuZXJhdGVkIGZyb20g
JXMueGcgd2l0aCAkSWQ6IG91dHB1dC5jLHYgMS40NCAxOTk5LzAyLzEzIDA0
OjQzOjM3IGFzc2FyIEV4cCAkXCIpO1xuIg0KIAkgICAgICAiI2VuZGlmXG5c
biIsIHRtcCwgZmlsZW5hbWUpOw0KIA0KICAgICAgc3ByaW50ZiAodG1wLCAi
JXMuY3MuaCIsIGZpbGVuYW1lKTsNCi0gICAgIGNsaWVudGhkcmZpbGUgPSBl
Zm9wZW4gKHRtcCwgInciKTsNCi0gICAgIGZwcmludGYgKGNsaWVudGhkcmZp
bGUsICIvKiBHZW5lcmF0ZWQgZnJvbSAlcy54ZyAqL1xuIiwgZmlsZW5hbWUp
Ow0KKyAgICAgZWVmb3BlbiAodG1wLCAidyIsIGNsaWVudGhkcmZpbGUpOw0K
KyAgICAgZnByaW50ZiAoY2xpZW50aGRyZmlsZS0+c3RyZWFtLCAiLyogR2Vu
ZXJhdGVkIGZyb20gJXMueGcgKi9cbiIsIGZpbGVuYW1lKTsNCiANCiAgICAg
IHNwcmludGYgKHRtcCwgIiVzLnNzLmgiLCBmaWxlbmFtZSk7DQotICAgICBz
ZXJ2ZXJoZHJmaWxlID0gZWZvcGVuICh0bXAsICJ3Iik7DQotICAgICBmcHJp
bnRmIChzZXJ2ZXJoZHJmaWxlLCAiLyogR2VuZXJhdGVkIGZyb20gJXMueGcg
Ki9cbiIsIGZpbGVuYW1lKTsNCi0gICAgIGZwcmludGYgKHNlcnZlcmhkcmZp
bGUsICIjaW5jbHVkZSA8cngvcnguaD5cbiIpOw0KKyAgICAgZWVmb3BlbiAo
dG1wLCAidyIsIHNlcnZlcmhkcmZpbGUpOw0KKyAgICAgZnByaW50ZiAoc2Vy
dmVyaGRyZmlsZS0+c3RyZWFtLCAiLyogR2VuZXJhdGVkIGZyb20gJXMueGcg
Ki9cbiIsIGZpbGVuYW1lKTsNCisgICAgIGZwcmludGYgKHNlcnZlcmhkcmZp
bGUtPnN0cmVhbSwgIiNpbmNsdWRlIDxyeC9yeC5oPlxuIik7DQogDQogICAg
ICBzcHJpbnRmICh0bXAsICIlcy50ZC5jIiwgZmlsZW5hbWUpOw0KLSAgICAg
dGRfZmlsZSA9IGVmb3BlbiAodG1wLCAidyIpOw0KKyAgICAgZWVmb3BlbiAo
dG1wLCAidyIsIHRkX2ZpbGUpOw0KIA0KICAgICAgZnJlZSAodG1wKTsNCiB9
DQpAQCAtMTc0NSwxMyArMTc2MSwxNCBAQA0KICAgICAgY2hhciAqZmlsZXVw
ciA9IHN0cmR1cCAoZmlsZW5hbWUpOw0KIAkgIA0KICAgICAgc3RydXByIChm
aWxldXByKTsNCi0gICAgIGZwcmludGYgKGhlYWRlcmZpbGUsICJcbiNlbmRp
ZiAvKiAlcyAqL1xuIiwgZmlsZXVwcik7DQotICAgICBlZmNsb3NlIChoZWFk
ZXJmaWxlKTsNCi0gICAgIGVmY2xvc2UgKGNsaWVudGZpbGUpOw0KLSAgICAg
ZWZjbG9zZSAoc2VydmVyZmlsZSk7DQotICAgICBlZmNsb3NlIChjbGllbnRo
ZHJmaWxlKTsNCi0gICAgIGVmY2xvc2UgKHNlcnZlcmhkcmZpbGUpOw0KLSAg
ICAgZWZjbG9zZSAoeWRyZmlsZSk7DQorICAgICBmcHJpbnRmIChoZWFkZXJm
aWxlLT5zdHJlYW0sICJcbiNlbmRpZiAvKiAlcyAqL1xuIiwgZmlsZXVwcik7
DQorICAgICBlZWZjbG9zZSAoaGVhZGVyZmlsZSk7DQorICAgICBlZWZjbG9z
ZSAoY2xpZW50ZmlsZSk7DQorICAgICBlZWZjbG9zZSAoc2VydmVyZmlsZSk7
DQorICAgICBlZWZjbG9zZSAoY2xpZW50aGRyZmlsZSk7DQorICAgICBlZWZj
bG9zZSAoc2VydmVyaGRyZmlsZSk7DQorICAgICBlZWZjbG9zZSAoeWRyZmls
ZSk7DQorICAgICBlZWZjbG9zZSAodGRfZmlsZSk7DQogfQ0KIA0KIC8qDQpk
aWZmIC11ck4gYXJsYS0wLjIyL3lkci9vdXRwdXQuaCBhcmxhLTAuMjIueWRy
L3lkci9vdXRwdXQuaA0KLS0tIGFybGEtMC4yMi95ZHIvb3V0cHV0LmgJU3Vu
IERlYyAxMyAxMTo1MjoxMiAxOTk4DQorKysgYXJsYS0wLjIyLnlkci95ZHIv
b3V0cHV0LmgJU2F0IEZlYiAyNyAwMzo1ODoxNCAxOTk5DQpAQCAtNDMsNiAr
NDMsOCBAQA0KIA0KICNpbmNsdWRlIDxzdGRpby5oPg0KICNpbmNsdWRlIDxi
b29sLmg+DQorLyogRm9yIGZpbGVibG9iICovDQorI2luY2x1ZGUgImVlZmls
ZS5oIg0KIA0KIHZvaWQgZ2VuZXJhdGVfaGVhZGVyIChTeW1ib2wgKnMsIEZJ
TEUgKmYpOw0KIHZvaWQgZ2VuZXJhdGVfc2l6ZW9mIChTeW1ib2wgKnMsIEZJ
TEUgKmYpOw0KQEAgLTYwLDcgKzYyLDcgQEANCiANCiBleHRlcm4gY2hhciAq
cGFja2FnZTsNCiANCi1leHRlcm4gRklMRSAqaGVhZGVyZmlsZSwgKmNsaWVu
dGZpbGUsICpzZXJ2ZXJmaWxlLCAqY2xpZW50aGRyZmlsZSwNCitleHRlcm4g
ZmlsZWJsb2IgKmhlYWRlcmZpbGUsICpjbGllbnRmaWxlLCAqc2VydmVyZmls
ZSwgKmNsaWVudGhkcmZpbGUsDQogICAgICpzZXJ2ZXJoZHJmaWxlLCAqeWRy
ZmlsZSwgKnRkX2ZpbGU7DQogDQogZXh0ZXJuIGNoYXIgKmVycm9yX2Z1bmN0
aW9uOw0KZGlmZiAtdXJOIGFybGEtMC4yMi95ZHIvcGFyc2UueSBhcmxhLTAu
MjIueWRyL3lkci9wYXJzZS55DQotLS0gYXJsYS0wLjIyL3lkci9wYXJzZS55
CUZyaSBGZWIgMTIgMjM6NDI6MDUgMTk5OQ0KKysrIGFybGEtMC4yMi55ZHIv
eWRyL3BhcnNlLnkJU2F0IEZlYiAyNyAwMzo1MTowNCAxOTk5DQpAQCAtOTQs
MTkgKzk0LDE5IEBADQogCQk7DQogDQogZGVjbGFyYXRpb246CXR5cGVfZGVj
bCB7IA0KLSAgICAgCQkgICAgIGdlbmVyYXRlX2hlYWRlciAoJDEsIGhlYWRl
cmZpbGUpOw0KLQkJICAgICBnZW5lcmF0ZV9zaXplb2YgKCQxLCBoZWFkZXJm
aWxlKTsNCi0JCSAgICAgZ2VuZXJhdGVfZnVuY3Rpb24gKCQxLCB5ZHJmaWxl
LCBUUlVFKTsNCi0JCSAgICAgZ2VuZXJhdGVfZnVuY3Rpb25fcHJvdG90eXBl
ICgkMSwgaGVhZGVyZmlsZSwgVFJVRSk7DQotCQkgICAgIGdlbmVyYXRlX2Z1
bmN0aW9uICgkMSwgeWRyZmlsZSwgRkFMU0UpOw0KLQkJICAgICBnZW5lcmF0
ZV9mdW5jdGlvbl9wcm90b3R5cGUgKCQxLCBoZWFkZXJmaWxlLCBGQUxTRSk7
DQotCQkgICAgIGdlbmVyYXRlX3ByaW50ZnVuY3Rpb24gKCQxLCB5ZHJmaWxl
KTsNCi0JCSAgICAgZ2VuZXJhdGVfcHJpbnRmdW5jdGlvbl9wcm90b3R5cGUg
KCQxLCBoZWFkZXJmaWxlKTsNCisgICAgIAkJICAgICBnZW5lcmF0ZV9oZWFk
ZXIgKCQxLCBoZWFkZXJmaWxlLT5zdHJlYW0pOw0KKwkJICAgICBnZW5lcmF0
ZV9zaXplb2YgKCQxLCBoZWFkZXJmaWxlLT5zdHJlYW0pOw0KKwkJICAgICBn
ZW5lcmF0ZV9mdW5jdGlvbiAoJDEsIHlkcmZpbGUtPnN0cmVhbSwgVFJVRSk7
DQorCQkgICAgIGdlbmVyYXRlX2Z1bmN0aW9uX3Byb3RvdHlwZSAoJDEsIGhl
YWRlcmZpbGUtPnN0cmVhbSwgVFJVRSk7DQorCQkgICAgIGdlbmVyYXRlX2Z1
bmN0aW9uICgkMSwgeWRyZmlsZS0+c3RyZWFtLCBGQUxTRSk7DQorCQkgICAg
IGdlbmVyYXRlX2Z1bmN0aW9uX3Byb3RvdHlwZSAoJDEsIGhlYWRlcmZpbGUt
PnN0cmVhbSwgRkFMU0UpOw0KKwkJICAgICBnZW5lcmF0ZV9wcmludGZ1bmN0
aW9uICgkMSwgeWRyZmlsZS0+c3RyZWFtKTsNCisJCSAgICAgZ2VuZXJhdGVf
cHJpbnRmdW5jdGlvbl9wcm90b3R5cGUgKCQxLCBoZWFkZXJmaWxlLT5zdHJl
YW0pOw0KIAkJfQ0KIAkJfCBwcm9jX2RlY2wgeyANCi0JCSAgICAgZ2VuZXJh
dGVfY2xpZW50X3N0dWIgKCQxLCBjbGllbnRmaWxlLCBjbGllbnRoZHJmaWxl
KTsNCi0JCSAgICAgZ2VuZXJhdGVfc2VydmVyX3N0dWIgKCQxLCBzZXJ2ZXJm
aWxlLCBzZXJ2ZXJoZHJmaWxlKTsNCi0JCSAgICAgZ2VuZXJhdGVfdGNwZHVt
cF9zdHViICgkMSwgdGRfZmlsZSk7DQorCQkgICAgIGdlbmVyYXRlX2NsaWVu
dF9zdHViICgkMSwgY2xpZW50ZmlsZS0+c3RyZWFtLCBjbGllbnRoZHJmaWxl
LT5zdHJlYW0pOw0KKwkJICAgICBnZW5lcmF0ZV9zZXJ2ZXJfc3R1YiAoJDEs
IHNlcnZlcmZpbGUtPnN0cmVhbSwgc2VydmVyaGRyZmlsZS0+c3RyZWFtKTsN
CisJCSAgICAgZ2VuZXJhdGVfdGNwZHVtcF9zdHViICgkMSwgdGRfZmlsZS0+
c3RyZWFtKTsNCiAJCX0NCiAJCTsNCiANCkBAIC0xNTcsNyArMTU3LDcgQEAN
CiBkaXJlY3RpdmU6CVRfUEFDS0FHRSBUX0lERU5USUZJRVINCiAJCXsgcGFj
a2FnZSA9ICQyOyB9DQogCQl8IFRfVkVSQkFUSU0NCi0JCXsgZnByaW50ZiAo
aGVhZGVyZmlsZSwgIiVzXG4iLCAkMSk7IH0NCisJCXsgZnByaW50ZiAoaGVh
ZGVyZmlsZS0+c3RyZWFtLCAiJXNcbiIsICQxKTsgfQ0KIAkJfCBUX0VSUk9S
X0ZVTkNUSU9OIFRfSURFTlRJRklFUg0KIAkJeyBlcnJvcl9mdW5jdGlvbiA9
ICQyOyB9DQogCQk7DQo=
---1710568419-297143971-920107582=:563--

home help back first fref pref prev next nref lref last post