Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 29 Jul 2004 01:52:22 +0900
From:      Norikatsu Shigemura <nork@FreeBSD.org>
To:        freebsd-current@FreeBSD.org, developers@FreeBSD.org
Cc:        f.hardy@hexanet.fr
Subject:   Re: Synaptics Touchpad xfree driver hack :)
Message-ID:  <20040729015222.0949b382.nork@FreeBSD.org>
In-Reply-To: <863c3cqkn2.fsf@kamino.rfc1149.org>
References:  <41067F70.3010308@hexanet.fr> <863c3cqkn2.fsf@kamino.rfc1149.org>

next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.

--Multipart=_Thu__29_Jul_2004_01_52_22_+0900_J9SQZX8UG6XYVLLz
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

	Anyone, would you please commit attached patch?

On Wed, 28 Jul 2004 16:19:45 +0200
Arne Schwabe <arne@rfc2549.org> wrote:
> > I have a compaq 2519eu with a synaptics touchpad.
> > I was tried your driver, but I can not patch may kernel.
> > I am using a freeBSD 4.10 CURRENT.
> > Have you got any solutions ?
> I have written the Driver  for 5-Current, but at the Moment I have no
> time for 4.10, but it should not be too difficult if you can do it
> yourself, the touchpad should work without the driver but without the
> advanced features.

	I have the driver modified arne's patch to clean up.  I am
	testing from before half a year -- the result is good.

--Multipart=_Thu__29_Jul_2004_01_52_22_+0900_J9SQZX8UG6XYVLLz
Content-Type: application/octet-stream;
 name="synaptic-current.diff"
Content-Disposition: attachment;
 filename="synaptic-current.diff"
Content-Transfer-Encoding: base64

PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CihjZCAvdXNyL3Ny
YyAmJiBwYXRjaCAtcDYpIDwgc3luYXB0aWMtY3VycmVudC5kaWZmCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gLy9kZXBvdC92ZW5kb3IvZnJlZWJzZC9z
cmMvc3lzL2lzYS9wc20uYwkyMDA0LzA3LzE2IDIyOjA1OjM0CisrKyAvL2RlcG90L3VzZXIvbm9y
ay9ub3JrX21vYmlsZS9zeXMvaXNhL3BzbS5jCTIwMDQvMDcvMjggMTY6MDA6MTkKQEAgLTE1OSw2
ICsxNTksNyBAQAogICAgIHN0cnVjdCByZXNvdXJjZSAqaW50cjsJLyogSVJRIHJlc291cmNlICov
CiAgICAgdm9pZAkgICppaDsJCS8qIGludGVycnVwdCBoYW5kbGUgKi8KICAgICBtb3VzZWh3X3Qg
ICAgIGh3OwkJLyogaGFyZHdhcmUgaW5mb3JtYXRpb24gKi8KKyAgICBzeW5hcHRpY3Nod190IHN5
bmh3OyAgICAvKiBTeW5hcHRpY3Mgc3BlY2lmaWMgaGFyZHdhcmUgaW5mb3JtYXRpb24gKi8KICAg
ICBtb3VzZW1vZGVfdCAgIG1vZGU7CQkvKiBvcGVyYXRpb24gbW9kZSAqLwogICAgIG1vdXNlbW9k
ZV90ICAgZGZsdF9tb2RlOwkvKiBkZWZhdWx0IG9wZXJhdGlvbiBtb2RlICovCiAgICAgbW91c2Vz
dGF0dXNfdCBzdGF0dXM7CS8qIGFjY3VtdWxhdGVkIG1vdXNlIG1vdmVtZW50ICovCkBAIC0yOTAs
NiArMjkxLDcgQEAKIHN0YXRpYyBwcm9iZWZ1bmNfdCBlbmFibGVfNGRtb3VzZTsKIHN0YXRpYyBw
cm9iZWZ1bmNfdCBlbmFibGVfNGRwbHVzOwogc3RhdGljIHByb2JlZnVuY190IGVuYWJsZV9tbWFu
cGx1czsKK3N0YXRpYyBwcm9iZWZ1bmNfdCBlbmFibGVfc3luYXB0aWNzOwogc3RhdGljIHByb2Jl
ZnVuY190IGVuYWJsZV92ZXJzYXBhZDsKIHN0YXRpYyBpbnQgdGFtZV9tb3VzZShzdHJ1Y3QgcHNt
X3NvZnRjICosIHBhY2tldGJ1Zl90ICosIG1vdXNlc3RhdHVzX3QgKiwgdW5zaWduZWQgY2hhciAq
KTsKIApAQCAtMzIzLDYgKzMyNSw4IEBACiAgICAgICAweDgwLCBNT1VTRV9QUzJfUEFDS0VUU0la
RSwgZW5hYmxlX2ttb3VzZSwgfSwKICAgICB7IE1PVVNFX01PREVMX1ZFUlNBUEFELAkJLyogSW50
ZXJsaW5rIGVsZWN0cm9uaWNzIFZlcnNhUGFkICovCiAgICAgICAweGU4LCBNT1VTRV9QUzJWRVJT
QV9QQUNLRVRTSVpFLCBlbmFibGVfdmVyc2FwYWQsIH0sCisgICAgeyBNT1VTRV9NT0RFTF9TWU5B
UFRJQ1MsCQkvKiBTeW5hcHRpY3MgVG91Y2hwYWQgKi8KKyAgICAgIDB4YzAsIE1PVVNFX1NZTkFQ
VElDU19QQUNLRVRTSVpFLCBlbmFibGVfc3luYXB0aWNzLCB9LAogICAgIHsgTU9VU0VfTU9ERUxf
R0VORVJJQywKICAgICAgIDB4YzAsIE1PVVNFX1BTMl9QQUNLRVRTSVpFLCBOVUxMLCB9LAogfTsK
QEAgLTU3OCw2ICs1ODIsNyBAQAogICAgICAgICB7IE1PVVNFX01PREVMX0VYUExPUkVSLAkJIklu
dGVsbGlNb3VzZSBFeHBsb3JlciIgfSwKICAgICAgICAgeyBNT1VTRV9NT0RFTF80RCwJCSI0RCBN
b3VzZSIgfSwKICAgICAgICAgeyBNT1VTRV9NT0RFTF80RFBMVVMsCQkiNEQrIE1vdXNlIiB9LAor
ICAgICAgICB7IE1PVVNFX01PREVMX1NZTkFQVElDUywJIlN5bmFwdGljcyBUb3VjaHBhZCIgfSwK
ICAgICAgICAgeyBNT1VTRV9NT0RFTF9HRU5FUklDLAkJIkdlbmVyaWMgUFMvMiBtb3VzZSIgfSwK
ICAgICAgICAgeyBNT1VTRV9NT0RFTF9VTktOT1dOLAkJTlVMTCB9LAogICAgIH07CkBAIC0xNzE5
LDYgKzE3MjQsMTIgQEAKIAlzcGx4KHMpOwogICAgICAgICBicmVhazsKIAorICAgIGNhc2UgTU9V
U0VfU1lOR0VUSFdJTkZPOgorCXMgPSBzcGx0dHkoKTsKKwkqKHN5bmFwdGljc2h3X3QgKilhZGRy
ID0gc2MtPnN5bmh3OworCXNwbHgocyk7CisJYnJlYWs7CisKICAgICBjYXNlIE9MRF9NT1VTRV9H
RVRNT0RFOgogCXMgPSBzcGx0dHkoKTsKIAlzd2l0Y2ggKHNjLT5tb2RlLmxldmVsKSB7CkBAIC0x
ODk2LDYgKzE5MDcsMjggQEAKIAl1bmJsb2NrX21vdXNlX2RhdGEoc2MsIGNvbW1hbmRfYnl0ZSk7
CiAJYnJlYWs7CiAKKyAgICBjYXNlIE1PVVNFX1NZTkFQVElDU19DTUQ6CisJaWYgKHNjLT5ody5t
b2RlbCAhPSBNT1VTRV9NT0RFTF9TWU5BUFRJQ1MgfHwgc2MtPm1vZGUubGV2ZWwgPCBQU01fTEVW
RUxfTkFUSVZFKQorCQlyZXR1cm4gRUlOVkFMOworCisJbW91c2VfZXh0X2NvbW1hbmQoc2MtPmti
ZGMsICooaW50ICopYWRkcik7IAorCXNldF9tb3VzZV9zYW1wbGluZ19yYXRlKHNjLT5rYmRjLCAw
eDAwMTQpOworCWJyZWFrOworCisgICAgY2FzZSBNT1VTRV9TWU5BUFRJQ1NfSU5GTzoKKwlpZiAo
c2MtPmh3Lm1vZGVsICE9IE1PVVNFX01PREVMX1NZTkFQVElDUyB8fCBzYy0+bW9kZS5sZXZlbCA8
IFBTTV9MRVZFTF9OQVRJVkUpCisJCXJldHVybiBFSU5WQUw7CisKKwltb3VzZV9leHRfY29tbWFu
ZChzYy0+a2JkYywgKihpbnQgKilhZGRyKTsgCisJc2VuZF9hdXhfY29tbWFuZChzYy0+a2JkYywg
UFNNQ19TRU5EX0RFVl9TVEFUVVMpOworCXNldF9tb3VzZV9zYW1wbGluZ19yYXRlKHNjLT5rYmRj
LCAweDAwMTQpOworCWJyZWFrOworCisgICAgY2FzZSBNT1VTRV9TWU5BUFRJQ1NfRU5BQkxFX1BB
U1NUSFJPVUdIOgorCWlmIChzYy0+aHcubW9kZWwgIT0gTU9VU0VfTU9ERUxfU1lOQVBUSUNTIHx8
IHNjLT5tb2RlLmxldmVsIDwgUFNNX0xFVkVMX05BVElWRSkKKwkJcmV0dXJuIEVJTlZBTDsKKwli
cmVhazsKKwogI2lmIChkZWZpbmVkKE1PVVNFX1NFVFJFU09MVVRJT04pKQogICAgIGNhc2UgTU9V
U0VfU0VUUkVTT0xVVElPTjoKIAltb2RlLnJlc29sdXRpb24gPSAqKGludCAqKWFkZHI7CkBAIC0y
MTU0LDcgKzIxODcsNyBAQAogICAgIH07CiAgICAgcmVnaXN0ZXIgc3RydWN0IHBzbV9zb2Z0YyAq
c2MgPSBhcmc7CiAgICAgbW91c2VzdGF0dXNfdCBtczsKLSAgICBpbnQgeCwgeSwgejsKKyAgICBp
bnQgeCwgeSwgeiwgdzsKICAgICBpbnQgYzsKICAgICBpbnQgbDsKICAgICBpbnQgeDAsIHkwOwpA
QCAtMjQ0NCw2ICsyNDc3LDg1IEBACiAJICAgIH0KIAkgICAgYnJlYWs7CiAKKwljYXNlIE1PVVNF
X01PREVMX1NZTkFQVElDUzoKKwkgICAgLyogVG91Y2hQYWQgUFMvMiBhYnNvbHV0ZSBtb2RlIG1l
c3NhZ2UgZm9ybWF0CisJICAgICAqCisJICAgICAqICBCaXRzOiAgICAgICAgNyAgIDYgICA1ICAg
NCAgIDMgICAyICAgMSAgIDAgKExTQikKKwkgICAgICogIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCSAgICAgKiAgaXBhY2tldFswXTogIDEgICAwICBX
MyAgVzIgICAwICBXMSAgIFIgICBMCisJICAgICAqICBpcGFja2V0WzFdOiBZYiAgWWEgIFk5ICBZ
OCAgWGIgIFhhICBYOSAgWDgKKwkgICAgICogIGlwYWNrZXRbMl06IFo3ICBaNiAgWjUgIFo0ICBa
MyAgWjIgIFoxICBaMAorCSAgICAgKiAgaXBhY2tldFszXTogIDEgICAxICBZYyAgWGMgICAwICBX
MCAgIEQgICBVCisJICAgICAqICBpcGFja2V0WzRdOiBYNyAgWDYgIFg1ICBYNCAgWDMgIFgyICBY
MSAgWDAKKwkgICAgICogIGlwYWNrZXRbNV06IFk3ICBZNiAgWTUgIFk0ICBZMyAgWTIgIFkxICBZ
MAorCSAgICAgKgorCSAgICAgKiBMZWdlbmQ6CisJICAgICAqICBMOiBsZWZ0IHBoeXNpY2FsIG1v
dXNlIGJ1dHRvbgorCSAgICAgKiAgUjogcmlnaHQgcGh5c2ljYWwgbW91c2UgYnV0dG9uCisJICAg
ICAqICBEOiBkb3duIGJ1dHRvbgorCSAgICAgKiAgVTogdXAgYnV0dG9uCisJICAgICAqICBXOiAi
d3Jpc3QiIHZhbHVlCisJICAgICAqICBYOiB4IHBvc2l0aW9uCisJICAgICAqICBZOiB4IHBvc2l0
aW9uCisJICAgICAqICBaOiBwcmVzc3VyZQorCSAgICAgKgorCSAgICAgKiBBYnNvbHV0ZSByZXBv
cnRhYmxlIGxpbWl0czogICAgMCAtIDYxNDMuCisJICAgICAqIFR5cGljYWwgYmV6ZWwgbGltaXRl
czogICAgICAxNDcyIC0gNTQ3Mi4KKwkgICAgICogVHlwaWNhbCBlZGdlIG1hcmluZ3M6ICAgICAg
IDE2MzIgLSA1MzEyLgorCSAgICAgKiB3ID0gMyBQYXNzdGhyb3VnaCBQYWNrZXQKKwkgICAgICog
KEkgaG9wZSBJIGd1ZXNzZWQgcmlnaHQsIGJ1dCBsb29rcyBhcyBpZiBJIGhhZCBsdWNrIDopKQor
CSAgICAgKgorCSAgICAgKiBCeXRlIDIsNSw2ID09IEJ5dGUgMSwyLDMgb2YgIkd1ZXN0IgorCSAg
ICAgKi8KKworCSAgICAvKiBTYW5pdHkgY2hlY2sgZm9yIG91dCBvZiBzeW5jIHBhY2tldHMuICov
CisJICAgIGlmICgocGItPmlwYWNrZXRbMF0gJiAweGM4KSAhPSAweDgwIHx8IChwYi0+aXBhY2tl
dFszXSAmIDB4YzgpICE9IDB4YzApCisJCWNvbnRpbnVlOworCisJICAgIHggPSB5ID0geDAgPSB5
MCA9IDA7CisKKwkgICAgLyogcHJlc3N1cmUgKi8KKwkgICAgeiA9IHBiLT5pcGFja2V0WzJdOwor
CSAgICB3ID0gKChwYi0+aXBhY2tldFswXSAmIDB4MzApID4+IDIpIHwKKwkJKChwYi0+aXBhY2tl
dFswXSAmIDB4MDQpID4+IDEpIHwKKwkJKChwYi0+aXBhY2tldFszXSAmIDB4MDQpID4+IDIpOwor
CisJICAgIG1zLmJ1dHRvbiA9IDA7CisJICAgIGlmIChwYi0+aXBhY2tldFswXSAmIDB4MDEpCisJ
CW1zLmJ1dHRvbiB8PSBNT1VTRV9CVVRUT04xRE9XTjsKKwkgICAgaWYgKHBiLT5pcGFja2V0WzBd
ICYgMHgwMikKKwkJbXMuYnV0dG9uIHw9IE1PVVNFX0JVVFRPTjNET1dOOworCisJICAgIGlmICgo
cGItPmlwYWNrZXRbM10gJiAweDAxKSAmJiAhKHBiLT5pcGFja2V0WzBdICYgMHgwMSkpCisJCW1z
LmJ1dHRvbiB8PSBNT1VTRV9CVVRUT04yRE9XTjsKKwkgICAgaWYgKChwYi0+aXBhY2tldFszXSAm
IDB4MDIpICYmICEocGItPmlwYWNrZXRbMF0gJiAweDAyKSkKKwkJbXMuYnV0dG9uIHw9IE1PVVNF
X0JVVFRPTjRET1dOOworCisJICAgIC8qIFRoZXJlIGlzIGEgZmluZ2VyIG9uIHRoZSBwYWQgKi8K
KwkgICAgaWYgKCh3ID49IDQgJiYgdyA8PSA3KSAmJiAoeiA+PSAxNiAmJiB6IDwgMjAwKSApIHsK
KwkJeDAgPSAoKHBiLT5pcGFja2V0WzNdICYgMHgxMCkgPDwgOCkgfCAoKHBiLT5pcGFja2V0WzFd
ICYgMHgwZikgPDwgOCkgfAorCQkgICAgcGItPmlwYWNrZXRbNF07CisJCXkwID0gKChwYi0+aXBh
Y2tldFszXSAmIDB4MjApIDw8IDcpIHwgKChwYi0+aXBhY2tldFsxXSAmIDB4ZjApIDw8IDQpIHwK
KwkJICAgIHBiLT5pcGFja2V0WzVdOworCisJCWlmIChzYy0+ZmxhZ3MgJiBQU01fRkxBR1NfRklO
R0VSRE9XTikgeworCQkgICAgeDAgPSAoeDAgKyBzYy0+eG9sZCAqIDMpIC8gNDsKKwkJICAgIHkw
ID0gKHkwICsgc2MtPnlvbGQgKiAzKSAvIDQ7CisKKwkJICAgIHggPSAoeDAgLSBzYy0+eG9sZCkg
LyA0OworCQkgICAgeSA9ICh5MCAtIHNjLT55b2xkKSAvIDQ7CisJCX0gZWxzZSB7CisJCSAgICBz
Yy0+ZmxhZ3MgfD0gUFNNX0ZMQUdTX0ZJTkdFUkRPV047CisJCX0KKworCQlzYy0+eG9sZCA9IHgw
OworCQlzYy0+eW9sZCA9IHkwOworCSAgICB9IGVsc2UgeworCQlzYy0+ZmxhZ3MgJj0gflBTTV9G
TEFHU19GSU5HRVJET1dOOworCSAgICB9CisJICAgIHogPSAwOworCSAgICBicmVhazsKKwogCWNh
c2UgTU9VU0VfTU9ERUxfR0VORVJJQzoKIAlkZWZhdWx0OgogCSAgICBicmVhazsKQEAgLTI2Njcs
NiArMjc3OSwxMjYgQEAKICAgICByZXR1cm4gVFJVRTsKIH0KIAorLyogU3luYXB0aWNzIFRvdWNo
cGFkICovCitzdGF0aWMgaW50CitlbmFibGVfc3luYXB0aWNzKHN0cnVjdCBwc21fc29mdGMgKnNj
KQoreworICAgIGludCBzdGF0dXNbM107CisKKyAgICBLQkRDIGtiZGMgPSBzYy0+a2JkYzsKKwor
ICAgIGRpc2FibGVfYXV4X2RldihrYmRjKTsKKyAgICBzZXRfbW91c2Vfc2NhbGluZyhrYmRjLCAx
KTsgIC8qIEp1c3QgdG8gYmUgb24gdGhlIHNhZmUgc2lkZSAqLworIAorICAgIGlmKCFtb3VzZV9l
eHRfY29tbWFuZChrYmRjLCAwKSkKKwlyZXR1cm4gRkFMU0U7CisKKyAgICBpZiggZ2V0X21vdXNl
X3N0YXR1cyhrYmRjLCBzdGF0dXMsIDAsIDMpICE9IDMpCisJcmV0dXJuIEZBTFNFOworCisgICAg
aWYoc3RhdHVzWzFdICE9IDB4NDcpCS8qIElmIGl0IGlzIGEgU3luYXB0aWNzIGJ5dGUyIGlzICQ0
NyAqLworCXJldHVybiBGQUxTRTsKKworICAgIC8qIElkZW50aWZ5IHRoZSBUb3VjaHBhZCB2ZXJz
aW9uIG51bWJlciAqLworICAgIHNjLT5zeW5ody5pbmZvTWlub3IgPSBzdGF0dXNbMF07CS8qIHRo
ZSBmaXJzdCBCeXRlIGNvbnRhaW5zIHRoZSBtaW5vciB2ZXJzaW9uIG51bWJlciAqLworICAgIC8q
IHRoZSBsb3dlciA0IGJpdHMgb2YgdGhpcmQgQnl0ZSBjb250YWluIHRoZSBpbmZvTWFqb3IgKi8K
KyAgICAvKiB0aGUgdXBwZXIgNCBiaXRzIG9mIHRoaXJkIEJ5dGUgY29udGFpbiB0aGUgKG9ic29s
dGUpIGluZm9Nb2RlbENvZGUgKi8KKyAgICBzYy0+c3luaHcuaW5mb01ham9yID0gc3RhdHVzWzJd
ICYgMHgwZjsKKyAgICBpZih2ZXJib3NlID49IDIpIHsKKwlwcmludGYoIlN5bmFwdGljcyBUb3Vj
aHBhZDpcbiIpOworCXByaW50ZigiICBWZXJzaW9uOiAlZC4lZFxuIiwgc2MtPnN5bmh3LmluZm9N
YWpvciwgc2MtPnN5bmh3LmluZm9NaW5vcik7CisgICAgfQorCisgICAgaWYoc2MtPnN5bmh3Lmlu
Zm9NYWpvciA8IDQpIHsKKwlwcmludGYoIlN5bmFwdGljcyBwcmlvciBWZXJzaW9uIDQgZGV0ZWN0
ZWQsIHRoaXMgaXMgbm90ICh5ZXQ/KSBzdXBwb3J0ZWRcbiIpOworCXJldHVybiBGQUxTRTsKKyAg
ICB9CisKKyAgICBpZighbW91c2VfZXh0X2NvbW1hbmQoa2JkYywgMykpCisJcmV0dXJuIEZBTFNF
OworCisgICAgaWYoZ2V0X21vdXNlX3N0YXR1cyhrYmRjLCBzdGF0dXMsIDAsIDMpICE9IDMpCisJ
cmV0dXJuIEZBTFNFOworCisgICAgaWYoKHN0YXR1c1sxXSAmIDB4MDEpICE9IDApIHsKKwlwcmlu
dGYoIiAgQ291bGQgbm90IHJlYWQgTW9kZWwgaWQgQnl0ZXMgZnJvbSB0aGUgVG91Y2hwYWQiKTsK
KwlyZXR1cm4gRkFMU0U7CisgICAgfQorCisgICAgc2MtPnN5bmh3LmluZm9Sb3QxODAgICA9IChz
dGF0dXNbMF0gJiAweDgwKSA+PiA3OworICAgIHNjLT5zeW5ody5pbmZvUG9ydHJhaXQgPSAoc3Rh
dHVzWzBdICYgMHg0MCkgPj4gNjsKKyAgICBzYy0+c3luaHcuaW5mb1NlbnNvciAgID0gIHN0YXR1
c1swXSAmIDB4M2Y7CisgICAgc2MtPnN5bmh3LmluZm9IYXJkd2FyZSA9IChzdGF0dXNbMV0gJiAw
eGZlKSA+PiAxOworICAgIHNjLT5zeW5ody5pbmZvTmV3QWJzICAgPSAoc3RhdHVzWzJdICYgMHg4
MCkgPj4gNzsKKyAgICBzYy0+c3luaHcuY2FwUGVuICAgICAgID0gKHN0YXR1c1syXSAmIDB4NDAp
ID4+IDY7CisgICAgc2MtPnN5bmh3LmluZm9TaW1wbEMgICA9IChzdGF0dXNbMl0gJiAweDIwKSA+
PiA1OworICAgIHNjLT5zeW5ody5pbmZvR2VvbWV0cnkgPSAgc3RhdHVzWzJdICYgMHgwZjsKKyAg
ICBpZih2ZXJib3NlID49IDIpIHsKKwlwcmludGYoIiAgTW9kZWwgaWQ6ICUwMnggJTAyeCAlMDJ4
XG4iLCBzdGF0dXNbMF0gLCBzdGF0dXNbMV0gLCBzdGF0dXNbMl0pOworCXByaW50ZigiIGluZm9S
b3QxODA6ICVkXG4iLHNjLT5zeW5ody5pbmZvUm90MTgwKTsKKwlwcmludGYoIiBpbmZvUG9ydHJh
aXQ6ICVkXG4iLHNjLT5zeW5ody5pbmZvUG9ydHJhaXQpOworCXByaW50ZigiIGluZm9TZW5zb3I6
ICVkXG4iLHNjLT5zeW5ody5pbmZvU2Vuc29yKTsKKwlwcmludGYoIiBpbmZvSGFyZHdhcmU6ICVk
XG4iLHNjLT5zeW5ody5pbmZvSGFyZHdhcmUpOworCXByaW50ZigiIGluZm9OZXdBYnM6ICVkXG4i
LHNjLT5zeW5ody5pbmZvTmV3QWJzKTsKKwlwcmludGYoIiBjYXBQZW46ICVkXG4iLHNjLT5zeW5o
dy5jYXBQZW4pOworCXByaW50ZigiIGluZm9TaW1wbEM6ICVkXG4iLHNjLT5zeW5ody5pbmZvU2lt
cGxDKTsKKwlwcmludGYoIiBpbmZvR2VvbWV0cnk6ICVkXG4iLHNjLT5zeW5ody5pbmZvR2VvbWV0
cnkpOworICAgIH0KKworICAgIGlmKCFtb3VzZV9leHRfY29tbWFuZChrYmRjLCAyKSkKKwlyZXR1
cm4gRkFMU0U7CisKKyAgICBpZihnZXRfbW91c2Vfc3RhdHVzKGtiZGMsIHN0YXR1cywgMCwgMykg
IT0gMykKKwlyZXR1cm4gRkFMU0U7CisKKyAgICBpZihzdGF0dXNbMV0gIT0gMHg0NykgeworCXBy
aW50ZigiICBDb3VsZCBub3QgcmVhZCBDYXBhYmlsaXRpZXMgZnJvbSB0aGUgVG91Y2hwYWRcbiIp
OworCXJldHVybiBGQUxTRTsKKyAgICB9CisKKyAgICBzYy0+c3luaHcuY2FwRXh0ZW5kZWQgICAg
PSAoc3RhdHVzWzBdICYgMHg4MCkgPj4gNzsKKyAgICBzYy0+c3luaHcuY2FwUGFzc3Rocm91Z2gg
PSAoc3RhdHVzWzJdICYgMHg4MCkgPj4gNzsKKyAgICBzYy0+c3luaHcuY2FwU2xlZXAgICAgICAg
PSAoc3RhdHVzWzJdICYgMHgxMCkgPj4gNDsKKyAgICBzYy0+c3luaHcuY2FwRm91ckJ1dHRvbnMg
PSAoc3RhdHVzWzJdICYgMHgwOCkgPj4gMzsKKyAgICBzYy0+c3luaHcuY2FwTXVsdGlGaW5nZXIg
PSAoc3RhdHVzWzJdICYgMHgwMikgPj4gMTsKKyAgICBzYy0+c3luaHcuY2FwUGFsbURldGVjdCAg
PSAoc3RhdHVzWzJdICYgMHgwMSk7CisgICAgaWYodmVyYm9zZSA+PSAyKSB7CisJcHJpbnRmKCIg
IENhcGFiaWxpdHkgQnl0ZXM6ICUwMnggJTAyeCAlMDJ4XG4iLCBzdGF0dXNbMF0sIHN0YXR1c1sx
XSwgc3RhdHVzWzJdKTsKKyAgICB9CisKKworICAgIGlmKCFtb3VzZV9leHRfY29tbWFuZChrYmRj
LCAxKSkKKwlyZXR1cm4gRkFMU0U7CisKKyAgICBpZihnZXRfbW91c2Vfc3RhdHVzKGtiZGMsIHN0
YXR1cywgMCwgMykgIT0gMykKKwlyZXR1cm4gRkFMU0U7CisKKyAgICBpZihzdGF0dXNbMF0gIT0g
MHgzYiB8fCBzdGF0dXNbMV0gIT0gMHg0NykgeworCXByaW50ZigiICBDb3VsZCBub3QgcmVhZCBN
b2RlIEJ5dGUgZnJvbSB0aGUgVG91Y2hwYWRcbiIpOworCXJldHVybiBGQUxTRTsKKyAgICB9CisK
KyAgICBpZih2ZXJib3NlID49IDIpCisgICAgICBwcmludGYoIiAgTW9kZSBCeXRlIHNldCBieSBC
aW9zOiAlMDJ4XG4iICwgc3RhdHVzWzJdKTsKKworICAgIC8qIE1vZGUgQnl0ZQorCTEgKGFic29s
dXRlKQorCTEgcmF0ZSAoMCA9IDQwLzEgPSA4MCkKKwkwCisJMCAocmVzZXJ2ZWQpCisJMCAoU2xl
ZXAgKE9ubHkgYnV0dG9ucykpCisJMCBEaXNHZXN0IChub3QgZm9yIGFic29sdXRlIE1vZGUpCisJ
MCBwa3RzaXplICgwIGZvciBwczIpCisJMSB3bW9kZQorICAgICAqLworICAgIHNjLT5ody5idXR0
b25zID0gMzsKKworICAgIG1vdXNlX2V4dF9jb21tYW5kKGtiZGMsIDB4YzEpOwkvKiBlbmNvZGUg
bW9kZSBieXRlICovCisgICAgc2V0X21vdXNlX3NhbXBsaW5nX3JhdGUoa2JkYywgMHgwMDE0KTsg
Lyogc2V0IG1vZGUgYnl0ZSAqLworCisgICAgcmV0dXJuIFRSVUU7Cit9CisKIC8qIEtlbnNpbmd0
b24gVGhpbmtpbmdNb3VzZS9UcmFja2JhbGwgKi8KIHN0YXRpYyBpbnQKIGVuYWJsZV9rbW91c2Uo
c3RydWN0IHBzbV9zb2Z0YyAqc2MpCi0tLSAvL2RlcG90L3ZlbmRvci9mcmVlYnNkL3NyYy9zeXMv
c3lzL21vdXNlLmgJMjAwMi8wMy8yNCAwMzoxMDoxNgorKysgLy9kZXBvdC91c2VyL25vcmsvbm9y
a19tb2JpbGUvc3lzL3N5cy9tb3VzZS5oCTIwMDQvMDQvMTEgMTY6MTE6MzYKQEAgLTQwLDYgKzQw
LDEwIEBACiAjZGVmaW5lIE1PVVNFX1NFVFZBUlMJCV9JT1coJ00nLCA3LCBtb3VzZXZhcl90KQog
I2RlZmluZSBNT1VTRV9SRUFEU1RBVEUJCV9JT1dSKCdNJywgOCwgbW91c2VkYXRhX3QpCiAjZGVm
aW5lIE1PVVNFX1JFQUREQVRBCQlfSU9XUignTScsIDksIG1vdXNlZGF0YV90KQorI2RlZmluZSBN
T1VTRV9TWU5BUFRJQ1NfQ01ECV9JT1coJ00nLCAxMCwgY2hhcikKKyNkZWZpbmUgTU9VU0VfU1lO
QVBUSUNTX0lORk8JX0lPVygnTScsIDExLCBjaGFyKQorI2RlZmluZSBNT1VTRV9TWU5BUFRJQ1Nf
RU5BQkxFX1BBU1NUSFJPVUdICV9JT1coJ00nLCAxMiwgY2hhcikKKyNkZWZpbmUgTU9VU0VfU1lO
R0VUSFdJTkZPCV9JT1IoJ00nLCAxMywgc3luYXB0aWNzaHdfdCkKIAogI2lmIG5vdHlldAogI2Rl
ZmluZSBNT1VTRV9TRVRSRVNPTFVUSU9OCV9JT1coJ00nLCAxMCwgaW50KQpAQCAtODgsNiArOTIs
MjUgQEAKIAkJCQkgKi8KIH0gbW91c2Vod190OwogCit0eXBlZGVmIHN0cnVjdCBzeW5hcHRpY3No
dyB7CisJaW50IGluZm9NYWpvcjsKKwlpbnQgaW5mb01pbm9yOworCWludCBpbmZvUm90MTgwOwor
CWludCBpbmZvUG9ydHJhaXQ7CisJaW50IGluZm9TZW5zb3I7CisJaW50IGluZm9IYXJkd2FyZTsK
KwlpbnQgaW5mb05ld0FiczsKKwlpbnQgY2FwUGVuOworCWludCBpbmZvU2ltcGxDOworCWludCBp
bmZvR2VvbWV0cnk7CisJaW50IGNhcEV4dGVuZGVkOworCWludCBjYXBTbGVlcDsKKwlpbnQgY2Fw
Rm91ckJ1dHRvbnM7CisJaW50IGNhcE11bHRpRmluZ2VyOworCWludCBjYXBQYWxtRGV0ZWN0Owor
CWludCBjYXBQYXNzdGhyb3VnaDsKK30gc3luYXB0aWNzaHdfdDsKKwogLyogaWZ0eXBlICovCiAj
ZGVmaW5lIE1PVVNFX0lGX1VOS05PV04JKC0xKQogI2RlZmluZSBNT1VTRV9JRl9TRVJJQUwJCTAK
QEAgLTExOSw2ICsxNDIsNyBAQAogI2RlZmluZSBNT1VTRV9NT0RFTF9FWFBMT1JFUgkJMTAKICNk
ZWZpbmUgTU9VU0VfTU9ERUxfNEQJCQkxMQogI2RlZmluZSBNT1VTRV9NT0RFTF80RFBMVVMJCTEy
CisjZGVmaW5lIE1PVVNFX01PREVMX1NZTkFQVElDUwkJMTMKIAogdHlwZWRlZiBzdHJ1Y3QgbW91
c2Vtb2RlIHsKIAlpbnQgcHJvdG9jb2w7CQkvKiBNT1VTRV9QUk9UT19YWFggKi8KQEAgLTE4NSw2
ICsyMDksMTAgQEAKIAogI2VuZGlmIC8qIE1PVVNFX0dFVFZBUlMgKi8KIAorLyogU3luYXB0aWNz
IFRvdWNocGFkICovCisjZGVmaW5lIE1PVVNFX1NZTkFQVElDU19QQUNLRVRTSVpFCTYKKy8qIFBh
Y2tldHNpemUgNiBpcyB0aGUgcmVhbCBwYWNrZXRzaXplIGJ1dCB0aGF0IDMgd29ya3MgYmV0dGVy
IDopICovCisKIC8qIE1pY3Jvc29mdCBTZXJpYWwgbW91c2UgZGF0YSBwYWNrZXQgKi8KICNkZWZp
bmUgTU9VU0VfTVNTX1BBQ0tFVFNJWkUJMwogI2RlZmluZSBNT1VTRV9NU1NfU1lOQ01BU0sJMHg0
MAo=

--Multipart=_Thu__29_Jul_2004_01_52_22_+0900_J9SQZX8UG6XYVLLz--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040729015222.0949b382.nork>