Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wAMOj-002J5c-2H for pgsql-hackers@arkaria.postgresql.org; Wed, 08 Apr 2026 06:28:21 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wAMOi-005JzO-0l for pgsql-hackers@arkaria.postgresql.org; Wed, 08 Apr 2026 06:28:20 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wAMOh-005Jyr-2s for pgsql-hackers@lists.postgresql.org; Wed, 08 Apr 2026 06:28:20 +0000 Received: from mail-qt1-x82c.google.com ([2607:f8b0:4864:20::82c]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wAMOg-00000001Ffq-1H3b for pgsql-hackers@lists.postgresql.org; Wed, 08 Apr 2026 06:28:20 +0000 Received: by mail-qt1-x82c.google.com with SMTP id d75a77b69052e-50d876329bbso37645701cf.2 for ; Tue, 07 Apr 2026 23:28:18 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1775629697; cv=none; d=google.com; s=arc-20240605; b=OE7OFJLDstbEXminC+fYRorerqhroHquwVAV55vf0GXOd5cXEzVSTetRbFnZgRZyvx X2Q+oY1DilZMq4XUzkusyP2D1+vU4cFMd9+Adi35aIknAM65NjIRI6gvP2R6pMftUuEV Hn1EfMiKCYnO2jHjaROp/jWGTVJvXjKOTvOGlNW9B71gbCgPyoHd10/B5KKJZHf5W9EX 2HDFwRha3hM42RlpQ/umWWeaMo6jp6iRB3AeThaJFFNBNDjAVzHQm18aSPYCbnyO36aD XqP81oCeVzvWA+IhB/iBG4jVnPQk19yvQJmuSPz8b9Y2Vp2x4dIgNdMSHBOnt22T0oPA plPQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=/+1bfrucGlMjAx9qfAjhQCNu8+OWZCICL7rSBqOJ1MI=; fh=p9cT6Ij4QiRTJPTQmPpsjWJrkzm9jkrsABpcdl6Mcic=; b=e6tVeb7YfAsRnq1FGRjXUCeoi9N6e1VD8IANSjVXn5zh8GJxfJ1N6sudOpqSYfrPFC IElOe+r6g+MwfiWJV3tiYZhI6JZZDlrAscSi5n6fPmSIBVoaEupPwcCXWMWq/wQDCWro 1cihm5uIKPt/eOfAb5Ng3SMupdkPa4ts2YpFePweL9ST+opfwwB2LUJscGOaw65Ieebf H3siEoz2zNsZiRW5HXwty7QBfd/TYm9/GoQOcXCcjEHYofI6rDX7gtLWe0Wz62mPk1EX FoBgrD2FLCOVo5REHKBfEF95LlpSynxQR9Q8fywKXVHz9ma41eZF/iLUqSVM97vw/mDL oHwg==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1775629697; x=1776234497; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=/+1bfrucGlMjAx9qfAjhQCNu8+OWZCICL7rSBqOJ1MI=; b=Xx+Hu5cbv6Oe8/ETTR0N0M0/2FDPBlwDUlyNxIKsQhNthwiqGq/sMkZpHa3/AonuOP UCeWyFcrWhDlotpO1NO68YQMH+4yZZeIlbZOI63wLkDtOx14EffRlAADPRFV/6bk1Zar /ZFuSHtrYbL094x1LvvjMeKkgia50dje4rrp69Dg/AkMZGfnLlcTd0AcTG0zaN0CLHgY wr52CJ4wZzDUFYmm2ggQLv/XEEVj4wyxCoYJDrXwqBQgssYjWSQXi2rCthfda7tF4WWP xqWvQ4/3lBl20iPFCkE1LYF/0jXFGljtm2CN3+ltfHJnSK78wOU5Z6H9cC2nCigHuwTT dhzQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775629697; x=1776234497; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=/+1bfrucGlMjAx9qfAjhQCNu8+OWZCICL7rSBqOJ1MI=; b=Z9K3VmSpLheTyRw7hO3fDEItiwTMTkuVk0XPJYgXogI3yxHkjC4CLUk8RlpJv4pznu WqWWa69yk4VkfRoL8WU7uG8lRo1Crlx8u7Gwml26ib35ph5X60kyJhyEon7/2LIUD1hZ pUwN/HjYTHTx4dS8UZRH1APlw/iRa+xTO0DdRFEcB1Vqv9gXjOvmU88kRely7uZEWPaq HZMOlyWelGM1dEYcIzGEdXSS1bykCy6NeQPK/smkGeFLI5YUrUDntJPBwH5PIs3RBq5X t8xTmpOOsofSzoo0bVachDdTt6CFoyG1E5XF0UNQovvzo2h5vOso3CSTuKyPopfeF0Nh rZhw== X-Forwarded-Encrypted: i=1; AJvYcCVd+tkjFlBc7Y7KJ/5+qIRRdi7h1bV1OZ2CSsLvgPvq+xc2zbfNwzWa2//0pSDKNogGvHVJkmJ/xybLnmZC@lists.postgresql.org X-Gm-Message-State: AOJu0YxTdTJxivuvkqAnM/MjYM9PtU/3rrLDSsf9ecnq8q1vxq726xqJ D0bntNEtzlCu7DBZCOAdT3yA5NsPeUJjNa+7yvwMyrX1btLgWWz0LXFPBnJFhI073ucnhVA5KdL AgkmggKr1taWtrzdwiOtbuKGxHlhJ3ng= X-Gm-Gg: AeBDieu2qrBE9w17RLANoffiWm+/NjXUmMSDC6WiUJq4Jd8XVxByqNp9C5Kl5waisG+ xYVwvfw34ypQbIQVZ5mdznNuD42aC/lGehkFYQGVibZE7JR8APUH6iQnxBiyUpc8P1NHyOlKO4f 4TgxQk9ZG8ItX3uEckTWQS0AqSt1sW1yjJI/7K4ptD12ZSQZmdj/4T9kFhGzCFYAC6YFe8UXWOR DJtMgGtOPdOuPYxucH6Z0OK0EDpy2YQP8AL2rO0kEi6zuqvilrBy1F7sGsniJb3mJYsUsZYGbUm IbDEVtwKbaaJosq40ZkmOGrLgUPBD7mIH2sQ0BHXrQ== X-Received: by 2002:a05:622a:4084:b0:50b:3831:417f with SMTP id d75a77b69052e-50d62ab1992mr288394741cf.45.1775629696745; Tue, 07 Apr 2026 23:28:16 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Peter Smith Date: Wed, 8 Apr 2026 16:27:49 +1000 X-Gm-Features: AQROBzBOVpjbxIGzsNIIsFztcpPbWL11xpcVZt5D0erG8Xa3V9aM1EjmtNbaBhA Message-ID: Subject: Re: Logical Replication - revisit `is_table_publication` function implementation To: shveta malik Cc: vignesh C , PostgreSQL Hackers Content-Type: multipart/mixed; boundary="00000000000053dc49064eed013f" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --00000000000053dc49064eed013f Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Apr 8, 2026 at 4:04=E2=80=AFPM Peter Smith = wrote: > > On Wed, Apr 8, 2026 at 3:25=E2=80=AFPM shveta malik wrote: > > > > On Wed, Apr 8, 2026 at 10:24=E2=80=AFAM Peter Smith wrote: > > > > > > On Wed, Apr 8, 2026 at 1:45=E2=80=AFPM vignesh C wrote: > > > > ... > > > > And also why just check for puballtables why not to check for pubal= lsequences > > > > > > I think function is_schema_publication() is unrelated to 'puballseque= nces'. > > > > > > e.g. all the following will still need to check > > > pg_publication_namespace, regardless of the 'puballsequences' value. > > > > > > ex1. CREATE PUBLICATION ... FOR ALL SEQUENCES; > > > ex2. CREATE PUBLICATION ... FOR ALL SEQUENCES, FOR TABLES IN SCHEMA s= 1; > > > ex3. CREATE PUBLICATION ... FOR TABLES IN SCHEMA s1; > > > > > > > IIUC, we don't support mix of ALL SEQUENCES and TABLES IN SCHEMA s1. > > So I could not understand your point, why FOR ALL SEQ still need to > > check pg_publication_namespace? > > > > Oh! You are right. > > (Sorry, Vignesh, I did not recognise that combination as unsupported). > > I'll post a patch update to handle it. > PSA patch v2. Same as before, but now also doing a quick return false from both functions if `puballsequences` is true. =3D=3D=3D=3D=3D=3D Kind Regards, Peter Smith. Fujitsu Australia --00000000000053dc49064eed013f Content-Type: application/octet-stream; name="v2-0001-rewrite-is_table_publication.patch" Content-Disposition: attachment; filename="v2-0001-rewrite-is_table_publication.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mnpo0vh30 RnJvbSBmMDllYmFlMTkwNzE2ZTQ0MGE2Y2U3ZGQxMzUwNTZhNjM0M2NkOWQwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQZXRlciBTbWl0aCA8cGV0ZXIuYi5zbWl0aEBmdWppdHN1LmNv bT4KRGF0ZTogV2VkLCA4IEFwciAyMDI2IDE2OjIyOjM3ICsxMDAwClN1YmplY3Q6IFtQQVRDSCB2 Ml0gcmV3cml0ZSBpc190YWJsZV9wdWJsaWNhdGlvbgoKLS0tCiBzcmMvYmFja2VuZC9jYXRhbG9n L3BnX3B1YmxpY2F0aW9uLmMgICB8IDQ0ICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0tCiBzcmMv YmFja2VuZC9jb21tYW5kcy9wdWJsaWNhdGlvbmNtZHMuYyB8ICA3ICsrLS0KIHNyYy9pbmNsdWRl L2NhdGFsb2cvcGdfcHVibGljYXRpb24uaCAgIHwgIDQgKy0tCiAzIGZpbGVzIGNoYW5nZWQsIDI4 IGluc2VydGlvbnMoKyksIDI3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5k L2NhdGFsb2cvcGdfcHVibGljYXRpb24uYyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvcGdfcHVibGlj YXRpb24uYwppbmRleCBhNDNkMzg1YzYwNS4uZTIwMDNjZDkyMDMgMTAwNjQ0Ci0tLSBhL3NyYy9i YWNrZW5kL2NhdGFsb2cvcGdfcHVibGljYXRpb24uYworKysgYi9zcmMvYmFja2VuZC9jYXRhbG9n L3BnX3B1YmxpY2F0aW9uLmMKQEAgLTI3NSwxOSArMjc1LDI2IEBAIGZpbHRlcl9wYXJ0aXRpb25z KExpc3QgKnRhYmxlX2luZm9zKQogICogc2NoZW1hIGlzIGFzc29jaWF0ZWQgd2l0aCB0aGUgcHVi bGljYXRpb24uCiAgKi8KIGJvb2wKLWlzX3NjaGVtYV9wdWJsaWNhdGlvbihPaWQgcHViaWQpCitp c19zY2hlbWFfcHVibGljYXRpb24oRm9ybV9wZ19wdWJsaWNhdGlvbiBwdWJmb3JtKQogewogCVJl bGF0aW9uCXB1YnNjaHNyZWw7CiAJU2NhbktleURhdGEgc2NhbmtleTsKIAlTeXNTY2FuRGVzYyBz Y2FuOwogCUhlYXBUdXBsZQl0dXA7Ci0JYm9vbAkJcmVzdWx0ID0gZmFsc2U7CisJYm9vbAkJcmVz dWx0OworCisJLyoKKwkgKiAgRk9SIFRBQkxFUyBJTiBTQ0hFTUEgY2Fubm90IGNvZXhpc3Qgd2l0 aCBGT1IgQUxMIFRBQkxFUy4KKwkgKiAgRk9SIFRBQkxFUyBJTiBTQ0hFTUEgY2Fubm90IGNvZXhp c3Qgd2l0aCBGT1IgQUxMIFNFUVVFTkNFUy4KKwkgKi8KKwlpZiAocHViZm9ybS0+cHViYWxsdGFi bGVzIHx8IHB1YmZvcm0tPnB1YmFsbHNlcXVlbmNlcykKKwkJcmV0dXJuIGZhbHNlOwogCiAJcHVi c2Noc3JlbCA9IHRhYmxlX29wZW4oUHVibGljYXRpb25OYW1lc3BhY2VSZWxhdGlvbklkLCBBY2Nl c3NTaGFyZUxvY2spOwogCVNjYW5LZXlJbml0KCZzY2Fua2V5LAogCQkJCUFudW1fcGdfcHVibGlj YXRpb25fbmFtZXNwYWNlX3BucHViaWQsCiAJCQkJQlRFcXVhbFN0cmF0ZWd5TnVtYmVyLCBGX09J REVRLAotCQkJCU9iamVjdElkR2V0RGF0dW0ocHViaWQpKTsKKwkJCQlPYmplY3RJZEdldERhdHVt KHB1YmZvcm0tPm9pZCkpOwogCiAJc2NhbiA9IHN5c3RhYmxlX2JlZ2luc2NhbihwdWJzY2hzcmVs LAogCQkJCQkJCSAgUHVibGljYXRpb25OYW1lc3BhY2VQbm5zcGlkUG5wdWJpZEluZGV4SWQsCkBA IC0zMDIsNDEgKzMwOSwzNiBAQCBpc19zY2hlbWFfcHVibGljYXRpb24oT2lkIHB1YmlkKQogfQog CiAvKgotICogUmV0dXJucyB0cnVlIGlmIHRoZSBwdWJsaWNhdGlvbiBoYXMgZXhwbGljaXRseSBp bmNsdWRlZCByZWxhdGlvbiAoaS5lLiwKLSAqIG5vdCBtYXJrZWQgYXMgRVhDRVBUKS4KKyAqIFJl dHVybnMgdHJ1ZSBpZiB0aGUgcHVibGljYXRpb24gaGFzIGV4cGxpY2l0bHkgaW5jbHVkZWQgcmVs YXRpb25zIChlLmcuLAorICogRk9SIFRBQkxFKS4KICAqLwogYm9vbAotaXNfdGFibGVfcHVibGlj YXRpb24oT2lkIHB1YmlkKQoraXNfdGFibGVfcHVibGljYXRpb24oRm9ybV9wZ19wdWJsaWNhdGlv biBwdWJmb3JtKQogewogCVJlbGF0aW9uCXB1YnJlbHNyZWw7CiAJU2NhbktleURhdGEgc2Nhbmtl eTsKIAlTeXNTY2FuRGVzYyBzY2FuOwogCUhlYXBUdXBsZQl0dXA7Ci0JYm9vbAkJcmVzdWx0ID0g ZmFsc2U7CisJYm9vbAkJcmVzdWx0OworCisJLyoKKwkgKiAgRk9SIFRBQkxFIGNhbm5vdCBjb2V4 aXN0IHdpdGggRk9SIEFMTCBUQUJMRVMuCisJICogIEZPUiBUQUJMRSBjYW5ub3QgY29leGlzdCB3 aXRoIEZPUiBBTEwgU0VRVUVOQ0VTLgorCSAqLworCWlmIChwdWJmb3JtLT5wdWJhbGx0YWJsZXMg fHwgcHViZm9ybS0+cHViYWxsc2VxdWVuY2VzKQorCQlyZXR1cm4gZmFsc2U7CiAKIAlwdWJyZWxz cmVsID0gdGFibGVfb3BlbihQdWJsaWNhdGlvblJlbFJlbGF0aW9uSWQsIEFjY2Vzc1NoYXJlTG9j ayk7CiAJU2NhbktleUluaXQoJnNjYW5rZXksCiAJCQkJQW51bV9wZ19wdWJsaWNhdGlvbl9yZWxf cHJwdWJpZCwKIAkJCQlCVEVxdWFsU3RyYXRlZ3lOdW1iZXIsIEZfT0lERVEsCi0JCQkJT2JqZWN0 SWRHZXREYXR1bShwdWJpZCkpOworCQkJCU9iamVjdElkR2V0RGF0dW0ocHViZm9ybS0+b2lkKSk7 CiAKIAlzY2FuID0gc3lzdGFibGVfYmVnaW5zY2FuKHB1YnJlbHNyZWwsCiAJCQkJCQkJICBQdWJs aWNhdGlvblJlbFBycHViaWRJbmRleElkLAogCQkJCQkJCSAgdHJ1ZSwgTlVMTCwgMSwgJnNjYW5r ZXkpOwogCXR1cCA9IHN5c3RhYmxlX2dldG5leHQoc2Nhbik7Ci0JaWYgKEhlYXBUdXBsZUlzVmFs aWQodHVwKSkKLQl7Ci0JCUZvcm1fcGdfcHVibGljYXRpb25fcmVsIHB1YnJlbDsKLQotCQlwdWJy ZWwgPSAoRm9ybV9wZ19wdWJsaWNhdGlvbl9yZWwpIEdFVFNUUlVDVCh0dXApOwotCi0JCS8qCi0J CSAqIEZvciBhbnkgcHVibGljYXRpb24sIHBnX3B1YmxpY2F0aW9uX3JlbCBjb250YWlucyBlaXRo ZXIgb25seSBFWENFUFQKLQkJICogZW50cmllcyBvciBvbmx5IGV4cGxpY2l0bHkgaW5jbHVkZWQg dGFibGVzLiBUaGVyZWZvcmUsIGV4YW1pbmluZwotCQkgKiB0aGUgZmlyc3QgdHVwbGUgaXMgc3Vm ZmljaWVudCB0byBkZXRlcm1pbmUgdGFibGUgaW5jbHVzaW9uLgotCQkgKi8KLQkJcmVzdWx0ID0g IXB1YnJlbC0+cHJleGNlcHQ7Ci0JfQorCXJlc3VsdCA9IEhlYXBUdXBsZUlzVmFsaWQodHVwKTsK IAogCXN5c3RhYmxlX2VuZHNjYW4oc2Nhbik7CiAJdGFibGVfY2xvc2UocHVicmVsc3JlbCwgQWNj ZXNzU2hhcmVMb2NrKTsKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3B1YmxpY2F0 aW9uY21kcy5jIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvcHVibGljYXRpb25jbWRzLmMKaW5kZXgg NDQwYWRiMzU2YWQuLjM2ODVjNzExYzQ5IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jb21tYW5k cy9wdWJsaWNhdGlvbmNtZHMuYworKysgYi9zcmMvYmFja2VuZC9jb21tYW5kcy9wdWJsaWNhdGlv bmNtZHMuYwpAQCAtMTI2MSw3ICsxMjYxLDcgQEAgQWx0ZXJQdWJsaWNhdGlvblRhYmxlcyhBbHRl clB1YmxpY2F0aW9uU3RtdCAqc3RtdCwgSGVhcFR1cGxlIHR1cCwKIAl7CiAJCVRyYW5zZm9ybVB1 YldoZXJlQ2xhdXNlcyhyZWxzLCBxdWVyeVN0cmluZywgcHViZm9ybS0+cHVidmlhcm9vdCk7CiAK LQkJcHVibGlzaF9zY2hlbWEgfD0gaXNfc2NoZW1hX3B1YmxpY2F0aW9uKHB1YmlkKTsKKwkJcHVi bGlzaF9zY2hlbWEgfD0gaXNfc2NoZW1hX3B1YmxpY2F0aW9uKHB1YmZvcm0pOwogCiAJCUNoZWNr UHViUmVsYXRpb25Db2x1bW5MaXN0KHN0bXQtPnB1Ym5hbWUsIHJlbHMsIHB1Ymxpc2hfc2NoZW1h LAogCQkJCQkJCQkgICBwdWJmb3JtLT5wdWJ2aWFyb290KTsKQEAgLTE1ODUsOCArMTU4NSw3IEBA IENoZWNrQWx0ZXJQdWJsaWNhdGlvbihBbHRlclB1YmxpY2F0aW9uU3RtdCAqc3RtdCwgSGVhcFR1 cGxlIHR1cCwKIAkJICogSWYgdGhlIHB1YmxpY2F0aW9uIGFscmVhZHkgY29udGFpbnMgc3BlY2lm aWMgdGFibGVzIG9yIHNjaGVtYXMsIHdlCiAJCSAqIHByZXZlbnQgc3dpdGNoaW5nIHRvIGEgQUxM IHN0YXRlLgogCQkgKi8KLQkJaWYgKGlzX3RhYmxlX3B1YmxpY2F0aW9uKHB1YmZvcm0tPm9pZCkg fHwKLQkJCWlzX3NjaGVtYV9wdWJsaWNhdGlvbihwdWJmb3JtLT5vaWQpKQorCQlpZiAoaXNfdGFi bGVfcHVibGljYXRpb24ocHViZm9ybSkgfHwgaXNfc2NoZW1hX3B1YmxpY2F0aW9uKHB1YmZvcm0p KQogCQl7CiAJCQllcmVwb3J0KEVSUk9SLAogCQkJCQllcnJjb2RlKEVSUkNPREVfT0JKRUNUX05P VF9JTl9QUkVSRVFVSVNJVEVfU1RBVEUpLApAQCAtMjIwMiw3ICsyMjAxLDcgQEAgQWx0ZXJQdWJs aWNhdGlvbk93bmVyX2ludGVybmFsKFJlbGF0aW9uIHJlbCwgSGVhcFR1cGxlIHR1cCwgT2lkIG5l d093bmVySWQpCiAJCWlmICghc3VwZXJ1c2VyX2FyZyhuZXdPd25lcklkKSkKIAkJewogCQkJaWYg KGZvcm0tPnB1YmFsbHRhYmxlcyB8fCBmb3JtLT5wdWJhbGxzZXF1ZW5jZXMgfHwKLQkJCQlpc19z Y2hlbWFfcHVibGljYXRpb24oZm9ybS0+b2lkKSkKKwkJCQlpc19zY2hlbWFfcHVibGljYXRpb24o Zm9ybSkpCiAJCQkJZXJlcG9ydChFUlJPUiwKIAkJCQkJCWVycmNvZGUoRVJSQ09ERV9JTlNVRkZJ Q0lFTlRfUFJJVklMRUdFKSwKIAkJCQkJCWVycm1zZygicGVybWlzc2lvbiBkZW5pZWQgdG8gY2hh bmdlIG93bmVyIG9mIHB1YmxpY2F0aW9uIFwiJXNcIiIsCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVk ZS9jYXRhbG9nL3BnX3B1YmxpY2F0aW9uLmggYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3B1Ymxp Y2F0aW9uLmgKaW5kZXggODliNGJiMTRmNjIuLjQ0ODM3MzM2M2ZjIDEwMDY0NAotLS0gYS9zcmMv aW5jbHVkZS9jYXRhbG9nL3BnX3B1YmxpY2F0aW9uLmgKKysrIGIvc3JjL2luY2x1ZGUvY2F0YWxv Zy9wZ19wdWJsaWNhdGlvbi5oCkBAIC0xOTQsOCArMTk0LDggQEAgZXh0ZXJuIE9pZAlHZXRUb3BN b3N0QW5jZXN0b3JJblB1YmxpY2F0aW9uKE9pZCBwdWJvaWQsIExpc3QgKmFuY2VzdG9ycywKIAkJ CQkJCQkJCQkJaW50ICphbmNlc3Rvcl9sZXZlbCk7CiAKIGV4dGVybiBib29sIGlzX3B1Ymxpc2hh YmxlX3JlbGF0aW9uKFJlbGF0aW9uIHJlbCk7Ci1leHRlcm4gYm9vbCBpc19zY2hlbWFfcHVibGlj YXRpb24oT2lkIHB1YmlkKTsKLWV4dGVybiBib29sIGlzX3RhYmxlX3B1YmxpY2F0aW9uKE9pZCBw dWJpZCk7CitleHRlcm4gYm9vbCBpc19zY2hlbWFfcHVibGljYXRpb24oRm9ybV9wZ19wdWJsaWNh dGlvbiBwdWJmb3JtKTsKK2V4dGVybiBib29sIGlzX3RhYmxlX3B1YmxpY2F0aW9uKEZvcm1fcGdf cHVibGljYXRpb24gcHViZm9ybSk7CiBleHRlcm4gYm9vbCBjaGVja19hbmRfZmV0Y2hfY29sdW1u X2xpc3QoUHVibGljYXRpb24gKnB1YiwgT2lkIHJlbGlkLAogCQkJCQkJCQkJCU1lbW9yeUNvbnRl eHQgbWN4dCwgQml0bWFwc2V0ICoqY29scyk7CiBleHRlcm4gT2JqZWN0QWRkcmVzcyBwdWJsaWNh dGlvbl9hZGRfcmVsYXRpb24oT2lkIHB1YmlkLCBQdWJsaWNhdGlvblJlbEluZm8gKnByaSwKLS0g CjIuNDcuMwoK --00000000000053dc49064eed013f--