Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kPzEC-0007QA-6w for pgsql-hackers@arkaria.postgresql.org; Wed, 07 Oct 2020 02:30:52 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1kPzEA-0003j5-Q4 for pgsql-hackers@arkaria.postgresql.org; Wed, 07 Oct 2020 02:30:50 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kPzEA-0003iy-8H for pgsql-hackers@lists.postgresql.org; Wed, 07 Oct 2020 02:30:50 +0000 Received: from mail-ej1-x643.google.com ([2a00:1450:4864:20::643]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1kPzE6-00054q-BZ for pgsql-hackers@postgresql.org; Wed, 07 Oct 2020 02:30:49 +0000 Received: by mail-ej1-x643.google.com with SMTP id ce10so739004ejc.5 for ; Tue, 06 Oct 2020 19:30:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=ITU41CwwUcbL8t++4fqdyZbtii8p6AKz/1IW5GfEeNQ=; b=nJOtu3lIalzJXJzg75xfLZm+FzyC3XIAu5KMpciP7+O00KmCqj4Mqcv1cjNxKQLAva rwj7nB1gHA6Uhrbg2uu2NFKDXA7UKTK2SeAyVa9gidw6jkVov2lTbpMJb5JbmuJern63 wB36G0UAwy+QyawGsrN1BBEil3/IjpHVVzEzUaxgT3YYWOysGM++z0bNJwjFWd9ckhzG fVNscYXw6F/UnNFgIRW45aSlPZFneGyrZtUH3ahDQACPf6suJdQGxw+7z721+2tM4cNT PnnTrmPIrjV6q8CgYbVYe880crSIBTziEldhhv6EpOFFVuL0pb7WVuA4aqUjlrG9b8WL eNBA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=ITU41CwwUcbL8t++4fqdyZbtii8p6AKz/1IW5GfEeNQ=; b=pt6Whs3nNeF7Z0JbseGfZXLAC/gYcRhBRier/K+Jb+A+oEDybFRlQAkoU1/TKUihX4 Ktozg3DF9EYH7BoABc9QCQT9IuHd+55Xkm5oGTIs71b7C+EPXB/xq/xNWiIuVM6152P7 bCmz71dsaZYGYVzGRfGtaIdMfB6rz7PhtKiWwP1iUUbvBUD3gc3mrWYMGd8ClxVfnwL4 Plm1F6ivGe6spq+Ol0VhOHT5LJ/YG55sIZ9OZpxsLPU4pFLb8O4hD0cu/A5aea8h/MW9 /PaK7iLoxmWCvrDkEAr4V73VsJUmslwR34cicvGTeLL7FZ+aIIDu8CprJ7FUtuxreqJo 3FBw== X-Gm-Message-State: AOAM5322w+MKAiiMdpnJD2E3uBOlqeozhycKxTpObTkDT+9SqMEr/WpV 8HlzSQC1e1XCD5ENBsROz9S0TiMDbsQIg2/3aZJp3rw8 X-Google-Smtp-Source: ABdhPJzqW1UdXoY0vXJfDB/I22weTUQ5TPO5QNRdWTfjwsQHXRMMFRJJLuXuk3dkZCJTG6cAu8bQBMgTJXlf0blVmVc= X-Received: by 2002:a17:906:eb59:: with SMTP id mc25mr1086380ejb.34.1602037844126; Tue, 06 Oct 2020 19:30:44 -0700 (PDT) MIME-Version: 1.0 References: <13156732-5189-af54-3d28-e2ee2a8568e0@oss.nttdata.com> <069fb3bc-3907-4d85-19fd-e4b2d2f004b4@oss.nttdata.com> In-Reply-To: From: Bharath Rupireddy Date: Wed, 7 Oct 2020 08:00:32 +0530 Message-ID: Subject: Re: Use standard SIGHUP and SIGTERM handlers in autoprewarm module To: Fujii Masao Cc: PostgreSQL-development Content-Type: multipart/mixed; boundary="0000000000009df71c05b10b80f5" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk --0000000000009df71c05b10b80f5 Content-Type: text/plain; charset="UTF-8" On Tue, Oct 6, 2020 at 11:41 AM Bharath Rupireddy wrote: > > On Tue, Oct 6, 2020 at 11:20 AM Fujii Masao wrote: > > > > +1 Or it's also ok to make each patch separately. > > Anyway, thanks! > > > > Thanks. +1 to have separate patches. I will post two separate patches > for autoprewarm and WalRcvShutdownHandler for further review. The > other two patches can be for startup.c and syslogger.c. > I'm attaching all the 4 patches here together. 1. v1-use-standard-SIGHUP-and-SIGTERM-handlers-in-autoprewarm-process.patch -- This is the patch initially sent in this mail by me, I just renamed it. 2. v1-use-MyLatch-and-standard-SIGHUP-handler-in-startup-process.patch -- This is the patch proposed by Fuji Masao, I just renamed it. 3. v1-use-standard-SIGHUP-hanlder-in-syslogger-process.patch 4. v1-use-standard-SIGTERM-handler-in-walreceiver-process.patch Please consider these patches for further review. With Regards, Bharath Rupireddy. EnterpriseDB: http://www.enterprisedb.com --0000000000009df71c05b10b80f5 Content-Type: application/x-patch; name="v1-use-standard-SIGHUP-and-SIGTERM-handlers-in-autoprewarm-process.patch" Content-Disposition: attachment; filename="v1-use-standard-SIGHUP-and-SIGTERM-handlers-in-autoprewarm-process.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kfyri0400 RnJvbSBiOWQ3N2I2ZTg0ZDNlZWU4NzY5Mzg5M2MxNjg3ZjEyMGVlM2RiNjhiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBCaGFyYXRoIFJ1cGlyZWRkeSA8YmhhcmF0aC5ydXBpcmVkZHlA ZW50ZXJwcmlzZWRiLmNvbT4KRGF0ZTogV2VkLCA3IE9jdCAyMDIwIDA3OjEyOjU3ICswNTMwClN1 YmplY3Q6IFtQQVRDSCB2MV0gYXV0b3ByZXdhcm0gdXNlIHN0YW5kYXJkIFNJR0hVUCBhbmQgU0lH VEVSTSBoYW5kbGVycwoKUmVwbGFjZSBhcHdfc2lndGVybV9oYW5kbGVyKCkgYW5kIGFwd19zaWdo dXBfaGFuZGxlcigpIHdpdGggc3RhbmRhcmQKU2lnbmFsSGFuZGxlckZvclNodXRkb3duUmVxdWVz dCgpIGFuZCBTaWduYWxIYW5kbGVyRm9yQ29uZmlnUmVsb2FkKCkKcmVzcGVjdGl2ZWx5LgotLS0K IGNvbnRyaWIvcGdfcHJld2FybS9hdXRvcHJld2FybS5jIHwgNDkgKysrKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDQzIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2NvbnRyaWIvcGdfcHJld2FybS9hdXRvcHJld2FybS5jIGIv Y29udHJpYi9wZ19wcmV3YXJtL2F1dG9wcmV3YXJtLmMKaW5kZXggYzMyZGRjNTZmZC4uOTNlNTI2 ZWY2MiAxMDA2NDQKLS0tIGEvY29udHJpYi9wZ19wcmV3YXJtL2F1dG9wcmV3YXJtLmMKKysrIGIv Y29udHJpYi9wZ19wcmV3YXJtL2F1dG9wcmV3YXJtLmMKQEAgLTM1LDYgKzM1LDcgQEAKICNpbmNs dWRlICJtaXNjYWRtaW4uaCIKICNpbmNsdWRlICJwZ3N0YXQuaCIKICNpbmNsdWRlICJwb3N0bWFz dGVyL2Jnd29ya2VyLmgiCisjaW5jbHVkZSAicG9zdG1hc3Rlci9pbnRlcnJ1cHQuaCIKICNpbmNs dWRlICJzdG9yYWdlL2J1Zl9pbnRlcm5hbHMuaCIKICNpbmNsdWRlICJzdG9yYWdlL2RzbS5oIgog I2luY2x1ZGUgInN0b3JhZ2UvaXBjLmgiCkBAIC05NCwxMiArOTUsNiBAQCBzdGF0aWMgdm9pZCBh cHdfc3RhcnRfZGF0YWJhc2Vfd29ya2VyKHZvaWQpOwogc3RhdGljIGJvb2wgYXB3X2luaXRfc2ht ZW0odm9pZCk7CiBzdGF0aWMgdm9pZCBhcHdfZGV0YWNoX3NobWVtKGludCBjb2RlLCBEYXR1bSBh cmcpOwogc3RhdGljIGludAlhcHdfY29tcGFyZV9ibG9ja2luZm8oY29uc3Qgdm9pZCAqcCwgY29u c3Qgdm9pZCAqcSk7Ci1zdGF0aWMgdm9pZCBhcHdfc2lndGVybV9oYW5kbGVyKFNJR05BTF9BUkdT KTsKLXN0YXRpYyB2b2lkIGFwd19zaWdodXBfaGFuZGxlcihTSUdOQUxfQVJHUyk7Ci0KLS8qIEZs YWdzIHNldCBieSBzaWduYWwgaGFuZGxlcnMgKi8KLXN0YXRpYyB2b2xhdGlsZSBzaWdfYXRvbWlj X3QgZ290X3NpZ3Rlcm0gPSBmYWxzZTsKLXN0YXRpYyB2b2xhdGlsZSBzaWdfYXRvbWljX3QgZ290 X3NpZ2h1cCA9IGZhbHNlOwogCiAvKiBQb2ludGVyIHRvIHNoYXJlZC1tZW1vcnkgc3RhdGUuICov CiBzdGF0aWMgQXV0b1ByZXdhcm1TaGFyZWRTdGF0ZSAqYXB3X3N0YXRlID0gTlVMTDsKQEAgLTE2 MSw4ICsxNTYsOCBAQCBhdXRvcHJld2FybV9tYWluKERhdHVtIG1haW5fYXJnKQogCVRpbWVzdGFt cFR6IGxhc3RfZHVtcF90aW1lID0gMDsKIAogCS8qIEVzdGFibGlzaCBzaWduYWwgaGFuZGxlcnM7 IG9uY2UgdGhhdCdzIGRvbmUsIHVuYmxvY2sgc2lnbmFscy4gKi8KLQlwcXNpZ25hbChTSUdURVJN LCBhcHdfc2lndGVybV9oYW5kbGVyKTsKLQlwcXNpZ25hbChTSUdIVVAsIGFwd19zaWdodXBfaGFu ZGxlcik7CisJcHFzaWduYWwoU0lHVEVSTSwgU2lnbmFsSGFuZGxlckZvclNodXRkb3duUmVxdWVz dCk7CisJcHFzaWduYWwoU0lHSFVQLCBTaWduYWxIYW5kbGVyRm9yQ29uZmlnUmVsb2FkKTsKIAlw cXNpZ25hbChTSUdVU1IxLCBwcm9jc2lnbmFsX3NpZ3VzcjFfaGFuZGxlcik7CiAJQmFja2dyb3Vu ZFdvcmtlclVuYmxvY2tTaWduYWxzKCk7CiAKQEAgLTIwNiwxMiArMjAxLDEyIEBAIGF1dG9wcmV3 YXJtX21haW4oRGF0dW0gbWFpbl9hcmcpCiAJfQogCiAJLyogUGVyaW9kaWNhbGx5IGR1bXAgYnVm ZmVycyB1bnRpbCB0ZXJtaW5hdGVkLiAqLwotCXdoaWxlICghZ290X3NpZ3Rlcm0pCisJd2hpbGUg KCFTaHV0ZG93blJlcXVlc3RQZW5kaW5nKQogCXsKIAkJLyogSW4gY2FzZSBvZiBhIFNJR0hVUCwg anVzdCByZWxvYWQgdGhlIGNvbmZpZ3VyYXRpb24uICovCi0JCWlmIChnb3Rfc2lnaHVwKQorCQlp ZiAoQ29uZmlnUmVsb2FkUGVuZGluZykKIAkJewotCQkJZ290X3NpZ2h1cCA9IGZhbHNlOworCQkJ Q29uZmlnUmVsb2FkUGVuZGluZyA9IGZhbHNlOwogCQkJUHJvY2Vzc0NvbmZpZ0ZpbGUoUEdDX1NJ R0hVUCk7CiAJCX0KIApAQCAtODk1LDM1ICs4OTAsMyBAQCBhcHdfY29tcGFyZV9ibG9ja2luZm8o Y29uc3Qgdm9pZCAqcCwgY29uc3Qgdm9pZCAqcSkKIAogCXJldHVybiAwOwogfQotCi0vKgotICog U2lnbmFsIGhhbmRsZXIgZm9yIFNJR1RFUk0KLSAqLwotc3RhdGljIHZvaWQKLWFwd19zaWd0ZXJt X2hhbmRsZXIoU0lHTkFMX0FSR1MpCi17Ci0JaW50CQkJc2F2ZV9lcnJubyA9IGVycm5vOwotCi0J Z290X3NpZ3Rlcm0gPSB0cnVlOwotCi0JaWYgKE15UHJvYykKLQkJU2V0TGF0Y2goJk15UHJvYy0+ cHJvY0xhdGNoKTsKLQotCWVycm5vID0gc2F2ZV9lcnJubzsKLX0KLQotLyoKLSAqIFNpZ25hbCBo YW5kbGVyIGZvciBTSUdIVVAKLSAqLwotc3RhdGljIHZvaWQKLWFwd19zaWdodXBfaGFuZGxlcihT SUdOQUxfQVJHUykKLXsKLQlpbnQJCQlzYXZlX2Vycm5vID0gZXJybm87Ci0KLQlnb3Rfc2lnaHVw ID0gdHJ1ZTsKLQotCWlmIChNeVByb2MpCi0JCVNldExhdGNoKCZNeVByb2MtPnByb2NMYXRjaCk7 Ci0KLQllcnJubyA9IHNhdmVfZXJybm87Ci19Ci0tIAoyLjI1LjEKCg== --0000000000009df71c05b10b80f5 Content-Type: application/x-patch; name="v1-use-MyLatch-and-standard-SIGHUP-handler-in-startup-process.patch" Content-Disposition: attachment; filename="v1-use-MyLatch-and-standard-SIGHUP-handler-in-startup-process.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kfyri7m41 RnJvbSA1MGQ3MThmZWM2YWRlOGMxMDFkNDY2ZWU3MWYwYWIzMGVkMDIwMTgyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBCaGFyYXRoIFJ1cGlyZWRkeSA8YmhhcmF0aC5ydXBpcmVkZHlA ZW50ZXJwcmlzZWRiLmNvbT4KRGF0ZTogV2VkLCA3IE9jdCAyMDIwIDA3OjE3OjQ5ICswNTMwClN1 YmplY3Q6IFtQQVRDSCB2MV0gc3RhcnR1cCB1c2UgTXlMYXRjaCBhbmQgc3RhbmRhcmQgU0lHSFVQ IGhhbmRsZXIKClJlbW92ZSBhIHNlcGFyYXRlIHNoYXJlZCBsYXRjaCB3aXRoIE15TGF0Y2ggd2hp Y2ggaXMgYWxzbyBhIHNoYXJlZApsYXRjaCBpbiBzdGFydHVwIHByb2Nlc3MuIFRoaXMgY2hhbmdl IGNhbiBsZXQgc3RhcnR1cCBwcm9jZXNzIHVzZQpzdGFuZGFyZCBTSUdIVVAgaGFuZGxlciBTaWdu YWxIYW5kbGVyRm9yQ29uZmlnUmVsb2FkKCkgaW5zdGVhZCBvZgpTdGFydHVwUHJvY1NpZ0h1cEhh bmRsZXIoKS4KLS0tCiBzcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94bG9nLmMgfCAzMCArKysr KysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KIHNyYy9iYWNrZW5kL3Bvc3RtYXN0ZXIvc3RhcnR1 cC5jICB8IDI0ICsrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAxNiBp bnNlcnRpb25zKCspLCAzOCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9h Y2Nlc3MvdHJhbnNhbS94bG9nLmMgYi9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94bG9nLmMK aW5kZXggNTJhNjdiMTE3MC4uYzIxMWQ2Njk5NCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvYWNj ZXNzL3RyYW5zYW0veGxvZy5jCisrKyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3hsb2cu YwpAQCAtNjgyLDcgKzY4Miw3IEBAIHR5cGVkZWYgc3RydWN0IFhMb2dDdGxEYXRhCiAJICogV0FM IHJlcGxheSwgaWYgaXQgaXMgd2FpdGluZyBmb3IgV0FMIHRvIGFycml2ZSBvciBmYWlsb3ZlciB0 cmlnZ2VyIGZpbGUKIAkgKiB0byBhcHBlYXIuCiAJICovCi0JTGF0Y2gJCXJlY292ZXJ5V2FrZXVw TGF0Y2g7CisJTGF0Y2gJCSpyZWNvdmVyeVdha2V1cExhdGNoOwogCiAJLyoKIAkgKiBEdXJpbmcg cmVjb3ZlcnksIHdlIGtlZXAgYSBjb3B5IG9mIHRoZSBsYXRlc3QgY2hlY2twb2ludCByZWNvcmQg aGVyZS4KQEAgLTUxODUsNyArNTE4NSw2IEBAIFhMT0dTaG1lbUluaXQodm9pZCkKIAlTcGluTG9j a0luaXQoJlhMb2dDdGwtPkluc2VydC5pbnNlcnRwb3NfbGNrKTsKIAlTcGluTG9ja0luaXQoJlhM b2dDdGwtPmluZm9fbGNrKTsKIAlTcGluTG9ja0luaXQoJlhMb2dDdGwtPnVsc25fbGNrKTsKLQlJ bml0U2hhcmVkTGF0Y2goJlhMb2dDdGwtPnJlY292ZXJ5V2FrZXVwTGF0Y2gpOwogfQogCiAvKgpA QCAtNjEyMiw3ICs2MTIxLDcgQEAgcmVjb3ZlcnlBcHBseURlbGF5KFhMb2dSZWFkZXJTdGF0ZSAq cmVjb3JkKQogCiAJd2hpbGUgKHRydWUpCiAJewotCQlSZXNldExhdGNoKCZYTG9nQ3RsLT5yZWNv dmVyeVdha2V1cExhdGNoKTsKKwkJUmVzZXRMYXRjaChNeUxhdGNoKTsKIAogCQkvKiBtaWdodCBj aGFuZ2UgdGhlIHRyaWdnZXIgZmlsZSdzIGxvY2F0aW9uICovCiAJCUhhbmRsZVN0YXJ0dXBQcm9j SW50ZXJydXB0cygpOwpAQCAtNjE0Niw3ICs2MTQ1LDcgQEAgcmVjb3ZlcnlBcHBseURlbGF5KFhM b2dSZWFkZXJTdGF0ZSAqcmVjb3JkKQogCQllbG9nKERFQlVHMiwgInJlY292ZXJ5IGFwcGx5IGRl bGF5ICVsZCBzZWNvbmRzLCAlZCBtaWxsaXNlY29uZHMiLAogCQkJIHNlY3MsIG1pY3Jvc2VjcyAv IDEwMDApOwogCi0JCSh2b2lkKSBXYWl0TGF0Y2goJlhMb2dDdGwtPnJlY292ZXJ5V2FrZXVwTGF0 Y2gsCisJCSh2b2lkKSBXYWl0TGF0Y2goTXlMYXRjaCwKIAkJCQkJCSBXTF9MQVRDSF9TRVQgfCBX TF9USU1FT1VUIHwgV0xfRVhJVF9PTl9QTV9ERUFUSCwKIAkJCQkJCSBzZWNzICogMTAwMEwgKyBt aWNyb3NlY3MgLyAxMDAwLAogCQkJCQkJIFdBSVRfRVZFTlRfUkVDT1ZFUllfQVBQTFlfREVMQVkp OwpAQCAtNjQ3NCwxMSArNjQ3MywxMSBAQCBTdGFydHVwWExPRyh2b2lkKQogCX0KIAogCS8qCi0J ICogVGFrZSBvd25lcnNoaXAgb2YgdGhlIHdha2V1cCBsYXRjaCBpZiB3ZSdyZSBnb2luZyB0byBz bGVlcCBkdXJpbmcKLQkgKiByZWNvdmVyeS4KKwkgKiBBZHZlcnRpc2Ugb3VyIGxhdGNoIHRoYXQg b3RoZXIgcHJvY2Vzc2VzIGNhbiB1c2UgdG8gd2FrZSB1cyB1cAorCSAqIGlmIHdlJ3JlIGdvaW5n IHRvIHNsZWVwIGR1cmluZyByZWNvdmVyeS4KIAkgKi8KIAlpZiAoQXJjaGl2ZVJlY292ZXJ5UmVx dWVzdGVkKQotCQlPd25MYXRjaCgmWExvZ0N0bC0+cmVjb3ZlcnlXYWtldXBMYXRjaCk7CisJCVhM b2dDdGwtPnJlY292ZXJ5V2FrZXVwTGF0Y2ggPSAmTXlQcm9jLT5wcm9jTGF0Y2g7CiAKIAkvKiBT ZXQgdXAgWExPRyByZWFkZXIgZmFjaWxpdHkgKi8KIAlNZW1TZXQoJnByaXZhdGUsIDAsIHNpemVv ZihYTG9nUGFnZVJlYWRQcml2YXRlKSk7CkBAIC03NDg4LDEzICs3NDg3LDYgQEAgU3RhcnR1cFhM T0codm9pZCkKIAlpZiAoSW5SZWNvdmVyeSkKIAkJUmVzZXRVbmxvZ2dlZFJlbGF0aW9ucyhVTkxP R0dFRF9SRUxBVElPTl9JTklUKTsKIAotCS8qCi0JICogV2UgZG9uJ3QgbmVlZCB0aGUgbGF0Y2gg YW55bW9yZS4gSXQncyBub3Qgc3RyaWN0bHkgbmVjZXNzYXJ5IHRvIGRpc293bgotCSAqIGl0LCBi dXQgbGV0J3MgZG8gaXQgZm9yIHRoZSBzYWtlIG9mIHRpZGluZXNzLgotCSAqLwotCWlmIChBcmNo aXZlUmVjb3ZlcnlSZXF1ZXN0ZWQpCi0JCURpc293bkxhdGNoKCZYTG9nQ3RsLT5yZWNvdmVyeVdh a2V1cExhdGNoKTsKLQogCS8qCiAJICogV2UgYXJlIG5vdyBkb25lIHJlYWRpbmcgdGhlIHhsb2cg ZnJvbSBzdHJlYW0uIFR1cm4gb2ZmIHN0cmVhbWluZwogCSAqIHJlY292ZXJ5IHRvIGZvcmNlIGZl dGNoaW5nIHRoZSBmaWxlcyAod2hpY2ggd291bGQgYmUgcmVxdWlyZWQgYXQgZW5kIG9mCkBAIC0x MjI0MiwxMiArMTIyMzQsMTIgQEAgV2FpdEZvcldBTFRvQmVjb21lQXZhaWxhYmxlKFhMb2dSZWNQ dHIgUmVjUHRyLCBib29sIHJhbmRBY2Nlc3MsCiAJCQkJCQl3YWl0X3RpbWUgPSB3YWxfcmV0cmll dmVfcmV0cnlfaW50ZXJ2YWwgLQogCQkJCQkJCShzZWNzICogMTAwMCArIHVzZWNzIC8gMTAwMCk7 CiAKLQkJCQkJCSh2b2lkKSBXYWl0TGF0Y2goJlhMb2dDdGwtPnJlY292ZXJ5V2FrZXVwTGF0Y2gs CisJCQkJCQkodm9pZCkgV2FpdExhdGNoKE15TGF0Y2gsCiAJCQkJCQkJCQkJIFdMX0xBVENIX1NF VCB8IFdMX1RJTUVPVVQgfAogCQkJCQkJCQkJCSBXTF9FWElUX09OX1BNX0RFQVRILAogCQkJCQkJ CQkJCSB3YWl0X3RpbWUsCiAJCQkJCQkJCQkJIFdBSVRfRVZFTlRfUkVDT1ZFUllfUkVUUklFVkVf UkVUUllfSU5URVJWQUwpOwotCQkJCQkJUmVzZXRMYXRjaCgmWExvZ0N0bC0+cmVjb3ZlcnlXYWtl dXBMYXRjaCk7CisJCQkJCQlSZXNldExhdGNoKE15TGF0Y2gpOwogCQkJCQkJbm93ID0gR2V0Q3Vy cmVudFRpbWVzdGFtcCgpOwogCQkJCQl9CiAJCQkJCWxhc3RfZmFpbF90aW1lID0gbm93OwpAQCAt MTI0OTgsMTEgKzEyNDkwLDExIEBAIFdhaXRGb3JXQUxUb0JlY29tZUF2YWlsYWJsZShYTG9nUmVj UHRyIFJlY1B0ciwgYm9vbCByYW5kQWNjZXNzLAogCQkJCQkgKiB0byByZWFjdCB0byBhIHRyaWdn ZXIgZmlsZSBwcm9tcHRseSBhbmQgdG8gY2hlY2sgaWYgdGhlCiAJCQkJCSAqIFdBTCByZWNlaXZl ciBpcyBzdGlsbCBhY3RpdmUuCiAJCQkJCSAqLwotCQkJCQkodm9pZCkgV2FpdExhdGNoKCZYTG9n Q3RsLT5yZWNvdmVyeVdha2V1cExhdGNoLAorCQkJCQkodm9pZCkgV2FpdExhdGNoKE15TGF0Y2gs CiAJCQkJCQkJCQkgV0xfTEFUQ0hfU0VUIHwgV0xfVElNRU9VVCB8CiAJCQkJCQkJCQkgV0xfRVhJ VF9PTl9QTV9ERUFUSCwKIAkJCQkJCQkJCSA1MDAwTCwgV0FJVF9FVkVOVF9SRUNPVkVSWV9XQUxf U1RSRUFNKTsKLQkJCQkJUmVzZXRMYXRjaCgmWExvZ0N0bC0+cmVjb3ZlcnlXYWtldXBMYXRjaCk7 CisJCQkJCVJlc2V0TGF0Y2goTXlMYXRjaCk7CiAJCQkJCWJyZWFrOwogCQkJCX0KIApAQCAtMTI2 NzQsNyArMTI2NjYsNyBAQCBDaGVja1Byb21vdGVTaWduYWwodm9pZCkKIHZvaWQKIFdha2V1cFJl Y292ZXJ5KHZvaWQpCiB7Ci0JU2V0TGF0Y2goJlhMb2dDdGwtPnJlY292ZXJ5V2FrZXVwTGF0Y2gp OworCVNldExhdGNoKFhMb2dDdGwtPnJlY292ZXJ5V2FrZXVwTGF0Y2gpOwogfQogCiAvKgpkaWZm IC0tZ2l0IGEvc3JjL2JhY2tlbmQvcG9zdG1hc3Rlci9zdGFydHVwLmMgYi9zcmMvYmFja2VuZC9w b3N0bWFzdGVyL3N0YXJ0dXAuYwppbmRleCA2NGFmN2I4NzA3Li5lYWI5YzhjNGVkIDEwMDY0NAot LS0gYS9zcmMvYmFja2VuZC9wb3N0bWFzdGVyL3N0YXJ0dXAuYworKysgYi9zcmMvYmFja2VuZC9w b3N0bWFzdGVyL3N0YXJ0dXAuYwpAQCAtMzcsNyArMzcsNiBAQAogLyoKICAqIEZsYWdzIHNldCBi eSBpbnRlcnJ1cHQgaGFuZGxlcnMgZm9yIGxhdGVyIHNlcnZpY2UgaW4gdGhlIHJlZG8gbG9vcC4K ICAqLwotc3RhdGljIHZvbGF0aWxlIHNpZ19hdG9taWNfdCBnb3RfU0lHSFVQID0gZmFsc2U7CiBz dGF0aWMgdm9sYXRpbGUgc2lnX2F0b21pY190IHNodXRkb3duX3JlcXVlc3RlZCA9IGZhbHNlOwog c3RhdGljIHZvbGF0aWxlIHNpZ19hdG9taWNfdCBwcm9tb3RlX3NpZ25hbGVkID0gZmFsc2U7CiAK QEAgLTQ5LDcgKzQ4LDYgQEAgc3RhdGljIHZvbGF0aWxlIHNpZ19hdG9taWNfdCBpbl9yZXN0b3Jl X2NvbW1hbmQgPSBmYWxzZTsKIAogLyogU2lnbmFsIGhhbmRsZXJzICovCiBzdGF0aWMgdm9pZCBT dGFydHVwUHJvY1RyaWdnZXJIYW5kbGVyKFNJR05BTF9BUkdTKTsKLXN0YXRpYyB2b2lkIFN0YXJ0 dXBQcm9jU2lnSHVwSGFuZGxlcihTSUdOQUxfQVJHUyk7CiAKIAogLyogLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KQEAgLTY0LDE5ICs2Miw3IEBAIFN0YXJ0dXBQcm9jVHJpZ2dlckhh bmRsZXIoU0lHTkFMX0FSR1MpCiAJaW50CQkJc2F2ZV9lcnJubyA9IGVycm5vOwogCiAJcHJvbW90 ZV9zaWduYWxlZCA9IHRydWU7Ci0JV2FrZXVwUmVjb3ZlcnkoKTsKLQotCWVycm5vID0gc2F2ZV9l cnJubzsKLX0KLQotLyogU0lHSFVQOiBzZXQgZmxhZyB0byByZS1yZWFkIGNvbmZpZyBmaWxlIGF0 IG5leHQgY29udmVuaWVudCB0aW1lICovCi1zdGF0aWMgdm9pZAotU3RhcnR1cFByb2NTaWdIdXBI YW5kbGVyKFNJR05BTF9BUkdTKQotewotCWludAkJCXNhdmVfZXJybm8gPSBlcnJubzsKLQotCWdv dF9TSUdIVVAgPSB0cnVlOwotCVdha2V1cFJlY292ZXJ5KCk7CisJU2V0TGF0Y2goTXlMYXRjaCk7 CiAKIAllcnJubyA9IHNhdmVfZXJybm87CiB9CkBAIC05MSw3ICs3Nyw3IEBAIFN0YXJ0dXBQcm9j U2h1dGRvd25IYW5kbGVyKFNJR05BTF9BUkdTKQogCQlwcm9jX2V4aXQoMSk7CiAJZWxzZQogCQlz aHV0ZG93bl9yZXF1ZXN0ZWQgPSB0cnVlOwotCVdha2V1cFJlY292ZXJ5KCk7CisJU2V0TGF0Y2go TXlMYXRjaCk7CiAKIAllcnJubyA9IHNhdmVfZXJybm87CiB9CkBAIC0xMzcsOSArMTIzLDkgQEAg SGFuZGxlU3RhcnR1cFByb2NJbnRlcnJ1cHRzKHZvaWQpCiAJLyoKIAkgKiBQcm9jZXNzIGFueSBy ZXF1ZXN0cyBvciBzaWduYWxzIHJlY2VpdmVkIHJlY2VudGx5LgogCSAqLwotCWlmIChnb3RfU0lH SFVQKQorCWlmIChDb25maWdSZWxvYWRQZW5kaW5nKQogCXsKLQkJZ290X1NJR0hVUCA9IGZhbHNl OworCQlDb25maWdSZWxvYWRQZW5kaW5nID0gZmFsc2U7CiAJCVN0YXJ0dXBSZXJlYWRDb25maWco KTsKIAl9CiAKQEAgLTE3Miw3ICsxNTgsNyBAQCBTdGFydHVwUHJvY2Vzc01haW4odm9pZCkKIAkv KgogCSAqIFByb3Blcmx5IGFjY2VwdCBvciBpZ25vcmUgc2lnbmFscyB0aGUgcG9zdG1hc3RlciBt aWdodCBzZW5kIHVzLgogCSAqLwotCXBxc2lnbmFsKFNJR0hVUCwgU3RhcnR1cFByb2NTaWdIdXBI YW5kbGVyKTsgLyogcmVsb2FkIGNvbmZpZyBmaWxlICovCisJcHFzaWduYWwoU0lHSFVQLCBTaWdu YWxIYW5kbGVyRm9yQ29uZmlnUmVsb2FkKTsgLyogcmVsb2FkIGNvbmZpZyBmaWxlICovCiAJcHFz aWduYWwoU0lHSU5ULCBTSUdfSUdOKTsJLyogaWdub3JlIHF1ZXJ5IGNhbmNlbCAqLwogCXBxc2ln bmFsKFNJR1RFUk0sIFN0YXJ0dXBQcm9jU2h1dGRvd25IYW5kbGVyKTsJLyogcmVxdWVzdCBzaHV0 ZG93biAqLwogCS8qIFNJR1FVSVQgaGFuZGxlciB3YXMgYWxyZWFkeSBzZXQgdXAgYnkgSW5pdFBv c3RtYXN0ZXJDaGlsZCAqLwotLSAKMi4yNS4xCgo= --0000000000009df71c05b10b80f5 Content-Type: application/x-patch; name="v1-use-standard-SIGHUP-hanlder-in-syslogger-process.patch" Content-Disposition: attachment; filename="v1-use-standard-SIGHUP-hanlder-in-syslogger-process.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kfyrie762 RnJvbSBhNTIxZWQxYzYyZGY3ODhhN2I2MTNiN2VlNjY5ZDU4ODQ0OTUxNjY4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBCaGFyYXRoIFJ1cGlyZWRkeSA8YmhhcmF0aC5ydXBpcmVkZHlA ZW50ZXJwcmlzZWRiLmNvbT4KRGF0ZTogV2VkLCA3IE9jdCAyMDIwIDA3OjM0OjM4ICswNTMwClN1 YmplY3Q6IFtQQVRDSCB2MV0gc3lzbG9nZ2VyIC0gdXNlIHN0YW5kYXJkIFNJR0hVUCBoYW5kbGVy CgpSZXBsYWNlIHNpZ0h1cEhhbmxkZXIoKSB3aXRoIHN0YW5kYXJkIFNpZ25hbEhhbmRsZXJGb3JD b25maWdSZWxvYWQoKS4KLS0tCiBzcmMvYmFja2VuZC9wb3N0bWFzdGVyL3N5c2xvZ2dlci5jIHwg MjEgKysrKy0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCsp LCAxNyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9wb3N0bWFzdGVyL3N5 c2xvZ2dlci5jIGIvc3JjL2JhY2tlbmQvcG9zdG1hc3Rlci9zeXNsb2dnZXIuYwppbmRleCBmZmNi NTQ5NjhmLi5mYWE4MmVjNDgxIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9wb3N0bWFzdGVyL3N5 c2xvZ2dlci5jCisrKyBiL3NyYy9iYWNrZW5kL3Bvc3RtYXN0ZXIvc3lzbG9nZ2VyLmMKQEAgLTM5 LDYgKzM5LDcgQEAKICNpbmNsdWRlICJwZ3N0YXQuaCIKICNpbmNsdWRlICJwZ3RpbWUuaCIKICNp bmNsdWRlICJwb3N0bWFzdGVyL2ZvcmtfcHJvY2Vzcy5oIgorI2luY2x1ZGUgInBvc3RtYXN0ZXIv aW50ZXJydXB0LmgiCiAjaW5jbHVkZSAicG9zdG1hc3Rlci9wb3N0bWFzdGVyLmgiCiAjaW5jbHVk ZSAicG9zdG1hc3Rlci9zeXNsb2dnZXIuaCIKICNpbmNsdWRlICJzdG9yYWdlL2RzbS5oIgpAQCAt MTIzLDcgKzEyNCw2IEBAIHN0YXRpYyBDUklUSUNBTF9TRUNUSU9OIHN5c2xvZ2dlclNlY3Rpb247 CiAvKgogICogRmxhZ3Mgc2V0IGJ5IGludGVycnVwdCBoYW5kbGVycyBmb3IgbGF0ZXIgc2Vydmlj ZSBpbiB0aGUgbWFpbiBsb29wLgogICovCi1zdGF0aWMgdm9sYXRpbGUgc2lnX2F0b21pY190IGdv dF9TSUdIVVAgPSBmYWxzZTsKIHN0YXRpYyB2b2xhdGlsZSBzaWdfYXRvbWljX3Qgcm90YXRpb25f cmVxdWVzdGVkID0gZmFsc2U7CiAKIApAQCAtMTQ0LDcgKzE0NCw2IEBAIHN0YXRpYyB1bnNpZ25l ZCBpbnQgX19zdGRjYWxsIHBpcGVUaHJlYWQodm9pZCAqYXJnKTsKIHN0YXRpYyB2b2lkIGxvZ2Zp bGVfcm90YXRlKGJvb2wgdGltZV9iYXNlZF9yb3RhdGlvbiwgaW50IHNpemVfcm90YXRpb25fZm9y KTsKIHN0YXRpYyBjaGFyICpsb2dmaWxlX2dldG5hbWUocGdfdGltZV90IHRpbWVzdGFtcCwgY29u c3QgY2hhciAqc3VmZml4KTsKIHN0YXRpYyB2b2lkIHNldF9uZXh0X3JvdGF0aW9uX3RpbWUodm9p ZCk7Ci1zdGF0aWMgdm9pZCBzaWdIdXBIYW5kbGVyKFNJR05BTF9BUkdTKTsKIHN0YXRpYyB2b2lk IHNpZ1VzcjFIYW5kbGVyKFNJR05BTF9BUkdTKTsKIHN0YXRpYyB2b2lkIHVwZGF0ZV9tZXRhaW5m b19kYXRhZmlsZSh2b2lkKTsKIApAQCAtMjQwLDcgKzIzOSw3IEBAIFN5c0xvZ2dlck1haW4oaW50 IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKIAkgKiBicm9rZW4gYmFja2VuZHMuLi4KIAkgKi8KIAotCXBx c2lnbmFsKFNJR0hVUCwgc2lnSHVwSGFuZGxlcik7CS8qIHNldCBmbGFnIHRvIHJlYWQgY29uZmln IGZpbGUgKi8KKwlwcXNpZ25hbChTSUdIVVAsIFNpZ25hbEhhbmRsZXJGb3JDb25maWdSZWxvYWQp OwkvKiBzZXQgZmxhZyB0byByZWFkIGNvbmZpZyBmaWxlICovCiAJcHFzaWduYWwoU0lHSU5ULCBT SUdfSUdOKTsKIAlwcXNpZ25hbChTSUdURVJNLCBTSUdfSUdOKTsKIAlwcXNpZ25hbChTSUdRVUlU LCBTSUdfSUdOKTsKQEAgLTMyNCw5ICszMjMsOSBAQCBTeXNMb2dnZXJNYWluKGludCBhcmdjLCBj aGFyICphcmd2W10pCiAJCS8qCiAJCSAqIFByb2Nlc3MgYW55IHJlcXVlc3RzIG9yIHNpZ25hbHMg cmVjZWl2ZWQgcmVjZW50bHkuCiAJCSAqLwotCQlpZiAoZ290X1NJR0hVUCkKKwkJaWYgKENvbmZp Z1JlbG9hZFBlbmRpbmcpCiAJCXsKLQkJCWdvdF9TSUdIVVAgPSBmYWxzZTsKKwkJCUNvbmZpZ1Jl bG9hZFBlbmRpbmcgPSBmYWxzZTsKIAkJCVByb2Nlc3NDb25maWdGaWxlKFBHQ19TSUdIVVApOwog CiAJCQkvKgpAQCAtMTU1MywxOCArMTU1Miw2IEBAIFJlbW92ZUxvZ3JvdGF0ZVNpZ25hbEZpbGVz KHZvaWQpCiAJdW5saW5rKExPR1JPVEFURV9TSUdOQUxfRklMRSk7CiB9CiAKLS8qIFNJR0hVUDog c2V0IGZsYWcgdG8gcmVsb2FkIGNvbmZpZyBmaWxlICovCi1zdGF0aWMgdm9pZAotc2lnSHVwSGFu ZGxlcihTSUdOQUxfQVJHUykKLXsKLQlpbnQJCQlzYXZlX2Vycm5vID0gZXJybm87Ci0KLQlnb3Rf U0lHSFVQID0gdHJ1ZTsKLQlTZXRMYXRjaChNeUxhdGNoKTsKLQotCWVycm5vID0gc2F2ZV9lcnJu bzsKLX0KLQogLyogU0lHVVNSMTogc2V0IGZsYWcgdG8gcm90YXRlIGxvZ2ZpbGUgKi8KIHN0YXRp YyB2b2lkCiBzaWdVc3IxSGFuZGxlcihTSUdOQUxfQVJHUykKLS0gCjIuMjUuMQoK --0000000000009df71c05b10b80f5 Content-Type: application/x-patch; name="v1-use-standard-SIGTERM-handler-in-walreceiver-process.patch" Content-Disposition: attachment; filename="v1-use-standard-SIGTERM-handler-in-walreceiver-process.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kfyripzk3 RnJvbSA0NWMzNmFhYjRhMmIxYzY2OTY3MzIwNjg4ZmZjOWVlOTE2MDMyYWJjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBCaGFyYXRoIFJ1cGlyZWRkeSA8YmhhcmF0aC5ydXBpcmVkZHlA ZW50ZXJwcmlzZWRiLmNvbT4KRGF0ZTogV2VkLCA3IE9jdCAyMDIwIDA3OjA5OjM1ICswNTMwClN1 YmplY3Q6IFtQQVRDSCB2MV0gd2FscmVjZWl2ZXIgdXNlIHN0YW5kYXJkIFNJR1RFUk0gaGFuZGxl cgoKUmVwbGFjZSBXYWxSY3ZTaHV0ZG93bkhhbmRsZXIoKSB3aXRoIHN0YW5kYXJkIFNpZ25hbEhh bmRsZXJGb3JTaHV0ZG93blJlcXVlc3QoKS4KLS0tCiBzcmMvYmFja2VuZC9yZXBsaWNhdGlvbi93 YWxyZWNlaXZlci5jIHwgMjIgKystLS0tLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQs IDIgaW5zZXJ0aW9ucygrKSwgMjAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tl bmQvcmVwbGljYXRpb24vd2FscmVjZWl2ZXIuYyBiL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL3dh bHJlY2VpdmVyLmMKaW5kZXggYmIxZDQ0Y2NiNy4uNjVmOTMzODk4ZCAxMDA2NDQKLS0tIGEvc3Jj L2JhY2tlbmQvcmVwbGljYXRpb24vd2FscmVjZWl2ZXIuYworKysgYi9zcmMvYmFja2VuZC9yZXBs aWNhdGlvbi93YWxyZWNlaXZlci5jCkBAIC0xMDksNyArMTA5LDYgQEAgc3RhdGljIFhMb2dTZWdO byByZWN2U2VnTm8gPSAwOwogICogbWFpbiBsb29wLgogICovCiBzdGF0aWMgdm9sYXRpbGUgc2ln X2F0b21pY190IGdvdF9TSUdIVVAgPSBmYWxzZTsKLXN0YXRpYyB2b2xhdGlsZSBzaWdfYXRvbWlj X3QgZ290X1NJR1RFUk0gPSBmYWxzZTsKIAogLyoKICAqIExvZ3N0cmVhbVJlc3VsdCBpbmRpY2F0 ZXMgdGhlIGJ5dGUgcG9zaXRpb25zIHRoYXQgd2UgaGF2ZSBhbHJlYWR5CkBAIC0xMzcsOCArMTM2 LDYgQEAgc3RhdGljIHZvaWQgUHJvY2Vzc1dhbFNuZHJNZXNzYWdlKFhMb2dSZWNQdHIgd2FsRW5k LCBUaW1lc3RhbXBUeiBzZW5kVGltZSk7CiAKIC8qIFNpZ25hbCBoYW5kbGVycyAqLwogc3RhdGlj IHZvaWQgV2FsUmN2U2lnSHVwSGFuZGxlcihTSUdOQUxfQVJHUyk7Ci1zdGF0aWMgdm9pZCBXYWxS Y3ZTaHV0ZG93bkhhbmRsZXIoU0lHTkFMX0FSR1MpOwotCiAKIC8qCiAgKiBQcm9jZXNzIGFueSBp bnRlcnJ1cHRzIHRoZSB3YWxyZWNlaXZlciBwcm9jZXNzIG1heSBoYXZlIHJlY2VpdmVkLgpAQCAt MTY0LDcgKzE2MSw3IEBAIFByb2Nlc3NXYWxSY3ZJbnRlcnJ1cHRzKHZvaWQpCiAJICovCiAJQ0hF Q0tfRk9SX0lOVEVSUlVQVFMoKTsKIAotCWlmIChnb3RfU0lHVEVSTSkKKwlpZiAoU2h1dGRvd25S ZXF1ZXN0UGVuZGluZykKIAl7CiAJCWVyZXBvcnQoRkFUQUwsCiAJCQkJKGVycmNvZGUoRVJSQ09E RV9BRE1JTl9TSFVURE9XTiksCkBAIC0yNjksNyArMjY2LDcgQEAgV2FsUmVjZWl2ZXJNYWluKHZv aWQpCiAJLyogUHJvcGVybHkgYWNjZXB0IG9yIGlnbm9yZSBzaWduYWxzIHRoZSBwb3N0bWFzdGVy IG1pZ2h0IHNlbmQgdXMgKi8KIAlwcXNpZ25hbChTSUdIVVAsIFdhbFJjdlNpZ0h1cEhhbmRsZXIp OwkvKiBzZXQgZmxhZyB0byByZWFkIGNvbmZpZyBmaWxlICovCiAJcHFzaWduYWwoU0lHSU5ULCBT SUdfSUdOKTsKLQlwcXNpZ25hbChTSUdURVJNLCBXYWxSY3ZTaHV0ZG93bkhhbmRsZXIpOwkvKiBy ZXF1ZXN0IHNodXRkb3duICovCisJcHFzaWduYWwoU0lHVEVSTSwgU2lnbmFsSGFuZGxlckZvclNo dXRkb3duUmVxdWVzdCk7CS8qIHJlcXVlc3Qgc2h1dGRvd24gKi8KIAkvKiBTSUdRVUlUIGhhbmRs ZXIgd2FzIGFscmVhZHkgc2V0IHVwIGJ5IEluaXRQb3N0bWFzdGVyQ2hpbGQgKi8KIAlwcXNpZ25h bChTSUdBTFJNLCBTSUdfSUdOKTsKIAlwcXNpZ25hbChTSUdQSVBFLCBTSUdfSUdOKTsKQEAgLTgx MywyMSArODEwLDYgQEAgV2FsUmN2U2lnSHVwSGFuZGxlcihTSUdOQUxfQVJHUykKIAlnb3RfU0lH SFVQID0gdHJ1ZTsKIH0KIAotCi0vKiBTSUdURVJNOiBzZXQgZmxhZyBmb3IgUHJvY2Vzc1dhbFJj dkludGVycnVwdHMgKi8KLXN0YXRpYyB2b2lkCi1XYWxSY3ZTaHV0ZG93bkhhbmRsZXIoU0lHTkFM X0FSR1MpCi17Ci0JaW50CQkJc2F2ZV9lcnJubyA9IGVycm5vOwotCi0JZ290X1NJR1RFUk0gPSB0 cnVlOwotCi0JaWYgKFdhbFJjdi0+bGF0Y2gpCi0JCVNldExhdGNoKFdhbFJjdi0+bGF0Y2gpOwot Ci0JZXJybm8gPSBzYXZlX2Vycm5vOwotfQotCiAvKgogICogQWNjZXB0IHRoZSBtZXNzYWdlIGZy b20gWExPRyBzdHJlYW0sIGFuZCBwcm9jZXNzIGl0LgogICovCi0tIAoyLjI1LjEKCg== --0000000000009df71c05b10b80f5--