[RESEND][RFC][PATCH]: CONFIG_IPPP_FILTER

Patrick McHardy (kaber@trash.net)
Tue, 18 Feb 2003 01:33:07 +0100 (CET)


This is a MIME-formatted message. If you see this text it means that your
E-mail software does not support MIME-formatted messages.

--=_courier-11764-1045528559-0001-2
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

This patch adds ippp filters to isdn similar to ppp filters. Also
included is the required patch for ipppd. You need to run autoconf in the
ipppd subdir before compiling. ipppd support is enabled with
--enable-ippp-filter.

Comments and suggestions are welcome.

Regards,
Patrick

--=_courier-11764-1045528559-0001-2
Content-Type: text/plain; charset=us-ascii; name="linux-2.4.20_ippp-filter.diff"
Content-Transfer-Encoding: base64
Content-ID: <Pine.LNX.4.44.0302180133070.10325@el-zoido.localnet>
Content-Description:
Content-Disposition: attachment; filename="linux-2.4.20_ippp-filter.diff"

ZGlmZiAtdXJOIGxpbnV4LTIuNC4yMC1jbGVhbi9Eb2N1bWVudGF0aW9uL0Nv
bmZpZ3VyZS5oZWxwIGxpbnV4LTIuNC4yMF9pcHBwLWZpbHRlci9Eb2N1bWVu
dGF0aW9uL0NvbmZpZ3VyZS5oZWxwDQotLS0gbGludXgtMi40LjIwLWNsZWFu
L0RvY3VtZW50YXRpb24vQ29uZmlndXJlLmhlbHAJMjAwMi0xMS0yOSAwMDo1
MzowOC4wMDAwMDAwMDAgKzAxMDANCisrKyBsaW51eC0yLjQuMjBfaXBwcC1m
aWx0ZXIvRG9jdW1lbnRhdGlvbi9Db25maWd1cmUuaGVscAkyMDAzLTAyLTEw
IDAzOjE2OjE5LjAwMDAwMDAwMCArMDEwMA0KQEAgLTIwNDMyLDYgKzIwNDMy
LDE3IEBADQogICBmZWF0dXJlLiBTZWUgPGZpbGU6RG9jdW1lbnRhdGlvbi9p
c2RuL1JFQURNRS5zeW5jcHBwPiBhbmQNCiAgIDxmaWxlOkRvY3VtZW50YXRp
b24vaXNkbi9zeW5jUFBQLkZBUT4gZm9yIG1vcmUgaW5mb3JtYXRpb24uDQog
DQorUFBQIGZpbHRlcmluZyBmb3IgSVNETg0KK0NPTkZJR19JUFBQX0ZJTFRF
Ug0KKyAgU2F5IFkgaGVyZSBpZiB5b3Ugd2FudCB0byBiZSBhYmxlIHRvIGZp
bHRlciB0aGUgcGFja2V0cyBwYXNzaW5nIG92ZXINCisgIElQUFAgaW50ZXJm
YWNlcy4gIFRoaXMgYWxsb3dzIHlvdSB0byBjb250cm9sIHdoaWNoIHBhY2tl
dHMgY291bnQgYXMNCisgIGFjdGl2aXR5IChpLmUuIHdoaWNoIHBhY2tldHMg
d2lsbCByZXNldCB0aGUgaWRsZSB0aW1lciBvciBicmluZyB1cA0KKyAgYSBk
ZW1hbmQtZGlhbGxlZCBsaW5rKSBhbmQgd2hpY2ggcGFja2V0cyBhcmUgdG8g
YmUgZHJvcHBlZCBlbnRpcmVseS4NCisgIFlvdSBuZWVkIHRvIHNheSBZIGhl
cmUgaWYgeW91IHdpc2ggdG8gdXNlIHRoZSBwYXNzLWZpbHRlciBhbmQNCisg
IGFjdGl2ZS1maWx0ZXIgb3B0aW9ucyB0byBpcHBwZC4NCisNCisgIElmIHVu
c3VyZSwgc2F5IE4uDQorDQogU3VwcG9ydCBnZW5lcmljIE1QIChSRkMgMTcx
NykNCiBDT05GSUdfSVNETl9NUFANCiAgIFdpdGggc3luY2hyb25vdXMgUFBQ
IGVuYWJsZWQsIGl0IGlzIHBvc3NpYmxlIHRvIGluY3JlYXNlIHRocm91Z2hw
dXQNCmRpZmYgLXVyTiBsaW51eC0yLjQuMjAtY2xlYW4vZHJpdmVycy9pc2Ru
L0NvbmZpZy5pbiBsaW51eC0yLjQuMjBfaXBwcC1maWx0ZXIvZHJpdmVycy9p
c2RuL0NvbmZpZy5pbg0KLS0tIGxpbnV4LTIuNC4yMC1jbGVhbi9kcml2ZXJz
L2lzZG4vQ29uZmlnLmluCTIwMDItMTEtMjkgMDA6NTM6MTMuMDAwMDAwMDAw
ICswMTAwDQorKysgbGludXgtMi40LjIwX2lwcHAtZmlsdGVyL2RyaXZlcnMv
aXNkbi9Db25maWcuaW4JMjAwMy0wMi0xMCAwMjoyMTo1NC4wMDAwMDAwMDAg
KzAxMDANCkBAIC04LDYgKzgsNyBAQA0KIGlmIFsgIiRDT05GSUdfSU5FVCIg
IT0gIm4iIF07IHRoZW4NCiAgICBib29sICcgIFN1cHBvcnQgc3luY2hyb25v
dXMgUFBQJyBDT05GSUdfSVNETl9QUFANCiAgICBpZiBbICIkQ09ORklHX0lT
RE5fUFBQIiAhPSAibiIgXTsgdGhlbg0KKyAgICAgIGJvb2wgICAgICAgICAn
ICAgIFBQUCBmaWx0ZXJpbmcgZm9yIElTRE4nIENPTkZJR19JUFBQX0ZJTFRF
UiAkQ09ORklHX0ZJTFRFUg0KICAgICAgIGJvb2wgICAgICAgICAnICAgIFVz
ZSBWSi1jb21wcmVzc2lvbiB3aXRoIHN5bmNocm9ub3VzIFBQUCcgQ09ORklH
X0lTRE5fUFBQX1ZKDQogICAgICAgYm9vbCAgICAgICAgICcgICAgU3VwcG9y
dCBnZW5lcmljIE1QIChSRkMgMTcxNyknIENPTkZJR19JU0ROX01QUA0KICAg
ICAgIGRlcF90cmlzdGF0ZSAnICAgIFN1cHBvcnQgQlNEIGNvbXByZXNzaW9u
JyBDT05GSUdfSVNETl9QUFBfQlNEQ09NUCAkQ09ORklHX0lTRE4NCmRpZmYg
LXVyTiBsaW51eC0yLjQuMjAtY2xlYW4vZHJpdmVycy9pc2RuL2lzZG5fbmV0
LmMgbGludXgtMi40LjIwX2lwcHAtZmlsdGVyL2RyaXZlcnMvaXNkbi9pc2Ru
X25ldC5jDQotLS0gbGludXgtMi40LjIwLWNsZWFuL2RyaXZlcnMvaXNkbi9p
c2RuX25ldC5jCTIwMDItMTEtMjkgMDA6NTM6MTMuMDAwMDAwMDAwICswMTAw
DQorKysgbGludXgtMi40LjIwX2lwcHAtZmlsdGVyL2RyaXZlcnMvaXNkbi9p
c2RuX25ldC5jCTIwMDMtMDItMTAgMTM6NDQ6NTcuMDAwMDAwMDAwICswMTAw
DQpAQCAtMTI5Niw2ICsxMjk2LDE2IEBADQogCQkJCQkJcmVzdG9yZV9mbGFn
cyhmbGFncyk7DQogCQkJCQkJcmV0dXJuIDA7CS8qIFNUTiAoc2tiIHRvIG5p
cnZhbmEpIDspICovDQogCQkJCQl9DQorI2lmZGVmIENPTkZJR19JUFBQX0ZJ
TFRFUg0KKwkJCQkJaWYgKGlzZG5fcHBwX2F1dG9kaWFsX2ZpbHRlcihza2Is
IGxwKSkgew0KKwkJCQkJCWlzZG5fcHBwX2ZyZWUobHApOw0KKwkJCQkJCWlz
ZG5fbmV0X3VuYmluZF9jaGFubmVsKGxwKTsNCisJCQkJCQlyZXN0b3JlX2Zs
YWdzKGZsYWdzKTsNCisJCQkJCQlpc2RuX25ldF91bnJlYWNoYWJsZShuZGV2
LCBza2IsICJkaWFsIHJlamVjdGVkOiBwYWNrZXQgZmlsdGVyZWQiKTsNCisJ
CQkJCQlkZXZfa2ZyZWVfc2tiKHNrYik7DQorCQkJCQkJcmV0dXJuIDA7DQor
CQkJCQl9DQorI2VuZGlmDQogCQkJCQlyZXN0b3JlX2ZsYWdzKGZsYWdzKTsN
CiAJCQkJCWlzZG5fbmV0X2RpYWwoKTsJLyogSW5pdGlhdGUgZGlhbGluZyAq
Lw0KIAkJCQkJbmV0aWZfc3RvcF9xdWV1ZShuZGV2KTsNCkBAIC0xNzkzLDkg
KzE4MDMsNiBAQA0KIHsNCiAJaXNkbl9uZXRfbG9jYWwgKmxwID0gKGlzZG5f
bmV0X2xvY2FsICopIG5kZXYtPnByaXY7DQogCWlzZG5fbmV0X2xvY2FsICpv
bHAgPSBscDsJLyogb3JpZ2luYWwgJ2xwJyAqLw0KLSNpZmRlZiBDT05GSUdf
SVNETl9QUFANCi0JaW50IHByb3RvID0gUFBQX1BST1RPQ09MKHNrYi0+ZGF0
YSk7DQotI2VuZGlmDQogI2lmZGVmIENPTkZJR19JU0ROX1gyNQ0KIAlzdHJ1
Y3QgY29uY2FwX3Byb3RvICpjcHJvdCA9IGxwIC0+IG5ldGRldiAtPiBjcHJv
dDsNCiAjZW5kaWYNCkBAIC0xODU1LDE0ICsxODYyLDcgQEANCiAJCQlicmVh
azsNCiAjaWZkZWYgQ09ORklHX0lTRE5fUFBQDQogCQljYXNlIElTRE5fTkVU
X0VOQ0FQX1NZTkNQUFA6DQotCQkJLyoNCi0JCQkgKiBJZiBlbmNhcHN1bGF0
aW9uIGlzIHN5bmNwcHAsIGRvbid0IHJlc2V0DQotCQkJICogaHVwdGltZXIg
b24gTENQIHBhY2tldHMuDQotCQkJICovDQotCQkJaWYgKHByb3RvICE9IFBQ
UF9MQ1ApIHsNCi0JCQkJb2xwLT5odXB0aW1lciA9IDA7DQotCQkJCWxwLT5o
dXB0aW1lciA9IDA7DQotCQkJfQ0KKwkJCS8qIGh1cHRpbWVyIGlzIGRvbmUg
aW4gaXNkbl9wcHBfcHVzaF9oaWdoZXIgKi8NCiAJCQlpc2RuX3BwcF9yZWNl
aXZlKGxwLT5uZXRkZXYsIG9scCwgc2tiKTsNCiAJCQlyZXR1cm47DQogI2Vu
ZGlmDQpkaWZmIC11ck4gbGludXgtMi40LjIwLWNsZWFuL2RyaXZlcnMvaXNk
bi9pc2RuX3BwcC5jIGxpbnV4LTIuNC4yMF9pcHBwLWZpbHRlci9kcml2ZXJz
L2lzZG4vaXNkbl9wcHAuYw0KLS0tIGxpbnV4LTIuNC4yMC1jbGVhbi9kcml2
ZXJzL2lzZG4vaXNkbl9wcHAuYwkyMDAyLTExLTI5IDAwOjUzOjEzLjAwMDAw
MDAwMCArMDEwMA0KKysrIGxpbnV4LTIuNC4yMF9pcHBwLWZpbHRlci9kcml2
ZXJzL2lzZG4vaXNkbl9wcHAuYwkyMDAzLTAyLTEwIDE0OjAxOjI4LjAwMDAw
MDAwMCArMDEwMA0KQEAgLTEzLDYgKzEzLDkgQEANCiAjaW5jbHVkZSA8bGlu
dXgvaXNkbi5oPg0KICNpbmNsdWRlIDxsaW51eC9wb2xsLmg+DQogI2luY2x1
ZGUgPGxpbnV4L3BwcC1jb21wLmg+DQorI2lmZGVmIENPTkZJR19JUFBQX0ZJ
TFRFUg0KKyNpbmNsdWRlIDxsaW51eC9maWx0ZXIuaD4NCisjZW5kaWYNCiAN
CiAjaW5jbHVkZSAiaXNkbl9jb21tb24uaCINCiAjaW5jbHVkZSAiaXNkbl9w
cHAuaCINCkBAIC0zMjQsNyArMzI3LDEwIEBADQogCSAqLw0KIAlpcy0+c2xj
b21wID0gc2xoY19pbml0KDE2LCAxNik7CS8qIG5vdCBuZWNlc3NhcnkgZm9y
IDIuIGxpbmsgaW4gYnVuZGxlICovDQogI2VuZGlmDQotDQorI2lmZGVmIENP
TkZJR19JUFBQX0ZJTFRFUg0KKwlpcy0+cGFzc19maWx0ZXIuZmlsdGVyID0g
TlVMTDsNCisJaXMtPmFjdGl2ZV9maWx0ZXIuZmlsdGVyID0gTlVMTDsNCisj
ZW5kaWYNCiAJaXMtPnN0YXRlID0gSVBQUF9PUEVOOw0KIA0KIAlyZXR1cm4g
MDsNCkBAIC0zNzksNiArMzg1LDE2IEBADQogCXNsaGNfZnJlZShpcy0+c2xj
b21wKTsNCiAJaXMtPnNsY29tcCA9IE5VTEw7DQogI2VuZGlmDQorI2lmZGVm
IENPTkZJR19JUFBQX0ZJTFRFUg0KKwlpZiAoaXMtPnBhc3NfZmlsdGVyLmZp
bHRlcikgew0KKwkJa2ZyZWUoaXMtPnBhc3NfZmlsdGVyLmZpbHRlcik7DQor
CQlpcy0+cGFzc19maWx0ZXIuZmlsdGVyID0gTlVMTDsNCisJfQ0KKwlpZiAo
aXMtPmFjdGl2ZV9maWx0ZXIuZmlsdGVyKSB7DQorCQlrZnJlZShpcy0+YWN0
aXZlX2ZpbHRlci5maWx0ZXIpOw0KKwkJaXMtPmFjdGl2ZV9maWx0ZXIuZmls
dGVyID0gTlVMTDsNCisJfQ0KKyNlbmRpZg0KIA0KIC8qIFRPRE86IGlmIHRo
aXMgd2FzIHRoZSBwcmV2aW91cyBtYXN0ZXI6IGxpbmsgdGhlIHRoZSBzdHVm
ZiB0byB0aGUgbmV3IG1hc3RlciAqLw0KIAlpZihpcy0+Y29tcF9zdGF0KQ0K
QEAgLTU4OCw2ICs2MDQsMzcgQEANCiAJCQkJfQ0KIAkJCQlyZXR1cm4gc2V0
X2FyZygodm9pZCAqKWFyZywmcGNpLHNpemVvZihzdHJ1Y3QgcHBwY2FsbGlu
Zm8pKTsNCiAJCQl9DQorI2lmZGVmIENPTkZJR19JUFBQX0ZJTFRFUg0KKwkJ
Y2FzZSBQUFBJT0NTUEFTUzoNCisJCWNhc2UgUFBQSU9DU0FDVElWRToNCisJ
CQl7DQorCQkJCXN0cnVjdCBzb2NrX2Zwcm9nIHVwcm9nLCAqZmlsdHA7DQor
CQkJCXN0cnVjdCBzb2NrX2ZpbHRlciAqY29kZSA9IE5VTEw7DQorCQkJCWlu
dCBsZW4sIGVycjsNCisNCisJCQkJaWYgKGNvcHlfZnJvbV91c2VyKCZ1cHJv
ZywgKHZvaWQgKikgYXJnLCBzaXplb2YodXByb2cpKSkNCisJCQkJCXJldHVy
biAtRUZBVUxUOw0KKwkJCQlpZiAodXByb2cubGVuID4gMCAmJiB1cHJvZy5s
ZW4gPCA2NTUzNikgew0KKwkJCQkJbGVuID0gdXByb2cubGVuICogc2l6ZW9m
KHN0cnVjdCBzb2NrX2ZpbHRlcik7DQorCQkJCQljb2RlID0ga21hbGxvYyhs
ZW4sIEdGUF9LRVJORUwpOw0KKwkJCQkJaWYgKGNvZGUgPT0gTlVMTCkNCisJ
CQkJCQlyZXR1cm4gLUVOT01FTTsNCisJCQkJCWlmIChjb3B5X2Zyb21fdXNl
cihjb2RlLCB1cHJvZy5maWx0ZXIsIGxlbikpDQorCQkJCQkJcmV0dXJuIC1F
RkFVTFQ7DQorCQkJCQllcnIgPSBza19jaGtfZmlsdGVyKGNvZGUsIHVwcm9n
Lmxlbik7DQorCQkJCQlpZiAoZXJyKSB7DQorCQkJCQkJa2ZyZWUoY29kZSk7
DQorCQkJCQkJcmV0dXJuIGVycjsNCisJCQkJCX0NCisJCQkJfQ0KKwkJCQlm
aWx0cCA9IChjbWQgPT0gUFBQSU9DU1BBU1MpID8gJmlzLT5wYXNzX2ZpbHRl
ciA6ICZpcy0+YWN0aXZlX2ZpbHRlcjsNCisJCQkJaWYgKGZpbHRwLT5maWx0
ZXIpDQorCQkJCQlrZnJlZShmaWx0cC0+ZmlsdGVyKTsNCisJCQkJZmlsdHAt
PmZpbHRlciA9IGNvZGU7DQorCQkJCWZpbHRwLT5sZW4gPSB1cHJvZy5sZW47
DQorCQkJCWJyZWFrOw0KKwkJCX0NCisjZW5kaWYgLyogQ09ORklHX0lQUFBf
RklMVEVSICovDQogCQlkZWZhdWx0Og0KIAkJCWJyZWFrOw0KIAl9DQpAQCAt
OTc3LDYgKzEwMjQsNyBAQA0KIHsNCiAJc3RydWN0IG5ldF9kZXZpY2UgKmRl
diA9ICZuZXRfZGV2LT5kZXY7DQogIAlzdHJ1Y3QgaXBwcF9zdHJ1Y3QgKmlz
LCAqbWlzOw0KKwlpc2RuX25ldF9sb2NhbCAqbWxwID0gTlVMTDsNCiAJaW50
IHNsb3Q7DQogDQogCXNsb3QgPSBscC0+cHBwX3Nsb3Q7DQpAQCAtOTg4LDcg
KzEwMzYsOCBAQA0KIAlpcyA9IGlwcHBfdGFibGVbc2xvdF07DQogIAkNCiAg
CWlmIChscC0+bWFzdGVyKSB7IC8vIEZJWE1FPw0KLSAJCXNsb3QgPSAoKGlz
ZG5fbmV0X2xvY2FsICopIChscC0+bWFzdGVyLT5wcml2KSktPnBwcF9zbG90
Ow0KKwkJbWxwID0gKGlzZG5fbmV0X2xvY2FsICopIGxwLT5tYXN0ZXItPnBy
aXY7DQorIAkJc2xvdCA9IG1scC0+cHBwX3Nsb3Q7DQogIAkJaWYgKHNsb3Qg
PCAwIHx8IHNsb3QgPiBJU0ROX01BWF9DSEFOTkVMUykgew0KICAJCQlwcmlu
dGsoS0VSTl9FUlIgImlzZG5fcHBwX3B1c2hfaGlnaGVyOiBtYXN0ZXItPnBw
cF9zbG90KCVkKVxuIiwNCiAgCQkJCWxwLT5wcHBfc2xvdCk7DQpAQCAtMTA4
Miw5ICsxMTMxLDM2IEBADQogCQkJcmV0dXJuOw0KIAl9DQogDQotIAkvKiBS
ZXNldCBoYW5ndXAtdGltZXIgKi8NCi0gCWxwLT5odXB0aW1lciA9IDA7DQot
DQorI2lmZGVmIENPTkZJR19JUFBQX0ZJTFRFUg0KKwkvKiBjaGVjayBpZiB0
aGUgcGFja2V0IHBhc3NlcyB0aGUgcGFzcyBhbmQgYWN0aXZlIGZpbHRlcnMN
CisJICogdGhlIGZpbHRlciBpbnN0cnVjdGlvbnMgYXJlIGNvbnN0cnVjdGVk
IGFzc3VtaW5nDQorCSAqIGEgZm91ci1ieXRlIFBQUCBoZWFkZXIgb24gZWFj
aCBwYWNrZXQgKHdoaWNoIGlzIHN0aWxsIHByZXNlbnQpICovDQorCXNrYl9w
dXNoKHNrYiwgNCk7DQorCXNrYi0+ZGF0YVswXSA9IDA7CS8qIGluZGljYXRl
IGluYm91bmQgKi8NCisNCisJaWYgKGlzLT5wYXNzX2ZpbHRlci5maWx0ZXIN
CisJICAgICYmIHNrX3J1bl9maWx0ZXIoc2tiLCBpcy0+cGFzc19maWx0ZXIu
ZmlsdGVyLA0KKwkgICAgICAgICAgICAgICAgICAgIGlzLT5wYXNzX2ZpbHRl
ci5sZW4pID09IDApIHsNCisJCWlmIChpcy0+ZGVidWcgJiAweDIpDQorCQkJ
cHJpbnRrKEtFUk5fREVCVUcgIklQUFA6IGluYm91bmQgZnJhbWUgZmlsdGVy
ZWQuXG4iKTsNCisJCWtmcmVlX3NrYihza2IpOw0KKwkJcmV0dXJuOw0KKwl9
DQorCWlmICghKGlzLT5hY3RpdmVfZmlsdGVyLmZpbHRlcg0KKwkgICAgICAm
JiBza19ydW5fZmlsdGVyKHNrYiwgaXMtPmFjdGl2ZV9maWx0ZXIuZmlsdGVy
LA0KKwkgICAgICAgICAgICAgICAgICAgICAgIGlzLT5hY3RpdmVfZmlsdGVy
LmxlbikgPT0gMCkpIHsNCisJCWlmIChpcy0+ZGVidWcgJiAweDIpDQorCQkJ
cHJpbnRrKEtFUk5fREVCVUcgIklQUFA6IGxpbmstYWN0aXZlIGZpbHRlcjog
cmVzZXRpbmcgaHVwdGltZXIuXG4iKTsNCisJCWxwLT5odXB0aW1lciA9IDA7
DQorCQlpZiAobWxwKQ0KKwkJCW1scC0+aHVwdGltZXIgPSAwOw0KKwl9DQor
CXNrYl9wdWxsKHNrYiwgNCk7DQorI2Vsc2UgLyogQ09ORklHX0lQUFBfRklM
VEVSICovDQorCWxwLT5odXB0aW1lciA9IDA7DQorCWlmIChtbHApDQorCQlt
bHAtPmh1cHRpbWVyID0gMDsNCisjZW5kaWYgLyogQ09ORklHX0lQUFBfRklM
VEVSICovDQogCXNrYi0+ZGV2ID0gZGV2Ow0KIAlza2ItPm1hYy5yYXcgPSBz
a2ItPmRhdGE7DQogCW5ldGlmX3J4KHNrYik7DQpAQCAtMTEyMSw3ICsxMTk3
LDYgQEANCiAJcmV0dXJuIHNrYl9wdXNoKHNrYixsZW4pOw0KIH0NCiANCi0N
CiAvKg0KICAqIHNlbmQgcHBwIGZyYW1lIC4uIHdlIGV4cGVjdCBhIFBJRENP
TVByZXNzYWJsZSBwcm90byAtLQ0KICAqICAoaGVyZTogY3VycmVudGx5IGFs
d2F5cyBQUFBfSVAsUFBQX1ZKQ19DT01QLFBQUF9WSkNfVU5DT01QKQ0KQEAg
LTExODgsNyArMTI2Myw2IEBADQogCQlnb3RvIHVubG9jazsNCiAJfQ0KIAlp
cHQgPSBpcHBwX3RhYmxlW3Nsb3RdOw0KLQlscC0+aHVwdGltZXIgPSAwOw0K
IA0KIAkvKg0KIAkgKiBhZnRlciB0aGlzIGxpbmUgLi4gcmVxdWV1ZWluZyBp
biB0aGUgZGV2aWNlIHF1ZXVlIGlzIG5vIGxvbmdlciBhbGxvd2VkISEhDQpA
QCAtMTE5OSw2ICsxMjczLDM0IEBADQogCSAqLw0KIAlza2JfcHVsbChza2Is
SVBQUF9NQVhfSEVBREVSKTsNCiANCisjaWZkZWYgQ09ORklHX0lQUFBfRklM
VEVSDQorCS8qIGNoZWNrIGlmIHdlIHNob3VsZCBwYXNzIHRoaXMgcGFja2V0
DQorCSAqIHRoZSBmaWx0ZXIgaW5zdHJ1Y3Rpb25zIGFyZSBjb25zdHJ1Y3Rl
ZCBhc3N1bWluZw0KKwkgKiBhIGZvdXItYnl0ZSBQUFAgaGVhZGVyIG9uIGVh
Y2ggcGFja2V0ICovDQorCXNrYl9wdXNoKHNrYiwgNCk7DQorCXNrYi0+ZGF0
YVswXSA9IDE7CS8qIGluZGljYXRlIG91dGJvdW5kICovDQorCSoodV9pbnQx
Nl90ICopKHNrYi0+ZGF0YSArIDIpID0gaHRvbnMocHJvdG8pOw0KKw0KKwlp
ZiAoaXB0LT5wYXNzX2ZpbHRlci5maWx0ZXIgDQorCSAgICAmJiBza19ydW5f
ZmlsdGVyKHNrYiwgaXB0LT5wYXNzX2ZpbHRlci5maWx0ZXIsDQorCQkgICAg
ICAgICAgICAgaXB0LT5wYXNzX2ZpbHRlci5sZW4pID09IDApIHsNCisJCWlm
IChpcHQtPmRlYnVnICYgMHg0KQ0KKwkJCXByaW50ayhLRVJOX0RFQlVHICJJ
UFBQOiBvdXRib3VuZCBmcmFtZSBmaWx0ZXJlZC5cbiIpOw0KKwkJa2ZyZWVf
c2tiKHNrYik7DQorCQlnb3RvIHVubG9jazsNCisJfQ0KKwlpZiAoIShpcHQt
PmFjdGl2ZV9maWx0ZXIuZmlsdGVyDQorCSAgICAgICYmIHNrX3J1bl9maWx0
ZXIoc2tiLCBpcHQtPmFjdGl2ZV9maWx0ZXIuZmlsdGVyLA0KKwkJICAgICAg
ICAgICAgICAgaXB0LT5hY3RpdmVfZmlsdGVyLmxlbikgPT0gMCkpIHsNCisJ
CWlmIChpcHQtPmRlYnVnICYgMHg0KQ0KKwkJCXByaW50ayhLRVJOX0RFQlVH
ICJJUFBQOiBsaW5rLWFjdGl2ZSBmaWx0ZXI6IHJlc2V0aW5nIGh1cHRpbWVy
LlxuIik7DQorCQlscC0+aHVwdGltZXIgPSAwOw0KKwl9DQorCXNrYl9wdWxs
KHNrYiwgNCk7DQorI2Vsc2UgLyogQ09ORklHX0lQUFBfRklMVEVSICovDQor
CWxwLT5odXB0aW1lciA9IDA7DQorI2VuZGlmIC8qIENPTkZJR19JUFBQX0ZJ
TFRFUiAqLw0KKw0KIAlpZiAoaXB0LT5kZWJ1ZyAmIDB4NCkNCiAJCXByaW50
ayhLRVJOX0RFQlVHICJ4bWl0IHNrYiwgbGVuICVkXG4iLCAoaW50KSBza2It
Pmxlbik7DQogICAgICAgICBpZiAoaXB0cy0+ZGVidWcgJiAweDQwKQ0KQEAg
LTEzNDAsNiArMTQ0Miw1MCBAQA0KIAlyZXR1cm4gcmV0dmFsOw0KIH0NCiAN
CisjaWZkZWYgQ09ORklHX0lQUFBfRklMVEVSDQorLyoNCisgKiBjaGVjayBp
ZiB0aGlzIHBhY2tldCBtYXkgdHJpZ2dlciBhdXRvLWRpYWwuDQorICovDQor
DQoraW50IGlzZG5fcHBwX2F1dG9kaWFsX2ZpbHRlcihzdHJ1Y3Qgc2tfYnVm
ZiAqc2tiLCBpc2RuX25ldF9sb2NhbCAqbHApDQorew0KKwlzdHJ1Y3QgaXBw
cF9zdHJ1Y3QgKmlzID0gaXBwcF90YWJsZVtscC0+cHBwX3Nsb3RdOw0KKwl1
X2ludDE2X3QgcHJvdG87DQorCWludCBkcm9wID0gMDsNCisNCisJc3dpdGNo
IChudG9ocyhza2ItPnByb3RvY29sKSkgew0KKwljYXNlIEVUSF9QX0lQOg0K
KwkJcHJvdG8gPSBQUFBfSVA7DQorCQlicmVhazsNCisJY2FzZSBFVEhfUF9J
UFg6DQorCQlwcm90byA9IFBQUF9JUFg7DQorCQlicmVhazsNCisJZGVmYXVs
dDoNCisJCXByaW50ayhLRVJOX0VSUiAiaXNkbl9wcHBfYXV0b2RpYWxfZmls
dGVyOiB1bnN1cHBvcnRlZCBwcm90b2NvbCAweCV4LlxuIiwNCisJCSAgICAg
ICBza2ItPnByb3RvY29sKTsNCisJCXJldHVybiAxOw0KKwl9DQorDQorCS8q
IHRoZSBmaWx0ZXIgaW5zdHJ1Y3Rpb25zIGFyZSBjb25zdHJ1Y3RlZCBhc3N1
bWluZw0KKwkgKiBhIGZvdXItYnl0ZSBQUFAgaGVhZGVyIG9uIGVhY2ggcGFj
a2V0LiB3ZSBoYXZlIHRvDQorCSAqIHRlbXBvcmFyaWx5IHJlbW92ZSBwYXJ0
IG9mIHRoZSBmYWtlIGhlYWRlciBzdHVjayBvbg0KKwkgKiBlYXJsaWVyLg0K
KwkgKi8NCisJc2tiX3B1bGwoc2tiLCBJUFBQX01BWF9IRUFERVIgLSA0KTsN
CisJc2tiLT5kYXRhWzBdID0gMTsJLyogaW5kaWNhdGUgb3V0Ym91bmQgKi8N
CisJKih1X2ludDE2X3QgKikoc2tiLT5kYXRhICsgMikgPSBodG9ucyhwcm90
byk7DQorCQ0KKwlkcm9wIHw9IGlzLT5wYXNzX2ZpbHRlci5maWx0ZXINCisJ
ICAgICAgICAmJiBza19ydW5fZmlsdGVyKHNrYiwgaXMtPnBhc3NfZmlsdGVy
LmZpbHRlciwNCisJICAgICAgICAgICAgICAgICAgICAgICAgIGlzLT5wYXNz
X2ZpbHRlci5sZW4pID09IDA7DQorCWRyb3AgfD0gaXMtPmFjdGl2ZV9maWx0
ZXIuZmlsdGVyDQorCSAgICAgICAgJiYgc2tfcnVuX2ZpbHRlcihza2IsIGlz
LT5hY3RpdmVfZmlsdGVyLmZpbHRlciwNCisJICAgICAgICAgICAgICAgICAg
ICAgICAgIGlzLT5hY3RpdmVfZmlsdGVyLmxlbikgPT0gMDsNCisJDQorCXNr
Yl9wdXNoKHNrYiwgSVBQUF9NQVhfSEVBREVSIC0gNCk7DQorCXJldHVybiBk
cm9wOw0KK30NCisjZW5kaWYNCiAjaWZkZWYgQ09ORklHX0lTRE5fTVBQDQog
DQogLyogdGhpcyBpcyBfbm90XyByZmMxOTkwIGhlYWRlciwgYnV0IHNvbWV0
aGluZyB3ZSBjb252ZXJ0IGJvdGggc2hvcnQgYW5kIGxvbmcNCmRpZmYgLXVy
TiBsaW51eC0yLjQuMjAtY2xlYW4vZHJpdmVycy9pc2RuL2lzZG5fcHBwLmgg
bGludXgtMi40LjIwX2lwcHAtZmlsdGVyL2RyaXZlcnMvaXNkbi9pc2RuX3Bw
cC5oDQotLS0gbGludXgtMi40LjIwLWNsZWFuL2RyaXZlcnMvaXNkbi9pc2Ru
X3BwcC5oCTIwMDEtMTItMjEgMTg6NDE6NTQuMDAwMDAwMDAwICswMTAwDQor
KysgbGludXgtMi40LjIwX2lwcHAtZmlsdGVyL2RyaXZlcnMvaXNkbi9pc2Ru
X3BwcC5oCTIwMDMtMDItMTAgMDU6MjE6MTAuMDAwMDAwMDAwICswMTAwDQpA
QCAtMTksNiArMTksNyBAQA0KIGV4dGVybiB2b2lkIGlzZG5fcHBwX2NsZWFu
dXAodm9pZCk7DQogZXh0ZXJuIGludCBpc2RuX3BwcF9mcmVlKGlzZG5fbmV0
X2xvY2FsICopOw0KIGV4dGVybiBpbnQgaXNkbl9wcHBfYmluZChpc2RuX25l
dF9sb2NhbCAqKTsNCitleHRlcm4gaW50IGlzZG5fcHBwX2F1dG9kaWFsX2Zp
bHRlcihzdHJ1Y3Qgc2tfYnVmZiAqLCBpc2RuX25ldF9sb2NhbCAqKTsNCiBl
eHRlcm4gaW50IGlzZG5fcHBwX3htaXQoc3RydWN0IHNrX2J1ZmYgKiwgc3Ry
dWN0IG5ldF9kZXZpY2UgKik7DQogZXh0ZXJuIHZvaWQgaXNkbl9wcHBfcmVj
ZWl2ZShpc2RuX25ldF9kZXYgKiwgaXNkbl9uZXRfbG9jYWwgKiwgc3RydWN0
IHNrX2J1ZmYgKik7DQogZXh0ZXJuIGludCBpc2RuX3BwcF9kZXZfaW9jdGwo
c3RydWN0IG5ldF9kZXZpY2UgKiwgc3RydWN0IGlmcmVxICosIGludCk7DQpk
aWZmIC11ck4gbGludXgtMi40LjIwLWNsZWFuL2luY2x1ZGUvbGludXgvaXNk
bl9wcHAuaCBsaW51eC0yLjQuMjBfaXBwcC1maWx0ZXIvaW5jbHVkZS9saW51
eC9pc2RuX3BwcC5oDQotLS0gbGludXgtMi40LjIwLWNsZWFuL2luY2x1ZGUv
bGludXgvaXNkbl9wcHAuaAkyMDAxLTA5LTMwIDIxOjI2OjQyLjAwMDAwMDAw
MCArMDIwMA0KKysrIGxpbnV4LTIuNC4yMF9pcHBwLWZpbHRlci9pbmNsdWRl
L2xpbnV4L2lzZG5fcHBwLmgJMjAwMy0wMi0xMCAwMjoyMTo1NC4wMDAwMDAw
MDAgKzAxMDANCkBAIC02NSw2ICs2NSw5IEBADQogDQogI2luY2x1ZGUgPGxp
bnV4L2NvbmZpZy5oPg0KIA0KKyNpZmRlZiBDT05GSUdfSVBQUF9GSUxURVIN
CisjaW5jbHVkZSA8bGludXgvZmlsdGVyLmg+DQorI2VuZGlmDQogDQogI2Rl
ZmluZSBERUNPTVBfRVJSX05PTUVNCSgtMTApDQogDQpAQCAtMjIzLDYgKzIy
NiwxMCBAQA0KICAgdW5zaWduZWQgY2hhciAqY2J1ZjsNCiAgIHN0cnVjdCBz
bGNvbXByZXNzICpzbGNvbXA7DQogI2VuZGlmDQorI2lmZGVmIENPTkZJR19J
UFBQX0ZJTFRFUg0KKyAgc3RydWN0IHNvY2tfZnByb2cgcGFzc19maWx0ZXI7
CS8qIGZpbHRlciBmb3IgcGFja2V0cyB0byBwYXNzICovDQorICBzdHJ1Y3Qg
c29ja19mcHJvZyBhY3RpdmVfZmlsdGVyOwkvKiBmaWx0ZXIgZm9yIHBrdHMg
dG8gcmVzZXQgaWRsZSAqLw0KKyNlbmRpZg0KICAgdW5zaWduZWQgbG9uZyBk
ZWJ1ZzsNCiAgIHN0cnVjdCBpc2RuX3BwcF9jb21wcmVzc29yICpjb21wcmVz
c29yLCpkZWNvbXByZXNzb3I7DQogICBzdHJ1Y3QgaXNkbl9wcHBfY29tcHJl
c3NvciAqbGlua19jb21wcmVzc29yLCpsaW5rX2RlY29tcHJlc3NvcjsNCg==
--=_courier-11764-1045528559-0001-2
Content-Type: text/plain; charset=us-ascii; name="isdn4k-utils_ippp-filter.diff"
Content-Transfer-Encoding: base64
Content-ID: <Pine.LNX.4.44.0302180133071.10325@el-zoido.localnet>
Content-Description:
Content-Disposition: attachment; filename="isdn4k-utils_ippp-filter.diff"

ZGlmZiAtdXJOIGlzZG40ay11dGlscy1jbGVhbi9pcHBwZC9jb25maWd1cmUu
aW4gaXNkbjRrLXV0aWxzX2lwcHAtZmlsdGVyL2lwcHBkL2NvbmZpZ3VyZS5p
bg0KLS0tIGlzZG40ay11dGlscy1jbGVhbi9pcHBwZC9jb25maWd1cmUuaW4J
MjAwMi0wNy0xOSAyMDo1MTo0MS4wMDAwMDAwMDAgKzAyMDANCisrKyBpc2Ru
NGstdXRpbHNfaXBwcC1maWx0ZXIvaXBwcGQvY29uZmlndXJlLmluCTIwMDMt
MDItMTEgMTU6Mjk6MzAuMDAwMDAwMDAwICswMTAwDQpAQCAtOTgsNiArOTgs
MTIgQEANCiAJQUNfREVGSU5FKENPTkZJR19JUFBQRF9ERUJVR0ZMQUdTLCIt
RERFQlVHQUxMIiksDQogKQ0KIA0KK0FDX0FSR19FTkFCTEUoaXBwcC1maWx0
ZXIsDQorCVsgIC0tZW5hYmxlLWlwcHAtZmlsdGVyICAgIEVuYWJsZSBJUFBQ
IEZpbHRlcnMgKG5lZWRzIGtlcm5lbCBzdXBwb3J0cykgW25vXV0sDQorCUNP
TkZJR19JUFBQX0ZJTFRFUj0iMSINCisJQUNfREVGSU5FKENPTkZJR19JUFBQ
X0ZJTFRFUiwiMSIpLA0KKykNCisNCiBBQ19TVUJTVChJNExWRVJTSU9OKQ0K
IEFDX1NVQlNUKE1BTkRBVEUpDQogQUNfU1VCU1QoSEFWRV9MSUJERVMpDQpA
QCAtMTEzLDQgKzExOSw1IEBADQogQUNfU1VCU1QoUkFESVVTX0NMSUVOVF9D
T05GSUdfRklMRSkNCiBBQ19TVUJTVChDT05GSUdfUkFESVVTX1dUTVBfTE9H
R0lORykNCiBBQ19TVUJTVChDT05GSUdfSVBQUERfREVCVUdGTEFHUykNCitB
Q19TVUJTVChDT05GSUdfSVBQUF9GSUxURVIpDQogQUNfT1VUUFVUKE1ha2Vm
aWxlIGlwcHBkLm1hbiBwYXRobmFtZXMuaCkNCmRpZmYgLXVyTiBpc2RuNGst
dXRpbHMtY2xlYW4vaXBwcGQvaXBwcGQuaCBpc2RuNGstdXRpbHNfaXBwcC1m
aWx0ZXIvaXBwcGQvaXBwcGQuaA0KLS0tIGlzZG40ay11dGlscy1jbGVhbi9p
cHBwZC9pcHBwZC5oCTIwMDItMDctMDYgMDI6MzQ6MDguMDAwMDAwMDAwICsw
MjAwDQorKysgaXNkbjRrLXV0aWxzX2lwcHAtZmlsdGVyL2lwcHBkL2lwcHBk
LmgJMjAwMy0wMS0yNyAxMjo1Njo1NC4wMDAwMDAwMDAgKzAxMDANCkBAIC0y
MTUsNiArMjE1LDExIEBADQogI2lmZGVmIF9fbGludXhfXw0KIGV4dGVybiBp
bnQgICAgICBob3N0cm91dGU7ICAgICAgLyogQWRkIGEgcm91dGUgdG8gdGhl
IGhvc3QgYXQgdGhlIG90aGVyIGVuZD8gKi8NCiAjZW5kaWYNCisjaWZkZWYg
SVBQUF9GSUxURVINCisjaW5jbHVkZSA8bmV0L2JwZi5oPg0KK2V4dGVybiBz
dHJ1Y3QgICBicGZfcHJvZ3JhbSBwYXNzX2ZpbHRlcjsgICAvKiBGaWx0ZXIg
Zm9yIHBrdHMgdG8gcGFzcyAqLw0KK2V4dGVybiBzdHJ1Y3QgICBicGZfcHJv
Z3JhbSBhY3RpdmVfZmlsdGVyOyAvKiBGaWx0ZXIgZm9yIGxpbmstYWN0aXZl
IHBrdHMgKi8NCisjZW5kaWYgLyogSVBQUF9GSUxURVIgKi8NCiANCiAvKg0K
ICAqIFZhbHVlcyBmb3IgcGhhc2UuDQpAQCAtMjg4LDYgKzI5Myw5IEBADQog
dm9pZCBsaW5rX3Rlcm1pbmF0ZWQoaW50KTsNCiB2b2lkIGxpbmtfZG93bihp
bnQpOw0KIHZvaWQgbGlua19lc3RhYmxpc2hlZChpbnQgdW5pdCk7DQorI2lm
ZGVmIElQUFBfRklMVEVSDQoraW50IHNldF9maWx0ZXJzKGludCwgc3RydWN0
IGJwZl9wcm9ncmFtICosIHN0cnVjdCBicGZfcHJvZ3JhbSAqKTsNCisjZW5k
aWYgLyogSVBQUF9GSUxURVIgKi8NCiBpbnQgZGV2aWNlX3NjcmlwdChjaGFy
ICpwcm9ncmFtLGludCBpbixpbnQgb3V0KTsNCiB2b2lkIGNoZWNrX2F1dGhf
b3B0aW9ucyh2b2lkKTsNCiB2b2lkIHNldGlwZGVmYXVsdCh2b2lkKTsNCmRp
ZmYgLXVyTiBpc2RuNGstdXRpbHMtY2xlYW4vaXBwcGQvaXBwcC1maWx0ZXIt
Y29tcGF0LmggaXNkbjRrLXV0aWxzX2lwcHAtZmlsdGVyL2lwcHBkL2lwcHAt
ZmlsdGVyLWNvbXBhdC5oDQotLS0gaXNkbjRrLXV0aWxzLWNsZWFuL2lwcHBk
L2lwcHAtZmlsdGVyLWNvbXBhdC5oCTE5NzAtMDEtMDEgMDE6MDA6MDAuMDAw
MDAwMDAwICswMTAwDQorKysgaXNkbjRrLXV0aWxzX2lwcHAtZmlsdGVyL2lw
cHBkL2lwcHAtZmlsdGVyLWNvbXBhdC5oCTIwMDMtMDItMTAgMDY6MDA6MDUu
MDAwMDAwMDAwICswMTAwDQpAQCAtMCwwICsxLDExIEBADQorI2lmbmRlZiBf
SVBQUF9GSUxURVJfQ09NUEFUX0gNCisjZGVmaW5lIF9JUFBQX0ZJTFRFUl9D
T01QQVRfVA0KKw0KKyNpZm5kZWYgUFBQSU9DU1BBU1MNCisjZGVmaW5lIFBQ
UElPQ1NQQVNTCV9JT1coJ3QnLCA3MSwgc3RydWN0IHNvY2tfZnByb2cpIC8q
IHNldCBwYXNzIGZpbHRlciAqLw0KKyNlbmRpZg0KKyNpZm5kZWYgUFBQSU9D
U0FDVElWRQ0KKyNkZWZpbmUgUFBQSU9DU0FDVElWRQlfSU9XKCd0JywgNzAs
IHN0cnVjdCBzb2NrX2Zwcm9nKSAvKiBzZXQgYWN0aXZlIGZpbHQgKi8NCisj
ZW5kaWYNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0K
KyNlbmRpZiAvKiBfSVBQUF9GSUxURVJfQ09NUEFUX1QgKi8NCmRpZmYgLXVy
TiBpc2RuNGstdXRpbHMtY2xlYW4vaXBwcGQvbWFpbi5jIGlzZG40ay11dGls
c19pcHBwLWZpbHRlci9pcHBwZC9tYWluLmMNCi0tLSBpc2RuNGstdXRpbHMt
Y2xlYW4vaXBwcGQvbWFpbi5jCTIwMDItMDctMTggMDI6MDY6MjEuMDAwMDAw
MDAwICswMjAwDQorKysgaXNkbjRrLXV0aWxzX2lwcHAtZmlsdGVyL2lwcHBk
L21haW4uYwkyMDAzLTAxLTI3IDEyOjU2OjU0LjAwMDAwMDAwMCArMDEwMA0K
QEAgLTU2NCw2ICs1NjQsOSBAQA0KIAlsbnNbbGlua3VuaXRdLnVwYXBfdW5p
dCA9IGxuc1tsaW5rdW5pdF0uY2hhcF91bml0ID0gbG5zW2xpbmt1bml0XS5s
Y3BfdW5pdDsNCiAJdXBhcFtsbnNbbGlua3VuaXRdLnVwYXBfdW5pdF0udXNf
dW5pdCA9IGNoYXBbbG5zW2xpbmt1bml0XS5jaGFwX3VuaXRdLnVuaXQgPSBs
aW5rdW5pdDsNCiAJbGNwX2xvd2VydXAobG5zW2xpbmt1bml0XS5sY3BfdW5p
dCk7DQorI2lmZGVmIElQUFBfRklMVEVSDQorCXNldF9maWx0ZXJzKGxpbmt1
bml0LCAmcGFzc19maWx0ZXIsICZhY3RpdmVfZmlsdGVyKTsNCisjZW5kaWYg
LyogSVBQUF9GSUxURVIgKi8NCiANCiAJcmV0dXJuIDA7DQogfQ0KZGlmZiAt
dXJOIGlzZG40ay11dGlscy1jbGVhbi9pcHBwZC9NYWtlZmlsZS5pbiBpc2Ru
NGstdXRpbHNfaXBwcC1maWx0ZXIvaXBwcGQvTWFrZWZpbGUuaW4NCi0tLSBp
c2RuNGstdXRpbHMtY2xlYW4vaXBwcGQvTWFrZWZpbGUuaW4JMjAwMi0wNy0x
OSAyMTowMzo1My4wMDAwMDAwMDAgKzAyMDANCisrKyBpc2RuNGstdXRpbHNf
aXBwcC1maWx0ZXIvaXBwcGQvTWFrZWZpbGUuaW4JMjAwMy0wMi0xMSAxNToz
MDo0OC4wMDAwMDAwMDAgKzAxMDANCkBAIC03LDYgKzcsNyBAQA0KIEhBVkVf
TElCQ1JZUFQgOj0gQEhBVkVfTElCQ1JZUFRADQogSEFWRV9TSEFET1dfSCA6
PSBASEFWRV9TSEFET1dfSEANCiBIQVZFX0xaU0NPTVBfSDo9IEBIQVZFX0xa
U0NPTVBfSEANCitJUFBQX0ZJTFRFUiAgIDo9IEBDT05GSUdfSVBQUF9GSUxU
RVJADQogU0JJTkRJUiAgICAgICA6PSBAQ09ORklHX1NCSU5ESVJADQogTUFO
RElSICAgICAgICA6PSBAQ09ORklHX01BTkRJUkANCiBDQyAgICAgICAgICAg
IDo9IEBDQ0ANCkBAIC03Nyw2ICs3OCwxMCBAQA0KIExJQlMgICAgICAgID0g
LWxjcnlwdCAtbHV0aWwNCiBlbmRpZg0KIA0KK2lmZXEgKCQoSVBQUF9GSUxU
RVIpLDEpDQorQ0ZMQUdTICAgICArPSAtRElQUFBfRklMVEVSDQorTElCUyAg
ICAgICArPSAtbHBjYXANCitlbmRpZg0KIA0KIFNPVVJDRSA9IFJFTE5PVEVT
IGNvbmZpZ3VyZSAqLmluICQoUFBQRFNSQ1MpICQoSEVBREVSUykgJChNQU5Q
QUdFUykNCiANCmRpZmYgLXVyTiBpc2RuNGstdXRpbHMtY2xlYW4vaXBwcGQv
b3B0aW9ucy5jIGlzZG40ay11dGlsc19pcHBwLWZpbHRlci9pcHBwZC9vcHRp
b25zLmMNCi0tLSBpc2RuNGstdXRpbHMtY2xlYW4vaXBwcGQvb3B0aW9ucy5j
CTIwMDItMDctMDYgMDI6MzQ6MDguMDAwMDAwMDAwICswMjAwDQorKysgaXNk
bjRrLXV0aWxzX2lwcHAtZmlsdGVyL2lwcHBkL29wdGlvbnMuYwkyMDAzLTAy
LTEwIDA2OjA2OjAzLjAwMDAwMDAwMCArMDEwMA0KQEAgLTM5LDYgKzM5LDEw
IEBADQogI2luY2x1ZGUgPHJhZGl1c2NsaWVudC5oPg0KICNlbmRpZg0KIA0K
KyNpZmRlZiBJUFBQX0ZJTFRFUg0KKyNpbmNsdWRlIDxwY2FwLmg+DQorI2Vu
ZGlmIC8qIElQUFBfRklMVEVSICovDQorDQogI2luY2x1ZGUgImZzbS5oIg0K
ICNpbmNsdWRlICJpcHBwZC5oIg0KICNpbmNsdWRlICJwYXRobmFtZXMuaCIN
CkBAIC0xNDAsNiArMTQ0LDEwIEBADQogc3RydWN0IG9wdGlvbl9pbmZvIGF1
dGhfcmVxX2luZm87DQogc3RydWN0IG9wdGlvbl9pbmZvIGRldm5hbV9pbmZv
Ow0KIA0KKyNpZmRlZiBJUFBQX0ZJTFRFUg0KK3N0cnVjdCAgYnBmX3Byb2dy
YW0gcGFzc19maWx0ZXI7LyogRmlsdGVyIHByb2dyYW0gZm9yIHBhY2tldHMg
dG8gcGFzcyAqLw0KK3N0cnVjdCAgYnBmX3Byb2dyYW0gYWN0aXZlX2ZpbHRl
cjsgLyogRmlsdGVyIHByb2dyYW0gZm9yIGxpbmstYWN0aXZlIHBrdHMgKi8N
CisjZW5kaWYgLyogSVBQUF9GSUxURVIgKi8NCiANCiAvKg0KICAqIFByb3Rv
dHlwZXMNCkBAIC0yOTIsNiArMzAwLDExIEBADQogaW50IF9fUCAocmFkaXVz
X2luaXQgKCB2b2lkICkpOw0KICNlbmRpZg0KIA0KKyNpZmRlZiBJUFBQX0ZJ
TFRFUg0KK3N0YXRpYyBpbnQgc2V0cGFzc2ZpbHRlciBfX1AoKGludCxjaGFy
ICoqKSk7DQorc3RhdGljIGludCBzZXRhY3RpdmVmaWx0ZXIgX19QKChpbnQs
Y2hhciAqKikpOw0KKyNlbmRpZiAvKiBJUFBQX0ZJTFRFUiAqLw0KKw0KIC8q
DQogICogVmFsaWQgYXJndW1lbnRzLg0KICAqLw0KQEAgLTQ3MCw3ICs0ODMs
MTAgQEANCiAgICAgeyJub2hvc3Ryb3V0ZSIsIDAsIHNldG5vaG9zdHJvdXRl
fSwgLyogRG9uJ3QgYWRkIGhvc3Qgcm91dGUgKi8NCiAjZW5kaWYNCiAgICAg
eyIrZm9yY2UtZHJpdmVyIiwwLHNldGZvcmNlZHJpdmVyfSwNCi0NCisjaWZk
ZWYgSVBQUF9GSUxURVINCisgICAgeyAicGFzcy1maWx0ZXIiLCAxLCBzZXRw
YXNzZmlsdGVyfSwJCS8qIHBhc3MgZmlsdGVyICovDQorICAgIHsgImFjdGl2
ZS1maWx0ZXIiLCAxLCBzZXRhY3RpdmVmaWx0ZXJ9LAkvKiBsaW5rLWFjdGl2
ZSBmaWx0ZXIgKi8NCisjZW5kaWYgLyogSVBQUF9GSUxURVIgKi8NCiAgICAg
e05VTEwsIDAsIE5VTEx9DQogfTsNCiANCkBAIC0yNjE1LDMgKzI2MzEsMzMg
QEANCiAgICAgZm9yY2VfZHJpdmVyID0gMTsNCiAgICAgcmV0dXJuIDE7DQog
fQ0KKw0KKyNpZmRlZiBJUFBQX0ZJTFRFUg0KKy8qDQorICogc2V0cGFzc2Zp
bHRlciAtIFNldCB0aGUgcGFzcyBmaWx0ZXIgZm9yIHBhY2tldHMNCisgKi8N
CitzdGF0aWMgaW50DQorc2V0cGFzc2ZpbHRlcihhcmdjLCBhcmd2KQ0KKyAg
ICBpbnQgYXJnYzsNCisgICAgY2hhciAqKmFyZ3Y7DQorew0KKyAgICBpZiAo
cGNhcF9jb21waWxlX25vcGNhcChQUFBfSERSTEVOLCBETFRfUFBQLCAmcGFz
c19maWx0ZXIsICphcmd2LCAxLCBuZXRtYXNrKSA9PSAwKQ0KKyAgICAgICAg
cmV0dXJuIDE7DQorICAgIG9wdGlvbl9lcnJvcigiZXJyb3IgaW4gcGFzcy1m
aWx0ZXIgZXhwcmVzc2lvbi5cbiIpOw0KKyAgICByZXR1cm4gMDsNCit9DQor
DQorLyoNCisgKiBzZXRhY3RpdmVmaWx0ZXIgLSBTZXQgdGhlIGFjdGl2ZSBm
aWx0ZXIgZm9yIHBhY2tldHMNCisgKi8NCitzdGF0aWMgaW50DQorc2V0YWN0
aXZlZmlsdGVyKGFyZ2MsIGFyZ3YpDQorICAgIGludCBhcmdjOw0KKyAgICBj
aGFyICoqYXJndjsNCit7DQorICAgIGlmIChwY2FwX2NvbXBpbGVfbm9wY2Fw
KFBQUF9IRFJMRU4sIERMVF9QUFAsICZhY3RpdmVfZmlsdGVyLCAqYXJndiwg
MSwgbmV0bWFzaykgPT0gMCkNCisgICAgICAgIHJldHVybiAxOw0KKyAgICBv
cHRpb25fZXJyb3IoImVycm9yIGluIGFjdGl2ZS1maWx0ZXIgZXhwcmVzc2lv
bi5cbiIpOw0KKyAgICByZXR1cm4gMDsNCit9DQorI2VuZGlmIC8qIElQUFBf
RklMVEVSICovDQpkaWZmIC11ck4gaXNkbjRrLXV0aWxzLWNsZWFuL2lwcHBk
L3N5cy1saW51eC5jIGlzZG40ay11dGlsc19pcHBwLWZpbHRlci9pcHBwZC9z
eXMtbGludXguYw0KLS0tIGlzZG40ay11dGlscy1jbGVhbi9pcHBwZC9zeXMt
bGludXguYwkyMDAwLTEwLTA1IDIyOjQ1OjI1LjAwMDAwMDAwMCArMDIwMA0K
KysrIGlzZG40ay11dGlsc19pcHBwLWZpbHRlci9pcHBwZC9zeXMtbGludXgu
YwkyMDAzLTAyLTEwIDA2OjAwOjM1LjAwMDAwMDAwMCArMDEwMA0KQEAgLTU3
LDYgKzU3LDcgQEANCiAjaWYgZGVmaW5lZCBfX0dMSUJDX18gJiYgX19HTElC
Q19fID49IDINCiAjIGluY2x1ZGUgPC91c3IvaW5jbHVkZS9uZXQvcHBwX2Rl
ZnMuaD4NCiAjIGluY2x1ZGUgPC91c3IvaW5jbHVkZS9uZXQvaWZfcHBwLmg+
DQorIyBpbmNsdWRlICJpcHBwLWZpbHRlci1jb21wYXQuaCINCiAjIGluY2x1
ZGUgPC91c3IvaW5jbHVkZS9uZXQvZXRoZXJuZXQuaD4NCiAjIGluY2x1ZGUg
InJvdXRlLmgiDQogI2Vsc2UNCkBAIC03MCw2ICs3MSwxMSBAQA0KICMgaW5j
bHVkZSA8bmV0aXB4L2lweC5oPg0KICNlbmRpZg0KIA0KKyNpZmRlZiBJUFBQ
X0ZJTFRFUg0KKyNpbmNsdWRlIDxuZXQvYnBmLmg+DQorI2luY2x1ZGUgPGxp
bnV4L2ZpbHRlci5oPg0KKyNlbmRpZiAvKiBJUFBQX0ZJTFRFUiAqLw0KKw0K
ICNpbmNsdWRlICJmc20uaCINCiAjaW5jbHVkZSAiaXBwcGQuaCINCiAjaW5j
bHVkZSAiaXBjcC5oIg0KQEAgLTUxNSw2ICs1MjEsNDAgQEANCiAJcmV0dXJu
IDE7DQogfQ0KIA0KKyNpZmRlZiBJUFBQX0ZJTFRFUg0KKy8qDQorICogc2V0
X2ZpbHRlcnMgLSBzZXQgdGhlIGFjdGl2ZSBhbmQgcGFzcyBmaWx0ZXJzIGlu
IHRoZSBrZXJuZWwgZHJpdmVyLg0KKyAqLw0KK2ludCBzZXRfZmlsdGVycyhp
bnQgdSwgc3RydWN0IGJwZl9wcm9ncmFtICpwYXNzLCBzdHJ1Y3QgYnBmX3By
b2dyYW0gKmFjdGl2ZSkNCit7ICAgICAgIA0KKyAgICAgICAgc3RydWN0IHNv
Y2tfZnByb2cgZnA7DQorDQorCS8qDQorCSAqICB1bmZvcnR1bmF0ZWx5IHRo
ZXJlIGlzIG5vIHdheSBvZiBjaGVja2luZyBmb3Iga2VybmVsIHN1cHBvcnQu
IHRoZQ0KKwkgKiAgZHJpdmVyIGp1c3QgcmV0dXJucyAwIGZvciB1bnN1cHBv
cnRlZCBpb2N0bHMsIHdoaWNoIG1lYW5zIHdpdGhvdXQNCisJICogIGtlcm5l
bCBzdXBwb3J0IHdlIHdvbid0IGV2ZW4gbm90aWNlIHRoZSBlcnJvci4NCisJ
ICovDQorDQorCWlmIChwYXNzKSB7DQorCQlmcC5sZW4gPSBwYXNzLT5iZl9s
ZW47DQorCQlmcC5maWx0ZXIgPSAoc3RydWN0IHNvY2tfZmlsdGVyICopIHBh
c3MtPmJmX2luc25zOw0KKwkJaWYgKGlvY3RsKGxuc1t1XS5mZCwgUFBQSU9D
U1BBU1MsICZmcCkgPCAwKSB7DQorCQkJc3lzbG9nKExPR19FUlIsICJDb3Vs
ZG4ndCBzZXQgcGFzcy1maWx0ZXIgaW4ga2VybmVsLiIpOw0KKwkJCXJldHVy
biAwOw0KKwkJfQ0KKwl9DQorCWlmIChhY3RpdmUpIHsNCisJCWZwLmxlbiA9
IGFjdGl2ZS0+YmZfbGVuOw0KKwkJZnAuZmlsdGVyID0gKHN0cnVjdCBzb2Nr
X2ZpbHRlciAqKSBhY3RpdmUtPmJmX2luc25zOw0KKwkJaWYgKGlvY3RsKGxu
c1t1XS5mZCwgUFBQSU9DU0FDVElWRSwgJmZwKSA8IDApIHsNCisJCQlzeXNs
b2coTE9HX0VSUiwgIkNvdWxkbid0IHNldCBhY3RpdmUtZmlsdGVyIGluIGtl
cm5lbC4iKTsNCisJICAgICAgICAJcmV0dXJuIDA7DQorCQl9DQorCX0NCisJ
cmV0dXJuIDE7DQorfQ0KKyNlbmRpZiAvKiBJUFBQX0ZJTFRFUiAqLw0KKw0K
IC8qDQogICogc2lmdXAgLSBDb25maWcgdGhlIGludGVyZmFjZSB1cCBhbmQg
ZW5hYmxlIElQIHBhY2tldHMgdG8gcGFzcy4NCiAgKi8NCg==
--=_courier-11764-1045528559-0001-2--