2018-03-14 16:58:39

by Jean-Pierre TOSONI

[permalink] [raw]
Subject: [PATCH v2 resend] mac80211: inform wireless layer when frame RSSI is invalid

V2hlbiB0aGUgbG93LWxldmVsIGRyaXZlciByZXR1cm5zIGFuIGludmFsaWQgUlNTSSBpbmRpY2F0
aW9uLA0Kc2V0IHRoZSBzaWduYWwgdmFsdWUgdG8gMCBhcyBhbiBpbmRpY2F0aW9uIHRvIHRoZSB1
cHBlciBsYXllci4NCg0KQWxzbywgc2tpcCBhdmVyYWdlIGxldmVsIGNvbXB1dGF0aW9uIGlmIHNp
Z25hbCBpcyBpbnZhbGlkLg0KDQpTaWduZWQtb2ZmLWJ5OiBKZWFuIFBpZXJyZSBUT1NPTkkgPGpw
LnRvc29uaUBhY2tzeXMuZnI+DQotLS0NCkBKb2hhbm5lczogd2hhdCBpcyB0aGUgc3RhdHVzIG9m
IHRoaXMgcGF0Y2g/IFNvbWV0aGluZyB0byBpbXByb3ZlPw0KDQpWMjoNCk1vdmUgdGhlIGJlYWNv
biByc3NpIHByb2Nlc3NpbmcgdG8gYSBoZWxwZXIgZnVuY3Rpb24gd2hpY2ggaXMgY2FsbGVkDQpj
b25kaXRpb25hbGx5LCBpbnN0ZWFkIG9mIGp1bXBpbmcgb3ZlciB0aGUgY29kZSB3aXRoIGEgZ290
byAodGhpcw0KbWFrZXMgdGhlIGNvZGUgc21hcnRlciBidXQgdGhlIHBhdGNoIGlzIG11Y2ggaGFy
ZGVyIHRvIGdyYXNwIDotKQ0KDQpXQVJOSU5HOg0KVGhpcyBwYXRjaCBhcHBsaWVzIHRvIHdpcmVs
ZXNzLXRlc3RpbmcgcmV0cmlldmVkIG9uIEZlYiAyNiwgMjAxOCBidXQNCml0IHdhcyB0ZXN0ZWQg
b24gYSBtdWNoIG9sZGVyIHZlcnNpb24gKE9wZW5XcnQga2VybmVsIDMuMTggd2l0aA0KY29tcGF0
LXdpcmVsZXNzLTIwMTUtMDctMjEpLg0KPT09PT09PT09PS0tLS0tLS0tLS09PT09PT09PT09LS0t
LS0tLS0tLT09PT09PT09PT0tLS0tLS0tLS0tPT09PT09PT09PQ0KDQogbmV0L21hYzgwMjExL21s
bWUuYyB8ICAxNTkgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tDQogbmV0L21hYzgwMjExL3J4LmMgICB8ICAgIDYgKy0NCiBuZXQvbWFjODAyMTEvc2Nh
bi5jIHwgICAgNCArLQ0KIDMgZmlsZXMgY2hhbmdlZCwgOTIgaW5zZXJ0aW9ucygrKSwgNzcgZGVs
ZXRpb25zKC0pDQoNCmRpZmYgLS1naXQgYS9uZXQvbWFjODAyMTEvbWxtZS5jIGIvbmV0L21hYzgw
MjExL21sbWUuYw0KaW5kZXggMDAyNGVmZi4uOGNiMTcxMCAxMDA2NDQNCi0tLSBhL25ldC9tYWM4
MDIxMS9tbG1lLmMNCisrKyBiL25ldC9tYWM4MDIxMS9tbG1lLmMNCkBAIC0zMzA2LDgyICszMzA2
LDE0IEBAIHN0YXRpYyB2b2lkIGllZWU4MDIxMV9yeF9tZ210X3Byb2JlX3Jlc3Aoc3RydWN0IGll
ZWU4MDIxMV9zdWJfaWZfZGF0YSAqc2RhdGEsDQogCSgxVUxMIDw8IFdMQU5fRUlEX0hUX09QRVJB
VElPTikgfA0KIAkoMVVMTCA8PCBXTEFOX0VJRF9FWFRfQ0hBTlNXSVRDSF9BTk4pOw0KIA0KLXN0
YXRpYyB2b2lkIGllZWU4MDIxMV9yeF9tZ210X2JlYWNvbihzdHJ1Y3QgaWVlZTgwMjExX3N1Yl9p
Zl9kYXRhICpzZGF0YSwNCi0JCQkJICAgICBzdHJ1Y3QgaWVlZTgwMjExX21nbXQgKm1nbXQsIHNp
emVfdCBsZW4sDQotCQkJCSAgICAgc3RydWN0IGllZWU4MDIxMV9yeF9zdGF0dXMgKnJ4X3N0YXR1
cykNCitzdGF0aWMgdm9pZCBpZWVlODAyMTFfaGFuZGxlX2JlYWNvbl9zaWduYWwoc3RydWN0IGll
ZWU4MDIxMV9zdWJfaWZfZGF0YSAqc2RhdGEsDQorCQkJCQlzdHJ1Y3QgaWVlZTgwMjExX2lmX21h
bmFnZWQgKmlmbWdkLA0KKwkJCQkJc3RydWN0IGllZWU4MDIxMV9ic3NfY29uZiAqYnNzX2NvbmYs
DQorCQkJCQlzdHJ1Y3QgaWVlZTgwMjExX2xvY2FsICpsb2NhbCwNCisJCQkJCXN0cnVjdCBpZWVl
ODAyMTFfcnhfc3RhdHVzICpyeF9zdGF0dXMpDQogew0KLQlzdHJ1Y3QgaWVlZTgwMjExX2lmX21h
bmFnZWQgKmlmbWdkID0gJnNkYXRhLT51Lm1nZDsNCi0Jc3RydWN0IGllZWU4MDIxMV9ic3NfY29u
ZiAqYnNzX2NvbmYgPSAmc2RhdGEtPnZpZi5ic3NfY29uZjsNCi0Jc2l6ZV90IGJhc2VsZW47DQot
CXN0cnVjdCBpZWVlODAyXzExX2VsZW1zIGVsZW1zOw0KLQlzdHJ1Y3QgaWVlZTgwMjExX2xvY2Fs
ICpsb2NhbCA9IHNkYXRhLT5sb2NhbDsNCi0Jc3RydWN0IGllZWU4MDIxMV9jaGFuY3R4X2NvbmYg
KmNoYW5jdHhfY29uZjsNCi0Jc3RydWN0IGllZWU4MDIxMV9jaGFubmVsICpjaGFuOw0KLQlzdHJ1
Y3Qgc3RhX2luZm8gKnN0YTsNCi0JdTMyIGNoYW5nZWQgPSAwOw0KLQlib29sIGVycF92YWxpZDsN
Ci0JdTggZXJwX3ZhbHVlID0gMDsNCi0JdTMyIG5jcmM7DQotCXU4ICpic3NpZDsNCi0JdTggZGVh
dXRoX2J1ZltJRUVFODAyMTFfREVBVVRIX0ZSQU1FX0xFTl07DQotDQotCXNkYXRhX2Fzc2VydF9s
b2NrKHNkYXRhKTsNCi0NCi0JLyogUHJvY2VzcyBiZWFjb24gZnJvbSB0aGUgY3VycmVudCBCU1Mg
Ki8NCi0JYmFzZWxlbiA9ICh1OCAqKSBtZ210LT51LmJlYWNvbi52YXJpYWJsZSAtICh1OCAqKSBt
Z210Ow0KLQlpZiAoYmFzZWxlbiA+IGxlbikNCi0JCXJldHVybjsNCi0NCi0JcmN1X3JlYWRfbG9j
aygpOw0KLQljaGFuY3R4X2NvbmYgPSByY3VfZGVyZWZlcmVuY2Uoc2RhdGEtPnZpZi5jaGFuY3R4
X2NvbmYpOw0KLQlpZiAoIWNoYW5jdHhfY29uZikgew0KLQkJcmN1X3JlYWRfdW5sb2NrKCk7DQot
CQlyZXR1cm47DQotCX0NCi0NCi0JaWYgKHJ4X3N0YXR1cy0+ZnJlcSAhPSBjaGFuY3R4X2NvbmYt
PmRlZi5jaGFuLT5jZW50ZXJfZnJlcSkgew0KLQkJcmN1X3JlYWRfdW5sb2NrKCk7DQotCQlyZXR1
cm47DQotCX0NCi0JY2hhbiA9IGNoYW5jdHhfY29uZi0+ZGVmLmNoYW47DQotCXJjdV9yZWFkX3Vu
bG9jaygpOw0KLQ0KLQlpZiAoaWZtZ2QtPmFzc29jX2RhdGEgJiYgaWZtZ2QtPmFzc29jX2RhdGEt
Pm5lZWRfYmVhY29uICYmDQotCSAgICBldGhlcl9hZGRyX2VxdWFsKG1nbXQtPmJzc2lkLCBpZm1n
ZC0+YXNzb2NfZGF0YS0+YnNzLT5ic3NpZCkpIHsNCi0JCWllZWU4MDJfMTFfcGFyc2VfZWxlbXMo
bWdtdC0+dS5iZWFjb24udmFyaWFibGUsDQotCQkJCSAgICAgICBsZW4gLSBiYXNlbGVuLCBmYWxz
ZSwgJmVsZW1zKTsNCi0NCi0JCWllZWU4MDIxMV9yeF9ic3NfaW5mbyhzZGF0YSwgbWdtdCwgbGVu
LCByeF9zdGF0dXMsICZlbGVtcyk7DQotCQlpZiAoZWxlbXMudGltICYmICFlbGVtcy5wYXJzZV9l
cnJvcikgew0KLQkJCWNvbnN0IHN0cnVjdCBpZWVlODAyMTFfdGltX2llICp0aW1faWUgPSBlbGVt
cy50aW07DQotCQkJaWZtZ2QtPmR0aW1fcGVyaW9kID0gdGltX2llLT5kdGltX3BlcmlvZDsNCi0J
CX0NCi0JCWlmbWdkLT5oYXZlX2JlYWNvbiA9IHRydWU7DQotCQlpZm1nZC0+YXNzb2NfZGF0YS0+
bmVlZF9iZWFjb24gPSBmYWxzZTsNCi0JCWlmIChpZWVlODAyMTFfaHdfY2hlY2soJmxvY2FsLT5o
dywgVElNSU5HX0JFQUNPTl9PTkxZKSkgew0KLQkJCXNkYXRhLT52aWYuYnNzX2NvbmYuc3luY190
c2YgPQ0KLQkJCQlsZTY0X3RvX2NwdShtZ210LT51LmJlYWNvbi50aW1lc3RhbXApOw0KLQkJCXNk
YXRhLT52aWYuYnNzX2NvbmYuc3luY19kZXZpY2VfdHMgPQ0KLQkJCQlyeF9zdGF0dXMtPmRldmlj
ZV90aW1lc3RhbXA7DQotCQkJaWYgKGVsZW1zLnRpbSkNCi0JCQkJc2RhdGEtPnZpZi5ic3NfY29u
Zi5zeW5jX2R0aW1fY291bnQgPQ0KLQkJCQkJZWxlbXMudGltLT5kdGltX2NvdW50Ow0KLQkJCWVs
c2UNCi0JCQkJc2RhdGEtPnZpZi5ic3NfY29uZi5zeW5jX2R0aW1fY291bnQgPSAwOw0KLQkJfQ0K
LQkJLyogY29udGludWUgYXNzb2MgcHJvY2VzcyAqLw0KLQkJaWZtZ2QtPmFzc29jX2RhdGEtPnRp
bWVvdXQgPSBqaWZmaWVzOw0KLQkJaWZtZ2QtPmFzc29jX2RhdGEtPnRpbWVvdXRfc3RhcnRlZCA9
IHRydWU7DQotCQlydW5fYWdhaW4oc2RhdGEsIGlmbWdkLT5hc3NvY19kYXRhLT50aW1lb3V0KTsN
Ci0JCXJldHVybjsNCi0JfQ0KLQ0KLQlpZiAoIWlmbWdkLT5hc3NvY2lhdGVkIHx8DQotCSAgICAh
ZXRoZXJfYWRkcl9lcXVhbChtZ210LT5ic3NpZCwgaWZtZ2QtPmFzc29jaWF0ZWQtPmJzc2lkKSkN
Ci0JCXJldHVybjsNCi0JYnNzaWQgPSBpZm1nZC0+YXNzb2NpYXRlZC0+YnNzaWQ7DQotDQogCS8q
IFRyYWNrIGF2ZXJhZ2UgUlNTSSBmcm9tIHRoZSBCZWFjb24gZnJhbWVzIG9mIHRoZSBjdXJyZW50
IEFQICovDQorDQogCWlmIChpZm1nZC0+ZmxhZ3MgJiBJRUVFODAyMTFfU1RBX1JFU0VUX1NJR05B
TF9BVkUpIHsNCiAJCWlmbWdkLT5mbGFncyAmPSB+SUVFRTgwMjExX1NUQV9SRVNFVF9TSUdOQUxf
QVZFOw0KIAkJZXdtYV9iZWFjb25fc2lnbmFsX2luaXQoJmlmbWdkLT5hdmVfYmVhY29uX3NpZ25h
bCk7DQpAQCAtMzQ2OCw2ICszNDAwLDg1IEBAIHN0YXRpYyB2b2lkIGllZWU4MDIxMV9yeF9tZ210
X2JlYWNvbihzdHJ1Y3QgaWVlZTgwMjExX3N1Yl9pZl9kYXRhICpzZGF0YSwNCiAJCQkJc2lnLCBH
RlBfS0VSTkVMKTsNCiAJCX0NCiAJfQ0KK30NCisNCitzdGF0aWMgdm9pZCBpZWVlODAyMTFfcnhf
bWdtdF9iZWFjb24oc3RydWN0IGllZWU4MDIxMV9zdWJfaWZfZGF0YSAqc2RhdGEsDQorCQkJCSAg
ICAgc3RydWN0IGllZWU4MDIxMV9tZ210ICptZ210LCBzaXplX3QgbGVuLA0KKwkJCQkgICAgIHN0
cnVjdCBpZWVlODAyMTFfcnhfc3RhdHVzICpyeF9zdGF0dXMpDQorew0KKwlzdHJ1Y3QgaWVlZTgw
MjExX2lmX21hbmFnZWQgKmlmbWdkID0gJnNkYXRhLT51Lm1nZDsNCisJc3RydWN0IGllZWU4MDIx
MV9ic3NfY29uZiAqYnNzX2NvbmYgPSAmc2RhdGEtPnZpZi5ic3NfY29uZjsNCisJc2l6ZV90IGJh
c2VsZW47DQorCXN0cnVjdCBpZWVlODAyXzExX2VsZW1zIGVsZW1zOw0KKwlzdHJ1Y3QgaWVlZTgw
MjExX2xvY2FsICpsb2NhbCA9IHNkYXRhLT5sb2NhbDsNCisJc3RydWN0IGllZWU4MDIxMV9jaGFu
Y3R4X2NvbmYgKmNoYW5jdHhfY29uZjsNCisJc3RydWN0IGllZWU4MDIxMV9jaGFubmVsICpjaGFu
Ow0KKwlzdHJ1Y3Qgc3RhX2luZm8gKnN0YTsNCisJdTMyIGNoYW5nZWQgPSAwOw0KKwlib29sIGVy
cF92YWxpZDsNCisJdTggZXJwX3ZhbHVlID0gMDsNCisJdTMyIG5jcmM7DQorCXU4ICpic3NpZDsN
CisJdTggZGVhdXRoX2J1ZltJRUVFODAyMTFfREVBVVRIX0ZSQU1FX0xFTl07DQorDQorCXNkYXRh
X2Fzc2VydF9sb2NrKHNkYXRhKTsNCisNCisJLyogUHJvY2VzcyBiZWFjb24gZnJvbSB0aGUgY3Vy
cmVudCBCU1MgKi8NCisJYmFzZWxlbiA9ICh1OCAqKSBtZ210LT51LmJlYWNvbi52YXJpYWJsZSAt
ICh1OCAqKSBtZ210Ow0KKwlpZiAoYmFzZWxlbiA+IGxlbikNCisJCXJldHVybjsNCisNCisJcmN1
X3JlYWRfbG9jaygpOw0KKwljaGFuY3R4X2NvbmYgPSByY3VfZGVyZWZlcmVuY2Uoc2RhdGEtPnZp
Zi5jaGFuY3R4X2NvbmYpOw0KKwlpZiAoIWNoYW5jdHhfY29uZikgew0KKwkJcmN1X3JlYWRfdW5s
b2NrKCk7DQorCQlyZXR1cm47DQorCX0NCisNCisJaWYgKHJ4X3N0YXR1cy0+ZnJlcSAhPSBjaGFu
Y3R4X2NvbmYtPmRlZi5jaGFuLT5jZW50ZXJfZnJlcSkgew0KKwkJcmN1X3JlYWRfdW5sb2NrKCk7
DQorCQlyZXR1cm47DQorCX0NCisJY2hhbiA9IGNoYW5jdHhfY29uZi0+ZGVmLmNoYW47DQorCXJj
dV9yZWFkX3VubG9jaygpOw0KKw0KKwlpZiAoaWZtZ2QtPmFzc29jX2RhdGEgJiYgaWZtZ2QtPmFz
c29jX2RhdGEtPm5lZWRfYmVhY29uICYmDQorCSAgICBldGhlcl9hZGRyX2VxdWFsKG1nbXQtPmJz
c2lkLCBpZm1nZC0+YXNzb2NfZGF0YS0+YnNzLT5ic3NpZCkpIHsNCisJCWllZWU4MDJfMTFfcGFy
c2VfZWxlbXMobWdtdC0+dS5iZWFjb24udmFyaWFibGUsDQorCQkJCSAgICAgICBsZW4gLSBiYXNl
bGVuLCBmYWxzZSwgJmVsZW1zKTsNCisNCisJCWllZWU4MDIxMV9yeF9ic3NfaW5mbyhzZGF0YSwg
bWdtdCwgbGVuLCByeF9zdGF0dXMsICZlbGVtcyk7DQorCQlpZiAoZWxlbXMudGltICYmICFlbGVt
cy5wYXJzZV9lcnJvcikgew0KKwkJCWNvbnN0IHN0cnVjdCBpZWVlODAyMTFfdGltX2llICp0aW1f
aWUgPSBlbGVtcy50aW07DQorCQkJaWZtZ2QtPmR0aW1fcGVyaW9kID0gdGltX2llLT5kdGltX3Bl
cmlvZDsNCisJCX0NCisJCWlmbWdkLT5oYXZlX2JlYWNvbiA9IHRydWU7DQorCQlpZm1nZC0+YXNz
b2NfZGF0YS0+bmVlZF9iZWFjb24gPSBmYWxzZTsNCisJCWlmIChpZWVlODAyMTFfaHdfY2hlY2so
JmxvY2FsLT5odywgVElNSU5HX0JFQUNPTl9PTkxZKSkgew0KKwkJCXNkYXRhLT52aWYuYnNzX2Nv
bmYuc3luY190c2YgPQ0KKwkJCQlsZTY0X3RvX2NwdShtZ210LT51LmJlYWNvbi50aW1lc3RhbXAp
Ow0KKwkJCXNkYXRhLT52aWYuYnNzX2NvbmYuc3luY19kZXZpY2VfdHMgPQ0KKwkJCQlyeF9zdGF0
dXMtPmRldmljZV90aW1lc3RhbXA7DQorCQkJaWYgKGVsZW1zLnRpbSkNCisJCQkJc2RhdGEtPnZp
Zi5ic3NfY29uZi5zeW5jX2R0aW1fY291bnQgPQ0KKwkJCQkJZWxlbXMudGltLT5kdGltX2NvdW50
Ow0KKwkJCWVsc2UNCisJCQkJc2RhdGEtPnZpZi5ic3NfY29uZi5zeW5jX2R0aW1fY291bnQgPSAw
Ow0KKwkJfQ0KKwkJLyogY29udGludWUgYXNzb2MgcHJvY2VzcyAqLw0KKwkJaWZtZ2QtPmFzc29j
X2RhdGEtPnRpbWVvdXQgPSBqaWZmaWVzOw0KKwkJaWZtZ2QtPmFzc29jX2RhdGEtPnRpbWVvdXRf
c3RhcnRlZCA9IHRydWU7DQorCQlydW5fYWdhaW4oc2RhdGEsIGlmbWdkLT5hc3NvY19kYXRhLT50
aW1lb3V0KTsNCisJCXJldHVybjsNCisJfQ0KKw0KKwlpZiAoIWlmbWdkLT5hc3NvY2lhdGVkIHx8
DQorCSAgICAhZXRoZXJfYWRkcl9lcXVhbChtZ210LT5ic3NpZCwgaWZtZ2QtPmFzc29jaWF0ZWQt
PmJzc2lkKSkNCisJCXJldHVybjsNCisJYnNzaWQgPSBpZm1nZC0+YXNzb2NpYXRlZC0+YnNzaWQ7
DQorDQorCWlmICghKHJ4X3N0YXR1cy0+ZmxhZyAmIFJYX0ZMQUdfTk9fU0lHTkFMX1ZBTCkpDQor
CQlpZWVlODAyMTFfaGFuZGxlX2JlYWNvbl9zaWduYWwoc2RhdGEsIGlmbWdkLCBic3NfY29uZiwg
bG9jYWwsIHJ4X3N0YXR1cyk7DQogDQogCWlmIChpZm1nZC0+ZmxhZ3MgJiBJRUVFODAyMTFfU1RB
X0NPTk5FQ1RJT05fUE9MTCkgew0KIAkJbWxtZV9kYmdfcmF0ZWxpbWl0ZWQoc2RhdGEsDQpkaWZm
IC0tZ2l0IGEvbmV0L21hYzgwMjExL3J4LmMgYi9uZXQvbWFjODAyMTEvcnguYw0KaW5kZXggNWJl
OTU3YS4uMGFmYjhjZSAxMDA2NDQNCi0tLSBhL25ldC9tYWM4MDIxMS9yeC5jDQorKysgYi9uZXQv
bWFjODAyMTEvcnguYw0KQEAgLTI3OTMsNyArMjc5Myw4IEBAIHN0YXRpYyB2b2lkIGllZWU4MDIx
MV9wcm9jZXNzX3NhX3F1ZXJ5X3JlcShzdHJ1Y3QgaWVlZTgwMjExX3N1Yl9pZl9kYXRhICpzZGF0
YSwNCiAJICAgICEocngtPmZsYWdzICYgSUVFRTgwMjExX1JYX0JFQUNPTl9SRVBPUlRFRCkpIHsN
CiAJCWludCBzaWcgPSAwOw0KIA0KLQkJaWYgKGllZWU4MDIxMV9od19jaGVjaygmcngtPmxvY2Fs
LT5odywgU0lHTkFMX0RCTSkpDQorCQlpZiAoaWVlZTgwMjExX2h3X2NoZWNrKCZyeC0+bG9jYWwt
Pmh3LCBTSUdOQUxfREJNKSAmJg0KKwkJICAgICEoc3RhdHVzLT5mbGFnICYgUlhfRkxBR19OT19T
SUdOQUxfVkFMKSkNCiAJCQlzaWcgPSBzdGF0dXMtPnNpZ25hbDsNCiANCiAJCWNmZzgwMjExX3Jl
cG9ydF9vYnNzX2JlYWNvbihyeC0+bG9jYWwtPmh3LndpcGh5LA0KQEAgLTMxMzQsNyArMzEzNSw4
IEBAIHN0YXRpYyB2b2lkIGllZWU4MDIxMV9wcm9jZXNzX3NhX3F1ZXJ5X3JlcShzdHJ1Y3QgaWVl
ZTgwMjExX3N1Yl9pZl9kYXRhICpzZGF0YSwNCiAJICogaXQgdHJhbnNtaXR0ZWQgd2VyZSBwcm9j
ZXNzZWQgb3IgcmV0dXJuZWQuDQogCSAqLw0KIA0KLQlpZiAoaWVlZTgwMjExX2h3X2NoZWNrKCZy
eC0+bG9jYWwtPmh3LCBTSUdOQUxfREJNKSkNCisJaWYgKGllZWU4MDIxMV9od19jaGVjaygmcngt
PmxvY2FsLT5odywgU0lHTkFMX0RCTSkgJiYNCisJICAgICEoc3RhdHVzLT5mbGFnICYgUlhfRkxB
R19OT19TSUdOQUxfVkFMKSkNCiAJCXNpZyA9IHN0YXR1cy0+c2lnbmFsOw0KIA0KIAlpZiAoY2Zn
ODAyMTFfcnhfbWdtdCgmcngtPnNkYXRhLT53ZGV2LCBzdGF0dXMtPmZyZXEsIHNpZywNCmRpZmYg
LS1naXQgYS9uZXQvbWFjODAyMTEvc2Nhbi5jIGIvbmV0L21hYzgwMjExL3NjYW4uYw0KaW5kZXgg
ZWYyYmVjYS4uYTNiMWJjYyAxMDA2NDQNCi0tLSBhL25ldC9tYWM4MDIxMS9zY2FuLmMNCisrKyBi
L25ldC9tYWM4MDIxMS9zY2FuLmMNCkBAIC03Myw3ICs3Myw5IEBAIHN0cnVjdCBpZWVlODAyMTFf
YnNzICoNCiAJYm9vbCBzaWduYWxfdmFsaWQ7DQogCXN0cnVjdCBpZWVlODAyMTFfc3ViX2lmX2Rh
dGEgKnNjYW5fc2RhdGE7DQogDQotCWlmIChpZWVlODAyMTFfaHdfY2hlY2soJmxvY2FsLT5odywg
U0lHTkFMX0RCTSkpDQorCWlmIChyeF9zdGF0dXMtPmZsYWcgJiBSWF9GTEFHX05PX1NJR05BTF9W
QUwpDQorCQlic3NfbWV0YS5zaWduYWwgPSAwOyAvKiBpbnZhbGlkIHNpZ25hbCBpbmRpY2F0aW9u
ICovDQorCWVsc2UgaWYgKGllZWU4MDIxMV9od19jaGVjaygmbG9jYWwtPmh3LCBTSUdOQUxfREJN
KSkNCiAJCWJzc19tZXRhLnNpZ25hbCA9IHJ4X3N0YXR1cy0+c2lnbmFsICogMTAwOw0KIAllbHNl
IGlmIChpZWVlODAyMTFfaHdfY2hlY2soJmxvY2FsLT5odywgU0lHTkFMX1VOU1BFQykpDQogCQli
c3NfbWV0YS5zaWduYWwgPSAocnhfc3RhdHVzLT5zaWduYWwgKiAxMDApIC8gbG9jYWwtPmh3Lm1h
eF9zaWduYWw7DQotLSANCjEuNy4yLjUNCg0K