Re: [SPAM] valias remove alias

Drew Wells <[email protected]> Fri, 18 Sep 2015 15:30:38 +0100
Newsgroups gmane.mail.vpopmail
Message-ID <[email protected]>
This is a multi-part message in MIME format.
--------------010207030305030007080001
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit

On 09/18/2015 03:23 PM, Matt Brookings wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Applies perfectly!  Thanks!
>
> On 09/18/2015 09:21 AM, Drew Wells wrote:
>> On 09/18/2015 02:47 PM, Matt Brookings wrote:
>>> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
>>>
>>> Drew, I know you've put a lot of effort into these patches, but they do not succeed against
>>> the 5.5.0 trunk.  Patches should be made against the most recent revision, which can be checked
>>> out via Subversion from Sourceforge.
>>>
>>> On 09/18/2015 08:11 AM, Drew Wells wrote:
>>>> On 09/17/2015 04:55 PM, Matt Brookings wrote:
>>>>> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
>>>>>
>>>>> On 09/17/2015 10:52 AM, Drew Wells wrote:
>>>>>>>> I basically did a diff from 5.4.29 to 5.4.33 and implemented that diff to 5.5.0, some
>>>>>>>> of it had already been done to 5.5.0 and alot of it centered around the snprintf tidy
>>>>>>>> up's and the string_list implementation. The attached patch does not include any of
>>>>>>>> the changes I recently sent to the mailing list, just the changes from 5.4.[29->33].
>>>>>> This patch was generated from the 5.5.0 .tar.bz2, I had a look at SVN trunk and from what
>>>>>> I could see, it was 5.4.34.
>>>>> The trunk on Sourceforge is the current 5.5.0.  The 5.4 series only appears in the tags
>>>>> and branches area now.  I'll look over this patch and get it applied.  Thanks for putting
>>>>> it together!
>>>>>
>>>> And lastly for now, someone has done a lot of work in tidying up/making safe all the calls
>>>> to snprintf(), the attached patch completes this work (I think).  This patch comes after the
>>>> 5.4.[29->33] patch I did.
>>>>
>>>>
>> Ok, have have downloaded a snapshot .zip file from Sourceforge (vpopmail-code-1034.zip) and
>> applied the changes to that and attached the patch.  This is the 5.4.[29-33] changes patch, I'll
>> do the snprintf() one later.  Let me know if you need me to do anything else with it.
>
Not a problem do excuse my use of the 5.5.0 tar, I'll use SVN trunk from 
now on.  Here is the snprintf() patch for vpopmail-code-1034.zip.


!DSPAM:55fc201141551341917110!

--------------010207030305030007080001
Content-Type: text/plain; charset=UTF-8;
 name="vpopmail-code-1034-trunk-snprintf.patch"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
 filename="vpopmail-code-1034-trunk-snprintf.patch"

ZGlmZiAtdVByIHZwb3BtYWlsLWNvZGUtMTAzNC10cnVuay5vcmlnL3Zwb3BtYWlsZC5jIHZw
b3BtYWlsLWNvZGUtMTAzNC10cnVuay92cG9wbWFpbGQuYwotLS0gdnBvcG1haWwtY29kZS0x
MDM0LXRydW5rLm9yaWcvdnBvcG1haWxkLmMJMjAxNS0wOS0xOCAxNTowMDoyNy43NDcwOTUw
OTUgKzAxMDAKKysrIHZwb3BtYWlsLWNvZGUtMTAzNC10cnVuay92cG9wbWFpbGQuYwkyMDE1
LTA5LTE4IDE1OjI0OjA0LjY1NTA5NTAzOSArMDEwMApAQCAtNDI5LDcgKzQyOSw3IEBACiAg
ICAgcmV0dXJuKC0yKTsKICAgfSAKIAotLy8gIHNucHJpbnRmKFdyaXRlQnVmLHNpemVvZihX
cml0ZUJ1ZiksIFJFVF9PS19NT1JFKTsKKy8vICBzbnByaW50ZihXcml0ZUJ1ZixzaXplb2Yo
V3JpdGVCdWYpLCAiJXMiLCBSRVRfT0tfTU9SRSk7CiAvLyAgd2FpdF93cml0ZSgpOwogCiAg
IEF1dGhWcHcucHdfbmFtZSA9IHN0cmR1cCh0bXB2cHctPnB3X25hbWUpOwpAQCAtNDYwLDcg
KzQ2MCw3IEBACiAgICAgbG9nZ2VkX2luID0gMTsKIAogICBpZihvdXRwdXRfdHlwZSA8IDIg
KSB7Ci0gICAgc25wcmludGYoV3JpdGVCdWYsc2l6ZW9mKFdyaXRlQnVmKSwgUkVUX09LX01P
UkUpOworICAgIHNucHJpbnRmKFdyaXRlQnVmLHNpemVvZihXcml0ZUJ1ZiksICIlcyIsIFJF
VF9PS19NT1JFKTsKICAgICB3YWl0X3dyaXRlKCk7CiAKICAgICBzbnByaW50ZihXcml0ZUJ1
ZixzaXplb2YoV3JpdGVCdWYpLCAidnBvcG1haWxfZGlyX2JpbiAlcyIgUkVUX0NSTEYsIFZQ
T1BNQUlMX0RJUl9CSU4pOwpAQCAtNDg1LDEwICs0ODUsMTAgQEAKIAogICAgIHNlbmRfdXNl
cl9pbmZvKCZBdXRoVnB3KTsKIAotICAgIHNucHJpbnRmKFdyaXRlQnVmLCBzaXplb2YoV3Jp
dGVCdWYpLCAiLiIgUkVUX0NSTEYpOworICAgIHNucHJpbnRmKFdyaXRlQnVmLCBzaXplb2Yo
V3JpdGVCdWYpLCAiJXMiLCAiLiIgUkVUX0NSTEYpOwogICB9CiAgIGVsc2UKLSAgICBzbnBy
aW50ZihXcml0ZUJ1ZixzaXplb2YoV3JpdGVCdWYpLCBSRVRfT0spOworICAgIHNucHJpbnRm
KFdyaXRlQnVmLHNpemVvZihXcml0ZUJ1ZiksICIlcyIsIFJFVF9PSyk7CiAKICAgcmV0dXJu
KDApOwogfQpAQCAtNTI1LDcgKzUyNSw3IEBACiAgICAgcmV0dXJuKC0xKTsKICAgfQogCi0g
IHNucHJpbnRmKFdyaXRlQnVmLHNpemVvZihXcml0ZUJ1ZiksIFJFVF9PSyk7CisgIHNucHJp
bnRmKFdyaXRlQnVmLHNpemVvZihXcml0ZUJ1ZiksICIlcyIsIFJFVF9PSyk7CiAgIGlmICgo
cmV0PXZhZGR1c2VyKFRtcFVzZXIsIFRtcERvbWFpbiwgcGFzc3dvcmQsIFRtcFVzZXIsIFVT
RV9QT1AgKSkgPCAwICkgewogICAgIHNucHJpbnRmKFdyaXRlQnVmLHNpemVvZihXcml0ZUJ1
ZiksUkVUX0VSUiAiMC4zMDUgJXMiIFJFVF9DUkxGLCB2ZXJyb3IocmV0KSk7CiAgICAgcmV0
dXJuKC0xKTsKQEAgLTU2NCw3ICs1NjQsNyBAQAogICAgIHJldHVybigtMSk7CiAgIH0KIAot
ICBzbnByaW50ZihXcml0ZUJ1ZixzaXplb2YoV3JpdGVCdWYpLCBSRVRfT0spOworICBzbnBy
aW50ZihXcml0ZUJ1ZixzaXplb2YoV3JpdGVCdWYpLCAiJXMiLCBSRVRfT0spOwogICByZXR1
cm4oMCk7CiB9CiAKQEAgLTYyNiw3ICs2MjYsNyBAQAogICB9CiAgIAogCi0gIHNucHJpbnRm
KFdyaXRlQnVmLHNpemVvZihXcml0ZUJ1ZiksIFJFVF9PSyk7CisgIHNucHJpbnRmKFdyaXRl
QnVmLHNpemVvZihXcml0ZUJ1ZiksICIlcyIsIFJFVF9PSyk7CiAgIHdhaXRfd3JpdGUoKTsK
IAogICB3aGlsZShmZ2V0cyhSZWFkQnVmLHNpemVvZihSZWFkQnVmKSxzdGRpbikhPU5VTEwg
KSB7CkBAIC03NTEsNyArNzUxLDcgQEAKICAgaWYgKCAocmV0PXZhdXRoX3NldHB3KCB0bXB2
cHcsIFRtcERvbWFpbiApKSAhPSAwICkgewogICAgIHNucHJpbnRmKFdyaXRlQnVmLHNpemVv
ZihXcml0ZUJ1ZiksUkVUX0VSUiAiMC41MDcgJXMiIFJFVF9DUkxGLCB2ZXJyb3IocmV0KSk7
IAogICB9IGVsc2UgewotICAgIHNucHJpbnRmKFdyaXRlQnVmLHNpemVvZihXcml0ZUJ1Ziks
IFJFVF9PSyk7CisgICAgc25wcmludGYoV3JpdGVCdWYsc2l6ZW9mKFdyaXRlQnVmKSwgIiVz
IiwgUkVUX09LKTsKICAgfQogCiAgIHJldHVybigwKTsKQEAgLTc4NywxMSArNzg3LDExIEBA
CiAgICAgcmV0dXJuKC0xKTsKICAgfSAKIAotICBzbnByaW50ZihXcml0ZUJ1ZixzaXplb2Yo
V3JpdGVCdWYpLCBSRVRfT0tfTU9SRSk7CisgIHNucHJpbnRmKFdyaXRlQnVmLHNpemVvZihX
cml0ZUJ1ZiksICIlcyIsIFJFVF9PS19NT1JFKTsKICAgd2FpdF93cml0ZSgpOwogCiAgIHNl
bmRfdXNlcl9pbmZvKHRtcHZwdyk7Ci0gIHNucHJpbnRmKFdyaXRlQnVmLCBzaXplb2YoV3Jp
dGVCdWYpLCAiLiIgUkVUX0NSTEYpOworICBzbnByaW50ZihXcml0ZUJ1Ziwgc2l6ZW9mKFdy
aXRlQnVmKSwgIiVzIiwgIi4iIFJFVF9DUkxGKTsKICAgcmV0dXJuKDApOwogCiB9CkBAIC04
MjYsMTIwICs4MjYsNzkgQEAKIAogICB9IGVsc2UgewogCi0gICAgaWYgKCB0bXB2cHctPnB3
X2dpZCAmIE5PX1BBU1NXRF9DSE5HICkgewotICAgICAgc25wcmludGYoV3JpdGVCdWYsIHNp
emVvZihXcml0ZUJ1ZiksICJub19wYXNzd29yZF9jaGFuZ2UgMSIgUkVUX0NSTEYpOwotICAg
IH0gZWxzZSB7Ci0gICAgICBzbnByaW50ZihXcml0ZUJ1Ziwgc2l6ZW9mKFdyaXRlQnVmKSwg
Im5vX3Bhc3N3b3JkX2NoYW5nZSAwIiBSRVRfQ1JMRik7Ci0gICAgfQorICAgIHNucHJpbnRm
KFdyaXRlQnVmLCBzaXplb2YoV3JpdGVCdWYpLCAibm9fcGFzc3dvcmRfY2hhbmdlICVkIiBS
RVRfQ1JMRiwKKyAgICAgIHRtcHZwdy0+cHdfZ2lkICYgTk9fUEFTU1dEX0NITkcgPyAxIDog
MCk7CiAgICAgd2FpdF93cml0ZSgpOwogCi0gICAgaWYgKCB0bXB2cHctPnB3X2dpZCAmIE5P
X1BPUCApIHsKLSAgICAgIHNucHJpbnRmKFdyaXRlQnVmLCBzaXplb2YoV3JpdGVCdWYpLCAi
bm9fcG9wIDEiIFJFVF9DUkxGKTsKLSAgICB9IGVsc2UgewotICAgICAgc25wcmludGYoV3Jp
dGVCdWYsIHNpemVvZihXcml0ZUJ1ZiksICJub19wb3AgMCIgUkVUX0NSTEYpOwotICAgIH0K
KyAgICBzbnByaW50ZihXcml0ZUJ1Ziwgc2l6ZW9mKFdyaXRlQnVmKSwgIm5vX3BvcCAlZCIg
UkVUX0NSTEYsCisgICAgICB0bXB2cHctPnB3X2dpZCAmIE5PX1BPUCA/IDEgOiAwKTsKICAg
ICB3YWl0X3dyaXRlKCk7CiAKLSAgICBpZiAoIHRtcHZwdy0+cHdfZ2lkICYgTk9fV0VCTUFJ
TCApIHsKLSAgICAgIHNucHJpbnRmKFdyaXRlQnVmLCBzaXplb2YoV3JpdGVCdWYpLCAibm9f
d2VibWFpbCAxIiBSRVRfQ1JMRik7Ci0gICAgfSBlbHNlIHsKLSAgICAgIHNucHJpbnRmKFdy
aXRlQnVmLCBzaXplb2YoV3JpdGVCdWYpLCAibm9fd2VibWFpbCAwIiBSRVRfQ1JMRik7Ci0g
ICAgfQorICAgIHNucHJpbnRmKFdyaXRlQnVmLCBzaXplb2YoV3JpdGVCdWYpLCAibm9fd2Vi
bWFpbCAlZCIgUkVUX0NSTEYsCisgICAgICB0bXB2cHctPnB3X2dpZCAmIE5PX1dFQk1BSUwg
PyAxIDogMCk7CiAgICAgd2FpdF93cml0ZSgpOwogCi0gICAgaWYgKCB0bXB2cHctPnB3X2dp
ZCAmIE5PX0lNQVAgKSB7Ci0gICAgICBzbnByaW50ZihXcml0ZUJ1Ziwgc2l6ZW9mKFdyaXRl
QnVmKSwgIm5vX2ltYXAgMSIgUkVUX0NSTEYpOwotICAgIH0gZWxzZSB7Ci0gICAgICBzbnBy
aW50ZihXcml0ZUJ1Ziwgc2l6ZW9mKFdyaXRlQnVmKSwgIm5vX2ltYXAgMCIgUkVUX0NSTEYp
OwotICAgIH0KKyAgICBzbnByaW50ZihXcml0ZUJ1Ziwgc2l6ZW9mKFdyaXRlQnVmKSwgIm5v
X2ltYXAgJWQiIFJFVF9DUkxGLAorICAgICAgdG1wdnB3LT5wd19naWQgJiBOT19JTUFQID8g
MSA6IDApOwogICAgIHdhaXRfd3JpdGUoKTsKIAotICAgIGlmICggdG1wdnB3LT5wd19naWQg
JiBCT1VOQ0VfTUFJTCApIHsKLSAgICAgIHNucHJpbnRmKFdyaXRlQnVmLCBzaXplb2YoV3Jp
dGVCdWYpLCAiYm91bmNlX21haWwgMSIgUkVUX0NSTEYpOwotICAgIH0gZWxzZSB7Ci0gICAg
ICBzbnByaW50ZihXcml0ZUJ1Ziwgc2l6ZW9mKFdyaXRlQnVmKSwgImJvdW5jZV9tYWlsIDAi
IFJFVF9DUkxGKTsKLSAgICB9CisgICAgc25wcmludGYoV3JpdGVCdWYsIHNpemVvZihXcml0
ZUJ1ZiksICJib3VuY2VfbWFpbCAlZCIgUkVUX0NSTEYsCisgICAgICB0bXB2cHctPnB3X2dp
ZCAmIEJPVU5DRV9NQUlMID8gMSA6IDApOwogICAgIHdhaXRfd3JpdGUoKTsKLSAgICBpZiAo
IHRtcHZwdy0+cHdfZ2lkICYgTk9fUkVMQVkgKSB7Ci0gICAgICBzbnByaW50ZihXcml0ZUJ1
Ziwgc2l6ZW9mKFdyaXRlQnVmKSwgIm5vX3JlbGF5IDEiIFJFVF9DUkxGKTsKLSAgICB9IGVs
c2UgewotICAgICAgc25wcmludGYoV3JpdGVCdWYsIHNpemVvZihXcml0ZUJ1ZiksICJub19y
ZWxheSAwIiBSRVRfQ1JMRik7Ci0gICAgfQorCisgICAgc25wcmludGYoV3JpdGVCdWYsIHNp
emVvZihXcml0ZUJ1ZiksICJub19yZWxheSAlZCIgUkVUX0NSTEYsCisgICAgICB0bXB2cHct
PnB3X2dpZCAmIE5PX1JFTEFZID8gMSA6IDAsICBSRVRfQ1JMRik7CiAgICAgd2FpdF93cml0
ZSgpOwotICAgIGlmICggdG1wdnB3LT5wd19naWQgJiBOT19ESUFMVVAgKSB7Ci0gICAgICBz
bnByaW50ZihXcml0ZUJ1Ziwgc2l6ZW9mKFdyaXRlQnVmKSwgIm5vX2RpYWx1cCAxIiBSRVRf
Q1JMRik7Ci0gICAgfSBlbHNlIHsKLSAgICAgIHNucHJpbnRmKFdyaXRlQnVmLCBzaXplb2Yo
V3JpdGVCdWYpLCAibm9fZGlhbHVwIDAiIFJFVF9DUkxGKTsKLSAgICB9CisKKyAgICBzbnBy
aW50ZihXcml0ZUJ1Ziwgc2l6ZW9mKFdyaXRlQnVmKSwgIm5vX2RpYWx1cCAlZCIgUkVUX0NS
TEYsCisgICAgICB0bXB2cHctPnB3X2dpZCAmIE5PX0RJQUxVUCA/IDEgOiAwKTsKICAgICB3
YWl0X3dyaXRlKCk7Ci0gICAgaWYgKCB0bXB2cHctPnB3X2dpZCAmIFZfVVNFUjAgKSB7Ci0g
ICAgICBzbnByaW50ZihXcml0ZUJ1Ziwgc2l6ZW9mKFdyaXRlQnVmKSwgInVzZXJfZmxhZ18w
IDEiIFJFVF9DUkxGKTsKLSAgICB9IGVsc2UgewotICAgICAgc25wcmludGYoV3JpdGVCdWYs
IHNpemVvZihXcml0ZUJ1ZiksICJ1c2VyX2ZsYWdfMCAwIiBSRVRfQ1JMRik7Ci0gICAgfQor
CisgICAgc25wcmludGYoV3JpdGVCdWYsIHNpemVvZihXcml0ZUJ1ZiksICJ1c2VyX2ZsYWdf
MCAlZCIgUkVUX0NSTEYsCisgICAgICB0bXB2cHctPnB3X2dpZCAmIFZfVVNFUjAgPyAxIDog
MCk7CiAgICAgd2FpdF93cml0ZSgpOwotICAgIGlmICggdG1wdnB3LT5wd19naWQgJiBWX1VT
RVIxICkgewotICAgICAgc25wcmludGYoV3JpdGVCdWYsIHNpemVvZihXcml0ZUJ1ZiksICJ1
c2VyX2ZsYWdfMSAxIiBSRVRfQ1JMRik7Ci0gICAgfSBlbHNlIHsKLSAgICAgIHNucHJpbnRm
KFdyaXRlQnVmLCBzaXplb2YoV3JpdGVCdWYpLCAidXNlcl9mbGFnXzEgMCIgUkVUX0NSTEYp
OwotICAgIH0KKworICAgIHNucHJpbnRmKFdyaXRlQnVmLCBzaXplb2YoV3JpdGVCdWYpLCAi
dXNlcl9mbGFnXzEgJWQiIFJFVF9DUkxGLAorICAgICAgdG1wdnB3LT5wd19naWQgJiBWX1VT
RVIxID8gMSA6IDApOwogICAgIHdhaXRfd3JpdGUoKTsKLSAgICBpZiAoIHRtcHZwdy0+cHdf
Z2lkICYgVl9VU0VSMiApIHsKLSAgICAgIHNucHJpbnRmKFdyaXRlQnVmLCBzaXplb2YoV3Jp
dGVCdWYpLCAidXNlcl9mbGFnXzIgMSIgUkVUX0NSTEYpOwotICAgIH0gZWxzZSB7Ci0gICAg
ICBzbnByaW50ZihXcml0ZUJ1Ziwgc2l6ZW9mKFdyaXRlQnVmKSwgInVzZXJfZmxhZ18yIDAi
IFJFVF9DUkxGKTsKLSAgICB9CisKKyAgICBzbnByaW50ZihXcml0ZUJ1Ziwgc2l6ZW9mKFdy
aXRlQnVmKSwgInVzZXJfZmxhZ18yICVkIiBSRVRfQ1JMRiwKKyAgICAgIHRtcHZwdy0+cHdf
Z2lkICYgVl9VU0VSMiA/IDEgOiAwKTsKICAgICB3YWl0X3dyaXRlKCk7Ci0gICAgaWYgKCB0
bXB2cHctPnB3X2dpZCAmIFZfVVNFUjMgKSB7Ci0gICAgICBzbnByaW50ZihXcml0ZUJ1Ziwg
c2l6ZW9mKFdyaXRlQnVmKSwgInVzZXJfZmxhZ18zIDEiIFJFVF9DUkxGKTsKLSAgICB9IGVs
c2UgewotICAgICAgc25wcmludGYoV3JpdGVCdWYsIHNpemVvZihXcml0ZUJ1ZiksICJ1c2Vy
X2ZsYWdfMyAwIiBSRVRfQ1JMRik7Ci0gICAgfQorCisgICAgc25wcmludGYoV3JpdGVCdWYs
IHNpemVvZihXcml0ZUJ1ZiksICJ1c2VyX2ZsYWdfMyAlZCIgUkVUX0NSTEYsCisgICAgICB0
bXB2cHctPnB3X2dpZCAmIFZfVVNFUjMgPyAxIDogMCk7CiAgICAgd2FpdF93cml0ZSgpOwot
ICAgIGlmICggdG1wdnB3LT5wd19naWQgJiBOT19TTVRQICkgewotICAgICAgc25wcmludGYo
V3JpdGVCdWYsIHNpemVvZihXcml0ZUJ1ZiksICJub19zbXRwIDEiIFJFVF9DUkxGKTsKLSAg
ICB9IGVsc2UgewotICAgICAgc25wcmludGYoV3JpdGVCdWYsIHNpemVvZihXcml0ZUJ1Ziks
ICJub19zbXRwIDAiIFJFVF9DUkxGKTsKLSAgICB9CisKKyAgICBzbnByaW50ZihXcml0ZUJ1
Ziwgc2l6ZW9mKFdyaXRlQnVmKSwgIm5vX3NtdHAgJWQiIFJFVF9DUkxGLAorICAgICAgdG1w
dnB3LT5wd19naWQgJiBOT19TTVRQID8gMSA6IDApOwogICAgIHdhaXRfd3JpdGUoKTsKLSAg
ICBpZiAoIHRtcHZwdy0+cHdfZ2lkICYgUUFfQURNSU4gKSB7Ci0gICAgICBzbnByaW50ZihX
cml0ZUJ1Ziwgc2l6ZW9mKFdyaXRlQnVmKSwgImRvbWFpbl9hZG1pbl9wcml2aWxlZ2VzIDEi
IFJFVF9DUkxGKTsKLSAgICB9IGVsc2UgewotICAgICAgc25wcmludGYoV3JpdGVCdWYsIHNp
emVvZihXcml0ZUJ1ZiksICJkb21haW5fYWRtaW5fcHJpdmlsZWdlcyAwIiBSRVRfQ1JMRik7
Ci0gICAgfQorCisgICAgc25wcmludGYoV3JpdGVCdWYsIHNpemVvZihXcml0ZUJ1ZiksICJk
b21haW5fYWRtaW5fcHJpdmlsZWdlcyAlZCIgUkVUX0NSTEYsCisgICAgICB0bXB2cHctPnB3
X2dpZCAmIFFBX0FETUlOID8gMSA6IDApOwogICAgIHdhaXRfd3JpdGUoKTsKLSAgICBpZiAo
IHRtcHZwdy0+cHdfZ2lkICYgVl9PVkVSUklERSApIHsKLSAgICAgIHNucHJpbnRmKFdyaXRl
QnVmLCBzaXplb2YoV3JpdGVCdWYpLCAib3ZlcnJpZGVfZG9tYWluX2xpbWl0cyAxIiBSRVRf
Q1JMRik7Ci0gICAgfSBlbHNlIHsKLSAgICAgIHNucHJpbnRmKFdyaXRlQnVmLCBzaXplb2Yo
V3JpdGVCdWYpLCAib3ZlcnJpZGVfZG9tYWluX2xpbWl0cyAwIiBSRVRfQ1JMRik7Ci0gICAg
fQorCisgICAgc25wcmludGYoV3JpdGVCdWYsIHNpemVvZihXcml0ZUJ1ZiksICJvdmVycmlk
ZV9kb21haW5fbGltaXRzICVkIiBSRVRfQ1JMRiwKKyAgICAgIHRtcHZwdy0+cHdfZ2lkICYg
Vl9PVkVSUklERSA/IDEgOiAwKTsKICAgICB3YWl0X3dyaXRlKCk7Ci0gICAgaWYgKCB0bXB2
cHctPnB3X2dpZCAmIE5PX1NQQU1BU1NBU1NJTiApIHsKLSAgICAgIHNucHJpbnRmKFdyaXRl
QnVmLCBzaXplb2YoV3JpdGVCdWYpLCAibm9fc3BhbWFzc2Fzc2luIDEiIFJFVF9DUkxGKTsK
LSAgICB9IGVsc2UgewotICAgICAgc25wcmludGYoV3JpdGVCdWYsIHNpemVvZihXcml0ZUJ1
ZiksICJub19zcGFtYXNzYXNzaW4gMCIgUkVUX0NSTEYpOwotICAgIH0KKworICAgIHNucHJp
bnRmKFdyaXRlQnVmLCBzaXplb2YoV3JpdGVCdWYpLCAibm9fc3BhbWFzc2Fzc2luICVkIiBS
RVRfQ1JMRiwKKyAgICAgIHRtcHZwdy0+cHdfZ2lkICYgTk9fU1BBTUFTU0FTU0lOID8gMSA6
IDApOwogICAgIHdhaXRfd3JpdGUoKTsKLSAgICBpZiAoIHRtcHZwdy0+cHdfZ2lkICYgREVM
RVRFX1NQQU0gKSB7Ci0gICAgICBzbnByaW50ZihXcml0ZUJ1Ziwgc2l6ZW9mKFdyaXRlQnVm
KSwgImRlbGV0ZV9zcGFtIDEiIFJFVF9DUkxGKTsKLSAgICB9IGVsc2UgewotICAgICAgc25w
cmludGYoV3JpdGVCdWYsIHNpemVvZihXcml0ZUJ1ZiksICJkZWxldGVfc3BhbSAwIiBSRVRf
Q1JMRik7Ci0gICAgfQorCisgICAgc25wcmludGYoV3JpdGVCdWYsIHNpemVvZihXcml0ZUJ1
ZiksICJkZWxldGVfc3BhbSAlZCIgUkVUX0NSTEYsCisgICAgICB0bXB2cHctPnB3X2dpZCAm
IERFTEVURV9TUEFNID8gMSA6IDApOwogICAgIHdhaXRfd3JpdGUoKTsKLSAgICBpZiAoIHRt
cHZwdy0+cHdfZ2lkICYgTk9fTUFJTERST1AgKSB7Ci0gICAgICBzbnByaW50ZihXcml0ZUJ1
Ziwgc2l6ZW9mKFdyaXRlQnVmKSwgIm5vX21haWxkcm9wIDEiIFJFVF9DUkxGKTsKLSAgICB9
IGVsc2UgewotICAgICAgc25wcmludGYoV3JpdGVCdWYsIHNpemVvZihXcml0ZUJ1ZiksICJu
b19tYWlsZHJvcCAwIiBSRVRfQ1JMRik7Ci0gICAgfQorCisgICAgc25wcmludGYoV3JpdGVC
dWYsIHNpemVvZihXcml0ZUJ1ZiksICJub19tYWlsZHJvcCAlZCIgUkVUX0NSTEYsCisgICAg
ICB0bXB2cHctPnB3X2dpZCAmIE5PX01BSUxEUk9QKTsKICAgICB3YWl0X3dyaXRlKCk7Ci0g
ICAgaWYgKCB0bXB2cHctPnB3X2dpZCAmIFNBX0FETUlOICkgewotICAgICAgc25wcmludGYo
V3JpdGVCdWYsIHNpemVvZihXcml0ZUJ1ZiksICJzeXN0ZW1fYWRtaW5fcHJpdmlsZWdlcyAx
IiBSRVRfQ1JMRik7Ci0gICAgfSBlbHNlIHsKLSAgICAgIHNucHJpbnRmKFdyaXRlQnVmLCBz
aXplb2YoV3JpdGVCdWYpLCAic3lzdGVtX2FkbWluX3ByaXZpbGVnZXMgMCIgUkVUX0NSTEYp
OwotICAgIH0KKworICAgIHNucHJpbnRmKFdyaXRlQnVmLCBzaXplb2YoV3JpdGVCdWYpLCAi
c3lzdGVtX2FkbWluX3ByaXZpbGVnZXMgJWQiIFJFVF9DUkxGLAorICAgICAgdG1wdnB3LT5w
d19naWQgJiBTQV9BRE1JTiA/IDEgOiAwKTsKICAgICB3YWl0X3dyaXRlKCk7CiAgIH0KLSAg
c25wcmludGYoV3JpdGVCdWYsIHNpemVvZihXcml0ZUJ1ZiksICIuIiBSRVRfQ1JMRik7Cisg
IHNucHJpbnRmKFdyaXRlQnVmLCBzaXplb2YoV3JpdGVCdWYpLCAiJXMiLCAiLiIgUkVUX0NS
TEYpOwogCiB9CiAKQEAgLTk4Myw3ICs5NDIsNyBAQAogICAgIHJldHVybigtMSk7CiAgIH0K
IAotICBzbnByaW50ZihXcml0ZUJ1ZixzaXplb2YoV3JpdGVCdWYpLCBSRVRfT0spOworICBz
bnByaW50ZihXcml0ZUJ1ZixzaXplb2YoV3JpdGVCdWYpLCAiJXMiLCBSRVRfT0spOwogICBy
ZXR1cm4oMCk7CiB9CiAKQEAgLTEwMzIsNyArOTkxLDcgQEAKICAgICByZXR1cm4oLTEpOwog
ICB9CiAKLSAgc25wcmludGYoV3JpdGVCdWYsc2l6ZW9mKFdyaXRlQnVmKSwgUkVUX09LKTsK
KyAgc25wcmludGYoV3JpdGVCdWYsc2l6ZW9mKFdyaXRlQnVmKSwgIiVzIiwgUkVUX09LKTsK
ICAgcmV0dXJuKDApOwogfQogCkBAIC0xMDgxLDcgKzEwNDAsNyBAQAogICAgIHJldHVybigt
MSk7CiAgIH0KIAotICBzbnByaW50ZihXcml0ZUJ1ZixzaXplb2YoV3JpdGVCdWYpLCBSRVRf
T0spOworICBzbnByaW50ZihXcml0ZUJ1ZixzaXplb2YoV3JpdGVCdWYpLCAiJXMiLCBSRVRf
T0spOwogICByZXR1cm4oMCk7CiB9CiAKQEAgLTExMjUsNyArMTA4NCw3IEBACiAgICAgcmV0
dXJuKC0xKTsKICAgfQogCi0gIHNucHJpbnRmKFdyaXRlQnVmLHNpemVvZihXcml0ZUJ1Ziks
IFJFVF9PSyk7CisgIHNucHJpbnRmKFdyaXRlQnVmLHNpemVvZihXcml0ZUJ1ZiksICIlcyIs
IFJFVF9PSyk7CiAgIHJldHVybigwKTsKIH0KIApAQCAtMTE2Niw3ICsxMTI1LDcgQEAKICAg
ICByZXR1cm4oLTEpOwogICB9CiAKLSAgc25wcmludGYoV3JpdGVCdWYsc2l6ZW9mKFdyaXRl
QnVmKSwgUkVUX09LKTsKKyAgc25wcmludGYoV3JpdGVCdWYsc2l6ZW9mKFdyaXRlQnVmKSwg
IiVzIiwgUkVUX09LKTsKICAgcmV0dXJuKDApOwogfQogCkBAIC0xMTk0LDcgKzExNTMsNyBA
QAogICAvKiAgQ2xlYXIgdGhlIGRvbWFpbiBpbmZvIGNhY2hlICAqLwogICB2Z2V0X2Fzc2ln
bihkdW1teSwgTlVMTCwgMCwgTlVMTCwgTlVMTCApOwogCi0gIHNucHJpbnRmKFdyaXRlQnVm
LHNpemVvZihXcml0ZUJ1ZiksIFJFVF9PSyk7CisgIHNucHJpbnRmKFdyaXRlQnVmLHNpemVv
ZihXcml0ZUJ1ZiksICIlcyIsIFJFVF9PSyk7CiAgIHJldHVybigwKTsKIH0KIApAQCAtMTIy
OSw3ICsxMTg4LDcgQEAKICAgICB9CiAgIH0KIAotICBzbnByaW50ZihXcml0ZUJ1ZixzaXpl
b2YoV3JpdGVCdWYpLCBSRVRfT0tfTU9SRSk7CisgIHNucHJpbnRmKFdyaXRlQnVmLHNpemVv
ZihXcml0ZUJ1ZiksICIlcyIsIFJFVF9PS19NT1JFKTsKICAgd2FpdF93cml0ZSgpOwogCiAg
IHN0cmluZ19saXN0X2luaXQoJmFsaWFzZXMsIDEwKTsKQEAgLTEyNjgsNyArMTIyNyw3IEBA
CiAKICAgc3RyaW5nX2xpc3RfZnJlZSgmYWxpYXNlcyk7CiAKLSAgc25wcmludGYoV3JpdGVC
dWYsIHNpemVvZihXcml0ZUJ1ZiksICIuIiBSRVRfQ1JMRik7CisgIHNucHJpbnRmKFdyaXRl
QnVmLCBzaXplb2YoV3JpdGVCdWYpLCAiJXMiLCAiLiIgUkVUX0NSTEYpOwogICByZXR1cm4o
MCk7CiB9CiAKQEAgLTE3MTksNyArMTY3OCw3IEBACiAgICAgcmV0dXJuKC0xKTsKICAgfQog
Ci0gIHNucHJpbnRmKFdyaXRlQnVmLHNpemVvZihXcml0ZUJ1ZiksIFJFVF9PS19NT1JFKTsK
KyAgc25wcmludGYoV3JpdGVCdWYsc2l6ZW9mKFdyaXRlQnVmKSwgIiVzIiwgUkVUX09LX01P
UkUpOwogICB3YWl0X3dyaXRlKCk7CiAKICAgY291bnQgPSAwOwpAQCAtMjIzNyw3ICsyMTk2
LDcgQEAKIAogICBpZiAodmF1dGhfbW9kdWxlX2ZlYXR1cmUoIklQX0FMSUFTX0RPTUFJTlMi
KSkgewogICBpZiAoIHZkZWxfaXBfbWFwKGlwLGRvbWFpbikgPCAwICkgewotICAgIHNucHJp
bnRmKFdyaXRlQnVmLHNpemVvZihXcml0ZUJ1ZiksIFJFVF9FUlIgIjAuMzIwNCBlcnJvciIg
UkVUX0NSTEYpOworICAgIHNucHJpbnRmKFdyaXRlQnVmLHNpemVvZihXcml0ZUJ1ZiksICIl
cyIsIFJFVF9FUlIgIjAuMzIwNCBlcnJvciIgUkVUX0NSTEYpOwogICAgIHJldHVybigtMSk7
CiAgIH0KIApAQCAtMjMyNCw2NiArMjI4MywyNiBAQAogICBzbnByaW50ZihXcml0ZUJ1Zixz
aXplb2YoV3JpdGVCdWYpLCAiZGVmYXVsdF9tYXhtc2djb3VudCAlbGx1IiBSRVRfQ1JMRiwg
CiAgICAgbXlsaW1pdHMuZGVmYXVsdG1heG1zZ2NvdW50KTsgd2FpdF93cml0ZSgpOwogCi0g
IGlmIChteWxpbWl0cy5kaXNhYmxlX3BvcCkgCi0gICAgc25wcmludGYoV3JpdGVCdWYsc2l6
ZW9mKFdyaXRlQnVmKSwgIiVzIiwgImRpc2FibGVfcG9wIDEiIFJFVF9DUkxGKTsgCi0gIGVs
c2UgCi0gICAgc25wcmludGYoV3JpdGVCdWYsc2l6ZW9mKFdyaXRlQnVmKSwgIiVzIiwgImRp
c2FibGVfcG9wIDAiIFJFVF9DUkxGKTsgCi0KLSAgd2FpdF93cml0ZSgpOwotCi0gIGlmICht
eWxpbWl0cy5kaXNhYmxlX2ltYXApIAotICAgIHNucHJpbnRmKFdyaXRlQnVmLHNpemVvZihX
cml0ZUJ1ZiksICIlcyIsICJkaXNhYmxlX2ltYXAgMSIgUkVUX0NSTEYpOwotICBlbHNlCi0g
ICAgc25wcmludGYoV3JpdGVCdWYsc2l6ZW9mKFdyaXRlQnVmKSwgIiVzIiwgImRpc2FibGVf
aW1hcCAwIiBSRVRfQ1JMRik7Ci0gIHdhaXRfd3JpdGUoKTsKLQotICBpZiAobXlsaW1pdHMu
ZGlzYWJsZV9kaWFsdXApIAotICAgIHNucHJpbnRmKFdyaXRlQnVmLHNpemVvZihXcml0ZUJ1
ZiksICIlcyIsICJkaXNhYmxlX2RpYWx1cCAxIiBSRVRfQ1JMRik7Ci0gIGVsc2UgCi0gICAg
c25wcmludGYoV3JpdGVCdWYsc2l6ZW9mKFdyaXRlQnVmKSwgIiVzIiwgImRpc2FibGVfZGlh
bHVwIDAiIFJFVF9DUkxGKTsKLSAgd2FpdF93cml0ZSgpOwotCi0gIGlmIChteWxpbWl0cy5k
aXNhYmxlX3Bhc3N3b3JkY2hhbmdpbmcpIAotICAgIHNucHJpbnRmKFdyaXRlQnVmLHNpemVv
ZihXcml0ZUJ1ZiksICIlcyIsICJkaXNhYmxlX3Bhc3N3b3JkX2NoYW5naW5nIDEiIFJFVF9D
UkxGKTsKLSAgZWxzZSAKLSAgICBzbnByaW50ZihXcml0ZUJ1ZixzaXplb2YoV3JpdGVCdWYp
LCAiJXMiLCAiZGlzYWJsZV9wYXNzd29yZF9jaGFuZ2luZyAwIiBSRVRfQ1JMRik7Ci0gIHdh
aXRfd3JpdGUoKTsKLQotICBpZiAobXlsaW1pdHMuZGlzYWJsZV93ZWJtYWlsKQotICAgIHNu
cHJpbnRmKFdyaXRlQnVmLHNpemVvZihXcml0ZUJ1ZiksICIlcyIsICJkaXNhYmxlX3dlYm1h
aWwgMSIgUkVUX0NSTEYpOwotICBlbHNlCi0gICAgc25wcmludGYoV3JpdGVCdWYsc2l6ZW9m
KFdyaXRlQnVmKSwgIiVzIiwgImRpc2FibGVfd2VibWFpbCAwIiBSRVRfQ1JMRik7Ci0gIHdh
aXRfd3JpdGUoKTsKLQotICBpZiAobXlsaW1pdHMuZGlzYWJsZV9yZWxheSkKLSAgICBzbnBy
aW50ZihXcml0ZUJ1ZixzaXplb2YoV3JpdGVCdWYpLCAiJXMiLCAiZGlzYWJsZV9leHRlcm5h
bF9yZWxheSAxIiBSRVRfQ1JMRik7Ci0gIGVsc2UKLSAgICBzbnByaW50ZihXcml0ZUJ1Zixz
aXplb2YoV3JpdGVCdWYpLCAiJXMiLCAiZGlzYWJsZV9leHRlcm5hbF9yZWxheSAwIiBSRVRf
Q1JMRik7Ci0gIHdhaXRfd3JpdGUoKTsKLQotICBpZiAobXlsaW1pdHMuZGlzYWJsZV9zbXRw
KQotICAgIHNucHJpbnRmKFdyaXRlQnVmLHNpemVvZihXcml0ZUJ1ZiksICIlcyIsICJkaXNh
YmxlX3NtdHAgMSIgUkVUX0NSTEYpOwotICBlbHNlCi0gICAgc25wcmludGYoV3JpdGVCdWYs
c2l6ZW9mKFdyaXRlQnVmKSwgIiVzIiwgImRpc2FibGVfc210cCAwIiBSRVRfQ1JMRik7Ci0g
IHdhaXRfd3JpdGUoKTsKLQotICBpZiAobXlsaW1pdHMuZGlzYWJsZV9zcGFtYXNzYXNzaW4p
IAotICAgIHNucHJpbnRmKFdyaXRlQnVmLHNpemVvZihXcml0ZUJ1ZiksICIlcyIsICJkaXNh
YmxlX3NwYW1hc3Nhc3NpbiAxIiBSRVRfQ1JMRik7Ci0gIGVsc2UgCi0gICAgc25wcmludGYo
V3JpdGVCdWYsc2l6ZW9mKFdyaXRlQnVmKSwgIiVzIiwgImRpc2FibGVfc3BhbWFzc2Fzc2lu
IDAiIFJFVF9DUkxGKTsKLSAgd2FpdF93cml0ZSgpOwotCi0gIGlmIChteWxpbWl0cy5kZWxl
dGVfc3BhbSkKLSAgICBzbnByaW50ZihXcml0ZUJ1ZixzaXplb2YoV3JpdGVCdWYpLCAiJXMi
LCAiZGVsZXRlX3NwYW0gMSIgUkVUX0NSTEYpOwotICBlbHNlCi0gICAgc25wcmludGYoV3Jp
dGVCdWYsc2l6ZW9mKFdyaXRlQnVmKSwgIiVzIiwgImRlbGV0ZV9zcGFtIDAiIFJFVF9DUkxG
KTsKLSAgd2FpdF93cml0ZSgpOwotCi0gIGlmIChteWxpbWl0cy5kaXNhYmxlX21haWxkcm9w
KSAKLSAgICBzbnByaW50ZihXcml0ZUJ1ZixzaXplb2YoV3JpdGVCdWYpLCAiJXMiLCAiZGlz
YWJsZV9tYWlsZHJvcCAxIiBSRVRfQ1JMRik7Ci0gIGVsc2UgCi0gICAgc25wcmludGYoV3Jp
dGVCdWYsc2l6ZW9mKFdyaXRlQnVmKSwgIiVzIiwgImRpc2FibGVfbWFpbGRyb3AgMCIgUkVU
X0NSTEYpOwotICB3YWl0X3dyaXRlKCk7CisgIHNucHJpbnRmKFdyaXRlQnVmLHNpemVvZihX
cml0ZUJ1ZiksICJkaXNhYmxlX3BvcCAlZCIgUkVUX0NSTEYsCisgICAgbXlsaW1pdHMuZGlz
YWJsZV9wb3AgPyAxIDogMCk7IHdhaXRfd3JpdGUoKTsKKyAgc25wcmludGYoV3JpdGVCdWYs
c2l6ZW9mKFdyaXRlQnVmKSwgImRpc2FibGVfaW1hcCAlZCIgUkVUX0NSTEYsCisgICAgbXls
aW1pdHMuZGlzYWJsZV9pbWFwID8gMSA6IDApOyB3YWl0X3dyaXRlKCk7CisgIHNucHJpbnRm
KFdyaXRlQnVmLHNpemVvZihXcml0ZUJ1ZiksICJkaXNhYmxlX2RpYWx1cCAlZCIgUkVUX0NS
TEYsCisgICAgbXlsaW1pdHMuZGlzYWJsZV9kaWFsdXAgPyAxIDogMCk7IHdhaXRfd3JpdGUo
KTsKKyAgc25wcmludGYoV3JpdGVCdWYsc2l6ZW9mKFdyaXRlQnVmKSwgImRpc2FibGVfcGFz
c3dvcmRfY2hhbmdpbmcgJWQiIFJFVF9DUkxGLAorICAgIG15bGltaXRzLmRpc2FibGVfcGFz
c3dvcmRjaGFuZ2luZyA/IDEgOiAwKTsgd2FpdF93cml0ZSgpOworICBzbnByaW50ZihXcml0
ZUJ1ZixzaXplb2YoV3JpdGVCdWYpLCAiZGlzYWJsZV93ZWJtYWlsICVkIiBSRVRfQ1JMRiwK
KyAgICBteWxpbWl0cy5kaXNhYmxlX3dlYm1haWwgPyAxIDogMCk7IHdhaXRfd3JpdGUoKTsK
KyAgc25wcmludGYoV3JpdGVCdWYsc2l6ZW9mKFdyaXRlQnVmKSwgImRpc2FibGVfZXh0ZXJu
YWxfcmVsYXkgJWQiIFJFVF9DUkxGLAorICAgIG15bGltaXRzLmRpc2FibGVfcmVsYXkgPyAx
IDogMCk7IHdhaXRfd3JpdGUoKTsKKyAgc25wcmludGYoV3JpdGVCdWYsc2l6ZW9mKFdyaXRl
QnVmKSwgImRpc2FibGVfc210cCAlZCIgUkVUX0NSTEYsCisgICAgbXlsaW1pdHMuZGlzYWJs
ZV9zbXRwID8gMSA6IDApOyB3YWl0X3dyaXRlKCk7CisgIHNucHJpbnRmKFdyaXRlQnVmLHNp
emVvZihXcml0ZUJ1ZiksICJkaXNhYmxlX3NwYW1hc3Nhc3NpbiAlZCIgUkVUX0NSTEYsCisg
ICAgbXlsaW1pdHMuZGlzYWJsZV9zcGFtYXNzYXNzaW4gPyAxIDogMCk7IHdhaXRfd3JpdGUo
KTsKKyAgc25wcmludGYoV3JpdGVCdWYsc2l6ZW9mKFdyaXRlQnVmKSwgImRlbGV0ZV9zcGFt
ICVkIiBSRVRfQ1JMRiwKKyAgICBteWxpbWl0cy5kZWxldGVfc3BhbSA/IDEgOiAwKTsgd2Fp
dF93cml0ZSgpOworICBzbnByaW50ZihXcml0ZUJ1ZixzaXplb2YoV3JpdGVCdWYpLCAiZGlz
YWJsZV9tYWlsZHJvcCAlZCIgUkVUX0NSTEYsCisgICAgbXlsaW1pdHMuZGlzYWJsZV9tYWls
ZHJvcCA/IDEgOiAwKTsgd2FpdF93cml0ZSgpOwogCiAgIHNucHJpbnRmKFdyaXRlQnVmLHNp
emVvZihXcml0ZUJ1ZiksICJwZXJtX2FjY291bnQgJWQiIFJFVF9DUkxGLCAKICAgICBteWxp
bWl0cy5wZXJtX2FjY291bnQpOyB3YWl0X3dyaXRlKCk7CkBAIC0yNzkwLDcgKzI3MDksNyBA
QAogICAgICAgd2FpdF93cml0ZSgpOwogICAgIH0KICAgfQotICBzbnByaW50ZihXcml0ZUJ1
ZixzaXplb2YoV3JpdGVCdWYpLCAiLiIgUkVUX0NSTEYpOworICBzbnByaW50ZihXcml0ZUJ1
ZixzaXplb2YoV3JpdGVCdWYpLCAiJXMiLCAiLiIgUkVUX0NSTEYpOwogCiAgIHJldHVybigx
KTsgCiB9Cg==
--------------010207030305030007080001--