Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 10 Jul 2003 13:31:07 +0300 (WET)
From:      Evren Yurtesen <eyurtese@tekniikka.turkuamk.fi>
To:        ports@freebsd.org
Cc:        lioux@freebsd.org
Subject:   qmail-tls + qmail auth port ?
Message-ID:  <Pine.A41.4.10.10307101321030.31734-201000@bessel.tekniikka.turkuamk.fi>

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

---1046051574-1795778064-1057832775=:31738
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
Content-ID: <Pine.A41.4.10.10307101327131.17856@bessel.tekniikka.turkuamk.fi>

Hi,
There is no port for qmail-auth-tls in FreeBSD. Also the qmail-auth
patches fromm
http://members.elysium.pl/brush/qmail-smtpd-auth/
do not apply to qmail-tls port of FreeBSD because some files are
already patched with tls pathes.
I made diffs for FreeBSD's qmail-tls port that auth-patch can be applied
So there can be a FreeBSD qmail-auth-tls port perhaps :)
I attach it.
Did you get my point? :) 
Evren


---1046051574-1795778064-1057832775=:31738
Content-Type: APPLICATION/octet-stream; name="qmail-smtpd-auth-0.31.tar.gz"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.A41.4.10.10307101331070.17856@bessel.tekniikka.turkuamk.fi>
Content-Description: 
Content-Disposition: attachment; filename="qmail-smtpd-auth-0.31.tar.gz"

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
5tk8m2fzbJ7Ns3m++fNf8ui3QgB4AAA=
---1046051574-1795778064-1057832775=:31738
Content-Type: TEXT/PLAIN; charset=US-ASCII; name="auth.patch.tls"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.A41.4.10.10307101331071.17856@bessel.tekniikka.turkuamk.fi>
Content-Description: 
Content-Disposition: attachment; filename="auth.patch.tls"

KioqIE1ha2VmaWxlLm9yaWcJRnJpIEp1bCAxMSAwOTo1Mzo1OCAyMDAzDQot
LS0gTWFrZWZpbGUJRnJpIEp1bCAxMSAwOTo1Nzo1MCAyMDAzDQoqKioqKioq
KioqKioqKioNCioqKiAxMzYsMTQxICoqKioNCi0tLSAxMzYsMTQ1IC0tLS0N
CiAgY29tcGlsZSBhdXRvX3VzZXJhLmMNCiAgCS4vY29tcGlsZSBhdXRvX3Vz
ZXJhLmMNCiAgDQorIGJhc2U2NC5vOiBcDQorIGNvbXBpbGUgYmFzZTY0LmMg
YmFzZTY0Lmggc3RyYWxsb2MuaCBzdWJzdGRpby5oIHN0ci5oDQorIAkuL2Nv
bXBpbGUgYmFzZTY0LmMNCisgDQogIGJpbm0xOiBcDQogIGJpbm0xLnNoIGNv
bmYtcW1haWwNCiAgCWNhdCBiaW5tMS5zaCBcDQoqKioqKioqKioqKioqKioN
CioqKiAxNTU3LDE1NjMgKioqKg0KICBzdWJzdGRpby5oIGFsbG9jLmggYXV0
b19xbWFpbC5oIGNvbnRyb2wuaCByZWNlaXZlZC5oIGNvbnN0bWFwLmggXA0K
ICBlcnJvci5oIGlwbWUuaCBpcC5oIGlwYWxsb2MuaCBpcC5oIGdlbl9hbGxv
Yy5oIGlwLmggcW1haWwuaCBcDQogIHN1YnN0ZGlvLmggc3RyLmggZm10Lmgg
c2Nhbi5oIGJ5dGUuaCBjYXNlLmggZW52Lmggbm93LmggZGF0ZXRpbWUuaCBc
DQohIGV4aXQuaCByY3B0aG9zdHMuaCB0aW1lb3V0cmVhZC5oIHRpbWVvdXR3
cml0ZS5oIGNvbW1hbmRzLmgNCiAgCS4vY29tcGlsZSBxbWFpbC1zbXRwZC5j
DQogIA0KICBxbWFpbC1zdGFydDogXA0KLS0tIDE1NjEsMTU2OCAtLS0tDQog
IHN1YnN0ZGlvLmggYWxsb2MuaCBhdXRvX3FtYWlsLmggY29udHJvbC5oIHJl
Y2VpdmVkLmggY29uc3RtYXAuaCBcDQogIGVycm9yLmggaXBtZS5oIGlwLmgg
aXBhbGxvYy5oIGlwLmggZ2VuX2FsbG9jLmggaXAuaCBxbWFpbC5oIFwNCiAg
c3Vic3RkaW8uaCBzdHIuaCBmbXQuaCBzY2FuLmggYnl0ZS5oIGNhc2UuaCBl
bnYuaCBub3cuaCBkYXRldGltZS5oIFwNCiEgZXhpdC5oIHJjcHRob3N0cy5o
IHRpbWVvdXRyZWFkLmggdGltZW91dHdyaXRlLmggY29tbWFuZHMuaCB3YWl0
LmggXA0KISBmZC5oIGJhc2U2NC5oDQogIAkuL2NvbXBpbGUgcW1haWwtc210
cGQuYw0KICANCiAgcW1haWwtc3RhcnQ6IFwNCioqKiBUQVJHRVRTLm9yaWcJ
RnJpIEp1bCAxMSAwOTo1Mzo1OCAyMDAzDQotLS0gVEFSR0VUUwlGcmkgSnVs
IDExIDA5OjU3OjUwIDIwMDMNCioqKioqKioqKioqKioqKg0KKioqIDI1MSwy
NTYgKioqKg0KLS0tIDI1MSwyNTcgLS0tLQ0KICBxbWFpbC1xbXRwZC5vDQog
IHJjcHRob3N0cy5vDQogIHFtYWlsLXFtdHBkDQorIGJhc2U2NC5vDQogIHFt
YWlsLXNtdHBkLm8NCiAgcW1haWwtc210cGQNCiAgc2VuZG1haWwubw0KKioq
IHFtYWlsLXNtdHBkLjgub3JpZwlGcmkgSnVsIDExIDA5OjUzOjU4IDIwMDMN
Ci0tLSBxbWFpbC1zbXRwZC44CUZyaSBKdWwgMTEgMDk6NTc6NTAgMjAwMw0K
KioqKioqKioqKioqKioqDQoqKiogMyw4ICoqKioNCi0tLSAzLDEzIC0tLS0N
CiAgcW1haWwtc210cGQgXC0gcmVjZWl2ZSBtYWlsIHZpYSBTTVRQDQogIC5T
SCBTWU5PUFNJUw0KICAuQiBxbWFpbC1zbXRwZA0KKyBbDQorIC5JIGhvc3Ru
YW1lDQorIC5JIGNoZWNrcHJvZ3JhbQ0KKyAuSSBzdWJwcm9ncmFtDQorIF0N
CiAgLlNIIERFU0NSSVBUSU9ODQogIC5CIHFtYWlsLXNtdHBkDQogIHJlY2Vp
dmVzIG1haWwgbWVzc2FnZXMgdmlhIHRoZSBTaW1wbGUgTWFpbCBUcmFuc2Zl
ciBQcm90b2NvbCAoU01UUCkNCioqKioqKioqKioqKioqKg0KKioqIDMyLDM4
ICoqKioNCiAgaGVhZGVyIGZpZWxkcy4NCiAgDQogIC5CIHFtYWlsLXNtdHBk
DQohIHN1cHBvcnRzIEVTTVRQLCBpbmNsdWRpbmcgdGhlIDhCSVRNSU1FIGFu
ZCBQSVBFTElOSU5HIG9wdGlvbnMuDQogIC5TSCBUUkFOU1BBUkVOQ1kNCiAg
LkIgcW1haWwtc210cGQNCiAgY29udmVydHMgdGhlIFNNVFAgbmV3bGluZSBj
b252ZW50aW9uIGludG8gdGhlIFVOSVggbmV3bGluZSBjb252ZW50aW9uDQot
LS0gMzcsNjUgLS0tLQ0KICBoZWFkZXIgZmllbGRzLg0KICANCiAgLkIgcW1h
aWwtc210cGQNCiEgc3VwcG9ydHMgRVNNVFAsIGluY2x1ZGluZyB0aGUgOEJJ
VE1JTUUsIFBJUEVMSU5JTkcsIGFuZCBBVVRIIG9wdGlvbnMuDQohIA0KISAu
QiBxbWFpbC1zbXRwZA0KISBjYW4gYWNjZXB0IExPR0lOLCBQTEFJTiwgYW5k
IENSQU0tTUQ1IEFVVEggdHlwZXMuICBJdCBpbnZva2VzDQohIC5JUiBjaGVj
a3Byb2dyYW0gLA0KISB3aGljaCByZWFkcyBvbiBmaWxlIGRlc2NyaXB0b3Ig
MyB0aGUgdXNlcm5hbWUsIGEgMCBieXRlLCB0aGUgcGFzc3dvcmQNCiEgb3Ig
Y2hhbGxlbmdlIGRlcml2ZWQgZnJvbQ0KISAuSVIgaG9zdG5hbWUgLA0KISBh
bm90aGVyIDAgYnl0ZSwgYSBDUkFNLU1ENSByZXNwb25zZSAoaWYgYXBwbGlj
YWJsZSB0byB0aGUgQVVUSCB0eXBlKSwNCiEgYW5kIGEgZmluYWwgMCBieXRl
Lg0KISAuSSBjaGVja3Byb2dyYW0NCiEgaW52b2tlcw0KISAuSSBzdWJwcm9n
cmFtDQohIHVwb24gc3VjY2Vzc2Z1bCBhdXRoZW50aWNhdGlvbiwgd2hpY2gg
c2hvdWxkIGluIHR1cm4gcmV0dXJuIDAgdG8NCiEgLkJSIHFtYWlsLXNtdHBk
ICwNCiEgZWZmZWN0aXZlbHkgc2V0dGluZyB0aGUgZW52aXJvbm1lbnQgdmFy
aWFibGVzIFJFTEFZQ0xJRU5UIGFuZCBUQ1BSRU1PVEVJTkZPDQohIChhbnkg
c3VwcGxpZWQgdmFsdWUgcmVwbGFjZWQgd2l0aCB0aGUgYXV0aGVudGljYXRl
ZCB1c2VybmFtZSkuDQohIC5CIHFtYWlsLXNtdHBkDQohIHdpbGwgcmVqZWN0
IHRoZSBhdXRoZW50aWNhdGlvbiBhdHRlbXB0IGlmIGl0IHJlY2VpdmVzIGEg
bm9uemVybyByZXR1cm4NCiEgdmFsdWUgZnJvbQ0KISAuSSBjaGVja3Byb2dy
YW0NCiEgb3INCiEgLklSIHN1YnByb2dyYW0gLg0KICAuU0ggVFJBTlNQQVJF
TkNZDQogIC5CIHFtYWlsLXNtdHBkDQogIGNvbnZlcnRzIHRoZSBTTVRQIG5l
d2xpbmUgY29udmVudGlvbiBpbnRvIHRoZSBVTklYIG5ld2xpbmUgY29udmVu
dGlvbg0KKioqKioqKioqKioqKioqDQoqKiogMjIyLDIyNCAqKioqDQotLS0g
MjQ5LDI1NCAtLS0tDQogIHFtYWlsLW5ld21yaCg4KSwNCiAgcW1haWwtcXVl
dWUoOCksDQogIHFtYWlsLXJlbW90ZSg4KQ0KKyAuU0ggIkhJU1RPUlkiDQor
IFRoZSBwYXRjaCBlbmFibGluZyB0aGUgRVNNVFAgQVVUSCBvcHRpb24gaXMg
bm90IHBhcnQgb2YgdGhlIHN0YW5kYXJkDQorIHFtYWlsLTEuMDMgZGlzdHJp
YnV0aW9uLg0KKioqIHFtYWlsLXNtdHBkLmMub3JpZwlGcmkgSnVsIDExIDA5
OjUzOjU5IDIwMDMNCi0tLSBxbWFpbC1zbXRwZC5jCUZyaSBKdWwgMTEgMDk6
NTc6NTAgMjAwMw0KKioqKioqKioqKioqKioqDQoqKiogMjMsMjkgKioqKg0K
LS0tIDIzLDMyIC0tLS0NCiAgI2luY2x1ZGUgInRpbWVvdXRyZWFkLmgiDQog
ICNpbmNsdWRlICJ0aW1lb3V0d3JpdGUuaCINCiAgI2luY2x1ZGUgImNvbW1h
bmRzLmgiDQorICNpbmNsdWRlICJ3YWl0LmgiDQorICNpbmNsdWRlICJmZC5o
Ig0KICANCisgI2RlZmluZSBBVVRIQ1JBTQ0KICAjZGVmaW5lIE1BWEhPUFMg
MTAwDQogIHVuc2lnbmVkIGludCBkYXRhYnl0ZXMgPSAwOw0KICBpbnQgdGlt
ZW91dCA9IDEyMDA7DQoqKioqKioqKioqKioqKioNCioqKiA5NCw5OSAqKioq
DQotLS0gOTcsMTExIC0tLS0NCiAgdm9pZCBlcnJfdnJmeSgpIHsgb3V0KCIy
NTIgc2VuZCBzb21lIG1haWwsIGknbGwgdHJ5IG15IGJlc3RcclxuIik7IH0N
CiAgdm9pZCBlcnJfcXF0KCkgeyBvdXQoIjQ1MSBxcXQgZmFpbHVyZSAoIzQu
My4wKVxyXG4iKTsgfQ0KICANCisgaW50IGVycl9jaGlsZCgpIHsgb3V0KCI0
NTQgb29wcywgcHJvYmxlbSB3aXRoIGNoaWxkIGFuZCBJIGNhbid0IGF1dGgg
KCM0LjMuMClcclxuIik7IHJldHVybiAtMTsgfQ0KKyBpbnQgZXJyX2Zvcmso
KSB7IG91dCgiNDU0IG9vcHMsIGNoaWxkIHdvbid0IHN0YXJ0IGFuZCBJIGNh
bid0IGF1dGggKCM0LjMuMClcclxuIik7IHJldHVybiAtMTsgfQ0KKyBpbnQg
ZXJyX3BpcGUoKSB7IG91dCgiNDU0IG9vcHMsIHVuYWJsZSB0byBvcGVuIHBp
cGUgYW5kIEkgY2FuJ3QgYXV0aCAoIzQuMy4wKVxyXG4iKTsgcmV0dXJuIC0x
OyB9DQorIGludCBlcnJfd3JpdGUoKSB7IG91dCgiNDU0IG9vcHMsIHVuYWJs
ZSB0byB3cml0ZSBwaXBlIGFuZCBJIGNhbid0IGF1dGggKCM0LjMuMClcclxu
Iik7IHJldHVybiAtMTsgfQ0KKyB2b2lkIGVycl9hdXRoZCgpIHsgb3V0KCI1
MDMgeW91J3JlIGFscmVhZHkgYXV0aGVudGljYXRlZCAoIzUuNS4wKVxyXG4i
KTsgfQ0KKyB2b2lkIGVycl9hdXRobWFpbCgpIHsgb3V0KCI1MDMgbm8gYXV0
aCBkdXJpbmcgbWFpbCB0cmFuc2FjdGlvbiAoIzUuNS4wKVxyXG4iKTsgfQ0K
KyBpbnQgZXJyX25vYXV0aCgpIHsgb3V0KCI1MDQgYXV0aCB0eXBlIHVuaW1w
bGVtZW50ZWQgKCM1LjUuMSlcclxuIik7IHJldHVybiAtMTsgfQ0KKyBpbnQg
ZXJyX2F1dGhhYnJ0KCkgeyBvdXQoIjUwMSBhdXRoIGV4Y2hhbmdlIGNhbmNl
bGxlZCAoIzUuMC4wKVxyXG4iKTsgcmV0dXJuIC0xOyB9DQorIGludCBlcnJf
aW5wdXQoKSB7IG91dCgiNTAxIG1hbGZvcm1lZCBhdXRoIGlucHV0ICgjNS41
LjQpXHJcbiIpOyByZXR1cm4gLTE7IH0NCiAgDQogIHN0cmFsbG9jIGdyZWV0
aW5nID0gezB9Ow0KICANCioqKioqKioqKioqKioqKg0KKioqIDI4MywyODgg
KioqKg0KLS0tIDI5NSwzMDcgLS0tLQ0KICB2b2lkIHNtdHBfZWhsbyhhcmcp
IGNoYXIgKmFyZzsNCiAgew0KICAgIHNtdHBfZ3JlZXQoIjI1MC0iKTsNCisg
I2lmZGVmIEFVVEhDUkFNDQorICAgb3V0KCJcclxuMjUwLUFVVEggTE9HSU4g
Q1JBTS1NRDUgUExBSU4iKTsNCisgICBvdXQoIlxyXG4yNTAtQVVUSD1MT0dJ
TiBDUkFNLU1ENSBQTEFJTiIpOw0KKyAjZWxzZQ0KKyAgIG91dCgiXHJcbjI1
MC1BVVRIIExPR0lOIFBMQUlOIik7DQorICAgb3V0KCJcclxuMjUwLUFVVEg9
TE9HSU4gUExBSU4iKTsNCisgI2VuZGlmDQogICNpZmRlZiBUTFMNCiAgICBp
ZiAoIXNzbCkgb3V0KCJcclxuMjUwLVNUQVJUVExTIik7DQogICNlbmRpZg0K
KioqKioqKioqKioqKioqDQoqKiogNjIwLDYyOSAqKioqDQotLS0gNjM5LDg2
NCAtLS0tDQogIH0NCiAgI2VuZGlmDQogIA0KKyANCisgY2hhciB1bmlxdWVb
Rk1UX1VMT05HICsgRk1UX1VMT05HICsgM107DQorIHN0YXRpYyBzdHJhbGxv
YyBhdXRoaW4gPSB7MH07DQorIHN0YXRpYyBzdHJhbGxvYyB1c2VyID0gezB9
Ow0KKyBzdGF0aWMgc3RyYWxsb2MgcGFzcyA9IHswfTsNCisgc3RhdGljIHN0
cmFsbG9jIHJlc3AgPSB7MH07DQorIHN0YXRpYyBzdHJhbGxvYyBzbG9wID0g
ezB9Ow0KKyBjaGFyICpob3N0bmFtZTsNCisgY2hhciAqKmNoaWxkYXJnczsN
Cisgc3Vic3RkaW8gc3N1cDsNCisgY2hhciB1cGJ1ZlsxMjhdOw0KKyBpbnQg
YXV0aGQgPSAwOw0KKyANCisgaW50IGF1dGhnZXRsKHZvaWQpIHsNCisgICBp
bnQgaTsNCisgDQorICAgaWYgKCFzdHJhbGxvY19jb3B5cygmYXV0aGluLCAi
IikpIGRpZV9ub21lbSgpOw0KKyANCisgICBmb3IgKDs7KSB7DQorICAgICBp
ZiAoIXN0cmFsbG9jX3JlYWR5cGx1cygmYXV0aGluLDEpKSBkaWVfbm9tZW0o
KTsgLyogWFhYICovDQorICAgICBpID0gc3Vic3RkaW9fZ2V0KCZzc2luLGF1
dGhpbi5zICsgYXV0aGluLmxlbiwxKTsNCisgICAgIGlmIChpICE9IDEpIGRp
ZV9yZWFkKCk7DQorICAgICBpZiAoYXV0aGluLnNbYXV0aGluLmxlbl0gPT0g
J1xuJykgYnJlYWs7DQorICAgICArK2F1dGhpbi5sZW47DQorICAgfQ0KKyAN
CisgICBpZiAoYXV0aGluLmxlbiA+IDApIGlmIChhdXRoaW4uc1thdXRoaW4u
bGVuIC0gMV0gPT0gJ1xyJykgLS1hdXRoaW4ubGVuOw0KKyAgIGF1dGhpbi5z
W2F1dGhpbi5sZW5dID0gMDsNCisgDQorICAgaWYgKCphdXRoaW4ucyA9PSAn
KicgJiYgKihhdXRoaW4ucyArIDEpID09IDApIHsgcmV0dXJuIGVycl9hdXRo
YWJydCgpOyB9DQorICAgaWYgKGF1dGhpbi5sZW4gPT0gMCkgeyByZXR1cm4g
ZXJyX2lucHV0KCk7IH0NCisgICByZXR1cm4gYXV0aGluLmxlbjsNCisgfQ0K
KyANCisgaW50IGF1dGhlbnRpY2F0ZSh2b2lkKQ0KKyB7DQorICAgaW50IGNo
aWxkOw0KKyAgIGludCB3c3RhdDsNCisgICBpbnQgcGlbMl07DQorIA0KKyAg
IGlmICghc3RyYWxsb2NfMCgmdXNlcikpIGRpZV9ub21lbSgpOw0KKyAgIGlm
ICghc3RyYWxsb2NfMCgmcGFzcykpIGRpZV9ub21lbSgpOw0KKyAgIGlmICgh
c3RyYWxsb2NfMCgmcmVzcCkpIGRpZV9ub21lbSgpOw0KKyANCisgICBpZiAo
ZmRfY29weSgyLDEpID09IC0xKSByZXR1cm4gZXJyX3BpcGUoKTsNCisgICBj
bG9zZSgzKTsNCisgICBpZiAocGlwZShwaSkgPT0gLTEpIHJldHVybiBlcnJf
cGlwZSgpOw0KKyAgIGlmIChwaVswXSAhPSAzKSByZXR1cm4gZXJyX3BpcGUo
KTsNCisgICBzd2l0Y2goY2hpbGQgPSBmb3JrKCkpIHsNCisgICAgIGNhc2Ug
LTE6DQorICAgICAgIHJldHVybiBlcnJfZm9yaygpOw0KKyAgICAgY2FzZSAw
Og0KKyAgICAgICBjbG9zZShwaVsxXSk7DQorICAgICAgIHNpZ19waXBlZGVm
YXVsdCgpOw0KKyAgICAgICBleGVjdnAoKmNoaWxkYXJncywgY2hpbGRhcmdz
KTsNCisgICAgICAgX2V4aXQoMSk7DQorICAgfQ0KKyAgIGNsb3NlKHBpWzBd
KTsNCisgDQorICAgc3Vic3RkaW9fZmRidWYoJnNzdXAsd3JpdGUscGlbMV0s
dXBidWYsc2l6ZW9mIHVwYnVmKTsNCisgICBpZiAoc3Vic3RkaW9fcHV0KCZz
c3VwLHVzZXIucyx1c2VyLmxlbikgPT0gLTEpIHJldHVybiBlcnJfd3JpdGUo
KTsNCisgICBpZiAoc3Vic3RkaW9fcHV0KCZzc3VwLHBhc3MucyxwYXNzLmxl
bikgPT0gLTEpIHJldHVybiBlcnJfd3JpdGUoKTsNCisgICBpZiAoc3Vic3Rk
aW9fcHV0KCZzc3VwLHJlc3AucyxyZXNwLmxlbikgPT0gLTEpIHJldHVybiBl
cnJfd3JpdGUoKTsNCisgICBpZiAoc3Vic3RkaW9fZmx1c2goJnNzdXApID09
IC0xKSByZXR1cm4gZXJyX3dyaXRlKCk7DQorIA0KKyAgIGNsb3NlKHBpWzFd
KTsNCisgICBieXRlX3plcm8ocGFzcy5zLHBhc3MubGVuKTsNCisgICBieXRl
X3plcm8odXBidWYsc2l6ZW9mIHVwYnVmKTsNCisgICBpZiAod2FpdF9waWQo
JndzdGF0LGNoaWxkKSA9PSAtMSkgcmV0dXJuIGVycl9jaGlsZCgpOw0KKyAg
IGlmICh3YWl0X2NyYXNoZWQod3N0YXQpKSByZXR1cm4gZXJyX2NoaWxkKCk7
DQorICAgaWYgKHdhaXRfZXhpdGNvZGUod3N0YXQpKSB7IHNsZWVwKDUpOyBy
ZXR1cm4gMTsgfSAvKiBubyAqLw0KKyAgIHJldHVybiAwOyAvKiB5ZXMgKi8N
CisgfQ0KKyANCisgaW50IGF1dGhfbG9naW4oYXJnKSBjaGFyICphcmc7DQor
IHsNCisgICBpbnQgcjsNCisgDQorICAgaWYgKCphcmcpIHsNCisgICAgIGlm
IChyID0gYjY0ZGVjb2RlKGFyZyxzdHJfbGVuKGFyZyksJnVzZXIpID09IDEp
IHJldHVybiBlcnJfaW5wdXQoKTsNCisgICB9DQorICAgZWxzZSB7DQorICAg
ICBvdXQoIjMzNCBWWE5sY201aGJXVTZcclxuIik7IGZsdXNoKCk7IC8qIFVz
ZXJuYW1lOiAqLw0KKyAgICAgaWYgKGF1dGhnZXRsKCkgPCAwKSByZXR1cm4g
LTE7DQorICAgICBpZiAociA9IGI2NGRlY29kZShhdXRoaW4ucyxhdXRoaW4u
bGVuLCZ1c2VyKSA9PSAxKSByZXR1cm4gZXJyX2lucHV0KCk7DQorICAgfQ0K
KyAgIGlmIChyID09IC0xKSBkaWVfbm9tZW0oKTsNCisgDQorICAgb3V0KCIz
MzQgVUdGemMzZHZjbVE2XHJcbiIpOyBmbHVzaCgpOyAvKiBQYXNzd29yZDog
Ki8NCisgDQorICAgaWYgKGF1dGhnZXRsKCkgPCAwKSByZXR1cm4gLTE7DQor
ICAgaWYgKHIgPSBiNjRkZWNvZGUoYXV0aGluLnMsYXV0aGluLmxlbiwmcGFz
cykgPT0gMSkgcmV0dXJuIGVycl9pbnB1dCgpOw0KKyAgIGlmIChyID09IC0x
KSBkaWVfbm9tZW0oKTsNCisgDQorICAgaWYgKCF1c2VyLmxlbiB8fCAhcGFz
cy5sZW4pIHJldHVybiBlcnJfaW5wdXQoKTsNCisgICByZXR1cm4gYXV0aGVu
dGljYXRlKCk7ICANCisgfQ0KKyANCisgaW50IGF1dGhfcGxhaW4oYXJnKSBj
aGFyICphcmc7DQorIHsNCisgICBpbnQgciwgaWQgPSAwOw0KKyANCisgICBp
ZiAoKmFyZykgew0KKyAgICAgaWYgKHIgPSBiNjRkZWNvZGUoYXJnLHN0cl9s
ZW4oYXJnKSwmc2xvcCkgPT0gMSkgcmV0dXJuIGVycl9pbnB1dCgpOw0KKyAg
IH0NCisgICBlbHNlIHsNCisgICAgIG91dCgiMzM0IFxyXG4iKTsgZmx1c2go
KTsNCisgICAgIGlmIChhdXRoZ2V0bCgpIDwgMCkgcmV0dXJuIC0xOw0KKyAg
ICAgaWYgKHIgPSBiNjRkZWNvZGUoYXV0aGluLnMsYXV0aGluLmxlbiwmc2xv
cCkgPT0gMSkgcmV0dXJuIGVycl9pbnB1dCgpOw0KKyAgIH0NCisgICBpZiAo
ciA9PSAtMSB8fCAhc3RyYWxsb2NfMCgmc2xvcCkpIGRpZV9ub21lbSgpOw0K
KyAgIHdoaWxlIChzbG9wLnNbaWRdKSBpZCsrOyAvKiBpZ25vcmUgYXV0aG9y
aXplLWlkICovDQorIA0KKyAgIGlmIChzbG9wLmxlbiA+IGlkICsgMSkNCisg
ICAgIGlmICghc3RyYWxsb2NfY29weXMoJnVzZXIsc2xvcC5zICsgaWQgKyAx
KSkgZGllX25vbWVtKCk7DQorICAgaWYgKHNsb3AubGVuID4gaWQgKyB1c2Vy
LmxlbiArIDIpDQorICAgICBpZiAoIXN0cmFsbG9jX2NvcHlzKCZwYXNzLHNs
b3AucyArIGlkICsgdXNlci5sZW4gKyAyKSkgZGllX25vbWVtKCk7DQorIA0K
KyAgIGlmICghdXNlci5sZW4gfHwgIXBhc3MubGVuKSByZXR1cm4gZXJyX2lu
cHV0KCk7DQorICAgcmV0dXJuIGF1dGhlbnRpY2F0ZSgpOw0KKyB9DQorIA0K
KyAjaWZkZWYgQVVUSENSQU0NCisgaW50IGF1dGhfY3JhbSgpDQorIHsNCisg
ICBpbnQgaSwgcjsNCisgICBjaGFyICpzOw0KKyANCisgICBzID0gdW5pcXVl
Ow0KKyAgIHMgKz0gZm10X3VpbnQocyxnZXRwaWQoKSk7DQorICAgKnMrKyA9
ICcuJzsNCisgICBzICs9IGZtdF91bG9uZyhzLCh1bnNpZ25lZCBsb25nKSBu
b3coKSk7DQorICAgKnMrKyA9ICdAJzsNCisgICAqcysrID0gMDsNCisgDQor
ICAgaWYgKCFzdHJhbGxvY19jb3B5cygmcGFzcywiPCIpKSBkaWVfbm9tZW0o
KTsNCisgICBpZiAoIXN0cmFsbG9jX2NhdHMoJnBhc3MsdW5pcXVlKSkgZGll
X25vbWVtKCk7DQorICAgaWYgKCFzdHJhbGxvY19jYXRzKCZwYXNzLGhvc3Ru
YW1lKSkgZGllX25vbWVtKCk7DQorICAgaWYgKCFzdHJhbGxvY19jYXRzKCZw
YXNzLCI+IikpIGRpZV9ub21lbSgpOw0KKyAgIGlmIChiNjRlbmNvZGUoJnBh
c3MsJnNsb3ApIDwgMCkgZGllX25vbWVtKCk7DQorICAgaWYgKCFzdHJhbGxv
Y18wKCZzbG9wKSkgZGllX25vbWVtKCk7DQorIA0KKyAgIG91dCgiMzM0ICIp
Ow0KKyAgIG91dChzbG9wLnMpOw0KKyAgIG91dCgiXHJcbiIpOw0KKyAgIGZs
dXNoKCk7DQorIA0KKyAgIGlmIChhdXRoZ2V0bCgpIDwgMCkgcmV0dXJuIC0x
Ow0KKyAgIGlmIChyID0gYjY0ZGVjb2RlKGF1dGhpbi5zLGF1dGhpbi5sZW4s
JnNsb3ApID09IDEpIHJldHVybiBlcnJfaW5wdXQoKTsNCisgICBpZiAociA9
PSAtMSB8fCAhc3RyYWxsb2NfMCgmc2xvcCkpIGRpZV9ub21lbSgpOw0KKyAN
CisgICBpID0gc3RyX2NocihzbG9wLnMsJyAnKTsNCisgICBzID0gc2xvcC5z
ICsgaTsNCisgICB3aGlsZSAoKnMgPT0gJyAnKSArK3M7DQorICAgc2xvcC5z
W2ldID0gMDsNCisgICBpZiAoIXN0cmFsbG9jX2NvcHlzKCZ1c2VyLHNsb3Au
cykpIGRpZV9ub21lbSgpOw0KKyAgIGlmICghc3RyYWxsb2NfY29weXMoJnJl
c3AscykpIGRpZV9ub21lbSgpOw0KKyANCisgICBpZiAoIXVzZXIubGVuIHx8
ICFyZXNwLmxlbikgcmV0dXJuIGVycl9pbnB1dCgpOw0KKyAgIHJldHVybiBh
dXRoZW50aWNhdGUoKTsNCisgfQ0KKyAjZW5kaWYNCisgDQorIHN0cnVjdCBh
dXRoY21kIHsNCisgICBjaGFyICp0ZXh0Ow0KKyAgIGludCAoKmZ1bikoKTsN
CisgfSBhdXRoY21kc1tdID0gew0KKyAgIHsgImxvZ2luIiwgYXV0aF9sb2dp
biB9DQorICwgeyAicGxhaW4iLCBhdXRoX3BsYWluIH0NCisgI2lmZGVmIEFV
VEhDUkFNDQorICwgeyAiY3JhbS1tZDUiLCBhdXRoX2NyYW0gfQ0KKyAjZW5k
aWYNCisgLCB7IDAsIGVycl9ub2F1dGggfQ0KKyB9Ow0KKyANCisgdm9pZCBz
bXRwX2F1dGgoYXJnKQ0KKyBjaGFyICphcmc7DQorIHsNCisgICBpbnQgaTsN
CisgICBjaGFyICpjbWQgPSBhcmc7DQorIA0KKyAgIGlmICghaG9zdG5hbWUg
fHwgISpjaGlsZGFyZ3MpDQorICAgew0KKyAgICAgb3V0KCI1MDMgYXV0aCBu
b3QgYXZhaWxhYmxlICgjNS4zLjMpXHJcbiIpOw0KKyAgICAgcmV0dXJuOw0K
KyAgIH0NCisgICBpZiAoYXV0aGQpIHsgZXJyX2F1dGhkKCk7IHJldHVybjsg
fQ0KKyAgIGlmIChzZWVubWFpbCkgeyBlcnJfYXV0aG1haWwoKTsgcmV0dXJu
OyB9DQorIA0KKyAgIGlmICghc3RyYWxsb2NfY29weXMoJnVzZXIsIiIpKSBk
aWVfbm9tZW0oKTsNCisgICBpZiAoIXN0cmFsbG9jX2NvcHlzKCZwYXNzLCIi
KSkgZGllX25vbWVtKCk7DQorICAgaWYgKCFzdHJhbGxvY19jb3B5cygmcmVz
cCwiIikpIGRpZV9ub21lbSgpOw0KKyANCisgICBpID0gc3RyX2NocihjbWQs
JyAnKTsgICANCisgICBhcmcgPSBjbWQgKyBpOw0KKyAgIHdoaWxlICgqYXJn
ID09ICcgJykgKythcmc7DQorICAgY21kW2ldID0gMDsNCisgDQorICAgZm9y
IChpID0gMDthdXRoY21kc1tpXS50ZXh0OysraSkNCisgICAgIGlmIChjYXNl
X2VxdWFscyhhdXRoY21kc1tpXS50ZXh0LGNtZCkpIGJyZWFrOw0KKyANCisg
ICBzd2l0Y2ggKGF1dGhjbWRzW2ldLmZ1bihhcmcpKSB7DQorICAgICBjYXNl
IDA6DQorICAgICAgIGF1dGhkID0gMTsNCisgICAgICAgcmVsYXljbGllbnQg
PSAiIjsNCisgICAgICAgcmVtb3RlaW5mbyA9IHVzZXIuczsNCisgICAgICAg
aWYgKCFlbnZfdW5zZXQoIlRDUFJFTU9URUlORk8iKSkgZGllX3JlYWQoKTsN
CisgICAgICAgaWYgKCFlbnZfcHV0MigiVENQUkVNT1RFSU5GTyIscmVtb3Rl
aW5mbykpIGRpZV9ub21lbSgpOw0KKyAgICAgICBvdXQoIjIzNSBvaywgZ28g
YWhlYWQgKCMyLjAuMClcclxuIik7DQorICAgICAgIGJyZWFrOw0KKyAgICAg
Y2FzZSAxOg0KKyAgICAgICBvdXQoIjUzNSBhdXRob3JpemF0aW9uIGZhaWxl
ZCAoIzUuNy4wKVxyXG4iKTsNCisgICB9DQorIH0NCisgDQogIHN0cnVjdCBj
b21tYW5kcyBzbXRwY29tbWFuZHNbXSA9IHsNCiAgICB7ICJyY3B0Iiwgc210
cF9yY3B0LCAwIH0NCiAgLCB7ICJtYWlsIiwgc210cF9tYWlsLCAwIH0NCiAg
LCB7ICJkYXRhIiwgc210cF9kYXRhLCBmbHVzaCB9DQorICwgeyAiYXV0aCIs
IHNtdHBfYXV0aCwgZmx1c2ggfQ0KICAsIHsgInF1aXQiLCBzbXRwX3F1aXQs
IGZsdXNoIH0NCiAgLCB7ICJoZWxvIiwgc210cF9oZWxvLCBmbHVzaCB9DQog
ICwgeyAiZWhsbyIsIHNtdHBfZWhsbywgZmx1c2ggfQ0KKioqKioqKioqKioq
KioqDQoqKiogNjM3LDY0NCAqKioqDQogICwgeyAwLCBlcnJfdW5pbXBsLCBm
bHVzaCB9DQogIH0gOw0KICANCiEgdm9pZCBtYWluKCkNCiAgew0KICAgIHNp
Z19waXBlaWdub3JlKCk7DQogICAgaWYgKGNoZGlyKGF1dG9fcW1haWwpID09
IC0xKSBkaWVfY29udHJvbCgpOw0KICAgIHNldHVwKCk7DQotLS0gODcyLDg4
NCAtLS0tDQogICwgeyAwLCBlcnJfdW5pbXBsLCBmbHVzaCB9DQogIH0gOw0K
ICANCiEgdm9pZCBtYWluKGFyZ2MsYXJndikNCiEgaW50IGFyZ2M7DQohIGNo
YXIgKiphcmd2Ow0KICB7DQorICAgaG9zdG5hbWUgPSBhcmd2WzFdOw0KKyAg
IGNoaWxkYXJncyA9IGFyZ3YgKyAyOw0KKyANCiAgICBzaWdfcGlwZWlnbm9y
ZSgpOw0KICAgIGlmIChjaGRpcihhdXRvX3FtYWlsKSA9PSAtMSkgZGllX2Nv
bnRyb2woKTsNCiAgICBzZXR1cCgpOw0K
---1046051574-1795778064-1057832775=:31738--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.A41.4.10.10307101321030.31734-201000>