DivestOS/Patches/Linux_CVEs/CVE-2017-0749/ANY/0.patch.base64
2017-10-29 22:14:37 -04:00

1 line
6.3 KiB
Plaintext

ZGlmZiAtLWdpdCBhL2tlcm5lbC90cmFjZS90cmFjZS5jIGIva2VybmVsL3RyYWNlL3RyYWNlLmMKaW5kZXggMzFjNDdkMC4uY2JlYWU1NyAxMDA2NDQKLS0tIGEva2VybmVsL3RyYWNlL3RyYWNlLmMKKysrIGIva2VybmVsL3RyYWNlL3RyYWNlLmMKQEAgLTEyODIsMTEgKzEyODIsMTEgQEAKIAogI2RlZmluZSBTQVZFRF9DTURMSU5FU19ERUZBVUxUIDEyOAogI2RlZmluZSBOT19DTURMSU5FX01BUCBVSU5UX01BWAotc3RhdGljIHVuc2lnbmVkIHNhdmVkX3RnaWRzW1NBVkVEX0NNRExJTkVTX0RFRkFVTFRdOwogc3RhdGljIGFyY2hfc3BpbmxvY2tfdCB0cmFjZV9jbWRsaW5lX2xvY2sgPSBfX0FSQ0hfU1BJTl9MT0NLX1VOTE9DS0VEOwogc3RydWN0IHNhdmVkX2NtZGxpbmVzX2J1ZmZlciB7CiAJdW5zaWduZWQgbWFwX3BpZF90b19jbWRsaW5lW1BJRF9NQVhfREVGQVVMVCsxXTsKIAl1bnNpZ25lZCAqbWFwX2NtZGxpbmVfdG9fcGlkOworCXVuc2lnbmVkICptYXBfY21kbGluZV90b190Z2lkOwogCXVuc2lnbmVkIGNtZGxpbmVfbnVtOwogCWludCBjbWRsaW5lX2lkeDsKIAljaGFyICpzYXZlZF9jbWRsaW5lczsKQEAgLTEzMjAsMTIgKzEzMjAsMjMgQEAKIAkJcmV0dXJuIC1FTk9NRU07CiAJfQogCisJcy0+bWFwX2NtZGxpbmVfdG9fdGdpZCA9IGttYWxsb2NfYXJyYXkodmFsLAorCQkJCQkgICAgICAgc2l6ZW9mKCpzLT5tYXBfY21kbGluZV90b190Z2lkKSwKKwkJCQkJICAgICAgIEdGUF9LRVJORUwpOworCWlmICghcy0+bWFwX2NtZGxpbmVfdG9fdGdpZCkgeworCQlrZnJlZShzLT5tYXBfY21kbGluZV90b19waWQpOworCQlrZnJlZShzLT5zYXZlZF9jbWRsaW5lcyk7CisJCXJldHVybiAtRU5PTUVNOworCX0KKwogCXMtPmNtZGxpbmVfaWR4ID0gMDsKIAlzLT5jbWRsaW5lX251bSA9IHZhbDsKIAltZW1zZXQoJnMtPm1hcF9waWRfdG9fY21kbGluZSwgTk9fQ01ETElORV9NQVAsCiAJICAgICAgIHNpemVvZihzLT5tYXBfcGlkX3RvX2NtZGxpbmUpKTsKIAltZW1zZXQocy0+bWFwX2NtZGxpbmVfdG9fcGlkLCBOT19DTURMSU5FX01BUCwKIAkgICAgICAgdmFsICogc2l6ZW9mKCpzLT5tYXBfY21kbGluZV90b19waWQpKTsKKwltZW1zZXQocy0+bWFwX2NtZGxpbmVfdG9fdGdpZCwgTk9fQ01ETElORV9NQVAsCisJICAgICAgIHZhbCAqIHNpemVvZigqcy0+bWFwX2NtZGxpbmVfdG9fdGdpZCkpOwogCiAJcmV0dXJuIDA7CiB9CkBAIC0xNDkxLDE0ICsxNTAyLDE3IEBACiAJaWYgKCF0c2stPnBpZCB8fCB1bmxpa2VseSh0c2stPnBpZCA+IFBJRF9NQVhfREVGQVVMVCkpCiAJCXJldHVybiAwOwogCisJcHJlZW1wdF9kaXNhYmxlKCk7CiAJLyoKIAkgKiBJdCdzIG5vdCB0aGUgZW5kIG9mIHRoZSB3b3JsZCBpZiB3ZSBkb24ndCBnZXQKIAkgKiB0aGUgbG9jaywgYnV0IHdlIGFsc28gZG9uJ3Qgd2FudCB0byBzcGluCiAJICogbm9yIGRvIHdlIHdhbnQgdG8gZGlzYWJsZSBpbnRlcnJ1cHRzLAogCSAqIHNvIGlmIHdlIG1pc3MgaGVyZSwgdGhlbiBiZXR0ZXIgbHVjayBuZXh0IHRpbWUuCiAJICovCi0JaWYgKCFhcmNoX3NwaW5fdHJ5bG9jaygmdHJhY2VfY21kbGluZV9sb2NrKSkKKwlpZiAoIWFyY2hfc3Bpbl90cnlsb2NrKCZ0cmFjZV9jbWRsaW5lX2xvY2spKSB7CisJCXByZWVtcHRfZW5hYmxlKCk7CiAJCXJldHVybiAwOworCX0KIAogCWlkeCA9IHNhdmVkY21kLT5tYXBfcGlkX3RvX2NtZGxpbmVbdHNrLT5waWRdOwogCWlmIChpZHggPT0gTk9fQ01ETElORV9NQVApIHsKQEAgLTE1MjEsOCArMTUzNSw5IEBACiAJfQogCiAJc2V0X2NtZGxpbmUoaWR4LCB0c2stPmNvbW0pOwotCXNhdmVkX3RnaWRzW2lkeF0gPSB0c2stPnRnaWQ7CisJc2F2ZWRjbWQtPm1hcF9jbWRsaW5lX3RvX3RnaWRbaWR4XSA9IHRzay0+dGdpZDsKIAlhcmNoX3NwaW5fdW5sb2NrKCZ0cmFjZV9jbWRsaW5lX2xvY2spOworCXByZWVtcHRfZW5hYmxlKCk7CiAKIAlyZXR1cm4gMTsKIH0KQEAgLTE1NjQsMTkgKzE1NzksMjkgQEAKIAlwcmVlbXB0X2VuYWJsZSgpOwogfQogCi1pbnQgdHJhY2VfZmluZF90Z2lkKGludCBwaWQpCitzdGF0aWMgaW50IF9fZmluZF90Z2lkX2xvY2tlZChpbnQgcGlkKQogewogCXVuc2lnbmVkIG1hcDsKIAlpbnQgdGdpZDsKIAotCXByZWVtcHRfZGlzYWJsZSgpOwotCWFyY2hfc3Bpbl9sb2NrKCZ0cmFjZV9jbWRsaW5lX2xvY2spOwogCW1hcCA9IHNhdmVkY21kLT5tYXBfcGlkX3RvX2NtZGxpbmVbcGlkXTsKIAlpZiAobWFwICE9IE5PX0NNRExJTkVfTUFQKQotCQl0Z2lkID0gc2F2ZWRfdGdpZHNbbWFwXTsKKwkJdGdpZCA9IHNhdmVkY21kLT5tYXBfY21kbGluZV90b190Z2lkW21hcF07CiAJZWxzZQogCQl0Z2lkID0gLTE7CiAKKwlyZXR1cm4gdGdpZDsKK30KKworaW50IHRyYWNlX2ZpbmRfdGdpZChpbnQgcGlkKQoreworCWludCB0Z2lkOworCisJcHJlZW1wdF9kaXNhYmxlKCk7CisJYXJjaF9zcGluX2xvY2soJnRyYWNlX2NtZGxpbmVfbG9jayk7CisKKwl0Z2lkID0gX19maW5kX3RnaWRfbG9ja2VkKHBpZCk7CisKIAlhcmNoX3NwaW5fdW5sb2NrKCZ0cmFjZV9jbWRsaW5lX2xvY2spOwogCXByZWVtcHRfZW5hYmxlKCk7CiAKQEAgLTM4NzcsMTAgKzM5MDIsMTUgQEAKIHsKIAljaGFyIGJ1Zls2NF07CiAJaW50IHI7CisJdW5zaWduZWQgaW50IG47CiAKKwlwcmVlbXB0X2Rpc2FibGUoKTsKIAlhcmNoX3NwaW5fbG9jaygmdHJhY2VfY21kbGluZV9sb2NrKTsKLQlyID0gc2NucHJpbnRmKGJ1Ziwgc2l6ZW9mKGJ1ZiksICIldVxuIiwgc2F2ZWRjbWQtPmNtZGxpbmVfbnVtKTsKKwluID0gc2F2ZWRjbWQtPmNtZGxpbmVfbnVtOwogCWFyY2hfc3Bpbl91bmxvY2soJnRyYWNlX2NtZGxpbmVfbG9jayk7CisJcHJlZW1wdF9lbmFibGUoKTsKKworCXIgPSBzY25wcmludGYoYnVmLCBzaXplb2YoYnVmKSwgIiV1XG4iLCBuKTsKIAogCXJldHVybiBzaW1wbGVfcmVhZF9mcm9tX2J1ZmZlcih1YnVmLCBjbnQsIHBwb3MsIGJ1Ziwgcik7CiB9CkBAIC0zODg5LDYgKzM5MTksNyBAQAogewogCWtmcmVlKHMtPnNhdmVkX2NtZGxpbmVzKTsKIAlrZnJlZShzLT5tYXBfY21kbGluZV90b19waWQpOworCWtmcmVlKHMtPm1hcF9jbWRsaW5lX3RvX3RnaWQpOwogCWtmcmVlKHMpOwogfQogCkBAIC0zOTA1LDEwICszOTM2LDEyIEBACiAJCXJldHVybiAtRU5PTUVNOwogCX0KIAorCXByZWVtcHRfZGlzYWJsZSgpOwogCWFyY2hfc3Bpbl9sb2NrKCZ0cmFjZV9jbWRsaW5lX2xvY2spOwogCXNhdmVkY21kX3RlbXAgPSBzYXZlZGNtZDsKIAlzYXZlZGNtZCA9IHM7CiAJYXJjaF9zcGluX3VubG9jaygmdHJhY2VfY21kbGluZV9sb2NrKTsKKwlwcmVlbXB0X2VuYWJsZSgpOwogCWZyZWVfc2F2ZWRfY21kbGluZXNfYnVmZmVyKHNhdmVkY21kX3RlbXApOwogCiAJcmV0dXJuIDA7CkBAIC0zOTUxLDMzICszOTg0LDYxIEBACiAJY2hhciAqZmlsZV9idWY7CiAJY2hhciAqYnVmOwogCWludCBsZW4gPSAwOwotCWludCBwaWQ7CiAJaW50IGk7CisJaW50ICpwaWRzOworCWludCBuID0gMDsKIAotCWZpbGVfYnVmID0ga21hbGxvYyhTQVZFRF9DTURMSU5FU19ERUZBVUxUKigxNisxKzE2KSwgR0ZQX0tFUk5FTCk7Ci0JaWYgKCFmaWxlX2J1ZikKKwlwcmVlbXB0X2Rpc2FibGUoKTsKKwlhcmNoX3NwaW5fbG9jaygmdHJhY2VfY21kbGluZV9sb2NrKTsKKworCXBpZHMgPSBrbWFsbG9jX2FycmF5KHNhdmVkY21kLT5jbWRsaW5lX251bSwgMipzaXplb2YoaW50KSwgR0ZQX0tFUk5FTCk7CisJaWYgKCFwaWRzKSB7CisJCWFyY2hfc3Bpbl91bmxvY2soJnRyYWNlX2NtZGxpbmVfbG9jayk7CisJCXByZWVtcHRfZW5hYmxlKCk7CiAJCXJldHVybiAtRU5PTUVNOworCX0KIAotCWJ1ZiA9IGZpbGVfYnVmOwotCi0JZm9yIChpID0gMDsgaSA8IFNBVkVEX0NNRExJTkVTX0RFRkFVTFQ7IGkrKykgewotCQlpbnQgdGdpZDsKLQkJaW50IHI7CisJZm9yIChpID0gMDsgaSA8IHNhdmVkY21kLT5jbWRsaW5lX251bTsgaSsrKSB7CisJCWludCBwaWQ7CiAKIAkJcGlkID0gc2F2ZWRjbWQtPm1hcF9jbWRsaW5lX3RvX3BpZFtpXTsKIAkJaWYgKHBpZCA9PSAtMSB8fCBwaWQgPT0gTk9fQ01ETElORV9NQVApCiAJCQljb250aW51ZTsKIAotCQl0Z2lkID0gdHJhY2VfZmluZF90Z2lkKHBpZCk7Ci0JCXIgPSBzcHJpbnRmKGJ1ZiwgIiVkICVkXG4iLCBwaWQsIHRnaWQpOworCQlwaWRzW25dID0gcGlkOworCQlwaWRzW24rMV0gPSBfX2ZpbmRfdGdpZF9sb2NrZWQocGlkKTsKKwkJbiArPSAyOworCX0KKwlhcmNoX3NwaW5fdW5sb2NrKCZ0cmFjZV9jbWRsaW5lX2xvY2spOworCXByZWVtcHRfZW5hYmxlKCk7CisKKwlpZiAobiA9PSAwKSB7CisJCWtmcmVlKHBpZHMpOworCQlyZXR1cm4gMDsKKwl9CisKKwkvKiBlbm91Z2ggdG8gaG9sZCBtYXggcGFpciBvZiBwaWRzICsgc3BhY2UsIGxyIGFuZCBudWwgKi8KKwlsZW4gPSBuICogMTI7CisJZmlsZV9idWYgPSBrbWFsbG9jKGxlbiwgR0ZQX0tFUk5FTCk7CisJaWYgKCFmaWxlX2J1ZikgeworCQlrZnJlZShwaWRzKTsKKwkJcmV0dXJuIC1FTk9NRU07CisJfQorCisJYnVmID0gZmlsZV9idWY7CisJZm9yIChpID0gMDsgaSA8IG4gJiYgbGVuID4gMDsgaSArPSAyKSB7CisJCWludCByOworCisJCXIgPSBzbnByaW50ZihidWYsIGxlbiwgIiVkICVkXG4iLCBwaWRzW2ldLCBwaWRzW2krMV0pOwogCQlidWYgKz0gcjsKLQkJbGVuICs9IHI7CisJCWxlbiAtPSByOwogCX0KIAogCWxlbiA9IHNpbXBsZV9yZWFkX2Zyb21fYnVmZmVyKHVidWYsIGNudCwgcHBvcywKLQkJCQkgICAgICBmaWxlX2J1ZiwgbGVuKTsKKwkJCQkgICAgICBmaWxlX2J1ZiwgYnVmIC0gZmlsZV9idWYpOwogCiAJa2ZyZWUoZmlsZV9idWYpOworCWtmcmVlKHBpZHMpOwogCiAJcmV0dXJuIGxlbjsKIH0K