From owner-freebsd-emulation@FreeBSD.ORG Thu Dec 14 11:33:42 2006 Return-Path: X-Original-To: emulation@freebsd.org Delivered-To: freebsd-emulation@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id A175D16A4A7 for ; Thu, 14 Dec 2006 11:33:42 +0000 (UTC) (envelope-from swhetzel@gmail.com) Received: from nz-out-0506.google.com (nz-out-0506.google.com [64.233.162.224]) by mx1.FreeBSD.org (Postfix) with ESMTP id A62FA43C9E for ; Thu, 14 Dec 2006 11:32:06 +0000 (GMT) (envelope-from swhetzel@gmail.com) Received: by nz-out-0506.google.com with SMTP id i11so232520nzh for ; Thu, 14 Dec 2006 03:33:40 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:mime-version:content-type; b=saBSRd8T0eaWii0qdWjIdxcNPz9HtW4aeUZNOv2dMHXXLQBAuuvQ89Zb62nRpnofM6qjln92afT+vabMAjHlNrxOK8CUWtzcV0FraTfFA3mNOrXhOwdfgkFCadOG7KXX4zcDYxgbhwT4B8yNwsR+vZJkwTSGmox3YE+rkH49JYs= Received: by 10.65.154.10 with SMTP id g10mr1278166qbo.1166096020523; Thu, 14 Dec 2006 03:33:40 -0800 (PST) Received: by 10.65.61.1 with HTTP; Thu, 14 Dec 2006 03:33:40 -0800 (PST) Message-ID: <790a9fff0612140333ofd0891el59f767329f291371@mail.gmail.com> Date: Thu, 14 Dec 2006 05:33:40 -0600 From: "Scot Hetzel" To: emulation@freebsd.org MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_71916_12049593.1166096020423" Cc: Subject: linuxolator: utimes implementation X-BeenThere: freebsd-emulation@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Development of Emulators of other operating systems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Dec 2006 11:33:42 -0000 ------=_Part_71916_12049593.1166096020423 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline While I was running the the tests for ltp-full-20061121, I noticed that the utimes function wasn't implemented in the linuxolator. I looked up the man page and found that it was similar to the utime function, except that it allows a program to set an inode down to the microsecond. Merging together the linux_utime and freebsd32_utimes functions, I was able to create the linux_utimes function. But when I compile the linux module in /sys/module/linux, I get this error: /usr/src/7x/sys-patched/modules/linux/../../compat/linux/linux_misc.c: In function `linux_utimes': /usr/src/7x/sys-patched/modules/linux/../../compat/linux/linux_misc.c:792: error: storage size of 'ltv' isn't known /usr/src/7x/sys-patched/modules/linux/../../compat/linux/linux_misc.c:792: warning: unused variable `ltv' *** Error code 1 At line 792 ltv is defined as: struct l_timeval ltv[2]; Attached is the patch for linux_utimes. Any ideals as to how to fix this problem? Scot -- DISCLAIMER: No electrons were mamed while sending this message. Only slightly bruised. ------=_Part_71916_12049593.1166096020423 Content-Type: text/x-diff; name="linux_utimes.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="linux_utimes.patch" X-Attachment-Id: f_evp3enpq SW5kZXg6IGFtZDY0L2xpbnV4MzIvbGludXgzMl9kdW1teS5jCj09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6 IC9ob21lL25jdnMvc3JjL3N5cy9hbWQ2NC9saW51eDMyL2xpbnV4MzJfZHVtbXkuYyx2CnJldHJp ZXZpbmcgcmV2aXNpb24gMS42CmRpZmYgLXUgLXIxLjYgbGludXgzMl9kdW1teS5jCi0tLSBhbWQ2 NC9saW51eDMyL2xpbnV4MzJfZHVtbXkuYwkyOCBPY3QgMjAwNiAxMDo1OTo1OSAtMDAwMAkxLjYK KysrIGFtZDY0L2xpbnV4MzIvbGludXgzMl9kdW1teS5jCTEzIERlYyAyMDA2IDE4OjM0OjU5IC0w MDAwCkBAIC03Nyw3ICs3NSw2IEBACiBEVU1NWSh0aW1lcl9nZXRvdmVycnVuKTsKIERVTU1ZKHRp bWVyX2RlbGV0ZSk7CiBEVU1NWShmc3RhdGZzNjQpOwotRFVNTVkodXRpbWVzKTsKIERVTU1ZKGZh ZHZpc2U2NF82NCk7CiBEVU1NWShtYmluZCk7CiBEVU1NWShnZXRfbWVtcG9saWN5KTsKSW5kZXg6 IGFtZDY0L2xpbnV4MzIvbGludXgzMl9wcm90by5oCj09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9ob21l L25jdnMvc3JjL3N5cy9hbWQ2NC9saW51eDMyL2xpbnV4MzJfcHJvdG8uaCx2CnJldHJpZXZpbmcg cmV2aXNpb24gMS4yNgpkaWZmIC11IC1yMS4yNiBsaW51eDMyX3Byb3RvLmgKLS0tIGFtZDY0L2xp bnV4MzIvbGludXgzMl9wcm90by5oCTExIE5vdiAyMDA2IDIxOjQ5OjA3IC0wMDAwCTEuMjYKKysr IGFtZDY0L2xpbnV4MzIvbGludXgzMl9wcm90by5oCTE0IERlYyAyMDA2IDA4OjUyOjIwIC0wMDAw CkBAIC03OTgsNyArODM0LDggQEAKIAljaGFyIHNpZ19sX1tQQURMXyhpbnQpXTsgaW50IHNpZzsg Y2hhciBzaWdfcl9bUEFEUl8oaW50KV07CiB9Owogc3RydWN0IGxpbnV4X3V0aW1lc19hcmdzIHsK LQlyZWdpc3Rlcl90IGR1bW15OworCWNoYXIgZm5hbWVfbF9bUEFETF8oY2hhciAqKV07IGNoYXIg KiBmbmFtZTsgY2hhciBmbmFtZV9yX1tQQURSXyhjaGFyICopXTsKKwljaGFyIHRwdHJfbF9bUEFE TF8oc3RydWN0IGxfdGltZXZhbCAqKV07IHN0cnVjdCBsX3RpbWV2YWwgKiB0cHRyOyBjaGFyIHRw dHJfcl9bUEFEUl8oc3RydWN0IGxfdGltZXZhbCAqKV07CiB9Owogc3RydWN0IGxpbnV4X2ZhZHZp c2U2NF82NF9hcmdzIHsKIAlyZWdpc3Rlcl90IGR1bW15OwpAQCAtMTM1MCw3ICsxNDAxLDcgQEAK ICNkZWZpbmUJTElOVVhfU1lTX0FVRV9saW51eF9zdGF0ZnM2NAlBVUVfTlVMTAogI2RlZmluZQlM SU5VWF9TWVNfQVVFX2xpbnV4X2ZzdGF0ZnM2NAlBVUVfTlVMTAogI2RlZmluZQlMSU5VWF9TWVNf QVVFX2xpbnV4X3Rna2lsbAlBVUVfTlVMTAotI2RlZmluZQlMSU5VWF9TWVNfQVVFX2xpbnV4X3V0 aW1lcwlBVUVfTlVMTAorI2RlZmluZQlMSU5VWF9TWVNfQVVFX2xpbnV4X3V0aW1lcwlBVUVfVVRJ TUVTCiAjZGVmaW5lCUxJTlVYX1NZU19BVUVfbGludXhfZmFkdmlzZTY0XzY0CUFVRV9OVUxMCiAj ZGVmaW5lCUxJTlVYX1NZU19BVUVfbGludXhfbWJpbmQJQVVFX05VTEwKICNkZWZpbmUJTElOVVhf U1lTX0FVRV9saW51eF9nZXRfbWVtcG9saWN5CUFVRV9OVUxMCkluZGV4OiBhbWQ2NC9saW51eDMy L2xpbnV4MzJfc3lzZW50LmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2hvbWUvbmN2cy9zcmMvc3lz L2FtZDY0L2xpbnV4MzIvbGludXgzMl9zeXNlbnQuYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4y NgpkaWZmIC11IC1yMS4yNiBsaW51eDMyX3N5c2VudC5jCi0tLSBhbWQ2NC9saW51eDMyL2xpbnV4 MzJfc3lzZW50LmMJMTEgTm92IDIwMDYgMjE6NDk6MDcgLTAwMDAJMS4yNgorKysgYW1kNjQvbGlu dXgzMi9saW51eDMyX3N5c2VudC5jCTE0IERlYyAyMDA2IDA4OjUyOjIwIC0wMDAwCkBAIC0yOTEs NyArMjkxLDcgQEAKIAl7IEFTKGxpbnV4X3N0YXRmczY0X2FyZ3MpLCAoc3lfY2FsbF90ICopbGlu dXhfc3RhdGZzNjQsIEFVRV9OVUxMLCBOVUxMLCAwLCAwIH0sCS8qIDI2OCA9IGxpbnV4X3N0YXRm czY0ICovCiAJeyAwLCAoc3lfY2FsbF90ICopbGludXhfZnN0YXRmczY0LCBBVUVfTlVMTCwgTlVM TCwgMCwgMCB9LAkvKiAyNjkgPSBsaW51eF9mc3RhdGZzNjQgKi8KIAl7IEFTKGxpbnV4X3Rna2ls bF9hcmdzKSwgKHN5X2NhbGxfdCAqKWxpbnV4X3Rna2lsbCwgQVVFX05VTEwsIE5VTEwsIDAsIDAg fSwJLyogMjcwID0gbGludXhfdGdraWxsICovCi0JeyAwLCAoc3lfY2FsbF90ICopbGludXhfdXRp bWVzLCBBVUVfTlVMTCwgTlVMTCwgMCwgMCB9LAkvKiAyNzEgPSBsaW51eF91dGltZXMgKi8KKwl7 IEFTKGxpbnV4X3V0aW1lc19hcmdzKSwgKHN5X2NhbGxfdCAqKWxpbnV4X3V0aW1lcywgQVVFX1VU SU1FUywgTlVMTCwgMCwgMCB9LAkvKiAyNzEgPSBsaW51eF91dGltZXMgKi8KIAl7IDAsIChzeV9j YWxsX3QgKilsaW51eF9mYWR2aXNlNjRfNjQsIEFVRV9OVUxMLCBOVUxMLCAwLCAwIH0sCS8qIDI3 MiA9IGxpbnV4X2ZhZHZpc2U2NF82NCAqLwogCXsgMCwgKHN5X2NhbGxfdCAqKW5vc3lzLCBBVUVf TlVMTCwgTlVMTCwgMCwgMCB9LAkJCS8qIDI3MyA9ICAqLwogCXsgMCwgKHN5X2NhbGxfdCAqKWxp bnV4X21iaW5kLCBBVUVfTlVMTCwgTlVMTCwgMCwgMCB9LAkvKiAyNzQgPSBsaW51eF9tYmluZCAq LwpJbmRleDogYW1kNjQvbGludXgzMi9zeXNjYWxscy5tYXN0ZXIKPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmls ZTogL2hvbWUvbmN2cy9zcmMvc3lzL2FtZDY0L2xpbnV4MzIvc3lzY2FsbHMubWFzdGVyLHYKcmV0 cmlldmluZyByZXZpc2lvbiAxLjIzCmRpZmYgLXUgLXIxLjIzIHN5c2NhbGxzLm1hc3RlcgotLS0g YW1kNjQvbGludXgzMi9zeXNjYWxscy5tYXN0ZXIJMjkgT2N0IDIwMDYgMTQ6MDI6MzggLTAwMDAJ MS4yMworKysgYW1kNjQvbGludXgzMi9zeXNjYWxscy5tYXN0ZXIJMTQgRGVjIDIwMDYgMDg6MDI6 MDUgLTAwMDAKQEAgLTQzNCw3ICs0MzgsOCBAQAogMjY4CUFVRV9OVUxMCVNURAl7IGludCBsaW51 eF9zdGF0ZnM2NChjaGFyICpwYXRoLCBzdHJ1Y3QgbF9zdGF0ZnM2NF9idWYgKmJ1Zik7IH0KIDI2 OQlBVUVfTlVMTAlTVEQJeyBpbnQgbGludXhfZnN0YXRmczY0KHZvaWQpOyB9CiAyNzAJQVVFX05V TEwJU1RECXsgaW50IGxpbnV4X3Rna2lsbChpbnQgdGdpZCwgaW50IHBpZCwgaW50IHNpZyk7IH0K LTI3MQlBVUVfTlVMTAlTVEQJeyBpbnQgbGludXhfdXRpbWVzKHZvaWQpOyB9CisyNzEJQVVFX1VU SU1FUwlTVEQJeyBpbnQgbGludXhfdXRpbWVzKGNoYXIgKmZuYW1lLCBcCisJCQkJCXN0cnVjdCBs X3RpbWV2YWwgKnRwdHIpOyB9CiAyNzIJQVVFX05VTEwJU1RECXsgaW50IGxpbnV4X2ZhZHZpc2U2 NF82NCh2b2lkKTsgfQogMjczCUFVRV9OVUxMCVVOSU1QTAogMjc0CUFVRV9OVUxMCVNURAl7IGlu dCBsaW51eF9tYmluZCh2b2lkKTsgfQpJbmRleDogY29tcGF0L2xpbnV4L2xpbnV4X21pc2MuYwo9 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09ClJDUyBmaWxlOiAvaG9tZS9uY3ZzL3NyYy9zeXMvY29tcGF0L2xpbnV4L2xpbnV4 X21pc2MuYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xOTkKZGlmZiAtdSAtcjEuMTk5IGxpbnV4 X21pc2MuYwotLS0gY29tcGF0L2xpbnV4L2xpbnV4X21pc2MuYwk0IERlYyAyMDA2IDIyOjQ2OjA5 IC0wMDAwCTEuMTk5CisrKyBjb21wYXQvbGludXgvbGludXhfbWlzYy5jCTE0IERlYyAyMDA2IDA5 OjA5OjA1IC0wMDAwCkBAIC03ODUsNiArNzg1LDM5IEBACiAJTEZSRUVQQVRIKGZuYW1lKTsKIAly ZXR1cm4gKGVycm9yKTsKIH0KKworaW50CitsaW51eF91dGltZXMoc3RydWN0IHRocmVhZCAqdGQs IHN0cnVjdCBsaW51eF91dGltZXNfYXJncyAqYXJncykKK3sKKwlzdHJ1Y3QgbF90aW1ldmFsIGx0 dlsyXTsKKwlzdHJ1Y3QgdGltZXZhbCB0dlsyXSwgKnR2cDsKKwljaGFyICpmbmFtZTsKKwlpbnQg ZXJyb3I7CisKKwlMQ09OVlBBVEhFWElTVCh0ZCwgYXJncy0+Zm5hbWUsICZmbmFtZSk7CisKKyNp ZmRlZiBERUJVRworCWlmIChsZGVidWcodXRpbWVzKQorCQlwcmludGYoQVJHUyh1dGltZXMsICIl cywgKiIpLCBmbmFtZSk7CisjZW5kaWYKKworCWlmIChhcmdzLT50cHRyICE9IE5VTEwpIHsKKwkJ aWYgKChlcnJvciA9IGNvcHlpbihhcmdzLT50cHRyLCBsdHYsIHNpemVvZiBsdHYpKSkgeworCQkJ TEZSRUVQQVRIKGZuYW1lKTsKKwkJCXJldHVybiBlcnJvcjsKKwkJfQorCQl0dlswXS50dl9zZWMg PSBsdHZbMF0udHZfc2VjOworCQl0dlswXS50dl91c2VjID0gbHR2WzBdLnR2X3VzZWM7CisJCXR2 WzFdLnR2X3NlYyA9IGx0dlsxXS50dl9zZWM7CisJCXR2WzFdLnR2X3VzZWMgPSBsdHZbMV0udHZf dXNlYzsKKwkJdHZwID0gdHY7CisJfSBlbHNlCisJCXR2cCA9IE5VTEw7CisKKwllcnJvciA9IGtl cm5fdXRpbWVzKHRkLCBmbmFtZSwgVUlPX1NZU1NQQUNFLCB0dnAsIFVJT19TWVNTUEFDRSk7CisJ TEZSRUVQQVRIKGZuYW1lKTsKKwlyZXR1cm4gKGVycm9yKTsKK30KICNlbmRpZiAvKiBfX2kzODZf XyB8fCAoX19hbWQ2NF9fICYmIENPTVBBVF9MSU5VWDMyKSAqLwogCiAjZGVmaW5lIF9fV0NMT05F IDB4ODAwMDAwMDAKSW5kZXg6IGkzODYvbGludXgvbGludXhfZHVtbXkuYwo9PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJD UyBmaWxlOiAvaG9tZS9uY3ZzL3NyYy9zeXMvaTM4Ni9saW51eC9saW51eF9kdW1teS5jLHYKcmV0 cmlldmluZyByZXZpc2lvbiAxLjQ0CmRpZmYgLXUgLXIxLjQ0IGxpbnV4X2R1bW15LmMKLS0tIGkz ODYvbGludXgvbGludXhfZHVtbXkuYwkyOCBPY3QgMjAwNiAxMDo1OTo1OSAtMDAwMAkxLjQ0Cisr KyBpMzg2L2xpbnV4L2xpbnV4X2R1bW15LmMJMTQgRGVjIDIwMDYgMDk6MDA6MjcgLTAwMDAKQEAg LTczLDcgKzcxLDYgQEAKIERVTU1ZKGVwb2xsX3dhaXQpOwogRFVNTVkocmVtYXBfZmlsZV9wYWdl cyk7CiBEVU1NWShmc3RhdGZzNjQpOwotRFVNTVkodXRpbWVzKTsKIERVTU1ZKGZhZHZpc2U2NF82 NCk7CiBEVU1NWShtYmluZCk7CiBEVU1NWShnZXRfbWVtcG9saWN5KTsKSW5kZXg6IGkzODYvbGlu dXgvbGludXhfcHJvdG8uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvaG9tZS9uY3ZzL3NyYy9zeXMv aTM4Ni9saW51eC9saW51eF9wcm90by5oLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjg3CmRpZmYg LXUgLXIxLjg3IGxpbnV4X3Byb3RvLmgKLS0tIGkzODYvbGludXgvbGludXhfcHJvdG8uaAkxMSBO b3YgMjAwNiAxNjoyNjo1NiAtMDAwMAkxLjg3CisrKyBpMzg2L2xpbnV4L2xpbnV4X3Byb3RvLmgJ MTQgRGVjIDIwMDYgMDg6NTk6MjEgLTAwMDAKQEAgLTgwMCw3ICs4MzQsOCBAQAogCWNoYXIgc2ln X2xfW1BBRExfKGludCldOyBpbnQgc2lnOyBjaGFyIHNpZ19yX1tQQURSXyhpbnQpXTsKIH07CiBz dHJ1Y3QgbGludXhfdXRpbWVzX2FyZ3MgewotCXJlZ2lzdGVyX3QgZHVtbXk7CisJY2hhciBmbmFt ZV9sX1tQQURMXyhjaGFyICopXTsgY2hhciAqIGZuYW1lOyBjaGFyIGZuYW1lX3JfW1BBRFJfKGNo YXIgKildOworCWNoYXIgdHB0cl9sX1tQQURMXyhzdHJ1Y3QgbF90aW1ldmFsICopXTsgc3RydWN0 IGxfdGltZXZhbCAqIHRwdHI7IGNoYXIgdHB0cl9yX1tQQURSXyhzdHJ1Y3QgbF90aW1ldmFsICop XTsKIH07CiBzdHJ1Y3QgbGludXhfZmFkdmlzZTY0XzY0X2FyZ3MgewogCXJlZ2lzdGVyX3QgZHVt bXk7CkluZGV4OiBpMzg2L2xpbnV4L2xpbnV4X3N5c2VudC5jCj09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6 IC9ob21lL25jdnMvc3JjL3N5cy9pMzg2L2xpbnV4L2xpbnV4X3N5c2VudC5jLHYKcmV0cmlldmlu ZyByZXZpc2lvbiAxLjg3CmRpZmYgLXUgLXIxLjg3IGxpbnV4X3N5c2VudC5jCi0tLSBpMzg2L2xp bnV4L2xpbnV4X3N5c2VudC5jCTI5IE9jdCAyMDA2IDE0OjEyOjQ0IC0wMDAwCTEuODcKKysrIGkz ODYvbGludXgvbGludXhfc3lzZW50LmMJMTQgRGVjIDIwMDYgMDg6NTk6MjEgLTAwMDAKQEAgLTI5 MCw3ICsyOTAsNyBAQAogCXsgQVMobGludXhfc3RhdGZzNjRfYXJncyksIChzeV9jYWxsX3QgKils aW51eF9zdGF0ZnM2NCwgQVVFX1NUQVRGUywgTlVMTCwgMCwgMCB9LAkvKiAyNjggPSBsaW51eF9z dGF0ZnM2NCAqLwogCXsgMCwgKHN5X2NhbGxfdCAqKWxpbnV4X2ZzdGF0ZnM2NCwgQVVFX0ZTVEFU RlMsIE5VTEwsIDAsIDAgfSwJLyogMjY5ID0gbGludXhfZnN0YXRmczY0ICovCiAJeyBBUyhsaW51 eF90Z2tpbGxfYXJncyksIChzeV9jYWxsX3QgKilsaW51eF90Z2tpbGwsIEFVRV9OVUxMLCBOVUxM LCAwLCAwIH0sCS8qIDI3MCA9IGxpbnV4X3Rna2lsbCAqLwotCXsgMCwgKHN5X2NhbGxfdCAqKWxp bnV4X3V0aW1lcywgQVVFX1VUSU1FUywgTlVMTCwgMCwgMCB9LAkvKiAyNzEgPSBsaW51eF91dGlt ZXMgKi8KKwl7IEFTKGxpbnV4X3V0aW1lc19hcmdzKSwgKHN5X2NhbGxfdCAqKWxpbnV4X3V0aW1l cywgQVVFX1VUSU1FUywgTlVMTCwgMCwgMCB9LAkvKiAyNzEgPSBsaW51eF91dGltZXMgKi8KIAl7 IDAsIChzeV9jYWxsX3QgKilsaW51eF9mYWR2aXNlNjRfNjQsIEFVRV9OVUxMLCBOVUxMLCAwLCAw IH0sCS8qIDI3MiA9IGxpbnV4X2ZhZHZpc2U2NF82NCAqLwogCXsgMCwgKHN5X2NhbGxfdCAqKW5v c3lzLCBBVUVfTlVMTCwgTlVMTCwgMCwgMCB9LAkJCS8qIDI3MyA9ICAqLwogCXsgMCwgKHN5X2Nh bGxfdCAqKWxpbnV4X21iaW5kLCBBVUVfTlVMTCwgTlVMTCwgMCwgMCB9LAkvKiAyNzQgPSBsaW51 eF9tYmluZCAqLwpJbmRleDogaTM4Ni9saW51eC9zeXNjYWxscy5tYXN0ZXIKPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpS Q1MgZmlsZTogL2hvbWUvbmN2cy9zcmMvc3lzL2kzODYvbGludXgvc3lzY2FsbHMubWFzdGVyLHYK cmV0cmlldmluZyByZXZpc2lvbiAxLjgzCmRpZmYgLXUgLXIxLjgzIHN5c2NhbGxzLm1hc3Rlcgot LS0gaTM4Ni9saW51eC9zeXNjYWxscy5tYXN0ZXIJMjkgT2N0IDIwMDYgMTQ6MDI6MzkgLTAwMDAJ MS44MworKysgaTM4Ni9saW51eC9zeXNjYWxscy5tYXN0ZXIJMTQgRGVjIDIwMDYgMDg6MDA6NDkg LTAwMDAKQEAgLTQzOSw3ICs0NDMsOCBAQAogMjY4CUFVRV9TVEFURlMJU1RECXsgaW50IGxpbnV4 X3N0YXRmczY0KGNoYXIgKnBhdGgsIHN0cnVjdCBsX3N0YXRmczY0X2J1ZiAqYnVmKTsgfQogMjY5 CUFVRV9GU1RBVEZTCVNURAl7IGludCBsaW51eF9mc3RhdGZzNjQodm9pZCk7IH0KIDI3MAlBVUVf TlVMTAlTVEQJeyBpbnQgbGludXhfdGdraWxsKGludCB0Z2lkLCBpbnQgcGlkLCBpbnQgc2lnKTsg fQotMjcxCUFVRV9VVElNRVMJU1RECXsgaW50IGxpbnV4X3V0aW1lcyh2b2lkKTsgfQorMjcxCUFV RV9VVElNRVMJU1RECXsgaW50IGxpbnV4X3V0aW1lcyhjaGFyICpmbmFtZSwgXAorCQkJCQlzdHJ1 Y3QgbF90aW1ldmFsICp0cHRyKTsgfQogMjcyCUFVRV9OVUxMCVNURAl7IGludCBsaW51eF9mYWR2 aXNlNjRfNjQodm9pZCk7IH0KIDI3MwlBVUVfTlVMTAlVTklNUEwKIDI3NAlBVUVfTlVMTAlTVEQJ eyBpbnQgbGludXhfbWJpbmQodm9pZCk7IH0K ------=_Part_71916_12049593.1166096020423--