<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "http://bugs.gentoo.org/bugzilla.dtd">

<bugzilla version="2.22.7"
          urlbase="http://bugs.gentoo.org/"
          maintainer="bugzilla@gentoo.org"
>

    <bug>
          <bug_id>41978</bug_id>
          
          <creation_ts>2004-02-17 17:52 0000</creation_ts>
          <short_desc>OpenAL CVS ebuild, has ALSA capture support</short_desc>
          <delta_ts>2004-02-19 01:28:31 0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>Gentoo Linux</product>
          <component>Ebuilds</component>
          <version>unspecified</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>floam@sh.nu</reporter>
          <assigned_to>sound@gentoo.org</assigned_to>
          <cc>bfdi533@cbacc-security3.bus.utexas.edu</cc>
    
    <cc>wolf31o2@gentoo.org</cc>

      

      
          <long_desc isprivate="0">
            <who>floam@sh.nu</who>
            <bug_when>2004-02-17 17:52:34 0000</bug_when>
            <thetext>The current OpenAL in portage is very old. This will solve the problem of oldness and allow people to have voice chat in UT2004 with ALSA in Gentoo. Uses patch against openal cvs from http://icculus.org/~warp/ut2004/. Someone smarter than me way want to add Gentoo-specific instructions for voice chat to pkg_postinst.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>floam@sh.nu</who>
            <bug_when>2004-02-17 17:53:41 0000</bug_when>
            <thetext>Created an attachment (id=25812)
openal-cvs-20040317.ebuild

OpenAL cvs ebuild with alsa capture support.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>floam@sh.nu</who>
            <bug_when>2004-02-17 17:54:32 0000</bug_when>
            <thetext>Created an attachment (id=25813)
openal_cap_cvs.diff

Patch from http://icculus.org/~warp/ut2004/, put in files/.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>floam@sh.nu</who>
            <bug_when>2004-02-17 18:49:38 0000</bug_when>
            <thetext>Created an attachment (id=25818)
fixed openal-cvs-20040317.ebuild

I screwed up the use stuff, don&apos;t ask me why, I do feel stupid.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>wolf31o2@gentoo.org</who>
            <bug_when>2004-02-18 11:01:48 0000</bug_when>
            <thetext>I think we should update our OpenAL to this latest version.  If we need to, I&apos;ll create a new &quot;snapshot&quot; ebuild and submit it to the tree.  This version of OpenAL fixes problems with the VoIP in Unreal Tournament 2004, and honestly, the version we currently have in portage is unusable due to its age.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>eradicator@gentoo.org</who>
            <bug_when>2004-02-18 11:14:35 0000</bug_when>
            <thetext>Chris, could you prepare the snapshot.  I don&apos;t use openal, so I can&apos;t really test it out.  Since you use it, if you want to take maintainership of openal, feel free to add yourself to the metadata.xml file I just added.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>wolf31o2@gentoo.org</who>
            <bug_when>2004-02-18 15:24:20 0000</bug_when>
            <thetext>Added to CVS and marked myself as the maintainer</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>eradicator@gentoo.org</who>
            <bug_when>2004-02-19 01:28:31 0000</bug_when>
            <thetext>*** Bug 42077 has been marked as a duplicate of this bug. ***</thetext>
          </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>25812</attachid>
            <date>2004-02-17 17:53 0000</date>
            <desc>openal-cvs-20040317.ebuild</desc>
            <filename>openal-cvs-20040317.ebuild</filename>
            <type>text/plain</type>
            <data encoding="base64">IyBDb3B5cmlnaHQgMTk5OS0yMDAzIEdlbnRvbyBUZWNobm9sb2dpZXMsIEluYy4KIyBEaXN0cmli
dXRlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHYy
CiMgJEhlYWRlcjogJAoKaW5oZXJpdCBjdnMKCklVU0U9ImFsc2EgYXJ0cyBlc2Qgc2RsIG9nZ3Zv
cmJpcyBtcGVnIgpERVNDUklQVElPTj0iT3BlbkFMIENWUyBlYnVpbGQgIgpTUkNfVVJJPSIiCkhP
TUVQQUdFPSJodHRwOi8vb3BlbnNvdXJjZS5jcmVhdGl2ZS5jb20vIgoKUz0ke1dPUktESVJ9LyR7
RUNWU19NT0RVTEV9CkxJQ0VOU0U9IkdQTC0yIgpTTE9UPSIwIgpLRVlXT1JEUz0ifng4NiIKCkRF
UEVORD0ieDg2PyAoIGRldi1sYW5nL25hc20gKQoJYWxzYT8gKCBtZWRpYS1saWJzL2Fsc2EtbGli
ICkKCWFydHM/ICgga2RlLWJhc2UvYXJ0cyApCgllc2Q/ICggbWVkaWEtc291bmQvZXNvdW5kICkK
CXNkbD8gKCBtZWRpYS1saWJzL2xpYnNkbCApCglvZ2d2b3JiaXM/ICggbWVkaWEtbGlicy9saWJ2
b3JiaXMgKQoJbXBlZz8gKCBtZWRpYS1saWJzL3NtcGVnICkiClBST1ZJREU9Im1lZGlhLWxpYnMv
b3BlbmFsIgoKRUNWU19TRVJWRVI9Im9wZW5zb3VyY2UuY3JlYXRpdmUuY29tOi91c3IvbG9jYWwv
Y3ZzLXJlcG9zaXRvcnkiCkVDVlNfTU9EVUxFPSJvcGVuYWwiCkVDVlNfVVNFUj0iZ3Vlc3QiCkVD
VlNfUEFTUz0iZ3Vlc3QiCgpzcmNfY29tcGlsZSgpIHsKCWxvY2FsIG15Y29uZgoKCXVzZV9lbmFi
bGUgZXNkIGVzZAoJdXNlX2VuYWJsZSBzZGwgc2RsCgl1c2VfZW5hYmxlIGFsc2EgYWxzYSAKCXVz
ZV9lbmFibGUgYXJ0cyBhcnRzCgl1c2VfZW5hYmxlIG1wZWcgc21wZWcKCXVzZV9lbmFibGUgb2dn
dm9yYmlzIHZvcmJpcwoKCWNkICR7U30vbGludXgKCXVzZSBhbHNhICYmIGVwYXRjaCAke0ZJTEVT
RElSfS9vcGVuYWxfY2FwX2N2cy5kaWZmCglXQU5UX0FVVE9DT05GXzJfNT0xIC4vYXV0b2dlbi5z
aCB8fCBkaWUKCS4vY29uZmlndXJlICAtLXByZWZpeD0vdXNyICR7bXljb25mfSAtLWVuYWJsZS1w
YXJhbm9pZC1sb2NrcyAtLWVuYWJsZS1jYXB0dXJlIHx8IGRpZQoJZW1ha2UgYWxsIHx8IGRpZQp9
CgpzcmNfaW5zdGFsbCgpIHsKCWNkICR7U30vbGludXgKCgltYWtlIGluc3RhbGwgREVTVERJUj0k
e0R9L3Vzci98fCBkaWUKCglkb2RvYyBDUkVESVRTIENoYW5nZUxvZyBJTlNUQUxMIE5PVEVTIFBM
QVRGT1JNIFRPRE8KCW1ha2VpbmZvIGRvYy9vcGVuYWwudGV4aQoJZG9pbmZvIGRvYy9vcGVuYWwu
aW5mbwoKCWNkICR7U30KCWRvZG9jIENIQU5HRVMgQ09QWUlORyBDUkVESVRTCglkb2h0bWwgZG9j
cy8qLmh0bWwKfQoKcGtnX3Bvc3RpbnN0KCkgewoJZWluZm8gIllvdSBjYW4gdXNlIHRoaXMgb3Bl
bmFsIHdpdGggeW91ciBmYXZvcml0ZSB1bnJlYWwgZW5naW5lIGJhc2VkIGdhbWUiCgllaW5mbyAi
YnkgbWFraW5nIGEgc3ltbGluayBmcm9tIC91c3IvbGliL2xpYm9wZW5hbC5zby4wLjAuNyB0byB0
aGUiCgllaW5mbyAib3BlbmFsLnNvIGluIHRoZSBHYW1lJ3MgU3lzdGVtIGRpcmVjdG9yeS4iCgll
aW5mbyAiVG8gZ2V0IHRoaXMgd29ya2luZyB3aXRoIHZvaWNlIGNoYXQgaW4gVVQyMDA0LCByZWZl
ciB0byIKCWVpbmZvICJodHRwOi8vaWNjdWx1cy5vcmcvfndhcnAvdXQyMDA0LyIKfQo=
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>25813</attachid>
            <date>2004-02-17 17:54 0000</date>
            <desc>openal_cap_cvs.diff</desc>
            <filename>openal_cap_cvs.diff</filename>
            <type>text/plain</type>
            <data encoding="base64">SW5kZXg6IHNyYy9hbF9leHQuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvdXNyL2xvY2FsL2N2cy1y
ZXBvc2l0b3J5L29wZW5hbC9saW51eC9zcmMvYWxfZXh0LmMsdgpyZXRyaWV2aW5nIHJldmlzaW9u
IDEuNgpkaWZmIC11IC1yMS42IGFsX2V4dC5jCi0tLSBzcmMvYWxfZXh0LmMJMjAgSnVuIDIwMDMg
MTk6MjM6MDUgLTAwMDAJMS42CisrKyBzcmMvYWxfZXh0LmMJMTYgRmViIDIwMDQgMjA6MTg6Mzgg
LTAwMDAKQEAgLTk5Myw1ICs5OTMsOSBAQAogCQlyZXR1cm4gQUxDX1RSVUU7CiAJfQogCisJaWYo
dXN0cmNtcCgiQUxDX0NBUFRVUkVfU0FNUExFUyIsIGVuYW1lKSA9PSAwKSB7CisJCXJldHVybiAw
eDMxMjsKKwl9CisKIAlyZXR1cm4gMDsKIH0KSW5kZXg6IHNyYy9hbF9tYWluLmMKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQpSQ1MgZmlsZTogL3Vzci9sb2NhbC9jdnMtcmVwb3NpdG9yeS9vcGVuYWwvbGludXgvc3JjL2Fs
X21haW4uYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS45CmRpZmYgLXUgLXIxLjkgYWxfbWFpbi5j
Ci0tLSBzcmMvYWxfbWFpbi5jCTEwIEF1ZyAyMDAzIDA3OjU4OjMxIC0wMDAwCTEuOQorKysgc3Jj
L2FsX21haW4uYwkxNiBGZWIgMjAwNCAyMDoxODozOCAtMDAwMApAQCAtMTMzLDYgKzEzMyw3IEBA
CiAKICNpZmRlZiBDQVBUVVJFX1NVUFBPUlQKIAlfYWxSZWdpc3RlckV4dGVuc2lvbkdyb3VwKCAo
Y29uc3QgQUx1Ynl0ZSopICJBTF9FWFRfY2FwdHVyZSIgKTsKKwlfYWxSZWdpc3RlckV4dGVuc2lv
bkdyb3VwKCAoY29uc3QgQUx1Ynl0ZSopICJBTENfRVhUX2NhcHR1cmUiICk7CiAjZW5kaWYgLyog
Q0FQVFVSRV9TVVBQT1JUICovCiAKICNlbmRpZiAvKiBCVUlMVElOX0VYVF9MT0tJICovCkluZGV4
OiBzcmMvYWxfcXVldWUuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvdXNyL2xvY2FsL2N2cy1yZXBv
c2l0b3J5L29wZW5hbC9saW51eC9zcmMvYWxfcXVldWUuYyx2CnJldHJpZXZpbmcgcmV2aXNpb24g
MS40CmRpZmYgLXUgLXIxLjQgYWxfcXVldWUuYwotLS0gc3JjL2FsX3F1ZXVlLmMJMjAgSnVuIDIw
MDMgMTk6MjM6MDYgLTAwMDAJMS40CisrKyBzcmMvYWxfcXVldWUuYwkxNiBGZWIgMjAwNCAyMDox
ODozOCAtMDAwMApAQCAtNTEsNiArNTEsOCBAQAogCQlyZXR1cm47CiAJfQogCisJX2FsY0RDTG9j
a0NvbnRleHQoKTsKKwogCVNPVVJDRUxPQ0soKTsKIAogCXNyYyA9IF9hbERDR2V0U291cmNlKCBz
aWQgKTsKQEAgLTYwLDYgKzYyLDcgQEAKIAkJX2FsRGVidWcoQUxEX1NPVVJDRSwgX19GSUxFX18s
IF9fTElORV9fLAogCQkgICAgICAiYWxTb3VyY2VRdWV1ZUJ1ZmZlcnM6IGludmFsaWQgc2lkICVk
XG4iLCBzaWQgKTsKIAorCQlfYWxjRENVbmxvY2tDb250ZXh0KCk7CiAJCVNPVVJDRVVOTE9DSygp
OwogCiAJCXJldHVybjsKQEAgLTc5LDYgKzgyLDcgQEAKIAogCQkJCV9hbERDU2V0RXJyb3IoIEFM
X0lOVkFMSURfTkFNRSApOwogCisJCQkJX2FsY0RDVW5sb2NrQ29udGV4dCgpOwogCQkJCVNPVVJD
RVVOTE9DSygpOwogCiAJCQkJcmV0dXJuOwpAQCAtMTAwLDYgKzEwNCw3IEBACiAJLyogd2UncmUg
ZG9uZSAqLwogCiAJX2FsVW5sb2NrQnVmZmVyKCk7CisJX2FsY0RDVW5sb2NrQ29udGV4dCgpOwog
CVNPVVJDRVVOTE9DSygpOwogCiAJcmV0dXJuOwpJbmRleDogc3JjL2FsX3NvdXJjZS5jCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KUkNTIGZpbGU6IC91c3IvbG9jYWwvY3ZzLXJlcG9zaXRvcnkvb3BlbmFsL2xpbnV4L3Ny
Yy9hbF9zb3VyY2UuYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4yMgpkaWZmIC11IC1yMS4yMiBh
bF9zb3VyY2UuYwotLS0gc3JjL2FsX3NvdXJjZS5jCTE1IEphbiAyMDA0IDExOjQ5OjQ0IC0wMDAw
CTEuMjIKKysrIHNyYy9hbF9zb3VyY2UuYwkxNiBGZWIgMjAwNCAyMDoxODozOSAtMDAwMApAQCAt
NTk1LDkgKzU5NSw3IEBACiAJCQkiYWxTb3VyY2VmdjogJWQgaXMgYW4gaW52YWxpZCBzb3VyY2Ug
aWQiLCBzaWQgKTsKIAogCQlfYWxEQ1NldEVycm9yKCBBTF9JTlZBTElEX05BTUUgKTsKLQogCQlT
T1VSQ0VVTkxPQ0soKTsKLQogCQlyZXR1cm47CiAJfQogCkBAIC02OTAsNiArNjg4LDcgQEAKIAkJ
ICB9CiAJCSAgYnJlYWs7CiAJCWNhc2UgQUxfVkVMT0NJVFk6CiticmVhazsKIAkJICBzb3VyY2Ut
PnZlbG9jaXR5Lmlzc2V0ID0gQUxfVFJVRTsKIAkJICBtZW1jcHkoICZzb3VyY2UtPnZlbG9jaXR5
LmRhdGEsIGZ2MSwgU0laRU9GVkVDVE9SICk7CiAKQEAgLTcyMyw2ICs3MjIsNyBAQAogCQkgIGJy
ZWFrOwogCQljYXNlIEFMX1BJVENIOgogCQkgIC8qIG9ubHkgc2V0IHBpdGNoIGlmIGl0IGRpZmZl
cnMgZnJvbSAxLjAgKi8KK2JyZWFrOwogCQkgIGlmKGZ2MVswXSA9PSAxLjApIHsKIAkJCXNvdXJj
ZS0+cGl0Y2guaXNzZXQgPSBBTF9GQUxTRTsKIAkJCXNvdXJjZS0+cGl0Y2guZGF0YSAgPSAxLjA7
CkluZGV4OiBzcmMvYWxjL2FsY19jb250ZXh0LmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL3Vzci9s
b2NhbC9jdnMtcmVwb3NpdG9yeS9vcGVuYWwvbGludXgvc3JjL2FsYy9hbGNfY29udGV4dC5jLHYK
cmV0cmlldmluZyByZXZpc2lvbiAxLjEwCmRpZmYgLXUgLXIxLjEwIGFsY19jb250ZXh0LmMKLS0t
IHNyYy9hbGMvYWxjX2NvbnRleHQuYwkyMCBKdW4gMjAwMyAxOToyMzowNiAtMDAwMAkxLjEwCisr
KyBzcmMvYWxjL2FsY19jb250ZXh0LmMJMTYgRmViIDIwMDQgMjA6MTg6MzkgLTAwMDAKQEAgLTE1
MjUsNiArMTUyNSw5IEBACiAJcmV0dXJuIGRldmljZUhhbmRsZS0+Y2M7CiB9CiAKKworQUxpbnQg
X19hbGNHZXRBdmFpbGFibGVTYW1wbGVzKEFMdm9pZCk7CisKIHZvaWQgYWxjR2V0SW50ZWdlcnYo
IEFMQ2RldmljZSAqZGV2aWNlSGFuZGxlLCBBTGVudW0gIHRva2VuLAogCQkgICAgIEFMc2l6ZWkg
IHNpemUgLCBBTGludCAqZGVzdCApCiB7CkBAIC0xNTQ2LDYgKzE1NDksOSBAQAogCQkgICAgIHRp
bWUuCiAJCSAgICAgQ2hlY2sgc2l6ZQogCQkgICAqLworCQljYXNlIDB4MzEyOiAgLypBTENfQ0FQ
VFVSRV9TQU1QTEVTOiovCisgICAgICAgICAgKmRlc3QgPSBfX2FsY0dldEF2YWlsYWJsZVNhbXBs
ZXMoKTsKKyAgICAgICAgICBicmVhazsKIAkJY2FzZSBBTENfTUFKT1JfVkVSU0lPTjoKIAkJICAq
ZGVzdCA9IDE7CiAJCSAgYnJlYWs7CkluZGV4OiBzcmMvYXJjaC9hbHNhL2Fsc2EuYwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09ClJDUyBmaWxlOiAvdXNyL2xvY2FsL2N2cy1yZXBvc2l0b3J5L29wZW5hbC9saW51eC9zcmMv
YXJjaC9hbHNhL2Fsc2EuYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS43CmRpZmYgLXUgLXIxLjcg
YWxzYS5jCi0tLSBzcmMvYXJjaC9hbHNhL2Fsc2EuYwkyNSBKYW4gMjAwNCAxNzoxMTo1NyAtMDAw
MAkxLjcKKysrIHNyYy9hcmNoL2Fsc2EvYWxzYS5jCTE2IEZlYiAyMDA0IDIwOjE4OjQwIC0wMDAw
CkBAIC00Niw3ICs0Niw4IEBACiAgKiBnZXQgZWl0aGVyIHRoZSBkZWZhdWx0IGRldmljZSBuYW1l
IG9yIHNvbWV0aGluZyB0aGUKICAqIHVzZXIgc3BlY2lmaWVkCiAgKi8KLXZvaWQgZ2V0X2Rldmlj
ZV9uYW1lKGNoYXIgKnJldHJlZiwgaW50IHJldHNpemUpOworc3RhdGljIHZvaWQgZ2V0X2luX2Rl
dmljZV9uYW1lKGNoYXIgKnJldHJlZiwgaW50IHJldHNpemUpOworc3RhdGljIHZvaWQgZ2V0X291
dF9kZXZpY2VfbmFtZShjaGFyICpyZXRyZWYsIGludCByZXRzaXplKTsKIAogc3RydWN0IGFsc2Ff
aW5mbwogewpAQCAtNTgsNiArNTksNyBAQAogCXVuc2lnbmVkIGludCBwZXJpb2RzOwogCXNuZF9w
Y21fdWZyYW1lc190IGJ1ZmZyYW1lc2l6ZTsKIAlmZF9zZXQgZmRfc2V0OworCWludCBzZXR1cF9y
ZWFkLCBzZXR1cF93cml0ZTsKIH07CiAKIHZvaWQgKnJlbGVhc2VfYWxzYSh2b2lkICpoYW5kbGUp
CkBAIC03NiwxNyArNzgsNzMgQEAKIAogdm9pZCAqZ3JhYl9yZWFkX2Fsc2EoIHZvaWQgKQogewot
CS8qIG5vIGNhcHR1cmUgc3VwcG9ydCAqLwotCXJldHVybiBOVUxMOworCXN0cnVjdCBhbHNhX2lu
Zm8gKnJldHZhbDsKKwlzbmRfcGNtX3QgKmhhbmRsZTsKKwljaGFyIGNhcmRfbmFtZVsyNTZdOwor
CWludCBlcnI7CisKKwlnZXRfaW5fZGV2aWNlX25hbWUoY2FyZF9uYW1lLCAyNTYpOworCisJZXJy
ID0gc25kX3BjbV9vcGVuKCZoYW5kbGUsIGNhcmRfbmFtZSwgU05EX1BDTV9TVFJFQU1fQ0FQVFVS
RSwgMCk7CisJaWYoZXJyIDwgMCkKKwl7CisJCWNvbnN0IGNoYXIgKnNlcnIgPSBzbmRfc3RyZXJy
b3IoZXJyKTsKKworCQlfYWxEZWJ1ZyhBTERfTUFYSU1VUywgX19GSUxFX18sIF9fTElORV9fLAor
CQkJCSJncmFiX2Fsc2E6IGluaXQgZmFpbGVkOiAlc1xuIiwgc2Vycik7CisKKwkJcmV0dXJuIE5V
TEw7CisJfQorCisJcmV0dmFsID0gbWFsbG9jKHNpemVvZiAqcmV0dmFsKTsKKwlyZXR2YWwtPmhh
bmRsZSAgICAgID0gaGFuZGxlOworCXJldHZhbC0+Zm9ybWF0ICAgICAgPSAwOworCXJldHZhbC0+
Y2hhbm5lbHMgICAgPSAwOworCXJldHZhbC0+c3BlZWQgICAgICAgPSAwOworCXJldHZhbC0+ZnJh
bWVzaXplICAgPSAwOworCXJldHZhbC0+YnVmZnJhbWVzaXplPSAwOworCXJldHZhbC0+cGVyaW9k
cyAgICAgPSAwOworCXJldHZhbC0+c2V0dXBfcmVhZAk9IDA7CisJcmV0dmFsLT5zZXR1cF93cml0
ZQk9IDA7CisKKwlfYWxEZWJ1ZyhBTERfTUFYSU1VUywgX19GSUxFX18sIF9fTElORV9fLAorCQkJ
ImdyYWJfYWxzYTogaW5pdCBvaywgdXNpbmcgJXNcbiIsIGNhcmRfbmFtZSk7CisKKwlyZXR1cm4g
cmV0dmFsOworfQorCitzdGF0aWMgdm9pZCBnZXRfb3V0X2RldmljZV9uYW1lKGNoYXIgKnJldHJl
ZiwgaW50IHJldHNpemUpCit7CisJUmN2YXIgcmN2OworCisJYXNzZXJ0KHJldHJlZik7CisKKwlp
ZiAoIShyY3YgPSByY19sb29rdXAoImFsc2EtZGV2aWNlIikpKQorCQlyY3YgPSByY19sb29rdXAo
ImFsc2Etb3V0LWRldmljZSIpOworCWlmIChyY3YgIT0gTlVMTCkKKwl7CisJCWlmKHJjX3R5cGUo
cmN2KSA9PSBBTFJDX1NUUklORykKKwkJeworCQkJcmNfdG9zdHIwKHJjdiwgcmV0cmVmLCByZXRz
aXplKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKKworCQl9CisJfQorCisJYXNz
ZXJ0KChpbnQpIHN0cmxlbihERUZBVUxUX0RFVklDRSkgPCByZXRzaXplKTsKKwlzdHJjcHkocmV0
cmVmLCBERUZBVUxUX0RFVklDRSk7CisKKwlyZXR1cm47CiB9CiAKLXZvaWQgZ2V0X2RldmljZV9u
YW1lKGNoYXIgKnJldHJlZiwgaW50IHJldHNpemUpCitzdGF0aWMgdm9pZCBnZXRfaW5fZGV2aWNl
X25hbWUoY2hhciAqcmV0cmVmLCBpbnQgcmV0c2l6ZSkKIHsKIAlSY3ZhciByY3Y7CiAKIAlhc3Nl
cnQocmV0cmVmKTsKIAotCXJjdiA9IHJjX2xvb2t1cCgiYWxzYS1kZXZpY2UiKTsKKwlpZiAoIShy
Y3YgPSByY19sb29rdXAoImFsc2EtaW4tZGV2aWNlIikpKQorCQlyY3YgPSByY19sb29rdXAoImFs
c2EtZGV2aWNlIik7CiAJaWYocmN2ICE9IE5VTEwpCiAJewogCQlpZihyY190eXBlKHJjdikgPT0g
QUxSQ19TVFJJTkcpCkBAIC0xMTAsOSArMTY4LDkgQEAKIAljaGFyIGNhcmRfbmFtZVsyNTZdOwog
CWludCBlcnI7CiAKLQlnZXRfZGV2aWNlX25hbWUoY2FyZF9uYW1lLCAyNTYpOworCWdldF9vdXRf
ZGV2aWNlX25hbWUoY2FyZF9uYW1lLCAyNTYpOwogCi0JZXJyID0gc25kX3BjbV9vcGVuKCZoYW5k
bGUsIGNhcmRfbmFtZSwgMCwgU05EX1BDTV9TVFJFQU1fUExBWUJBQ0spOworCWVyciA9IHNuZF9w
Y21fb3BlbigmaGFuZGxlLCBjYXJkX25hbWUsIFNORF9QQ01fU1RSRUFNX1BMQVlCQUNLLCAwKTsK
IAlpZihlcnIgPCAwKQogCXsKIAkJY29uc3QgY2hhciAqc2VyciA9IHNuZF9zdHJlcnJvcihlcnIp
OwpAQCAtMTMwLDcgKzE4OCw5IEBACiAJcmV0dmFsLT5zcGVlZCAgICAgICA9IDA7CiAJcmV0dmFs
LT5mcmFtZXNpemUgICA9IDA7CiAJcmV0dmFsLT5idWZmcmFtZXNpemU9IDA7Ci0gICAgICAgIHJl
dHZhbC0+cGVyaW9kcyAgICAgPSAwOworCXJldHZhbC0+cGVyaW9kcyAgICAgPSAwOworCXJldHZh
bC0+c2V0dXBfcmVhZAk9IDA7CisJcmV0dmFsLT5zZXR1cF93cml0ZQk9IDA7CiAKIAlfYWxCbGl0
QnVmZmVyID0gYWxzYV9ibGl0YnVmZmVyOwogCkBAIC0xNDAsMTMgKzIwMCwxNjAgQEAKIAlyZXR1
cm4gcmV0dmFsOwogfQogCi1BTGJvb2xlYW4gc2V0X3JlYWRfYWxzYSggVU5VU0VEKHZvaWQgKmhh
bmRsZSksCi0JCQkgVU5VU0VEKEFMdWludCAqYnVmc2l6KSwKLQkJCSBVTlVTRUQoQUxlbnVtICpm
bXQpLAotCQkJIFVOVVNFRChBTHVpbnQgKnNwZWVkKSkKK0FMYm9vbGVhbiBzZXRfcmVhZF9hbHNh
KCB2b2lkICpoYW5kbGUsCisJCQkgQUx1aW50ICpidWZzaXosCisJCQkgQUxlbnVtICpmbXQsCisJ
CQkgQUx1aW50ICpzcGVlZCkKIHsKLQkvKiBubyBjYXB0dXJlIHN1cHBvcnQgKi8KLQlyZXR1cm4g
QUxfRkFMU0U7CisJc3RydWN0IGFsc2FfaW5mbyAqYWkgPSBoYW5kbGU7CisJc25kX3BjbV9od19w
YXJhbXNfdCAqc2V0dXA7CisJc25kX3BjbV91ZnJhbWVzX3QgYnVmZmVyX3NpemUsIHBlcmlvZF9z
aXplOworCXNuZF9wY21fdCAqcGhhbmRsZSA9IDA7CisJaW50IGVyciwgZGlyOworCXNuZF9vdXRw
dXRfdCAqb3V0OworCisJaWYoIChhaSA9PSBOVUxMKSB8fCAoYWktPmhhbmRsZSA9PSBOVUxMKSAp
CisJCXJldHVybiBBTF9GQUxTRTsKKworCisJaWYgKCpmbXQgPT0gQUxfRk9STUFUX1FVQUQ4X0xP
S0kpCisJCSpmbXQgPSBBTF9GT1JNQVRfU1RFUkVPODsKKwlpZiAoKmZtdCA9PSBBTF9GT1JNQVRf
UVVBRDE2X0xPS0kpCisJCSpmbXQgPSBBTF9GT1JNQVRfU1RFUkVPMTY7CisKKwlhaS0+Y2hhbm5l
bHMgICAgPSAodW5zaWduZWQgaW50KSBfYWxfQUxDSEFOTkVMUygqZm10KTsKKwlhaS0+Zm9ybWF0
ICAgICAgPSAodW5zaWduZWQgaW50KSBBTDJBTFNBRk1UKCpmbXQpOworCWFpLT5zcGVlZCAgICAg
ICA9ICh1bnNpZ25lZCBpbnQpICpzcGVlZDsKKwlhaS0+ZnJhbWVzaXplICAgPSAodW5zaWduZWQg
aW50KSBGUkFNRVNJWkUoYWktPmZvcm1hdCwgYWktPmNoYW5uZWxzKTsKKwlhaS0+YnVmZnJhbWVz
aXplPSAoc25kX3BjbV91ZnJhbWVzX3QpICpidWZzaXogLyBhaS0+ZnJhbWVzaXplICogNDsKKwlh
aS0+cGVyaW9kcyAgICAgPSAyOworCisJX2FsRGVidWcoQUxEX01BWElNVVMsIF9fRklMRV9fLCBf
X0xJTkVfXywKKwkJCSJhbHNhIGluZm8gKHJlYWQpOlxuIlwKKwkJCSIgY2hhbm5lbHM6ICV1XG4i
XAorCQkJIiBmb3JtYXQ6ICV1XG4iXAorCQkJIiBzcGVlZDogJXVcbiJcCisJCQkiIGZyYW1lc2l6
ZTogJXVcbiJcCisJCQkiIGJ1ZmZyYW1lc2l6ZTogJXVcbiJcCisJCQkiIHBlcmlvZHM6ICV1IiwK
KwkJCWFpLT5jaGFubmVscywgYWktPmZvcm1hdCwgYWktPnNwZWVkLCBhaS0+ZnJhbWVzaXplLCBh
aS0+YnVmZnJhbWVzaXplLCBhaS0+cGVyaW9kcyk7CisKKwlwaGFuZGxlID0gYWktPmhhbmRsZTsK
KwlzbmRfb3V0cHV0X3N0ZGlvX2F0dGFjaCAoJm91dCwgc3RkZXJyLCAwKTsKKworCXNuZF9wY21f
aHdfcGFyYW1zX2FsbG9jYSgmc2V0dXApOworCWVyciA9IHNuZF9wY21faHdfcGFyYW1zX2FueShw
aGFuZGxlLCBzZXR1cCk7CisJaWYoZXJyIDwgMCkKKwl7CisJCV9hbERlYnVnKEFMRF9NQVhJTVVT
LCBfX0ZJTEVfXywgX19MSU5FX18sCisJCQkJInNldF9yZWFkX2Fsc2E6IENvdWxkIG5vdCBxdWVy
eSBwYXJhbWV0ZXJzOiAlcyIsc25kX3N0cmVycm9yKGVycikpOworCisJCXJldHVybiBBTF9GQUxT
RTsKKwl9CisKKwkvKiBzZXQgdGhlIGludGVybGVhdmVkIHJlYWQgZm9ybWF0ICovCisJZXJyID0g
c25kX3BjbV9od19wYXJhbXNfc2V0X2FjY2VzcyhwaGFuZGxlLCBzZXR1cCwgU05EX1BDTV9BQ0NF
U1NfUldfSU5URVJMRUFWRUQpOworCWlmIChlcnIgPCAwKSB7CisJCV9hbERlYnVnKEFMRF9NQVhJ
TVVTLCBfX0ZJTEVfXywgX19MSU5FX18sCisJCQkJInNldF9yZWFkX2Fsc2E6IENvdWxkIG5vdCBz
ZXQgYWNjZXNzIHR5cGU6ICVzIixzbmRfc3RyZXJyb3IoZXJyKSk7CisJCXJldHVybiBBTF9GQUxT
RTsKKwl9CisKKwkvKiBzZXQgZm9ybWF0ICovCisJZXJyID0gc25kX3BjbV9od19wYXJhbXNfc2V0
X2Zvcm1hdChwaGFuZGxlLCBzZXR1cCwgYWktPmZvcm1hdCk7CisJaWYoZXJyIDwgMCkKKwl7CisJ
CV9hbERlYnVnKEFMRF9NQVhJTVVTLCBfX0ZJTEVfXywgX19MSU5FX18sCisJCQkJInNldF9yZWFk
X2Fsc2E6IGNvdWxkIG5vdCBzZXQgZm9ybWF0OiAlcyIsc25kX3N0cmVycm9yKGVycikpOworCisJ
CXJldHVybiBBTF9GQUxTRTsKKwl9CisKKworCS8qIGNoYW5uZWxzICovCisJZXJyID0gc25kX3Bj
bV9od19wYXJhbXNfc2V0X2NoYW5uZWxzKHBoYW5kbGUsIHNldHVwLCBhaS0+Y2hhbm5lbHMpOwor
CWlmKGVyciA8IDApCisJeworI2lmIChTTkRfTElCX01BSk9SID09IDApCisJCWVyciA9IHNuZF9w
Y21faHdfcGFyYW1zX2dldF9jaGFubmVscyhzZXR1cCk7CisjZWxzZQorCQlzbmRfcGNtX2h3X3Bh
cmFtc19nZXRfY2hhbm5lbHMoc2V0dXAsICZlcnIpOworI2VuZGlmCisKKwkJaWYgKGVyciAhPSAo
aW50KSAoYWktPmNoYW5uZWxzKSkgeworCQkJX2FsRGVidWcoQUxEX01BWElNVVMsIF9fRklMRV9f
LCBfX0xJTkVfXywKKwkJCQkJInNldF9yZWFkX2Fsc2E6IGNvdWxkIG5vdCBzZXQgY2hhbm5lbHM6
ICVzIixzbmRfc3RyZXJyb3IoZXJyKSk7CisKKwkJCXJldHVybiBBTF9GQUxTRTsKKwkJfQorCX0K
KworCisJLyogc2FtcGxpbmcgcmF0ZSAqLworCWVyciA9IHNuZF9wY21faHdfcGFyYW1zX3NldF9y
YXRlX25lYXIocGhhbmRsZSwgc2V0dXAsICZhaS0+c3BlZWQsIE5VTEwpOworCWlmKGVyciA8IDAp
CisJeworCQlfYWxEZWJ1ZyhBTERfTUFYSU1VUywgX19GSUxFX18sIF9fTElORV9fLAorCQkJCSJz
ZXRfcmVhZF9hbHNhOiBjb3VsZCBub3Qgc2V0IHNwZWVkOiAlcyIsc25kX3N0cmVycm9yKGVycikp
OworCisJCXJldHVybiBBTF9GQUxTRTsKKwl9IGVsc2UgaWYgKGVyciA+IDApIC8qIGVyciBpcyBz
YW1wbGluZyByYXRlIGlmID4gMCAqLworCQlhaS0+c3BlZWQgPSAodW5zaWduZWQgaW50KSBlcnI7
CisKKworCS8qIFNldCBudW1iZXIgb2YgcGVyaW9kcy4gUGVyaW9kcyB1c2VkIHRvIGJlIGNhbGxl
ZCBmcmFnbWVudHMuICovCisJZXJyID0gc25kX3BjbV9od19wYXJhbXNfc2V0X3BlcmlvZHMocGhh
bmRsZSwgc2V0dXAsIGFpLT5wZXJpb2RzLCAwKTsKKwlpZiAoZXJyIDwgMCkgeworCQlfYWxEZWJ1
ZyhBTERfTUFYSU1VUywgX19GSUxFX18sIF9fTElORV9fLAorCQkJCSJzZXRfcmVhZF9hbHNhOiAl
c1xuIiwgc25kX3N0cmVycm9yKGVycikpOworCQlyZXR1cm4gQUxfRkFMU0U7CisJfQorCisJc25k
X3BjbV9od19wYXJhbXNfZHVtcCAoc2V0dXAsIG91dCk7CisJZXJyID0gc25kX3BjbV9od19wYXJh
bXNfc2V0X2J1ZmZlcl9zaXplKHBoYW5kbGUsIHNldHVwLCBhaS0+YnVmZnJhbWVzaXplKTsKKwlz
bmRfcGNtX2h3X3BhcmFtc19kdW1wIChzZXR1cCwgb3V0KTsKKwlpZiAoZXJyIDwgMCkgeworCQlf
YWxEZWJ1ZyhBTERfTUFYSU1VUywgX19GSUxFX18sIF9fTElORV9fLAorCQkJCSJzZXRfcmVhZF9h
bHNhOiAlcywgc2l6ZTogJWQsIHNwZWVkOiAlZFxuIiwKKwkJCQlzbmRfc3RyZXJyb3IoZXJyKSwg
YWktPmJ1ZmZyYW1lc2l6ZSwgYWktPnNwZWVkKTsKKwkJcmV0dXJuIEFMX0ZBTFNFOworCX0KKwor
I2lmIChTTkRfTElCX01BSk9SID09IDApCisJYnVmZmVyX3NpemUgPSBzbmRfcGNtX2h3X3BhcmFt
c19nZXRfYnVmZmVyX3NpemUoc2V0dXApOworCXBlcmlvZF9zaXplID0gc25kX3BjbV9od19wYXJh
bXNfZ2V0X3BlcmlvZF9zaXplKHNldHVwLCAmZGlyKTsKKyNlbHNlCisJc25kX3BjbV9od19wYXJh
bXNfZ2V0X2J1ZmZlcl9zaXplKHNldHVwLCAmYnVmZmVyX3NpemUpOworCXNuZF9wY21faHdfcGFy
YW1zX2dldF9wZXJpb2Rfc2l6ZShzZXR1cCwgJnBlcmlvZF9zaXplLCAmZGlyKTsKKyNlbmRpZgor
CisJX2FsRGVidWcoQUxEX01BWElNVVMsIF9fRklMRV9fLCBfX0xJTkVfXywKKwkJCSJzZXRfcmVh
ZF9hbHNhIChpbmZvKTogQnVmZmVyc2l6ZSA9ICVpICglaSkiLGJ1ZmZlcl9zaXplLCAqYnVmc2l6
KTsKKwlfYWxEZWJ1ZyhBTERfTUFYSU1VUywgX19GSUxFX18sIF9fTElORV9fLAorCQkJInNldF9y
ZWFkX2Fsc2EgKGluZm8pOiBQZXJpb2RzaXplID0gJWkiLCBwZXJpb2Rfc2l6ZSk7CisKKwllcnIg
PSBzbmRfcGNtX2h3X3BhcmFtcyhwaGFuZGxlLCBzZXR1cCk7CisJaWYoZXJyIDwgMCkKKwl7CisJ
CV9hbERlYnVnKEFMRF9NQVhJTVVTLCBfX0ZJTEVfXywgX19MSU5FX18sCisJCQkJInNldF9yZWFk
X2Fsc2E6ICVzXG4iLCBzbmRfc3RyZXJyb3IoZXJyKSk7CisJCXJldHVybiBBTF9GQUxTRTsKKwl9
CisKKwllcnIgPSBzbmRfcGNtX3ByZXBhcmUocGhhbmRsZSk7CisJaWYoZXJyIDwgMCkKKwl7CisJ
CV9hbERlYnVnKEFMRF9NQVhJTVVTLCAgX19GSUxFX18sIF9fTElORV9fLAorCQkJCSJzZXRfcmVh
ZF9hbHNhICVzXG4iLCBzbmRfc3RyZXJyb3IoZXJyKSk7CisJCXJldHVybiBBTF9GQUxTRTsKKwl9
CisKKwlfYWxEZWJ1ZyhBTERfTUFYSU1VUywgX19GSUxFX18sIF9fTElORV9fLAorCQkJInNldF9y
ZWFkX2Fsc2E6IGhhbmRsZTogJXAsIHBoYW5kbGU6ICVwXG4iLCBoYW5kbGUsIHBoYW5kbGUpOwor
CXNuZF9vdXRwdXRfY2xvc2UgKG91dCk7CisJYWktPnNldHVwX3JlYWQgPSAxOworCisJcmV0dXJu
IEFMX1RSVUU7CiB9CiAKIEFMYm9vbGVhbiBzZXRfd3JpdGVfYWxzYSh2b2lkICpoYW5kbGUsCkBA
IC0xNTksNTQgKzM2Niw1NiBAQAogCXNuZF9wY21fdWZyYW1lc190IGJ1ZmZlcl9zaXplLCBwZXJp
b2Rfc2l6ZTsKIAlzbmRfcGNtX3QgKnBoYW5kbGUgPSAwOwogCWludCBlcnIsIGRpcjsKKwlzbmRf
b3V0cHV0X3QgKm91dDsKIAogCWlmKCAoYWkgPT0gTlVMTCkgfHwgKGFpLT5oYW5kbGUgPT0gTlVM
TCkgKQotCSAgcmV0dXJuIEFMX0ZBTFNFOworCQlyZXR1cm4gQUxfRkFMU0U7CiAKIAotICAgICAg
ICBhaS0+Y2hhbm5lbHMgICAgPSAodW5zaWduZWQgaW50KSBfYWxfQUxDSEFOTkVMUygqZm10KTsK
LSAgICAgICAgYWktPmZvcm1hdCAgICAgID0gKHVuc2lnbmVkIGludCkgQUwyQUxTQUZNVCgqZm10
KTsKLSAgICAgICAgYWktPnNwZWVkICAgICAgID0gKHVuc2lnbmVkIGludCkgKnNwZWVkOwotICAg
ICAgICBhaS0+ZnJhbWVzaXplICAgPSAodW5zaWduZWQgaW50KSBGUkFNRVNJWkUoYWktPmZvcm1h
dCwgYWktPmNoYW5uZWxzKTsKKwlhaS0+Y2hhbm5lbHMgICAgPSAodW5zaWduZWQgaW50KSBfYWxf
QUxDSEFOTkVMUygqZm10KTsKKwlhaS0+Zm9ybWF0ICAgICAgPSAodW5zaWduZWQgaW50KSBBTDJB
TFNBRk1UKCpmbXQpOworCWFpLT5zcGVlZCAgICAgICA9ICh1bnNpZ25lZCBpbnQpICpzcGVlZDsK
KwlhaS0+ZnJhbWVzaXplICAgPSAodW5zaWduZWQgaW50KSBGUkFNRVNJWkUoYWktPmZvcm1hdCwg
YWktPmNoYW5uZWxzKTsKIAlhaS0+YnVmZnJhbWVzaXplPSAoc25kX3BjbV91ZnJhbWVzX3QpICpi
dWZzaXogLyBhaS0+ZnJhbWVzaXplICogNDsKLSAgICAgICAgYWktPnBlcmlvZHMgICAgID0gMjsK
KwlhaS0+cGVyaW9kcyAgICAgPSAyOwogCi0gICAgICAgIF9hbERlYnVnKEFMRF9NQVhJTVVTLCBf
X0ZJTEVfXywgX19MSU5FX18sCi0JICAgImFsc2EgaW5mbzpcbiJcCi0JICAgIiBjaGFubmVsczog
JXVcbiJcCi0JICAgIiBmb3JtYXQ6ICV1XG4iXAotCSAgICIgc3BlZWQ6ICV1XG4iXAotCSAgICIg
ZnJhbWVzaXplOiAldVxuIlwKLQkgICAiIGJ1ZmZyYW1lc2l6ZTogJXVcbiJcCi0JICAgIiBwZXJp
b2RzOiAldSIsCi0JIGFpLT5jaGFubmVscywgYWktPmZvcm1hdCwgYWktPnNwZWVkLCBhaS0+ZnJh
bWVzaXplLCBhaS0+YnVmZnJhbWVzaXplLCBhaS0+cGVyaW9kcyk7CisJX2FsRGVidWcoQUxEX01B
WElNVVMsIF9fRklMRV9fLCBfX0xJTkVfXywKKwkJCSJhbHNhIGluZm8gKHdyaXRlKTpcbiJcCisJ
CQkiIGNoYW5uZWxzOiAldVxuIlwKKwkJCSIgZm9ybWF0OiAldVxuIlwKKwkJCSIgc3BlZWQ6ICV1
XG4iXAorCQkJIiBmcmFtZXNpemU6ICV1XG4iXAorCQkJIiBidWZmcmFtZXNpemU6ICV1XG4iXAor
CQkJIiBwZXJpb2RzOiAldSIsCisJCQlhaS0+Y2hhbm5lbHMsIGFpLT5mb3JtYXQsIGFpLT5zcGVl
ZCwgYWktPmZyYW1lc2l6ZSwgYWktPmJ1ZmZyYW1lc2l6ZSwgYWktPnBlcmlvZHMpOwogCi0gICAg
ICAgIHBoYW5kbGUgPSBhaS0+aGFuZGxlOworCXBoYW5kbGUgPSBhaS0+aGFuZGxlOworCXNuZF9v
dXRwdXRfc3RkaW9fYXR0YWNoICgmb3V0LCBzdGRlcnIsIDApOwogCiAJc25kX3BjbV9od19wYXJh
bXNfYWxsb2NhKCZzZXR1cCk7CiAJZXJyID0gc25kX3BjbV9od19wYXJhbXNfYW55KHBoYW5kbGUs
IHNldHVwKTsKIAlpZihlcnIgPCAwKQogCXsKIAkJX2FsRGVidWcoQUxEX01BWElNVVMsIF9fRklM
RV9fLCBfX0xJTkVfXywKLQkJCSAic2V0X3dyaXRlX2Fsc2E6IENvdWxkIG5vdCBxdWVyeSBwYXJh
bWV0ZXJzOiAlcyIsc25kX3N0cmVycm9yKGVycikpOworCQkJCSJzZXRfd3JpdGVfYWxzYTogQ291
bGQgbm90IHF1ZXJ5IHBhcmFtZXRlcnM6ICVzIixzbmRfc3RyZXJyb3IoZXJyKSk7CiAKIAkJcmV0
dXJuIEFMX0ZBTFNFOwogCX0KIAotICAgICAgICAvKiBzZXQgdGhlIGludGVybGVhdmVkIHJlYWQg
Zm9ybWF0ICovCi0gICAgICAgIGVyciA9IHNuZF9wY21faHdfcGFyYW1zX3NldF9hY2Nlc3MocGhh
bmRsZSwgc2V0dXAsIFNORF9QQ01fQUNDRVNTX1JXX0lOVEVSTEVBVkVEKTsKLSAgICAgICAgaWYg
KGVyciA8IDApIHsKLSAgICAgICAgCV9hbERlYnVnKEFMRF9NQVhJTVVTLCBfX0ZJTEVfXywgX19M
SU5FX18sCi0JCQkgInNldF93cml0ZV9hbHNhOiBDb3VsZCBub3Qgc2V0IGFjY2VzcyB0eXBlOiAl
cyIsc25kX3N0cmVycm9yKGVycikpOwotICAgICAgICAgICAgICAgIHJldHVybiBBTF9GQUxTRTsK
LSAgICAgICAgfQorCS8qIHNldCB0aGUgaW50ZXJsZWF2ZWQgd3JpdGUgZm9ybWF0ICovCisJZXJy
ID0gc25kX3BjbV9od19wYXJhbXNfc2V0X2FjY2VzcyhwaGFuZGxlLCBzZXR1cCwgU05EX1BDTV9B
Q0NFU1NfUldfSU5URVJMRUFWRUQpOworCWlmIChlcnIgPCAwKSB7CisJCV9hbERlYnVnKEFMRF9N
QVhJTVVTLCBfX0ZJTEVfXywgX19MSU5FX18sCisJCQkJInNldF93cml0ZV9hbHNhOiBDb3VsZCBu
b3Qgc2V0IGFjY2VzcyB0eXBlOiAlcyIsc25kX3N0cmVycm9yKGVycikpOworCQlyZXR1cm4gQUxf
RkFMU0U7CisJfQogCiAJLyogc2V0IGZvcm1hdCAqLwogCWVyciA9IHNuZF9wY21faHdfcGFyYW1z
X3NldF9mb3JtYXQocGhhbmRsZSwgc2V0dXAsIGFpLT5mb3JtYXQpOwogCWlmKGVyciA8IDApCiAJ
ewogCQlfYWxEZWJ1ZyhBTERfTUFYSU1VUywgX19GSUxFX18sIF9fTElORV9fLAotCQkJICJzZXRf
d3JpdGVfYWxzYTogY291bGQgbm90IHNldCBmb3JtYXQ6ICVzIixzbmRfc3RyZXJyb3IoZXJyKSk7
CisJCQkJInNldF93cml0ZV9hbHNhOiBjb3VsZCBub3Qgc2V0IGZvcm1hdDogJXMiLHNuZF9zdHJl
cnJvcihlcnIpKTsKIAogCQlyZXR1cm4gQUxfRkFMU0U7CiAJfQpAQCAtMjE2LDE2ICs0MjUsMTUg
QEAKIAllcnIgPSBzbmRfcGNtX2h3X3BhcmFtc19zZXRfY2hhbm5lbHMocGhhbmRsZSwgc2V0dXAs
IGFpLT5jaGFubmVscyk7CiAJaWYoZXJyIDwgMCkKIAl7CisjaWYgKFNORF9MSUJfTUFKT1IgPT0g
MCkKKwkJZXJyID0gc25kX3BjbV9od19wYXJhbXNfZ2V0X2NoYW5uZWxzKHNldHVwKTsKKyNlbHNl
CisJCXNuZF9wY21faHdfcGFyYW1zX2dldF9jaGFubmVscyhzZXR1cCwgJmVycik7CisjZW5kaWYK
IAotCQkjaWYgKFNORF9MSUJfTUFKT1IgPT0gMCkKLQkJCWVyciA9IHNuZF9wY21faHdfcGFyYW1z
X2dldF9jaGFubmVscyhzZXR1cCk7Ci0JCSNlbHNlCi0JCQlzbmRfcGNtX2h3X3BhcmFtc19nZXRf
Y2hhbm5lbHMoc2V0dXAsICZlcnIpOwotCQkjZW5kaWYKLQotCQlpZihlcnIhPSAoaW50KSAoYWkt
PmNoYW5uZWxzKSkgeworCQlpZiAoZXJyIT0gKGludCkgKGFpLT5jaGFubmVscykpIHsKIAkJCV9h
bERlYnVnKEFMRF9NQVhJTVVTLCBfX0ZJTEVfXywgX19MSU5FX18sCi0JCQkJICJzZXRfd3JpdGVf
YWxzYTogY291bGQgbm90IHNldCBjaGFubmVsczogJXMiLHNuZF9zdHJlcnJvcihlcnIpKTsKKwkJ
CQkJInNldF93cml0ZV9hbHNhOiBjb3VsZCBub3Qgc2V0IGNoYW5uZWxzOiAlcyIsc25kX3N0cmVy
cm9yKGVycikpOwogCiAJCQlyZXR1cm4gQUxfRkFMU0U7CiAJCX0KQEAgLTIzMyw1MSArNDQxLDUz
IEBACiAKIAogCS8qIHNhbXBsaW5nIHJhdGUgKi8KLQllcnIgPSBzbmRfcGNtX2h3X3BhcmFtc19z
ZXRfcmF0ZV9uZWFyKHBoYW5kbGUsIHNldHVwLCBhaS0+c3BlZWQsIE5VTEwpOworCWVyciA9IHNu
ZF9wY21faHdfcGFyYW1zX3NldF9yYXRlX25lYXIocGhhbmRsZSwgc2V0dXAsICZhaS0+c3BlZWQs
IE5VTEwpOwogCWlmKGVyciA8IDApCiAJewogCQlfYWxEZWJ1ZyhBTERfTUFYSU1VUywgX19GSUxF
X18sIF9fTElORV9fLAotCQkJICJzZXRfd3JpdGVfYWxzYTogY291bGQgbm90IHNldCBzcGVlZDog
JXMiLHNuZF9zdHJlcnJvcihlcnIpKTsKKwkJCQkic2V0X3dyaXRlX2Fsc2E6IGNvdWxkIG5vdCBz
ZXQgc3BlZWQ6ICVzIixzbmRfc3RyZXJyb3IoZXJyKSk7CiAKIAkJcmV0dXJuIEFMX0ZBTFNFOwot
CX0KLQkvKiBlcnIgaXMgc2FtcGxpbmcgcmF0ZSBpZiA+PSAwICovCi0JYWktPnNwZWVkID0gKHVu
c2lnbmVkIGludCkgZXJyOworCX0gZWxzZSBpZiAoZXJyID4gMCkgLyogZXJyIGlzIHNhbXBsaW5n
IHJhdGUgaWYgPiAwICovCisJCWFpLT5zcGVlZCA9ICh1bnNpZ25lZCBpbnQpIGVycjsKIAogCi0g
ICAgICAgIC8qIFNldCBudW1iZXIgb2YgcGVyaW9kcy4gUGVyaW9kcyB1c2VkIHRvIGJlIGNhbGxl
ZCBmcmFnbWVudHMuICovCi0gICAgICAgIGVyciA9IHNuZF9wY21faHdfcGFyYW1zX3NldF9wZXJp
b2RzKHBoYW5kbGUsIHNldHVwLCBhaS0+cGVyaW9kcywgMCk7Ci0gICAgICAgIGlmIChlcnIgPCAw
KSB7Ci0gICAgICAgICAgICAgICAgX2FsRGVidWcoQUxEX01BWElNVVMsIF9fRklMRV9fLCBfX0xJ
TkVfXywKLQkJCSJzZXRfd3JpdGVfYWxzYTogJXNcbiIsIHNuZF9zdHJlcnJvcihlcnIpKTsKKwkv
KiBTZXQgbnVtYmVyIG9mIHBlcmlvZHMuIFBlcmlvZHMgdXNlZCB0byBiZSBjYWxsZWQgZnJhZ21l
bnRzLiAqLworCWVyciA9IHNuZF9wY21faHdfcGFyYW1zX3NldF9wZXJpb2RzKHBoYW5kbGUsIHNl
dHVwLCBhaS0+cGVyaW9kcywgMCk7CisJaWYgKGVyciA8IDApIHsKKwkJX2FsRGVidWcoQUxEX01B
WElNVVMsIF9fRklMRV9fLCBfX0xJTkVfXywKKwkJCQkic2V0X3dyaXRlX2Fsc2E6ICVzXG4iLCBz
bmRfc3RyZXJyb3IoZXJyKSk7CiAJCXJldHVybiBBTF9GQUxTRTsKLSAgICAgICAgfQorCX0KIAot
ICAgICAgICBlcnIgPSBzbmRfcGNtX2h3X3BhcmFtc19zZXRfYnVmZmVyX3NpemUocGhhbmRsZSwg
c2V0dXAsIGFpLT5idWZmcmFtZXNpemUpOwotICAgICAgICBpZiAoZXJyIDwgMCkgewotICAgICAg
ICAgICAgICAgIF9hbERlYnVnKEFMRF9NQVhJTVVTLCBfX0ZJTEVfXywgX19MSU5FX18sCi0JCQki
c2V0X3dyaXRlX2Fsc2E6ICVzXG4iLCBzbmRfc3RyZXJyb3IoZXJyKSk7CisJc25kX3BjbV9od19w
YXJhbXNfZHVtcCAoc2V0dXAsIG91dCk7CisJZXJyID0gc25kX3BjbV9od19wYXJhbXNfc2V0X2J1
ZmZlcl9zaXplKHBoYW5kbGUsIHNldHVwLCBhaS0+YnVmZnJhbWVzaXplKTsKKwlzbmRfcGNtX2h3
X3BhcmFtc19kdW1wIChzZXR1cCwgb3V0KTsKKwlpZiAoZXJyIDwgMCkgeworCQlfYWxEZWJ1ZyhB
TERfTUFYSU1VUywgX19GSUxFX18sIF9fTElORV9fLAorCQkJCSJzZXRfd3JpdGVfYWxzYTogJXMs
IHNpemU6ICVkLCBzcGVlZDogJWRcbiIsCisJCQkJc25kX3N0cmVycm9yKGVyciksIGFpLT5idWZm
cmFtZXNpemUsIGFpLT5zcGVlZCk7CiAJCXJldHVybiBBTF9GQUxTRTsKLSAgICAgICAgfQorCX0K
KworI2lmIChTTkRfTElCX01BSk9SID09IDApCisJYnVmZmVyX3NpemUgPSBzbmRfcGNtX2h3X3Bh
cmFtc19nZXRfYnVmZmVyX3NpemUoc2V0dXApOworCXBlcmlvZF9zaXplID0gc25kX3BjbV9od19w
YXJhbXNfZ2V0X3BlcmlvZF9zaXplKHNldHVwLCAmZGlyKTsKKyNlbHNlCisJc25kX3BjbV9od19w
YXJhbXNfZ2V0X2J1ZmZlcl9zaXplKHNldHVwLCAmYnVmZmVyX3NpemUpOworCXNuZF9wY21faHdf
cGFyYW1zX2dldF9wZXJpb2Rfc2l6ZShzZXR1cCwgJnBlcmlvZF9zaXplLCAmZGlyKTsKKyNlbmRp
ZgogCi0JI2lmIChTTkRfTElCX01BSk9SID09IDApCi0JCWJ1ZmZlcl9zaXplID0gc25kX3BjbV9o
d19wYXJhbXNfZ2V0X2J1ZmZlcl9zaXplKHNldHVwKTsKLQkJcGVyaW9kX3NpemUgPSBzbmRfcGNt
X2h3X3BhcmFtc19nZXRfcGVyaW9kX3NpemUoc2V0dXAsICZkaXIpOwotCSNlbHNlCi0gICAgICAg
IAlzbmRfcGNtX2h3X3BhcmFtc19nZXRfYnVmZmVyX3NpemUoc2V0dXAsICZidWZmZXJfc2l6ZSk7
Ci0JCXNuZF9wY21faHdfcGFyYW1zX2dldF9wZXJpb2Rfc2l6ZShzZXR1cCwgJnBlcmlvZF9zaXpl
LCAmZGlyKTsKLQkjZW5kaWYKLQkKIAlfYWxEZWJ1ZyhBTERfTUFYSU1VUywgX19GSUxFX18sIF9f
TElORV9fLAotCQkic2V0X3dyaXRlX2Fsc2EgKGluZm8pOiBCdWZmZXJzaXplID0gJWkgKCVpKSIs
YnVmZmVyX3NpemUsICpidWZzaXopOworCQkJInNldF93cml0ZV9hbHNhIChpbmZvKTogQnVmZmVy
c2l6ZSA9ICVpICglaSkiLGJ1ZmZlcl9zaXplLCAqYnVmc2l6KTsKIAlfYWxEZWJ1ZyhBTERfTUFY
SU1VUywgX19GSUxFX18sIF9fTElORV9fLAotCQkic2V0X3dyaXRlX2Fsc2EgKGluZm8pOiBQZXJp
b2RzaXplID0gJWkiLCBwZXJpb2Rfc2l6ZSk7CisJCQkic2V0X3dyaXRlX2Fsc2EgKGluZm8pOiBQ
ZXJpb2RzaXplID0gJWkiLCBwZXJpb2Rfc2l6ZSk7CiAKIAllcnIgPSBzbmRfcGNtX2h3X3BhcmFt
cyhwaGFuZGxlLCBzZXR1cCk7CiAJaWYoZXJyIDwgMCkKIAl7CiAJCV9hbERlYnVnKEFMRF9NQVhJ
TVVTLCBfX0ZJTEVfXywgX19MSU5FX18sCi0JCQkic2V0X2Fsc2E6ICVzXG4iLCBzbmRfc3RyZXJy
b3IoZXJyKSk7CisJCQkJInNldF9hbHNhOiAlc1xuIiwgc25kX3N0cmVycm9yKGVycikpOwogCQly
ZXR1cm4gQUxfRkFMU0U7CiAJfQogCkBAIC0yODUsMTAgKzQ5NSwxNSBAQAogCWlmKGVyciA8IDAp
CiAJewogCQlfYWxEZWJ1ZyhBTERfTUFYSU1VUywgIF9fRklMRV9fLCBfX0xJTkVfXywKLQkJCSJz
ZXRfYWxzYSAlc1xuIiwgc25kX3N0cmVycm9yKGVycikpOworCQkJCSJzZXRfYWxzYSAlc1xuIiwg
c25kX3N0cmVycm9yKGVycikpOwogCQlyZXR1cm4gQUxfRkFMU0U7CiAJfQogCisJX2FsRGVidWco
QUxEX01BWElNVVMsIF9fRklMRV9fLCBfX0xJTkVfXywKKwkJCSJzZXRfd3JpdGVfYWxzYTogaGFu
ZGxlOiAlcCwgcGhhbmRsZTogJXBcbiIsIGhhbmRsZSwgcGhhbmRsZSk7CisJc25kX291dHB1dF9j
bG9zZSAob3V0KTsKKwlhaS0+c2V0dXBfd3JpdGUgPSAxOworCiAJcmV0dXJuIEFMX1RSVUU7CiB9
CiAKQEAgLTMwMCwxNiArNTE1LDE2IEBACiAJaW50IGRhdGFfbGVuID0gYnl0ZXM7CiAJaW50IGNo
YW5uZWxzID0gMDsKIAlpbnQgZXJyOwotICAgICAgICBzbmRfcGNtX3VmcmFtZXNfdCBmcmFtZXM7
CisJc25kX3BjbV91ZnJhbWVzX3QgZnJhbWVzOwogCi0JaWYoKGFpID09IE5VTEwpIHx8IChhaS0+
aGFuZGxlID09IE5VTEwpKQorCWlmKChhaSA9PSBOVUxMKSB8fCAoYWktPmhhbmRsZSA9PSBOVUxM
KSB8fCAoIWFpLT5zZXR1cF93cml0ZSkpCiAJewogCQlyZXR1cm47CiAJfQogCiAJcGhhbmRsZSA9
IGFpLT5oYW5kbGU7Ci0gICAgICAgIGNoYW5uZWxzPSBhaS0+Y2hhbm5lbHM7Ci0gICAgICAgIGZy
YW1lcyAgPSAoc25kX3BjbV91ZnJhbWVzX3QpIGJ5dGVzIC8gYWktPmZyYW1lc2l6ZTsKKwljaGFu
bmVscz0gYWktPmNoYW5uZWxzOworCWZyYW1lcyAgPSAoc25kX3BjbV91ZnJhbWVzX3QpIGJ5dGVz
IC8gYWktPmZyYW1lc2l6ZTsKIAogCXdoaWxlKGRhdGFfbGVuID4gMCkKIAl7CkBAIC0zNDcsNiAr
NTYyLDQwIEBACiAKIAlyZXR1cm47CiB9CisKKy8qIGNhcHR1cmUgZGF0YSBmcm9tIHRoZSBhdWRp
byBkZXZpY2UgKi8KK0FMc2l6ZWkgY2FwdHVyZV9hbHNhKHZvaWQgKmhhbmRsZSwKKwkJdm9pZCAq
Y2FwdHVyZV9idWZmZXIsCisJCWludCBidWZzaXplKQoreworCXN0cnVjdCBhbHNhX2luZm8gKmFp
ID0gaGFuZGxlOworCXNuZF9wY21fdCAqcGhhbmRsZSA9IDA7CisJY2hhciAqcGRhdGEgPSBjYXB0
dXJlX2J1ZmZlcjsKKwlpbnQgcmV0OworCXNuZF9wY21fdWZyYW1lc190IGZyYW1lczsKKworCWlm
ICgoYWkgPT0gTlVMTCkgfHwgKGFpLT5oYW5kbGUgPT0gTlVMTCkgfHwgKCFhaS0+c2V0dXBfcmVh
ZCkpCisJCXJldHVybiAwOworCisJcGhhbmRsZSA9IGFpLT5oYW5kbGU7CisJZnJhbWVzID0gKHNu
ZF9wY21fdWZyYW1lc190KSBidWZzaXplIC8gYWktPmZyYW1lc2l6ZTsKK2dyYWI6CisKKwlfYWxE
ZWJ1ZyhBTERfTUFYSU1VUywgX19GSUxFX18sIF9fTElORV9fLAorCQkJInNldF9yZWFkX2Fsc2E6
IGhhbmRsZTogJXAsIHBoYW5kbGU6ICVwXG4iLCBoYW5kbGUsIHBoYW5kbGUpOworCXJldCA9IHNu
ZF9wY21fcmVhZGkgKHBoYW5kbGUsIHBkYXRhLCBmcmFtZXMpOworCWlmIChyZXQgPCAwKSB7CisJ
CWZwcmludGYoc3RkZXJyLCAiRXJyb3IsIG92ZXJydW46ICVkLCB0cnlpbmcgdG8gcmVjb3Zlci5c
biIsIHJldCk7CisJCXJldCA9IHNuZF9wY21fcHJlcGFyZShwaGFuZGxlKTsKKwkJaWYgKHJldCA8
IDApCisJCQlmcHJpbnRmKHN0ZGVyciwgIlVuYWJsZSB0byByZWNvdmVyOiAlZFxuIiwgcmV0KTsK
KwkJZWxzZQorCQkJZ290byBncmFiOworCQlyZXR1cm4gMDsKKwl9IGVsc2UKKwkJcmV0dXJuIHJl
dCAqIGFpLT5mcmFtZXNpemU7Cit9CisKIAogc3RhdGljIGludCBBTDJBTFNBRk1UKEFMZW51bSBm
b3JtYXQpIHsKIAlzd2l0Y2goZm9ybWF0KSB7CkluZGV4OiBzcmMvYXJjaC9hbHNhL2Fsc2EuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09ClJDUyBmaWxlOiAvdXNyL2xvY2FsL2N2cy1yZXBvc2l0b3J5L29wZW5hbC9saW51
eC9zcmMvYXJjaC9hbHNhL2Fsc2EuaCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xLjEuMQpkaWZm
IC11IC1yMS4xLjEuMSBhbHNhLmgKLS0tIHNyYy9hcmNoL2Fsc2EvYWxzYS5oCTE4IE1hciAyMDAy
IDE0OjQxOjQ0IC0wMDAwCTEuMS4xLjEKKysrIHNyYy9hcmNoL2Fsc2EvYWxzYS5oCTE2IEZlYiAy
MDA0IDIwOjE4OjQwIC0wMDAwCkBAIC0xNyw1ICsxNyw4IEBACiAJCQkgIEFMdWludCAqYnVmc2l6
LAogCQkJICBBTGVudW0gKmZtdCwKIAkJCSAgQUx1aW50ICpzcGVlZCk7CitBTHNpemVpIGNhcHR1
cmVfYWxzYSh2b2lkICpoYW5kbGUsCisJCXZvaWQgKmNhcHR1cmVfYnVmZmVyLAorCQlpbnQgYnVm
c2l6KTsKIAogI2VuZGlmIC8qIEFMU0FfSF8gKi8KSW5kZXg6IHNyYy9hcmNoL2ludGVyZmFjZS9p
bnRlcmZhY2Vfc291bmQuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvdXNyL2xvY2FsL2N2cy1yZXBv
c2l0b3J5L29wZW5hbC9saW51eC9zcmMvYXJjaC9pbnRlcmZhY2UvaW50ZXJmYWNlX3NvdW5kLmMs
dgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMwpkaWZmIC11IC1yMS4zIGludGVyZmFjZV9zb3VuZC5j
Ci0tLSBzcmMvYXJjaC9pbnRlcmZhY2UvaW50ZXJmYWNlX3NvdW5kLmMJMjAgSnVuIDIwMDMgMTk6
MjM6MDcgLTAwMDAJMS4zCisrKyBzcmMvYXJjaC9pbnRlcmZhY2UvaW50ZXJmYWNlX3NvdW5kLmMJ
MTYgRmViIDIwMDQgMjA6MTg6NDAgLTAwMDAKQEAgLTQxMyw2ICs0MTMsOCBAQAogCQkgIGJ5dGVz
ID0gY2FwdHVyZV9lbXUxMGsxKGhhbmRsZSwgY2FwdHVyZV9idWZmZXIsIGJ1ZnNpeik7CiAJCSAg
YnJlYWs7CiAJCWNhc2UgTEFfQUxTQToKKwkJICBieXRlcyA9IGNhcHR1cmVfYWxzYShoYW5kbGUs
IGNhcHR1cmVfYnVmZmVyLCBidWZzaXopOworCQkgIGJyZWFrOwogCQljYXNlIExBX1NETDoKIAkJ
Y2FzZSBMQV9BUlRTOgogCQljYXNlIExBX0VTRDoKSW5kZXg6IHNyYy9hcmNoL2xpbnV4L2xpbl9k
c3AuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvdXNyL2xvY2FsL2N2cy1yZXBvc2l0b3J5L29wZW5h
bC9saW51eC9zcmMvYXJjaC9saW51eC9saW5fZHNwLmMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEu
OApkaWZmIC11IC1yMS44IGxpbl9kc3AuYwotLS0gc3JjL2FyY2gvbGludXgvbGluX2RzcC5jCTgg
QXVnIDIwMDMgMTI6NDI6MDggLTAwMDAJMS44CisrKyBzcmMvYXJjaC9saW51eC9saW5fZHNwLmMJ
MTYgRmViIDIwMDQgMjA6MTg6NDAgLTAwMDAKQEAgLTQ0Niw2ICs0NDYsOSBAQAogCWludCByZXR2
YWw7CiAKIAlyZXR2YWwgPSByZWFkKHJlYWRfZmQsIGNhcHR1cmVfYnVmZmVyLCBidWZzaXopOwor
CisvKmlmIChyZXR2YWwgPCAwKSBwcmludGYoIiVzXG4iLCBzdHJlcnJvcihlcnJubykpOyovCisK
IAlyZXR1cm4gcmV0dmFsID4gMCA/IHJldHZhbCA6IDA7CiB9CiAKQEAgLTYzMyw3ICs2MzYsNyBA
QAogCQkgKiBUaGlzIGlzIGZvciByZWFkaW5nLiAgRG9uJ3QgcmVhbGx5IHVzZQogCQkgKiB0aGUg
c3BlZWQgYXJndW1lbnQuCiAJCSAqLwotCQkqc3BlZWQgPSA4MDAwOworCQkqc3BlZWQgPSAxNjAw
MDsKIAogCQkvKiBUcnkgdG8gc2V0IHRoZSBzcGVlZCAoaWdub3JlIHZhbHVlKSwgdGhlbiByZWFk
IGl0IGJhY2sgKi8KICAgICAgICAgICAgICAgICBpb2N0bChkc3BfZmQsIFNORENUTF9EU1BfU1BF
RUQsIHNwZWVkKTsKSW5kZXg6IHNyYy9leHRlbnNpb25zL2FsX2V4dF9jYXB0dXJlLmMKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQpSQ1MgZmlsZTogL3Vzci9sb2NhbC9jdnMtcmVwb3NpdG9yeS9vcGVuYWwvbGludXgvc3Jj
L2V4dGVuc2lvbnMvYWxfZXh0X2NhcHR1cmUuYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xLjEu
MQpkaWZmIC11IC1yMS4xLjEuMSBhbF9leHRfY2FwdHVyZS5jCi0tLSBzcmMvZXh0ZW5zaW9ucy9h
bF9leHRfY2FwdHVyZS5jCTE4IE1hciAyMDAyIDE0OjQxOjQ0IC0wMDAwCTEuMS4xLjEKKysrIHNy
Yy9leHRlbnNpb25zL2FsX2V4dF9jYXB0dXJlLmMJMTYgRmViIDIwMDQgMjA6MTg6NDAgLTAwMDAK
QEAgLTQ1LDYgKzQ1LDExIEBACiAJQUxfRVhUX1BBSVIoYWxDYXB0dXJlU3RvcF9FWFQpLAogCUFM
X0VYVF9QQUlSKGFsQ2FwdHVyZUdldERhdGFfRVhUKSwKIAlBTF9FWFRfUEFJUihhbENhcHR1cmVE
ZXN0cm95X0VYVCksCisJQUxfRVhUX1BBSVIoYWxjQ2FwdHVyZU9wZW5EZXZpY2UpLAorCUFMX0VY
VF9QQUlSKGFsY0NhcHR1cmVDbG9zZURldmljZSksCisJQUxfRVhUX1BBSVIoYWxjQ2FwdHVyZVN0
YXJ0KSwKKwlBTF9FWFRfUEFJUihhbGNDYXB0dXJlU3RvcCksCisJQUxfRVhUX1BBSVIoYWxjQ2Fw
dHVyZVNhbXBsZXMpLAogCXsgTlVMTCwgTlVMTCB9CiB9OwogCkBAIC0xNzEsMTQgKzE3NiwxNiBA
QAogCQkgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdCwgZGV2LT5mb3JtYXQsIHNhbXBsZXMp
OwogCQlzaXplICo9IChfYWxfZm9ybWF0Yml0cyhkZXYtPmZvcm1hdCkgLyA4KTsKIAotICAgICAg
ICAJaWYgKCBuID4gKEFMc2l6ZWkpc2l6ZSApCisgICAgICAgCWlmICggbiA+IChBTHNpemVpKXNp
emUgKQogCQkJdGVtcCA9IG1hbGxvYyggbiApOwogCQllbHNlCiAJCQl0ZW1wID0gbWFsbG9jKCBz
aXplICk7CiAKIAkJaWYgKCBzaXplID4gMCApIHsKIAkJCXNpemUgPSBfYWxjRGV2aWNlUmVhZChj
aWQsIHRlbXAsIHNpemUpOworCQl9CiAKKwkJaWYgKCBzaXplID4gMCApIHsKIAkJCXRlbXAgPSBf
YWxCdWZmZXJDYW5vbml6ZURhdGEoZGV2LT5mb3JtYXQsCiAJCQkJCQkgICAgIHRlbXAsCiAJCQkJ
CQkgICAgIHNpemUsCkBAIC0xODksOCArMTk2LDggQEAKIAkJCQkJCSAgICAgQUxfVFJVRSk7CiAJ
CX0gZWxzZSB7CiAJCQkvKiBIbW0sIHplcm8gc2l6ZSBpbiByZWNvcmQuLiAqLwotCQkJbWVtc2V0
KHRlbXAsIDAsIG4pOwotCQkJc2l6ZSA9IG47CisJCQkvKm1lbXNldCh0ZW1wLCAwLCBuKTsqLwor
CQkJc2l6ZSA9IDA7CiAJCX0KIAkJaWYodGVtcCA9PSBOVUxMKSB7CiAJCQlmcHJpbnRmKHN0ZGVy
ciwgImNvdWxkIG5vdCBjYW5vbml6ZSBkYXRhXG4iKTsKQEAgLTIwMywzICsyMTAsMjI3IEBACiAJ
fQogCXJldHVybiBzaXplOwogfQorCisKKy8qIEhhY2tlZCBpbiBBTENfRVhUX2NhcHR1cmUgc3Vw
cG9ydC4gIC0tcnlhbi4gKi8KKy8qIFRoaXMgZG9lc24ndCBzdXBwb3J0IG11bHRpcGxlIGRldmlj
ZXMsIGRldmljZSBlbnVtZXJhdGlvbiwgb3IgY2FwdHVyZSAqLworLyogIGRldmljZXMgc2VwZXJh
dGUgZnJvbSBhbiBleGlzdGluZyBjb250ZXh0LiBIb3cgcGFpbmZ1bC4gKi8KKworLyogcmluZyBi
dWZmZXIgZnVuY3Rpb25hbGl0eS4uLiAqLworCit0eXBlZGVmIHN0cnVjdAoreworICAgIEFMdWJ5
dGUgKmJ1ZmZlcjsKKyAgICBBTHNpemVpIHNpemU7CisgICAgQUxzaXplaSB3cml0ZTsKKyAgICBB
THNpemVpIHJlYWQ7CisgICAgQUxzaXplaSB1c2VkOworfSBfX0FMUmluZ0J1ZmZlcjsKKworc3Rh
dGljIEFMYm9vbGVhbiBfX2FsUmluZ0J1ZmZlckluaXQoX19BTFJpbmdCdWZmZXIgKnJpbmcsIEFM
c2l6ZWkgc2l6ZSk7CitzdGF0aWMgQUx2b2lkIF9fYWxSaW5nQnVmZmVyU2h1dGRvd24oX19BTFJp
bmdCdWZmZXIgKnJpbmcpOworc3RhdGljIEFMc2l6ZWkgX19hbFJpbmdCdWZmZXJTaXplKF9fQUxS
aW5nQnVmZmVyICpyaW5nKTsKK3N0YXRpYyBBTHZvaWQgX19hbFJpbmdCdWZmZXJQdXQoX19BTFJp
bmdCdWZmZXIgKnJpbmcsIEFMdWJ5dGUgKmRhdGEsIEFMc2l6ZWkgc2l6ZSk7CitzdGF0aWMgQUxz
aXplaSBfX2FsUmluZ0J1ZmZlckdldChfX0FMUmluZ0J1ZmZlciAqcmluZywgQUx1Ynl0ZSAqZGF0
YSwgQUxzaXplaSBzaXplKTsKKworc3RhdGljIF9fQUxSaW5nQnVmZmVyIGNhcHR1cmVSaW5nOwor
CitzdGF0aWMgQUxib29sZWFuIF9fYWxSaW5nQnVmZmVySW5pdChfX0FMUmluZ0J1ZmZlciAqcmlu
ZywgQUxzaXplaSBzaXplKQoreworICAgIEFMdWJ5dGUgKnB0ciA9IChBTHVieXRlICopIHJlYWxs
b2MocmluZy0+YnVmZmVyLCBzaXplKTsKKyAgICBpZiAocHRyID09IE5VTEwpCisgICAgICAgIHJl
dHVybihBTF9GQUxTRSk7CisKKyAgICByaW5nLT5idWZmZXIgPSBwdHI7CisgICAgcmluZy0+c2l6
ZSA9IHNpemU7CisgICAgcmluZy0+d3JpdGUgPSAwOworICAgIHJpbmctPnJlYWQgPSAwOworICAg
IHJpbmctPnVzZWQgPSAwOworICAgIHJldHVybihBTF9UUlVFKTsKK30gLyogX19hbFJpbmdCdWZm
ZXJJbml0ICovCisKK3N0YXRpYyBBTHZvaWQgX19hbFJpbmdCdWZmZXJTaHV0ZG93bihfX0FMUmlu
Z0J1ZmZlciAqcmluZykKK3sKKyAgICBmcmVlKHJpbmctPmJ1ZmZlcik7CisgICAgcmluZy0+YnVm
ZmVyID0gTlVMTDsKK30gLyogX19hbFJpbmdCdWZmZXJTaHV0ZG93biAqLworCitzdGF0aWMgQUxz
aXplaSBfX2FsUmluZ0J1ZmZlclNpemUoX19BTFJpbmdCdWZmZXIgKnJpbmcpCit7CisgICAgcmV0
dXJuKHJpbmctPnVzZWQpOworfSAvKiBfX2FsUmluZ0J1ZmZlclNpemUgKi8KKworc3RhdGljIEFM
dm9pZCBfX2FsUmluZ0J1ZmZlclB1dChfX0FMUmluZ0J1ZmZlciAqcmluZywgQUx1Ynl0ZSAqZGF0
YSwgQUxzaXplaSBfc2l6ZSkKK3sKKyAgICByZWdpc3RlciBBTHNpemVpIHNpemUgPSBfc2l6ZTsK
KyAgICByZWdpc3RlciBBTHNpemVpIGNweTsKKyAgICByZWdpc3RlciBBTHNpemVpIGF2YWlsOwor
CisgICAgaWYgKCFzaXplKSAgIC8qIGp1c3QgaW4gY2FzZS4uLiAqLworICAgICAgICByZXR1cm47
CisKKyAgICAvKiBQdXR0aW5nIG1vcmUgZGF0YSB0aGFuIHJpbmcgYnVmZmVyIGhvbGRzIGluIHRv
dGFsPyBSZXBsYWNlIGl0IGFsbC4gKi8KKyAgICBpZiAoc2l6ZSA+IHJpbmctPnNpemUpCisgICAg
eworICAgICAgICByaW5nLT53cml0ZSA9IDA7CisgICAgICAgIHJpbmctPnJlYWQgPSAwOworICAg
ICAgICByaW5nLT51c2VkID0gcmluZy0+c2l6ZTsKKyAgICAgICAgbWVtY3B5KHJpbmctPmJ1ZmZl
ciwgZGF0YSArIChzaXplIC0gcmluZy0+c2l6ZSksIHJpbmctPnNpemUpOworICAgICAgICByZXR1
cm47CisgICAgfSAvKiBpZiAqLworCisgICAgLyogQnVmZmVyIG92ZXJmbG93PyBQdXNoIHJlYWQg
cG9pbnRlciB0byBvbGRlc3Qgc2FtcGxlIG5vdCBvdmVyd3JpdHRlbi4gKi8KKyAgICBhdmFpbCA9
IHJpbmctPnNpemUgLSByaW5nLT51c2VkOworICAgIGlmIChzaXplID4gYXZhaWwpCisgICAgewor
ICAgICAgICByaW5nLT5yZWFkICs9IHNpemUgLSBhdmFpbDsKKyAgICAgICAgaWYgKHJpbmctPnJl
YWQgPiByaW5nLT5zaXplKQorICAgICAgICAgICAgcmluZy0+cmVhZCAtPSByaW5nLT5zaXplOwor
ICAgIH0gLyogaWYgKi8KKworICAgIC8qIENsaXAgdG8gZW5kIG9mIGJ1ZmZlciBhbmQgY29weSBm
aXJzdCBibG9jay4uLiAqLworICAgIGNweSA9IHJpbmctPnNpemUgLSByaW5nLT53cml0ZTsKKyAg
ICBpZiAoc2l6ZSA8IGNweSkKKyAgICAgICAgY3B5ID0gc2l6ZTsKKyAgICBpZiAoY3B5KSBtZW1j
cHkocmluZy0+YnVmZmVyICsgcmluZy0+d3JpdGUsIGRhdGEsIGNweSk7CisKKyAgICAvKiBXcmFw
IGFyb3VuZCB0byBmcm9udCBvZiByaW5nIGJ1ZmZlciBhbmQgY29weSByZW1haW5pbmcgZGF0YS4u
LiAqLworICAgIGF2YWlsID0gc2l6ZSAtIGNweTsKKyAgICBpZiAoYXZhaWwpIG1lbWNweShyaW5n
LT5idWZmZXIsIGRhdGEgKyBjcHksIGF2YWlsKTsKKworICAgIC8qIFVwZGF0ZSB3cml0ZSBwb2lu
dGVyLi4uICovCisgICAgcmluZy0+d3JpdGUgKz0gc2l6ZTsKKyAgICBpZiAocmluZy0+d3JpdGUg
PiByaW5nLT5zaXplKQorICAgICAgICByaW5nLT53cml0ZSAtPSByaW5nLT5zaXplOworCisgICAg
cmluZy0+dXNlZCArPSBzaXplOworICAgIGlmIChyaW5nLT51c2VkID4gcmluZy0+c2l6ZSkKKyAg
ICAgICAgcmluZy0+dXNlZCA9IHJpbmctPnNpemU7Cit9IC8qIF9fYWxSaW5nQnVmZmVyUHV0ICov
CisKK3N0YXRpYyBBTHNpemVpIF9fYWxSaW5nQnVmZmVyR2V0KF9fQUxSaW5nQnVmZmVyICpyaW5n
LCBBTHVieXRlICpkYXRhLCBBTHNpemVpIF9zaXplKQoreworICAgIHJlZ2lzdGVyIEFMc2l6ZWkg
Y3B5OworICAgIHJlZ2lzdGVyIEFMc2l6ZWkgc2l6ZSA9IF9zaXplOworICAgIHJlZ2lzdGVyIEFM
c2l6ZWkgYXZhaWwgPSByaW5nLT51c2VkOworCisgICAgLyogQ2xhbXAgYW1vdW50IHRvIHJlYWQg
dG8gYXZhaWxhYmxlIGRhdGEuLi4gKi8KKyAgICBpZiAoc2l6ZSA+IGF2YWlsKQorICAgICAgICBz
aXplID0gYXZhaWw7CisgICAgCisgICAgLyogQ2xpcCB0byBlbmQgb2YgYnVmZmVyIGFuZCBjb3B5
IGZpcnN0IGJsb2NrLi4uICovCisgICAgY3B5ID0gcmluZy0+c2l6ZSAtIHJpbmctPnJlYWQ7Cisg
ICAgaWYgKGNweSA+IHNpemUpIGNweSA9IHNpemU7CisgICAgaWYgKGNweSkgbWVtY3B5KGRhdGEs
IHJpbmctPmJ1ZmZlciArIHJpbmctPnJlYWQsIGNweSk7CisgICAgCisgICAgLyogV3JhcCBhcm91
bmQgdG8gZnJvbnQgb2YgcmluZyBidWZmZXIgYW5kIGNvcHkgcmVtYWluaW5nIGRhdGEuLi4gKi8K
KyAgICBhdmFpbCA9IHNpemUgLSBjcHk7CisgICAgaWYgKGF2YWlsKSBtZW1jcHkoZGF0YSArIGNw
eSwgcmluZy0+YnVmZmVyLCBhdmFpbCk7CisKKyAgICAvKiBVcGRhdGUgcmVhZCBwb2ludGVyLi4u
ICovCisgICAgcmluZy0+cmVhZCArPSBzaXplOworICAgIGlmIChyaW5nLT5yZWFkID4gcmluZy0+
c2l6ZSkKKyAgICAgICAgcmluZy0+cmVhZCAtPSByaW5nLT5zaXplOworCisgICAgcmluZy0+dXNl
ZCAtPSBzaXplOworCisgICAgcmV0dXJuKHNpemUpOyAgLyogbWF5IGhhdmUgYmVlbiBjbGFtcGVk
IGlmIHRoZXJlIHdhc24ndCBlbm91Z2ggZGF0YS4uLiAqLworfSAvKiBfX2FsUmluZ0J1ZmZlckdl
dCAqLworCisKK3N0YXRpYyBBTGVudW0gY2FwdHVyZUZtdCA9IEFMX05PTkU7CitzdGF0aWMgQUx1
aW50IGNhcHR1cmVGcmVxID0gMDsKK3N0YXRpYyBBTGludCBjYXB0dXJlRm10U2l6ZSA9IDA7CisK
K0FMQ2RldmljZSAqYWxjQ2FwdHVyZU9wZW5EZXZpY2UoY29uc3QgQUx1Ynl0ZSAqZGV2aWNlTmFt
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQUx1aW50IGZyZXEsIEFMZW51bSBm
bXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFMc2l6ZWkgYnVmc2l6ZSkKK3sK
KyAgICBBTENkZXZpY2UgKnJldHZhbDsKKwlBTF9jb250ZXh0ICpjYzsKKwlBTHVpbnQgY2lkOwor
CisgICAgaWYgKGRldmljZU5hbWUgIT0gTlVMTCkgIC8qICEhISBGSVhNRSAqLworICAgICAgICBy
ZXR1cm4gTlVMTDsKKworICAgIHN3aXRjaCAoZm10KSAgLyogdHJ5IHRvIGtlZXAgdGhpcyBzYW5l
IGZvciBub3cuLi4gKi8KKyAgICB7CisgICAgICAgIGNhc2UgQUxfRk9STUFUX01PTk84OgorICAg
ICAgICBjYXNlIEFMX0ZPUk1BVF9NT05PMTY6CisgICAgICAgIGNhc2UgQUxfRk9STUFUX1NURVJF
Tzg6CisgICAgICAgIGNhc2UgQUxfRk9STUFUX1NURVJFTzE2OgorICAgICAgICAgICAgYnJlYWs7
ICAvKiBva2F5IGZvcm1hdC4gKi8KKworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgcmV0
dXJuKE5VTEwpOworICAgIH0KKworICAgIGNhcHR1cmVGbXQgPSBmbXQ7CisgICAgY2FwdHVyZUZy
ZXEgPSBmcmVxOworICAgIGNhcHR1cmVGbXRTaXplID0gKF9hbF9mb3JtYXRiaXRzKGZtdCkgLyA4
KTsKKyAgICBpZiAoKGZtdCA9PSBBTF9GT1JNQVRfU1RFUkVPOCkgfHwgKGZtdCA9PSBBTF9GT1JN
QVRfU1RFUkVPMTYpKQorICAgICAgICBjYXB0dXJlRm10U2l6ZSAqPSAyOworCisgICAgYnVmc2l6
ZSAqPSBjYXB0dXJlRm10U2l6ZTsKKworICAgIGlmICghX19hbFJpbmdCdWZmZXJJbml0KCZjYXB0
dXJlUmluZywgYnVmc2l6ZSkpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKCFhbENh
cHR1cmVJbml0X0VYVChmbXQsIGZyZXEsIGJ1ZnNpemUpKQorICAgICAgICByZXR1cm4gTlVMTDsK
KworCWNpZCA9IF9hbGNDQ0lkOworCV9hbGNMb2NrQ29udGV4dCggY2lkICk7CisJY2MgPSBfYWxj
R2V0Q29udGV4dChjaWQpOworICAgIHJldHZhbCA9IGNjLT5yZWFkX2RldmljZTsKKwlyZXR2YWwt
PmNjID0gY2M7CisgICAgX2FsY1VubG9ja0NvbnRleHQoIGNpZCApOworCisgICAgZnByaW50Zihz
dGRlcnIsICJXQVJOSU5HOiBBTENfRVhUX2NhcHR1cmUgaXMgc3ViamVjdCB0byBjaGFuZ2UhXG4i
KTsKKworICAgIHJldHVybihyZXR2YWwpOworfQorCitBTHZvaWQgYWxjQ2FwdHVyZUNsb3NlRGV2
aWNlKEFMQ2RldmljZSAqZGV2KQoreworICAgIGlmIChkZXYgPT0gTlVMTCkKKyAgICAgICAgcmV0
dXJuOworCisgICAgYWxDYXB0dXJlRGVzdHJveV9FWFQoKTsKKyAgICBfX2FsUmluZ0J1ZmZlclNo
dXRkb3duKCZjYXB0dXJlUmluZyk7Cit9CisKK0FMdm9pZCBhbGNDYXB0dXJlU3RhcnQodm9pZCkK
K3sKKyAgICBhbENhcHR1cmVTdGFydF9FWFQoKTsKK30KKworQUx2b2lkIGFsY0NhcHR1cmVTdG9w
KHZvaWQpCit7CisgICAgYWxDYXB0dXJlU3RvcF9FWFQoKTsKK30KKworLyogISEhIEZJWE1FOiBO
b3QgaWRlYWw7IHJlYWRzIHNhbXBsZXMgaW4gQUxDX0NBUFRVUkVfU0FNUExFUyBxdWVyeSAqLwor
LyogISEhIEZJWE1FOiBzaG91bGQgcXVlcnkgaGFyZHdhcmUgaGVyZSBhbmQgZG8gcmVhZCBpbiBh
bGNDYXB0dXJlU2FtcGxlcygpICovCitBTGludCBfX2FsY0dldEF2YWlsYWJsZVNhbXBsZXMoQUx2
b2lkKQoreworICAgIHN0YXRpYyBBTHVieXRlIGJ1ZlsxMDI0XTsKKyAgICBBTHNpemVpIGdvdCA9
IGFsQ2FwdHVyZUdldERhdGFfRVhUKGJ1Ziwgc2l6ZW9mIChidWYpLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY2FwdHVyZUZtdCwgY2FwdHVyZUZyZXEpOworICAgIGlm
IChnb3QgPiAwKQorICAgICAgICBfX2FsUmluZ0J1ZmZlclB1dCgmY2FwdHVyZVJpbmcsIGJ1Ziwg
Z290KTsKKworICAgIC8qcHJpbnRmKCJnb3QgJWQgaGF2ZSAlZFxuIiwgKGludCkgZ290LCAoaW50
KSAoX19hbFJpbmdCdWZmZXJTaXplKCZjYXB0dXJlUmluZykgLyBjYXB0dXJlRm10U2l6ZSkpOyov
CisKKyAgICByZXR1cm4oX19hbFJpbmdCdWZmZXJTaXplKCZjYXB0dXJlUmluZykgLyBjYXB0dXJl
Rm10U2l6ZSk7Cit9CisKKworQUx2b2lkIGFsY0NhcHR1cmVTYW1wbGVzKEFMQ2RldmljZSAqZGV2
aWNlLCBBTHZvaWQgKmJ1ZiwgQUxzaXplaSBzYW1wcykKK3sKKyAgICBpZiAoKF9fYWxSaW5nQnVm
ZmVyU2l6ZSgmY2FwdHVyZVJpbmcpIC8gY2FwdHVyZUZtdFNpemUpIDwgc2FtcHMpCisgICAgICAg
IHJldHVybjsgIC8qICEhISBGSVhNRTogVGhpcyBpcyBhbiBlcnJvciBjb25kaXRpb24hICovCisK
KyAgICBfX2FsUmluZ0J1ZmZlckdldCgmY2FwdHVyZVJpbmcsIGJ1Ziwgc2FtcHMgKiBjYXB0dXJl
Rm10U2l6ZSk7Cit9CisKSW5kZXg6IHNyYy9leHRlbnNpb25zL2FsX2V4dF9jYXB0dXJlLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQpSQ1MgZmlsZTogL3Vzci9sb2NhbC9jdnMtcmVwb3NpdG9yeS9vcGVuYWwvbGludXgv
c3JjL2V4dGVuc2lvbnMvYWxfZXh0X2NhcHR1cmUuaCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4x
LjEuMQpkaWZmIC11IC1yMS4xLjEuMSBhbF9leHRfY2FwdHVyZS5oCi0tLSBzcmMvZXh0ZW5zaW9u
cy9hbF9leHRfY2FwdHVyZS5oCTE4IE1hciAyMDAyIDE0OjQxOjQ0IC0wMDAwCTEuMS4xLjEKKysr
IHNyYy9leHRlbnNpb25zL2FsX2V4dF9jYXB0dXJlLmgJMTYgRmViIDIwMDQgMjA6MTg6NDAgLTAw
MDAKQEAgLTEzLDYgKzEzLDE2IEBACiAKICNpbmNsdWRlIDxBTC9hbGV4dC5oPgogCitBTENkZXZp
Y2UgKmFsY0NhcHR1cmVPcGVuRGV2aWNlKGNvbnN0IEFMdWJ5dGUgKmRldmljZU5hbWUsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFMdWludCBmcmVxLCBBTGVudW0gZm10LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBTHNpemVpIGJ1ZnNpemUpOworQUx2b2lkIGFs
Y0NhcHR1cmVDbG9zZURldmljZShBTENkZXZpY2UgKmRldik7CitBTHZvaWQgYWxjQ2FwdHVyZVN0
YXJ0KHZvaWQpOworQUx2b2lkIGFsY0NhcHR1cmVTdG9wKHZvaWQpOworQUxpbnQgX19hbGNHZXRB
dmFpbGFibGVTYW1wbGVzKEFMdm9pZCk7CitBTHZvaWQgYWxjQ2FwdHVyZVNhbXBsZXMoQUxDZGV2
aWNlICpkZXZpY2UsIEFMdm9pZCAqYnVmLCBBTHNpemVpIHNhbXBzKTsKKworCiAvKgogICogYWxJ
bml0Q2FwdHVyZSggdm9pZCApCiAgKgpAQCAtMzgsNyArNDgsMTIgQEAKIAlBTF9FWFRfUEFJUihh
bENhcHR1cmVTdGFydF9FWFQpLCAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKIAlBTF9FWFRf
UEFJUihhbENhcHR1cmVTdG9wX0VYVCksICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKIAlB
TF9FWFRfUEFJUihhbENhcHR1cmVHZXREYXRhX0VYVCksICAgICAgICAgICAgICAgICAgICAgICAg
IFwKLQlBTF9FWFRfUEFJUihhbENhcHR1cmVEZXN0cm95X0VYVCkgICAgICAgICAgICAgICAgICAg
ICAgICAgXAorCUFMX0VYVF9QQUlSKGFsQ2FwdHVyZURlc3Ryb3lfRVhUKSwgICAgICAgICAgICAg
ICAgICAgICAgICAgXAorCUFMX0VYVF9QQUlSKGFsY0NhcHR1cmVPcGVuRGV2aWNlKSwgICAgICAg
ICAgICAgICAgICAgICAgICAgXAorCUFMX0VYVF9QQUlSKGFsY0NhcHR1cmVDbG9zZURldmljZSks
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKKwlBTF9FWFRfUEFJUihhbGNDYXB0dXJlU3RhcnQp
LCAgICAgICAgICAgICAgICAgICAgICAgICBcCisJQUxfRVhUX1BBSVIoYWxjQ2FwdHVyZVN0b3Ap
LCAgICAgICAgICAgICAgICAgICAgICAgICBcCisJQUxfRVhUX1BBSVIoYWxjQ2FwdHVyZVNhbXBs
ZXMpICAgICAgICAgICAgICAgICAgICAgICAgIFwKIAogLyogaW5pdGlhbGl6YXRpb24gYW5kIGRl
c3RydWN0aW9uIGZ1bmN0aW9ucyAqLwogCg==
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>25818</attachid>
            <date>2004-02-17 18:49 0000</date>
            <desc>fixed openal-cvs-20040317.ebuild</desc>
            <filename>openal-cvs-20040317.ebuild</filename>
            <type>text/plain</type>
            <data encoding="base64">IyBDb3B5cmlnaHQgMTk5OS0yMDAzIEdlbnRvbyBUZWNobm9sb2dpZXMsIEluYy4KIyBEaXN0cmli
dXRlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHYy
CiMgJEhlYWRlcjogJAoKaW5oZXJpdCBjdnMKCklVU0U9ImFsc2EgYXJ0cyBlc2Qgc2RsIGRlYnVn
IG9nZ3ZvcmJpcyBtcGVnIgpERVNDUklQVElPTj0iT3BlbkFMIENWUyBlYnVpbGQgIgpTUkNfVVJJ
PSIiCkhPTUVQQUdFPSJodHRwOi8vb3BlbnNvdXJjZS5jcmVhdGl2ZS5jb20vIgoKUz0ke1dPUktE
SVJ9LyR7RUNWU19NT0RVTEV9CkxJQ0VOU0U9IkdQTC0yIgpTTE9UPSIwIgpLRVlXT1JEUz0ifng4
NiIKCkRFUEVORD0ieDg2PyAoIGRldi1sYW5nL25hc20gKQoJYWxzYT8gKCBtZWRpYS1saWJzL2Fs
c2EtbGliICkKCWFydHM/ICgga2RlLWJhc2UvYXJ0cyApCgllc2Q/ICggbWVkaWEtc291bmQvZXNv
dW5kICkKCXNkbD8gKCBtZWRpYS1saWJzL2xpYnNkbCApCglvZ2d2b3JiaXM/ICggbWVkaWEtbGli
cy9saWJ2b3JiaXMgKQoJbXBlZz8gKCBtZWRpYS1saWJzL3NtcGVnICkiClBST1ZJREU9Im1lZGlh
LWxpYnMvb3BlbmFsIgoKRUNWU19TRVJWRVI9Im9wZW5zb3VyY2UuY3JlYXRpdmUuY29tOi91c3Iv
bG9jYWwvY3ZzLXJlcG9zaXRvcnkiCkVDVlNfTU9EVUxFPSJvcGVuYWwiCkVDVlNfVVNFUj0iZ3Vl
c3QiCkVDVlNfUEFTUz0iZ3Vlc3QiCgpzcmNfY29tcGlsZSgpIHsKCWxvY2FsIG15Y29uZgoKCXVz
ZSBlc2QgJiYgbXljb25mPSIke215Y29uZn0gLS1lbmFibGUtZXNkIgoJdXNlIHNkbCAmJiBteWNv
bmY9IiR7bXljb25mfSAtLWVuYWJsZS1zZGwiCgl1c2UgYWxzYSAmJiBteWNvbmY9IiR7bXljb25m
fSAtLWVuYWJsZS1hbHNhIgoJdXNlIGFydHMgJiYgbXljb25mPSIke215Y29uZn0gLS1lbmFibGUt
YXJ0cyIKCXVzZSBtcGVnICYmIG15Y29uZj0iJHtteWNvbmZ9IC0tZW5hYmxlLXNtcGVnIgoJdXNl
IG9nZ3ZvcmJpcyAmJiBteWNvbmY9IiR7bXljb25mfSAtLWVuYWJsZS12b3JiaXMiCgl1c2UgZGVi
dWcgJiYgbXljb25mPSIke215Y29uZn0gLS1lbmFibGUtZGVidWctbWF4aW11cyIKCgljZCAke1N9
L2xpbnV4Cgl1c2UgYWxzYSAmJiBlcGF0Y2ggJHtGSUxFU0RJUn0vb3BlbmFsX2NhcF9jdnMuZGlm
ZgoJV0FOVF9BVVRPQ09ORl8yXzU9MSAuL2F1dG9nZW4uc2ggfHwgZGllCgkuL2NvbmZpZ3VyZSAg
LS1wcmVmaXg9L3VzciAke215Y29uZn0gLS1lbmFibGUtcGFyYW5vaWQtbG9ja3MgLS1lbmFibGUt
Y2FwdHVyZSB8fCBkaWUKCWVtYWtlIGFsbCB8fCBkaWUKfQoKc3JjX2luc3RhbGwoKSB7CgljZCAk
e1N9L2xpbnV4CgoJbWFrZSBpbnN0YWxsIERFU1RESVI9JHtEfS91c3IvfHwgZGllCgoJZG9kb2Mg
Q1JFRElUUyBDaGFuZ2VMb2cgSU5TVEFMTCBOT1RFUyBQTEFURk9STSBUT0RPCgltYWtlaW5mbyBk
b2Mvb3BlbmFsLnRleGkKCWRvaW5mbyBkb2Mvb3BlbmFsLmluZm8KCgljZCAke1N9Cglkb2RvYyBD
SEFOR0VTIENPUFlJTkcgQ1JFRElUUwoJZG9odG1sIGRvY3MvKi5odG1sCn0KCnBrZ19wb3N0aW5z
dCgpIHsKCWVpbmZvICJZb3UgY2FuIHVzZSB0aGlzIG9wZW5hbCB3aXRoIHlvdXIgZmF2b3JpdGUg
dW5yZWFsIGVuZ2luZSBiYXNlZCBnYW1lIgoJZWluZm8gImJ5IG1ha2luZyBhIHN5bWxpbmsgZnJv
bSAvdXNyL2xpYi9saWJvcGVuYWwuc28uMC4wLjcgdG8gdGhlIgoJZWluZm8gIm9wZW5hbC5zbyBp
biB0aGUgR2FtZSdzIFN5c3RlbSBkaXJlY3RvcnkuIgoJZWluZm8gIlRvIGdldCB0aGlzIHdvcmtp
bmcgd2l0aCB2b2ljZSBjaGF0IGluIFVUMjAwNCwgcmVmZXIgdG8iCgllaW5mbyAiaHR0cDovL2lj
Y3VsdXMub3JnL353YXJwL3V0MjAwNC8iCn0K
</data>        

          </attachment>
    </bug>

</bugzilla>