ports/59442: [Maintainer-Update:] security/pf - build after ip_input.c#1.254
Max Laier
max at love2party.net
Wed Nov 19 09:30:21 UTC 2003
The following reply was made to PR ports/59442; it has been noted by GNATS.
From: Max Laier <max at love2party.net>
To: freebsd-gnats-submit at FreeBSD.org, max at love2party.net
Cc: Pyun YongHyeon <yongari at kt-is.co.kr>
Subject: Re: ports/59442: [Maintainer-Update:] security/pf - build after ip_input.c#1.254
Date: Wed, 19 Nov 2003 10:25:50 +0100
------------BE1361F82C6DB270
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
New diff with some additional nits from:
Pyun YongHyeon <yongari at kt-is.co.kr>:
patch-ac: Fix build on -CURRENT(__FreeBSD_version 501114)
Do not fragment a packet with hardware assistance if
it has the DF bit set.
patch-ad: Make pftcpdump's -w option work for pflog, pfsync interfaces.
Thanks.
--
Best regards,
Max mailto:max at love2party.net
------------BE1361F82C6DB270
Content-Type: application/octet-stream; name="pfil.diff"
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="pfil.diff"
SW5kZXg6IGNvbmYvZmlsZXMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2hvbWUvZGN2cy9z
cmMvc3lzL2NvbmYvZmlsZXMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMjgKZGlmZiAtdSAt
cjEuMjggZmlsZXMKLS0tIGNvbmYvZmlsZXMJMTQgTm92IDIwMDMgMjA6NTQ6MDYgLTAwMDAJ
MS4yOAorKysgY29uZi9maWxlcwkxNSBOb3YgMjAwMyAwNjowNDo0MCAtMDAwMApAQCAtODk2
LDYgKzg5Niw3IEBACiBuZXQvaWZfZmRkaXN1YnIuYwkJb3B0aW9uYWwgZmRkaQogbmV0L2dp
Zi9pZl9naWYuYwkJb3B0aW9uYWwgZ2lmCiBuZXQvZ3JlL2lmX2dyZS5jCQlvcHRpb25hbCBn
cmUKK25ldC9wZmlsLmMJCQlvcHRpb25hbCBwZmlsX2hvb2tzCiBuZXQvcHBwX2xheWVyL3Ns
Y29tcHJlc3MuYwlvcHRpb25hbCBuZXRncmFwaF92amMKIG5ldC9wcHBfbGF5ZXIvc2xjb21w
cmVzcy5jCW9wdGlvbmFsIHBwcAogbmV0L3BwcF9sYXllci9zbGNvbXByZXNzLmMJb3B0aW9u
YWwgc2wKSW5kZXg6IGNvbmYvb3B0aW9ucwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvaG9t
ZS9kY3ZzL3NyYy9zeXMvY29uZi9vcHRpb25zLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEw
CmRpZmYgLXUgLXIxLjEwIG9wdGlvbnMKLS0tIGNvbmYvb3B0aW9ucwkyNSBPY3QgMjAwMyAx
NzozNjoyMCAtMDAwMAkxLjEwCisrKyBjb25mL29wdGlvbnMJMTQgTm92IDIwMDMgMTQ6NTI6
MDkgLTAwMDAKQEAgLTI3OSw2ICsyNzksNyBAQAogSVBGSUxURVIJCW9wdF9pcGZpbHRlci5o
CiBJUEZJTFRFUl9MT0cJCW9wdF9pcGZpbHRlci5oCiBJUEZJTFRFUl9ERUZBVUxUX0JMT0NL
CW9wdF9pcGZpbHRlci5oCitQRklMX0hPT0tTCQlvcHRfcGZpbF9ob29rcy5oCiBJUEZJUkVX
QUxMCQlvcHRfaXBmdy5oCiBJUEZXMgkJCW9wdF9pcGZ3LmgKIElQRklSRVdBTExfVkVSQk9T
RQlvcHRfaXBmdy5oCkluZGV4OiBjb250cmliL2lwZmlsdGVyL25ldGluZXQvaXBfZmlsLmMK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2hvbWUvZGN2cy9zcmMvc3lzL2NvbnRyaWIvaXBm
aWx0ZXIvbmV0aW5ldC9pcF9maWwuYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS42CmRpZmYg
LXUgLXIxLjYgaXBfZmlsLmMKLS0tIGNvbnRyaWIvaXBmaWx0ZXIvbmV0aW5ldC9pcF9maWwu
YwkyNyBBdWcgMjAwMyAxMTowMjoxNCAtMDAwMAkxLjYKKysrIGNvbnRyaWIvaXBmaWx0ZXIv
bmV0aW5ldC9pcF9maWwuYwkxNSBOb3YgMjAwMyAwNjoyMTozOSAtMDAwMApAQCAtMTgsNiAr
MTgsOSBAQAogI2lmIGRlZmluZWQoX0tFUk5FTCkgJiYgZGVmaW5lZChfX0ZyZWVCU0RfdmVy
c2lvbikgJiYgXAogICAgIChfX0ZyZWVCU0RfdmVyc2lvbiA+PSA0MDAwMDApICYmICFkZWZp
bmVkKEtMRF9NT0RVTEUpCiAjaW5jbHVkZSAib3B0X2luZXQ2LmgiCisjaWYgZGVmaW5lZChf
X0RyYWdvbkZseV92ZXJzaW9uKSAmJiAoX19EcmFnb25GbHlfdmVyc2lvbiA+PSAxMDAwMDAp
CisjaW5jbHVkZSAib3B0X3BmaWxfaG9va3MuaCIKKyNlbmRpZgogI2VuZGlmCiAjaW5jbHVk
ZSA8c3lzL3BhcmFtLmg+CiAjaWYgZGVmaW5lZChfX05ldEJTRF9fKSAmJiAoTmV0QlNEID49
IDE5OTkwNSkgJiYgIWRlZmluZWQoSVBGSUxURVJfTEtNKSAmJiBcCkBAIC0yMjQsNyArMjI3
LDkgQEAKIH07CiAjZW5kaWYgLyogX0JTRElfVkVSU0lPTiA+PSAxOTk1MTAgICYmIF9LRVJO
RUwgKi8KIAotI2lmIGRlZmluZWQoX19OZXRCU0RfXykgfHwgZGVmaW5lZChfX09wZW5CU0Rf
XykgIHx8IChfQlNESV9WRVJTSU9OID49IDE5OTcwMSkKKyNpZiBkZWZpbmVkKF9fTmV0QlNE
X18pIHx8IGRlZmluZWQoX19PcGVuQlNEX18pICB8fCBcCisgICAgKF9CU0RJX1ZFUlNJT04g
Pj0gMTk5NzAxKSB8fCAoZGVmaW5lZChfX0RyYWdvbkZseV92ZXJzaW9uKSAmJiBcCisgICAg
KF9fRHJhZ29uRmx5X3ZlcnNpb24gPj0gMTAwMDAwKSkKICMgaW5jbHVkZSA8c3lzL2NvbmYu
aD4KICMgaWYgZGVmaW5lZChORVRCU0RfUEYpCiAjICBpbmNsdWRlIDxuZXQvcGZpbC5oPgpA
QCAtMzA2LDYgKzMxMSwyNyBAQAogfQogIyBlbmRpZgogI2VuZGlmIC8qIF9fTmV0QlNEX1Zl
cnNpb24gPj0gMTA1MTEwMDAwICYmIF9LRVJORUwgKi8KKyNpZiBkZWZpbmVkKF9fRHJhZ29u
Rmx5X3ZlcnNpb24pICYmIChfX0RyYWdvbkZseV92ZXJzaW9uID49IDEwMDAwMCkgJiYgXAor
ICAgIGRlZmluZWQoX0tFUk5FTCkKKworc3RhdGljIGludAorZnJfY2hlY2tfd3JhcHBlcih2
b2lkICphcmcsIHN0cnVjdCBtYnVmICoqbXAsIHN0cnVjdCBpZm5ldCAqaWZwLCBpbnQgZGly
KQoreworCXN0cnVjdCBpcCAqaXAgPSBtdG9kKCptcCwgc3RydWN0IGlwICopOworCXJldHVy
biBmcl9jaGVjayhpcCwgaXAtPmlwX2hsIDw8IDIsIGlmcCwgKGRpciA9PSBQRklMX09VVCks
IG1wKTsKK30KKworIyBpZmRlZiBVU0VfSU5FVDYKKyMgIGluY2x1ZGUgPG5ldGluZXQvaXA2
Lmg+CisKK3N0YXRpYyBpbnQKK2ZyX2NoZWNrX3dyYXBwZXI2KHZvaWQgKmFyZywgc3RydWN0
IG1idWYgKiptcCwgc3RydWN0IGlmbmV0ICppZnAsIGludCBkaXIpCit7CisJcmV0dXJuIChm
cl9jaGVjayhtdG9kKCptcCwgc3RydWN0IGlwICopLCBzaXplb2Yoc3RydWN0IGlwNl9oZHIp
LAorCSAgICBpZnAsIChkaXIgPT0gUEZJTF9PVVQpLCBtcCkpOworfQorIyBlbmRpZiAvKiBV
U0VfSU5FVDYgKi8KKyNlbmRpZiAvKiBfX0RyYWdvbkZseV92ZXJzaW9uID49IDEwMDAwMCAm
JiBfS0VSTkVMICovCiAjaWZkZWYJX0tFUk5FTAogIyBpZglkZWZpbmVkKElQRklMVEVSX0xL
TSkgJiYgIWRlZmluZWQoX19zZ2kpCiBpbnQgaXBsaWRlbnRpZnkocykKQEAgLTM0MywxMCAr
MzY5LDEzIEBACiB7CiAJY2hhciAqZGVmcGFzczsKIAlpbnQgczsKLSMgaWYgZGVmaW5lZChf
X3NnaSkgfHwgKGRlZmluZWQoTkVUQlNEX1BGKSAmJiAoX19OZXRCU0RfVmVyc2lvbl9fID49
IDEwNDIwMDAwMCkpCisjIGlmIGRlZmluZWQoX19zZ2kpIHx8IChkZWZpbmVkKE5FVEJTRF9Q
RikgJiYgXAorICAgICAoX19OZXRCU0RfVmVyc2lvbl9fID49IDEwNDIwMDAwMCkpIHx8IFwK
KyAgICAgKGRlZmluZWQoX19EcmFnb25GbHlfdmVyc2lvbikgJiYgKF9fRHJhZ29uRmx5X3Zl
cnNpb24gPj0gMTAwMDAwKSkKIAlpbnQgZXJyb3IgPSAwOwogIyBlbmRpZgotI2lmIGRlZmlu
ZWQoX19OZXRCU0RfVmVyc2lvbl9fKSAmJiAoX19OZXRCU0RfVmVyc2lvbl9fID49IDEwNTEx
MDAwMCkKKyNpZiAoZGVmaW5lZChfX05ldEJTRF9WZXJzaW9uX18pICYmIChfX05ldEJTRF9W
ZXJzaW9uX18gPj0gMTA1MTEwMDAwKSkgfHwgXAorICAgIChkZWZpbmVkKF9fRHJhZ29uRmx5
X3ZlcnNpb24pICYmIChfX0RyYWdvbkZseV92ZXJzaW9uID49IDEwMDAwMCkpCiAJc3RydWN0
IHBmaWxfaGVhZCAqcGhfaW5ldDsKICMgaWZkZWYgVVNFX0lORVQ2CiAJc3RydWN0IHBmaWxf
aGVhZCAqcGhfaW5ldDY7CkBAIC0zNzcsOCArNDA2LDkgQEAKIAl9CiAKICMgaWZkZWYgTkVU
QlNEX1BGCi0jICBpZiAoX19OZXRCU0RfVmVyc2lvbl9fID49IDEwNDIwMDAwMCkgfHwgKF9f
RnJlZUJTRF92ZXJzaW9uID49IDUwMDAxMSkKLSMgICBpZiBfX05ldEJTRF9WZXJzaW9uX18g
Pj0gMTA1MTEwMDAwCisjICBpZiAoX19OZXRCU0RfVmVyc2lvbl9fID49IDEwNDIwMDAwMCkg
fHwgKF9fRnJlZUJTRF92ZXJzaW9uID49IDUwMDAxMSkgfHwgXAorICAgICAgKGRlZmluZWQo
X19EcmFnb25GbHlfdmVyc2lvbikgJiYgKF9fRHJhZ29uRmx5X3ZlcnNpb24gPj0gMTAwMDAw
KSkKKyMgICBpZiAoX19OZXRCU0RfVmVyc2lvbl9fID49IDEwNTExMDAwMCkgfHwgKF9fRHJh
Z29uRmx5X3ZlcnNpb24gPj0gMTAwMDAwKQogCXBoX2luZXQgPSBwZmlsX2hlYWRfZ2V0KFBG
SUxfVFlQRV9BRiwgQUZfSU5FVCk7CiAjICAgIGlmZGVmIFVTRV9JTkVUNgogCXBoX2luZXQ2
ID0gcGZpbF9oZWFkX2dldChQRklMX1RZUEVfQUYsIEFGX0lORVQ2KTsKQEAgLTQxNCw3ICs0
NDQsNyBAQAogCXBmaWxfYWRkX2hvb2soKHZvaWQgKilmcl9jaGVjaywgUEZJTF9JTnxQRklM
X09VVCk7CiAjICBlbmRpZgogIyAgaWZkZWYgVVNFX0lORVQ2Ci0jICAgaWYgX19OZXRCU0Rf
VmVyc2lvbl9fID49IDEwNTExMDAwMAorIyAgIGlmIChfX05ldEJTRF9WZXJzaW9uX18gPj0g
MTA1MTEwMDAwKSB8fCAoX19EcmFnb25GbHlfdmVyc2lvbiA+PSAxMDAwMDApCiAJaWYgKHBo
X2luZXQ2ICE9IE5VTEwpCiAJCWVycm9yID0gcGZpbF9hZGRfaG9vaygodm9pZCAqKWZyX2No
ZWNrX3dyYXBwZXI2LCBOVUxMLAogCQkJCSAgICAgIFBGSUxfSU58UEZJTF9PVVQsIHBoX2lu
ZXQ2KTsKQEAgLTUwNCw5ICs1MzQsMTAgQEAKIHsKIAlpbnQgcywgaTsKICNpZiBkZWZpbmVk
KE5FVEJTRF9QRikgJiYgXAotICAgICgoX19OZXRCU0RfVmVyc2lvbl9fID49IDEwNDIwMDAw
MCkgfHwgKF9fRnJlZUJTRF92ZXJzaW9uID49IDUwMDAxMSkpCisgICAgKChfX05ldEJTRF9W
ZXJzaW9uX18gPj0gMTA0MjAwMDAwKSB8fCAoX19GcmVlQlNEX3ZlcnNpb24gPj0gNTAwMDEx
KSB8fCBcCisgICAgIChkZWZpbmVkKF9fRHJhZ29uRmx5X3ZlcnNpb24pICYmIChfX0RyYWdv
bkZseV92ZXJzaW9uID49IDEwMDAwMCkpKQogCWludCBlcnJvciA9IDA7Ci0jIGlmIF9fTmV0
QlNEX1ZlcnNpb25fXyA+PSAxMDUxNTAwMDAKKyMgaWYgKF9fTmV0QlNEX1ZlcnNpb25fXyA+
PSAxMDUxNTAwMDApIHx8IChfX0RyYWdvbkZseV92ZXJzaW9uID49IDEwMDAwMCkKICAgICAg
ICAgc3RydWN0IHBmaWxfaGVhZCAqcGhfaW5ldCA9IHBmaWxfaGVhZF9nZXQoUEZJTF9UWVBF
X0FGLCBBRl9JTkVUKTsKICMgIGlmZGVmIFVTRV9JTkVUNgogICAgICAgICBzdHJ1Y3QgcGZp
bF9oZWFkICpwaF9pbmV0NiA9IHBmaWxfaGVhZF9nZXQoUEZJTF9UWVBFX0FGLCBBRl9JTkVU
Nik7CkBAIC01NDksOCArNTgwLDkgQEAKIAlmcl9ydW5uaW5nID0gMDsKIAogIyBpZmRlZiBO
RVRCU0RfUEYKLSMgIGlmICgoX19OZXRCU0RfVmVyc2lvbl9fID49IDEwNDIwMDAwMCkgfHwg
KF9fRnJlZUJTRF92ZXJzaW9uID49IDUwMDAxMSkpCi0jICAgaWYgX19OZXRCU0RfVmVyc2lv
bl9fID49IDEwNTExMDAwMAorIyAgaWYgKChfX05ldEJTRF9WZXJzaW9uX18gPj0gMTA0MjAw
MDAwKSB8fCAoX19GcmVlQlNEX3ZlcnNpb24gPj0gNTAwMDExKSB8fCBcCisgICAgICAgKF9f
RHJhZ29uRmx5X3ZlcnNpb24gPj0gMTAwMDAwKSkKKyMgICBpZiAoX19OZXRCU0RfVmVyc2lv
bl9fID49IDEwNTExMDAwMCkgfHwgKF9fRHJhZ29uRmx5X3ZlcnNpb24gPj0gMTAwMDAwKQog
CWlmIChwaF9pbmV0ICE9IE5VTEwpCiAJCWVycm9yID0gcGZpbF9yZW1vdmVfaG9vaygodm9p
ZCAqKWZyX2NoZWNrX3dyYXBwZXIsIE5VTEwsCiAJCQkJCSBQRklMX0lOfFBGSUxfT1VULCBw
aF9pbmV0KTsKQEAgLTU2OCw3ICs2MDAsNyBAQAogCXBmaWxfcmVtb3ZlX2hvb2soKHZvaWQg
Kilmcl9jaGVjaywgUEZJTF9JTnxQRklMX09VVCk7CiAjICBlbmRpZgogIyAgaWZkZWYgVVNF
X0lORVQ2Ci0jICAgaWYgX19OZXRCU0RfVmVyc2lvbl9fID49IDEwNTExMDAwMAorIyAgIGlm
IChfX05ldEJTRF9WZXJzaW9uX18gPj0gMTA1MTEwMDAwKSB8fCAoX19EcmFnb25GbHlfdmVy
c2lvbiA+PSAxMDAwMDApCiAJaWYgKHBoX2luZXQ2ICE9IE5VTEwpCiAJCWVycm9yID0gcGZp
bF9yZW1vdmVfaG9vaygodm9pZCAqKWZyX2NoZWNrX3dyYXBwZXI2LCBOVUxMLAogCQkJCQkg
UEZJTF9JTnxQRklMX09VVCwgcGhfaW5ldDYpOwpJbmRleDogY29udHJpYi9pcGZpbHRlci9u
ZXRpbmV0L2lwX2ZpbC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9ob21lL2RjdnMvc3Jj
L3N5cy9jb250cmliL2lwZmlsdGVyL25ldGluZXQvaXBfZmlsLmgsdgpyZXRyaWV2aW5nIHJl
dmlzaW9uIDEuNApkaWZmIC11IC1yMS40IGlwX2ZpbC5oCi0tLSBjb250cmliL2lwZmlsdGVy
L25ldGluZXQvaXBfZmlsLmgJMjcgQXVnIDIwMDMgMTE6MDI6MTQgLTAwMDAJMS40CisrKyBj
b250cmliL2lwZmlsdGVyL25ldGluZXQvaXBfZmlsLmgJMTUgTm92IDIwMDMgMDY6MTE6MTEg
LTAwMDAKQEAgLTQ4OCw4ICs0ODgsOCBAQAogICogd2l0aCB0aGlzIQogICovCiAjaWYgKGRl
ZmluZWQoTmV0QlNEKSAmJiAoTmV0QlNEID4gMTk5NjA5KSAmJiAoTmV0QlNEIDw9IDE5OTEw
MTEpKSB8fCBcCi0gICAgKGRlZmluZWQoTmV0QlNEMV8yKSAmJiBOZXRCU0QxXzIgPiAxKQot
IyBpZiAoTmV0QlNEID49IDE5OTkwNSkKKyAgICAoZGVmaW5lZChOZXRCU0QxXzIpICYmIE5l
dEJTRDFfMiA+IDEpIHx8IChfX0RyYWdvbkZseV92ZXJzaW9uID49IDEwMDAwMCkKKyMgaWYg
KE5ldEJTRCA+PSAxOTk5MDUpIHx8IChfX0RyYWdvbkZseV92ZXJzaW9uID49IDEwMDAwMCkK
ICMgIGRlZmluZSBQRklMX0hPT0tTCiAjIGVuZGlmCiAjIGlmZGVmIFBGSUxfSE9PS1MKSW5k
ZXg6IGkzODYvY29uZi9HRU5FUklDCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9ob21lL2Rj
dnMvc3JjL3N5cy9pMzg2L2NvbmYvR0VORVJJQyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4z
CmRpZmYgLXUgLXIxLjMgR0VORVJJQwotLS0gaTM4Ni9jb25mL0dFTkVSSUMJMiBPY3QgMjAw
MyAxOTo0NTo0MCAtMDAwMAkxLjMKKysrIGkzODYvY29uZi9HRU5FUklDCTE0IE5vdiAyMDAz
IDE2OjIwOjUxIC0wMDAwCkBAIC0yNTUsNiArMjU1LDggQEAKICMgVGhlIGBicGYnIHBzZXVk
by1kZXZpY2UgZW5hYmxlcyB0aGUgQmVya2VsZXkgUGFja2V0IEZpbHRlci4KICMgQmUgYXdh
cmUgb2YgdGhlIGFkbWluaXN0cmF0aXZlIGNvbnNlcXVlbmNlcyBvZiBlbmFibGluZyB0aGlz
IQogcHNldWRvLWRldmljZQlicGYJCSNCZXJrZWxleSBwYWNrZXQgZmlsdGVyCitvcHRpb25z
CQlQRklMX0hPT0tTCSNQYWNrZXRmaWx0ZXIgaG9va3MKK29wdGlvbnMJCUlQRklMVEVSCiAK
ICMgVVNCIHN1cHBvcnQKIGRldmljZQkJdWhjaQkJIyBVSENJIFBDSS0+VVNCIGludGVyZmFj
ZQpJbmRleDogbmV0aW5ldC9pcF9pbnB1dC5jCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9o
b21lL2RjdnMvc3JjL3N5cy9uZXRpbmV0L2lwX2lucHV0LmMsdgpyZXRyaWV2aW5nIHJldmlz
aW9uIDEuOApkaWZmIC11IC1yMS44IGlwX2lucHV0LmMKLS0tIG5ldGluZXQvaXBfaW5wdXQu
Ywk4IE5vdiAyMDAzIDA3OjU3OjUxIC0wMDAwCTEuOAorKysgbmV0aW5ldC9pcF9pbnB1dC5j
CTE0IE5vdiAyMDAzIDE1OjQwOjI3IC0wMDAwCkBAIC00NCw2ICs0NCw3IEBACiAjaW5jbHVk
ZSAib3B0X2lwZmlsdGVyLmgiCiAjaW5jbHVkZSAib3B0X2lwc3RlYWx0aC5oIgogI2luY2x1
ZGUgIm9wdF9pcHNlYy5oIgorI2luY2x1ZGUgIm9wdF9wZmlsX2hvb2tzLmgiCiAjaW5jbHVk
ZSAib3B0X3JhbmRvbV9pcF9pZC5oIgogCiAjaW5jbHVkZSA8c3lzL3BhcmFtLmg+CkBAIC02
Miw2ICs2Myw5IEBACiAjaW5jbHVkZSA8bmV0L2lmX3R5cGVzLmg+CiAjaW5jbHVkZSA8bmV0
L2lmX3Zhci5oPgogI2luY2x1ZGUgPG5ldC9pZl9kbC5oPgorI2lmZGVmIFBGSUxfSE9PS1MK
KyNpbmNsdWRlIDxuZXQvcGZpbC5oPgorI2VuZGlmCiAjaW5jbHVkZSA8bmV0L3JvdXRlLmg+
CiAjaW5jbHVkZSA8bmV0L25ldGlzci5oPgogI2luY2x1ZGUgPG5ldC9pbnRycS5oPgpAQCAt
MjA3LDcgKzIxMSw5IEBACiAvKiBEdW1teW5ldCBob29rcyAqLwogaXBfZG5faW9fdCAqaXBf
ZG5faW9fcHRyOwogCi1pbnQgKCpmcl9jaGVja3ApIChzdHJ1Y3QgaXAgKiwgaW50LCBzdHJ1
Y3QgaWZuZXQgKiwgaW50LCBzdHJ1Y3QgbWJ1ZiAqKikgPSBOVUxMOworI2lmZGVmIFBGSUxf
SE9PS1MKK3N0cnVjdCBwZmlsX2hlYWQgaW5ldF9wZmlsX2hvb2s7CisjZW5kaWYgLyogUEZJ
TF9IT09LUyAqLwogCiAvKgogICogWFhYIHRoaXMgaXMgdWdseSAtLSB0aGUgZm9sbG93aW5n
IHR3byBnbG9iYWwgdmFyaWFibGVzIGFyZQpAQCAtMjYyLDYgKzI2OCwxNCBAQAogCQkgICAg
cHItPnByX3Byb3RvY29sICYmIHByLT5wcl9wcm90b2NvbCAhPSBJUFBST1RPX1JBVykKIAkJ
CWlwX3Byb3RveFtwci0+cHJfcHJvdG9jb2xdID0gcHIgLSBpbmV0c3c7CiAKKyNpZmRlZiBQ
RklMX0hPT0tTCisJaW5ldF9wZmlsX2hvb2sucGhfdHlwZSA9IFBGSUxfVFlQRV9BRjsKKwlp
bmV0X3BmaWxfaG9vay5waF9hZiA9IEFGX0lORVQ7CisJaWYgKChpID0gcGZpbF9oZWFkX3Jl
Z2lzdGVyKCZpbmV0X3BmaWxfaG9vaykpICE9IDApCisJCXByaW50ZigiJXM6IFdBUk5JTkc6
IHVuYWJsZSB0byByZWdpc3RlciBwZmlsIGhvb2ssICIKKwkJCSJlcnJvciAlZFxuIiwgX19m
dW5jX18sIGkpOworI2VuZGlmIC8qIFBGSUxfSE9PS1MgKi8KKwogCWZvciAoaSA9IDA7IGkg
PCBJUFJFQVNTX05IQVNIOyBpKyspCiAJICAgIGlwcVtpXS5uZXh0ID0gaXBxW2ldLnByZXYg
PSAmaXBxW2ldOwogCkBAIC0zMDAsNiArMzE0LDEwIEBACiAJc3RydWN0IGluX2FkZHIgcGt0
X2RzdDsKIAl1X2ludDMyX3QgZGl2ZXJ0X2luZm8gPSAwOwkJLyogcGFja2V0IGRpdmVydC90
ZWUgaW5mbyAqLwogCXN0cnVjdCBpcF9md19hcmdzIGFyZ3M7CisJaW50IHNyY3J0ID0gMDsJ
CQkJLyogZm9yd2FyZCAoYnkgUEZJTF9IT09LUykgKi8KKyNpZmRlZiBQRklMX0hPT0tTCisJ
c3RydWN0IGluX2FkZHIgb2RzdDsJCQkvKiBvcmlnaW5hbCBkc3QgYWRkcmVzcyhOQVQpICov
CisjZW5kaWYKICNpZmRlZiBGQVNUX0lQU0VDCiAJc3RydWN0IG1fdGFnICptdGFnOwogCXN0
cnVjdCB0ZGJfaWRlbnQgKnRkYmk7CkBAIC00NDYsMTcgKzQ2NCwyMyBAQAogIAkgKi8KIAog
aXBoYWNrOgorI2lmZGVmIFBGSUxfSE9PS1MKIAkvKgotCSAqIENoZWNrIGlmIHdlIHdhbnQg
dG8gYWxsb3cgdGhpcyBwYWNrZXQgdG8gYmUgcHJvY2Vzc2VkLgotCSAqIENvbnNpZGVyIGl0
IHRvIGJlIGJhZCBpZiBub3QuCi0JICovCi0JaWYgKGZyX2NoZWNrcCkgewotCQlzdHJ1Y3QJ
bWJ1ZgkqbTEgPSBtOwotCi0JCWlmICgoKmZyX2NoZWNrcCkoaXAsIGhsZW4sIG0tPm1fcGt0
aGRyLnJjdmlmLCAwLCAmbTEpIHx8ICFtMSkKLQkJCXJldHVybjsKLQkJaXAgPSBtdG9kKG0g
PSBtMSwgc3RydWN0IGlwICopOwotCX0KKwkgKiBSdW4gdGhyb3VnaCBsaXN0IG9mIGhvb2tz
IGZvciBpbnB1dCBwYWNrZXRzLgorCSAqCisJICogTkI6IEJld2FyZSBvZiB0aGUgZGVzdGlu
YXRpb24gYWRkcmVzcyBjaGFuZ2luZyAoZS5nLgorCSAqICAgICBieSBOQVQgcmV3cml0aW5n
KS4gV2hlbiB0aGlzIGhhcHBlbnMsIHRlbGwKKwkgKiAgICAgaXBfZm9yd2FyZCB0byBkbyB0
aGUgcmlnaHQgdGhpbmcuCisJICovCisJb2RzdCA9IGlwLT5pcF9kc3Q7CisJaWYgKHBmaWxf
cnVuX2hvb2tzKCZpbmV0X3BmaWxfaG9vaywgJm0sIG0tPm1fcGt0aGRyLnJjdmlmLAorCSAg
ICBQRklMX0lOKSAhPSAwKQorCSAgICAJcmV0dXJuOworCWlmIChtID09IE5VTEwpCQkJLyog
Y29uc3VtZWQgYnkgZmlsdGVyICovCisJCXJldHVybjsKKwlpcCA9IG10b2QobSwgc3RydWN0
IGlwICopOworCXNyY3J0ID0gKG9kc3Quc19hZGRyICE9IGlwLT5pcF9kc3Quc19hZGRyKTsK
KyNlbmRpZiAvKiBQRklMX0hPT0tTICovCiAJaWYgKGZ3X2VuYWJsZSAmJiBJUEZXX0xPQURF
RCkgewogCQkvKgogCQkgKiBJZiB3ZSd2ZSBiZWVuIGZvcndhcmRlZCBmcm9tIHRoZSBvdXRw
dXQgc2lkZSwgdGhlbgpAQCAtNjkwLDcgKzcxNCw3IEBACiAJCQlnb3RvIGJhZDsKIAkJfQog
I2VuZGlmIC8qIEZBU1RfSVBTRUMgKi8KLQkJaXBfZm9yd2FyZChtLCAwLCBhcmdzLm5leHRf
aG9wKTsKKwkJaXBfZm9yd2FyZChtLCBzcmNydCwgYXJncy5uZXh0X2hvcCk7CiAJfQogCXJl
dHVybjsKIApJbmRleDogbmV0aW5ldC9pcF9vdXRwdXQuYwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBm
aWxlOiAvaG9tZS9kY3ZzL3NyYy9zeXMvbmV0aW5ldC9pcF9vdXRwdXQuYyx2CnJldHJpZXZp
bmcgcmV2aXNpb24gMS44CmRpZmYgLXUgLXIxLjggaXBfb3V0cHV0LmMKLS0tIG5ldGluZXQv
aXBfb3V0cHV0LmMJMjQgQXVnIDIwMDMgMjM6MDc6MDcgLTAwMDAJMS44CisrKyBuZXRpbmV0
L2lwX291dHB1dC5jCTE0IE5vdiAyMDAzIDE1OjM1OjAyIC0wMDAwCkBAIC00Miw2ICs0Miw3
IEBACiAjaW5jbHVkZSAib3B0X2lwZGl2ZXJ0LmgiCiAjaW5jbHVkZSAib3B0X2lwZmlsdGVy
LmgiCiAjaW5jbHVkZSAib3B0X2lwc2VjLmgiCisjaW5jbHVkZSAib3B0X3BmaWxfaG9va3Mu
aCIKICNpbmNsdWRlICJvcHRfcmFuZG9tX2lwX2lkLmgiCiAjaW5jbHVkZSAib3B0X21idWZf
c3RyZXNzX3Rlc3QuaCIKIApAQCAtNTcsNiArNTgsOSBAQAogI2luY2x1ZGUgPHN5cy9zeXNj
dGwuaD4KIAogI2luY2x1ZGUgPG5ldC9pZi5oPgorI2lmZGVmIFBGSUxfSE9PS1MKKyNpbmNs
dWRlIDxuZXQvcGZpbC5oPgorI2VuZGlmCiAjaW5jbHVkZSA8bmV0L3JvdXRlLmg+CiAKICNp
bmNsdWRlIDxuZXRpbmV0L2luLmg+CkBAIC03MjIsMTMgKzcyNiwxNSBAQAogCSAqIC0gV3Jh
cDogZmFrZSBwYWNrZXQncyBhZGRyL3BvcnQgPHVuaW1wbC4+CiAJICogLSBFbmNhcHN1bGF0
ZTogcHV0IGl0IGluIGFub3RoZXIgSVAgYW5kIHNlbmQgb3V0LiA8dW5pbXAuPgogCSAqLyAK
LQlpZiAoZnJfY2hlY2twKSB7Ci0JCXN0cnVjdCAgbWJ1ZiAgICAqbTEgPSBtOwotCi0JCWlm
ICgoZXJyb3IgPSAoKmZyX2NoZWNrcCkoaXAsIGhsZW4sIGlmcCwgMSwgJm0xKSkgfHwgIW0x
KQotCQkJZ290byBkb25lOwotCQlpcCA9IG10b2QobSA9IG0xLCBzdHJ1Y3QgaXAgKik7Ci0J
fQorI2lmZGVmIFBGSUxfSE9PS1MKKwkvKgorCSAqIFJ1biB0aHJvdWdoIGxpc3Qgb2YgaG9v
a3MgZm9yIG91dHB1dCBwYWNrZXRzLgorCSAqLworCWVycm9yID0gcGZpbF9ydW5faG9va3Mo
JmluZXRfcGZpbF9ob29rLCAmbSwgaWZwLCBQRklMX09VVCk7CisJaWYgKGVycm9yICE9IDAg
fHwgbSA9PSBOVUxMKQorCQlnb3RvIGRvbmU7CisJaXAgPSBtdG9kKG0sIHN0cnVjdCBpcCAq
KTsKKyNlbmRpZiAvKiBQRklMX0hPT0tTICovCiAKIAkvKgogCSAqIENoZWNrIHdpdGggdGhl
IGZpcmV3YWxsLi4uCkluZGV4OiBuZXRpbmV0L2lwX3Zhci5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNT
IGZpbGU6IC9ob21lL2RjdnMvc3JjL3N5cy9uZXRpbmV0L2lwX3Zhci5oLHYKcmV0cmlldmlu
ZyByZXZpc2lvbiAxLjQKZGlmZiAtdSAtcjEuNCBpcF92YXIuaAotLS0gbmV0aW5ldC9pcF92
YXIuaAk4IE5vdiAyMDAzIDA3OjU3OjUxIC0wMDAwCTEuNAorKysgbmV0aW5ldC9pcF92YXIu
aAkxNCBOb3YgMjAwMyAxNTozNjoyMiAtMDAwMApAQCAtMjA0LDYgKzIwNCwxMCBAQAogZXh0
ZXJuIHN0cnVjdCBwcl91c3JyZXFzIGRpdl91c3JyZXFzOwogI2VuZGlmCiAKKyNpZmRlZiBQ
RklMX0hPT0tTCitleHRlcm4Jc3RydWN0IHBmaWxfaGVhZCBpbmV0X3BmaWxfaG9vazsKKyNl
bmRpZgorCiB2b2lkCWluX2RlbGF5ZWRfY2tzdW0oc3RydWN0IG1idWYgKm0pOwogCiAjZW5k
aWYgLyogX0tFUk5FTCAqLwpJbmRleDogbmV0aW5ldDYvaXA2X2ZvcndhcmQuYwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09ClJDUyBmaWxlOiAvaG9tZS9kY3ZzL3NyYy9zeXMvbmV0aW5ldDYvaXA2X2Zvcndh
cmQuYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS41CmRpZmYgLXUgLXIxLjUgaXA2X2Zvcndh
cmQuYwotLS0gbmV0aW5ldDYvaXA2X2ZvcndhcmQuYwkyMyBBdWcgMjAwMyAxMTowMjo0NSAt
MDAwMAkxLjUKKysrIG5ldGluZXQ2L2lwNl9mb3J3YXJkLmMJMTUgTm92IDIwMDMgMDU6NTA6
NDUgLTAwMDAKQEAgLTM1LDYgKzM1LDcgQEAKICNpbmNsdWRlICJvcHRfaW5ldC5oIgogI2lu
Y2x1ZGUgIm9wdF9pbmV0Ni5oIgogI2luY2x1ZGUgIm9wdF9pcHNlYy5oIgorI2luY2x1ZGUg
Im9wdF9wZmlsX2hvb2tzLmgiCiAKICNpbmNsdWRlIDxzeXMvcGFyYW0uaD4KICNpbmNsdWRl
IDxzeXMvc3lzdG0uaD4KQEAgLTUwLDYgKzUxLDkgQEAKIAogI2luY2x1ZGUgPG5ldC9pZi5o
PgogI2luY2x1ZGUgPG5ldC9yb3V0ZS5oPgorI2lmZGVmIFBGSUxfSE9PS1MKKyNpbmNsdWRl
IDxuZXQvcGZpbC5oPgorI2VuZGlmCiAKICNpbmNsdWRlIDxuZXRpbmV0L2luLmg+CiAjaW5j
bHVkZSA8bmV0aW5ldC9pbl92YXIuaD4KQEAgLTgzLDggKzg3LDYgQEAKIAogI2luY2x1ZGUg
PG5ldC9uZXRfb3NkZXAuaD4KIAotZXh0ZXJuIGludCAoKmZyX2NoZWNrcCkgKHN0cnVjdCBp
cCAqLCBpbnQsIHN0cnVjdCBpZm5ldCAqLCBpbnQsIHN0cnVjdCBtYnVmICoqKTsKLQogc3Ry
dWN0CXJvdXRlX2luNiBpcDZfZm9yd2FyZF9ydDsKIAogLyoKQEAgLTUxNSwyMSArNTE3LDE3
IEBACiAJaW42X2NsZWFyc2NvcGUoJmlwNi0+aXA2X2RzdCk7CiAjZW5kaWYKIAorI2lmZGVm
IFBGSUxfSE9PS1MKIAkvKgotCSAqIENoZWNrIGlmIHdlIHdhbnQgdG8gYWxsb3cgdGhpcyBw
YWNrZXQgdG8gYmUgcHJvY2Vzc2VkLgotCSAqIENvbnNpZGVyIGl0IHRvIGJlIGJhZCBpZiBu
b3QuCisJICogUnVuIHRocm91Z2ggbGlzdCBvZiBob29rcyBmb3Igb3V0cHV0IHBhY2tldHMu
CiAJICovCi0JaWYgKGZyX2NoZWNrcCkgewotCQlzdHJ1Y3QJbWJ1ZgkqbTEgPSBtOwotCi0J
CWlmICgoKmZyX2NoZWNrcCkoKHN0cnVjdCBpcCAqKWlwNiwgc2l6ZW9mKCppcDYpLAotCQkJ
CSBydC0+cnRfaWZwLCAxLCAmbTEpICE9IDApCi0JCQlnb3RvIGZyZWVjb3B5OwotCQltID0g
bTE7Ci0JCWlmIChtID09IE5VTEwpCi0JCQlnb3RvIGZyZWVjb3B5OwotCQlpcDYgPSBtdG9k
KG0sIHN0cnVjdCBpcDZfaGRyICopOwotCX0KKwllcnJvciA9IHBmaWxfcnVuX2hvb2tzKCZp
bmV0Nl9wZmlsX2hvb2ssICZtLCBydC0+cnRfaWZwLCBQRklMX09VVCk7CisJaWYgKGVycm9y
ICE9IDApCisJCWdvdG8gc2VuZGVycjsKKwlpZiAobSA9PSBOVUxMKQorCQlnb3RvIGZyZWVj
b3B5OworCWlwNiA9IG10b2QobSwgc3RydWN0IGlwNl9oZHIgKik7CisjZW5kaWYgLyogUEZJ
TF9IT09LUyAqLwogCiAJZXJyb3IgPSBuZDZfb3V0cHV0KHJ0LT5ydF9pZnAsIG9yaWdpZnAs
IG0sIGRzdCwgcnQpOwogCWlmIChlcnJvcikgewpAQCAtNTQ1LDYgKzU0Myw5IEBACiAJCQkJ
Z290byBmcmVlY29weTsKIAkJfQogCX0KKyNpZmRlZiBQRklMX0hPT0tTCitzZW5kZXJyOgor
I2VuZGlmCiAJaWYgKG1jb3B5ID09IE5VTEwpCiAJCXJldHVybjsKIAlzd2l0Y2ggKGVycm9y
KSB7CkluZGV4OiBuZXRpbmV0Ni9pcDZfaW5wdXQuYwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxl
OiAvaG9tZS9kY3ZzL3NyYy9zeXMvbmV0aW5ldDYvaXA2X2lucHV0LmMsdgpyZXRyaWV2aW5n
IHJldmlzaW9uIDEuMTAKZGlmZiAtdSAtcjEuMTAgaXA2X2lucHV0LmMKLS0tIG5ldGluZXQ2
L2lwNl9pbnB1dC5jCTggTm92IDIwMDMgMDc6NTc6NTEgLTAwMDAJMS4xMAorKysgbmV0aW5l
dDYvaXA2X2lucHV0LmMJMTUgTm92IDIwMDMgMDU6NTk6MDcgLTAwMDAKQEAgLTcwLDYgKzcw
LDcgQEAKICNpbmNsdWRlICJvcHRfaW5ldC5oIgogI2luY2x1ZGUgIm9wdF9pbmV0Ni5oIgog
I2luY2x1ZGUgIm9wdF9pcHNlYy5oIgorI2luY2x1ZGUgIm9wdF9wZmlsX2hvb2tzLmgiCiAK
ICNpbmNsdWRlIDxzeXMvcGFyYW0uaD4KICNpbmNsdWRlIDxzeXMvc3lzdG0uaD4KQEAgLTkw
LDYgKzkxLDkgQEAKICNpbmNsdWRlIDxuZXQvaWZfZGwuaD4KICNpbmNsdWRlIDxuZXQvcm91
dGUuaD4KICNpbmNsdWRlIDxuZXQvbmV0aXNyLmg+CisjaWZkZWYgUEZJTF9IT09LUworI2lu
Y2x1ZGUgPG5ldC9wZmlsLmg+CisjZW5kaWYKIAogI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4K
ICNpbmNsdWRlIDxuZXRpbmV0L2luX3N5c3RtLmg+CkBAIC0xMjgsOCArMTMyLDYgQEAKIAog
I2luY2x1ZGUgPG5ldC9uZXRfb3NkZXAuaD4KIAotZXh0ZXJuIGludCAoKmZyX2NoZWNrcCkg
KHN0cnVjdCBpcCAqLCBpbnQsIHN0cnVjdCBpZm5ldCAqLCBpbnQsIHN0cnVjdCBtYnVmICoq
KTsKLQogZXh0ZXJuIHN0cnVjdCBkb21haW4gaW5ldDZkb21haW47CiBleHRlcm4gc3RydWN0
IGlwNnByb3Rvc3cgaW5ldDZzd1tdOwogCkBAIC0xNDQsNiArMTQ2LDEwIEBACiAKIGludCBp
cDZfb3Vyc19jaGVja19hbGdvcml0aG07CiAKKyNpZmRlZiBQRklMX0hPT0tTCitzdHJ1Y3Qg
cGZpbF9oZWFkIGluZXQ2X3BmaWxfaG9vazsKKyNlbmRpZgorCiAvKiBmaXJld2FsbCBob29r
cyAqLwogaXA2X2Z3X2Noa190ICppcDZfZndfY2hrX3B0cjsKIGlwNl9md19jdGxfdCAqaXA2
X2Z3X2N0bF9wdHI7CkBAIC0xODMsNiArMTg5LDE1IEBACiAJCWlmIChwci0+cHJfZG9tYWlu
LT5kb21fZmFtaWx5ID09IFBGX0lORVQ2ICYmCiAJCSAgICBwci0+cHJfcHJvdG9jb2wgJiYg
cHItPnByX3Byb3RvY29sICE9IElQUFJPVE9fUkFXKQogCQkJaXA2X3Byb3RveFtwci0+cHJf
cHJvdG9jb2xdID0gcHIgLSBpbmV0NnN3OworCisjaWZkZWYgUEZJTF9IT09LUworCWluZXQ2
X3BmaWxfaG9vay5waF90eXBlID0gUEZJTF9UWVBFX0FGOworCWluZXQ2X3BmaWxfaG9vay5w
aF9hZiA9IEFGX0lORVQ2OworCWlmICgoaSA9IHBmaWxfaGVhZF9yZWdpc3RlcigmaW5ldDZf
cGZpbF9ob29rKSkgIT0gMCkKKwkJcHJpbnRmKCIlczogV0FSTklORzogdW5hYmxlIHRvIHJl
Z2lzdGVyIHBmaWwgaG9vaywgIgorCQkJImVycm9yICVkXG4iLCBfX2Z1bmNfXywgaSk7Cisj
ZW5kaWYgLyogUEZJTF9IT09LUyAqLworCiAJbmV0aXNyX3JlZ2lzdGVyKE5FVElTUl9JUFY2
LCBjcHUwX3BvcnRmbiwgaXA2X2lucHV0KTsKIAluZDZfaW5pdCgpOwogCWZyYWc2X2luaXQo
KTsKQEAgLTIzOCw2ICsyNTMsMTAgQEAKIAl1X2ludDMyX3QgcnRhbGVydCA9IH4wOwogCWlu
dCBueHQsIG91cnMgPSAwOwogCXN0cnVjdCBpZm5ldCAqZGVsaXZlcmlmcCA9IE5VTEw7Cisj
aWZkZWYgUEZJTF9IT09LUworCXN0cnVjdCBpbjZfYWRkciBvZHN0OworI2VuZGlmCisJaW50
IHNyY3J0ID0gMDsKIAogI2lmZGVmIElQU0VDCiAJLyoKQEAgLTMzMCwyMSArMzQ5LDIyIEBA
CiAJCWdvdG8gYmFkOwogCX0KIAorI2lmZGVmIFBGSUxfSE9PS1MKIAkvKgotCSAqIENoZWNr
IGlmIHdlIHdhbnQgdG8gYWxsb3cgdGhpcyBwYWNrZXQgdG8gYmUgcHJvY2Vzc2VkLgotCSAq
IENvbnNpZGVyIGl0IHRvIGJlIGJhZCBpZiBub3QuCi0JICovCi0JaWYgKGZyX2NoZWNrcCkg
ewotCQlzdHJ1Y3QJbWJ1ZgkqbTEgPSBtOwotCi0JCWlmICgoKmZyX2NoZWNrcCkoKHN0cnVj
dCBpcCAqKWlwNiwgc2l6ZW9mKCppcDYpLAotCQkJCSBtLT5tX3BrdGhkci5yY3ZpZiwgMCwg
Jm0xKSAhPSAwKQotCQkJcmV0dXJuOwotCQltID0gbTE7Ci0JCWlmIChtID09IE5VTEwpCi0J
CQlyZXR1cm47Ci0JCWlwNiA9IG10b2QobSwgc3RydWN0IGlwNl9oZHIgKik7Ci0JfQorCSAq
IFJ1biB0aHJvdWdoIGxpc3Qgb2YgaG9va3MgZm9yIGlucHV0IHBhY2tldHMuCisJICoKKwkg
KiBOQjogQmV3YXJlIG9mIHRoZSBkZXN0aW5hdGlvbiBhZGRyZXNzIGNoYW5naW5nCisJICog
ICAgIChlLmcuIGJ5IE5BVCByZXdyaXRpbmcpLiBXaGVuIHRoaXMgaGFwcGVucywKKwkgKiAg
ICAgdGVsbCBpcDZfZm9yd2FyZCB0byBkbyB0aGUgcmlnaHQgdGhpbmcuCisJICovCisJb2Rz
dCA9IGlwNi0+aXA2X2RzdDsKKwlpZiAocGZpbF9ydW5faG9va3MoJmluZXQ2X3BmaWxfaG9v
aywgJm0sIG0tPm1fcGt0aGRyLnJjdmlmLCBQRklMX0lOKSkKKwkJcmV0dXJuOworCWlmICht
ID09IE5VTEwpCQkJLyogY29uc3VtZWQgYnkgZmlsdGVyICovCisJCXJldHVybjsKKwlpcDYg
PSBtdG9kKG0sIHN0cnVjdCBpcDZfaGRyICopOworCXNyY3J0ID0gIUlONl9BUkVfQUREUl9F
UVVBTCgmb2RzdCwgJmlwNi0+aXA2X2RzdCk7CisjZW5kaWYgLyogUEZJTF9IT09LUyAqLwog
CiAJaXA2c3RhdC5pcDZzX254dGhpc3RbaXA2LT5pcDZfbnh0XSsrOwogCkBAIC03NDQsNyAr
NzY0LDcgQEAKIAkJCXJldHVybjsKIAkJfQogCX0gZWxzZSBpZiAoIW91cnMpIHsKLQkJaXA2
X2ZvcndhcmQobSwgMCk7CisJCWlwNl9mb3J3YXJkKG0sIHNyY3J0KTsKIAkJcmV0dXJuOwog
CX0JCiAKSW5kZXg6IG5ldGluZXQ2L2lwNl9vdXRwdXQuYwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBm
aWxlOiAvaG9tZS9kY3ZzL3NyYy9zeXMvbmV0aW5ldDYvaXA2X291dHB1dC5jLHYKcmV0cmll
dmluZyByZXZpc2lvbiAxLjgKZGlmZiAtdSAtcjEuOCBpcDZfb3V0cHV0LmMKLS0tIG5ldGlu
ZXQ2L2lwNl9vdXRwdXQuYwkyMyBBdWcgMjAwMyAxMTowMjo0NSAtMDAwMAkxLjgKKysrIG5l
dGluZXQ2L2lwNl9vdXRwdXQuYwkxNSBOb3YgMjAwMyAwNTo0ODo0NSAtMDAwMApAQCAtNzAs
NiArNzAsNyBAQAogI2luY2x1ZGUgIm9wdF9pbmV0LmgiCiAjaW5jbHVkZSAib3B0X2luZXQ2
LmgiCiAjaW5jbHVkZSAib3B0X2lwc2VjLmgiCisjaW5jbHVkZSAib3B0X3BmaWxfaG9va3Mu
aCIKIAogI2luY2x1ZGUgPHN5cy9wYXJhbS5oPgogI2luY2x1ZGUgPHN5cy9tYWxsb2MuaD4K
QEAgLTg0LDYgKzg1LDkgQEAKIAogI2luY2x1ZGUgPG5ldC9pZi5oPgogI2luY2x1ZGUgPG5l
dC9yb3V0ZS5oPgorI2lmZGVmIFBGSUxfSE9PS1MKKyNpbmNsdWRlIDxuZXQvcGZpbC5oPgor
I2VuZGlmCiAKICNpbmNsdWRlIDxuZXRpbmV0L2luLmg+CiAjaW5jbHVkZSA8bmV0aW5ldC9p
bl92YXIuaD4KQEAgLTExMiw5ICsxMTYsNiBAQAogCiAjaW5jbHVkZSA8bmV0L25ldF9vc2Rl
cC5oPgogCi1zdHJ1Y3QgaXA7Ci1leHRlcm4gaW50ICgqZnJfY2hlY2twKSAoc3RydWN0IGlw
ICosIGludCwgc3RydWN0IGlmbmV0ICosIGludCwgc3RydWN0IG1idWYgKiopOwotCiBzdGF0
aWMgTUFMTE9DX0RFRklORShNX0lQTU9QVFMsICJpcDZfbW9wdGlvbnMiLCAiaW50ZXJuZXQg
bXVsdGljYXN0IG9wdGlvbnMiKTsKIAogc3RydWN0IGlwNl9leHRoZHJzIHsKQEAgLTkyMSwy
MSArOTIyLDE1IEBACiAJCW0tPm1fcGt0aGRyLnJjdmlmID0gTlVMTDsKIAl9CiAKKyNpZmRl
ZiBQRklMX0hPT0tTCiAJLyoKLQkgKiBDaGVjayBpZiB3ZSB3YW50IHRvIGFsbG93IHRoaXMg
cGFja2V0IHRvIGJlIHByb2Nlc3NlZC4KLQkgKiBDb25zaWRlciBpdCB0byBiZSBiYWQgaWYg
bm90LgorCSAqIFJ1biB0aHJvdWdoIGxpc3Qgb2YgaG9va3MgZm9yIG91dHB1dCBwYWNrZXRz
LgogCSAqLwotCWlmIChmcl9jaGVja3ApIHsKLQkJc3RydWN0CW1idWYJKm0xID0gbTsKLQot
CQlpZiAoKCpmcl9jaGVja3ApKChzdHJ1Y3QgaXAgKilpcDYsIHNpemVvZigqaXA2KSwgaWZw
LCAxLCAmbTEpKQotCQkJZ290byBkb25lOwotCQltID0gbTE7Ci0JCWlmIChtID09IE5VTEwp
Ci0JCQlnb3RvIGRvbmU7Ci0JCWlwNiA9IG10b2QobSwgc3RydWN0IGlwNl9oZHIgKik7Ci0J
fQotCisJZXJyb3IgPSBwZmlsX3J1bl9ob29rcygmaW5ldDZfcGZpbF9ob29rLCAmbSwgaWZw
LCBQRklMX09VVCk7CisJaWYgKGVycm9yICE9IDAgfHwgbSA9PSBOVUxMKQorCQlnb3RvIGRv
bmU7CisJaXA2ID0gbXRvZChtLCBzdHJ1Y3QgaXA2X2hkciAqKTsKKyNlbmRpZiAvKiBQRklM
X0hPT0tTICovCiAJLyoKIAkgKiBTZW5kIHRoZSBwYWNrZXQgdG8gdGhlIG91dGdvaW5nIGlu
dGVyZmFjZS4KIAkgKiBJZiBuZWNlc3NhcnksIGRvIElQdjYgZnJhZ21lbnRhdGlvbiBiZWZv
cmUgc2VuZGluZy4KSW5kZXg6IG5ldGluZXQ2L2lwNl92YXIuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJD
UyBmaWxlOiAvaG9tZS9kY3ZzL3NyYy9zeXMvbmV0aW5ldDYvaXA2X3Zhci5oLHYKcmV0cmll
dmluZyByZXZpc2lvbiAxLjMKZGlmZiAtdSAtcjEuMyBpcDZfdmFyLmgKLS0tIG5ldGluZXQ2
L2lwNl92YXIuaAkyMyBBdWcgMjAwMyAxMTowMjo0NSAtMDAwMAkxLjMKKysrIG5ldGluZXQ2
L2lwNl92YXIuaAkxNSBOb3YgMjAwMyAwNToxODozMCAtMDAwMApAQCAtMjg2LDYgKzI4Niwx
MCBAQAogCiBleHRlcm4gaW50CWlwNl91c2VfdGVtcGFkZHI7IC8qIHdoZXRoZXIgdG8gdXNl
IHRlbXBvcmFyeSBhZGRyZXNzZXMuICovCiAKKyNpZmRlZiBQRklMX0hPT0tTCitleHRlcm4g
c3RydWN0IHBmaWxfaGVhZCBpbmV0Nl9wZmlsX2hvb2s7CisjZW5kaWYKKwogZXh0ZXJuIHN0
cnVjdAlwcl91c3JyZXFzIHJpcDZfdXNycmVxczsKIHN0cnVjdCBzb2Nrb3B0OwogCg==
------------BE1361F82C6DB270--
More information about the freebsd-ports-bugs
mailing list