[tpop3d-discuss] multiple mysql servers patch fix

Yann GROSSEL olrick at phear.org
Fri, 18 Oct 2002 20:24:57 +0200


This is a multi-part message in MIME format.

--Multipart_Fri__18_Oct_2002_20:24:57_+0200_08461e68
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit


Hi

I've just noticed that I've made a little mistake in the patch I've sent
to the list yesterday.

My patch clears the 'mysql' pointer during runtime when no mysql servers
are working. However the auth_mysql_new_apop(), auth_mysql_new_user_pass()
and auth_mysql_onlogin() functions were using this pointer to make sure
that the mysql driver was properly initialized. So if at any time, no
working  mysql servers were usable, the mysql pointer was cleared and the
driver never tried to connect to any server again.

I've added a boolean variable 'mysql_driver_active' to fix the problem.
Attached to this mail is the new version of the patch.

Regards,

Yann

--Multipart_Fri__18_Oct_2002_20:24:57_+0200_08461e68
Content-Type: application/octet-stream;
 name="tpop3d-CVS-multiple-mysql.3.patch"
Content-Disposition: attachment;
 filename="tpop3d-CVS-multiple-mysql.3.patch"
Content-Transfer-Encoding: base64

ZGlmZiB0cG9wM2QtQ1ZTLW9yaWcvYXV0aF9teXNxbC5jIHRwb3AzZC1DVlMvYXV0aF9teXNxbC5j
Ci0tLSB0cG9wM2QtQ1ZTLW9yaWcvYXV0aF9teXNxbC5jCTIwMDItMDktMjAgMTg6MzE6MDUuMDAw
MDAwMDAwICswMjAwCisrKyB0cG9wM2QtQ1ZTL2F1dGhfbXlzcWwuYwkyMDAyLTEwLTE4IDIwOjA0
OjM0LjAwMDAwMDAwMCArMDIwMApAQCAtNDAsNiArNDAsNyBAQAogI2luY2x1ZGUgIm1kNS5oIgog
I2luY2x1ZGUgInN0cmluZ21hcC5oIgogI2luY2x1ZGUgInV0aWwuaCIKKyNpbmNsdWRlICJ0b2tl
bmlzZS5oIgogCiAvKiBEZWZhdWx0IHF1ZXJ5IHRlbXBsYXRlcy4gVGhlIHJldHVybmVkIGZpZWxk
cyBhcmU6CiAgKiAgWzBdIGxvY2F0aW9uIG9mIG1haWxib3gKQEAgLTI1Niw0MiArMjU3LDg5IEBA
CiAKIC8qIE15U1FMIFBBU1NXT1JEKCkgcm91dGluZXMgZW5kLiAqLwogCitNWVNRTCAqbXlzcWwg
PSBOVUxMOwordG9rZW5zIG15c3FsX3NlcnZlcnM7CitjaGFyIG15c3FsX2RyaXZlcl9hY3RpdmUg
PSAwOworCisvKiBnZXRfbXlzcWxfc2VydmVyOgorICogSWYgd2UgYXJlIG5vdCBjdXJyZW50bHkg
Y29ubmVjdGVkIHRvIGEgTXlTUUwgc2VydmVyLCBvciBpZiB0aGUgY3VycmVudCBNeVNRTCBzZXJ2
ZXIgZG9lc24ndAorICogcmVzcG9uZCBhbnkgbW9yZSwgdHJ5IHRvIGNvbm5lY3QgdG8gYWxsIGRl
ZmluZWQgTXlTUUwgc2VydmVycy4gSWYgbm9uZSB3b3JrLCB3ZSBnaXZlIHVwLgorICogUmV0dXJu
IDAgaWYgT0ssIC0xIGlmIHdlIGNhbid0IGNvbm5lY3QgdG8gYW55IHNlcnZlci4gKi8KK2ludCBn
ZXRfbXlzcWxfc2VydmVyKGNoYXIgKndoZXJlKSB7CisKKyAgICBpbnQgbjsKKyAgICBzdGF0aWMg
TVlTUUwgbXlzcWxfaGFuZGxlOworICAgIGNoYXIgKnBhc3N3b3JkOworICAgIHVuc2lnbmVkIGlu
dCB0aW1lb3V0OworCisgICAgaWYgKG15c3FsICYmIG15c3FsX3BpbmcobXlzcWwpID09IDApCisg
ICAgICAgIC8qIFRoZSBjdXJyZW50IHNlcnZlciBpcyB1cCBhbmQgcnVubmluZyAqLworICAgICAg
ICByZXR1cm4gMDsKIAotLyogc3RyY2xyOgotICogQ2xlYXIgYSBzdHJpbmcuICovCi1zdGF0aWMg
dm9pZCBzdHJjbHIoY2hhciAqcykgewotICAgIG1lbXNldChzLCAwLCBzdHJsZW4ocykpOworICAg
IGlmIChteXNxbCkKKyAgICAgICAgLyogVGhlIGN1cnJlbnQgc2VydmVyIGRvZXNuJ3QgcmVzcG9u
ZCBhbnltb3JlICovCisgICAgICAgIG15c3FsX2Nsb3NlKG15c3FsKTsKKworICAgIG15c3FsID0g
bXlzcWxfaW5pdCgmbXlzcWxfaGFuZGxlKTsKKworICAgIGlmICghbXlzcWwpIHsKKyAgICAgICAg
bG9nX3ByaW50KExPR19FUlIsIF8oImdldF9teXNxbF9zZXJ2ZXIgaW4gJXM6IG15c3FsX2luaXQ6
IGZhaWxlZCIpLCB3aGVyZSk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKyAgICBpZiAo
IShwYXNzd29yZCA9IGNvbmZpZ19nZXRfc3RyaW5nKCJhdXRoLW15c3FsLXBhc3N3b3JkIikpKQor
ICAgICAgICBwYXNzd29yZCA9ICIiOworCisgICAgZm9yIChuID0gMDsgbiA8IG15c3FsX3NlcnZl
cnMtPm51bTsgbisrKSB7CisKKyAgICAgICAvKiBUbyBwcmV2ZW50IHRoZSBtYWluIHByb2Nlc3Mg
ZnJvbSBiZWVpbmcgYmxvY2tlZCBmb3IgdG9vIGxvbmcsIHdlIHNldCB0aGUgdGltZW91dAorICAg
ICAgICAqIHdoZW4gY29ubmVjdGluZyB0byBhIHJlbW90ZSBteXNxbCBzZXJ2ZXIgdG8gNSBzZWNv
bmRzLiBPZiBjb3Vyc2UgeW91IG5lZWQgdG8gaGF2ZQorICAgICAgICAqIGEgbmV0d29yayBmYXN0
IGVub3VnaCB0byBhbGxvdyBUQ1AgY29ubmVjdGlvbnMgdG8gdGhlIG15c3FsIHNlcnZlcnMgdG8g
YmUgc3RhcnRlZAorICAgICAgICAqIGluIGxlc3MgdGhhdCA1IHNlY29uZHMuLi4gKi8KKworICAg
ICAgICB0aW1lb3V0ID0gNTsKKyAgICAgICAgbXlzcWxfb3B0aW9ucyhteXNxbCwgTVlTUUxfT1BU
X0NPTk5FQ1RfVElNRU9VVCwgKGNoYXIgKikgJih0aW1lb3V0KSk7CisKKyAgICAgICAgaWYgKG15
c3FsX3JlYWxfY29ubmVjdChteXNxbCwgbXlzcWxfc2VydmVycy0+dG9rc1tuXSwKKyAgICAgICAg
ICAgICAgICBjb25maWdfZ2V0X3N0cmluZygiYXV0aC1teXNxbC11c2VybmFtZSIpLAorICAgICAg
ICAgICAgICAgIHBhc3N3b3JkLAorICAgICAgICAgICAgICAgIGNvbmZpZ19nZXRfc3RyaW5nKCJh
dXRoLW15c3FsLWRhdGFiYXNlIiksCisgICAgICAgICAgICAgICAgMCwgTlVMTCwgMCkgIT0gbXlz
cWwpIHsKKyAgICAgICAgICAgIGxvZ19wcmludChMT0dfV0FSTklORywgImdldF9teXNxbF9zZXJ2
ZXIgZm9yICVzOiBzZXJ2ZXIgJXM6ICVzIiwgd2hlcmUsIG15c3FsX3NlcnZlcnMtPnRva3Nbbl0s
IG15c3FsX2Vycm9yKG15c3FsKSk7CisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQor
CisgICAgICAgIGxvZ19wcmludChMT0dfREVCVUcsICJnZXRfbXlzcWxfc2VydmVyIGZvciAlczog
bm93IHVzaW5nIHNlcnZlciAlcyIsIHdoZXJlLCBteXNxbF9zZXJ2ZXJzLT50b2tzW25dKTsKKyAg
ICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgbG9nX3ByaW50KExPR19FUlIsICJnZXRfbXlz
cWxfc2VydmVyIGZvciAlczogY2FuJ3QgZmluZCBhbnkgd29ya2luZyBNeVNRTCBzZXJ2ZXIsIGdp
dmluZyB1cC4iLCB3aGVyZSk7CisKKyAgICBteXNxbCA9IE5VTEw7CisKKyAgICByZXR1cm4gLTE7
CiB9CiAKIC8qIGF1dGhfbXlzcWxfaW5pdDoKICAqIEluaXRpYWxpc2UgdGhlIGRhdGFiYXNlIGNv
bm5lY3Rpb24gZHJpdmVyLiBDbGVhcnMgdGhlIGNvbmZpZyBkaXJlY3RpdmVzCiAgKiBhc3NvY2lh
dGVkIHdpdGggdGhlIGRhdGFiYXNlIHNvIHRoYXQgYSB1c2VyIGNhbm5vdCByZWNvdmVyIHRoZW0g
d2l0aCBhCiAgKiBkZWJ1Z2dlci4gKi8KLU1ZU1FMICpteXNxbDsKIAogaW50IGF1dGhfbXlzcWxf
aW5pdCgpIHsKLSAgICBjaGFyICp1c2VybmFtZSA9IE5VTEwsICpwYXNzd29yZCA9IE5VTEwsICpo
b3N0bmFtZSA9IE5VTEwsICpkYXRhYmFzZSA9IE5VTEwsICpsb2NhbGhvc3QgPSAibG9jYWxob3N0
IiwgKnM7Ci0gICAgaW50IHJldCA9IDA7CisgICAgY2hhciAqaG9zdG5hbWUgPSBOVUxMLCAqbG9j
YWxob3N0ID0gImxvY2FsaG9zdCIsICpzOwogCi0gICAgaWYgKChzID0gY29uZmlnX2dldF9zdHJp
bmcoImF1dGgtbXlzcWwtdXNlcm5hbWUiKSkpCi0gICAgICAgIHVzZXJuYW1lID0gczsKLSAgICBl
bHNlIHsKKyAgICBpZiAoIWNvbmZpZ19nZXRfc3RyaW5nKCJhdXRoLW15c3FsLXVzZXJuYW1lIikp
IHsKICAgICAgICAgbG9nX3ByaW50KExPR19FUlIsIF8oImF1dGhfbXlzcWxfaW5pdDogbm8gYXV0
aC1teXNxbC11c2VybmFtZSBkaXJlY3RpdmUgaW4gY29uZmlnIikpOwotICAgICAgICBnb3RvIGZh
aWw7CisgICAgICAgIHJldHVybiAwOwogICAgIH0KIAotICAgIGlmICgocyA9IGNvbmZpZ19nZXRf
c3RyaW5nKCJhdXRoLW15c3FsLXBhc3N3b3JkIikpKQotICAgICAgICBwYXNzd29yZCA9IHM7Ci0g
ICAgZWxzZSB7CisgICAgaWYgKCFjb25maWdfZ2V0X3N0cmluZygiYXV0aC1teXNxbC1wYXNzd29y
ZCIpKSB7CiAgICAgICAgIGxvZ19wcmludChMT0dfV0FSTklORywgXygiYXV0aF9teXNxbF9pbml0
OiBubyBhdXRoLW15c3FsLXBhc3N3b3JkIGRpcmVjdGl2ZSBpbiBjb25maWc7IHVzaW5nIGJsYW5r
IHBhc3N3b3JkIikpOwotICAgICAgICBwYXNzd29yZCA9ICIiOwogICAgIH0KIAotICAgIGlmICgo
cyA9IGNvbmZpZ19nZXRfc3RyaW5nKCJhdXRoLW15c3FsLWRhdGFiYXNlIikpKQotICAgICAgICBk
YXRhYmFzZSA9IHM7Ci0gICAgZWxzZSB7CisgICAgaWYgKCFjb25maWdfZ2V0X3N0cmluZygiYXV0
aC1teXNxbC1kYXRhYmFzZSIpKSB7CiAgICAgICAgIGxvZ19wcmludChMT0dfRVJSLCBfKCJhdXRo
X215c3FsX2luaXQ6IG5vIGF1dGgtbXlzcWwtZGF0YWJhc2UgZGlyZWN0aXZlIGluIGNvbmZpZyIp
KTsKLSAgICAgICAgZ290byBmYWlsOworICAgICAgICByZXR1cm4gMDsKICAgICB9CiAKICAgICBp
ZiAoKHMgPSBjb25maWdfZ2V0X3N0cmluZygiYXV0aC1teXNxbC1ob3N0bmFtZSIpKSkKQEAgLTMw
NCw3ICszNTIsNyBAQAogICAgICAgICB1c2VyX3Bhc3NfcXVlcnlfdGVtcGxhdGUgPSBzOwogICAg
IGlmIChzdHJjbXAodXNlcl9wYXNzX3F1ZXJ5X3RlbXBsYXRlLCAibm9uZSIpID09IDApCiAgICAg
ICAgIHVzZXJfcGFzc19xdWVyeV90ZW1wbGF0ZSA9IE5VTEw7Ci0gICAgCisKICAgICBpZiAoKHMg
PSBjb25maWdfZ2V0X3N0cmluZygiYXV0aC1teXNxbC1hcG9wLXF1ZXJ5IikpKQogICAgICAgICBh
cG9wX3F1ZXJ5X3RlbXBsYXRlID0gczsKICAgICBpZiAoc3RyY21wKGFwb3BfcXVlcnlfdGVtcGxh
dGUsICJub25lIikgPT0gMCkKQEAgLTMxOSwzMyArMzY3LDIyIEBACiAgICAgaWYgKChzID0gY29u
ZmlnX2dldF9zdHJpbmcoImF1dGgtbXlzcWwtbWFpbC1ncm91cCIpKSkgewogICAgICAgICBpZiAo
IXBhcnNlX2dpZChzLCAmbWFpbF9naWQpKSB7CiAgICAgICAgICAgICBsb2dfcHJpbnQoTE9HX0VS
UiwgXygiYXV0aF9teXNxbF9pbml0OiBhdXRoLW15c3FsLW1haWwtZ3JvdXAgZGlyZWN0aXZlIGAl
cycgZG9lcyBub3QgbWFrZSBzZW5zZSIpLCBzKTsKLSAgICAgICAgICAgIGdvdG8gZmFpbDsKKyAg
ICAgICAgICAgIHJldHVybiAwOwogICAgICAgICB9CiAgICAgICAgIHVzZV9naWQgPSAxOwogICAg
IH0KIAotICAgIG15c3FsID0gbXlzcWxfaW5pdChOVUxMKTsKLSAgICBpZiAoIW15c3FsKSB7Ci0g
ICAgICAgIGxvZ19wcmludChMT0dfRVJSLCBfKCJhdXRoX215c3FsX2luaXQ6IG15c3FsX2luaXQ6
IGZhaWxlZCIpKTsKLSAgICAgICAgZ290byBmYWlsOwotICAgIH0KKyAgICBteXNxbF9zZXJ2ZXJz
ID0gdG9rZW5zX25ldyhob3N0bmFtZSwgIiBcdCIpOwogCi0gICAgaWYgKG15c3FsX3JlYWxfY29u
bmVjdChteXNxbCwgaG9zdG5hbWUsIHVzZXJuYW1lLCBwYXNzd29yZCwgZGF0YWJhc2UsIDAsIE5V
TEwsIDApICE9IG15c3FsKSB7Ci0gICAgICAgIGxvZ19wcmludChMT0dfRVJSLCAiYXV0aF9teXNx
bF9pbml0OiBteXNxbF9yZWFsX2Nvbm5lY3Q6ICVzIiwgbXlzcWxfZXJyb3IobXlzcWwpKTsKLSAg
ICAgICAgbXlzcWxfY2xvc2UobXlzcWwpOwotICAgICAgICBteXNxbCA9IE5VTEw7Ci0gICAgICAg
IGdvdG8gZmFpbDsKKyAgICBpZiAoZ2V0X215c3FsX3NlcnZlcigiYXV0aF9teXNxbF9pbml0Iikg
PT0gLTEpIHsKKyAgICAgICAgLyogTm8gc2VydmVyIGhhcyBiZWVuIGZvdW5kIHdvcmtpbmcuICov
CisgICAgICAgIHRva2Vuc19kZWxldGUobXlzcWxfc2VydmVycyk7CisgICAgICAgIHJldHVybiAw
OwogICAgIH0KIAotICAgIHJldCA9IDE7CisgICAgbXlzcWxfZHJpdmVyX2FjdGl2ZSA9IDE7CiAK
LWZhaWw6Ci0gICAgaWYgKHVzZXJuYW1lKSBzdHJjbHIodXNlcm5hbWUpOwotICAgIGlmIChwYXNz
d29yZCkgc3RyY2xyKHBhc3N3b3JkKTsKLSAgICBpZiAoaG9zdG5hbWUgJiYgaG9zdG5hbWUgIT0g
bG9jYWxob3N0KSBzdHJjbHIoaG9zdG5hbWUpOwotICAgIGlmIChkYXRhYmFzZSkgc3RyY2xyKGRh
dGFiYXNlKTsKLQotICAgIHJldHVybiByZXQ7CisgICAgcmV0dXJuIDE7CiB9CiAKIGV4dGVybiBp
bnQgdmVyYm9zZTsgLyogaW4gbWFpbi5jICovCkBAIC0zNjAsMTIgKzM5Nyw5IEBACiAKICAgICB3
aG8gPSB1c2VybmFtZV9zdHJpbmcobmFtZSwgbG9jYWxfcGFydCwgZG9tYWluKTsKIAotICAgIGlm
ICghbXlzcWwgfHwgIWFwb3BfcXVlcnlfdGVtcGxhdGUpIHJldHVybiBOVUxMOworICAgIGlmICgh
bXlzcWxfZHJpdmVyX2FjdGl2ZSB8fCAhYXBvcF9xdWVyeV90ZW1wbGF0ZSkgcmV0dXJuIE5VTEw7
CiAKLSAgICBpZiAobXlzcWxfcGluZyhteXNxbCkgPT0gLTEpIHsKLSAgICAgICAgbG9nX3ByaW50
KExPR19FUlIsICJhdXRoX215c3FsX25ld19hcG9wOiBteXNxbF9waW5nOiAlcyIsIG15c3FsX2Vy
cm9yKG15c3FsKSk7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KKyAgICBpZiAoZ2V0X215
c3FsX3NlcnZlcigiYXV0aF9teXNxbF9uZXdfYXBvcCIpID09IC0xKSByZXR1cm4gTlVMTDsKIAog
ICAgIC8qIE9idGFpbiB0aGUgYWN0dWFsIHF1ZXJ5IHRvIHVzZS4gKi8KICAgICBpZiAoIShxdWVy
eSA9IHN1YnN0aXR1dGVfcXVlcnlfcGFyYW1zKGFwb3BfcXVlcnlfdGVtcGxhdGUsIG5hbWUsIGxv
Y2FsX3BhcnQsIGRvbWFpbiwgTlVMTCwgc2VydmVyaG9zdCkpKQpAQCAtNDY5LDEyICs1MDMsOSBA
QAogCiAgICAgd2hvID0gdXNlcm5hbWVfc3RyaW5nKHVzZXIsIGxvY2FsX3BhcnQsIGRvbWFpbik7
CiAgICAgCi0gICAgaWYgKCFteXNxbCB8fCAhdXNlcl9wYXNzX3F1ZXJ5X3RlbXBsYXRlKSByZXR1
cm4gTlVMTDsKKyAgICBpZiAoIW15c3FsX2RyaXZlcl9hY3RpdmUgfHwgIXVzZXJfcGFzc19xdWVy
eV90ZW1wbGF0ZSkgcmV0dXJuIE5VTEw7CiAKLSAgICBpZiAobXlzcWxfcGluZyhteXNxbCkgPT0g
LTEpIHsKLSAgICAgICAgbG9nX3ByaW50KExPR19FUlIsICJhdXRoX215c3FsX25ld191c2VyX3Bh
c3M6IG15c3FsX3Bpbmc6ICVzIiwgbXlzcWxfZXJyb3IobXlzcWwpKTsKLSAgICAgICAgcmV0dXJu
IE5VTEw7Ci0gICAgfQorICAgIGlmIChnZXRfbXlzcWxfc2VydmVyKCJhdXRoX215c3FsX25ld191
c2VyX3Bhc3MiKSA9PSAtMSkgcmV0dXJuIE5VTEw7CiAKICAgICAvKiBPYnRhaW4gdGhlIGFjdHVh
bCBxdWVyeSB0byB1c2UuICovCiAgICAgaWYgKCEocXVlcnkgPSBzdWJzdGl0dXRlX3F1ZXJ5X3Bh
cmFtcyh1c2VyX3Bhc3NfcXVlcnlfdGVtcGxhdGUsIHVzZXIsIGxvY2FsX3BhcnQsIGRvbWFpbiwg
TlVMTCwgc2VydmVyaG9zdCkpKQpAQCAtNjE0LDEyICs2NDUsOSBAQAogdm9pZCBhdXRoX215c3Fs
X29ubG9naW4oY29uc3QgYXV0aGNvbnRleHQgQSwgY29uc3QgY2hhciAqY2xpZW50aG9zdCwgY29u
c3QgY2hhciAqc2VydmVyaG9zdCkgewogICAgIGNoYXIgKnF1ZXJ5OwogCi0gICAgaWYgKCFteXNx
bCB8fCAhb25sb2dpbl9xdWVyeV90ZW1wbGF0ZSkgcmV0dXJuOworICAgIGlmICghbXlzcWxfZHJp
dmVyX2FjdGl2ZSB8fCAhb25sb2dpbl9xdWVyeV90ZW1wbGF0ZSkgcmV0dXJuOwogCi0gICAgaWYg
KG15c3FsX3BpbmcobXlzcWwpID09IC0xKSB7Ci0gICAgICAgIGxvZ19wcmludChMT0dfRVJSLCAi
YXV0aF9teXNxbF9vbmxvZ2luOiBteXNxbF9waW5nOiAlcyIsIG15c3FsX2Vycm9yKG15c3FsKSk7
Ci0gICAgICAgIHJldHVybjsKLSAgICB9CisgICAgaWYgKGdldF9teXNxbF9zZXJ2ZXIoImF1dGhf
bXlzcWxfb25sb2dpbiIpID09IC0xKSByZXR1cm47CiAKICAgICBxdWVyeSA9IHN1YnN0aXR1dGVf
cXVlcnlfcGFyYW1zKG9ubG9naW5fcXVlcnlfdGVtcGxhdGUsIEEtPnVzZXIsIEEtPmxvY2FsX3Bh
cnQsIEEtPmRvbWFpbiwgY2xpZW50aG9zdCwgc2VydmVyaG9zdCk7CiAgICAgaWYgKCFxdWVyeSkK
QEAgLTY0OCwxMyArNjc2LDE2IEBACiAvKiBhdXRoX215c3FsX3Bvc3Rmb3JrOgogICogUG9zdC1m
b3JrIGNsZWFudXAuICovCiB2b2lkIGF1dGhfbXlzcWxfcG9zdGZvcmsoKSB7Ci0gICAgbXlzcWwg
PSBOVUxMOyAvKiBYWFggKi8KKyAgICBteXNxbF9kcml2ZXJfYWN0aXZlID0gMDsgLyogWFhYICov
CiB9CiAKIC8qIGF1dGhfbXlzcWxfY2xvc2U6CiAgKiBDbG9zZSB0aGUgZGF0YWJhc2UgY29ubmVj
dGlvbi4gKi8KIHZvaWQgYXV0aF9teXNxbF9jbG9zZSgpIHsKLSAgICBpZiAobXlzcWwpIG15c3Fs
X2Nsb3NlKG15c3FsKTsKKyAgICBpZiAobXlzcWwpIHsKKyAgICAgICAgbXlzcWxfY2xvc2UobXlz
cWwpOworICAgICAgICBteXNxbCA9IE5VTEw7CisgICAgfQogfQogCiAvKiBzdWJzdGl0dXRlX3F1
ZXJ5X3BhcmFtcwpkaWZmIHRwb3AzZC1DVlMtb3JpZy90cG9wM2QuY29uZi41IHRwb3AzZC1DVlMv
dHBvcDNkLmNvbmYuNQotLS0gdHBvcDNkLUNWUy1vcmlnL3Rwb3AzZC5jb25mLjUJMjAwMi0wOS0w
NiAxNDowODowMi4wMDAwMDAwMDAgKzAyMDAKKysrIHRwb3AzZC1DVlMvdHBvcDNkLmNvbmYuNQky
MDAyLTEwLTE4IDIwOjA0OjM0LjAwMDAwMDAwMCArMDIwMApAQCAtMzQ3LDcgKzM0Nyw5IEBACiB0
aGUgdmlydHVhbCBkb21haW4uCiAuVFAKIFxmQmF1dGgtbXlzcWwtaG9zdG5hbWVcZkk6IFxmSWhv
c3RuYW1lXGZQCi1Ib3N0IG9uIHdoaWNoIHRvIGNvbm5lY3QgdG8gTXlTUUwsIGJ5IGRlZmF1bHQg
XGZCbG9jYWxob3N0XGZQLgorSG9zdCBvbiB3aGljaCB0byBjb25uZWN0IHRvIE15U1FMLCBieSBk
ZWZhdWx0IFxmQmxvY2FsaG9zdFxmUC4gWW91IG1heSBzcGVjaWZ5CitzZXZlcmFsIGhvc3RzLCBz
ZXBhcmF0ZWQgYnkgc3BhY2VzIG9yIHRhYnMuIFRoZXNlIGhvc3RzIGFyZSB0cmllZCBpbiBvcmRl
ciB1bnRpbAorb25lIGlzIGZvdW5kIHdvcmtpbmcuCiAuVFAKIFxmQmF1dGgtbXlzcWwtZGF0YWJh
c2VcZlA6IFxmSWRhdGFiYXNlXGZQCiBNeVNRTCBkYXRhYmFzZSB0byB1c2UgZm9yIGF1dGhlbnRp
Y2F0aW9uLgo=

--Multipart_Fri__18_Oct_2002_20:24:57_+0200_08461e68--