Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 10 May 2010 14:07:12 -0500 (CDT)
From:      Ted Hatfield <ted@pat.io.com>
To:        ports@freebsd.org
Subject:   spamass-milter-0.3.1_9 leaving open zombie processes.
Message-ID:  <alpine.BSF.2.00.1005101124390.1382@pat.io.com>

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.

--2694848087-1115772720-1273509939=:1382
Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed
Content-ID: <alpine.BSF.2.00.1005101248511.3468@pat.io.com>


spamass-milter-0.3.0_9 appears to be an update to fix the security 
vulnerability referenced by CVE-2010-1132.

However the patch installed for this vulnerability fails to close 
processes properly and spamass-milter leaves a large number of zombie 
processes open until the milter is restarted.

Rather than wait for the port maintainer to update this port we 
installed the patches found at http://savannah.nongnu.org/bugs/?29326

Specifically
file #20020:  spamass-milter-0.3.1-syntax.patch
file #20284:  spamass-milter-0.3.1-popen.patch

If anyone wants to see tham I have included the patches I used.

Does anyone have an ETA for an official update.

Thank,

Ted Hatfield
PrismNet Ltd.
IO.COM.

--2694848087-1115772720-1273509939=:1382
Content-Type: TEXT/PLAIN; charset=US-ASCII; name=patch-spamass-milter.cpp
Content-Transfer-Encoding: BASE64
Content-ID: <alpine.BSF.2.00.1005101145391.1382@pat.io.com>
Content-Description: 
Content-Disposition: attachment; filename=patch-spamass-milter.cpp

LS0tIHNwYW1hc3MtbWlsdGVyLmNwcAkyMDA2LTAzLTIzIDIxOjQxOjM2LjAw
MDAwMDAwMCArMDAwMA0KKysrIHNwYW1hc3MtbWlsdGVyLmNwcAkyMDEwLTAz
LTIzIDE2OjQ0OjU0LjU3MDAyMzEwMCArMDAwMA0KQEAgLTEyOSw5ICsxMjks
MTEgQEAgaW50IGRhZW1vbihpbnQgbm9jaGRpciwgaW50IG5vY2xvc2UpOw0K
IA0KIHN0YXRpYyBjb25zdCBjaGFyIElkW10gPSAiJElkOiBzcGFtYXNzLW1p
bHRlci5jcHAsdiAxLjkwIDIwMDYvMDMvMjMgMjE6NDE6MzYgZG5lbHNvbiBF
eHAgJCI7DQogDQorc3RhdGljIGNoYXIgRmlsdGVyTmFtZVtdID0gIlNwYW1B
c3Nhc3NpbiI7DQorDQogc3RydWN0IHNtZmlEZXNjIHNtZmlsdGVyID0NCiAg
IHsNCi0gICAgIlNwYW1Bc3Nhc3NpbiIsIC8vIGZpbHRlciBuYW1lDQorICAg
IEZpbHRlck5hbWUsIC8vIGZpbHRlciBuYW1lDQogICAgIFNNRklfVkVSU0lP
TiwgICAvLyB2ZXJzaW9uIGNvZGUgLS0gbGVhdmUgdW50b3VjaGVkDQogICAg
IFNNRklGX0FEREhEUlN8U01GSUZfQ0hHSERSU3xTTUZJRl9DSEdCT0RZLCAg
Ly8gZmxhZ3MNCiAgICAgbWxmaV9jb25uZWN0LCAvLyBpbmZvIGZpbHRlciBj
YWxsYmFjaw0KQEAgLTM2MSw3ICszNjMsNyBAQCBtYWluKGludCBhcmdjLCBj
aGFyKiBhcmd2W10pDQogLy8gfX19DQogDQogLyogVXBkYXRlIGEgaGVhZGVy
IGlmIFNBIGNoYW5nZXMgaXQsIG9yIGFkZCBpdCBpZiBpdCBpcyBuZXcuICov
DQotdm9pZCB1cGRhdGVfb3JfaW5zZXJ0KFNwYW1Bc3Nhc3NpbiogYXNzYXNz
aW4sIFNNRklDVFgqIGN0eCwgc3RyaW5nIG9sZHN0cmluZywgdF9zZXR0ZXIg
c2V0dGVyLCBjaGFyICpoZWFkZXIgKQ0KK3ZvaWQgdXBkYXRlX29yX2luc2Vy
dChTcGFtQXNzYXNzaW4qIGFzc2Fzc2luLCBTTUZJQ1RYKiBjdHgsIHN0cmlu
ZyBvbGRzdHJpbmcsIHRfc2V0dGVyIHNldHRlciwgY29uc3QgY2hhciAqaGVh
ZGVyICkNCiB7DQogCXN0cmluZzo6c2l6ZV90eXBlIGVvaDEgPSBhc3Nhc3Np
bi0+ZCgpLmZpbmQoIlxuXG4iKTsNCiAJc3RyaW5nOjpzaXplX3R5cGUgZW9o
MiA9IGFzc2Fzc2luLT5kKCkuZmluZCgiXG5cclxuIik7DQpAQCAtMzg3LDEy
ICszODksMTIgQEAgdm9pZCB1cGRhdGVfb3JfaW5zZXJ0KFNwYW1Bc3Nhc3Np
biogYXNzYQ0KIAkJCWlmIChvbGRzaXplID4gMCkNCiAJCQl7DQogCQkJCWRl
YnVnKERfVU9SSSwgInVfb3JfaTogY2hhbmdpbmciKTsNCi0JCQkJc21maV9j
aGdoZWFkZXIoY3R4LCBoZWFkZXIsIDEsIG5ld3N0cmluZy5zaXplKCkgPiAw
ID8gDQorCQkJCXNtZmlfY2hnaGVhZGVyKGN0eCwgY29uc3RfY2FzdDxjaGFy
Kj4oaGVhZGVyKSwgMSwgbmV3c3RyaW5nLnNpemUoKSA+IDAgPyANCiAJCQkJ
CWNzdHIgOiBOVUxMICk7DQogCQkJfSBlbHNlIGlmIChuZXdzdHJpbmcuc2l6
ZSgpID4gMCkNCiAJCQl7DQogCQkJCWRlYnVnKERfVU9SSSwgInVfb3JfaTog
aW5zZXJ0aW5nIik7DQotCQkJCXNtZmlfYWRkaGVhZGVyKGN0eCwgaGVhZGVy
LCBjc3RyKTsNCisJCQkJc21maV9hZGRoZWFkZXIoY3R4LCBjb25zdF9jYXN0
PGNoYXIqPihoZWFkZXIpLCBjc3RyKTsNCiAJCQl9DQogCQl9IGVsc2UNCiAJ
CXsNCkBAIC00NTIsNyArNDU0LDcgQEAgYXNzYXNzaW5hdGUoU01GSUNUWCog
Y3R4LCBTcGFtQXNzYXNzaW4qIA0KIAlpZiAoZG9fcmVqZWN0KQ0KIAl7DQog
CQlkZWJ1ZyhEX01JU0MsICJSZWplY3RpbmciKTsNCi0JCXNtZmlfc2V0cmVw
bHkoY3R4LCAiNTUwIiwgIjUuNy4xIiwgIkJsb2NrZWQgYnkgU3BhbUFzc2Fz
c2luIik7DQorCQlzbWZpX3NldHJlcGx5KGN0eCwgY29uc3RfY2FzdDxjaGFy
Kj4oIjU1MCIpLCBjb25zdF9jYXN0PGNoYXIqPigiNS43LjEiKSwgY29uc3Rf
Y2FzdDxjaGFyKj4oIkJsb2NrZWQgYnkgU3BhbUFzc2Fzc2luIikpOw0KIA0K
IA0KIAkJaWYgKGZsYWdfYnVja2V0KQ0KQEAgLTQ3MCw3ICs0NzIsNyBAQCBh
c3Nhc3NpbmF0ZShTTUZJQ1RYKiBjdHgsIFNwYW1Bc3Nhc3NpbiogDQogI2Vs
c2UNCiAJCQljaGFyIGJ1ZlsxMDI0XTsNCiAjZW5kaWYNCi0JCQljaGFyICpm
bXQ9IiVzIFwiJXNcIiI7DQorCQkJY29uc3QgY2hhciAqZm10PSIlcyBcIiVz
XCIiOw0KIAkJCUZJTEUgKnA7DQogDQogI2lmIGRlZmluZWQoSEFWRV9BU1BS
SU5URikNCkBAIC01MDAsNyArNTAyLDEwIEBAIGFzc2Fzc2luYXRlKFNNRklD
VFgqIGN0eCwgU3BhbUFzc2Fzc2luKiANCiAJCQl9IGVsc2UNCiAJCQl7DQog
CQkJCS8vIFNlbmQgbWVzc2FnZSBwcm92aWRlZCBieSBTcGFtQXNzYXNzaW4N
Ci0JCQkJZndyaXRlKGFzc2Fzc2luLT5kKCkuY19zdHIoKSwgYXNzYXNzaW4t
PmQoKS5zaXplKCksIDEsIHApOw0KKwkJCQlpZiAoZndyaXRlKGFzc2Fzc2lu
LT5kKCkuY19zdHIoKSwgYXNzYXNzaW4tPmQoKS5zaXplKCksIDEsIHApICE9
IDEpDQorCQkJCXsNCisJCQkJCWRlYnVnKERfQ09QWSwgImZ3cml0ZSBpbmNv
bXBsZXRlICglcykgd2hlbiBjb3B5aW5nIHRvIHNwYW1idWNrZXQiLCBzdHJl
cnJvcihlcnJubykpOw0KKwkJCQl9DQogCQkJCXBjbG9zZShwKTsgcCA9IE5V
TEw7DQogCQkJfQ0KICNpZiBkZWZpbmVkKF9fRnJlZUJTRF9fKQ0KQEAgLTUz
MSw3ICs1MzYsNyBAQCBhc3Nhc3NpbmF0ZShTTUZJQ1RYKiBjdHgsIFNwYW1B
c3Nhc3NpbiogDQogICAgICAgICAgICAgICAgIC8vIHRpbWUuIE5vdGUsIHRo
aXMgbWF5IGdlbmVyYXRlIG11bHRpcGxlIFgtU3BhbS1PcmlnLVRvDQogICAg
ICAgICAgICAgICAgIC8vIGhlYWRlcnMsIGJ1dCB0aGF0J3Mgb2theS4NCiAg
ICAgICAgICAgICAgICAgd2hpbGUoICFhc3Nhc3Npbi0+cmVjaXBpZW50cy5l
bXB0eSgpKSB7DQotICAgICAgICAgICAgICAgICAgaWYgKCBzbWZpX2FkZGhl
YWRlciggY3R4LCAiWC1TcGFtLU9yaWctVG8iLCAoY2hhciAqKWFzc2Fzc2lu
LT5yZWNpcGllbnRzLmZyb250KCkuY19zdHIoKSkgIT0gTUlfU1VDQ0VTUyAp
IHsNCisgICAgICAgICAgICAgICAgICBpZiAoIHNtZmlfYWRkaGVhZGVyKCBj
dHgsIGNvbnN0X2Nhc3Q8Y2hhciAqPigiWC1TcGFtLU9yaWctVG8iKSwgKGNo
YXIgKilhc3Nhc3Npbi0+cmVjaXBpZW50cy5mcm9udCgpLmNfc3RyKCkpICE9
IE1JX1NVQ0NFU1MgKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgdGhy
b3cgc3RyaW5nKCAiRmFpbGVkIHRvIHNhdmUgcmVjaXBpZW50IiApOw0KICAg
ICAgICAgICAgICAgICAgIH0NCiANCkBAIC03NzQsNyArNzc5LDcgQEAgbWxm
aV9lbnZmcm9tKFNNRklDVFgqIGN0eCwgY2hhcioqIGVudmZybw0KIHsNCiAg
IFNwYW1Bc3Nhc3NpbiogYXNzYXNzaW47DQogICBzdHJ1Y3QgY29udGV4dCAq
c2N0eCA9IChzdHJ1Y3QgY29udGV4dCAqKXNtZmlfZ2V0cHJpdihjdHgpOw0K
LSAgY2hhciAqcXVldWVpZDsNCisgIGNvbnN0IGNoYXIgKnF1ZXVlaWQ7DQog
DQogICBpZiAoc2N0eCA9PSBOVUxMKQ0KICAgew0KQEAgLTgwMSw3ICs4MDYs
NyBAQCBtbGZpX2VudmZyb20oU01GSUNUWCogY3R4LCBjaGFyKiogZW52ZnJv
DQogICAvLyByZW1lbWJlciB0aGUgTUFJTCBGUk9NIGFkZHJlc3MNCiAgIGFz
c2Fzc2luLT5zZXRfZnJvbShzdHJpbmcoZW52ZnJvbVswXSkpOw0KICAgDQot
ICBxdWV1ZWlkPXNtZmlfZ2V0c3ltdmFsKGN0eCwiaSIpOw0KKyAgcXVldWVp
ZD1zbWZpX2dldHN5bXZhbChjdHgsIGNvbnN0X2Nhc3Q8Y2hhciAqPigiaSIp
KTsNCiAgIGlmICghcXVldWVpZCkNCiAgIHsNCiAgICAgcXVldWVpZD0idW5r
bm93biI7DQpAQCAtODQyLDcgKzg0Nyw3IEBAIG1sZmlfZW52cmNwdChTTUZJ
Q1RYKiBjdHgsIGNoYXIqKiBlbnZyY3ANCiAJCS8qIG9wZW4gYSBwaXBlIHRv
IHNlbmRtYWlsIHNvIHdlIGNhbiBkbyBhZGRyZXNzIGV4cGFuc2lvbiAqLw0K
IA0KIAkJY2hhciBidWZbMTAyNF07DQotCQljaGFyICpmbXQ9IiVzIC1idiBc
IiVzXCIgMj4mMSI7DQorCQljb25zdCBjaGFyICpmbXQ9IiVzIC1idiBcIiVz
XCIgMj4mMSI7DQogDQogI2lmIGRlZmluZWQoSEFWRV9TTlBSSU5URikNCiAJ
CXNucHJpbnRmKGJ1Ziwgc2l6ZW9mKGJ1ZiktMSwgZm10LCBTRU5ETUFJTCwg
ZW52cmNwdFswXSk7DQpAQCAtOTI4LDcgKzkzMyw3IEBAIG1sZmlfZW52cmNw
dChTTUZJQ1RYKiBjdHgsIGNoYXIqKiBlbnZyY3ANCiAJCWNoYXIgZGF0ZVsz
Ml07DQogDQogCQkvKiBSRkMgODIyIGRhdGUuICovDQotCQltYWNyb19iID0g
c21maV9nZXRzeW12YWwoY3R4LCAiYiIpOw0KKwkJbWFjcm9fYiA9IHNtZmlf
Z2V0c3ltdmFsKGN0eCwgY29uc3RfY2FzdDxjaGFyICo+KCJiIikpOw0KIAkJ
aWYgKCFtYWNyb19iKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICANCiAJCXsNCiAJCQl0aW1lX3QgdHZhbDsNCkBAIC05MzksNyArOTQ0LDcg
QEAgbWxmaV9lbnZyY3B0KFNNRklDVFgqIGN0eCwgY2hhcioqIGVudnJjcA0K
IAkJfQ0KIA0KIAkJLyogcXVldWUgSUQgKi8NCi0JCW1hY3JvX2kgPSBzbWZp
X2dldHN5bXZhbChjdHgsICJpIik7DQorCQltYWNyb19pID0gc21maV9nZXRz
eW12YWwoY3R4LCBjb25zdF9jYXN0PGNoYXIgKj4oImkiKSk7DQogCQlpZiAo
IW1hY3JvX2kpDQogCQl7DQogCQkJbWFjcm9faSA9ICJ1bmtub3duIjsNCkBA
IC05NDcsNyArOTUyLDcgQEAgbWxmaV9lbnZyY3B0KFNNRklDVFgqIGN0eCwg
Y2hhcioqIGVudnJjcA0KIAkJfQ0KIA0KIAkJLyogRlFETiBvZiB0aGlzIHNp
dGUgKi8NCi0JCW1hY3JvX2ogPSBzbWZpX2dldHN5bXZhbChjdHgsICJqIik7
DQorCQltYWNyb19qID0gc21maV9nZXRzeW12YWwoY3R4LCBjb25zdF9jYXN0
PGNoYXIgKj4oImoiKSk7DQogCQlpZiAoIW1hY3JvX2opDQogCQl7DQogCQkJ
bWFjcm9faiA9ICJsb2NhbGhvc3QiOw0KQEAgLTk1NSw3ICs5NjAsNyBAQCBt
bGZpX2VudnJjcHQoU01GSUNUWCogY3R4LCBjaGFyKiogZW52cmNwDQogCQl9
DQogDQogCQkvKiBQcm90b2NvbCB1c2VkIHRvIHJlY2VpdmUgdGhlIG1lc3Nh
Z2UgKi8NCi0JCW1hY3JvX3IgPSBzbWZpX2dldHN5bXZhbChjdHgsICJyIik7
DQorCQltYWNyb19yID0gc21maV9nZXRzeW12YWwoY3R4LCBjb25zdF9jYXN0
PGNoYXIgKj4oInIiKSk7DQogCQlpZiAoIW1hY3JvX3IpDQogCQl7DQogCQkJ
bWFjcm9fciA9ICJTTVRQIjsNCkBAIC05NjcsMTQgKzk3MiwxNCBAQCBtbGZp
X2VudnJjcHQoU01GSUNUWCogY3R4LCBjaGFyKiogZW52cmNwDQogCQkgICBm
aXhlZC4gIFVudGlsIHRoYXQgZGF5LCB1c2UgdGhlIHZhbHVlIHJlbWVtYmVy
ZWQgYnkNCiAJCSAgIG1sZmlfaGVsbygpDQogCQkqLw0KLQkJbWFjcm9fcyA9
IHNtZmlfZ2V0c3ltdmFsKGN0eCwgInMiKTsNCisJCW1hY3JvX3MgPSBzbWZp
X2dldHN5bXZhbChjdHgsIGNvbnN0X2Nhc3Q8Y2hhciAqPigicyIpKTsNCiAJ
CWlmICghbWFjcm9fcykNCiAJCQltYWNyb19zID0gc2N0eC0+aGVsbzsNCiAJ
CWlmICghbWFjcm9fcykNCiAJCQltYWNyb19zID0gIm5vaGVsbyI7DQogDQog
CQkvKiBTZW5kbWFpbCBiaW5hcnkgdmVyc2lvbiAqLw0KLQkJbWFjcm9fdiA9
IHNtZmlfZ2V0c3ltdmFsKGN0eCwgInYiKTsNCisJCW1hY3JvX3YgPSBzbWZp
X2dldHN5bXZhbChjdHgsIGNvbnN0X2Nhc3Q8Y2hhciAqPigidiIpKTsNCiAJ
CWlmICghbWFjcm9fdikNCiAJCXsNCiAJCQltYWNyb192ID0gIjguMTMuMCI7
DQpAQCAtOTgyLDcgKzk4Nyw3IEBAIG1sZmlfZW52cmNwdChTTUZJQ1RYKiBj
dHgsIGNoYXIqKiBlbnZyY3ANCiAJCX0NCiANCiAJCS8qIFNlbmRtYWlsIC5j
ZiB2ZXJzaW9uICovDQotCQltYWNyb19aID0gc21maV9nZXRzeW12YWwoY3R4
LCAiWiIpOw0KKwkJbWFjcm9fWiA9IHNtZmlfZ2V0c3ltdmFsKGN0eCwgY29u
c3RfY2FzdDxjaGFyICo+KCJaIikpOw0KIAkJaWYgKCFtYWNyb19aKQ0KIAkJ
ew0KIAkJCW1hY3JvX1ogPSAiOC4xMy4wIjsNCkBAIC05OTAsNyArOTk1LDcg
QEAgbWxmaV9lbnZyY3B0KFNNRklDVFgqIGN0eCwgY2hhcioqIGVudnJjcA0K
IAkJfQ0KIA0KIAkJLyogVmFsaWRhdGVkIHNlbmRpbmcgc2l0ZSdzIGFkZHJl
c3MgKi8NCi0JCW1hY3JvX18gPSBzbWZpX2dldHN5bXZhbChjdHgsICJfIik7
DQorCQltYWNyb19fID0gc21maV9nZXRzeW12YWwoY3R4LCBjb25zdF9jYXN0
PGNoYXIgKj4oIl8iKSk7DQogCQlpZiAoIW1hY3JvX18pDQogCQl7DQogCQkJ
bWFjcm9fXyA9ICJ1bmtub3duIjsNCkBAIC0xMzc4LDEwICsxMzgzLDEwIEBA
IHZvaWQgU3BhbUFzc2Fzc2luOjpDb25uZWN0KCkNCiAgICAgICAvLyBYWFgg
YXJiaXRyYXJ5IDEwMC1hcmd1bWVudCBtYXgNCiAgICAgICBpbnQgYXJnYyA9
IDA7DQogICAgICAgY2hhcioqIGFyZ3YgPSAoY2hhcioqKSBtYWxsb2MoMTAw
KnNpemVvZihjaGFyKikpOw0KLSAgICAgIGFyZ3ZbYXJnYysrXSA9IFNQQU1D
Ow0KKyAgICAgIGFyZ3ZbYXJnYysrXSA9IHN0cmR1cChTUEFNQyk7DQogICAg
ICAgaWYgKGZsYWdfc25pZmZ1c2VyKSANCiAgICAgICB7DQotICAgICAgICBh
cmd2W2FyZ2MrK10gPSAiLXUiOw0KKyAgICAgICAgYXJndlthcmdjKytdID0g
c3RyZHVwKCItdSIpOw0KICAgICAgICAgaWYgKCBleHBhbmRlZHJjcHQuc2l6
ZSgpICE9IDEgKQ0KICAgICAgICAgew0KICAgICAgICAgICAvLyBNb3JlIChv
ciBsZXNzPykgdGhhbiBvbmUgcmVjaXBpZW50LCBzbyB3ZSBwYXNzIHRoZSBk
ZWZhdWx0DQpAQCAtMTQwNiw3ICsxNDExLDcgQEAgdm9pZCBTcGFtQXNzYXNz
aW46OkNvbm5lY3QoKQ0KICAgICAgIH0NCiAgICAgICBpZiAoc3BhbWRob3N0
KSANCiAgICAgICB7DQotICAgICAgICBhcmd2W2FyZ2MrK10gPSAiLWQiOw0K
KyAgICAgICAgYXJndlthcmdjKytdID0gc3RyZHVwKCItZCIpOw0KICAgICAg
ICAgYXJndlthcmdjKytdID0gc3BhbWRob3N0Ow0KICAgICAgIH0NCiAgICAg
ICBpZiAoc3BhbWNfYXJnYykNCkBAIC0yMTQ4LDcgKzIxNTMsNyBAQCBjaGFy
ICpzdHJsd3IoY2hhciAqc3RyKQ0KIH0NCiANCiAvKiBMb2cgYSBtZXNzYWdl
IGFib3V0IG1pc3NpbmcgbWlsdGVyIG1hY3JvcywgYnV0IG9ubHkgdGhlIGZp
cnN0IHRpbWUgKi8NCi12b2lkIHdhcm5tYWNybyhjaGFyICptYWNybywgY2hh
ciAqc2NvcGUpDQordm9pZCB3YXJubWFjcm8oY29uc3QgY2hhciAqbWFjcm8s
IGNvbnN0IGNoYXIgKnNjb3BlKQ0KIHsNCiAJaWYgKHdhcm5lZG1hY3JvKQ0K
IAkJcmV0dXJuOw0KLS0tIHNwYW1hc3MtbWlsdGVyLmNwcAkyMDEwLTA0LTE5
IDExOjQ3OjU3LjM2OTE2MjcyNCArMDEwMA0KKysrIHNwYW1hc3MtbWlsdGVy
LmNwcAkyMDEwLTA0LTE5IDExOjUwOjIxLjQwNDE2MjcxOSArMDEwMA0KQEAg
LTE3MywxMCArMTczLDYgQEAgYm9vbCBmbGFnX2Z1bGxfZW1haWwgPSBmYWxz
ZTsJCS8qIHBhc3MgZg0KIGJvb2wgZmxhZ19leHBhbmQgPSBmYWxzZTsJLyog
YWxpYXMvdmlydHVzZXJ0YWJsZSBleHBhbnNpb24gKi8NCiBib29sIHdhcm5l
ZG1hY3JvID0gZmFsc2U7CS8qIGhhdmUgd2UgbG9nZ2VkIHRoYXQgd2UgY291
bGRuJ3QgZmV0Y2ggYSBtYWNybz8gKi8NCiANCi0jaWYgZGVmaW5lZChfX0Zy
ZWVCU0RfXykgLyogcG9wZW4gYnVnIC0gc2VlIFBSIGJpbi81MDc3MCAqLw0K
LXN0YXRpYyBwdGhyZWFkX211dGV4X3QgcG9wZW5fbXV0ZXggPSBQVEhSRUFE
X01VVEVYX0lOSVRJQUxJWkVSOw0KLSNlbmRpZg0KLQ0KIC8vIHt7eyBtYWlu
KCkNCiANCiBpbnQNCkBAIC00NjMsNDIgKzQ1OSwxNiBAQCBhc3Nhc3NpbmF0
ZShTTUZJQ1RYKiBjdHgsIFNwYW1Bc3Nhc3NpbiogDQogCQkJICAgc2VuZCBh
bm90aGVyIGNvcHkuICBUaGUgbWlsdGVyIEFQSSB3aWxsIG5vdCBsZXQgeW91
IHNlbmQgdGhlDQogCQkJICAgbWVzc2FnZSBBTkQgcmV0dXJuIGEgZmFpbHVy
ZSBjb2RlIHRvIHRoZSBzZW5kZXIsIHNvIHRoaXMgaXMNCiAJCQkgICB0aGUg
b25seSB3YXkgdG8gZG8gaXQuICovDQotI2lmIGRlZmluZWQoX19GcmVlQlNE
X18pDQotCQkJaW50IHJ2Ow0KLSNlbmRpZg0KLQkJCQ0KLSNpZiBkZWZpbmVk
KEhBVkVfQVNQUklOVEYpDQotCQkJY2hhciAqYnVmOw0KLSNlbHNlDQotCQkJ
Y2hhciBidWZbMTAyNF07DQotI2VuZGlmDQotCQkJY29uc3QgY2hhciAqZm10
PSIlcyBcIiVzXCIiOw0KKwkJCWNoYXIgc2VuZG1haWxfcHJvZ1tdID0gU0VO
RE1BSUw7DQorCQkJY2hhciAqY29uc3QgcG9wZW5fYXJndltdID0geyBzZW5k
bWFpbF9wcm9nLCBzcGFtYnVja2V0LCBOVUxMIH07DQogCQkJRklMRSAqcDsN
CisJCQlwaWRfdCBwaWQ7DQogDQotI2lmIGRlZmluZWQoSEFWRV9BU1BSSU5U
RikNCi0JCQlhc3ByaW50ZigmYnVmLCBmbXQsIFNFTkRNQUlMLCBzcGFtYnVj
a2V0KTsNCi0jZWxzZQ0KLSNpZiBkZWZpbmVkKEhBVkVfU05QUklOVEYpDQot
CQkJc25wcmludGYoYnVmLCBzaXplb2YoYnVmKS0xLCBmbXQsIFNFTkRNQUlM
LCBzcGFtYnVja2V0KTsNCi0jZWxzZQ0KLQkJCS8qIFhYWCBwb3NzaWJsZSBi
dWZmZXIgb3ZlcmZsb3cgaGVyZSAqLw0KLQkJCXNwcmludGYoYnVmLCBmbXQs
IFNFTkRNQUlMLCBzcGFtYnVja2V0KTsNCi0jZW5kaWYNCi0jZW5kaWYNCi0N
Ci0JCQlkZWJ1ZyhEX0NPUFksICJjYWxsaW5nICVzIiwgYnVmKTsNCi0jaWYg
ZGVmaW5lZChfX0ZyZWVCU0RfXykgLyogcG9wZW4gYnVnIC0gc2VlIFBSIGJp
bi81MDc3MCAqLw0KLQkJCXJ2ID0gcHRocmVhZF9tdXRleF9sb2NrKCZwb3Bl
bl9tdXRleCk7DQotCQkJaWYgKHJ2KQ0KLQkJCXsNCi0JCQkJZGVidWcoRF9B
TFdBWVMsICJDb3VsZCBub3QgbG9jayBwb3BlbiBtdXRleDogJXMiLCBzdHJl
cnJvcihydikpOw0KLQkJCQlhYm9ydCgpOw0KLQkJCX0JCQ0KLSNlbmRpZg0K
LQkJCXAgPSBwb3BlbihidWYsICJ3Iik7DQorCQkJZGVidWcoRF9DT1BZLCAi
Y2FsbGluZyAlcyAlcyIsIFNFTkRNQUlMLCBzcGFtYnVja2V0KTsNCisJCQlw
ID0gcG9wZW52KHBvcGVuX2FyZ3YsICJ3IiwgJnBpZCk7DQogCQkJaWYgKCFw
KQ0KIAkJCXsNCi0JCQkJZGVidWcoRF9DT1BZLCAicG9wZW4gZmFpbGVkKCVz
KS4gIFdpbGwgbm90IHNlbmQgYSBjb3B5IHRvIHNwYW1idWNrZXQiLCBzdHJl
cnJvcihlcnJubykpOw0KKwkJCQlkZWJ1ZyhEX0NPUFksICJwb3BlbnYgZmFp
bGVkKCVzKS4gIFdpbGwgbm90IHNlbmQgYSBjb3B5IHRvIHNwYW1idWNrZXQi
LCBzdHJlcnJvcihlcnJubykpOw0KIAkJCX0gZWxzZQ0KIAkJCXsNCiAJCQkJ
Ly8gU2VuZCBtZXNzYWdlIHByb3ZpZGVkIGJ5IFNwYW1Bc3Nhc3Npbg0KQEAg
LTUwNiwxOSArNDc2LDkgQEAgYXNzYXNzaW5hdGUoU01GSUNUWCogY3R4LCBT
cGFtQXNzYXNzaW4qIA0KIAkJCQl7DQogCQkJCQlkZWJ1ZyhEX0NPUFksICJm
d3JpdGUgaW5jb21wbGV0ZSAoJXMpIHdoZW4gY29weWluZyB0byBzcGFtYnVj
a2V0Iiwgc3RyZXJyb3IoZXJybm8pKTsNCiAJCQkJfQ0KLQkJCQlwY2xvc2Uo
cCk7IHAgPSBOVUxMOw0KKwkJCQlmY2xvc2UocCk7IHAgPSBOVUxMOw0KKwkJ
CQl3YWl0cGlkKHBpZCwgTlVMTCwgMCk7DQogCQkJfQ0KLSNpZiBkZWZpbmVk
KF9fRnJlZUJTRF9fKQ0KLQkJCXJ2ID0gcHRocmVhZF9tdXRleF91bmxvY2so
JnBvcGVuX211dGV4KTsNCi0JCQlpZiAocnYpDQotCQkJew0KLQkJCQlkZWJ1
ZyhEX0FMV0FZUywgIkNvdWxkIG5vdCB1bmxvY2sgcG9wZW4gbXV0ZXg6ICVz
Iiwgc3RyZXJyb3IocnYpKTsNCi0JCQkJYWJvcnQoKTsNCi0JCQl9CQkNCi0j
ZW5kaWYNCi0jaWYgZGVmaW5lZChIQVZFX0FTUFJJTlRGKQ0KLQkJCWZyZWUo
YnVmKTsNCi0jZW5kaWYgDQogCQl9DQogCQlyZXR1cm4gU01GSVNfUkVKRUNU
Ow0KIAl9DQpAQCAtODQ3LDMwICs4MDcsMTcgQEAgbWxmaV9lbnZyY3B0KFNN
RklDVFgqIGN0eCwgY2hhcioqIGVudnJjcA0KIAkJLyogb3BlbiBhIHBpcGUg
dG8gc2VuZG1haWwgc28gd2UgY2FuIGRvIGFkZHJlc3MgZXhwYW5zaW9uICov
DQogDQogCQljaGFyIGJ1ZlsxMDI0XTsNCi0JCWNvbnN0IGNoYXIgKmZtdD0i
JXMgLWJ2IFwiJXNcIiAyPiYxIjsNCi0NCi0jaWYgZGVmaW5lZChIQVZFX1NO
UFJJTlRGKQ0KLQkJc25wcmludGYoYnVmLCBzaXplb2YoYnVmKS0xLCBmbXQs
IFNFTkRNQUlMLCBlbnZyY3B0WzBdKTsNCi0jZWxzZQ0KLQkJLyogWFhYIHBv
c3NpYmxlIGJ1ZmZlciBvdmVyZmxvdyBoZXJlICovDQotCQlzcHJpbnRmKGJ1
ZiwgZm10LCBTRU5ETUFJTCwgZW52cmNwdFswXSk7DQotI2VuZGlmDQorCQlj
aGFyIHNlbmRtYWlsX3Byb2dbXSA9IFNFTkRNQUlMOw0KKwkJY2hhciBzZW5k
bWFpbF9tb2RlW10gPSAiLWJ2IjsNCisJCWNoYXIgKiBjb25zdCBwb3Blbl9h
cmd2W10gPSB7IHNlbmRtYWlsX3Byb2csIHNlbmRtYWlsX21vZGUsIGVudnJj
cHRbMF0sIE5VTEwgfTsNCisJCXBpZF90IHBpZDsNCiANCi0JCWRlYnVnKERf
UkNQVCwgImNhbGxpbmcgJXMiLCBidWYpOw0KKwkJZGVidWcoRF9SQ1BULCAi
Y2FsbGluZyAlcyAtYnYgJXMiLCBTRU5ETUFJTCwgZW52cmNwdFswXSk7DQog
DQotI2lmIGRlZmluZWQoX19GcmVlQlNEX18pIC8qIHBvcGVuIGJ1ZyAtIHNl
ZSBQUiBiaW4vNTA3NzAgKi8NCi0JCXJ2ID0gcHRocmVhZF9tdXRleF9sb2Nr
KCZwb3Blbl9tdXRleCk7DQotCQlpZiAocnYpDQotCQl7DQotCQkJZGVidWco
RF9BTFdBWVMsICJDb3VsZCBub3QgbG9jayBwb3BlbiBtdXRleDogJXMiLCBz
dHJlcnJvcihydikpOw0KLQkJCWFib3J0KCk7DQotCQl9CQkNCi0jZW5kaWYN
Ci0NCi0JCXAgPSBwb3BlbihidWYsICJyIik7DQorCQlwID0gcG9wZW52KHBv
cGVuX2FyZ3YsICJyIiwgJnBpZCk7DQogCQlpZiAoIXApDQogCQl7DQotCQkJ
ZGVidWcoRF9SQ1BULCAicG9wZW4gZmFpbGVkKCVzKS4gIFdpbGwgbm90IGV4
cGFuZCBhbGlhc2VzIiwgc3RyZXJyb3IoZXJybm8pKTsNCisJCQlkZWJ1ZyhE
X1JDUFQsICJwb3BlbnYgZmFpbGVkKCVzKS4gIFdpbGwgbm90IGV4cGFuZCBh
bGlhc2VzIiwgc3RyZXJyb3IoZXJybm8pKTsNCiAJCQlhc3Nhc3Npbi0+ZXhw
YW5kZWRyY3B0LnB1c2hfYmFjayhlbnZyY3B0WzBdKTsNCiAJCX0gZWxzZQ0K
IAkJew0KQEAgLTg5NSwxNiArODQyLDkgQEAgbWxmaV9lbnZyY3B0KFNNRklD
VFgqIGN0eCwgY2hhcioqIGVudnJjcA0KIAkJCQkJYXNzYXNzaW4tPmV4cGFu
ZGVkcmNwdC5wdXNoX2JhY2socCs3KTsNCiAJCQkJfQ0KIAkJCX0NCi0JCQlw
Y2xvc2UocCk7IHAgPSBOVUxMOw0KKwkJCWZjbG9zZShwKTsgcCA9IE5VTEw7
DQorCQkJd2FpdHBpZChwaWQsIE5VTEwsIDApOw0KIAkJfQ0KLSNpZiBkZWZp
bmVkKF9fRnJlZUJTRF9fKQ0KLQkJcnYgPSBwdGhyZWFkX211dGV4X3VubG9j
aygmcG9wZW5fbXV0ZXgpOw0KLQkJaWYgKHJ2KQ0KLQkJew0KLQkJCWRlYnVn
KERfQUxXQVlTLCAiQ291bGQgbm90IHVubG9jayBwb3BlbiBtdXRleDogJXMi
LCBzdHJlcnJvcihydikpOw0KLQkJCWFib3J0KCk7DQotCQl9CQkNCi0jZW5k
aWYNCiAJfSBlbHNlDQogCXsNCiAJCWFzc2Fzc2luLT5leHBhbmRlZHJjcHQu
cHVzaF9iYWNrKGVudnJjcHRbMF0pOw0KQEAgLTIxNjIsNSArMjEwMiw3MiBA
QCB2b2lkIHdhcm5tYWNybyhjb25zdCBjaGFyICptYWNybywgY29uc3QgDQog
CXdhcm5lZG1hY3JvID0gdHJ1ZTsNCiB9DQogDQorLyoNCisgICB1bnRydXN0
ZWQtYXJndW1lbnQtc2FmZSBwb3BlbiBmdW5jdGlvbiAtIG9ubHkgc3VwcG9y
dHMgInIiIGFuZCAidyIgbW9kZXMNCisgICBmb3Igc2ltcGxpY2l0eSwgYW5k
IGFsd2F5cyByZWFkcyBzdGRvdXQgYW5kIHN0ZGVyciBpbiAiciIgbW9kZS4g
IENhbGwNCisgICBmY2xvc2UgdG8gY2xvc2UgdGhlIEZJTEUsIGFuZCB3YWl0
cGlkIHRvIHJlYXAgdGhlIGNoaWxkIHByb2Nlc3MgKHBpZCkuDQorKi8NCitG
SUxFICpwb3BlbnYoY2hhciAqY29uc3QgYXJndltdLCBjb25zdCBjaGFyICp0
eXBlLCBwaWRfdCAqcGlkKQ0KK3sNCisJRklMRSAqaW9wOw0KKwlpbnQgcGRl
c1syXTsNCisJaW50IHNhdmVfZXJybm87DQorDQorCWlmICgoKnR5cGUgIT0g
J3InICYmICp0eXBlICE9ICd3JykgfHwgdHlwZVsxXSkNCisJew0KKwkJZXJy
bm8gPSBFSU5WQUw7DQorCQlyZXR1cm4gKE5VTEwpOw0KKwl9DQorCWlmIChw
aXBlKHBkZXMpIDwgMCkNCisJCXJldHVybiAoTlVMTCk7DQorCXN3aXRjaCAo
KnBpZCA9IGZvcmsoKSkgew0KKwkNCisJY2FzZSAtMToJCQkvKiBFcnJvci4g
Ki8NCisJCXNhdmVfZXJybm8gPSBlcnJubzsNCisJCSh2b2lkKWNsb3NlKHBk
ZXNbMF0pOw0KKwkJKHZvaWQpY2xvc2UocGRlc1sxXSk7DQorCQllcnJubyA9
IHNhdmVfZXJybm87DQorCQlyZXR1cm4gKE5VTEwpOw0KKwkJLyogTk9UUkVB
Q0hFRCAqLw0KKwljYXNlIDA6CQkJCS8qIENoaWxkLiAqLw0KKwkJaWYgKCp0
eXBlID09ICdyJykgew0KKwkJCS8qDQorCQkJICogVGhlIGR1cDIoKSB0byBT
VERJTl9GSUxFTk8gaXMgcmVwZWF0ZWQgdG8gYXZvaWQNCisJCQkgKiB3cml0
aW5nIHRvIHBkZXNbMV0sIHdoaWNoIG1pZ2h0IGNvcnJ1cHQgdGhlDQorCQkJ
ICogcGFyZW50J3MgY29weS4gIFRoaXMgaXNuJ3QgZ29vZCBlbm91Z2ggaW4N
CisJCQkgKiBnZW5lcmFsLCBzaW5jZSB0aGUgZXhpdCgpIGlzIG5vIHJldHVy
biwgc28NCisJCQkgKiB0aGUgY29tcGlsZXIgaXMgZnJlZSB0byBjb3JydXB0
IGFsbCB0aGUgbG9jYWwNCisJCQkgKiB2YXJpYWJsZXMuDQorCQkJICovDQor
CQkJKHZvaWQpY2xvc2UocGRlc1swXSk7DQorCQkJKHZvaWQpZHVwMihwZGVz
WzFdLCBTVERPVVRfRklMRU5PKTsNCisJCQkodm9pZClkdXAyKHBkZXNbMV0s
IFNUREVSUl9GSUxFTk8pOw0KKwkJCWlmIChwZGVzWzFdICE9IFNURE9VVF9G
SUxFTk8gJiYgcGRlc1sxXSAhPSBTVERFUlJfRklMRU5PKSB7DQorCQkJCSh2
b2lkKWNsb3NlKHBkZXNbMV0pOw0KKwkJCX0gDQorCQl9IGVsc2Ugew0KKwkJ
CWlmIChwZGVzWzBdICE9IFNURElOX0ZJTEVOTykgew0KKwkJCQkodm9pZClk
dXAyKHBkZXNbMF0sIFNURElOX0ZJTEVOTyk7DQorCQkJCSh2b2lkKWNsb3Nl
KHBkZXNbMF0pOw0KKwkJCX0NCisJCQkodm9pZCljbG9zZShwZGVzWzFdKTsN
CisJCX0NCisJCWV4ZWN2KGFyZ3ZbMF0sIGFyZ3YpOw0KKwkJZXhpdCgxMjcp
Ow0KKwkJLyogTk9UUkVBQ0hFRCAqLw0KKwl9DQorDQorCS8qIFBhcmVudDsg
YXNzdW1lIGZkb3BlbiBjYW4ndCBmYWlsLiAqLw0KKwlpZiAoKnR5cGUgPT0g
J3InKSB7DQorCQlpb3AgPSBmZG9wZW4ocGRlc1swXSwgdHlwZSk7DQorCQko
dm9pZCljbG9zZShwZGVzWzFdKTsNCisJfSBlbHNlIHsNCisJCWlvcCA9IGZk
b3BlbihwZGVzWzFdLCB0eXBlKTsNCisJCSh2b2lkKWNsb3NlKHBkZXNbMF0p
Ow0KKwl9DQorDQorCXJldHVybiAoaW9wKTsNCit9DQorDQogLy8gfX19DQog
Ly8gdmltNjphaTpub2V4cGFuZHRhYg0K

--2694848087-1115772720-1273509939=:1382
Content-Type: TEXT/PLAIN; charset=US-ASCII; name=patch-spamass-milter.h
Content-Transfer-Encoding: BASE64
Content-ID: <alpine.BSF.2.00.1005101145392.1382@pat.io.com>
Content-Description: 
Content-Disposition: attachment; filename=patch-spamass-milter.h

LS0tIHNwYW1hc3MtbWlsdGVyLmgJMjAwNi0wMy0yMyAyMjowNzo1NS4wMDAw
MDAwMDAgKzAwMDANCisrKyBzcGFtYXNzLW1pbHRlci5oCTIwMTAtMDMtMjMg
MTY6Mjk6NTguMjgxODYzMTU4ICswMDAwDQpAQCAtMTg1LDYgKzE4NSw2IEBA
IHZvaWQgcGFyc2VfbmV0d29ya2xpc3QoY2hhciAqc3RyaW5nLCBzdHINCiBp
bnQgaXBfaW5fbmV0d29ya2xpc3Qoc3RydWN0IGluX2FkZHIgaXAsIHN0cnVj
dCBuZXR3b3JrbGlzdCAqbGlzdCk7DQogdm9pZCBwYXJzZV9kZWJ1Z2xldmVs
KGNoYXIqIHN0cmluZyk7DQogY2hhciAqc3RybHdyKGNoYXIgKnN0cik7DQot
dm9pZCB3YXJubWFjcm8oY2hhciAqbWFjcm8sIGNoYXIgKnNjb3BlKTsNCit2
b2lkIHdhcm5tYWNybyhjb25zdCBjaGFyICptYWNybywgY29uc3QgY2hhciAq
c2NvcGUpOw0KIA0KICNlbmRpZg0KLS0tIHNwYW1hc3MtbWlsdGVyLmgJMjAx
MC0wNC0xOSAxMTo0Nzo1Ny40MDMxNjI3NTUgKzAxMDANCisrKyBzcGFtYXNz
LW1pbHRlci5oCTIwMTAtMDQtMTkgMTE6NDg6MzIuNTg4MTYyMTgxICswMTAw
DQpAQCAtMTg2LDUgKzE4Niw2IEBAIGludCBpcF9pbl9uZXR3b3JrbGlzdChz
dHJ1Y3QgaW5fYWRkciBpcCwNCiB2b2lkIHBhcnNlX2RlYnVnbGV2ZWwoY2hh
ciogc3RyaW5nKTsNCiBjaGFyICpzdHJsd3IoY2hhciAqc3RyKTsNCiB2b2lk
IHdhcm5tYWNybyhjb25zdCBjaGFyICptYWNybywgY29uc3QgY2hhciAqc2Nv
cGUpOw0KK0ZJTEUgKnBvcGVudihjaGFyICpjb25zdCBhcmd2W10sIGNvbnN0
IGNoYXIgKnR5cGUsIHBpZF90ICpwaWQpOw0KIA0KICNlbmRpZg0K

--2694848087-1115772720-1273509939=:1382--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?alpine.BSF.2.00.1005101124390.1382>