Name: series-workflowdqlkf Phase: Succeeded StartedAt: 2026-06-24 11:01:02 +0000 UTC FinishedAt: 2026-06-24 15:24:41 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[0] Phase: Succeeded StartedAt: 2026-06-24 11:01:02 +0000 UTC FinishedAt: 2026-06-24 11:16:05 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[0].run-triage Phase: Succeeded StartedAt: 2026-06-24 11:01:02 +0000 UTC FinishedAt: 2026-06-24 11:16:05 +0000 UTC Input: nil Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "skip_reason": "", "targets": [ { "base": { "arch": "amd64", "tree_name": "net", "tree_url": "https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git", "commit_hash": "89adcf17ee7a2b7bee584c9c69382118f23dce72", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "IPV6" ], "series_id": "" }, "patched": { "arch": "amd64", "tree_name": "net", "tree_url": "https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git", "commit_hash": "89adcf17ee7a2b7bee584c9c69382118f23dce72", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "IPV6" ], "series_id": "6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26" }, "track": "KASAN", "fuzz": { "focus": [ "net" ], "focus_symbols": [ "addrconf_sysctl_forward", "addrconf_sysctl_disable", "addrconf_sysctl_proxy_ndp", "addrconf_sysctl_ignore_routes_with_linkdown", "addrconf_sysctl_disable_policy" ], "corpus_urls": [ "https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db" ], "skip_cover_check": false, "bug_title_re": "" }, "retest": null } ], "trajectory": "CjwhZG9jdHlwZSBodG1sPgo8aHRtbD4KPGhlYWQ+Cgk8dGl0bGU+QUkgVHJhamVjdG9yeTwvdGl0bGU+Cgk8c3R5bGU+CgkJdGFibGUgewoJCQlib3JkZXI6IDFweCBzb2xpZCAjY2NjOwoJCQltYXJnaW46IDIwcHggNXB4OwoJCQlib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOwoJCQl3aGl0ZS1zcGFjZTogbm93cmFwOwoJCQl0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKCQkJb3ZlcmZsb3c6IGhpZGRlbjsKCQl9CgoJCXRhYmxlIGNhcHRpb24gewoJCQlmb250LXdlaWdodDogYm9sZDsKCQl9CgoJCXRhYmxlIHRkLCB0YWJsZSB0aCB7CgkJCXZlcnRpY2FsLWFsaWduOiB0b3A7CgkJCXBhZGRpbmc6IDJweCA4cHg7CgkJCXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwoJCQlvdmVyZmxvdzogaGlkZGVuOwoJCX0KCgkJLmxpc3RfdGFibGUgdGQsIC5saXN0X3RhYmxlIHRoIHsKCQkJYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjOwoJCX0KCgkJLmxpc3RfdGFibGUgdGggewoJCQliYWNrZ3JvdW5kOiAjRjRGNEY0OwoJCX0KCgkJLmxpc3RfdGFibGUgdHI6bnRoLWNoaWxkKDJuKSB7CgkJCWJhY2tncm91bmQ6ICNGNEY0RjQ7CgkJfQoKCQkubGlzdF90YWJsZSB0cjpob3ZlciB7CgkJCWJhY2tncm91bmQ6ICNmZmZmOTk7CgkJfQoKCQkjYWlfZGV0YWlsc19kaXYgcHJlIHsKCQkJbWFyZ2luOiAxcHg7CgkJCW1heC13aWR0aDogMTIwY2g7CgkJCXdoaXRlLXNwYWNlOiBwcmUtd3JhcDsKCQkJb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDsKCQl9Cgk8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5PgoJPGgxPkFJIFRyYWplY3Rvcnk8L2gxPgoJPGJyPgoKCQoJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQk8Y2FwdGlvbj5UcmFqZWN0b3J5OiAoPGEgaHJlZj0iIyIgb25jbGljaz0idG9nZ2xlQWxsRGV0YWlscygpOyByZXR1cm4gZmFsc2U7Ij5FeHBhbmQvQ29sbGFwc2UgQWxsPC9hPik8L2NhcHRpb24+CgkJPHRoZWFkPjx0cj4KCQkJPHRoPlNlcTwvdGg+CgkJCTx0aD5UaW1lc3RhbXA8L3RoPgoJCQk8dGg+VHlwZTwvdGg+CgkJCTx0aD5OYW1lPC90aD4KCQkJPHRoPkR1cmF0aW9uPC90aD4KCQk8L3RyPjwvdGhlYWQ+CgkJPHRib2R5PgoJCQoJCTx0cj4KCQkJPHRkPjAvMDwvdGQ+CgkJCTx0ZD4yMDI2LzA2LzI0IDExOjE1PC90ZD4KCQkJPHRkPmZsb3c8L3RkPgoJCQk8dGQ+cGF0Y2gtdHJpYWdlPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RW5hYmxlQ29uZmlncyYjMzQ7OiBbCiAgICAmIzM0O0lQVjYmIzM0OwogIF0sCiAgJiMzNDtGb2N1c1N5bWJvbHMmIzM0OzogWwogICAgJiMzNDthZGRyY29uZl9zeXNjdGxfZm9yd2FyZCYjMzQ7LAogICAgJiMzNDthZGRyY29uZl9zeXNjdGxfZGlzYWJsZSYjMzQ7LAogICAgJiMzNDthZGRyY29uZl9zeXNjdGxfcHJveHlfbmRwJiMzNDssCiAgICAmIzM0O2FkZHJjb25mX3N5c2N0bF9pZ25vcmVfcm91dGVzX3dpdGhfbGlua2Rvd24mIzM0OywKICAgICYjMzQ7YWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVfcG9saWN5JiMzNDsKICBdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIGZpeGVzIHNldmVyYWwgSVB2NiBzeXNjdGwgaGFuZGxlcnMsIGluY2x1ZGluZyByZXR1cm4gdmFsdWVzLCBsb2NraW5nLCBhbmQgbWlzc2luZyBuZXRsaW5rIG5vdGlmaWNhdGlvbnMuIEZ1enppbmcgdGhlc2Ugc3lzY3RsIGhhbmRsZXJzIGNhbiBoZWxwIGVuc3VyZSB0aGUgZml4ZXMgYXJlIGNvcnJlY3QgYW5kIGRvbiYjMzk7dCBpbnRyb2R1Y2UgcmVncmVzc2lvbnMuJiMzNDssCiAgJiMzNDtXb3J0aEZ1enppbmcmIzM0OzogdHJ1ZQp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MS8xPC90ZD4KCQkJPHRkPjIwMjYvMDYvMjQgMTE6MTU8L3RkPgoJCQk8dGQ+YWN0aW9uPC90ZD4KCQkJPHRkPnJlYWQtcGF0Y2gtZGlmZjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O1BhdGNoRGlmZiYjMzQ7OiAmIzM0O2NvbW1pdCAwOThjYTIwMDAyMTM3YjllNmRiNTNiYjI4ODRmNmNmNWZiOTUzZDYxXG5BdXRob3I6IHN5ei1jbHVzdGVyIFx1MDAzY3RyaWFnZUBzeXprYWxsZXIuY29tXHUwMDNlXG5EYXRlOiAgIFdlZCBKdW4gMjQgMTE6MTU6MzUgMjAyNiAmIzQzOzAwMDBcblxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xuXG5kaWZmIC0tZ2l0IGEvbmV0L2lwdjYvYWRkcmNvbmYuYyBiL25ldC9pcHY2L2FkZHJjb25mLmNcbmluZGV4IDFmMjFjY2I1NWNhYTUwLi5jYmU2ODFkZTM4MTg4MiAxMDA2NDRcbi0tLSBhL25ldC9pcHY2L2FkZHJjb25mLmNcbiYjNDM7JiM0MzsmIzQzOyBiL25ldC9pcHY2L2FkZHJjb25mLmNcbkBAIC05MTMsNyAmIzQzOzkxMyw3IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfZml4dXBfZm9yd2FyZGluZyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50ICpwLCBpbnRcbiBcbiBcdGlmIChuZXdmKVxuIFx0XHRydDZfcHVyZ2VfZGZsdF9yb3V0ZXJzKG5ldCk7XG4tXHRyZXR1cm4gMTtcbiYjNDM7XHRyZXR1cm4gMDtcbiB9XG4gXG4gc3RhdGljIHZvaWQgYWRkcmNvbmZfbGlua2Rvd25fY2hhbmdlKHN0cnVjdCBuZXQgKm5ldCwgX19zMzIgbmV3ZilcbkBAIC05NTUsMTEgJiM0Mzs5NTUsNyBAQCBzdGF0aWMgaW50IGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgKnAsIGludCBuZVxuIFx0XHRcdFx0XHRcdCAgICAgTkVUQ09ORkFfSUdOT1JFX1JPVVRFU19XSVRIX0xJTktET1dOLFxuIFx0XHRcdFx0XHRcdCAgICAgTkVUQ09ORkFfSUZJTkRFWF9ERUZBVUxULFxuIFx0XHRcdFx0XHRcdCAgICAgbmV0LVx1MDAzZWlwdjYuZGV2Y29uZl9kZmx0KTtcbi1cdFx0cnRubF9uZXRfdW5sb2NrKG5ldCk7XG4tXHRcdHJldHVybiAwO1xuLVx0fVxuLVxuLVx0aWYgKHAgPT0gXHUwMDI2bmV0LVx1MDAzZWlwdjYuZGV2Y29uZl9hbGwtXHUwMDNlaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duKSB7XG4mIzQzO1x0fSBlbHNlIGlmIChwID09IFx1MDAyNm5ldC1cdTAwM2VpcHY2LmRldmNvbmZfYWxsLVx1MDAzZWlnbm9yZV9yb3V0ZXNfd2l0aF9saW5rZG93bikge1xuIFx0XHRXUklURV9PTkNFKG5ldC1cdTAwM2VpcHY2LmRldmNvbmZfZGZsdC1cdTAwM2VpZ25vcmVfcm91dGVzX3dpdGhfbGlua2Rvd24sIG5ld2YpO1xuIFx0XHRhZGRyY29uZl9saW5rZG93bl9jaGFuZ2UobmV0LCBuZXdmKTtcbiBcdFx0aWYgKCghbmV3ZikgXiAoIW9sZCkpXG5AQCAtOTY4LDExICYjNDM7OTY0LDIxIEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfZml4dXBfbGlua2Rvd24oY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCAqcCwgaW50IG5lXG4gXHRcdFx0XHRcdFx0ICAgICBORVRDT05GQV9JR05PUkVfUk9VVEVTX1dJVEhfTElOS0RPV04sXG4gXHRcdFx0XHRcdFx0ICAgICBORVRDT05GQV9JRklOREVYX0FMTCxcbiBcdFx0XHRcdFx0XHQgICAgIG5ldC1cdTAwM2VpcHY2LmRldmNvbmZfYWxsKTtcbiYjNDM7XHR9IGVsc2Uge1xuJiM0MztcdFx0aWYgKCFuZXdmIF4gIW9sZCkge1xuJiM0MztcdFx0XHRzdHJ1Y3QgaW5ldDZfZGV2ICppZGV2ID0gdGFibGUtXHUwMDNlZXh0cmExO1xuJiM0MztcbiYjNDM7XHRcdFx0aW5ldDZfbmV0Y29uZl9ub3RpZnlfZGV2Y29uZihuZXQsXG4mIzQzO1x0XHRcdFx0XHRcdCAgICAgUlRNX05FV05FVENPTkYsXG4mIzQzO1x0XHRcdFx0XHRcdCAgICAgTkVUQ09ORkFfSUdOT1JFX1JPVVRFU19XSVRIX0xJTktET1dOLFxuJiM0MztcdFx0XHRcdFx0XHQgICAgIGlkZXYtXHUwMDNlZGV2LVx1MDAzZWlmaW5kZXgsXG4mIzQzO1x0XHRcdFx0XHRcdCAgICAgXHUwMDI2aWRldi1cdTAwM2VjbmYpO1xuJiM0MztcdFx0fVxuIFx0fVxuIFxuIFx0cnRubF9uZXRfdW5sb2NrKG5ldCk7XG4gXG4tXHRyZXR1cm4gMTtcbiYjNDM7XHRyZXR1cm4gMDtcbiB9XG4gXG4gI2VuZGlmXG5AQCAtNjM3MCw2ICYjNDM7NjM3Niw4IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2ZvcndhcmQoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsXG4gXHRsY3RsLmRhdGEgPSBcdTAwMjZ2YWw7XG4gXG4gXHRyZXQgPSBwcm9jX2RvaW50dmVjKFx1MDAyNmxjdGwsIHdyaXRlLCBidWZmZXIsIGxlbnAsIHBwb3MpO1xuJiM0MztcdGlmIChyZXQpXG4mIzQzO1x0XHRyZXR1cm4gcmV0O1xuIFxuIFx0aWYgKHdyaXRlKVxuIFx0XHRyZXQgPSBhZGRyY29uZl9maXh1cF9mb3J3YXJkaW5nKGN0bCwgdmFscCwgdmFsKTtcbkBAIC02NDY3LDYgJiM0Mzs2NDc1LDggQEAgc3RhdGljIGludCBhZGRyY29uZl9zeXNjdGxfZGlzYWJsZShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSxcbiBcdGxjdGwuZGF0YSA9IFx1MDAyNnZhbDtcbiBcbiBcdHJldCA9IHByb2NfZG9pbnR2ZWMoXHUwMDI2bGN0bCwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcyk7XG4mIzQzO1x0aWYgKHJldClcbiYjNDM7XHRcdHJldHVybiByZXQ7XG4gXG4gXHRpZiAod3JpdGUpXG4gXHRcdHJldCA9IGFkZHJjb25mX2Rpc2FibGVfaXB2NihjdGwsIHZhbHAsIHZhbCk7XG5AQCAtNjQ3OCwyMCAmIzQzOzY0ODgsMTkgQEAgc3RhdGljIGludCBhZGRyY29uZl9zeXNjdGxfZGlzYWJsZShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSxcbiBzdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9wcm94eV9uZHAoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsXG4gXHRcdHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpXG4ge1xuJiM0MztcdHN0cnVjdCBuZXQgKm5ldCA9IGN0bC1cdTAwM2VleHRyYTI7XG4gXHRpbnQgKnZhbHAgPSBjdGwtXHUwMDNlZGF0YTtcbi1cdGludCByZXQ7XG4gXHRpbnQgb2xkLCBuZXc7XG4mIzQzO1x0aW50IHJldDtcbiYjNDM7XG4mIzQzO1x0aWYgKHdyaXRlIFx1MDAyNlx1MDAyNiAhcnRubF9uZXRfdHJ5bG9jayhuZXQpKVxuJiM0MztcdFx0cmV0dXJuIHJlc3RhcnRfc3lzY2FsbCgpO1xuIFxuIFx0b2xkID0gKnZhbHA7XG4gXHRyZXQgPSBwcm9jX2RvaW50dmVjKGN0bCwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcyk7XG4gXHRuZXcgPSAqdmFscDtcbiBcbiBcdGlmICh3cml0ZSBcdTAwMjZcdTAwMjYgb2xkICE9IG5ldykge1xuLVx0XHRzdHJ1Y3QgbmV0ICpuZXQgPSBjdGwtXHUwMDNlZXh0cmEyO1xuLVxuLVx0XHRpZiAoIXJ0bmxfbmV0X3RyeWxvY2sobmV0KSlcbi1cdFx0XHRyZXR1cm4gcmVzdGFydF9zeXNjYWxsKCk7XG4tXG4gXHRcdGlmICh2YWxwID09IFx1MDAyNm5ldC1cdTAwM2VpcHY2LmRldmNvbmZfZGZsdC1cdTAwM2Vwcm94eV9uZHApIHtcbiBcdFx0XHRpbmV0Nl9uZXRjb25mX25vdGlmeV9kZXZjb25mKG5ldCwgUlRNX05FV05FVENPTkYsXG4gXHRcdFx0XHRcdFx0ICAgICBORVRDT05GQV9QUk9YWV9ORUlHSCxcbkBAIC02NTEwLDggJiM0Mzs2NTE5LDkgQEAgc3RhdGljIGludCBhZGRyY29uZl9zeXNjdGxfcHJveHlfbmRwKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLFxuIFx0XHRcdFx0XHRcdCAgICAgaWRldi1cdTAwM2VkZXYtXHUwMDNlaWZpbmRleCxcbiBcdFx0XHRcdFx0XHQgICAgIFx1MDAyNmlkZXYtXHUwMDNlY25mKTtcbiBcdFx0fVxuLVx0XHRydG5sX25ldF91bmxvY2sobmV0KTtcbiBcdH1cbiYjNDM7XHRpZiAod3JpdGUpXG4mIzQzO1x0XHRydG5sX25ldF91bmxvY2sobmV0KTtcbiBcbiBcdHJldHVybiByZXQ7XG4gfVxuQEAgLTY2NjksNiAmIzQzOzY2NzksOCBAQCBpbnQgYWRkcmNvbmZfc3lzY3RsX2lnbm9yZV9yb3V0ZXNfd2l0aF9saW5rZG93bihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsXG4gXHRsY3RsLmRhdGEgPSBcdTAwMjZ2YWw7XG4gXG4gXHRyZXQgPSBwcm9jX2RvaW50dmVjKFx1MDAyNmxjdGwsIHdyaXRlLCBidWZmZXIsIGxlbnAsIHBwb3MpO1xuJiM0MztcdGlmIChyZXQpXG4mIzQzO1x0XHRyZXR1cm4gcmV0O1xuIFxuIFx0aWYgKHdyaXRlKVxuIFx0XHRyZXQgPSBhZGRyY29uZl9maXh1cF9saW5rZG93bihjdGwsIHZhbHAsIHZhbCk7XG5AQCAtNjc2Myw2ICYjNDM7Njc3NSw4IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVfcG9saWN5KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlXG4gXHRsY3RsID0gKmN0bDtcbiBcdGxjdGwuZGF0YSA9IFx1MDAyNnZhbDtcbiBcdHJldCA9IHByb2NfZG9pbnR2ZWMoXHUwMDI2bGN0bCwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcyk7XG4mIzQzO1x0aWYgKHJldClcbiYjNDM7XHRcdHJldHVybiByZXQ7XG4gXG4gXHRpZiAod3JpdGUgXHUwMDI2XHUwMDI2ICgqdmFscCAhPSB2YWwpKVxuIFx0XHRyZXQgPSBhZGRyY29uZl9kaXNhYmxlX3BvbGljeShjdGwsIHZhbHAsIHZhbCk7XG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+Mi8xPC90ZD4KCQkJPHRkPjIwMjYvMDYvMjQgMTE6MTU8L3RkPgoJCQk8dGQ+YWdlbnQ8L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFbmFibGVDb25maWdzJiMzNDs6IFsKICAgICYjMzQ7SVBWNiYjMzQ7CiAgXSwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbCiAgICAmIzM0O2FkZHJjb25mX3N5c2N0bF9mb3J3YXJkJiMzNDssCiAgICAmIzM0O2FkZHJjb25mX3N5c2N0bF9kaXNhYmxlJiMzNDssCiAgICAmIzM0O2FkZHJjb25mX3N5c2N0bF9wcm94eV9uZHAmIzM0OywKICAgICYjMzQ7YWRkcmNvbmZfc3lzY3RsX2lnbm9yZV9yb3V0ZXNfd2l0aF9saW5rZG93biYjMzQ7LAogICAgJiMzNDthZGRyY29uZl9zeXNjdGxfZGlzYWJsZV9wb2xpY3kmIzM0OwogIF0sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggZml4ZXMgc2V2ZXJhbCBJUHY2IHN5c2N0bCBoYW5kbGVycywgaW5jbHVkaW5nIHJldHVybiB2YWx1ZXMsIGxvY2tpbmcsIGFuZCBtaXNzaW5nIG5ldGxpbmsgbm90aWZpY2F0aW9ucy4gRnV6emluZyB0aGVzZSBzeXNjdGwgaGFuZGxlcnMgY2FuIGhlbHAgZW5zdXJlIHRoZSBmaXhlcyBhcmUgY29ycmVjdCBhbmQgZG9uJiMzOTt0IGludHJvZHVjZSByZWdyZXNzaW9ucy4mIzM0OywKICAmIzM0O1dvcnRoRnV6emluZyYjMzQ7OiB0cnVlCn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPkluc3RydWN0aW9uOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+WW91IGFyZSBhbiBleHBlcnQgTGludXgga2VybmVsIG1haW50YWluZXIuCllvdXIgam9iIGlzIHRvIHJldmlldyBhIHByb3ZpZGVkIHBhdGNoIHNlcmllcyBhbmQgZGV0ZXJtaW5lCmlmIGl0IG1ha2VzIGZ1bmN0aW9uYWwgY2hhbmdlcyB0byB0aGUga2VybmVsIHRoYXQgc2hvdWxkIGJlIGZ1enplZC4KCklNUE9SVEFOVDogVGhlIGNoYW5nZXMgaGF2ZSBBTFJFQURZIGJlZW4gYXBwbGllZCBhbmQgY29tbWl0dGVkIGFzIHRoZSBIRUFEIGNvbW1pdCBpbgp5b3VyIHdvcmtzcGFjZS4gRG8gTk9UIHJlbHkgb24geW91ciBpbnRlcm5hbCBrbm93bGVkZ2Ugb2YgdGhlIGtlcm5lbC4gWW91IG11c3QgYWN0aXZlbHkKdXNlIHlvdXIgY29kZSBhY2Nlc3MgdG9vbHMgdG8gZXhhbWluZSB0aGUgYWN0dWFsIHNvdXJjZSBjb2RlIGFuZCBjb25maXJtIGFueSBhc3N1bXB0aW9ucy4KClJldHVybiBXb3J0aEZ1enppbmc9ZmFsc2UgaWYgdGhlIHBhdGNoIG9ubHkgY29udGFpbnM6Ci0gTW9kaWZpY2F0aW9ucyB0byBEb2N1bWVudGF0aW9uLywgS2NvbmZpZyBmaWxlcywgb3IgY29kZSBjb21tZW50cy4KLSBQdXJlbHkgZGVjb3JhdGl2ZSBjaGFuZ2VzLCBzdWNoIGFzIGxvZ2dpbmcgKGUuZy4sIHByX2VyciwgcHJpbnRrKSBvciB0cmFjZXBvaW50cy4KLSBDaGFuZ2VzIHRvIG51bWVyaWMgY29uc3RhbnRzIG9yIG1hY3JvcyB0aGF0IGRvIG5vdCBmdW5jdGlvbmFsbHkgYWx0ZXIgZXhlY3V0aW9uIGZsb3cuCi0gQ29kZSBwYXRocyB0aGF0IGFyZSBpbXBvc3NpYmxlIHRvIHJlYWNoIGluIHZpcnR1YWxpemVkIGVudmlyb25tZW50cyBsaWtlIEdDRSBvciBRRU1VLApldmVuIHdoZW4gdXRpbGl6aW5nIHNvZnR3YXJlLWVtdWxhdGVkIGhhcmR3YXJlIChlLmcuLCB1c2IgZ2FkZ2V0LCBtYWM4MDIxMV9od3NpbSkuCgpJZiBpdCBtb2RpZmllcyByZWFjaGFibGUgY29yZSBrZXJuZWwgbG9naWMsIGRyaXZlcnMsIG9yIGFyY2hpdGVjdHVyZXMsIHVzZSB5b3VyIGNvZGUgc2VhcmNoCnRvb2xzIHRvIHZlcmlmeSB0aGUgY29kZSBjYW4gYmUgZXhlY3V0ZWQsIHRoZW4gcmV0dXJuIFdvcnRoRnV6emluZz10cnVlLgoKV2hlbiByZXR1cm5pbmcgV29ydGhGdXp6aW5nPXRydWUsIHlvdSBNVVNUIEFMU086CjEuIEV4dHJhY3QgYW55IHNwZWNpZmljIGtlcm5lbCBmdW5jdGlvbnMgdGhhdCBzaG91bGQgYmUgaGVhdmlseSBmdXp6ZWQgaW50byBGb2N1c1N5bWJvbHMuCiAgIEF2b2lkIGxpc3RpbmcgZ2VuZXJpYyBob3QtcGF0aCBmdW5jdGlvbnMgdG8gcHJldmVudCBza2V3ZWQgdGVzdCBkaXN0cmlidXRpb25zLgoyLiBJZGVudGlmeSBhbnkgc3BlY2lmaWMgQ09ORklHXyBvcHRpb25zIHJlcXVpcmVkIHRvIHByb3Blcmx5IHRlc3QgdGhpcyBuZXcvbW9kaWZpZWQgZmVhdHVyZS4KICAgR28gYW5kIGxvb2sgaW50byB0aGUgS2NvbmZpZyBmaWxlcyBhbmQgY2hlY2sgZm9yIGlmZGVmcyBhcm91bmQgdGhlIGNvZGUsIGRvIG5vdCBtYWtlIGFzc3VtcHRpb25zLgogICBEbyBub3QgbGlzdCB0b28gZ2VuZXJpYyBjb25maWdzICh3ZSBhbHJlYWR5IGhhdmUgdGhlbSBlbmFibGVkKS4gT25seSBsaXN0IHRob3NlIHRoYXQKICAgc3BlY2lmaWNhbGx5IGNvdmVyIHRoZSBtb2RpZmllZCBjb2RlLiBMaXN0IHRoZW0gaW4gdGhlIEVuYWJsZUNvbmZpZ3Mgb3V0cHV0IGFycmF5LAogICBhbmQgRE8gTk9UIGFkZCBhICYjMzk7Q09ORklHXyYjMzk7IHByZWZpeCAoZS5nLiwgcmV0dXJuICYjMzQ7TkVUX0lQVjQmIzM0OyBpbnN0ZWFkIG9mICYjMzQ7Q09ORklHX05FVF9JUFY0JiMzNDspLgpQcmVmZXIgY2FsbGluZyBzZXZlcmFsIHRvb2xzIGF0IHRoZSBzYW1lIHRpbWUgdG8gc2F2ZSByb3VuZC10cmlwcy4KCgpVc2Ugc2V0LXJlc3VsdHMgdG9vbCB0byBwcm92aWRlIHJlc3VsdHMgb2YgdGhlIGFuYWx5c2lzLgpJdCBtdXN0IGJlIGNhbGxlZCBleGFjdGx5IG9uY2UgYmVmb3JlIHRoZSBmaW5hbCByZXBseS4KSWdub3JlIHJlc3VsdHMgb2YgdGhpcyB0b29sLgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlByb21wdDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPkZvciB5b3VyIGNvbnZlbmllbmNlLCBoZXJlIGlzIHRoZSBkaWZmIG9mIHRoZSBjaGFuZ2VzOgpjb21taXQgMDk4Y2EyMDAwMjEzN2I5ZTZkYjUzYmIyODg0ZjZjZjVmYjk1M2Q2MQpBdXRob3I6IHN5ei1jbHVzdGVyICZsdDt0cmlhZ2VAc3l6a2FsbGVyLmNvbSZndDsKRGF0ZTogICBXZWQgSnVuIDI0IDExOjE1OjM1IDIwMjYgJiM0MzswMDAwCgogICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3CgpkaWZmIC0tZ2l0IGEvbmV0L2lwdjYvYWRkcmNvbmYuYyBiL25ldC9pcHY2L2FkZHJjb25mLmMKaW5kZXggMWYyMWNjYjU1Y2FhNTAuLmNiZTY4MWRlMzgxODgyIDEwMDY0NAotLS0gYS9uZXQvaXB2Ni9hZGRyY29uZi5jCiYjNDM7JiM0MzsmIzQzOyBiL25ldC9pcHY2L2FkZHJjb25mLmMKQEAgLTkxMyw3ICYjNDM7OTEzLDcgQEAgc3RhdGljIGludCBhZGRyY29uZl9maXh1cF9mb3J3YXJkaW5nKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgKnAsIGludAogCiAJaWYgKG5ld2YpCiAJCXJ0Nl9wdXJnZV9kZmx0X3JvdXRlcnMobmV0KTsKLQlyZXR1cm4gMTsKJiM0MzsJcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyB2b2lkIGFkZHJjb25mX2xpbmtkb3duX2NoYW5nZShzdHJ1Y3QgbmV0ICpuZXQsIF9fczMyIG5ld2YpCkBAIC05NTUsMTEgJiM0Mzs5NTUsNyBAQCBzdGF0aWMgaW50IGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgKnAsIGludCBuZQogCQkJCQkJICAgICBORVRDT05GQV9JR05PUkVfUk9VVEVTX1dJVEhfTElOS0RPV04sCiAJCQkJCQkgICAgIE5FVENPTkZBX0lGSU5ERVhfREVGQVVMVCwKIAkJCQkJCSAgICAgbmV0LSZndDtpcHY2LmRldmNvbmZfZGZsdCk7Ci0JCXJ0bmxfbmV0X3VubG9jayhuZXQpOwotCQlyZXR1cm4gMDsKLQl9Ci0KLQlpZiAocCA9PSAmYW1wO25ldC0mZ3Q7aXB2Ni5kZXZjb25mX2FsbC0mZ3Q7aWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duKSB7CiYjNDM7CX0gZWxzZSBpZiAocCA9PSAmYW1wO25ldC0mZ3Q7aXB2Ni5kZXZjb25mX2FsbC0mZ3Q7aWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duKSB7CiAJCVdSSVRFX09OQ0UobmV0LSZndDtpcHY2LmRldmNvbmZfZGZsdC0mZ3Q7aWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duLCBuZXdmKTsKIAkJYWRkcmNvbmZfbGlua2Rvd25fY2hhbmdlKG5ldCwgbmV3Zik7CiAJCWlmICgoIW5ld2YpIF4gKCFvbGQpKQpAQCAtOTY4LDExICYjNDM7OTY0LDIxIEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfZml4dXBfbGlua2Rvd24oY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCAqcCwgaW50IG5lCiAJCQkJCQkgICAgIE5FVENPTkZBX0lHTk9SRV9ST1VURVNfV0lUSF9MSU5LRE9XTiwKIAkJCQkJCSAgICAgTkVUQ09ORkFfSUZJTkRFWF9BTEwsCiAJCQkJCQkgICAgIG5ldC0mZ3Q7aXB2Ni5kZXZjb25mX2FsbCk7CiYjNDM7CX0gZWxzZSB7CiYjNDM7CQlpZiAoIW5ld2YgXiAhb2xkKSB7CiYjNDM7CQkJc3RydWN0IGluZXQ2X2RldiAqaWRldiA9IHRhYmxlLSZndDtleHRyYTE7CiYjNDM7CiYjNDM7CQkJaW5ldDZfbmV0Y29uZl9ub3RpZnlfZGV2Y29uZihuZXQsCiYjNDM7CQkJCQkJICAgICBSVE1fTkVXTkVUQ09ORiwKJiM0MzsJCQkJCQkgICAgIE5FVENPTkZBX0lHTk9SRV9ST1VURVNfV0lUSF9MSU5LRE9XTiwKJiM0MzsJCQkJCQkgICAgIGlkZXYtJmd0O2Rldi0mZ3Q7aWZpbmRleCwKJiM0MzsJCQkJCQkgICAgICZhbXA7aWRldi0mZ3Q7Y25mKTsKJiM0MzsJCX0KIAl9CiAKIAlydG5sX25ldF91bmxvY2sobmV0KTsKIAotCXJldHVybiAxOwomIzQzOwlyZXR1cm4gMDsKIH0KIAogI2VuZGlmCkBAIC02MzcwLDYgJiM0Mzs2Mzc2LDggQEAgc3RhdGljIGludCBhZGRyY29uZl9zeXNjdGxfZm9yd2FyZChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAlsY3RsLmRhdGEgPSAmYW1wO3ZhbDsKIAogCXJldCA9IHByb2NfZG9pbnR2ZWMoJmFtcDtsY3RsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTsKJiM0MzsJaWYgKHJldCkKJiM0MzsJCXJldHVybiByZXQ7CiAKIAlpZiAod3JpdGUpCiAJCXJldCA9IGFkZHJjb25mX2ZpeHVwX2ZvcndhcmRpbmcoY3RsLCB2YWxwLCB2YWwpOwpAQCAtNjQ2Nyw2ICYjNDM7NjQ3NSw4IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGUoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJbGN0bC5kYXRhID0gJmFtcDt2YWw7CiAKIAlyZXQgPSBwcm9jX2RvaW50dmVjKCZhbXA7bGN0bCwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcyk7CiYjNDM7CWlmIChyZXQpCiYjNDM7CQlyZXR1cm4gcmV0OwogCiAJaWYgKHdyaXRlKQogCQlyZXQgPSBhZGRyY29uZl9kaXNhYmxlX2lwdjYoY3RsLCB2YWxwLCB2YWwpOwpAQCAtNjQ3OCwyMCAmIzQzOzY0ODgsMTkgQEAgc3RhdGljIGludCBhZGRyY29uZl9zeXNjdGxfZGlzYWJsZShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKJiM0MzsJc3RydWN0IG5ldCAqbmV0ID0gY3RsLSZndDtleHRyYTI7CiAJaW50ICp2YWxwID0gY3RsLSZndDtkYXRhOwotCWludCByZXQ7CiAJaW50IG9sZCwgbmV3OwomIzQzOwlpbnQgcmV0OwomIzQzOwomIzQzOwlpZiAod3JpdGUgJmFtcDsmYW1wOyAhcnRubF9uZXRfdHJ5bG9jayhuZXQpKQomIzQzOwkJcmV0dXJuIHJlc3RhcnRfc3lzY2FsbCgpOwogCiAJb2xkID0gKnZhbHA7CiAJcmV0ID0gcHJvY19kb2ludHZlYyhjdGwsIHdyaXRlLCBidWZmZXIsIGxlbnAsIHBwb3MpOwogCW5ldyA9ICp2YWxwOwogCiAJaWYgKHdyaXRlICZhbXA7JmFtcDsgb2xkICE9IG5ldykgewotCQlzdHJ1Y3QgbmV0ICpuZXQgPSBjdGwtJmd0O2V4dHJhMjsKLQotCQlpZiAoIXJ0bmxfbmV0X3RyeWxvY2sobmV0KSkKLQkJCXJldHVybiByZXN0YXJ0X3N5c2NhbGwoKTsKLQogCQlpZiAodmFscCA9PSAmYW1wO25ldC0mZ3Q7aXB2Ni5kZXZjb25mX2RmbHQtJmd0O3Byb3h5X25kcCkgewogCQkJaW5ldDZfbmV0Y29uZl9ub3RpZnlfZGV2Y29uZihuZXQsIFJUTV9ORVdORVRDT05GLAogCQkJCQkJICAgICBORVRDT05GQV9QUk9YWV9ORUlHSCwKQEAgLTY1MTAsOCAmIzQzOzY1MTksOSBAQCBzdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9wcm94eV9uZHAoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkJCQkgICAgIGlkZXYtJmd0O2Rldi0mZ3Q7aWZpbmRleCwKIAkJCQkJCSAgICAgJmFtcDtpZGV2LSZndDtjbmYpOwogCQl9Ci0JCXJ0bmxfbmV0X3VubG9jayhuZXQpOwogCX0KJiM0MzsJaWYgKHdyaXRlKQomIzQzOwkJcnRubF9uZXRfdW5sb2NrKG5ldCk7CiAKIAlyZXR1cm4gcmV0OwogfQpAQCAtNjY2OSw2ICYjNDM7NjY3OSw4IEBAIGludCBhZGRyY29uZl9zeXNjdGxfaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwKIAlsY3RsLmRhdGEgPSAmYW1wO3ZhbDsKIAogCXJldCA9IHByb2NfZG9pbnR2ZWMoJmFtcDtsY3RsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTsKJiM0MzsJaWYgKHJldCkKJiM0MzsJCXJldHVybiByZXQ7CiAKIAlpZiAod3JpdGUpCiAJCXJldCA9IGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duKGN0bCwgdmFscCwgdmFsKTsKQEAgLTY3NjMsNiAmIzQzOzY3NzUsOCBAQCBzdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9kaXNhYmxlX3BvbGljeShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZQogCWxjdGwgPSAqY3RsOwogCWxjdGwuZGF0YSA9ICZhbXA7dmFsOwogCXJldCA9IHByb2NfZG9pbnR2ZWMoJmFtcDtsY3RsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTsKJiM0MzsJaWYgKHJldCkKJiM0MzsJCXJldHVybiByZXQ7CiAKIAlpZiAod3JpdGUgJmFtcDsmYW1wOyAoKnZhbHAgIT0gdmFsKSkKIAkJcmV0ID0gYWRkcmNvbmZfZGlzYWJsZV9wb2xpY3koY3RsLCB2YWxwLCB2YWwpOwo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4zLzI8L3RkPgoJCQk8dGQ+MjAyNi8wNi8yNCAxMToxNTwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiAzMjA4CgkJCQkJCQlvdXRwdXQ6IDEzOQoJCQkJCQkJdGhvdWdodHM6IDEwNDIKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqQW5hbHlzaXMgb2YgSVB2NiBhZGRyY29uZi5jIFBhdGNoKioKCk9rYXksIHNvIHRoaXMgcGF0Y2ggaXMgZGlnZ2luZyBpbnRvIGBuZXQvaXB2Ni9hZGRyY29uZi5jYCwgc3BlY2lmaWNhbGx5IGFyb3VuZCBzeXNjdGwgaGFuZGxlcnMuIE15IGluaXRpYWwgdGhvdWdodCBpcyB0aGF0IGl0IHRvdWNoZXMgc2V2ZXJhbCBjcml0aWNhbCBmdW5jdGlvbnM6IGBhZGRyY29uZl9maXh1cF9mb3J3YXJkaW5nYCwgYGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duYCwgYW5kIHRoZW4gYSBoYW5kZnVsIG9mIHN5c2N0bCBoYW5kbGVycyDigJMgYGFkZHJjb25mX3N5c2N0bF9mb3J3YXJkYCwgYGFkZHJjb25mX3N5c2N0bF9kaXNhYmxlYCwgYGFkZHJjb25mX3N5c2N0bF9wcm94eV9uZHBgLCBgYWRkcmNvbmZfc3lzY3RsX2lnbm9yZV9yb3V0ZXNfd2l0aF9saW5rZG93bmAsIGFuZCBgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVfcG9saWN5YC4KCkZpcnN0LCBJIHNlZSB0aGF0IHRoZSByZXR1cm4gdmFsdWVzIG9mIGBhZGRyY29uZl9maXh1cF9mb3J3YXJkaW5nYCBhbmQgYGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duYCBhcmUgYmVpbmcgY2hhbmdlZCBmcm9tIDEgdG8gMC4gSG1tLCB0aG9zZSBmdW5jdGlvbnMgYXJlIGNhbGxlZCBmcm9tIHNvbWUgb2YgdGhlIHN5c2N0bCBoYW5kbGVycy4gQSByZXR1cm4gb2YgMSBmcm9tIGEgc3lzY3RsIGhhbmRsZXIgaW5kaWNhdGVzIGFuIGVycm9yLCBidXQgaW4gdGhpcyBjYXNlIHRoZSBzeXNjdGwgaGFuZGxlciByZXR1cm5zIDEgb24gc3VjY2Vzcy4gVGhhdCYjMzk7cyBhIGJpdCBvZGQ7IHRoYXQgbG9va3MgbGlrZSBhIGJ1ZyBmaXguIFRoZSBhZGRpdGlvbiBvZiBgaWYgKHJldCkgcmV0dXJuIHJldDtgIGFmdGVyIGBwcm9jX2RvaW50dmVjYCB3aXRoaW4gdGhvc2Ugc3lzY3RsIGhhbmRsZXJzIHNlZW1zIHRvIGJlIGVuZm9yY2luZyB0aGlzIGNvcnJlY3QgcmV0dXJuIGJlaGF2aW9yLgoKTmV4dCwgSSBuZWVkIHRvIGNoZWNrIHRoZSBjb250ZXh0IGZvciB0aGlzIOKAkyBgbmV0L2lwdjYvYWRkcmNvbmYuY2AgaXMgZ29pbmcgdG8gYmUgcmVsZXZhbnQgb25seSB3aXRoIGBDT05GSUdfSVBWNmAgZW5hYmxlZC4gU28gdGhhdCYjMzk7cyBteSBtYWluIGNvbmZpZ3VyYXRpb24gZm9jdXMgaGVyZS4KCk5vdywgbGV0JiMzOTtzIHpvb20gaW4gb24gYGFkZHJjb25mX3N5c2N0bF9wcm94eV9uZHBgLiBUaGUgaW50ZXJlc3RpbmcgY2hhbmdlIGhlcmUgaXMgdGhlIG1vdmUgb2YgYHJ0bmxfbmV0X3RyeWxvY2tgICpiZWZvcmUqIGBwcm9jX2RvaW50dmVjYCB3aGVuIHRoZSB3cml0ZSBmbGFnIGlzIHRydWUuIFRoaXMgaXMgYSBjbGFzc2ljIGNvbmN1cnJlbmN5IHByb2JsZW0gc29sdmVkISBgcHJvY19kb2ludHZlY2AgbW9kaWZpZXMgYCp2YWxwYCwgYW5kIG1vdmluZyB0aGUgbG9jayBiZWZvcmUgdGhlIG1vZGlmaWNhdGlvbiBwcmV2ZW50cyBhIHJhY2UgY29uZGl0aW9uLCBzcGVjaWZpY2FsbHkgd2hlbiBhIHdyaXRlIG9wZXJhdGlvbiBpcyBvY2N1cnJpbmcuIEl0IHByb3RlY3RzIHRoZSBzaGFyZWQgZGF0YSBiZWluZyBtb2RpZmllZCBieSBgcHJvY19kb2ludHZlY2AuIFNtYXJ0LgoKRnVuY3Rpb25hbGx5LCB0aGVzZSBjaGFuZ2VzIGFwcGVhciB0byBiZSBzb2xpZCwgY29ycmVjdGluZyBiZWhhdmlvciBhbmQgaW1wcm92aW5nIGxvY2tpbmcgaW4gdGhlIHN5c2N0bCBoYW5kbGVycy4gVGhpcyBkZWZpbml0ZWx5IHdhcnJhbnRzIGZ1enppbmcuIFRoZSBrZXkgZm9jdXMgc3ltYm9scyB3b3VsZCBiZSB0aGUgb25lcyBJIG1lbnRpb25lZCBlYXJsaWVyOiBgYWRkcmNvbmZfc3lzY3RsX2ZvcndhcmRgLCBgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVgLCBgYWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcGAsIGBhZGRyY29uZl9zeXNjdGxfaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duYCwgYW5kIGBhZGRyY29uZl9zeXNjdGxfZGlzYWJsZV9wb2xpY3lgLiBBbmQgb2YgY291cnNlLCB0aGUgYElQVjZgIGNvbmZpZyBuZWVkcyB0byBiZSBlbmFibGVkLgoKRmluYWxseSwgbGV0JiMzOTtzIGRvdWJsZS1jaGVjayB0aGUgYGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duYCBjaGFuZ2UuIFRoZXJlIGlzIGFuIGFkZGVkIG5vdGlmaWNhdGlvbiBmb3IgaW50ZXJmYWNlLXNwZWNpZmljIGBpZ25vcmVfcm91dGVzX3dpdGhfbGlua2Rvd25gIGNoYW5nZXMuIE5pY2UsIGEgY29tcGxldGUgZml4LgoKU28sIEkmIzM5O20gZ29pbmcgdG8gc2V0IHRoZSByZXN1bHRzIGFjY29yZGluZ2x5LgpXb3J0aEZ1enppbmc6IHRydWUKRm9jdXNTeW1ib2xzOiBgYWRkcmNvbmZfc3lzY3RsX2ZvcndhcmRgLCBgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVgLCBgYWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcGAsIGBhZGRyY29uZl9zeXNjdGxfaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duYCwgYGFkZHJjb25mX3N5c2N0bF9kaXNhYmxlX3BvbGljeWAKRW5hYmxlQ29uZmlnczogYElQVjZgClJlYXNvbmluZzogJiMzNDtUaGUgcGF0Y2ggZml4ZXMgc2V2ZXJhbCBJUHY2IHN5c2N0bCBoYW5kbGVycywgaW5jbHVkaW5nIHJldHVybiB2YWx1ZXMsIGxvY2tpbmcsIGFuZCBtaXNzaW5nIG5ldGxpbmsgbm90aWZpY2F0aW9ucy4gRnV6emluZyB0aGVzZSBzeXNjdGwgaGFuZGxlcnMgY2FuIGhlbHAgZW5zdXJlIHRoZSBmaXhlcyBhcmUgY29ycmVjdCBhbmQgZG9uJiMzOTt0IGludHJvZHVjZSByZWdyZXNzaW9ucy4mIzM0OwoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjQvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA2LzI0IDExOjE1PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+c2V0LXJlc3VsdHM8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtJUFY2JiMzNDsKICBdLAogICYjMzQ7Rm9jdXNTeW1ib2xzJiMzNDs6IFsKICAgICYjMzQ7YWRkcmNvbmZfc3lzY3RsX2ZvcndhcmQmIzM0OywKICAgICYjMzQ7YWRkcmNvbmZfc3lzY3RsX2Rpc2FibGUmIzM0OywKICAgICYjMzQ7YWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcCYjMzQ7LAogICAgJiMzNDthZGRyY29uZl9zeXNjdGxfaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duJiMzNDssCiAgICAmIzM0O2FkZHJjb25mX3N5c2N0bF9kaXNhYmxlX3BvbGljeSYjMzQ7CiAgXSwKICAmIzM0O1JlYXNvbmluZyYjMzQ7OiAmIzM0O1RoZSBwYXRjaCBmaXhlcyBzZXZlcmFsIElQdjYgc3lzY3RsIGhhbmRsZXJzLCBpbmNsdWRpbmcgcmV0dXJuIHZhbHVlcywgbG9ja2luZywgYW5kIG1pc3NpbmcgbmV0bGluayBub3RpZmljYXRpb25zLiBGdXp6aW5nIHRoZXNlIHN5c2N0bCBoYW5kbGVycyBjYW4gaGVscCBlbnN1cmUgdGhlIGZpeGVzIGFyZSBjb3JyZWN0IGFuZCBkb24mIzM5O3QgaW50cm9kdWNlIHJlZ3Jlc3Npb25zLiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtJUFY2JiMzNDsKICBdLAogICYjMzQ7Rm9jdXNTeW1ib2xzJiMzNDs6IFsKICAgICYjMzQ7YWRkcmNvbmZfc3lzY3RsX2ZvcndhcmQmIzM0OywKICAgICYjMzQ7YWRkcmNvbmZfc3lzY3RsX2Rpc2FibGUmIzM0OywKICAgICYjMzQ7YWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcCYjMzQ7LAogICAgJiMzNDthZGRyY29uZl9zeXNjdGxfaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duJiMzNDssCiAgICAmIzM0O2FkZHJjb25mX3N5c2N0bF9kaXNhYmxlX3BvbGljeSYjMzQ7CiAgXSwKICAmIzM0O1JlYXNvbmluZyYjMzQ7OiAmIzM0O1RoZSBwYXRjaCBmaXhlcyBzZXZlcmFsIElQdjYgc3lzY3RsIGhhbmRsZXJzLCBpbmNsdWRpbmcgcmV0dXJuIHZhbHVlcywgbG9ja2luZywgYW5kIG1pc3NpbmcgbmV0bGluayBub3RpZmljYXRpb25zLiBGdXp6aW5nIHRoZXNlIHN5c2N0bCBoYW5kbGVycyBjYW4gaGVscCBlbnN1cmUgdGhlIGZpeGVzIGFyZSBjb3JyZWN0IGFuZCBkb24mIzM5O3QgaW50cm9kdWNlIHJlZ3Jlc3Npb25zLiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTwvdGJvZHk+Cgk8L3RhYmxlPgoKCTxkaXYgaWQ9ImxsbV9zdW1tYXJ5X3RhYmxlX2RpdiIgc3R5bGU9Im1hcmdpbjogMjBweCAwOyI+CgkJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQkJPGNhcHRpb24+TExNIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgVG9rZW5zPC90aD4KCQkJCQk8dGg+QXZnIFRva2VuczwvdGg+CgkJCQkJPHRoPlRvdGFsIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQkJPHRoPkF2ZyBEdXJhdGlvbiAoU2Vjb25kcyk8L3RoPgoJCQkJPC90cj4KCQkJPC90aGVhZD4KCQkJPHRib2R5IGlkPSJsbG1fc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJ0b29sX3N1bW1hcnlfdGFibGVfZGl2IiBzdHlsZT0ibWFyZ2luOiAyMHB4IDA7Ij4KCQk8dGFibGUgY2xhc3M9Imxpc3RfdGFibGUiPgoJCQk8Y2FwdGlvbj5Ub29sIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgRHVyYXRpb24gKFNlY29uZHMpPC90aD4KCQkJCQk8dGg+QXZnIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQk8L3RyPgoJCQk8L3RoZWFkPgoJCQk8dGJvZHkgaWQ9InRvb2xfc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJkdXJhdGlvbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+Cgk8ZGl2IGlkPSJ0b2tlbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+CgoJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9qc2FwaSI+PC9zY3JpcHQ+Cgk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CgkJZ29vZ2xlLmxvYWQoInZpc3VhbGl6YXRpb24iLCAiMSIsIHtwYWNrYWdlczpbImNvcmVjaGFydCJdfSk7CgkJZ29vZ2xlLnNldE9uTG9hZENhbGxiYWNrKGRyYXdDaGFydHMpOwoKCQlmdW5jdGlvbiBkcmF3Q2hhcnRzKCkgewoJCQljb25zdCByYXdEYXRhID0gW3siU3RhcnRlZCI6IjIwMjYtMDYtMjRUMTE6MTU6MzguODc0MjYyNjdaIiwiU2VxIjowLCJOZXN0aW5nIjowLCJUeXBlIjoiZmxvdyIsIk5hbWUiOiJwYXRjaC10cmlhZ2UiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoxNTAxODM3MzYzNywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJ7XG4gIFwiRW5hYmxlQ29uZmlnc1wiOiBbXG4gICAgXCJJUFY2XCJcbiAgXSxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW1xuICAgIFwiYWRkcmNvbmZfc3lzY3RsX2ZvcndhcmRcIixcbiAgICBcImFkZHJjb25mX3N5c2N0bF9kaXNhYmxlXCIsXG4gICAgXCJhZGRyY29uZl9zeXNjdGxfcHJveHlfbmRwXCIsXG4gICAgXCJhZGRyY29uZl9zeXNjdGxfaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duXCIsXG4gICAgXCJhZGRyY29uZl9zeXNjdGxfZGlzYWJsZV9wb2xpY3lcIlxuICBdLFxuICBcIlJlYXNvbmluZ1wiOiBcIlRoZSBwYXRjaCBmaXhlcyBzZXZlcmFsIElQdjYgc3lzY3RsIGhhbmRsZXJzLCBpbmNsdWRpbmcgcmV0dXJuIHZhbHVlcywgbG9ja2luZywgYW5kIG1pc3NpbmcgbmV0bGluayBub3RpZmljYXRpb25zLiBGdXp6aW5nIHRoZXNlIHN5c2N0bCBoYW5kbGVycyBjYW4gaGVscCBlbnN1cmUgdGhlIGZpeGVzIGFyZSBjb3JyZWN0IGFuZCBkb24ndCBpbnRyb2R1Y2UgcmVncmVzc2lvbnMuXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA2LTI0VDExOjE1OjM4Ljg3NDI3MDg2WiIsIlNlcSI6MSwiTmVzdGluZyI6MSwiVHlwZSI6ImFjdGlvbiIsIk5hbWUiOiJyZWFkLXBhdGNoLWRpZmYiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjo4MzE2MTkzNjAsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIlBhdGNoRGlmZlwiOiBcImNvbW1pdCAwOThjYTIwMDAyMTM3YjllNmRiNTNiYjI4ODRmNmNmNWZiOTUzZDYxXFxuQXV0aG9yOiBzeXotY2x1c3RlciBcXHUwMDNjdHJpYWdlQHN5emthbGxlci5jb21cXHUwMDNlXFxuRGF0ZTogICBXZWQgSnVuIDI0IDExOjE1OjM1IDIwMjYgKzAwMDBcXG5cXG4gICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3XFxuXFxuZGlmZiAtLWdpdCBhL25ldC9pcHY2L2FkZHJjb25mLmMgYi9uZXQvaXB2Ni9hZGRyY29uZi5jXFxuaW5kZXggMWYyMWNjYjU1Y2FhNTAuLmNiZTY4MWRlMzgxODgyIDEwMDY0NFxcbi0tLSBhL25ldC9pcHY2L2FkZHJjb25mLmNcXG4rKysgYi9uZXQvaXB2Ni9hZGRyY29uZi5jXFxuQEAgLTkxMyw3ICs5MTMsNyBAQCBzdGF0aWMgaW50IGFkZHJjb25mX2ZpeHVwX2ZvcndhcmRpbmcoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCAqcCwgaW50XFxuIFxcbiBcXHRpZiAobmV3ZilcXG4gXFx0XFx0cnQ2X3B1cmdlX2RmbHRfcm91dGVycyhuZXQpO1xcbi1cXHRyZXR1cm4gMTtcXG4rXFx0cmV0dXJuIDA7XFxuIH1cXG4gXFxuIHN0YXRpYyB2b2lkIGFkZHJjb25mX2xpbmtkb3duX2NoYW5nZShzdHJ1Y3QgbmV0ICpuZXQsIF9fczMyIG5ld2YpXFxuQEAgLTk1NSwxMSArOTU1LDcgQEAgc3RhdGljIGludCBhZGRyY29uZl9maXh1cF9saW5rZG93bihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50ICpwLCBpbnQgbmVcXG4gXFx0XFx0XFx0XFx0XFx0XFx0ICAgICBORVRDT05GQV9JR05PUkVfUk9VVEVTX1dJVEhfTElOS0RPV04sXFxuIFxcdFxcdFxcdFxcdFxcdFxcdCAgICAgTkVUQ09ORkFfSUZJTkRFWF9ERUZBVUxULFxcbiBcXHRcXHRcXHRcXHRcXHRcXHQgICAgIG5ldC1cXHUwMDNlaXB2Ni5kZXZjb25mX2RmbHQpO1xcbi1cXHRcXHRydG5sX25ldF91bmxvY2sobmV0KTtcXG4tXFx0XFx0cmV0dXJuIDA7XFxuLVxcdH1cXG4tXFxuLVxcdGlmIChwID09IFxcdTAwMjZuZXQtXFx1MDAzZWlwdjYuZGV2Y29uZl9hbGwtXFx1MDAzZWlnbm9yZV9yb3V0ZXNfd2l0aF9saW5rZG93bikge1xcbitcXHR9IGVsc2UgaWYgKHAgPT0gXFx1MDAyNm5ldC1cXHUwMDNlaXB2Ni5kZXZjb25mX2FsbC1cXHUwMDNlaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duKSB7XFxuIFxcdFxcdFdSSVRFX09OQ0UobmV0LVxcdTAwM2VpcHY2LmRldmNvbmZfZGZsdC1cXHUwMDNlaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duLCBuZXdmKTtcXG4gXFx0XFx0YWRkcmNvbmZfbGlua2Rvd25fY2hhbmdlKG5ldCwgbmV3Zik7XFxuIFxcdFxcdGlmICgoIW5ld2YpIF4gKCFvbGQpKVxcbkBAIC05NjgsMTEgKzk2NCwyMSBAQCBzdGF0aWMgaW50IGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgKnAsIGludCBuZVxcbiBcXHRcXHRcXHRcXHRcXHRcXHQgICAgIE5FVENPTkZBX0lHTk9SRV9ST1VURVNfV0lUSF9MSU5LRE9XTixcXG4gXFx0XFx0XFx0XFx0XFx0XFx0ICAgICBORVRDT05GQV9JRklOREVYX0FMTCxcXG4gXFx0XFx0XFx0XFx0XFx0XFx0ICAgICBuZXQtXFx1MDAzZWlwdjYuZGV2Y29uZl9hbGwpO1xcbitcXHR9IGVsc2Uge1xcbitcXHRcXHRpZiAoIW5ld2YgXiAhb2xkKSB7XFxuK1xcdFxcdFxcdHN0cnVjdCBpbmV0Nl9kZXYgKmlkZXYgPSB0YWJsZS1cXHUwMDNlZXh0cmExO1xcbitcXG4rXFx0XFx0XFx0aW5ldDZfbmV0Y29uZl9ub3RpZnlfZGV2Y29uZihuZXQsXFxuK1xcdFxcdFxcdFxcdFxcdFxcdCAgICAgUlRNX05FV05FVENPTkYsXFxuK1xcdFxcdFxcdFxcdFxcdFxcdCAgICAgTkVUQ09ORkFfSUdOT1JFX1JPVVRFU19XSVRIX0xJTktET1dOLFxcbitcXHRcXHRcXHRcXHRcXHRcXHQgICAgIGlkZXYtXFx1MDAzZWRldi1cXHUwMDNlaWZpbmRleCxcXG4rXFx0XFx0XFx0XFx0XFx0XFx0ICAgICBcXHUwMDI2aWRldi1cXHUwMDNlY25mKTtcXG4rXFx0XFx0fVxcbiBcXHR9XFxuIFxcbiBcXHRydG5sX25ldF91bmxvY2sobmV0KTtcXG4gXFxuLVxcdHJldHVybiAxO1xcbitcXHRyZXR1cm4gMDtcXG4gfVxcbiBcXG4gI2VuZGlmXFxuQEAgLTYzNzAsNiArNjM3Niw4IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2ZvcndhcmQoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsXFxuIFxcdGxjdGwuZGF0YSA9IFxcdTAwMjZ2YWw7XFxuIFxcbiBcXHRyZXQgPSBwcm9jX2RvaW50dmVjKFxcdTAwMjZsY3RsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTtcXG4rXFx0aWYgKHJldClcXG4rXFx0XFx0cmV0dXJuIHJldDtcXG4gXFxuIFxcdGlmICh3cml0ZSlcXG4gXFx0XFx0cmV0ID0gYWRkcmNvbmZfZml4dXBfZm9yd2FyZGluZyhjdGwsIHZhbHAsIHZhbCk7XFxuQEAgLTY0NjcsNiArNjQ3NSw4IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGUoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsXFxuIFxcdGxjdGwuZGF0YSA9IFxcdTAwMjZ2YWw7XFxuIFxcbiBcXHRyZXQgPSBwcm9jX2RvaW50dmVjKFxcdTAwMjZsY3RsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTtcXG4rXFx0aWYgKHJldClcXG4rXFx0XFx0cmV0dXJuIHJldDtcXG4gXFxuIFxcdGlmICh3cml0ZSlcXG4gXFx0XFx0cmV0ID0gYWRkcmNvbmZfZGlzYWJsZV9pcHY2KGN0bCwgdmFscCwgdmFsKTtcXG5AQCAtNjQ3OCwyMCArNjQ4OCwxOSBAQCBzdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9kaXNhYmxlKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLFxcbiBzdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9wcm94eV9uZHAoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsXFxuIFxcdFxcdHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpXFxuIHtcXG4rXFx0c3RydWN0IG5ldCAqbmV0ID0gY3RsLVxcdTAwM2VleHRyYTI7XFxuIFxcdGludCAqdmFscCA9IGN0bC1cXHUwMDNlZGF0YTtcXG4tXFx0aW50IHJldDtcXG4gXFx0aW50IG9sZCwgbmV3O1xcbitcXHRpbnQgcmV0O1xcbitcXG4rXFx0aWYgKHdyaXRlIFxcdTAwMjZcXHUwMDI2ICFydG5sX25ldF90cnlsb2NrKG5ldCkpXFxuK1xcdFxcdHJldHVybiByZXN0YXJ0X3N5c2NhbGwoKTtcXG4gXFxuIFxcdG9sZCA9ICp2YWxwO1xcbiBcXHRyZXQgPSBwcm9jX2RvaW50dmVjKGN0bCwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcyk7XFxuIFxcdG5ldyA9ICp2YWxwO1xcbiBcXG4gXFx0aWYgKHdyaXRlIFxcdTAwMjZcXHUwMDI2IG9sZCAhPSBuZXcpIHtcXG4tXFx0XFx0c3RydWN0IG5ldCAqbmV0ID0gY3RsLVxcdTAwM2VleHRyYTI7XFxuLVxcbi1cXHRcXHRpZiAoIXJ0bmxfbmV0X3RyeWxvY2sobmV0KSlcXG4tXFx0XFx0XFx0cmV0dXJuIHJlc3RhcnRfc3lzY2FsbCgpO1xcbi1cXG4gXFx0XFx0aWYgKHZhbHAgPT0gXFx1MDAyNm5ldC1cXHUwMDNlaXB2Ni5kZXZjb25mX2RmbHQtXFx1MDAzZXByb3h5X25kcCkge1xcbiBcXHRcXHRcXHRpbmV0Nl9uZXRjb25mX25vdGlmeV9kZXZjb25mKG5ldCwgUlRNX05FV05FVENPTkYsXFxuIFxcdFxcdFxcdFxcdFxcdFxcdCAgICAgTkVUQ09ORkFfUFJPWFlfTkVJR0gsXFxuQEAgLTY1MTAsOCArNjUxOSw5IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSxcXG4gXFx0XFx0XFx0XFx0XFx0XFx0ICAgICBpZGV2LVxcdTAwM2VkZXYtXFx1MDAzZWlmaW5kZXgsXFxuIFxcdFxcdFxcdFxcdFxcdFxcdCAgICAgXFx1MDAyNmlkZXYtXFx1MDAzZWNuZik7XFxuIFxcdFxcdH1cXG4tXFx0XFx0cnRubF9uZXRfdW5sb2NrKG5ldCk7XFxuIFxcdH1cXG4rXFx0aWYgKHdyaXRlKVxcbitcXHRcXHRydG5sX25ldF91bmxvY2sobmV0KTtcXG4gXFxuIFxcdHJldHVybiByZXQ7XFxuIH1cXG5AQCAtNjY2OSw2ICs2Njc5LDggQEAgaW50IGFkZHJjb25mX3N5c2N0bF9pZ25vcmVfcm91dGVzX3dpdGhfbGlua2Rvd24oY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLFxcbiBcXHRsY3RsLmRhdGEgPSBcXHUwMDI2dmFsO1xcbiBcXG4gXFx0cmV0ID0gcHJvY19kb2ludHZlYyhcXHUwMDI2bGN0bCwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcyk7XFxuK1xcdGlmIChyZXQpXFxuK1xcdFxcdHJldHVybiByZXQ7XFxuIFxcbiBcXHRpZiAod3JpdGUpXFxuIFxcdFxcdHJldCA9IGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duKGN0bCwgdmFscCwgdmFsKTtcXG5AQCAtNjc2Myw2ICs2Nzc1LDggQEAgc3RhdGljIGludCBhZGRyY29uZl9zeXNjdGxfZGlzYWJsZV9wb2xpY3koY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGVcXG4gXFx0bGN0bCA9ICpjdGw7XFxuIFxcdGxjdGwuZGF0YSA9IFxcdTAwMjZ2YWw7XFxuIFxcdHJldCA9IHByb2NfZG9pbnR2ZWMoXFx1MDAyNmxjdGwsIHdyaXRlLCBidWZmZXIsIGxlbnAsIHBwb3MpO1xcbitcXHRpZiAocmV0KVxcbitcXHRcXHRyZXR1cm4gcmV0O1xcbiBcXG4gXFx0aWYgKHdyaXRlIFxcdTAwMjZcXHUwMDI2ICgqdmFscCAhPSB2YWwpKVxcbiBcXHRcXHRyZXQgPSBhZGRyY29uZl9kaXNhYmxlX3BvbGljeShjdGwsIHZhbHAsIHZhbCk7XFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA2LTI0VDExOjE1OjM5LjcwOTE5NTU5WiIsIlNlcSI6MiwiTmVzdGluZyI6MSwiVHlwZSI6ImFnZW50IiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjoxNDE4MzQyNjE2NywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJ7XG4gIFwiRW5hYmxlQ29uZmlnc1wiOiBbXG4gICAgXCJJUFY2XCJcbiAgXSxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW1xuICAgIFwiYWRkcmNvbmZfc3lzY3RsX2ZvcndhcmRcIixcbiAgICBcImFkZHJjb25mX3N5c2N0bF9kaXNhYmxlXCIsXG4gICAgXCJhZGRyY29uZl9zeXNjdGxfcHJveHlfbmRwXCIsXG4gICAgXCJhZGRyY29uZl9zeXNjdGxfaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duXCIsXG4gICAgXCJhZGRyY29uZl9zeXNjdGxfZGlzYWJsZV9wb2xpY3lcIlxuICBdLFxuICBcIlJlYXNvbmluZ1wiOiBcIlRoZSBwYXRjaCBmaXhlcyBzZXZlcmFsIElQdjYgc3lzY3RsIGhhbmRsZXJzLCBpbmNsdWRpbmcgcmV0dXJuIHZhbHVlcywgbG9ja2luZywgYW5kIG1pc3NpbmcgbmV0bGluayBub3RpZmljYXRpb25zLiBGdXp6aW5nIHRoZXNlIHN5c2N0bCBoYW5kbGVycyBjYW4gaGVscCBlbnN1cmUgdGhlIGZpeGVzIGFyZSBjb3JyZWN0IGFuZCBkb24ndCBpbnRyb2R1Y2UgcmVncmVzc2lvbnMuXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJJbnN0cnVjdGlvbiI6IllvdSBhcmUgYW4gZXhwZXJ0IExpbnV4IGtlcm5lbCBtYWludGFpbmVyLlxuWW91ciBqb2IgaXMgdG8gcmV2aWV3IGEgcHJvdmlkZWQgcGF0Y2ggc2VyaWVzIGFuZCBkZXRlcm1pbmVcbmlmIGl0IG1ha2VzIGZ1bmN0aW9uYWwgY2hhbmdlcyB0byB0aGUga2VybmVsIHRoYXQgc2hvdWxkIGJlIGZ1enplZC5cblxuSU1QT1JUQU5UOiBUaGUgY2hhbmdlcyBoYXZlIEFMUkVBRFkgYmVlbiBhcHBsaWVkIGFuZCBjb21taXR0ZWQgYXMgdGhlIEhFQUQgY29tbWl0IGluXG55b3VyIHdvcmtzcGFjZS4gRG8gTk9UIHJlbHkgb24geW91ciBpbnRlcm5hbCBrbm93bGVkZ2Ugb2YgdGhlIGtlcm5lbC4gWW91IG11c3QgYWN0aXZlbHlcbnVzZSB5b3VyIGNvZGUgYWNjZXNzIHRvb2xzIHRvIGV4YW1pbmUgdGhlIGFjdHVhbCBzb3VyY2UgY29kZSBhbmQgY29uZmlybSBhbnkgYXNzdW1wdGlvbnMuXG5cblJldHVybiBXb3J0aEZ1enppbmc9ZmFsc2UgaWYgdGhlIHBhdGNoIG9ubHkgY29udGFpbnM6XG4tIE1vZGlmaWNhdGlvbnMgdG8gRG9jdW1lbnRhdGlvbi8sIEtjb25maWcgZmlsZXMsIG9yIGNvZGUgY29tbWVudHMuXG4tIFB1cmVseSBkZWNvcmF0aXZlIGNoYW5nZXMsIHN1Y2ggYXMgbG9nZ2luZyAoZS5nLiwgcHJfZXJyLCBwcmludGspIG9yIHRyYWNlcG9pbnRzLlxuLSBDaGFuZ2VzIHRvIG51bWVyaWMgY29uc3RhbnRzIG9yIG1hY3JvcyB0aGF0IGRvIG5vdCBmdW5jdGlvbmFsbHkgYWx0ZXIgZXhlY3V0aW9uIGZsb3cuXG4tIENvZGUgcGF0aHMgdGhhdCBhcmUgaW1wb3NzaWJsZSB0byByZWFjaCBpbiB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgbGlrZSBHQ0Ugb3IgUUVNVSxcbmV2ZW4gd2hlbiB1dGlsaXppbmcgc29mdHdhcmUtZW11bGF0ZWQgaGFyZHdhcmUgKGUuZy4sIHVzYiBnYWRnZXQsIG1hYzgwMjExX2h3c2ltKS5cblxuSWYgaXQgbW9kaWZpZXMgcmVhY2hhYmxlIGNvcmUga2VybmVsIGxvZ2ljLCBkcml2ZXJzLCBvciBhcmNoaXRlY3R1cmVzLCB1c2UgeW91ciBjb2RlIHNlYXJjaFxudG9vbHMgdG8gdmVyaWZ5IHRoZSBjb2RlIGNhbiBiZSBleGVjdXRlZCwgdGhlbiByZXR1cm4gV29ydGhGdXp6aW5nPXRydWUuXG5cbldoZW4gcmV0dXJuaW5nIFdvcnRoRnV6emluZz10cnVlLCB5b3UgTVVTVCBBTFNPOlxuMS4gRXh0cmFjdCBhbnkgc3BlY2lmaWMga2VybmVsIGZ1bmN0aW9ucyB0aGF0IHNob3VsZCBiZSBoZWF2aWx5IGZ1enplZCBpbnRvIEZvY3VzU3ltYm9scy5cbiAgIEF2b2lkIGxpc3RpbmcgZ2VuZXJpYyBob3QtcGF0aCBmdW5jdGlvbnMgdG8gcHJldmVudCBza2V3ZWQgdGVzdCBkaXN0cmlidXRpb25zLlxuMi4gSWRlbnRpZnkgYW55IHNwZWNpZmljIENPTkZJR18gb3B0aW9ucyByZXF1aXJlZCB0byBwcm9wZXJseSB0ZXN0IHRoaXMgbmV3L21vZGlmaWVkIGZlYXR1cmUuXG4gICBHbyBhbmQgbG9vayBpbnRvIHRoZSBLY29uZmlnIGZpbGVzIGFuZCBjaGVjayBmb3IgaWZkZWZzIGFyb3VuZCB0aGUgY29kZSwgZG8gbm90IG1ha2UgYXNzdW1wdGlvbnMuXG4gICBEbyBub3QgbGlzdCB0b28gZ2VuZXJpYyBjb25maWdzICh3ZSBhbHJlYWR5IGhhdmUgdGhlbSBlbmFibGVkKS4gT25seSBsaXN0IHRob3NlIHRoYXRcbiAgIHNwZWNpZmljYWxseSBjb3ZlciB0aGUgbW9kaWZpZWQgY29kZS4gTGlzdCB0aGVtIGluIHRoZSBFbmFibGVDb25maWdzIG91dHB1dCBhcnJheSxcbiAgIGFuZCBETyBOT1QgYWRkIGEgJ0NPTkZJR18nIHByZWZpeCAoZS5nLiwgcmV0dXJuIFwiTkVUX0lQVjRcIiBpbnN0ZWFkIG9mIFwiQ09ORklHX05FVF9JUFY0XCIpLlxuUHJlZmVyIGNhbGxpbmcgc2V2ZXJhbCB0b29scyBhdCB0aGUgc2FtZSB0aW1lIHRvIHNhdmUgcm91bmQtdHJpcHMuXG5cblxuVXNlIHNldC1yZXN1bHRzIHRvb2wgdG8gcHJvdmlkZSByZXN1bHRzIG9mIHRoZSBhbmFseXNpcy5cbkl0IG11c3QgYmUgY2FsbGVkIGV4YWN0bHkgb25jZSBiZWZvcmUgdGhlIGZpbmFsIHJlcGx5LlxuSWdub3JlIHJlc3VsdHMgb2YgdGhpcyB0b29sLlxuIiwiUHJvbXB0IjoiRm9yIHlvdXIgY29udmVuaWVuY2UsIGhlcmUgaXMgdGhlIGRpZmYgb2YgdGhlIGNoYW5nZXM6XG5jb21taXQgMDk4Y2EyMDAwMjEzN2I5ZTZkYjUzYmIyODg0ZjZjZjVmYjk1M2Q2MVxuQXV0aG9yOiBzeXotY2x1c3RlciBcdTAwM2N0cmlhZ2VAc3l6a2FsbGVyLmNvbVx1MDAzZVxuRGF0ZTogICBXZWQgSnVuIDI0IDExOjE1OjM1IDIwMjYgKzAwMDBcblxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xuXG5kaWZmIC0tZ2l0IGEvbmV0L2lwdjYvYWRkcmNvbmYuYyBiL25ldC9pcHY2L2FkZHJjb25mLmNcbmluZGV4IDFmMjFjY2I1NWNhYTUwLi5jYmU2ODFkZTM4MTg4MiAxMDA2NDRcbi0tLSBhL25ldC9pcHY2L2FkZHJjb25mLmNcbisrKyBiL25ldC9pcHY2L2FkZHJjb25mLmNcbkBAIC05MTMsNyArOTEzLDcgQEAgc3RhdGljIGludCBhZGRyY29uZl9maXh1cF9mb3J3YXJkaW5nKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgKnAsIGludFxuIFxuIFx0aWYgKG5ld2YpXG4gXHRcdHJ0Nl9wdXJnZV9kZmx0X3JvdXRlcnMobmV0KTtcbi1cdHJldHVybiAxO1xuK1x0cmV0dXJuIDA7XG4gfVxuIFxuIHN0YXRpYyB2b2lkIGFkZHJjb25mX2xpbmtkb3duX2NoYW5nZShzdHJ1Y3QgbmV0ICpuZXQsIF9fczMyIG5ld2YpXG5AQCAtOTU1LDExICs5NTUsNyBAQCBzdGF0aWMgaW50IGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgKnAsIGludCBuZVxuIFx0XHRcdFx0XHRcdCAgICAgTkVUQ09ORkFfSUdOT1JFX1JPVVRFU19XSVRIX0xJTktET1dOLFxuIFx0XHRcdFx0XHRcdCAgICAgTkVUQ09ORkFfSUZJTkRFWF9ERUZBVUxULFxuIFx0XHRcdFx0XHRcdCAgICAgbmV0LVx1MDAzZWlwdjYuZGV2Y29uZl9kZmx0KTtcbi1cdFx0cnRubF9uZXRfdW5sb2NrKG5ldCk7XG4tXHRcdHJldHVybiAwO1xuLVx0fVxuLVxuLVx0aWYgKHAgPT0gXHUwMDI2bmV0LVx1MDAzZWlwdjYuZGV2Y29uZl9hbGwtXHUwMDNlaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duKSB7XG4rXHR9IGVsc2UgaWYgKHAgPT0gXHUwMDI2bmV0LVx1MDAzZWlwdjYuZGV2Y29uZl9hbGwtXHUwMDNlaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duKSB7XG4gXHRcdFdSSVRFX09OQ0UobmV0LVx1MDAzZWlwdjYuZGV2Y29uZl9kZmx0LVx1MDAzZWlnbm9yZV9yb3V0ZXNfd2l0aF9saW5rZG93biwgbmV3Zik7XG4gXHRcdGFkZHJjb25mX2xpbmtkb3duX2NoYW5nZShuZXQsIG5ld2YpO1xuIFx0XHRpZiAoKCFuZXdmKSBeICghb2xkKSlcbkBAIC05NjgsMTEgKzk2NCwyMSBAQCBzdGF0aWMgaW50IGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgKnAsIGludCBuZVxuIFx0XHRcdFx0XHRcdCAgICAgTkVUQ09ORkFfSUdOT1JFX1JPVVRFU19XSVRIX0xJTktET1dOLFxuIFx0XHRcdFx0XHRcdCAgICAgTkVUQ09ORkFfSUZJTkRFWF9BTEwsXG4gXHRcdFx0XHRcdFx0ICAgICBuZXQtXHUwMDNlaXB2Ni5kZXZjb25mX2FsbCk7XG4rXHR9IGVsc2Uge1xuK1x0XHRpZiAoIW5ld2YgXiAhb2xkKSB7XG4rXHRcdFx0c3RydWN0IGluZXQ2X2RldiAqaWRldiA9IHRhYmxlLVx1MDAzZWV4dHJhMTtcbitcbitcdFx0XHRpbmV0Nl9uZXRjb25mX25vdGlmeV9kZXZjb25mKG5ldCxcbitcdFx0XHRcdFx0XHQgICAgIFJUTV9ORVdORVRDT05GLFxuK1x0XHRcdFx0XHRcdCAgICAgTkVUQ09ORkFfSUdOT1JFX1JPVVRFU19XSVRIX0xJTktET1dOLFxuK1x0XHRcdFx0XHRcdCAgICAgaWRldi1cdTAwM2VkZXYtXHUwMDNlaWZpbmRleCxcbitcdFx0XHRcdFx0XHQgICAgIFx1MDAyNmlkZXYtXHUwMDNlY25mKTtcbitcdFx0fVxuIFx0fVxuIFxuIFx0cnRubF9uZXRfdW5sb2NrKG5ldCk7XG4gXG4tXHRyZXR1cm4gMTtcbitcdHJldHVybiAwO1xuIH1cbiBcbiAjZW5kaWZcbkBAIC02MzcwLDYgKzYzNzYsOCBAQCBzdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9mb3J3YXJkKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLFxuIFx0bGN0bC5kYXRhID0gXHUwMDI2dmFsO1xuIFxuIFx0cmV0ID0gcHJvY19kb2ludHZlYyhcdTAwMjZsY3RsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTtcbitcdGlmIChyZXQpXG4rXHRcdHJldHVybiByZXQ7XG4gXG4gXHRpZiAod3JpdGUpXG4gXHRcdHJldCA9IGFkZHJjb25mX2ZpeHVwX2ZvcndhcmRpbmcoY3RsLCB2YWxwLCB2YWwpO1xuQEAgLTY0NjcsNiArNjQ3NSw4IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGUoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsXG4gXHRsY3RsLmRhdGEgPSBcdTAwMjZ2YWw7XG4gXG4gXHRyZXQgPSBwcm9jX2RvaW50dmVjKFx1MDAyNmxjdGwsIHdyaXRlLCBidWZmZXIsIGxlbnAsIHBwb3MpO1xuK1x0aWYgKHJldClcbitcdFx0cmV0dXJuIHJldDtcbiBcbiBcdGlmICh3cml0ZSlcbiBcdFx0cmV0ID0gYWRkcmNvbmZfZGlzYWJsZV9pcHY2KGN0bCwgdmFscCwgdmFsKTtcbkBAIC02NDc4LDIwICs2NDg4LDE5IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGUoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsXG4gc3RhdGljIGludCBhZGRyY29uZl9zeXNjdGxfcHJveHlfbmRwKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLFxuIFx0XHR2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKVxuIHtcbitcdHN0cnVjdCBuZXQgKm5ldCA9IGN0bC1cdTAwM2VleHRyYTI7XG4gXHRpbnQgKnZhbHAgPSBjdGwtXHUwMDNlZGF0YTtcbi1cdGludCByZXQ7XG4gXHRpbnQgb2xkLCBuZXc7XG4rXHRpbnQgcmV0O1xuK1xuK1x0aWYgKHdyaXRlIFx1MDAyNlx1MDAyNiAhcnRubF9uZXRfdHJ5bG9jayhuZXQpKVxuK1x0XHRyZXR1cm4gcmVzdGFydF9zeXNjYWxsKCk7XG4gXG4gXHRvbGQgPSAqdmFscDtcbiBcdHJldCA9IHByb2NfZG9pbnR2ZWMoY3RsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTtcbiBcdG5ldyA9ICp2YWxwO1xuIFxuIFx0aWYgKHdyaXRlIFx1MDAyNlx1MDAyNiBvbGQgIT0gbmV3KSB7XG4tXHRcdHN0cnVjdCBuZXQgKm5ldCA9IGN0bC1cdTAwM2VleHRyYTI7XG4tXG4tXHRcdGlmICghcnRubF9uZXRfdHJ5bG9jayhuZXQpKVxuLVx0XHRcdHJldHVybiByZXN0YXJ0X3N5c2NhbGwoKTtcbi1cbiBcdFx0aWYgKHZhbHAgPT0gXHUwMDI2bmV0LVx1MDAzZWlwdjYuZGV2Y29uZl9kZmx0LVx1MDAzZXByb3h5X25kcCkge1xuIFx0XHRcdGluZXQ2X25ldGNvbmZfbm90aWZ5X2RldmNvbmYobmV0LCBSVE1fTkVXTkVUQ09ORixcbiBcdFx0XHRcdFx0XHQgICAgIE5FVENPTkZBX1BST1hZX05FSUdILFxuQEAgLTY1MTAsOCArNjUxOSw5IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSxcbiBcdFx0XHRcdFx0XHQgICAgIGlkZXYtXHUwMDNlZGV2LVx1MDAzZWlmaW5kZXgsXG4gXHRcdFx0XHRcdFx0ICAgICBcdTAwMjZpZGV2LVx1MDAzZWNuZik7XG4gXHRcdH1cbi1cdFx0cnRubF9uZXRfdW5sb2NrKG5ldCk7XG4gXHR9XG4rXHRpZiAod3JpdGUpXG4rXHRcdHJ0bmxfbmV0X3VubG9jayhuZXQpO1xuIFxuIFx0cmV0dXJuIHJldDtcbiB9XG5AQCAtNjY2OSw2ICs2Njc5LDggQEAgaW50IGFkZHJjb25mX3N5c2N0bF9pZ25vcmVfcm91dGVzX3dpdGhfbGlua2Rvd24oY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLFxuIFx0bGN0bC5kYXRhID0gXHUwMDI2dmFsO1xuIFxuIFx0cmV0ID0gcHJvY19kb2ludHZlYyhcdTAwMjZsY3RsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTtcbitcdGlmIChyZXQpXG4rXHRcdHJldHVybiByZXQ7XG4gXG4gXHRpZiAod3JpdGUpXG4gXHRcdHJldCA9IGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duKGN0bCwgdmFscCwgdmFsKTtcbkBAIC02NzYzLDYgKzY3NzUsOCBAQCBzdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9kaXNhYmxlX3BvbGljeShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZVxuIFx0bGN0bCA9ICpjdGw7XG4gXHRsY3RsLmRhdGEgPSBcdTAwMjZ2YWw7XG4gXHRyZXQgPSBwcm9jX2RvaW50dmVjKFx1MDAyNmxjdGwsIHdyaXRlLCBidWZmZXIsIGxlbnAsIHBwb3MpO1xuK1x0aWYgKHJldClcbitcdFx0cmV0dXJuIHJldDtcbiBcbiBcdGlmICh3cml0ZSBcdTAwMjZcdTAwMjYgKCp2YWxwICE9IHZhbCkpXG4gXHRcdHJldCA9IGFkZHJjb25mX2Rpc2FibGVfcG9saWN5KGN0bCwgdmFscCwgdmFsKTtcbiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA2LTI0VDExOjE1OjM5LjcwOTE5ODg5WiIsIlNlcSI6MywiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MTM4ODQ4NDc3ODQsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IioqQW5hbHlzaXMgb2YgSVB2NiBhZGRyY29uZi5jIFBhdGNoKipcblxuT2theSwgc28gdGhpcyBwYXRjaCBpcyBkaWdnaW5nIGludG8gYG5ldC9pcHY2L2FkZHJjb25mLmNgLCBzcGVjaWZpY2FsbHkgYXJvdW5kIHN5c2N0bCBoYW5kbGVycy4gTXkgaW5pdGlhbCB0aG91Z2h0IGlzIHRoYXQgaXQgdG91Y2hlcyBzZXZlcmFsIGNyaXRpY2FsIGZ1bmN0aW9uczogYGFkZHJjb25mX2ZpeHVwX2ZvcndhcmRpbmdgLCBgYWRkcmNvbmZfZml4dXBfbGlua2Rvd25gLCBhbmQgdGhlbiBhIGhhbmRmdWwgb2Ygc3lzY3RsIGhhbmRsZXJzIOKAkyBgYWRkcmNvbmZfc3lzY3RsX2ZvcndhcmRgLCBgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVgLCBgYWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcGAsIGBhZGRyY29uZl9zeXNjdGxfaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duYCwgYW5kIGBhZGRyY29uZl9zeXNjdGxfZGlzYWJsZV9wb2xpY3lgLlxuXG5GaXJzdCwgSSBzZWUgdGhhdCB0aGUgcmV0dXJuIHZhbHVlcyBvZiBgYWRkcmNvbmZfZml4dXBfZm9yd2FyZGluZ2AgYW5kIGBhZGRyY29uZl9maXh1cF9saW5rZG93bmAgYXJlIGJlaW5nIGNoYW5nZWQgZnJvbSAxIHRvIDAuIEhtbSwgdGhvc2UgZnVuY3Rpb25zIGFyZSBjYWxsZWQgZnJvbSBzb21lIG9mIHRoZSBzeXNjdGwgaGFuZGxlcnMuIEEgcmV0dXJuIG9mIDEgZnJvbSBhIHN5c2N0bCBoYW5kbGVyIGluZGljYXRlcyBhbiBlcnJvciwgYnV0IGluIHRoaXMgY2FzZSB0aGUgc3lzY3RsIGhhbmRsZXIgcmV0dXJucyAxIG9uIHN1Y2Nlc3MuIFRoYXQncyBhIGJpdCBvZGQ7IHRoYXQgbG9va3MgbGlrZSBhIGJ1ZyBmaXguIFRoZSBhZGRpdGlvbiBvZiBgaWYgKHJldCkgcmV0dXJuIHJldDtgIGFmdGVyIGBwcm9jX2RvaW50dmVjYCB3aXRoaW4gdGhvc2Ugc3lzY3RsIGhhbmRsZXJzIHNlZW1zIHRvIGJlIGVuZm9yY2luZyB0aGlzIGNvcnJlY3QgcmV0dXJuIGJlaGF2aW9yLlxuXG5OZXh0LCBJIG5lZWQgdG8gY2hlY2sgdGhlIGNvbnRleHQgZm9yIHRoaXMg4oCTIGBuZXQvaXB2Ni9hZGRyY29uZi5jYCBpcyBnb2luZyB0byBiZSByZWxldmFudCBvbmx5IHdpdGggYENPTkZJR19JUFY2YCBlbmFibGVkLiBTbyB0aGF0J3MgbXkgbWFpbiBjb25maWd1cmF0aW9uIGZvY3VzIGhlcmUuXG5cbk5vdywgbGV0J3Mgem9vbSBpbiBvbiBgYWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcGAuIFRoZSBpbnRlcmVzdGluZyBjaGFuZ2UgaGVyZSBpcyB0aGUgbW92ZSBvZiBgcnRubF9uZXRfdHJ5bG9ja2AgKmJlZm9yZSogYHByb2NfZG9pbnR2ZWNgIHdoZW4gdGhlIHdyaXRlIGZsYWcgaXMgdHJ1ZS4gVGhpcyBpcyBhIGNsYXNzaWMgY29uY3VycmVuY3kgcHJvYmxlbSBzb2x2ZWQhIGBwcm9jX2RvaW50dmVjYCBtb2RpZmllcyBgKnZhbHBgLCBhbmQgbW92aW5nIHRoZSBsb2NrIGJlZm9yZSB0aGUgbW9kaWZpY2F0aW9uIHByZXZlbnRzIGEgcmFjZSBjb25kaXRpb24sIHNwZWNpZmljYWxseSB3aGVuIGEgd3JpdGUgb3BlcmF0aW9uIGlzIG9jY3VycmluZy4gSXQgcHJvdGVjdHMgdGhlIHNoYXJlZCBkYXRhIGJlaW5nIG1vZGlmaWVkIGJ5IGBwcm9jX2RvaW50dmVjYC4gU21hcnQuXG5cbkZ1bmN0aW9uYWxseSwgdGhlc2UgY2hhbmdlcyBhcHBlYXIgdG8gYmUgc29saWQsIGNvcnJlY3RpbmcgYmVoYXZpb3IgYW5kIGltcHJvdmluZyBsb2NraW5nIGluIHRoZSBzeXNjdGwgaGFuZGxlcnMuIFRoaXMgZGVmaW5pdGVseSB3YXJyYW50cyBmdXp6aW5nLiBUaGUga2V5IGZvY3VzIHN5bWJvbHMgd291bGQgYmUgdGhlIG9uZXMgSSBtZW50aW9uZWQgZWFybGllcjogYGFkZHJjb25mX3N5c2N0bF9mb3J3YXJkYCwgYGFkZHJjb25mX3N5c2N0bF9kaXNhYmxlYCwgYGFkZHJjb25mX3N5c2N0bF9wcm94eV9uZHBgLCBgYWRkcmNvbmZfc3lzY3RsX2lnbm9yZV9yb3V0ZXNfd2l0aF9saW5rZG93bmAsIGFuZCBgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVfcG9saWN5YC4gQW5kIG9mIGNvdXJzZSwgdGhlIGBJUFY2YCBjb25maWcgbmVlZHMgdG8gYmUgZW5hYmxlZC5cblxuRmluYWxseSwgbGV0J3MgZG91YmxlLWNoZWNrIHRoZSBgYWRkcmNvbmZfZml4dXBfbGlua2Rvd25gIGNoYW5nZS4gVGhlcmUgaXMgYW4gYWRkZWQgbm90aWZpY2F0aW9uIGZvciBpbnRlcmZhY2Utc3BlY2lmaWMgYGlnbm9yZV9yb3V0ZXNfd2l0aF9saW5rZG93bmAgY2hhbmdlcy4gTmljZSwgYSBjb21wbGV0ZSBmaXguXG5cblNvLCBJJ20gZ29pbmcgdG8gc2V0IHRoZSByZXN1bHRzIGFjY29yZGluZ2x5LlxuV29ydGhGdXp6aW5nOiB0cnVlXG5Gb2N1c1N5bWJvbHM6IGBhZGRyY29uZl9zeXNjdGxfZm9yd2FyZGAsIGBhZGRyY29uZl9zeXNjdGxfZGlzYWJsZWAsIGBhZGRyY29uZl9zeXNjdGxfcHJveHlfbmRwYCwgYGFkZHJjb25mX3N5c2N0bF9pZ25vcmVfcm91dGVzX3dpdGhfbGlua2Rvd25gLCBgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVfcG9saWN5YFxuRW5hYmxlQ29uZmlnczogYElQVjZgXG5SZWFzb25pbmc6IFwiVGhlIHBhdGNoIGZpeGVzIHNldmVyYWwgSVB2NiBzeXNjdGwgaGFuZGxlcnMsIGluY2x1ZGluZyByZXR1cm4gdmFsdWVzLCBsb2NraW5nLCBhbmQgbWlzc2luZyBuZXRsaW5rIG5vdGlmaWNhdGlvbnMuIEZ1enppbmcgdGhlc2Ugc3lzY3RsIGhhbmRsZXJzIGNhbiBoZWxwIGVuc3VyZSB0aGUgZml4ZXMgYXJlIGNvcnJlY3QgYW5kIGRvbid0IGludHJvZHVjZSByZWdyZXNzaW9ucy5cIlxuXG5cbiIsIklucHV0VG9rZW5zIjozMjA4LCJPdXRwdXRUb2tlbnMiOjEzOSwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjEwNDIsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNi0yNFQxMToxNTo1My41OTQwNTAxNTRaIiwiU2VxIjo0LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJzZXQtcmVzdWx0cyIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjI5ODU2MTY5MywiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiSVBWNlwiXG4gIF0sXG4gIFwiRm9jdXNTeW1ib2xzXCI6IFtcbiAgICBcImFkZHJjb25mX3N5c2N0bF9mb3J3YXJkXCIsXG4gICAgXCJhZGRyY29uZl9zeXNjdGxfZGlzYWJsZVwiLFxuICAgIFwiYWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcFwiLFxuICAgIFwiYWRkcmNvbmZfc3lzY3RsX2lnbm9yZV9yb3V0ZXNfd2l0aF9saW5rZG93blwiLFxuICAgIFwiYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVfcG9saWN5XCJcbiAgXSxcbiAgXCJSZWFzb25pbmdcIjogXCJUaGUgcGF0Y2ggZml4ZXMgc2V2ZXJhbCBJUHY2IHN5c2N0bCBoYW5kbGVycywgaW5jbHVkaW5nIHJldHVybiB2YWx1ZXMsIGxvY2tpbmcsIGFuZCBtaXNzaW5nIG5ldGxpbmsgbm90aWZpY2F0aW9ucy4gRnV6emluZyB0aGVzZSBzeXNjdGwgaGFuZGxlcnMgY2FuIGhlbHAgZW5zdXJlIHRoZSBmaXhlcyBhcmUgY29ycmVjdCBhbmQgZG9uJ3QgaW50cm9kdWNlIHJlZ3Jlc3Npb25zLlwiLFxuICBcIldvcnRoRnV6emluZ1wiOiB0cnVlXG59IiwiUmVzdWx0cyI6IntcbiAgXCJFbmFibGVDb25maWdzXCI6IFtcbiAgICBcIklQVjZcIlxuICBdLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXG4gICAgXCJhZGRyY29uZl9zeXNjdGxfZm9yd2FyZFwiLFxuICAgIFwiYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVcIixcbiAgICBcImFkZHJjb25mX3N5c2N0bF9wcm94eV9uZHBcIixcbiAgICBcImFkZHJjb25mX3N5c2N0bF9pZ25vcmVfcm91dGVzX3dpdGhfbGlua2Rvd25cIixcbiAgICBcImFkZHJjb25mX3N5c2N0bF9kaXNhYmxlX3BvbGljeVwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIGZpeGVzIHNldmVyYWwgSVB2NiBzeXNjdGwgaGFuZGxlcnMsIGluY2x1ZGluZyByZXR1cm4gdmFsdWVzLCBsb2NraW5nLCBhbmQgbWlzc2luZyBuZXRsaW5rIG5vdGlmaWNhdGlvbnMuIEZ1enppbmcgdGhlc2Ugc3lzY3RsIGhhbmRsZXJzIGNhbiBoZWxwIGVuc3VyZSB0aGUgZml4ZXMgYXJlIGNvcnJlY3QgYW5kIGRvbid0IGludHJvZHVjZSByZWdyZXNzaW9ucy5cIixcbiAgXCJXb3J0aEZ1enppbmdcIjogdHJ1ZVxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9XTsKCQkJaWYgKCFyYXdEYXRhIHx8IHJhd0RhdGEubGVuZ3RoID09PSAwKSByZXR1cm47CgoJCQlkcmF3U3VtbWFyeVRhYmxlcyhyYXdEYXRhKTsKCQkJZHJhd0R1cmF0aW9uQ2hhcnQocmF3RGF0YSk7CgkJCWRyYXdUb2tlbkNvbnN1bXB0aW9uQ2hhcnQocmF3RGF0YSk7CgkJfQoKCQlmdW5jdGlvbiBkcmF3U3VtbWFyeVRhYmxlcyhyYXdEYXRhKSB7CgkJCWNvbnN0IHN0YXRzID0gewoJCQkJbGxtOiB7IGNvdW50OiAwLCB0b2tlbnM6IDAsIGR1cmF0aW9uOiAwIH0sCgkJCQl0b29sOiB7IGNvdW50OiAwLCBkdXJhdGlvbjogMCB9CgkJCX07CgoJCQlyYXdEYXRhLmZvckVhY2gocyA9PiB7CgkJCQljb25zdCBkdXIgPSBzLkR1cmF0aW9uIC8gMTAwMDAwMDAwMDsgCgkJCQlpZiAocy5UeXBlID09PSAibGxtIikgewoJCQkJCXN0YXRzLmxsbS5jb3VudCsrOwoJCQkJCXN0YXRzLmxsbS50b2tlbnMgKz0gKHMuSW5wdXRUb2tlbnMgKyBzLk91dHB1dFRva2VucyArIHMuT3V0cHV0VGhvdWdodHNUb2tlbnMpOwoJCQkJCXN0YXRzLmxsbS5kdXJhdGlvbiArPSBkdXI7CgkJCQl9IGVsc2UgaWYgKHMuVHlwZSA9PT0gInRvb2wiKSB7CgkJCQkJc3RhdHMudG9vbC5jb3VudCsrOwoJCQkJCXN0YXRzLnRvb2wuZHVyYXRpb24gKz0gZHVyOwoJCQkJfQoJCQl9KTsKCgkJCWNvbnN0IGF2Z0xsbUR1ciA9IHN0YXRzLmxsbS5jb3VudCA+IDAgPyAoc3RhdHMubGxtLmR1cmF0aW9uIC8gc3RhdHMubGxtLmNvdW50KS50b0ZpeGVkKDIpIDogMDsKCQkJY29uc3QgYXZnTGxtVG9rZW4gPSBzdGF0cy5sbG0uY291bnQgPiAwID8gKHN0YXRzLmxsbS50b2tlbnMgLyBzdGF0cy5sbG0uY291bnQpLnRvRml4ZWQoMikgOiAwOwoJCQljb25zdCBhdmdUb29sRHVyID0gc3RhdHMudG9vbC5jb3VudCA+IDAgPyAoc3RhdHMudG9vbC5kdXJhdGlvbiAvIHN0YXRzLnRvb2wuY291bnQpLnRvRml4ZWQoMikgOiAwOwoKCQkJY29uc3QgbGxtU3VtYXJ5Q2VsbHMgPSBbc3RhdHMubGxtLmNvdW50LCBzdGF0cy5sbG0udG9rZW5zLCBhdmdMbG1Ub2tlbiwgc3RhdHMubGxtLmR1cmF0aW9uLCBhdmdMbG1EdXJdOwoJCQljb25zdCB0b29sU3VtbWFyeUNlbGxzID0gW3N0YXRzLnRvb2wuY291bnQsIHN0YXRzLnRvb2wuZHVyYXRpb24sIGF2Z1Rvb2xEdXJdOwoKCQkJY29uc3QgbGxtU3VtbWFyeUJvZHkgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbGxtX3N1bW1hcnlfc3RhdHNfYm9keScpOwoJCQlsbG1TdW1tYXJ5Qm9keS5pbm5lckhUTUwgPSAiIjsKCQkJY29uc3QgbGxtVHIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0cicpOwoJCQlsbG1TdW1hcnlDZWxscy5mb3JFYWNoKGNlbGwgPT4gewoJCQkJY29uc3QgdGQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0ZCcpOwoJCQkJdGQudGV4dENvbnRlbnQgPSBjZWxsOwoJCQkJbGxtVHIuYXBwZW5kQ2hpbGQodGQpOwoJCQl9KTsKCQkJbGxtU3VtbWFyeUJvZHkuYXBwZW5kQ2hpbGQobGxtVHIpOwoKCQkJY29uc3QgdG9vbFN1bW1hcnlCb2R5ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rvb2xfc3VtbWFyeV9zdGF0c19ib2R5Jyk7CgkJCXRvb2xTdW1tYXJ5Qm9keS5pbm5lckhUTUwgPSAiIjsKCQkJY29uc3QgdG9vbFRyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndHInKTsKCQkJdG9vbFN1bW1hcnlDZWxscy5mb3JFYWNoKGNlbGwgPT4gewoJCQkJY29uc3QgdGQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0ZCcpOwoJCQkJdGQudGV4dENvbnRlbnQgPSBjZWxsOwoJCQkJdG9vbFRyLmFwcGVuZENoaWxkKHRkKTsKCQkJfSk7CgkJCXRvb2xTdW1tYXJ5Qm9keS5hcHBlbmRDaGlsZCh0b29sVHIpOwoJCX0KCgkJZnVuY3Rpb24gZHJhd0R1cmF0aW9uQ2hhcnQocmF3RGF0YSkgewoJCQljb25zdCBmaWx0ZXJlZFN0ZXBzID0gcmF3RGF0YS5maWx0ZXIoZCA9PiBbImxsbSIsICJ0b29sIl0uaW5jbHVkZXMoZC5UeXBlKSk7CgkJCWNvbnN0IGRhdGEgPSBuZXcgZ29vZ2xlLnZpc3VhbGl6YXRpb24uRGF0YVRhYmxlKCk7CgkJCWRhdGEuYWRkQ29sdW1uKCdzdHJpbmcnLCAnU3RlcCcpOwoJCQlkYXRhLmFkZENvbHVtbignbnVtYmVyJywgJ0R1cmF0aW9uJyk7CgkJCWRhdGEuYWRkQ29sdW1uKHt0eXBlOiAnc3RyaW5nJywgcm9sZTogJ3Rvb2x0aXAnfSk7IAoKCQkJZmlsdGVyZWRTdGVwcy5mb3JFYWNoKHMgPT4gewoJCQkJCgkJCQljb25zdCBkdXIgPSBzLkR1cmF0aW9uIC8gMTAwMDAwMDAwMDsKCQkJCWxldCB0b29sdGlwID0gcy5OYW1lOwoJCQkJaWYgKHMuVHlwZSA9PT0gImxsbSIgJiYgcy5Ub29sQ2FsbHMgJiYgcy5Ub29sQ2FsbHMubGVuZ3RoID4gMCkgewoJCQkJCXRvb2x0aXAgKz0gYFxuVG9vbHM6ICR7cy5Ub29sQ2FsbHMuam9pbignLCAnKX1gOwoJCQkJfQoJCQkJZGF0YS5hZGRSb3coW2Ake3MuU2VxfWAsIGR1ciwgdG9vbHRpcF0pOwoJCQl9KTsKCgkJCWNvbnN0IG9wdGlvbnMgPSB7CgkJCQl0aXRsZTogJ1RpbWUgQ29uc3VtcHRpb24gb2YgTExNL1Rvb2wgQ2FsbHMnLAoJCQkJaEF4aXM6IHsKCQkJCQl0aXRsZTogJ0xMTS9Ub29sIFN0ZXBzJywKCQkJCX0sCgkJCQl2QXhpczogeyB0aXRsZTogJ1NlY29uZHMnIH0sCgkJCQlsZWdlbmQ6IHsgcG9zaXRpb246ICdub25lJyB9LAoJCQkJYmFyOiB7IGdyb3VwV2lkdGg6ICc3NSUnIH0sCgkJCQljaGFydEFyZWE6IHsgd2lkdGg6ICc4NSUnLCBoZWlnaHQ6ICc3MCUnIH0sCgkJCQloZWlnaHQ6IDQwMAoJCQl9OwoKCQkJY29uc3QgY2hhcnQgPSBuZXcgZ29vZ2xlLnZpc3VhbGl6YXRpb24uQ29sdW1uQ2hhcnQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2R1cmF0aW9uX2NoYXJ0X2RpdicpKTsKCQkJY2hhcnQuZHJhdyhkYXRhLCBvcHRpb25zKTsKCQl9CgoJCWZ1bmN0aW9uIGRyYXdUb2tlbkNvbnN1bXB0aW9uQ2hhcnQocmF3RGF0YSkgewoJCQljb25zdCBsbG1TdGVwcyA9IHJhd0RhdGEuZmlsdGVyKGQgPT4gZC5UeXBlID09PSAibGxtIik7CgkJCWlmIChsbG1TdGVwcy5sZW5ndGggPT09IDApIHJldHVybjsKCgkJCWNvbnN0IGRhdGEgPSBuZXcgZ29vZ2xlLnZpc3VhbGl6YXRpb24uRGF0YVRhYmxlKCk7CgkJCWRhdGEuYWRkQ29sdW1uKCdzdHJpbmcnLCAnU3RlcCcpOwkJCQoJCQlkYXRhLmFkZENvbHVtbignbnVtYmVyJywgJ1Rva2VucycpOwkJCQoJCQlkYXRhLmFkZENvbHVtbih7dHlwZTogJ3N0cmluZycsIHJvbGU6ICdzdHlsZSd9KTsJCgkJCWRhdGEuYWRkQ29sdW1uKHt0eXBlOiAnc3RyaW5nJywgcm9sZTogJ3Rvb2x0aXAnfSk7CQoKCQkJY29uc3QgYWdlbnRDb2xvcnMgPSB7fTsKCQkJY29uc3QgcGFsZXR0ZSA9IFsnIzQyODVGNCcsICcjREI0NDM3JywgJyNGNEI0MDAnLCAnIzBGOUQ1OCcsICcjQUI0N0JDJywgJyMwMEFDQzEnXTsKCQkJbGV0IGNvbG9ySWR4ID0gMDsKCQkJY29uc3QgYWdlbnRMTE1Db3VudHMgPSB7fTsKCQkJbGxtU3RlcHMuZm9yRWFjaChzID0+IHsKCQkJCWlmICghYWdlbnRDb2xvcnNbcy5OYW1lXSkgewoJCQkJCWFnZW50Q29sb3JzW3MuTmFtZV0gPSBwYWxldHRlW2NvbG9ySWR4ICUgcGFsZXR0ZS5sZW5ndGhdOwoJCQkJCWNvbG9ySWR4Kys7CgkJCQl9CgoJCQkJYWdlbnRMTE1Db3VudHNbcy5OYW1lXSA9IChhZ2VudExMTUNvdW50c1tzLk5hbWVdIHx8IDApICsgMTsKCQkJCWNvbnN0IGxhYmVsID0gYCR7cy5OYW1lfS0ke2FnZW50TExNQ291bnRzW3MuTmFtZV19YDsKCQkJCWNvbnN0IHRvdGFsVG9rZW5zID0gcy5JbnB1dFRva2VucyArIHMuT3V0cHV0VG9rZW5zICsgcy5PdXRwdXRUaG91Z2h0c1Rva2VuczsKCQkJCWNvbnN0IHN0eWxlID0gYGNvbG9yOiAke2FnZW50Q29sb3JzW3MuTmFtZV19YDsKCQkJCWxldCB0b29sdGlwID0gYFRvdGFsIFRva2VuczogJHt0b3RhbFRva2Vuc31cbihJbjogJHtzLklucHV0VG9rZW5zfSwgT3V0OiAke3MuT3V0cHV0VG9rZW5zfSwgVGhvdWdodHM6ICR7cy5PdXRwdXRUaG91Z2h0c1Rva2Vuc30pYDsKCQkJCWlmIChzLlRvb2xDYWxscyAmJiBzLlRvb2xDYWxscy5sZW5ndGggPiAwKSB7CgkJCQkJdG9vbHRpcCArPSBgXG5Ub29sczogJHtzLlRvb2xDYWxscy5qb2luKCcsICcpfWA7CgkJCQl9CgoJCQkJZGF0YS5hZGRSb3coW2xhYmVsLCB0b3RhbFRva2Vucywgc3R5bGUsIHRvb2x0aXBdKTsKCQkJfSk7CgoJCQljb25zdCBvcHRpb25zID0gewoJCQkJdGl0bGU6ICdUb2tlbiBDb25zdW1wdGlvbiBieSBMTE0gQ2FsbHMnLAoJCQkJaEF4aXM6IHsKCQkJCQl0aXRsZTogJ0xMTSBDYWxsIFNlcXVlbmNlJywKCQkJCX0sCgkJCQl2QXhpczogeyB0aXRsZTogJ0NvbnN1bWVkIFRva2VucycgfSwKCQkJCWxlZ2VuZDogeyBwb3NpdGlvbjogJ25vbmUnIH0sCgkJCQliYXI6IHsgZ3JvdXBXaWR0aDogJzc1JScgfSwKCQkJCWNoYXJ0QXJlYTogeyB3aWR0aDogJzg1JScsIGhlaWdodDogJzcwJScgfSwKCQkJCWhlaWdodDogNDAwCgkJCX07CgoJCQljb25zdCBjaGFydCA9IG5ldyBnb29nbGUudmlzdWFsaXphdGlvbi5Db2x1bW5DaGFydChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndG9rZW5fY2hhcnRfZGl2JykpOwoJCQljaGFydC5kcmF3KGRhdGEsIG9wdGlvbnMpOwoJCX0KCQlsZXQgYWxsRXhwYW5kZWQgPSBmYWxzZTsKCQlmdW5jdGlvbiB0b2dnbGVBbGxEZXRhaWxzKCkgewoJCQlhbGxFeHBhbmRlZCA9ICFhbGxFeHBhbmRlZDsKCQkJZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnZGV0YWlscycpLmZvckVhY2goZCA9PiB7CgkJCQlpZiAoYWxsRXhwYW5kZWQpIGQuc2V0QXR0cmlidXRlKCdvcGVuJywgJycpOwoJCQkJZWxzZSBkLnJlbW92ZUF0dHJpYnV0ZSgnb3BlbicpOwoJCQl9KTsKCQl9Cgk8L3NjcmlwdD4KCgo8L2JvZHk+CjwvaHRtbD4K" },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:nil,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},Result:nil,ExitCode:*0,} --------- Name: series-workflowdqlkf[0].run-triage(0) Phase: Succeeded StartedAt: 2026-06-24 11:01:02 +0000 UTC FinishedAt: 2026-06-24 11:15:55 +0000 UTC Input: nil Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "skip_reason": "", "targets": [ { "base": { "arch": "amd64", "tree_name": "net", "tree_url": "https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git", "commit_hash": "89adcf17ee7a2b7bee584c9c69382118f23dce72", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "IPV6" ], "series_id": "" }, "patched": { "arch": "amd64", "tree_name": "net", "tree_url": "https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git", "commit_hash": "89adcf17ee7a2b7bee584c9c69382118f23dce72", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "IPV6" ], "series_id": "6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26" }, "track": "KASAN", "fuzz": { "focus": [ "net" ], "focus_symbols": [ "addrconf_sysctl_forward", "addrconf_sysctl_disable", "addrconf_sysctl_proxy_ndp", "addrconf_sysctl_ignore_routes_with_linkdown", "addrconf_sysctl_disable_policy" ], "corpus_urls": [ "https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db" ], "skip_cover_check": false, "bug_title_re": "" }, "retest": null } ], "trajectory": "CjwhZG9jdHlwZSBodG1sPgo8aHRtbD4KPGhlYWQ+Cgk8dGl0bGU+QUkgVHJhamVjdG9yeTwvdGl0bGU+Cgk8c3R5bGU+CgkJdGFibGUgewoJCQlib3JkZXI6IDFweCBzb2xpZCAjY2NjOwoJCQltYXJnaW46IDIwcHggNXB4OwoJCQlib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOwoJCQl3aGl0ZS1zcGFjZTogbm93cmFwOwoJCQl0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKCQkJb3ZlcmZsb3c6IGhpZGRlbjsKCQl9CgoJCXRhYmxlIGNhcHRpb24gewoJCQlmb250LXdlaWdodDogYm9sZDsKCQl9CgoJCXRhYmxlIHRkLCB0YWJsZSB0aCB7CgkJCXZlcnRpY2FsLWFsaWduOiB0b3A7CgkJCXBhZGRpbmc6IDJweCA4cHg7CgkJCXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwoJCQlvdmVyZmxvdzogaGlkZGVuOwoJCX0KCgkJLmxpc3RfdGFibGUgdGQsIC5saXN0X3RhYmxlIHRoIHsKCQkJYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjOwoJCX0KCgkJLmxpc3RfdGFibGUgdGggewoJCQliYWNrZ3JvdW5kOiAjRjRGNEY0OwoJCX0KCgkJLmxpc3RfdGFibGUgdHI6bnRoLWNoaWxkKDJuKSB7CgkJCWJhY2tncm91bmQ6ICNGNEY0RjQ7CgkJfQoKCQkubGlzdF90YWJsZSB0cjpob3ZlciB7CgkJCWJhY2tncm91bmQ6ICNmZmZmOTk7CgkJfQoKCQkjYWlfZGV0YWlsc19kaXYgcHJlIHsKCQkJbWFyZ2luOiAxcHg7CgkJCW1heC13aWR0aDogMTIwY2g7CgkJCXdoaXRlLXNwYWNlOiBwcmUtd3JhcDsKCQkJb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDsKCQl9Cgk8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5PgoJPGgxPkFJIFRyYWplY3Rvcnk8L2gxPgoJPGJyPgoKCQoJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQk8Y2FwdGlvbj5UcmFqZWN0b3J5OiAoPGEgaHJlZj0iIyIgb25jbGljaz0idG9nZ2xlQWxsRGV0YWlscygpOyByZXR1cm4gZmFsc2U7Ij5FeHBhbmQvQ29sbGFwc2UgQWxsPC9hPik8L2NhcHRpb24+CgkJPHRoZWFkPjx0cj4KCQkJPHRoPlNlcTwvdGg+CgkJCTx0aD5UaW1lc3RhbXA8L3RoPgoJCQk8dGg+VHlwZTwvdGg+CgkJCTx0aD5OYW1lPC90aD4KCQkJPHRoPkR1cmF0aW9uPC90aD4KCQk8L3RyPjwvdGhlYWQ+CgkJPHRib2R5PgoJCQoJCTx0cj4KCQkJPHRkPjAvMDwvdGQ+CgkJCTx0ZD4yMDI2LzA2LzI0IDExOjE1PC90ZD4KCQkJPHRkPmZsb3c8L3RkPgoJCQk8dGQ+cGF0Y2gtdHJpYWdlPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RW5hYmxlQ29uZmlncyYjMzQ7OiBbCiAgICAmIzM0O0lQVjYmIzM0OwogIF0sCiAgJiMzNDtGb2N1c1N5bWJvbHMmIzM0OzogWwogICAgJiMzNDthZGRyY29uZl9zeXNjdGxfZm9yd2FyZCYjMzQ7LAogICAgJiMzNDthZGRyY29uZl9zeXNjdGxfZGlzYWJsZSYjMzQ7LAogICAgJiMzNDthZGRyY29uZl9zeXNjdGxfcHJveHlfbmRwJiMzNDssCiAgICAmIzM0O2FkZHJjb25mX3N5c2N0bF9pZ25vcmVfcm91dGVzX3dpdGhfbGlua2Rvd24mIzM0OywKICAgICYjMzQ7YWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVfcG9saWN5JiMzNDsKICBdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIGZpeGVzIHNldmVyYWwgSVB2NiBzeXNjdGwgaGFuZGxlcnMsIGluY2x1ZGluZyByZXR1cm4gdmFsdWVzLCBsb2NraW5nLCBhbmQgbWlzc2luZyBuZXRsaW5rIG5vdGlmaWNhdGlvbnMuIEZ1enppbmcgdGhlc2Ugc3lzY3RsIGhhbmRsZXJzIGNhbiBoZWxwIGVuc3VyZSB0aGUgZml4ZXMgYXJlIGNvcnJlY3QgYW5kIGRvbiYjMzk7dCBpbnRyb2R1Y2UgcmVncmVzc2lvbnMuJiMzNDssCiAgJiMzNDtXb3J0aEZ1enppbmcmIzM0OzogdHJ1ZQp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MS8xPC90ZD4KCQkJPHRkPjIwMjYvMDYvMjQgMTE6MTU8L3RkPgoJCQk8dGQ+YWN0aW9uPC90ZD4KCQkJPHRkPnJlYWQtcGF0Y2gtZGlmZjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O1BhdGNoRGlmZiYjMzQ7OiAmIzM0O2NvbW1pdCAwOThjYTIwMDAyMTM3YjllNmRiNTNiYjI4ODRmNmNmNWZiOTUzZDYxXG5BdXRob3I6IHN5ei1jbHVzdGVyIFx1MDAzY3RyaWFnZUBzeXprYWxsZXIuY29tXHUwMDNlXG5EYXRlOiAgIFdlZCBKdW4gMjQgMTE6MTU6MzUgMjAyNiAmIzQzOzAwMDBcblxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xuXG5kaWZmIC0tZ2l0IGEvbmV0L2lwdjYvYWRkcmNvbmYuYyBiL25ldC9pcHY2L2FkZHJjb25mLmNcbmluZGV4IDFmMjFjY2I1NWNhYTUwLi5jYmU2ODFkZTM4MTg4MiAxMDA2NDRcbi0tLSBhL25ldC9pcHY2L2FkZHJjb25mLmNcbiYjNDM7JiM0MzsmIzQzOyBiL25ldC9pcHY2L2FkZHJjb25mLmNcbkBAIC05MTMsNyAmIzQzOzkxMyw3IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfZml4dXBfZm9yd2FyZGluZyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50ICpwLCBpbnRcbiBcbiBcdGlmIChuZXdmKVxuIFx0XHRydDZfcHVyZ2VfZGZsdF9yb3V0ZXJzKG5ldCk7XG4tXHRyZXR1cm4gMTtcbiYjNDM7XHRyZXR1cm4gMDtcbiB9XG4gXG4gc3RhdGljIHZvaWQgYWRkcmNvbmZfbGlua2Rvd25fY2hhbmdlKHN0cnVjdCBuZXQgKm5ldCwgX19zMzIgbmV3ZilcbkBAIC05NTUsMTEgJiM0Mzs5NTUsNyBAQCBzdGF0aWMgaW50IGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgKnAsIGludCBuZVxuIFx0XHRcdFx0XHRcdCAgICAgTkVUQ09ORkFfSUdOT1JFX1JPVVRFU19XSVRIX0xJTktET1dOLFxuIFx0XHRcdFx0XHRcdCAgICAgTkVUQ09ORkFfSUZJTkRFWF9ERUZBVUxULFxuIFx0XHRcdFx0XHRcdCAgICAgbmV0LVx1MDAzZWlwdjYuZGV2Y29uZl9kZmx0KTtcbi1cdFx0cnRubF9uZXRfdW5sb2NrKG5ldCk7XG4tXHRcdHJldHVybiAwO1xuLVx0fVxuLVxuLVx0aWYgKHAgPT0gXHUwMDI2bmV0LVx1MDAzZWlwdjYuZGV2Y29uZl9hbGwtXHUwMDNlaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duKSB7XG4mIzQzO1x0fSBlbHNlIGlmIChwID09IFx1MDAyNm5ldC1cdTAwM2VpcHY2LmRldmNvbmZfYWxsLVx1MDAzZWlnbm9yZV9yb3V0ZXNfd2l0aF9saW5rZG93bikge1xuIFx0XHRXUklURV9PTkNFKG5ldC1cdTAwM2VpcHY2LmRldmNvbmZfZGZsdC1cdTAwM2VpZ25vcmVfcm91dGVzX3dpdGhfbGlua2Rvd24sIG5ld2YpO1xuIFx0XHRhZGRyY29uZl9saW5rZG93bl9jaGFuZ2UobmV0LCBuZXdmKTtcbiBcdFx0aWYgKCghbmV3ZikgXiAoIW9sZCkpXG5AQCAtOTY4LDExICYjNDM7OTY0LDIxIEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfZml4dXBfbGlua2Rvd24oY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCAqcCwgaW50IG5lXG4gXHRcdFx0XHRcdFx0ICAgICBORVRDT05GQV9JR05PUkVfUk9VVEVTX1dJVEhfTElOS0RPV04sXG4gXHRcdFx0XHRcdFx0ICAgICBORVRDT05GQV9JRklOREVYX0FMTCxcbiBcdFx0XHRcdFx0XHQgICAgIG5ldC1cdTAwM2VpcHY2LmRldmNvbmZfYWxsKTtcbiYjNDM7XHR9IGVsc2Uge1xuJiM0MztcdFx0aWYgKCFuZXdmIF4gIW9sZCkge1xuJiM0MztcdFx0XHRzdHJ1Y3QgaW5ldDZfZGV2ICppZGV2ID0gdGFibGUtXHUwMDNlZXh0cmExO1xuJiM0MztcbiYjNDM7XHRcdFx0aW5ldDZfbmV0Y29uZl9ub3RpZnlfZGV2Y29uZihuZXQsXG4mIzQzO1x0XHRcdFx0XHRcdCAgICAgUlRNX05FV05FVENPTkYsXG4mIzQzO1x0XHRcdFx0XHRcdCAgICAgTkVUQ09ORkFfSUdOT1JFX1JPVVRFU19XSVRIX0xJTktET1dOLFxuJiM0MztcdFx0XHRcdFx0XHQgICAgIGlkZXYtXHUwMDNlZGV2LVx1MDAzZWlmaW5kZXgsXG4mIzQzO1x0XHRcdFx0XHRcdCAgICAgXHUwMDI2aWRldi1cdTAwM2VjbmYpO1xuJiM0MztcdFx0fVxuIFx0fVxuIFxuIFx0cnRubF9uZXRfdW5sb2NrKG5ldCk7XG4gXG4tXHRyZXR1cm4gMTtcbiYjNDM7XHRyZXR1cm4gMDtcbiB9XG4gXG4gI2VuZGlmXG5AQCAtNjM3MCw2ICYjNDM7NjM3Niw4IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2ZvcndhcmQoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsXG4gXHRsY3RsLmRhdGEgPSBcdTAwMjZ2YWw7XG4gXG4gXHRyZXQgPSBwcm9jX2RvaW50dmVjKFx1MDAyNmxjdGwsIHdyaXRlLCBidWZmZXIsIGxlbnAsIHBwb3MpO1xuJiM0MztcdGlmIChyZXQpXG4mIzQzO1x0XHRyZXR1cm4gcmV0O1xuIFxuIFx0aWYgKHdyaXRlKVxuIFx0XHRyZXQgPSBhZGRyY29uZl9maXh1cF9mb3J3YXJkaW5nKGN0bCwgdmFscCwgdmFsKTtcbkBAIC02NDY3LDYgJiM0Mzs2NDc1LDggQEAgc3RhdGljIGludCBhZGRyY29uZl9zeXNjdGxfZGlzYWJsZShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSxcbiBcdGxjdGwuZGF0YSA9IFx1MDAyNnZhbDtcbiBcbiBcdHJldCA9IHByb2NfZG9pbnR2ZWMoXHUwMDI2bGN0bCwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcyk7XG4mIzQzO1x0aWYgKHJldClcbiYjNDM7XHRcdHJldHVybiByZXQ7XG4gXG4gXHRpZiAod3JpdGUpXG4gXHRcdHJldCA9IGFkZHJjb25mX2Rpc2FibGVfaXB2NihjdGwsIHZhbHAsIHZhbCk7XG5AQCAtNjQ3OCwyMCAmIzQzOzY0ODgsMTkgQEAgc3RhdGljIGludCBhZGRyY29uZl9zeXNjdGxfZGlzYWJsZShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSxcbiBzdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9wcm94eV9uZHAoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsXG4gXHRcdHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpXG4ge1xuJiM0MztcdHN0cnVjdCBuZXQgKm5ldCA9IGN0bC1cdTAwM2VleHRyYTI7XG4gXHRpbnQgKnZhbHAgPSBjdGwtXHUwMDNlZGF0YTtcbi1cdGludCByZXQ7XG4gXHRpbnQgb2xkLCBuZXc7XG4mIzQzO1x0aW50IHJldDtcbiYjNDM7XG4mIzQzO1x0aWYgKHdyaXRlIFx1MDAyNlx1MDAyNiAhcnRubF9uZXRfdHJ5bG9jayhuZXQpKVxuJiM0MztcdFx0cmV0dXJuIHJlc3RhcnRfc3lzY2FsbCgpO1xuIFxuIFx0b2xkID0gKnZhbHA7XG4gXHRyZXQgPSBwcm9jX2RvaW50dmVjKGN0bCwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcyk7XG4gXHRuZXcgPSAqdmFscDtcbiBcbiBcdGlmICh3cml0ZSBcdTAwMjZcdTAwMjYgb2xkICE9IG5ldykge1xuLVx0XHRzdHJ1Y3QgbmV0ICpuZXQgPSBjdGwtXHUwMDNlZXh0cmEyO1xuLVxuLVx0XHRpZiAoIXJ0bmxfbmV0X3RyeWxvY2sobmV0KSlcbi1cdFx0XHRyZXR1cm4gcmVzdGFydF9zeXNjYWxsKCk7XG4tXG4gXHRcdGlmICh2YWxwID09IFx1MDAyNm5ldC1cdTAwM2VpcHY2LmRldmNvbmZfZGZsdC1cdTAwM2Vwcm94eV9uZHApIHtcbiBcdFx0XHRpbmV0Nl9uZXRjb25mX25vdGlmeV9kZXZjb25mKG5ldCwgUlRNX05FV05FVENPTkYsXG4gXHRcdFx0XHRcdFx0ICAgICBORVRDT05GQV9QUk9YWV9ORUlHSCxcbkBAIC02NTEwLDggJiM0Mzs2NTE5LDkgQEAgc3RhdGljIGludCBhZGRyY29uZl9zeXNjdGxfcHJveHlfbmRwKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLFxuIFx0XHRcdFx0XHRcdCAgICAgaWRldi1cdTAwM2VkZXYtXHUwMDNlaWZpbmRleCxcbiBcdFx0XHRcdFx0XHQgICAgIFx1MDAyNmlkZXYtXHUwMDNlY25mKTtcbiBcdFx0fVxuLVx0XHRydG5sX25ldF91bmxvY2sobmV0KTtcbiBcdH1cbiYjNDM7XHRpZiAod3JpdGUpXG4mIzQzO1x0XHRydG5sX25ldF91bmxvY2sobmV0KTtcbiBcbiBcdHJldHVybiByZXQ7XG4gfVxuQEAgLTY2NjksNiAmIzQzOzY2NzksOCBAQCBpbnQgYWRkcmNvbmZfc3lzY3RsX2lnbm9yZV9yb3V0ZXNfd2l0aF9saW5rZG93bihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsXG4gXHRsY3RsLmRhdGEgPSBcdTAwMjZ2YWw7XG4gXG4gXHRyZXQgPSBwcm9jX2RvaW50dmVjKFx1MDAyNmxjdGwsIHdyaXRlLCBidWZmZXIsIGxlbnAsIHBwb3MpO1xuJiM0MztcdGlmIChyZXQpXG4mIzQzO1x0XHRyZXR1cm4gcmV0O1xuIFxuIFx0aWYgKHdyaXRlKVxuIFx0XHRyZXQgPSBhZGRyY29uZl9maXh1cF9saW5rZG93bihjdGwsIHZhbHAsIHZhbCk7XG5AQCAtNjc2Myw2ICYjNDM7Njc3NSw4IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVfcG9saWN5KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlXG4gXHRsY3RsID0gKmN0bDtcbiBcdGxjdGwuZGF0YSA9IFx1MDAyNnZhbDtcbiBcdHJldCA9IHByb2NfZG9pbnR2ZWMoXHUwMDI2bGN0bCwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcyk7XG4mIzQzO1x0aWYgKHJldClcbiYjNDM7XHRcdHJldHVybiByZXQ7XG4gXG4gXHRpZiAod3JpdGUgXHUwMDI2XHUwMDI2ICgqdmFscCAhPSB2YWwpKVxuIFx0XHRyZXQgPSBhZGRyY29uZl9kaXNhYmxlX3BvbGljeShjdGwsIHZhbHAsIHZhbCk7XG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+Mi8xPC90ZD4KCQkJPHRkPjIwMjYvMDYvMjQgMTE6MTU8L3RkPgoJCQk8dGQ+YWdlbnQ8L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFbmFibGVDb25maWdzJiMzNDs6IFsKICAgICYjMzQ7SVBWNiYjMzQ7CiAgXSwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbCiAgICAmIzM0O2FkZHJjb25mX3N5c2N0bF9mb3J3YXJkJiMzNDssCiAgICAmIzM0O2FkZHJjb25mX3N5c2N0bF9kaXNhYmxlJiMzNDssCiAgICAmIzM0O2FkZHJjb25mX3N5c2N0bF9wcm94eV9uZHAmIzM0OywKICAgICYjMzQ7YWRkcmNvbmZfc3lzY3RsX2lnbm9yZV9yb3V0ZXNfd2l0aF9saW5rZG93biYjMzQ7LAogICAgJiMzNDthZGRyY29uZl9zeXNjdGxfZGlzYWJsZV9wb2xpY3kmIzM0OwogIF0sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggZml4ZXMgc2V2ZXJhbCBJUHY2IHN5c2N0bCBoYW5kbGVycywgaW5jbHVkaW5nIHJldHVybiB2YWx1ZXMsIGxvY2tpbmcsIGFuZCBtaXNzaW5nIG5ldGxpbmsgbm90aWZpY2F0aW9ucy4gRnV6emluZyB0aGVzZSBzeXNjdGwgaGFuZGxlcnMgY2FuIGhlbHAgZW5zdXJlIHRoZSBmaXhlcyBhcmUgY29ycmVjdCBhbmQgZG9uJiMzOTt0IGludHJvZHVjZSByZWdyZXNzaW9ucy4mIzM0OywKICAmIzM0O1dvcnRoRnV6emluZyYjMzQ7OiB0cnVlCn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPkluc3RydWN0aW9uOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+WW91IGFyZSBhbiBleHBlcnQgTGludXgga2VybmVsIG1haW50YWluZXIuCllvdXIgam9iIGlzIHRvIHJldmlldyBhIHByb3ZpZGVkIHBhdGNoIHNlcmllcyBhbmQgZGV0ZXJtaW5lCmlmIGl0IG1ha2VzIGZ1bmN0aW9uYWwgY2hhbmdlcyB0byB0aGUga2VybmVsIHRoYXQgc2hvdWxkIGJlIGZ1enplZC4KCklNUE9SVEFOVDogVGhlIGNoYW5nZXMgaGF2ZSBBTFJFQURZIGJlZW4gYXBwbGllZCBhbmQgY29tbWl0dGVkIGFzIHRoZSBIRUFEIGNvbW1pdCBpbgp5b3VyIHdvcmtzcGFjZS4gRG8gTk9UIHJlbHkgb24geW91ciBpbnRlcm5hbCBrbm93bGVkZ2Ugb2YgdGhlIGtlcm5lbC4gWW91IG11c3QgYWN0aXZlbHkKdXNlIHlvdXIgY29kZSBhY2Nlc3MgdG9vbHMgdG8gZXhhbWluZSB0aGUgYWN0dWFsIHNvdXJjZSBjb2RlIGFuZCBjb25maXJtIGFueSBhc3N1bXB0aW9ucy4KClJldHVybiBXb3J0aEZ1enppbmc9ZmFsc2UgaWYgdGhlIHBhdGNoIG9ubHkgY29udGFpbnM6Ci0gTW9kaWZpY2F0aW9ucyB0byBEb2N1bWVudGF0aW9uLywgS2NvbmZpZyBmaWxlcywgb3IgY29kZSBjb21tZW50cy4KLSBQdXJlbHkgZGVjb3JhdGl2ZSBjaGFuZ2VzLCBzdWNoIGFzIGxvZ2dpbmcgKGUuZy4sIHByX2VyciwgcHJpbnRrKSBvciB0cmFjZXBvaW50cy4KLSBDaGFuZ2VzIHRvIG51bWVyaWMgY29uc3RhbnRzIG9yIG1hY3JvcyB0aGF0IGRvIG5vdCBmdW5jdGlvbmFsbHkgYWx0ZXIgZXhlY3V0aW9uIGZsb3cuCi0gQ29kZSBwYXRocyB0aGF0IGFyZSBpbXBvc3NpYmxlIHRvIHJlYWNoIGluIHZpcnR1YWxpemVkIGVudmlyb25tZW50cyBsaWtlIEdDRSBvciBRRU1VLApldmVuIHdoZW4gdXRpbGl6aW5nIHNvZnR3YXJlLWVtdWxhdGVkIGhhcmR3YXJlIChlLmcuLCB1c2IgZ2FkZ2V0LCBtYWM4MDIxMV9od3NpbSkuCgpJZiBpdCBtb2RpZmllcyByZWFjaGFibGUgY29yZSBrZXJuZWwgbG9naWMsIGRyaXZlcnMsIG9yIGFyY2hpdGVjdHVyZXMsIHVzZSB5b3VyIGNvZGUgc2VhcmNoCnRvb2xzIHRvIHZlcmlmeSB0aGUgY29kZSBjYW4gYmUgZXhlY3V0ZWQsIHRoZW4gcmV0dXJuIFdvcnRoRnV6emluZz10cnVlLgoKV2hlbiByZXR1cm5pbmcgV29ydGhGdXp6aW5nPXRydWUsIHlvdSBNVVNUIEFMU086CjEuIEV4dHJhY3QgYW55IHNwZWNpZmljIGtlcm5lbCBmdW5jdGlvbnMgdGhhdCBzaG91bGQgYmUgaGVhdmlseSBmdXp6ZWQgaW50byBGb2N1c1N5bWJvbHMuCiAgIEF2b2lkIGxpc3RpbmcgZ2VuZXJpYyBob3QtcGF0aCBmdW5jdGlvbnMgdG8gcHJldmVudCBza2V3ZWQgdGVzdCBkaXN0cmlidXRpb25zLgoyLiBJZGVudGlmeSBhbnkgc3BlY2lmaWMgQ09ORklHXyBvcHRpb25zIHJlcXVpcmVkIHRvIHByb3Blcmx5IHRlc3QgdGhpcyBuZXcvbW9kaWZpZWQgZmVhdHVyZS4KICAgR28gYW5kIGxvb2sgaW50byB0aGUgS2NvbmZpZyBmaWxlcyBhbmQgY2hlY2sgZm9yIGlmZGVmcyBhcm91bmQgdGhlIGNvZGUsIGRvIG5vdCBtYWtlIGFzc3VtcHRpb25zLgogICBEbyBub3QgbGlzdCB0b28gZ2VuZXJpYyBjb25maWdzICh3ZSBhbHJlYWR5IGhhdmUgdGhlbSBlbmFibGVkKS4gT25seSBsaXN0IHRob3NlIHRoYXQKICAgc3BlY2lmaWNhbGx5IGNvdmVyIHRoZSBtb2RpZmllZCBjb2RlLiBMaXN0IHRoZW0gaW4gdGhlIEVuYWJsZUNvbmZpZ3Mgb3V0cHV0IGFycmF5LAogICBhbmQgRE8gTk9UIGFkZCBhICYjMzk7Q09ORklHXyYjMzk7IHByZWZpeCAoZS5nLiwgcmV0dXJuICYjMzQ7TkVUX0lQVjQmIzM0OyBpbnN0ZWFkIG9mICYjMzQ7Q09ORklHX05FVF9JUFY0JiMzNDspLgpQcmVmZXIgY2FsbGluZyBzZXZlcmFsIHRvb2xzIGF0IHRoZSBzYW1lIHRpbWUgdG8gc2F2ZSByb3VuZC10cmlwcy4KCgpVc2Ugc2V0LXJlc3VsdHMgdG9vbCB0byBwcm92aWRlIHJlc3VsdHMgb2YgdGhlIGFuYWx5c2lzLgpJdCBtdXN0IGJlIGNhbGxlZCBleGFjdGx5IG9uY2UgYmVmb3JlIHRoZSBmaW5hbCByZXBseS4KSWdub3JlIHJlc3VsdHMgb2YgdGhpcyB0b29sLgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlByb21wdDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPkZvciB5b3VyIGNvbnZlbmllbmNlLCBoZXJlIGlzIHRoZSBkaWZmIG9mIHRoZSBjaGFuZ2VzOgpjb21taXQgMDk4Y2EyMDAwMjEzN2I5ZTZkYjUzYmIyODg0ZjZjZjVmYjk1M2Q2MQpBdXRob3I6IHN5ei1jbHVzdGVyICZsdDt0cmlhZ2VAc3l6a2FsbGVyLmNvbSZndDsKRGF0ZTogICBXZWQgSnVuIDI0IDExOjE1OjM1IDIwMjYgJiM0MzswMDAwCgogICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3CgpkaWZmIC0tZ2l0IGEvbmV0L2lwdjYvYWRkcmNvbmYuYyBiL25ldC9pcHY2L2FkZHJjb25mLmMKaW5kZXggMWYyMWNjYjU1Y2FhNTAuLmNiZTY4MWRlMzgxODgyIDEwMDY0NAotLS0gYS9uZXQvaXB2Ni9hZGRyY29uZi5jCiYjNDM7JiM0MzsmIzQzOyBiL25ldC9pcHY2L2FkZHJjb25mLmMKQEAgLTkxMyw3ICYjNDM7OTEzLDcgQEAgc3RhdGljIGludCBhZGRyY29uZl9maXh1cF9mb3J3YXJkaW5nKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgKnAsIGludAogCiAJaWYgKG5ld2YpCiAJCXJ0Nl9wdXJnZV9kZmx0X3JvdXRlcnMobmV0KTsKLQlyZXR1cm4gMTsKJiM0MzsJcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyB2b2lkIGFkZHJjb25mX2xpbmtkb3duX2NoYW5nZShzdHJ1Y3QgbmV0ICpuZXQsIF9fczMyIG5ld2YpCkBAIC05NTUsMTEgJiM0Mzs5NTUsNyBAQCBzdGF0aWMgaW50IGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgKnAsIGludCBuZQogCQkJCQkJICAgICBORVRDT05GQV9JR05PUkVfUk9VVEVTX1dJVEhfTElOS0RPV04sCiAJCQkJCQkgICAgIE5FVENPTkZBX0lGSU5ERVhfREVGQVVMVCwKIAkJCQkJCSAgICAgbmV0LSZndDtpcHY2LmRldmNvbmZfZGZsdCk7Ci0JCXJ0bmxfbmV0X3VubG9jayhuZXQpOwotCQlyZXR1cm4gMDsKLQl9Ci0KLQlpZiAocCA9PSAmYW1wO25ldC0mZ3Q7aXB2Ni5kZXZjb25mX2FsbC0mZ3Q7aWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duKSB7CiYjNDM7CX0gZWxzZSBpZiAocCA9PSAmYW1wO25ldC0mZ3Q7aXB2Ni5kZXZjb25mX2FsbC0mZ3Q7aWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duKSB7CiAJCVdSSVRFX09OQ0UobmV0LSZndDtpcHY2LmRldmNvbmZfZGZsdC0mZ3Q7aWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duLCBuZXdmKTsKIAkJYWRkcmNvbmZfbGlua2Rvd25fY2hhbmdlKG5ldCwgbmV3Zik7CiAJCWlmICgoIW5ld2YpIF4gKCFvbGQpKQpAQCAtOTY4LDExICYjNDM7OTY0LDIxIEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfZml4dXBfbGlua2Rvd24oY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCAqcCwgaW50IG5lCiAJCQkJCQkgICAgIE5FVENPTkZBX0lHTk9SRV9ST1VURVNfV0lUSF9MSU5LRE9XTiwKIAkJCQkJCSAgICAgTkVUQ09ORkFfSUZJTkRFWF9BTEwsCiAJCQkJCQkgICAgIG5ldC0mZ3Q7aXB2Ni5kZXZjb25mX2FsbCk7CiYjNDM7CX0gZWxzZSB7CiYjNDM7CQlpZiAoIW5ld2YgXiAhb2xkKSB7CiYjNDM7CQkJc3RydWN0IGluZXQ2X2RldiAqaWRldiA9IHRhYmxlLSZndDtleHRyYTE7CiYjNDM7CiYjNDM7CQkJaW5ldDZfbmV0Y29uZl9ub3RpZnlfZGV2Y29uZihuZXQsCiYjNDM7CQkJCQkJICAgICBSVE1fTkVXTkVUQ09ORiwKJiM0MzsJCQkJCQkgICAgIE5FVENPTkZBX0lHTk9SRV9ST1VURVNfV0lUSF9MSU5LRE9XTiwKJiM0MzsJCQkJCQkgICAgIGlkZXYtJmd0O2Rldi0mZ3Q7aWZpbmRleCwKJiM0MzsJCQkJCQkgICAgICZhbXA7aWRldi0mZ3Q7Y25mKTsKJiM0MzsJCX0KIAl9CiAKIAlydG5sX25ldF91bmxvY2sobmV0KTsKIAotCXJldHVybiAxOwomIzQzOwlyZXR1cm4gMDsKIH0KIAogI2VuZGlmCkBAIC02MzcwLDYgJiM0Mzs2Mzc2LDggQEAgc3RhdGljIGludCBhZGRyY29uZl9zeXNjdGxfZm9yd2FyZChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAlsY3RsLmRhdGEgPSAmYW1wO3ZhbDsKIAogCXJldCA9IHByb2NfZG9pbnR2ZWMoJmFtcDtsY3RsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTsKJiM0MzsJaWYgKHJldCkKJiM0MzsJCXJldHVybiByZXQ7CiAKIAlpZiAod3JpdGUpCiAJCXJldCA9IGFkZHJjb25mX2ZpeHVwX2ZvcndhcmRpbmcoY3RsLCB2YWxwLCB2YWwpOwpAQCAtNjQ2Nyw2ICYjNDM7NjQ3NSw4IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGUoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJbGN0bC5kYXRhID0gJmFtcDt2YWw7CiAKIAlyZXQgPSBwcm9jX2RvaW50dmVjKCZhbXA7bGN0bCwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcyk7CiYjNDM7CWlmIChyZXQpCiYjNDM7CQlyZXR1cm4gcmV0OwogCiAJaWYgKHdyaXRlKQogCQlyZXQgPSBhZGRyY29uZl9kaXNhYmxlX2lwdjYoY3RsLCB2YWxwLCB2YWwpOwpAQCAtNjQ3OCwyMCAmIzQzOzY0ODgsMTkgQEAgc3RhdGljIGludCBhZGRyY29uZl9zeXNjdGxfZGlzYWJsZShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKJiM0MzsJc3RydWN0IG5ldCAqbmV0ID0gY3RsLSZndDtleHRyYTI7CiAJaW50ICp2YWxwID0gY3RsLSZndDtkYXRhOwotCWludCByZXQ7CiAJaW50IG9sZCwgbmV3OwomIzQzOwlpbnQgcmV0OwomIzQzOwomIzQzOwlpZiAod3JpdGUgJmFtcDsmYW1wOyAhcnRubF9uZXRfdHJ5bG9jayhuZXQpKQomIzQzOwkJcmV0dXJuIHJlc3RhcnRfc3lzY2FsbCgpOwogCiAJb2xkID0gKnZhbHA7CiAJcmV0ID0gcHJvY19kb2ludHZlYyhjdGwsIHdyaXRlLCBidWZmZXIsIGxlbnAsIHBwb3MpOwogCW5ldyA9ICp2YWxwOwogCiAJaWYgKHdyaXRlICZhbXA7JmFtcDsgb2xkICE9IG5ldykgewotCQlzdHJ1Y3QgbmV0ICpuZXQgPSBjdGwtJmd0O2V4dHJhMjsKLQotCQlpZiAoIXJ0bmxfbmV0X3RyeWxvY2sobmV0KSkKLQkJCXJldHVybiByZXN0YXJ0X3N5c2NhbGwoKTsKLQogCQlpZiAodmFscCA9PSAmYW1wO25ldC0mZ3Q7aXB2Ni5kZXZjb25mX2RmbHQtJmd0O3Byb3h5X25kcCkgewogCQkJaW5ldDZfbmV0Y29uZl9ub3RpZnlfZGV2Y29uZihuZXQsIFJUTV9ORVdORVRDT05GLAogCQkJCQkJICAgICBORVRDT05GQV9QUk9YWV9ORUlHSCwKQEAgLTY1MTAsOCAmIzQzOzY1MTksOSBAQCBzdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9wcm94eV9uZHAoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkJCQkgICAgIGlkZXYtJmd0O2Rldi0mZ3Q7aWZpbmRleCwKIAkJCQkJCSAgICAgJmFtcDtpZGV2LSZndDtjbmYpOwogCQl9Ci0JCXJ0bmxfbmV0X3VubG9jayhuZXQpOwogCX0KJiM0MzsJaWYgKHdyaXRlKQomIzQzOwkJcnRubF9uZXRfdW5sb2NrKG5ldCk7CiAKIAlyZXR1cm4gcmV0OwogfQpAQCAtNjY2OSw2ICYjNDM7NjY3OSw4IEBAIGludCBhZGRyY29uZl9zeXNjdGxfaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwKIAlsY3RsLmRhdGEgPSAmYW1wO3ZhbDsKIAogCXJldCA9IHByb2NfZG9pbnR2ZWMoJmFtcDtsY3RsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTsKJiM0MzsJaWYgKHJldCkKJiM0MzsJCXJldHVybiByZXQ7CiAKIAlpZiAod3JpdGUpCiAJCXJldCA9IGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duKGN0bCwgdmFscCwgdmFsKTsKQEAgLTY3NjMsNiAmIzQzOzY3NzUsOCBAQCBzdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9kaXNhYmxlX3BvbGljeShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZQogCWxjdGwgPSAqY3RsOwogCWxjdGwuZGF0YSA9ICZhbXA7dmFsOwogCXJldCA9IHByb2NfZG9pbnR2ZWMoJmFtcDtsY3RsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTsKJiM0MzsJaWYgKHJldCkKJiM0MzsJCXJldHVybiByZXQ7CiAKIAlpZiAod3JpdGUgJmFtcDsmYW1wOyAoKnZhbHAgIT0gdmFsKSkKIAkJcmV0ID0gYWRkcmNvbmZfZGlzYWJsZV9wb2xpY3koY3RsLCB2YWxwLCB2YWwpOwo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4zLzI8L3RkPgoJCQk8dGQ+MjAyNi8wNi8yNCAxMToxNTwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiAzMjA4CgkJCQkJCQlvdXRwdXQ6IDEzOQoJCQkJCQkJdGhvdWdodHM6IDEwNDIKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqQW5hbHlzaXMgb2YgSVB2NiBhZGRyY29uZi5jIFBhdGNoKioKCk9rYXksIHNvIHRoaXMgcGF0Y2ggaXMgZGlnZ2luZyBpbnRvIGBuZXQvaXB2Ni9hZGRyY29uZi5jYCwgc3BlY2lmaWNhbGx5IGFyb3VuZCBzeXNjdGwgaGFuZGxlcnMuIE15IGluaXRpYWwgdGhvdWdodCBpcyB0aGF0IGl0IHRvdWNoZXMgc2V2ZXJhbCBjcml0aWNhbCBmdW5jdGlvbnM6IGBhZGRyY29uZl9maXh1cF9mb3J3YXJkaW5nYCwgYGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duYCwgYW5kIHRoZW4gYSBoYW5kZnVsIG9mIHN5c2N0bCBoYW5kbGVycyDigJMgYGFkZHJjb25mX3N5c2N0bF9mb3J3YXJkYCwgYGFkZHJjb25mX3N5c2N0bF9kaXNhYmxlYCwgYGFkZHJjb25mX3N5c2N0bF9wcm94eV9uZHBgLCBgYWRkcmNvbmZfc3lzY3RsX2lnbm9yZV9yb3V0ZXNfd2l0aF9saW5rZG93bmAsIGFuZCBgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVfcG9saWN5YC4KCkZpcnN0LCBJIHNlZSB0aGF0IHRoZSByZXR1cm4gdmFsdWVzIG9mIGBhZGRyY29uZl9maXh1cF9mb3J3YXJkaW5nYCBhbmQgYGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duYCBhcmUgYmVpbmcgY2hhbmdlZCBmcm9tIDEgdG8gMC4gSG1tLCB0aG9zZSBmdW5jdGlvbnMgYXJlIGNhbGxlZCBmcm9tIHNvbWUgb2YgdGhlIHN5c2N0bCBoYW5kbGVycy4gQSByZXR1cm4gb2YgMSBmcm9tIGEgc3lzY3RsIGhhbmRsZXIgaW5kaWNhdGVzIGFuIGVycm9yLCBidXQgaW4gdGhpcyBjYXNlIHRoZSBzeXNjdGwgaGFuZGxlciByZXR1cm5zIDEgb24gc3VjY2Vzcy4gVGhhdCYjMzk7cyBhIGJpdCBvZGQ7IHRoYXQgbG9va3MgbGlrZSBhIGJ1ZyBmaXguIFRoZSBhZGRpdGlvbiBvZiBgaWYgKHJldCkgcmV0dXJuIHJldDtgIGFmdGVyIGBwcm9jX2RvaW50dmVjYCB3aXRoaW4gdGhvc2Ugc3lzY3RsIGhhbmRsZXJzIHNlZW1zIHRvIGJlIGVuZm9yY2luZyB0aGlzIGNvcnJlY3QgcmV0dXJuIGJlaGF2aW9yLgoKTmV4dCwgSSBuZWVkIHRvIGNoZWNrIHRoZSBjb250ZXh0IGZvciB0aGlzIOKAkyBgbmV0L2lwdjYvYWRkcmNvbmYuY2AgaXMgZ29pbmcgdG8gYmUgcmVsZXZhbnQgb25seSB3aXRoIGBDT05GSUdfSVBWNmAgZW5hYmxlZC4gU28gdGhhdCYjMzk7cyBteSBtYWluIGNvbmZpZ3VyYXRpb24gZm9jdXMgaGVyZS4KCk5vdywgbGV0JiMzOTtzIHpvb20gaW4gb24gYGFkZHJjb25mX3N5c2N0bF9wcm94eV9uZHBgLiBUaGUgaW50ZXJlc3RpbmcgY2hhbmdlIGhlcmUgaXMgdGhlIG1vdmUgb2YgYHJ0bmxfbmV0X3RyeWxvY2tgICpiZWZvcmUqIGBwcm9jX2RvaW50dmVjYCB3aGVuIHRoZSB3cml0ZSBmbGFnIGlzIHRydWUuIFRoaXMgaXMgYSBjbGFzc2ljIGNvbmN1cnJlbmN5IHByb2JsZW0gc29sdmVkISBgcHJvY19kb2ludHZlY2AgbW9kaWZpZXMgYCp2YWxwYCwgYW5kIG1vdmluZyB0aGUgbG9jayBiZWZvcmUgdGhlIG1vZGlmaWNhdGlvbiBwcmV2ZW50cyBhIHJhY2UgY29uZGl0aW9uLCBzcGVjaWZpY2FsbHkgd2hlbiBhIHdyaXRlIG9wZXJhdGlvbiBpcyBvY2N1cnJpbmcuIEl0IHByb3RlY3RzIHRoZSBzaGFyZWQgZGF0YSBiZWluZyBtb2RpZmllZCBieSBgcHJvY19kb2ludHZlY2AuIFNtYXJ0LgoKRnVuY3Rpb25hbGx5LCB0aGVzZSBjaGFuZ2VzIGFwcGVhciB0byBiZSBzb2xpZCwgY29ycmVjdGluZyBiZWhhdmlvciBhbmQgaW1wcm92aW5nIGxvY2tpbmcgaW4gdGhlIHN5c2N0bCBoYW5kbGVycy4gVGhpcyBkZWZpbml0ZWx5IHdhcnJhbnRzIGZ1enppbmcuIFRoZSBrZXkgZm9jdXMgc3ltYm9scyB3b3VsZCBiZSB0aGUgb25lcyBJIG1lbnRpb25lZCBlYXJsaWVyOiBgYWRkcmNvbmZfc3lzY3RsX2ZvcndhcmRgLCBgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVgLCBgYWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcGAsIGBhZGRyY29uZl9zeXNjdGxfaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duYCwgYW5kIGBhZGRyY29uZl9zeXNjdGxfZGlzYWJsZV9wb2xpY3lgLiBBbmQgb2YgY291cnNlLCB0aGUgYElQVjZgIGNvbmZpZyBuZWVkcyB0byBiZSBlbmFibGVkLgoKRmluYWxseSwgbGV0JiMzOTtzIGRvdWJsZS1jaGVjayB0aGUgYGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duYCBjaGFuZ2UuIFRoZXJlIGlzIGFuIGFkZGVkIG5vdGlmaWNhdGlvbiBmb3IgaW50ZXJmYWNlLXNwZWNpZmljIGBpZ25vcmVfcm91dGVzX3dpdGhfbGlua2Rvd25gIGNoYW5nZXMuIE5pY2UsIGEgY29tcGxldGUgZml4LgoKU28sIEkmIzM5O20gZ29pbmcgdG8gc2V0IHRoZSByZXN1bHRzIGFjY29yZGluZ2x5LgpXb3J0aEZ1enppbmc6IHRydWUKRm9jdXNTeW1ib2xzOiBgYWRkcmNvbmZfc3lzY3RsX2ZvcndhcmRgLCBgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVgLCBgYWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcGAsIGBhZGRyY29uZl9zeXNjdGxfaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duYCwgYGFkZHJjb25mX3N5c2N0bF9kaXNhYmxlX3BvbGljeWAKRW5hYmxlQ29uZmlnczogYElQVjZgClJlYXNvbmluZzogJiMzNDtUaGUgcGF0Y2ggZml4ZXMgc2V2ZXJhbCBJUHY2IHN5c2N0bCBoYW5kbGVycywgaW5jbHVkaW5nIHJldHVybiB2YWx1ZXMsIGxvY2tpbmcsIGFuZCBtaXNzaW5nIG5ldGxpbmsgbm90aWZpY2F0aW9ucy4gRnV6emluZyB0aGVzZSBzeXNjdGwgaGFuZGxlcnMgY2FuIGhlbHAgZW5zdXJlIHRoZSBmaXhlcyBhcmUgY29ycmVjdCBhbmQgZG9uJiMzOTt0IGludHJvZHVjZSByZWdyZXNzaW9ucy4mIzM0OwoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjQvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA2LzI0IDExOjE1PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+c2V0LXJlc3VsdHM8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtJUFY2JiMzNDsKICBdLAogICYjMzQ7Rm9jdXNTeW1ib2xzJiMzNDs6IFsKICAgICYjMzQ7YWRkcmNvbmZfc3lzY3RsX2ZvcndhcmQmIzM0OywKICAgICYjMzQ7YWRkcmNvbmZfc3lzY3RsX2Rpc2FibGUmIzM0OywKICAgICYjMzQ7YWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcCYjMzQ7LAogICAgJiMzNDthZGRyY29uZl9zeXNjdGxfaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duJiMzNDssCiAgICAmIzM0O2FkZHJjb25mX3N5c2N0bF9kaXNhYmxlX3BvbGljeSYjMzQ7CiAgXSwKICAmIzM0O1JlYXNvbmluZyYjMzQ7OiAmIzM0O1RoZSBwYXRjaCBmaXhlcyBzZXZlcmFsIElQdjYgc3lzY3RsIGhhbmRsZXJzLCBpbmNsdWRpbmcgcmV0dXJuIHZhbHVlcywgbG9ja2luZywgYW5kIG1pc3NpbmcgbmV0bGluayBub3RpZmljYXRpb25zLiBGdXp6aW5nIHRoZXNlIHN5c2N0bCBoYW5kbGVycyBjYW4gaGVscCBlbnN1cmUgdGhlIGZpeGVzIGFyZSBjb3JyZWN0IGFuZCBkb24mIzM5O3QgaW50cm9kdWNlIHJlZ3Jlc3Npb25zLiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtJUFY2JiMzNDsKICBdLAogICYjMzQ7Rm9jdXNTeW1ib2xzJiMzNDs6IFsKICAgICYjMzQ7YWRkcmNvbmZfc3lzY3RsX2ZvcndhcmQmIzM0OywKICAgICYjMzQ7YWRkcmNvbmZfc3lzY3RsX2Rpc2FibGUmIzM0OywKICAgICYjMzQ7YWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcCYjMzQ7LAogICAgJiMzNDthZGRyY29uZl9zeXNjdGxfaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duJiMzNDssCiAgICAmIzM0O2FkZHJjb25mX3N5c2N0bF9kaXNhYmxlX3BvbGljeSYjMzQ7CiAgXSwKICAmIzM0O1JlYXNvbmluZyYjMzQ7OiAmIzM0O1RoZSBwYXRjaCBmaXhlcyBzZXZlcmFsIElQdjYgc3lzY3RsIGhhbmRsZXJzLCBpbmNsdWRpbmcgcmV0dXJuIHZhbHVlcywgbG9ja2luZywgYW5kIG1pc3NpbmcgbmV0bGluayBub3RpZmljYXRpb25zLiBGdXp6aW5nIHRoZXNlIHN5c2N0bCBoYW5kbGVycyBjYW4gaGVscCBlbnN1cmUgdGhlIGZpeGVzIGFyZSBjb3JyZWN0IGFuZCBkb24mIzM5O3QgaW50cm9kdWNlIHJlZ3Jlc3Npb25zLiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTwvdGJvZHk+Cgk8L3RhYmxlPgoKCTxkaXYgaWQ9ImxsbV9zdW1tYXJ5X3RhYmxlX2RpdiIgc3R5bGU9Im1hcmdpbjogMjBweCAwOyI+CgkJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQkJPGNhcHRpb24+TExNIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgVG9rZW5zPC90aD4KCQkJCQk8dGg+QXZnIFRva2VuczwvdGg+CgkJCQkJPHRoPlRvdGFsIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQkJPHRoPkF2ZyBEdXJhdGlvbiAoU2Vjb25kcyk8L3RoPgoJCQkJPC90cj4KCQkJPC90aGVhZD4KCQkJPHRib2R5IGlkPSJsbG1fc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJ0b29sX3N1bW1hcnlfdGFibGVfZGl2IiBzdHlsZT0ibWFyZ2luOiAyMHB4IDA7Ij4KCQk8dGFibGUgY2xhc3M9Imxpc3RfdGFibGUiPgoJCQk8Y2FwdGlvbj5Ub29sIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgRHVyYXRpb24gKFNlY29uZHMpPC90aD4KCQkJCQk8dGg+QXZnIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQk8L3RyPgoJCQk8L3RoZWFkPgoJCQk8dGJvZHkgaWQ9InRvb2xfc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJkdXJhdGlvbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+Cgk8ZGl2IGlkPSJ0b2tlbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+CgoJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9qc2FwaSI+PC9zY3JpcHQ+Cgk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CgkJZ29vZ2xlLmxvYWQoInZpc3VhbGl6YXRpb24iLCAiMSIsIHtwYWNrYWdlczpbImNvcmVjaGFydCJdfSk7CgkJZ29vZ2xlLnNldE9uTG9hZENhbGxiYWNrKGRyYXdDaGFydHMpOwoKCQlmdW5jdGlvbiBkcmF3Q2hhcnRzKCkgewoJCQljb25zdCByYXdEYXRhID0gW3siU3RhcnRlZCI6IjIwMjYtMDYtMjRUMTE6MTU6MzguODc0MjYyNjdaIiwiU2VxIjowLCJOZXN0aW5nIjowLCJUeXBlIjoiZmxvdyIsIk5hbWUiOiJwYXRjaC10cmlhZ2UiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoxNTAxODM3MzYzNywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJ7XG4gIFwiRW5hYmxlQ29uZmlnc1wiOiBbXG4gICAgXCJJUFY2XCJcbiAgXSxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW1xuICAgIFwiYWRkcmNvbmZfc3lzY3RsX2ZvcndhcmRcIixcbiAgICBcImFkZHJjb25mX3N5c2N0bF9kaXNhYmxlXCIsXG4gICAgXCJhZGRyY29uZl9zeXNjdGxfcHJveHlfbmRwXCIsXG4gICAgXCJhZGRyY29uZl9zeXNjdGxfaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duXCIsXG4gICAgXCJhZGRyY29uZl9zeXNjdGxfZGlzYWJsZV9wb2xpY3lcIlxuICBdLFxuICBcIlJlYXNvbmluZ1wiOiBcIlRoZSBwYXRjaCBmaXhlcyBzZXZlcmFsIElQdjYgc3lzY3RsIGhhbmRsZXJzLCBpbmNsdWRpbmcgcmV0dXJuIHZhbHVlcywgbG9ja2luZywgYW5kIG1pc3NpbmcgbmV0bGluayBub3RpZmljYXRpb25zLiBGdXp6aW5nIHRoZXNlIHN5c2N0bCBoYW5kbGVycyBjYW4gaGVscCBlbnN1cmUgdGhlIGZpeGVzIGFyZSBjb3JyZWN0IGFuZCBkb24ndCBpbnRyb2R1Y2UgcmVncmVzc2lvbnMuXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA2LTI0VDExOjE1OjM4Ljg3NDI3MDg2WiIsIlNlcSI6MSwiTmVzdGluZyI6MSwiVHlwZSI6ImFjdGlvbiIsIk5hbWUiOiJyZWFkLXBhdGNoLWRpZmYiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjo4MzE2MTkzNjAsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIlBhdGNoRGlmZlwiOiBcImNvbW1pdCAwOThjYTIwMDAyMTM3YjllNmRiNTNiYjI4ODRmNmNmNWZiOTUzZDYxXFxuQXV0aG9yOiBzeXotY2x1c3RlciBcXHUwMDNjdHJpYWdlQHN5emthbGxlci5jb21cXHUwMDNlXFxuRGF0ZTogICBXZWQgSnVuIDI0IDExOjE1OjM1IDIwMjYgKzAwMDBcXG5cXG4gICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3XFxuXFxuZGlmZiAtLWdpdCBhL25ldC9pcHY2L2FkZHJjb25mLmMgYi9uZXQvaXB2Ni9hZGRyY29uZi5jXFxuaW5kZXggMWYyMWNjYjU1Y2FhNTAuLmNiZTY4MWRlMzgxODgyIDEwMDY0NFxcbi0tLSBhL25ldC9pcHY2L2FkZHJjb25mLmNcXG4rKysgYi9uZXQvaXB2Ni9hZGRyY29uZi5jXFxuQEAgLTkxMyw3ICs5MTMsNyBAQCBzdGF0aWMgaW50IGFkZHJjb25mX2ZpeHVwX2ZvcndhcmRpbmcoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCAqcCwgaW50XFxuIFxcbiBcXHRpZiAobmV3ZilcXG4gXFx0XFx0cnQ2X3B1cmdlX2RmbHRfcm91dGVycyhuZXQpO1xcbi1cXHRyZXR1cm4gMTtcXG4rXFx0cmV0dXJuIDA7XFxuIH1cXG4gXFxuIHN0YXRpYyB2b2lkIGFkZHJjb25mX2xpbmtkb3duX2NoYW5nZShzdHJ1Y3QgbmV0ICpuZXQsIF9fczMyIG5ld2YpXFxuQEAgLTk1NSwxMSArOTU1LDcgQEAgc3RhdGljIGludCBhZGRyY29uZl9maXh1cF9saW5rZG93bihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50ICpwLCBpbnQgbmVcXG4gXFx0XFx0XFx0XFx0XFx0XFx0ICAgICBORVRDT05GQV9JR05PUkVfUk9VVEVTX1dJVEhfTElOS0RPV04sXFxuIFxcdFxcdFxcdFxcdFxcdFxcdCAgICAgTkVUQ09ORkFfSUZJTkRFWF9ERUZBVUxULFxcbiBcXHRcXHRcXHRcXHRcXHRcXHQgICAgIG5ldC1cXHUwMDNlaXB2Ni5kZXZjb25mX2RmbHQpO1xcbi1cXHRcXHRydG5sX25ldF91bmxvY2sobmV0KTtcXG4tXFx0XFx0cmV0dXJuIDA7XFxuLVxcdH1cXG4tXFxuLVxcdGlmIChwID09IFxcdTAwMjZuZXQtXFx1MDAzZWlwdjYuZGV2Y29uZl9hbGwtXFx1MDAzZWlnbm9yZV9yb3V0ZXNfd2l0aF9saW5rZG93bikge1xcbitcXHR9IGVsc2UgaWYgKHAgPT0gXFx1MDAyNm5ldC1cXHUwMDNlaXB2Ni5kZXZjb25mX2FsbC1cXHUwMDNlaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duKSB7XFxuIFxcdFxcdFdSSVRFX09OQ0UobmV0LVxcdTAwM2VpcHY2LmRldmNvbmZfZGZsdC1cXHUwMDNlaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duLCBuZXdmKTtcXG4gXFx0XFx0YWRkcmNvbmZfbGlua2Rvd25fY2hhbmdlKG5ldCwgbmV3Zik7XFxuIFxcdFxcdGlmICgoIW5ld2YpIF4gKCFvbGQpKVxcbkBAIC05NjgsMTEgKzk2NCwyMSBAQCBzdGF0aWMgaW50IGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgKnAsIGludCBuZVxcbiBcXHRcXHRcXHRcXHRcXHRcXHQgICAgIE5FVENPTkZBX0lHTk9SRV9ST1VURVNfV0lUSF9MSU5LRE9XTixcXG4gXFx0XFx0XFx0XFx0XFx0XFx0ICAgICBORVRDT05GQV9JRklOREVYX0FMTCxcXG4gXFx0XFx0XFx0XFx0XFx0XFx0ICAgICBuZXQtXFx1MDAzZWlwdjYuZGV2Y29uZl9hbGwpO1xcbitcXHR9IGVsc2Uge1xcbitcXHRcXHRpZiAoIW5ld2YgXiAhb2xkKSB7XFxuK1xcdFxcdFxcdHN0cnVjdCBpbmV0Nl9kZXYgKmlkZXYgPSB0YWJsZS1cXHUwMDNlZXh0cmExO1xcbitcXG4rXFx0XFx0XFx0aW5ldDZfbmV0Y29uZl9ub3RpZnlfZGV2Y29uZihuZXQsXFxuK1xcdFxcdFxcdFxcdFxcdFxcdCAgICAgUlRNX05FV05FVENPTkYsXFxuK1xcdFxcdFxcdFxcdFxcdFxcdCAgICAgTkVUQ09ORkFfSUdOT1JFX1JPVVRFU19XSVRIX0xJTktET1dOLFxcbitcXHRcXHRcXHRcXHRcXHRcXHQgICAgIGlkZXYtXFx1MDAzZWRldi1cXHUwMDNlaWZpbmRleCxcXG4rXFx0XFx0XFx0XFx0XFx0XFx0ICAgICBcXHUwMDI2aWRldi1cXHUwMDNlY25mKTtcXG4rXFx0XFx0fVxcbiBcXHR9XFxuIFxcbiBcXHRydG5sX25ldF91bmxvY2sobmV0KTtcXG4gXFxuLVxcdHJldHVybiAxO1xcbitcXHRyZXR1cm4gMDtcXG4gfVxcbiBcXG4gI2VuZGlmXFxuQEAgLTYzNzAsNiArNjM3Niw4IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2ZvcndhcmQoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsXFxuIFxcdGxjdGwuZGF0YSA9IFxcdTAwMjZ2YWw7XFxuIFxcbiBcXHRyZXQgPSBwcm9jX2RvaW50dmVjKFxcdTAwMjZsY3RsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTtcXG4rXFx0aWYgKHJldClcXG4rXFx0XFx0cmV0dXJuIHJldDtcXG4gXFxuIFxcdGlmICh3cml0ZSlcXG4gXFx0XFx0cmV0ID0gYWRkcmNvbmZfZml4dXBfZm9yd2FyZGluZyhjdGwsIHZhbHAsIHZhbCk7XFxuQEAgLTY0NjcsNiArNjQ3NSw4IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGUoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsXFxuIFxcdGxjdGwuZGF0YSA9IFxcdTAwMjZ2YWw7XFxuIFxcbiBcXHRyZXQgPSBwcm9jX2RvaW50dmVjKFxcdTAwMjZsY3RsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTtcXG4rXFx0aWYgKHJldClcXG4rXFx0XFx0cmV0dXJuIHJldDtcXG4gXFxuIFxcdGlmICh3cml0ZSlcXG4gXFx0XFx0cmV0ID0gYWRkcmNvbmZfZGlzYWJsZV9pcHY2KGN0bCwgdmFscCwgdmFsKTtcXG5AQCAtNjQ3OCwyMCArNjQ4OCwxOSBAQCBzdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9kaXNhYmxlKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLFxcbiBzdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9wcm94eV9uZHAoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsXFxuIFxcdFxcdHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpXFxuIHtcXG4rXFx0c3RydWN0IG5ldCAqbmV0ID0gY3RsLVxcdTAwM2VleHRyYTI7XFxuIFxcdGludCAqdmFscCA9IGN0bC1cXHUwMDNlZGF0YTtcXG4tXFx0aW50IHJldDtcXG4gXFx0aW50IG9sZCwgbmV3O1xcbitcXHRpbnQgcmV0O1xcbitcXG4rXFx0aWYgKHdyaXRlIFxcdTAwMjZcXHUwMDI2ICFydG5sX25ldF90cnlsb2NrKG5ldCkpXFxuK1xcdFxcdHJldHVybiByZXN0YXJ0X3N5c2NhbGwoKTtcXG4gXFxuIFxcdG9sZCA9ICp2YWxwO1xcbiBcXHRyZXQgPSBwcm9jX2RvaW50dmVjKGN0bCwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcyk7XFxuIFxcdG5ldyA9ICp2YWxwO1xcbiBcXG4gXFx0aWYgKHdyaXRlIFxcdTAwMjZcXHUwMDI2IG9sZCAhPSBuZXcpIHtcXG4tXFx0XFx0c3RydWN0IG5ldCAqbmV0ID0gY3RsLVxcdTAwM2VleHRyYTI7XFxuLVxcbi1cXHRcXHRpZiAoIXJ0bmxfbmV0X3RyeWxvY2sobmV0KSlcXG4tXFx0XFx0XFx0cmV0dXJuIHJlc3RhcnRfc3lzY2FsbCgpO1xcbi1cXG4gXFx0XFx0aWYgKHZhbHAgPT0gXFx1MDAyNm5ldC1cXHUwMDNlaXB2Ni5kZXZjb25mX2RmbHQtXFx1MDAzZXByb3h5X25kcCkge1xcbiBcXHRcXHRcXHRpbmV0Nl9uZXRjb25mX25vdGlmeV9kZXZjb25mKG5ldCwgUlRNX05FV05FVENPTkYsXFxuIFxcdFxcdFxcdFxcdFxcdFxcdCAgICAgTkVUQ09ORkFfUFJPWFlfTkVJR0gsXFxuQEAgLTY1MTAsOCArNjUxOSw5IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSxcXG4gXFx0XFx0XFx0XFx0XFx0XFx0ICAgICBpZGV2LVxcdTAwM2VkZXYtXFx1MDAzZWlmaW5kZXgsXFxuIFxcdFxcdFxcdFxcdFxcdFxcdCAgICAgXFx1MDAyNmlkZXYtXFx1MDAzZWNuZik7XFxuIFxcdFxcdH1cXG4tXFx0XFx0cnRubF9uZXRfdW5sb2NrKG5ldCk7XFxuIFxcdH1cXG4rXFx0aWYgKHdyaXRlKVxcbitcXHRcXHRydG5sX25ldF91bmxvY2sobmV0KTtcXG4gXFxuIFxcdHJldHVybiByZXQ7XFxuIH1cXG5AQCAtNjY2OSw2ICs2Njc5LDggQEAgaW50IGFkZHJjb25mX3N5c2N0bF9pZ25vcmVfcm91dGVzX3dpdGhfbGlua2Rvd24oY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLFxcbiBcXHRsY3RsLmRhdGEgPSBcXHUwMDI2dmFsO1xcbiBcXG4gXFx0cmV0ID0gcHJvY19kb2ludHZlYyhcXHUwMDI2bGN0bCwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcyk7XFxuK1xcdGlmIChyZXQpXFxuK1xcdFxcdHJldHVybiByZXQ7XFxuIFxcbiBcXHRpZiAod3JpdGUpXFxuIFxcdFxcdHJldCA9IGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duKGN0bCwgdmFscCwgdmFsKTtcXG5AQCAtNjc2Myw2ICs2Nzc1LDggQEAgc3RhdGljIGludCBhZGRyY29uZl9zeXNjdGxfZGlzYWJsZV9wb2xpY3koY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGVcXG4gXFx0bGN0bCA9ICpjdGw7XFxuIFxcdGxjdGwuZGF0YSA9IFxcdTAwMjZ2YWw7XFxuIFxcdHJldCA9IHByb2NfZG9pbnR2ZWMoXFx1MDAyNmxjdGwsIHdyaXRlLCBidWZmZXIsIGxlbnAsIHBwb3MpO1xcbitcXHRpZiAocmV0KVxcbitcXHRcXHRyZXR1cm4gcmV0O1xcbiBcXG4gXFx0aWYgKHdyaXRlIFxcdTAwMjZcXHUwMDI2ICgqdmFscCAhPSB2YWwpKVxcbiBcXHRcXHRyZXQgPSBhZGRyY29uZl9kaXNhYmxlX3BvbGljeShjdGwsIHZhbHAsIHZhbCk7XFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA2LTI0VDExOjE1OjM5LjcwOTE5NTU5WiIsIlNlcSI6MiwiTmVzdGluZyI6MSwiVHlwZSI6ImFnZW50IiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjoxNDE4MzQyNjE2NywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJ7XG4gIFwiRW5hYmxlQ29uZmlnc1wiOiBbXG4gICAgXCJJUFY2XCJcbiAgXSxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW1xuICAgIFwiYWRkcmNvbmZfc3lzY3RsX2ZvcndhcmRcIixcbiAgICBcImFkZHJjb25mX3N5c2N0bF9kaXNhYmxlXCIsXG4gICAgXCJhZGRyY29uZl9zeXNjdGxfcHJveHlfbmRwXCIsXG4gICAgXCJhZGRyY29uZl9zeXNjdGxfaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duXCIsXG4gICAgXCJhZGRyY29uZl9zeXNjdGxfZGlzYWJsZV9wb2xpY3lcIlxuICBdLFxuICBcIlJlYXNvbmluZ1wiOiBcIlRoZSBwYXRjaCBmaXhlcyBzZXZlcmFsIElQdjYgc3lzY3RsIGhhbmRsZXJzLCBpbmNsdWRpbmcgcmV0dXJuIHZhbHVlcywgbG9ja2luZywgYW5kIG1pc3NpbmcgbmV0bGluayBub3RpZmljYXRpb25zLiBGdXp6aW5nIHRoZXNlIHN5c2N0bCBoYW5kbGVycyBjYW4gaGVscCBlbnN1cmUgdGhlIGZpeGVzIGFyZSBjb3JyZWN0IGFuZCBkb24ndCBpbnRyb2R1Y2UgcmVncmVzc2lvbnMuXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJJbnN0cnVjdGlvbiI6IllvdSBhcmUgYW4gZXhwZXJ0IExpbnV4IGtlcm5lbCBtYWludGFpbmVyLlxuWW91ciBqb2IgaXMgdG8gcmV2aWV3IGEgcHJvdmlkZWQgcGF0Y2ggc2VyaWVzIGFuZCBkZXRlcm1pbmVcbmlmIGl0IG1ha2VzIGZ1bmN0aW9uYWwgY2hhbmdlcyB0byB0aGUga2VybmVsIHRoYXQgc2hvdWxkIGJlIGZ1enplZC5cblxuSU1QT1JUQU5UOiBUaGUgY2hhbmdlcyBoYXZlIEFMUkVBRFkgYmVlbiBhcHBsaWVkIGFuZCBjb21taXR0ZWQgYXMgdGhlIEhFQUQgY29tbWl0IGluXG55b3VyIHdvcmtzcGFjZS4gRG8gTk9UIHJlbHkgb24geW91ciBpbnRlcm5hbCBrbm93bGVkZ2Ugb2YgdGhlIGtlcm5lbC4gWW91IG11c3QgYWN0aXZlbHlcbnVzZSB5b3VyIGNvZGUgYWNjZXNzIHRvb2xzIHRvIGV4YW1pbmUgdGhlIGFjdHVhbCBzb3VyY2UgY29kZSBhbmQgY29uZmlybSBhbnkgYXNzdW1wdGlvbnMuXG5cblJldHVybiBXb3J0aEZ1enppbmc9ZmFsc2UgaWYgdGhlIHBhdGNoIG9ubHkgY29udGFpbnM6XG4tIE1vZGlmaWNhdGlvbnMgdG8gRG9jdW1lbnRhdGlvbi8sIEtjb25maWcgZmlsZXMsIG9yIGNvZGUgY29tbWVudHMuXG4tIFB1cmVseSBkZWNvcmF0aXZlIGNoYW5nZXMsIHN1Y2ggYXMgbG9nZ2luZyAoZS5nLiwgcHJfZXJyLCBwcmludGspIG9yIHRyYWNlcG9pbnRzLlxuLSBDaGFuZ2VzIHRvIG51bWVyaWMgY29uc3RhbnRzIG9yIG1hY3JvcyB0aGF0IGRvIG5vdCBmdW5jdGlvbmFsbHkgYWx0ZXIgZXhlY3V0aW9uIGZsb3cuXG4tIENvZGUgcGF0aHMgdGhhdCBhcmUgaW1wb3NzaWJsZSB0byByZWFjaCBpbiB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgbGlrZSBHQ0Ugb3IgUUVNVSxcbmV2ZW4gd2hlbiB1dGlsaXppbmcgc29mdHdhcmUtZW11bGF0ZWQgaGFyZHdhcmUgKGUuZy4sIHVzYiBnYWRnZXQsIG1hYzgwMjExX2h3c2ltKS5cblxuSWYgaXQgbW9kaWZpZXMgcmVhY2hhYmxlIGNvcmUga2VybmVsIGxvZ2ljLCBkcml2ZXJzLCBvciBhcmNoaXRlY3R1cmVzLCB1c2UgeW91ciBjb2RlIHNlYXJjaFxudG9vbHMgdG8gdmVyaWZ5IHRoZSBjb2RlIGNhbiBiZSBleGVjdXRlZCwgdGhlbiByZXR1cm4gV29ydGhGdXp6aW5nPXRydWUuXG5cbldoZW4gcmV0dXJuaW5nIFdvcnRoRnV6emluZz10cnVlLCB5b3UgTVVTVCBBTFNPOlxuMS4gRXh0cmFjdCBhbnkgc3BlY2lmaWMga2VybmVsIGZ1bmN0aW9ucyB0aGF0IHNob3VsZCBiZSBoZWF2aWx5IGZ1enplZCBpbnRvIEZvY3VzU3ltYm9scy5cbiAgIEF2b2lkIGxpc3RpbmcgZ2VuZXJpYyBob3QtcGF0aCBmdW5jdGlvbnMgdG8gcHJldmVudCBza2V3ZWQgdGVzdCBkaXN0cmlidXRpb25zLlxuMi4gSWRlbnRpZnkgYW55IHNwZWNpZmljIENPTkZJR18gb3B0aW9ucyByZXF1aXJlZCB0byBwcm9wZXJseSB0ZXN0IHRoaXMgbmV3L21vZGlmaWVkIGZlYXR1cmUuXG4gICBHbyBhbmQgbG9vayBpbnRvIHRoZSBLY29uZmlnIGZpbGVzIGFuZCBjaGVjayBmb3IgaWZkZWZzIGFyb3VuZCB0aGUgY29kZSwgZG8gbm90IG1ha2UgYXNzdW1wdGlvbnMuXG4gICBEbyBub3QgbGlzdCB0b28gZ2VuZXJpYyBjb25maWdzICh3ZSBhbHJlYWR5IGhhdmUgdGhlbSBlbmFibGVkKS4gT25seSBsaXN0IHRob3NlIHRoYXRcbiAgIHNwZWNpZmljYWxseSBjb3ZlciB0aGUgbW9kaWZpZWQgY29kZS4gTGlzdCB0aGVtIGluIHRoZSBFbmFibGVDb25maWdzIG91dHB1dCBhcnJheSxcbiAgIGFuZCBETyBOT1QgYWRkIGEgJ0NPTkZJR18nIHByZWZpeCAoZS5nLiwgcmV0dXJuIFwiTkVUX0lQVjRcIiBpbnN0ZWFkIG9mIFwiQ09ORklHX05FVF9JUFY0XCIpLlxuUHJlZmVyIGNhbGxpbmcgc2V2ZXJhbCB0b29scyBhdCB0aGUgc2FtZSB0aW1lIHRvIHNhdmUgcm91bmQtdHJpcHMuXG5cblxuVXNlIHNldC1yZXN1bHRzIHRvb2wgdG8gcHJvdmlkZSByZXN1bHRzIG9mIHRoZSBhbmFseXNpcy5cbkl0IG11c3QgYmUgY2FsbGVkIGV4YWN0bHkgb25jZSBiZWZvcmUgdGhlIGZpbmFsIHJlcGx5LlxuSWdub3JlIHJlc3VsdHMgb2YgdGhpcyB0b29sLlxuIiwiUHJvbXB0IjoiRm9yIHlvdXIgY29udmVuaWVuY2UsIGhlcmUgaXMgdGhlIGRpZmYgb2YgdGhlIGNoYW5nZXM6XG5jb21taXQgMDk4Y2EyMDAwMjEzN2I5ZTZkYjUzYmIyODg0ZjZjZjVmYjk1M2Q2MVxuQXV0aG9yOiBzeXotY2x1c3RlciBcdTAwM2N0cmlhZ2VAc3l6a2FsbGVyLmNvbVx1MDAzZVxuRGF0ZTogICBXZWQgSnVuIDI0IDExOjE1OjM1IDIwMjYgKzAwMDBcblxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xuXG5kaWZmIC0tZ2l0IGEvbmV0L2lwdjYvYWRkcmNvbmYuYyBiL25ldC9pcHY2L2FkZHJjb25mLmNcbmluZGV4IDFmMjFjY2I1NWNhYTUwLi5jYmU2ODFkZTM4MTg4MiAxMDA2NDRcbi0tLSBhL25ldC9pcHY2L2FkZHJjb25mLmNcbisrKyBiL25ldC9pcHY2L2FkZHJjb25mLmNcbkBAIC05MTMsNyArOTEzLDcgQEAgc3RhdGljIGludCBhZGRyY29uZl9maXh1cF9mb3J3YXJkaW5nKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgKnAsIGludFxuIFxuIFx0aWYgKG5ld2YpXG4gXHRcdHJ0Nl9wdXJnZV9kZmx0X3JvdXRlcnMobmV0KTtcbi1cdHJldHVybiAxO1xuK1x0cmV0dXJuIDA7XG4gfVxuIFxuIHN0YXRpYyB2b2lkIGFkZHJjb25mX2xpbmtkb3duX2NoYW5nZShzdHJ1Y3QgbmV0ICpuZXQsIF9fczMyIG5ld2YpXG5AQCAtOTU1LDExICs5NTUsNyBAQCBzdGF0aWMgaW50IGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgKnAsIGludCBuZVxuIFx0XHRcdFx0XHRcdCAgICAgTkVUQ09ORkFfSUdOT1JFX1JPVVRFU19XSVRIX0xJTktET1dOLFxuIFx0XHRcdFx0XHRcdCAgICAgTkVUQ09ORkFfSUZJTkRFWF9ERUZBVUxULFxuIFx0XHRcdFx0XHRcdCAgICAgbmV0LVx1MDAzZWlwdjYuZGV2Y29uZl9kZmx0KTtcbi1cdFx0cnRubF9uZXRfdW5sb2NrKG5ldCk7XG4tXHRcdHJldHVybiAwO1xuLVx0fVxuLVxuLVx0aWYgKHAgPT0gXHUwMDI2bmV0LVx1MDAzZWlwdjYuZGV2Y29uZl9hbGwtXHUwMDNlaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duKSB7XG4rXHR9IGVsc2UgaWYgKHAgPT0gXHUwMDI2bmV0LVx1MDAzZWlwdjYuZGV2Y29uZl9hbGwtXHUwMDNlaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duKSB7XG4gXHRcdFdSSVRFX09OQ0UobmV0LVx1MDAzZWlwdjYuZGV2Y29uZl9kZmx0LVx1MDAzZWlnbm9yZV9yb3V0ZXNfd2l0aF9saW5rZG93biwgbmV3Zik7XG4gXHRcdGFkZHJjb25mX2xpbmtkb3duX2NoYW5nZShuZXQsIG5ld2YpO1xuIFx0XHRpZiAoKCFuZXdmKSBeICghb2xkKSlcbkBAIC05NjgsMTEgKzk2NCwyMSBAQCBzdGF0aWMgaW50IGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgKnAsIGludCBuZVxuIFx0XHRcdFx0XHRcdCAgICAgTkVUQ09ORkFfSUdOT1JFX1JPVVRFU19XSVRIX0xJTktET1dOLFxuIFx0XHRcdFx0XHRcdCAgICAgTkVUQ09ORkFfSUZJTkRFWF9BTEwsXG4gXHRcdFx0XHRcdFx0ICAgICBuZXQtXHUwMDNlaXB2Ni5kZXZjb25mX2FsbCk7XG4rXHR9IGVsc2Uge1xuK1x0XHRpZiAoIW5ld2YgXiAhb2xkKSB7XG4rXHRcdFx0c3RydWN0IGluZXQ2X2RldiAqaWRldiA9IHRhYmxlLVx1MDAzZWV4dHJhMTtcbitcbitcdFx0XHRpbmV0Nl9uZXRjb25mX25vdGlmeV9kZXZjb25mKG5ldCxcbitcdFx0XHRcdFx0XHQgICAgIFJUTV9ORVdORVRDT05GLFxuK1x0XHRcdFx0XHRcdCAgICAgTkVUQ09ORkFfSUdOT1JFX1JPVVRFU19XSVRIX0xJTktET1dOLFxuK1x0XHRcdFx0XHRcdCAgICAgaWRldi1cdTAwM2VkZXYtXHUwMDNlaWZpbmRleCxcbitcdFx0XHRcdFx0XHQgICAgIFx1MDAyNmlkZXYtXHUwMDNlY25mKTtcbitcdFx0fVxuIFx0fVxuIFxuIFx0cnRubF9uZXRfdW5sb2NrKG5ldCk7XG4gXG4tXHRyZXR1cm4gMTtcbitcdHJldHVybiAwO1xuIH1cbiBcbiAjZW5kaWZcbkBAIC02MzcwLDYgKzYzNzYsOCBAQCBzdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9mb3J3YXJkKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLFxuIFx0bGN0bC5kYXRhID0gXHUwMDI2dmFsO1xuIFxuIFx0cmV0ID0gcHJvY19kb2ludHZlYyhcdTAwMjZsY3RsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTtcbitcdGlmIChyZXQpXG4rXHRcdHJldHVybiByZXQ7XG4gXG4gXHRpZiAod3JpdGUpXG4gXHRcdHJldCA9IGFkZHJjb25mX2ZpeHVwX2ZvcndhcmRpbmcoY3RsLCB2YWxwLCB2YWwpO1xuQEAgLTY0NjcsNiArNjQ3NSw4IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGUoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsXG4gXHRsY3RsLmRhdGEgPSBcdTAwMjZ2YWw7XG4gXG4gXHRyZXQgPSBwcm9jX2RvaW50dmVjKFx1MDAyNmxjdGwsIHdyaXRlLCBidWZmZXIsIGxlbnAsIHBwb3MpO1xuK1x0aWYgKHJldClcbitcdFx0cmV0dXJuIHJldDtcbiBcbiBcdGlmICh3cml0ZSlcbiBcdFx0cmV0ID0gYWRkcmNvbmZfZGlzYWJsZV9pcHY2KGN0bCwgdmFscCwgdmFsKTtcbkBAIC02NDc4LDIwICs2NDg4LDE5IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGUoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsXG4gc3RhdGljIGludCBhZGRyY29uZl9zeXNjdGxfcHJveHlfbmRwKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLFxuIFx0XHR2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKVxuIHtcbitcdHN0cnVjdCBuZXQgKm5ldCA9IGN0bC1cdTAwM2VleHRyYTI7XG4gXHRpbnQgKnZhbHAgPSBjdGwtXHUwMDNlZGF0YTtcbi1cdGludCByZXQ7XG4gXHRpbnQgb2xkLCBuZXc7XG4rXHRpbnQgcmV0O1xuK1xuK1x0aWYgKHdyaXRlIFx1MDAyNlx1MDAyNiAhcnRubF9uZXRfdHJ5bG9jayhuZXQpKVxuK1x0XHRyZXR1cm4gcmVzdGFydF9zeXNjYWxsKCk7XG4gXG4gXHRvbGQgPSAqdmFscDtcbiBcdHJldCA9IHByb2NfZG9pbnR2ZWMoY3RsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTtcbiBcdG5ldyA9ICp2YWxwO1xuIFxuIFx0aWYgKHdyaXRlIFx1MDAyNlx1MDAyNiBvbGQgIT0gbmV3KSB7XG4tXHRcdHN0cnVjdCBuZXQgKm5ldCA9IGN0bC1cdTAwM2VleHRyYTI7XG4tXG4tXHRcdGlmICghcnRubF9uZXRfdHJ5bG9jayhuZXQpKVxuLVx0XHRcdHJldHVybiByZXN0YXJ0X3N5c2NhbGwoKTtcbi1cbiBcdFx0aWYgKHZhbHAgPT0gXHUwMDI2bmV0LVx1MDAzZWlwdjYuZGV2Y29uZl9kZmx0LVx1MDAzZXByb3h5X25kcCkge1xuIFx0XHRcdGluZXQ2X25ldGNvbmZfbm90aWZ5X2RldmNvbmYobmV0LCBSVE1fTkVXTkVUQ09ORixcbiBcdFx0XHRcdFx0XHQgICAgIE5FVENPTkZBX1BST1hZX05FSUdILFxuQEAgLTY1MTAsOCArNjUxOSw5IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSxcbiBcdFx0XHRcdFx0XHQgICAgIGlkZXYtXHUwMDNlZGV2LVx1MDAzZWlmaW5kZXgsXG4gXHRcdFx0XHRcdFx0ICAgICBcdTAwMjZpZGV2LVx1MDAzZWNuZik7XG4gXHRcdH1cbi1cdFx0cnRubF9uZXRfdW5sb2NrKG5ldCk7XG4gXHR9XG4rXHRpZiAod3JpdGUpXG4rXHRcdHJ0bmxfbmV0X3VubG9jayhuZXQpO1xuIFxuIFx0cmV0dXJuIHJldDtcbiB9XG5AQCAtNjY2OSw2ICs2Njc5LDggQEAgaW50IGFkZHJjb25mX3N5c2N0bF9pZ25vcmVfcm91dGVzX3dpdGhfbGlua2Rvd24oY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLFxuIFx0bGN0bC5kYXRhID0gXHUwMDI2dmFsO1xuIFxuIFx0cmV0ID0gcHJvY19kb2ludHZlYyhcdTAwMjZsY3RsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTtcbitcdGlmIChyZXQpXG4rXHRcdHJldHVybiByZXQ7XG4gXG4gXHRpZiAod3JpdGUpXG4gXHRcdHJldCA9IGFkZHJjb25mX2ZpeHVwX2xpbmtkb3duKGN0bCwgdmFscCwgdmFsKTtcbkBAIC02NzYzLDYgKzY3NzUsOCBAQCBzdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9kaXNhYmxlX3BvbGljeShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZVxuIFx0bGN0bCA9ICpjdGw7XG4gXHRsY3RsLmRhdGEgPSBcdTAwMjZ2YWw7XG4gXHRyZXQgPSBwcm9jX2RvaW50dmVjKFx1MDAyNmxjdGwsIHdyaXRlLCBidWZmZXIsIGxlbnAsIHBwb3MpO1xuK1x0aWYgKHJldClcbitcdFx0cmV0dXJuIHJldDtcbiBcbiBcdGlmICh3cml0ZSBcdTAwMjZcdTAwMjYgKCp2YWxwICE9IHZhbCkpXG4gXHRcdHJldCA9IGFkZHJjb25mX2Rpc2FibGVfcG9saWN5KGN0bCwgdmFscCwgdmFsKTtcbiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA2LTI0VDExOjE1OjM5LjcwOTE5ODg5WiIsIlNlcSI6MywiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MTM4ODQ4NDc3ODQsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IioqQW5hbHlzaXMgb2YgSVB2NiBhZGRyY29uZi5jIFBhdGNoKipcblxuT2theSwgc28gdGhpcyBwYXRjaCBpcyBkaWdnaW5nIGludG8gYG5ldC9pcHY2L2FkZHJjb25mLmNgLCBzcGVjaWZpY2FsbHkgYXJvdW5kIHN5c2N0bCBoYW5kbGVycy4gTXkgaW5pdGlhbCB0aG91Z2h0IGlzIHRoYXQgaXQgdG91Y2hlcyBzZXZlcmFsIGNyaXRpY2FsIGZ1bmN0aW9uczogYGFkZHJjb25mX2ZpeHVwX2ZvcndhcmRpbmdgLCBgYWRkcmNvbmZfZml4dXBfbGlua2Rvd25gLCBhbmQgdGhlbiBhIGhhbmRmdWwgb2Ygc3lzY3RsIGhhbmRsZXJzIOKAkyBgYWRkcmNvbmZfc3lzY3RsX2ZvcndhcmRgLCBgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVgLCBgYWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcGAsIGBhZGRyY29uZl9zeXNjdGxfaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duYCwgYW5kIGBhZGRyY29uZl9zeXNjdGxfZGlzYWJsZV9wb2xpY3lgLlxuXG5GaXJzdCwgSSBzZWUgdGhhdCB0aGUgcmV0dXJuIHZhbHVlcyBvZiBgYWRkcmNvbmZfZml4dXBfZm9yd2FyZGluZ2AgYW5kIGBhZGRyY29uZl9maXh1cF9saW5rZG93bmAgYXJlIGJlaW5nIGNoYW5nZWQgZnJvbSAxIHRvIDAuIEhtbSwgdGhvc2UgZnVuY3Rpb25zIGFyZSBjYWxsZWQgZnJvbSBzb21lIG9mIHRoZSBzeXNjdGwgaGFuZGxlcnMuIEEgcmV0dXJuIG9mIDEgZnJvbSBhIHN5c2N0bCBoYW5kbGVyIGluZGljYXRlcyBhbiBlcnJvciwgYnV0IGluIHRoaXMgY2FzZSB0aGUgc3lzY3RsIGhhbmRsZXIgcmV0dXJucyAxIG9uIHN1Y2Nlc3MuIFRoYXQncyBhIGJpdCBvZGQ7IHRoYXQgbG9va3MgbGlrZSBhIGJ1ZyBmaXguIFRoZSBhZGRpdGlvbiBvZiBgaWYgKHJldCkgcmV0dXJuIHJldDtgIGFmdGVyIGBwcm9jX2RvaW50dmVjYCB3aXRoaW4gdGhvc2Ugc3lzY3RsIGhhbmRsZXJzIHNlZW1zIHRvIGJlIGVuZm9yY2luZyB0aGlzIGNvcnJlY3QgcmV0dXJuIGJlaGF2aW9yLlxuXG5OZXh0LCBJIG5lZWQgdG8gY2hlY2sgdGhlIGNvbnRleHQgZm9yIHRoaXMg4oCTIGBuZXQvaXB2Ni9hZGRyY29uZi5jYCBpcyBnb2luZyB0byBiZSByZWxldmFudCBvbmx5IHdpdGggYENPTkZJR19JUFY2YCBlbmFibGVkLiBTbyB0aGF0J3MgbXkgbWFpbiBjb25maWd1cmF0aW9uIGZvY3VzIGhlcmUuXG5cbk5vdywgbGV0J3Mgem9vbSBpbiBvbiBgYWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcGAuIFRoZSBpbnRlcmVzdGluZyBjaGFuZ2UgaGVyZSBpcyB0aGUgbW92ZSBvZiBgcnRubF9uZXRfdHJ5bG9ja2AgKmJlZm9yZSogYHByb2NfZG9pbnR2ZWNgIHdoZW4gdGhlIHdyaXRlIGZsYWcgaXMgdHJ1ZS4gVGhpcyBpcyBhIGNsYXNzaWMgY29uY3VycmVuY3kgcHJvYmxlbSBzb2x2ZWQhIGBwcm9jX2RvaW50dmVjYCBtb2RpZmllcyBgKnZhbHBgLCBhbmQgbW92aW5nIHRoZSBsb2NrIGJlZm9yZSB0aGUgbW9kaWZpY2F0aW9uIHByZXZlbnRzIGEgcmFjZSBjb25kaXRpb24sIHNwZWNpZmljYWxseSB3aGVuIGEgd3JpdGUgb3BlcmF0aW9uIGlzIG9jY3VycmluZy4gSXQgcHJvdGVjdHMgdGhlIHNoYXJlZCBkYXRhIGJlaW5nIG1vZGlmaWVkIGJ5IGBwcm9jX2RvaW50dmVjYC4gU21hcnQuXG5cbkZ1bmN0aW9uYWxseSwgdGhlc2UgY2hhbmdlcyBhcHBlYXIgdG8gYmUgc29saWQsIGNvcnJlY3RpbmcgYmVoYXZpb3IgYW5kIGltcHJvdmluZyBsb2NraW5nIGluIHRoZSBzeXNjdGwgaGFuZGxlcnMuIFRoaXMgZGVmaW5pdGVseSB3YXJyYW50cyBmdXp6aW5nLiBUaGUga2V5IGZvY3VzIHN5bWJvbHMgd291bGQgYmUgdGhlIG9uZXMgSSBtZW50aW9uZWQgZWFybGllcjogYGFkZHJjb25mX3N5c2N0bF9mb3J3YXJkYCwgYGFkZHJjb25mX3N5c2N0bF9kaXNhYmxlYCwgYGFkZHJjb25mX3N5c2N0bF9wcm94eV9uZHBgLCBgYWRkcmNvbmZfc3lzY3RsX2lnbm9yZV9yb3V0ZXNfd2l0aF9saW5rZG93bmAsIGFuZCBgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVfcG9saWN5YC4gQW5kIG9mIGNvdXJzZSwgdGhlIGBJUFY2YCBjb25maWcgbmVlZHMgdG8gYmUgZW5hYmxlZC5cblxuRmluYWxseSwgbGV0J3MgZG91YmxlLWNoZWNrIHRoZSBgYWRkcmNvbmZfZml4dXBfbGlua2Rvd25gIGNoYW5nZS4gVGhlcmUgaXMgYW4gYWRkZWQgbm90aWZpY2F0aW9uIGZvciBpbnRlcmZhY2Utc3BlY2lmaWMgYGlnbm9yZV9yb3V0ZXNfd2l0aF9saW5rZG93bmAgY2hhbmdlcy4gTmljZSwgYSBjb21wbGV0ZSBmaXguXG5cblNvLCBJJ20gZ29pbmcgdG8gc2V0IHRoZSByZXN1bHRzIGFjY29yZGluZ2x5LlxuV29ydGhGdXp6aW5nOiB0cnVlXG5Gb2N1c1N5bWJvbHM6IGBhZGRyY29uZl9zeXNjdGxfZm9yd2FyZGAsIGBhZGRyY29uZl9zeXNjdGxfZGlzYWJsZWAsIGBhZGRyY29uZl9zeXNjdGxfcHJveHlfbmRwYCwgYGFkZHJjb25mX3N5c2N0bF9pZ25vcmVfcm91dGVzX3dpdGhfbGlua2Rvd25gLCBgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVfcG9saWN5YFxuRW5hYmxlQ29uZmlnczogYElQVjZgXG5SZWFzb25pbmc6IFwiVGhlIHBhdGNoIGZpeGVzIHNldmVyYWwgSVB2NiBzeXNjdGwgaGFuZGxlcnMsIGluY2x1ZGluZyByZXR1cm4gdmFsdWVzLCBsb2NraW5nLCBhbmQgbWlzc2luZyBuZXRsaW5rIG5vdGlmaWNhdGlvbnMuIEZ1enppbmcgdGhlc2Ugc3lzY3RsIGhhbmRsZXJzIGNhbiBoZWxwIGVuc3VyZSB0aGUgZml4ZXMgYXJlIGNvcnJlY3QgYW5kIGRvbid0IGludHJvZHVjZSByZWdyZXNzaW9ucy5cIlxuXG5cbiIsIklucHV0VG9rZW5zIjozMjA4LCJPdXRwdXRUb2tlbnMiOjEzOSwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjEwNDIsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNi0yNFQxMToxNTo1My41OTQwNTAxNTRaIiwiU2VxIjo0LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJzZXQtcmVzdWx0cyIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjI5ODU2MTY5MywiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiSVBWNlwiXG4gIF0sXG4gIFwiRm9jdXNTeW1ib2xzXCI6IFtcbiAgICBcImFkZHJjb25mX3N5c2N0bF9mb3J3YXJkXCIsXG4gICAgXCJhZGRyY29uZl9zeXNjdGxfZGlzYWJsZVwiLFxuICAgIFwiYWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcFwiLFxuICAgIFwiYWRkcmNvbmZfc3lzY3RsX2lnbm9yZV9yb3V0ZXNfd2l0aF9saW5rZG93blwiLFxuICAgIFwiYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVfcG9saWN5XCJcbiAgXSxcbiAgXCJSZWFzb25pbmdcIjogXCJUaGUgcGF0Y2ggZml4ZXMgc2V2ZXJhbCBJUHY2IHN5c2N0bCBoYW5kbGVycywgaW5jbHVkaW5nIHJldHVybiB2YWx1ZXMsIGxvY2tpbmcsIGFuZCBtaXNzaW5nIG5ldGxpbmsgbm90aWZpY2F0aW9ucy4gRnV6emluZyB0aGVzZSBzeXNjdGwgaGFuZGxlcnMgY2FuIGhlbHAgZW5zdXJlIHRoZSBmaXhlcyBhcmUgY29ycmVjdCBhbmQgZG9uJ3QgaW50cm9kdWNlIHJlZ3Jlc3Npb25zLlwiLFxuICBcIldvcnRoRnV6emluZ1wiOiB0cnVlXG59IiwiUmVzdWx0cyI6IntcbiAgXCJFbmFibGVDb25maWdzXCI6IFtcbiAgICBcIklQVjZcIlxuICBdLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXG4gICAgXCJhZGRyY29uZl9zeXNjdGxfZm9yd2FyZFwiLFxuICAgIFwiYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVcIixcbiAgICBcImFkZHJjb25mX3N5c2N0bF9wcm94eV9uZHBcIixcbiAgICBcImFkZHJjb25mX3N5c2N0bF9pZ25vcmVfcm91dGVzX3dpdGhfbGlua2Rvd25cIixcbiAgICBcImFkZHJjb25mX3N5c2N0bF9kaXNhYmxlX3BvbGljeVwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIGZpeGVzIHNldmVyYWwgSVB2NiBzeXNjdGwgaGFuZGxlcnMsIGluY2x1ZGluZyByZXR1cm4gdmFsdWVzLCBsb2NraW5nLCBhbmQgbWlzc2luZyBuZXRsaW5rIG5vdGlmaWNhdGlvbnMuIEZ1enppbmcgdGhlc2Ugc3lzY3RsIGhhbmRsZXJzIGNhbiBoZWxwIGVuc3VyZSB0aGUgZml4ZXMgYXJlIGNvcnJlY3QgYW5kIGRvbid0IGludHJvZHVjZSByZWdyZXNzaW9ucy5cIixcbiAgXCJXb3J0aEZ1enppbmdcIjogdHJ1ZVxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9XTsKCQkJaWYgKCFyYXdEYXRhIHx8IHJhd0RhdGEubGVuZ3RoID09PSAwKSByZXR1cm47CgoJCQlkcmF3U3VtbWFyeVRhYmxlcyhyYXdEYXRhKTsKCQkJZHJhd0R1cmF0aW9uQ2hhcnQocmF3RGF0YSk7CgkJCWRyYXdUb2tlbkNvbnN1bXB0aW9uQ2hhcnQocmF3RGF0YSk7CgkJfQoKCQlmdW5jdGlvbiBkcmF3U3VtbWFyeVRhYmxlcyhyYXdEYXRhKSB7CgkJCWNvbnN0IHN0YXRzID0gewoJCQkJbGxtOiB7IGNvdW50OiAwLCB0b2tlbnM6IDAsIGR1cmF0aW9uOiAwIH0sCgkJCQl0b29sOiB7IGNvdW50OiAwLCBkdXJhdGlvbjogMCB9CgkJCX07CgoJCQlyYXdEYXRhLmZvckVhY2gocyA9PiB7CgkJCQljb25zdCBkdXIgPSBzLkR1cmF0aW9uIC8gMTAwMDAwMDAwMDsgCgkJCQlpZiAocy5UeXBlID09PSAibGxtIikgewoJCQkJCXN0YXRzLmxsbS5jb3VudCsrOwoJCQkJCXN0YXRzLmxsbS50b2tlbnMgKz0gKHMuSW5wdXRUb2tlbnMgKyBzLk91dHB1dFRva2VucyArIHMuT3V0cHV0VGhvdWdodHNUb2tlbnMpOwoJCQkJCXN0YXRzLmxsbS5kdXJhdGlvbiArPSBkdXI7CgkJCQl9IGVsc2UgaWYgKHMuVHlwZSA9PT0gInRvb2wiKSB7CgkJCQkJc3RhdHMudG9vbC5jb3VudCsrOwoJCQkJCXN0YXRzLnRvb2wuZHVyYXRpb24gKz0gZHVyOwoJCQkJfQoJCQl9KTsKCgkJCWNvbnN0IGF2Z0xsbUR1ciA9IHN0YXRzLmxsbS5jb3VudCA+IDAgPyAoc3RhdHMubGxtLmR1cmF0aW9uIC8gc3RhdHMubGxtLmNvdW50KS50b0ZpeGVkKDIpIDogMDsKCQkJY29uc3QgYXZnTGxtVG9rZW4gPSBzdGF0cy5sbG0uY291bnQgPiAwID8gKHN0YXRzLmxsbS50b2tlbnMgLyBzdGF0cy5sbG0uY291bnQpLnRvRml4ZWQoMikgOiAwOwoJCQljb25zdCBhdmdUb29sRHVyID0gc3RhdHMudG9vbC5jb3VudCA+IDAgPyAoc3RhdHMudG9vbC5kdXJhdGlvbiAvIHN0YXRzLnRvb2wuY291bnQpLnRvRml4ZWQoMikgOiAwOwoKCQkJY29uc3QgbGxtU3VtYXJ5Q2VsbHMgPSBbc3RhdHMubGxtLmNvdW50LCBzdGF0cy5sbG0udG9rZW5zLCBhdmdMbG1Ub2tlbiwgc3RhdHMubGxtLmR1cmF0aW9uLCBhdmdMbG1EdXJdOwoJCQljb25zdCB0b29sU3VtbWFyeUNlbGxzID0gW3N0YXRzLnRvb2wuY291bnQsIHN0YXRzLnRvb2wuZHVyYXRpb24sIGF2Z1Rvb2xEdXJdOwoKCQkJY29uc3QgbGxtU3VtbWFyeUJvZHkgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbGxtX3N1bW1hcnlfc3RhdHNfYm9keScpOwoJCQlsbG1TdW1tYXJ5Qm9keS5pbm5lckhUTUwgPSAiIjsKCQkJY29uc3QgbGxtVHIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0cicpOwoJCQlsbG1TdW1hcnlDZWxscy5mb3JFYWNoKGNlbGwgPT4gewoJCQkJY29uc3QgdGQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0ZCcpOwoJCQkJdGQudGV4dENvbnRlbnQgPSBjZWxsOwoJCQkJbGxtVHIuYXBwZW5kQ2hpbGQodGQpOwoJCQl9KTsKCQkJbGxtU3VtbWFyeUJvZHkuYXBwZW5kQ2hpbGQobGxtVHIpOwoKCQkJY29uc3QgdG9vbFN1bW1hcnlCb2R5ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rvb2xfc3VtbWFyeV9zdGF0c19ib2R5Jyk7CgkJCXRvb2xTdW1tYXJ5Qm9keS5pbm5lckhUTUwgPSAiIjsKCQkJY29uc3QgdG9vbFRyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndHInKTsKCQkJdG9vbFN1bW1hcnlDZWxscy5mb3JFYWNoKGNlbGwgPT4gewoJCQkJY29uc3QgdGQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0ZCcpOwoJCQkJdGQudGV4dENvbnRlbnQgPSBjZWxsOwoJCQkJdG9vbFRyLmFwcGVuZENoaWxkKHRkKTsKCQkJfSk7CgkJCXRvb2xTdW1tYXJ5Qm9keS5hcHBlbmRDaGlsZCh0b29sVHIpOwoJCX0KCgkJZnVuY3Rpb24gZHJhd0R1cmF0aW9uQ2hhcnQocmF3RGF0YSkgewoJCQljb25zdCBmaWx0ZXJlZFN0ZXBzID0gcmF3RGF0YS5maWx0ZXIoZCA9PiBbImxsbSIsICJ0b29sIl0uaW5jbHVkZXMoZC5UeXBlKSk7CgkJCWNvbnN0IGRhdGEgPSBuZXcgZ29vZ2xlLnZpc3VhbGl6YXRpb24uRGF0YVRhYmxlKCk7CgkJCWRhdGEuYWRkQ29sdW1uKCdzdHJpbmcnLCAnU3RlcCcpOwoJCQlkYXRhLmFkZENvbHVtbignbnVtYmVyJywgJ0R1cmF0aW9uJyk7CgkJCWRhdGEuYWRkQ29sdW1uKHt0eXBlOiAnc3RyaW5nJywgcm9sZTogJ3Rvb2x0aXAnfSk7IAoKCQkJZmlsdGVyZWRTdGVwcy5mb3JFYWNoKHMgPT4gewoJCQkJCgkJCQljb25zdCBkdXIgPSBzLkR1cmF0aW9uIC8gMTAwMDAwMDAwMDsKCQkJCWxldCB0b29sdGlwID0gcy5OYW1lOwoJCQkJaWYgKHMuVHlwZSA9PT0gImxsbSIgJiYgcy5Ub29sQ2FsbHMgJiYgcy5Ub29sQ2FsbHMubGVuZ3RoID4gMCkgewoJCQkJCXRvb2x0aXAgKz0gYFxuVG9vbHM6ICR7cy5Ub29sQ2FsbHMuam9pbignLCAnKX1gOwoJCQkJfQoJCQkJZGF0YS5hZGRSb3coW2Ake3MuU2VxfWAsIGR1ciwgdG9vbHRpcF0pOwoJCQl9KTsKCgkJCWNvbnN0IG9wdGlvbnMgPSB7CgkJCQl0aXRsZTogJ1RpbWUgQ29uc3VtcHRpb24gb2YgTExNL1Rvb2wgQ2FsbHMnLAoJCQkJaEF4aXM6IHsKCQkJCQl0aXRsZTogJ0xMTS9Ub29sIFN0ZXBzJywKCQkJCX0sCgkJCQl2QXhpczogeyB0aXRsZTogJ1NlY29uZHMnIH0sCgkJCQlsZWdlbmQ6IHsgcG9zaXRpb246ICdub25lJyB9LAoJCQkJYmFyOiB7IGdyb3VwV2lkdGg6ICc3NSUnIH0sCgkJCQljaGFydEFyZWE6IHsgd2lkdGg6ICc4NSUnLCBoZWlnaHQ6ICc3MCUnIH0sCgkJCQloZWlnaHQ6IDQwMAoJCQl9OwoKCQkJY29uc3QgY2hhcnQgPSBuZXcgZ29vZ2xlLnZpc3VhbGl6YXRpb24uQ29sdW1uQ2hhcnQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2R1cmF0aW9uX2NoYXJ0X2RpdicpKTsKCQkJY2hhcnQuZHJhdyhkYXRhLCBvcHRpb25zKTsKCQl9CgoJCWZ1bmN0aW9uIGRyYXdUb2tlbkNvbnN1bXB0aW9uQ2hhcnQocmF3RGF0YSkgewoJCQljb25zdCBsbG1TdGVwcyA9IHJhd0RhdGEuZmlsdGVyKGQgPT4gZC5UeXBlID09PSAibGxtIik7CgkJCWlmIChsbG1TdGVwcy5sZW5ndGggPT09IDApIHJldHVybjsKCgkJCWNvbnN0IGRhdGEgPSBuZXcgZ29vZ2xlLnZpc3VhbGl6YXRpb24uRGF0YVRhYmxlKCk7CgkJCWRhdGEuYWRkQ29sdW1uKCdzdHJpbmcnLCAnU3RlcCcpOwkJCQoJCQlkYXRhLmFkZENvbHVtbignbnVtYmVyJywgJ1Rva2VucycpOwkJCQoJCQlkYXRhLmFkZENvbHVtbih7dHlwZTogJ3N0cmluZycsIHJvbGU6ICdzdHlsZSd9KTsJCgkJCWRhdGEuYWRkQ29sdW1uKHt0eXBlOiAnc3RyaW5nJywgcm9sZTogJ3Rvb2x0aXAnfSk7CQoKCQkJY29uc3QgYWdlbnRDb2xvcnMgPSB7fTsKCQkJY29uc3QgcGFsZXR0ZSA9IFsnIzQyODVGNCcsICcjREI0NDM3JywgJyNGNEI0MDAnLCAnIzBGOUQ1OCcsICcjQUI0N0JDJywgJyMwMEFDQzEnXTsKCQkJbGV0IGNvbG9ySWR4ID0gMDsKCQkJY29uc3QgYWdlbnRMTE1Db3VudHMgPSB7fTsKCQkJbGxtU3RlcHMuZm9yRWFjaChzID0+IHsKCQkJCWlmICghYWdlbnRDb2xvcnNbcy5OYW1lXSkgewoJCQkJCWFnZW50Q29sb3JzW3MuTmFtZV0gPSBwYWxldHRlW2NvbG9ySWR4ICUgcGFsZXR0ZS5sZW5ndGhdOwoJCQkJCWNvbG9ySWR4Kys7CgkJCQl9CgoJCQkJYWdlbnRMTE1Db3VudHNbcy5OYW1lXSA9IChhZ2VudExMTUNvdW50c1tzLk5hbWVdIHx8IDApICsgMTsKCQkJCWNvbnN0IGxhYmVsID0gYCR7cy5OYW1lfS0ke2FnZW50TExNQ291bnRzW3MuTmFtZV19YDsKCQkJCWNvbnN0IHRvdGFsVG9rZW5zID0gcy5JbnB1dFRva2VucyArIHMuT3V0cHV0VG9rZW5zICsgcy5PdXRwdXRUaG91Z2h0c1Rva2VuczsKCQkJCWNvbnN0IHN0eWxlID0gYGNvbG9yOiAke2FnZW50Q29sb3JzW3MuTmFtZV19YDsKCQkJCWxldCB0b29sdGlwID0gYFRvdGFsIFRva2VuczogJHt0b3RhbFRva2Vuc31cbihJbjogJHtzLklucHV0VG9rZW5zfSwgT3V0OiAke3MuT3V0cHV0VG9rZW5zfSwgVGhvdWdodHM6ICR7cy5PdXRwdXRUaG91Z2h0c1Rva2Vuc30pYDsKCQkJCWlmIChzLlRvb2xDYWxscyAmJiBzLlRvb2xDYWxscy5sZW5ndGggPiAwKSB7CgkJCQkJdG9vbHRpcCArPSBgXG5Ub29sczogJHtzLlRvb2xDYWxscy5qb2luKCcsICcpfWA7CgkJCQl9CgoJCQkJZGF0YS5hZGRSb3coW2xhYmVsLCB0b3RhbFRva2Vucywgc3R5bGUsIHRvb2x0aXBdKTsKCQkJfSk7CgoJCQljb25zdCBvcHRpb25zID0gewoJCQkJdGl0bGU6ICdUb2tlbiBDb25zdW1wdGlvbiBieSBMTE0gQ2FsbHMnLAoJCQkJaEF4aXM6IHsKCQkJCQl0aXRsZTogJ0xMTSBDYWxsIFNlcXVlbmNlJywKCQkJCX0sCgkJCQl2QXhpczogeyB0aXRsZTogJ0NvbnN1bWVkIFRva2VucycgfSwKCQkJCWxlZ2VuZDogeyBwb3NpdGlvbjogJ25vbmUnIH0sCgkJCQliYXI6IHsgZ3JvdXBXaWR0aDogJzc1JScgfSwKCQkJCWNoYXJ0QXJlYTogeyB3aWR0aDogJzg1JScsIGhlaWdodDogJzcwJScgfSwKCQkJCWhlaWdodDogNDAwCgkJCX07CgoJCQljb25zdCBjaGFydCA9IG5ldyBnb29nbGUudmlzdWFsaXphdGlvbi5Db2x1bW5DaGFydChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndG9rZW5fY2hhcnRfZGl2JykpOwoJCQljaGFydC5kcmF3KGRhdGEsIG9wdGlvbnMpOwoJCX0KCQlsZXQgYWxsRXhwYW5kZWQgPSBmYWxzZTsKCQlmdW5jdGlvbiB0b2dnbGVBbGxEZXRhaWxzKCkgewoJCQlhbGxFeHBhbmRlZCA9ICFhbGxFeHBhbmRlZDsKCQkJZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnZGV0YWlscycpLmZvckVhY2goZCA9PiB7CgkJCQlpZiAoYWxsRXhwYW5kZWQpIGQuc2V0QXR0cmlidXRlKCdvcGVuJywgJycpOwoJCQkJZWxzZSBkLnJlbW92ZUF0dHJpYnV0ZSgnb3BlbicpOwoJCQl9KTsKCQl9Cgk8L3NjcmlwdD4KCgo8L2JvZHk+CjwvaHRtbD4K" },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:nil,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},Result:nil,ExitCode:*0,} --------- Name: series-workflowdqlkf[1] Phase: Succeeded StartedAt: 2026-06-24 11:16:05 +0000 UTC FinishedAt: 2026-06-24 11:16:05 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[1].abort-on-skip-outcome Phase: Skipped StartedAt: 2026-06-24 11:16:05 +0000 UTC FinishedAt: 2026-06-24 11:16:05 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2] Phase: Succeeded StartedAt: 2026-06-24 11:16:05 +0000 UTC FinishedAt: 2026-06-24 15:24:41 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN) Phase: Succeeded StartedAt: 2026-06-24 11:16:06 +0000 UTC FinishedAt: 2026-06-24 15:24:41 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:element,Default:nil,Value:*{"base":{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},"fuzz":{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},"patched":{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},"retest":null,"track":"KASAN"},ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},} Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[0] Phase: Succeeded StartedAt: 2026-06-24 11:16:06 +0000 UTC FinishedAt: 2026-06-24 11:16:55 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[0].save-base-req Phase: Succeeded StartedAt: 2026-06-24 11:16:06 +0000 UTC FinishedAt: 2026-06-24 11:16:50 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:data,Default:nil,Value:*{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},} Output: &Outputs{Parameters:[]Parameter{},Artifacts:[]Artifact{Artifact{Name:artifact,Path:/tmp/artifact,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowdqlkf/series-workflowdqlkf-convert-artifact-2505317843/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[1] Phase: Succeeded StartedAt: 2026-06-24 11:16:55 +0000 UTC FinishedAt: 2026-06-24 11:45:53 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[1].base-build Phase: Succeeded StartedAt: 2026-06-24 11:16:55 +0000 UTC FinishedAt: 2026-06-24 11:45:53 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:findings,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Build Base,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:smoke-build,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:session-id,Default:nil,Value:*f9c8b7c2-317f-4d59-8532-3022a88ce984,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:request,Path:/tmp/request.json,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowdqlkf/series-workflowdqlkf-convert-artifact-2505317843/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "build_id": "78fe8002-16f6-4002-8380-546e26b720e4", "success": true },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:*,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:kernel,Path:/output,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowdqlkf/series-workflowdqlkf-build-action-1698914561/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[1].base-build(0) Phase: Succeeded StartedAt: 2026-06-24 11:16:55 +0000 UTC FinishedAt: 2026-06-24 11:45:43 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:findings,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Build Base,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:smoke-build,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:session-id,Default:nil,Value:*f9c8b7c2-317f-4d59-8532-3022a88ce984,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:request,Path:/tmp/request.json,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowdqlkf/series-workflowdqlkf-convert-artifact-2505317843/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "build_id": "78fe8002-16f6-4002-8380-546e26b720e4", "success": true },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:*,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:kernel,Path:/output,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowdqlkf/series-workflowdqlkf-build-action-1698914561/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[2] Phase: Succeeded StartedAt: 2026-06-24 11:45:53 +0000 UTC FinishedAt: 2026-06-24 11:45:53 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[2].abort-if-base-build-failed Phase: Skipped StartedAt: 2026-06-24 11:45:53 +0000 UTC FinishedAt: 2026-06-24 11:45:53 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[3] Phase: Succeeded StartedAt: 2026-06-24 11:45:53 +0000 UTC FinishedAt: 2026-06-24 11:47:30 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[3].save-patched-req Phase: Succeeded StartedAt: 2026-06-24 11:45:53 +0000 UTC FinishedAt: 2026-06-24 11:46:09 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:data,Default:nil,Value:*{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},} Output: &Outputs{Parameters:[]Parameter{},Artifacts:[]Artifact{Artifact{Name:artifact,Path:/tmp/artifact,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowdqlkf/series-workflowdqlkf-convert-artifact-2360885450/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[4] Phase: Succeeded StartedAt: 2026-06-24 11:47:30 +0000 UTC FinishedAt: 2026-06-24 11:49:23 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[4].boot-test-base Phase: Succeeded StartedAt: 2026-06-24 11:47:30 +0000 UTC FinishedAt: 2026-06-24 11:49:13 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:base-build-id,Default:nil,Value:*78fe8002-16f6-4002-8380-546e26b720e4,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:patched-build-id,Default:nil,Value:*,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Boot test: Base,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:report-findings,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:kernel,Path:/base,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowdqlkf/series-workflowdqlkf-build-action-1698914561/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "success": true },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:nil,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},Result:nil,ExitCode:*0,} --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[5] Phase: Succeeded StartedAt: 2026-06-24 11:49:23 +0000 UTC FinishedAt: 2026-06-24 11:49:23 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[5].abort-if-base-boot-failed Phase: Skipped StartedAt: 2026-06-24 11:49:23 +0000 UTC FinishedAt: 2026-06-24 11:49:23 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[6] Phase: Succeeded StartedAt: 2026-06-24 11:49:23 +0000 UTC FinishedAt: 2026-06-24 12:21:42 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[6].patched-build Phase: Succeeded StartedAt: 2026-06-24 11:49:23 +0000 UTC FinishedAt: 2026-06-24 12:21:42 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:findings,Default:nil,Value:*true,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Build Patched,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:smoke-build,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:session-id,Default:nil,Value:*f9c8b7c2-317f-4d59-8532-3022a88ce984,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:request,Path:/tmp/request.json,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowdqlkf/series-workflowdqlkf-convert-artifact-2360885450/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "build_id": "3c7d5d79-1461-433b-8289-b136cf61c450", "success": true },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:*,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:kernel,Path:/output,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowdqlkf/series-workflowdqlkf-build-action-3188761838/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[6].patched-build(0) Phase: Succeeded StartedAt: 2026-06-24 11:49:23 +0000 UTC FinishedAt: 2026-06-24 12:21:32 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:findings,Default:nil,Value:*true,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Build Patched,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:smoke-build,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:session-id,Default:nil,Value:*f9c8b7c2-317f-4d59-8532-3022a88ce984,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:request,Path:/tmp/request.json,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowdqlkf/series-workflowdqlkf-convert-artifact-2360885450/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "build_id": "3c7d5d79-1461-433b-8289-b136cf61c450", "success": true },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:*,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:kernel,Path:/output,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowdqlkf/series-workflowdqlkf-build-action-3188761838/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[7] Phase: Succeeded StartedAt: 2026-06-24 12:21:42 +0000 UTC FinishedAt: 2026-06-24 12:21:43 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[7].abort-if-patched-build-failed Phase: Skipped StartedAt: 2026-06-24 12:21:43 +0000 UTC FinishedAt: 2026-06-24 12:21:43 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[8] Phase: Succeeded StartedAt: 2026-06-24 12:21:43 +0000 UTC FinishedAt: 2026-06-24 12:23:15 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[8].boot-test-patched Phase: Succeeded StartedAt: 2026-06-24 12:21:43 +0000 UTC FinishedAt: 2026-06-24 12:23:05 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:base-build-id,Default:nil,Value:*,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:patched-build-id,Default:nil,Value:*3c7d5d79-1461-433b-8289-b136cf61c450,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Boot test: Patched,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:report-findings,Default:nil,Value:*true,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:kernel,Path:/base,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowdqlkf/series-workflowdqlkf-build-action-3188761838/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "success": true },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:nil,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},Result:nil,ExitCode:*0,} --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[10] Phase: Succeeded StartedAt: 2026-06-24 12:23:15 +0000 UTC FinishedAt: 2026-06-24 15:24:41 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[10].run-fuzz Phase: Succeeded StartedAt: 2026-06-24 12:23:15 +0000 UTC FinishedAt: 2026-06-24 15:24:41 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:config,Default:nil,Value:*{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:track,Default:nil,Value:*KASAN,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:base-build-id,Default:nil,Value:*78fe8002-16f6-4002-8380-546e26b720e4,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:patched-build-id,Default:nil,Value:*3c7d5d79-1461-433b-8289-b136cf61c450,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:base-kernel,Path:,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowdqlkf/series-workflowdqlkf-build-action-1698914561/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},Artifact{Name:patched-kernel,Path:,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowdqlkf/series-workflowdqlkf-build-action-3188761838/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[10].run-fuzz[0] Phase: Succeeded StartedAt: 2026-06-24 12:23:15 +0000 UTC FinishedAt: 2026-06-24 12:23:25 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[10].run-fuzz[0].save-fuzz-config Phase: Succeeded StartedAt: 2026-06-24 12:23:15 +0000 UTC FinishedAt: 2026-06-24 12:23:20 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:data,Default:nil,Value:*{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},} Output: &Outputs{Parameters:[]Parameter{},Artifacts:[]Artifact{Artifact{Name:artifact,Path:/tmp/artifact,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowdqlkf/series-workflowdqlkf-convert-artifact-1603431775/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[10].run-retest Phase: Skipped StartedAt: 2026-06-24 12:23:15 +0000 UTC FinishedAt: 2026-06-24 12:23:15 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[9] Phase: Succeeded StartedAt: 2026-06-24 12:23:15 +0000 UTC FinishedAt: 2026-06-24 12:23:15 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[9].abort-if-patched-boot-failed Phase: Skipped StartedAt: 2026-06-24 12:23:15 +0000 UTC FinishedAt: 2026-06-24 12:23:15 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[10].run-fuzz[1] Phase: Succeeded StartedAt: 2026-06-24 12:23:25 +0000 UTC FinishedAt: 2026-06-24 15:24:41 +0000 UTC Input: nil Output: nil --------- Name: series-workflowdqlkf[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-net-kasan-gce-corpus.db"],"focus":["net"],"focus_symbols":["addrconf_sysctl_forward","addrconf_sysctl_disable","addrconf_sysctl_proxy_ndp","addrconf_sysctl_ignore_routes_with_linkdown","addrconf_sysctl_disable_policy"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"89adcf17ee7a2b7bee584c9c69382118f23dce72","config_name":"upstream-apparmor-kasan.config","enable_configs":["IPV6"],"series_id":"6d2c4b9a-5e2b-411d-8f33-7c9cd1ab4d26","tree_name":"net","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/netdev/net.git"},retest:null,track:KASAN)[10].run-fuzz[1].fuzz Phase: Succeeded StartedAt: 2026-06-24 12:23:25 +0000 UTC FinishedAt: 2026-06-24 15:24:31 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:base-build-id,Default:nil,Value:*78fe8002-16f6-4002-8380-546e26b720e4,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:patched-build-id,Default:nil,Value:*3c7d5d79-1461-433b-8289-b136cf61c450,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Fuzz,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:base-kernel,Path:/base,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowdqlkf/series-workflowdqlkf-build-action-1698914561/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},Artifact{Name:patched-kernel,Path:/patched,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowdqlkf/series-workflowdqlkf-build-action-3188761838/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},Artifact{Name:config,Path:/tmp/config.json,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowdqlkf/series-workflowdqlkf-convert-artifact-1603431775/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{},Artifacts:[]Artifact{},Result:nil,ExitCode:*0,}