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.94.2) (envelope-from ) id 1tesXX-00GAOb-JM for pgsql-hackers@arkaria.postgresql.org; Mon, 03 Feb 2025 09:14:48 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1tesXW-00BlQs-IN for pgsql-hackers@arkaria.postgresql.org; Mon, 03 Feb 2025 09:14:46 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tesXW-00BlQk-2N for pgsql-hackers@lists.postgresql.org; Mon, 03 Feb 2025 09:14:46 +0000 Received: from mail-vk1-xa33.google.com ([2607:f8b0:4864:20::a33]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1tesXT-002vFy-2e for pgsql-hackers@lists.postgresql.org; Mon, 03 Feb 2025 09:14:45 +0000 Received: by mail-vk1-xa33.google.com with SMTP id 71dfb90a1353d-5174f9c0d2aso1385384e0c.1 for ; Mon, 03 Feb 2025 01:14:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1738574083; x=1739178883; 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=g/jf8HXKKljcVMAS8BX5i9ZFzEN4ebiOmvWgVPT6ZKk=; b=X2uq3vlht2qsN1vTK42s3q+iHxX1VW4YlvwRUxd9Z2/1DVyMcZ64Mp2mqs6yavyNKC ld0AQA3muhThnXTHCGAYZZHVKxAnlFFy4iHQ3Qt4UEtoxirloYhNq7IuQWYolWlDYOws feNWExS2bKSgWD2Uhyhsl37ykr9jY/1hTTVPqZvtuRSE5lJ4kbWWl+iDaFtBknGcX4m/ xEOpK7GfwF3BRrw5TDg0vqsC8dqch1HwTl4dwKOGsDJqf2LvOSTc6h+WMohzgcxjT916 mr5HACUWKpX96ow67uwmzKdOrwMK3LP5NATReVBOoS4FgK4/k39hApHxVzrnJctvGXi9 JVyQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738574083; x=1739178883; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=g/jf8HXKKljcVMAS8BX5i9ZFzEN4ebiOmvWgVPT6ZKk=; b=WvFj9thT+n8DIgig8JgpTKNTDIGli9SeB9Ivxam+uBc8roB+JCqMf4EfW3G6iePi71 2/eBPSmAT6UsLAdaTUdbQ6vAsI8noTFChcvumu0jus0upz+YtfBmC3F5D8PXOudWS6DM ilpEkv3M1uCaHubVBk14dWN7NTYbEecjzVl0pPlVzpqRIh3ugKpnKC4u8Cwmk8Mr0hyJ Ht6Y3Hpn5b5cp/hms9KHPtlACftt3H4er8hcjMQMvJ9WUCP39Bbde4dbYkSpwJ0epxv4 +ZrB08jQjoc0Mk6o8XTLm1SSS5MA63AEuO3DbIJFeLPht3+BRnHhwROR9OKadbM+n/wO CmLw== X-Forwarded-Encrypted: i=1; AJvYcCUlco4jBgQEkBvSikpsLMpaZ17vxk42qQG65saEQFlKwyZto4/dx+wrA+zERD1K11MceRn+Dg6xzYtSbiyC@lists.postgresql.org X-Gm-Message-State: AOJu0Yz+C5eyhIHx590nu/TNhDOs4bA4jvAojb0jQ0EvVVo7EmPRK2rE SEPHz5rRZBIeMI/7o3HAsC2n8QKdMPz96HnimdAg81jrimQhW0W/c1+aTC8VMHjfukXBUdHO4Cd iOeNuejI3UgEUSWsTbEWCzk2Ceb4= X-Gm-Gg: ASbGncsT+ed9EMI9jLPqJOF3ldIzlSgWZZne5UbiPcz0ylYhARxqF5G1k1yDO3tM+xF +i/E6T67df3I+YYBXACPE7DFb9eOu1bp3R9IMv+vqcmRAOSKo8wQBH6ZZbrnAomK3kN3gUOuZ X-Google-Smtp-Source: AGHT+IFHubv62IUnqTqZbQ+zRNQ14ZShIQNUm7VrLbB2yBKKsR+6Yap4Et7bXxcOMaLwajtWjqq9ZdNZpB36CETLGxE= X-Received: by 2002:a05:6122:4082:b0:518:a2af:d666 with SMTP id 71dfb90a1353d-51e9e3d5fd5mr12918043e0c.1.1738574083195; Mon, 03 Feb 2025 01:14:43 -0800 (PST) MIME-Version: 1.0 References: <202501110844.5ztsym4vbflm@alvherre.pgsql> In-Reply-To: From: jian he Date: Mon, 3 Feb 2025 17:14:06 +0800 X-Gm-Features: AWEUYZmi6tGzoPNELz6AiZ-HczS7iYGqdNS8IpmJQM1rKmUvAueU5CFAi7xPDr8 Message-ID: Subject: Re: Non-text mode for pg_dumpall To: Mahendra Singh Thalor Cc: Srinath Reddy , pgsql-hackers@lists.postgresql.org Content-Type: multipart/mixed; boundary="000000000000a58bfb062d39529e" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000a58bfb062d39529e Content-Type: text/plain; charset="UTF-8" hi. git clean -fdx && $BIN10/pg_dumpall --format=directory --file=dir10 $BIN10/pg_restore --format=directory --file=1.sql --verbose dir10 > dir_format 2>&1 there is no "\connect dbname" command. pipe 1.sql to psql will execute all the database dump into a single database, which is not good. we need "\connect dbname" in file 1.sql --------<<<<<<<>>>>>>>>>>>>>>>------------------ $BIN10/pg_dumpall --format=directory --exclude-database=src10 --file=dir12_temp drop table t from database x $BIN10/pg_restore --format=directory --dbname=x --verbose dir12_temp > dir_format 2>&1 --------log info------------------ pg_restore: found database "template1" (OID: 1) in map.dat file while restoring. pg_restore: found database "x" (OID: 19554) in map.dat file while restoring. pg_restore: found total 2 database names in map.dat file pg_restore: needs to restore 2 databases out of 2 databases pg_restore: restoring dump of pg_dumpall without -C option, there might be multiple databases in directory. pg_restore: restoring database "template1" pg_restore: connecting to database for restore pg_restore: implied data-only restore pg_restore: restoring database "x" pg_restore: connecting to database for restore pg_restore: processing data for table "public.t" pg_restore: while PROCESSING TOC: pg_restore: from TOC entry 3374; 0 19555 TABLE DATA t jian pg_restore: error: could not execute query: ERROR: relation "public.t" does not exist Command was: COPY public.t (a) FROM stdin; pg_restore: warning: errors ignored on restore: 1 pg_restore: number of restored databases are 2 ________________________ $BIN10/pg_restore --format=directory --list dir12_temp selected output: ; Selected TOC Entries: ; 217; 1259 19555 TABLE public t jian 3374; 0 19555 TABLE DATA public t jian 3228; 2606 19560 CONSTRAINT public t t_pkey jian As you can see, dir12_temp has TABLE and TABLE DATA. so the above log message: "pg_restore: implied data-only restore" is not what we expected. BTW, add --create option, it works as i expected. like $BIN10/pg_restore --format=directory --create --dbname=x --verbose dir12_temp > dir_format 2>&1 output is what i expected. --------<<<<<<<>>>>>>>>>>>>>>>------------------ with the changes in filter_dbnames_for_restore. so will behave differently when you specify the --file option or not. * --file option specified -exclude-database=pattern not allow any special wildcard character. it does not behave the same as the doc mentioned. * --file option not specified, it behaves the same as the doc mentioned. That's kind of tricky, either more words in the doc explain the scarenio where --file option is specified or disallow --file option when --exclude-database is specified. we need to update pg_restore.sgml about MAX_ON_EXIT_NICELY 100? there is some corner like num_db_restore == 0, num_db_restore >= 100 in that scarenio, the execute_global_sql_commands already executed, which is not ideal, since you have pg_fatal and some sql commands already executed. maybe we can be if 0 < num_db_restore < 100 then call execute_global_sql_commands and restoreAllDatabases. the attached patch trying to do that. attached patch also doing some cosmetic changes. --000000000000a58bfb062d39529e Content-Type: application/octet-stream; name="v14-0001-pg_restore-dump-global-objects-at-least-one-d.no-cfbot" Content-Disposition: attachment; filename="v14-0001-pg_restore-dump-global-objects-at-least-one-d.no-cfbot" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_m6ou0cg70 RnJvbSBkMGU4ZmNmNDY4NGFkZjQ0YmYwNWFlMjI4NTkwYWZkNWJkYzUyMDg5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBqaWFuIGhlIDxqaWFuLnVuaXZlcnNhbGl0eUBnbWFpbC5jb20+ CkRhdGU6IE1vbiwgMyBGZWIgMjAyNSAxNzowODozNSArMDgwMApTdWJqZWN0OiBbUEFUQ0ggdjE0 IDEvMV0gcGdfcmVzdG9yZSBkdW1wIGdsb2JhbCBvYmplY3RzIGF0IGxlYXN0IG9uZSBkYXRhYmFz ZQogbmVlZHMgdG8gYmUgcmVzdG9yZWQKCmNhbGwgZXhlY3V0ZV9nbG9iYWxfc3FsX2NvbW1hbmRz IG9ubHkgd2hlbgowIDwgbnVtX2RiX3Jlc3RvcmUgPCBNQVhfT05fRVhJVF9OSUNFTFkuCgphbmQg b3RoZXIgY29lc21ldGljIGNoYW5nZXMuCi0tLQogc3JjL2Jpbi9wZ19kdW1wL3BnX3Jlc3RvcmUu YyB8IDUyICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5n ZWQsIDI1IGluc2VydGlvbnMoKyksIDI3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyYy9i aW4vcGdfZHVtcC9wZ19yZXN0b3JlLmMgYi9zcmMvYmluL3BnX2R1bXAvcGdfcmVzdG9yZS5jCmlu ZGV4IDQyYzRmZTNjZTIuLjhiZDhhMWY2ZGEgMTAwNjQ0Ci0tLSBhL3NyYy9iaW4vcGdfZHVtcC9w Z19yZXN0b3JlLmMKKysrIGIvc3JjL2Jpbi9wZ19kdW1wL3BnX3Jlc3RvcmUuYwpAQCAtNzEsOCAr NzEsOCBAQCB0eXBlZGVmIHN0cnVjdCBTaW1wbGVEYXRhYmFzZU9pZExpc3QKIAlTaW1wbGVEYXRh YmFzZU9pZExpc3RDZWxsICp0YWlsOwogfSBTaW1wbGVEYXRhYmFzZU9pZExpc3Q7CiAKLXN0YXRp YyB2b2lkCi1zaW1wbGVfZGJfb2lkX2xpc3RfYXBwZW5kKFNpbXBsZURhdGFiYXNlT2lkTGlzdCAq bGlzdCwgT2lkIGRiX29pZCwgY29uc3QgY2hhciAqZGJuYW1lKTsKK3N0YXRpYyB2b2lkIHNpbXBs ZV9kYl9vaWRfbGlzdF9hcHBlbmQoU2ltcGxlRGF0YWJhc2VPaWRMaXN0ICpsaXN0LAorCQkJCQkJ CQkJICBPaWQgZGJfb2lkLCBjb25zdCBjaGFyICpkYm5hbWUpOwogCiBzdGF0aWMgdm9pZCB1c2Fn ZShjb25zdCBjaGFyICpwcm9nbmFtZSk7CiBzdGF0aWMgdm9pZCByZWFkX3Jlc3RvcmVfZmlsdGVy cyhjb25zdCBjaGFyICpmaWxlbmFtZSwgUmVzdG9yZU9wdGlvbnMgKm9wdHMpOwpAQCAtNDk1LDE3 ICs0OTUsMTUgQEAgbWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3YpCiAJCQkJCXBnX2ZhdGFsKCJj b3VsZCBub3QgY29ubmVjdCB0byBkYXRhYmFzZSBcIiVzXCIiLCBvcHRzLT5jcGFyYW1zLmRibmFt ZSk7CiAJCQl9CiAKLQkJCS8qCi0JCQkgKiBPcGVuIGdsb2JhbC5kYXQgZmlsZSBhbmQgZXhlY3V0 ZS9hcHBlbmQgYWxsIHRoZSBnbG9iYWwgc3FsCi0JCQkgKiBjb21tYW5kcy4KLQkJCSAqLwotCQkJ ZXhlY3V0ZV9nbG9iYWxfc3FsX2NvbW1hbmRzKGNvbm4sIGlucHV0RmlsZVNwZWMsIG9wdHMtPmZp bGVuYW1lKTsKLQogCQkJLyogSWYgZ2xvYmFscy1vbmx5LCB0aGVuIHJldHVybiBmcm9tIGhlcmUu ICovCiAJCQlpZiAoZ2xvYmFsc19vbmx5KQogCQkJewotCQkJCWlmIChjb25uKQotCQkJCQlQUWZp bmlzaChjb25uKTsKKwkJCQkvKgorCQkJCSogT3BlbiBnbG9iYWwuZGF0IGZpbGUgYW5kIGV4ZWN1 dGUvYXBwZW5kIGFsbCB0aGUgZ2xvYmFsIHNxbAorCQkJCSogY29tbWFuZHMuCisJCQkJKi8KKwkJ CQlleGVjdXRlX2dsb2JhbF9zcWxfY29tbWFuZHMoY29ubiwgaW5wdXRGaWxlU3BlYywgb3B0cy0+ ZmlsZW5hbWUpOworCiAJCQkJcGdfbG9nX2luZm8oImRhdGFiYXNlcyByZXN0b3JpbmcgaXMgc2tp cHBlZCBhcyAtZy8tLWdsb2JhbHMtb25seSBvcHRpb24gaXMgc3BlY2lmaWVkIik7CiAJCQl9CiAJ CQllbHNlCkBAIC01MTUsMTAgKzUxMywxMiBAQCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikK IAkJCQkJCQkJCQkJCWRiX2V4Y2x1ZGVfcGF0dGVybnMsCiAJCQkJCQkJCQkJCQlvcHRzLAogCQkJ CQkJCQkJCQkJbnVtV29ya2Vycyk7CisJCQkJLyogRnJlZSBkYiBwYXR0ZXJuIGxpc3QuICovCisJ CQkJc2ltcGxlX3N0cmluZ19mdWxsX2xpc3RfZGVsZXRlKCZkYl9leGNsdWRlX3BhdHRlcm5zKTsK IAkJCX0KIAotCQkJLyogRnJlZSBkYiBwYXR0ZXJuIGxpc3QuICovCi0JCQlzaW1wbGVfc3RyaW5n X2Z1bGxfbGlzdF9kZWxldGUoJmRiX2V4Y2x1ZGVfcGF0dGVybnMpOworCQkJaWYgKGNvbm4pCisJ CQkJUFFmaW5pc2goY29ubik7CiAKIAkJCXJldHVybiBleGl0X2NvZGU7CiAJCX0KQEAgLTk4OCw3 ICs5ODgsNyBAQCBnZXRfZGJuYW1lX29pZF9saXN0X2Zyb21fbWZpbGUoY29uc3QgY2hhciAqZHVt cGRpcnBhdGgsIFNpbXBsZURhdGFiYXNlT2lkTGlzdCAqZAogCXdoaWxlKChmZ2V0cyhsaW5lLCBN QVhQR1BBVEgsIHBmaWxlKSkgIT0gTlVMTCkKIAl7CiAJCU9pZCAgICAgICAgIGRiX29pZCA9IElu dmFsaWRPaWQ7Ci0JCWNoYXIJCWRiX29pZF9zdHJbTUFYUEdQQVRIICsgMV07CisJCWNoYXIJCWRi X29pZF9zdHJbTUFYUEdQQVRIICsgMV0gPSB7J1wwJ307CiAJCWNoYXIgICAgICAgIGRibmFtZVtN QVhQR1BBVEggKyAxXSA9IHsnXDAnfTsKIAogCQkvKiBFeHRyYWN0IGRib2lkLiAqLwpAQCAtMTA3 OCwxNiArMTA3OCwxMiBAQCByZXN0b3JlQWxsRGF0YWJhc2VzKFBHY29ubiAqY29ubiwgY29uc3Qg Y2hhciAqZHVtcGRpcnBhdGgsCiAJbnVtX2RiX3Jlc3RvcmUgPSBmaWx0ZXJfZGJuYW1lc19mb3Jf cmVzdG9yZShjb25uLCAmZGJuYW1lX29pZF9saXN0LAogCQkJCQkJCQkJCQkJZGJfZXhjbHVkZV9w YXR0ZXJucyk7CiAKLQkvKiBDbG9zZSB0aGUgZGIgY29ubmVjdGlvbiBhcyB3ZSBhcmUgZG9uZSB3 aXRoIGdsb2JhbHMgYW5kIHBhdHRlcm5zLiAqLwotCWlmIChjb25uKQotCQlQUWZpbmlzaChjb25u KTsKLQotCS8qIEV4aXQgaWYgbm8gZGIgbmVlZHMgdG8gYmUgcmVzdG9yZWQuICovCi0JaWYgKGRi bmFtZV9vaWRfbGlzdC5oZWFkID09IE5VTEwpCi0JCXJldHVybiAwOwotCiAJcGdfbG9nX2luZm8o Im5lZWRzIHRvIHJlc3RvcmUgJWQgZGF0YWJhc2VzIG91dCBvZiAlZCBkYXRhYmFzZXMiLCBudW1f ZGJfcmVzdG9yZSwgbnVtX3RvdGFsX2RiKTsKIAorCS8qIEV4aXQgaWYgbm8gZGIgbmVlZHMgdG8g YmUgcmVzdG9yZWQuICovCisJaWYgKGRibmFtZV9vaWRfbGlzdC5oZWFkID09IE5VTEwpCisJCXJl dHVybiAwOworCiAJLyoKIAkgKiBUbyByZXN0b3JlIG11bHRpcGxlIGRhdGFiYXNlcywgLUMgKGNy ZWF0ZSBkYXRhYmFzZSkgb3B0aW9uIHNob3VsZCBiZSBzcGVjaWZpZWQKIAkgKiBvciBhbGwgZGF0 YWJhc2VzIHNob3VsZCBiZSBjcmVhdGVkIGJlZm9yZSBwZ19yZXN0b3JlLgpAQCAtMTA5OSwxMSAr MTA5NSwxMyBAQCByZXN0b3JlQWxsRGF0YWJhc2VzKFBHY29ubiAqY29ubiwgY29uc3QgY2hhciAq ZHVtcGRpcnBhdGgsCiAJaWYgKG51bV9kYl9yZXN0b3JlID4gTUFYX09OX0VYSVRfTklDRUxZKQog CXsKIAkJc2ltcGxlX2RiX29pZF9mdWxsX2xpc3RfZGVsZXRlKCZkYm5hbWVfb2lkX2xpc3QpOwot CQlwZ19mYXRhbCgiY291bmQgbm90IHJlc3RvcmUgbW9yZSB0aGFuICVkIGRhdGFiYXNlcyBieSBz aW5nbGUgcGdfcmVzdG9yZSwgaGVyZSB0b3RhbCBkYjolZCIsCisJCXBnX2ZhdGFsKCJjb3VuZCBu b3QgcmVzdG9yZSBtb3JlIHRoYW4gJWQgZGF0YWJhc2VzIGJ5IHNpbmdsZSBwZ19yZXN0b3JlLCBo ZXJlIHRvdGFsIGRhdGFiYXNlOiVkIiwKIAkJCQkgIE1BWF9PTl9FWElUX05JQ0VMWSwKIAkJCQkg IG51bV9kYl9yZXN0b3JlKTsKIAl9CiAKKwlleGVjdXRlX2dsb2JhbF9zcWxfY29tbWFuZHMoY29u biwgZHVtcGRpcnBhdGgsIG9wdHMtPmZpbGVuYW1lKTsKKwogCS8qCiAJICogWFhYOiBUT0RPIHRp bGwgbm93LCB3ZSBtYWRlIGEgbGlzdCBvZiBkYXRhYmFzZXMsIHRob3NlIG5lZWRzIHRvIGJlIHJl c3RvcmVkCiAJICogYWZ0ZXIgc2tpcHBpbmcgbmFtZXMgb2YgZXhjbHVkZS1kYXRhYmFzZS4gIE5v dyB3ZSBjYW4gbGF1bmNoIHBhcmFsbGVsCkBAIC0xMTUzLDggKzExNTEsOCBAQCByZXN0b3JlQWxs RGF0YWJhc2VzKFBHY29ubiAqY29ubiwgY29uc3QgY2hhciAqZHVtcGRpcnBhdGgsCiAgKgogICog VGhpcyB3aWxsIG9wZW4gZ2xvYmFsLmRhdCBmaWxlIGFuZCB3aWxsIGV4ZWN1dGUgYWxsIGdsb2Jh bCBzcWwgY29tbWFuZHMgb25lCiAgKiBieSBvbmUgc3RhdGVtZW50LgotICogU2VtaWNvbG9uIGlz IGNvbnNpZGVyZWQgYXMgc3RhdGVtZW50IHRlcm1pbmF0b3IuICBJZiBvdXRmaWxlIGlzIHBhc3Nl ZCwgdGhlbgotICogdGhpcyB3aWxsIGNvcHkgYWxsIHNxbCBjb21tYW5kcyBpbnRvIG91dGZpbGUg cmF0aGVyIHRoZW4gZXhlY3V0aW5nIHRoZW0uCisgKiBTZW1pY29sb24gaXMgY29uc2lkZXJlZCBh cyBzdGF0ZW1lbnQgdGVybWluYXRvci4gIElmIG91dGZpbGUgaXMgbm90IE5VTEwsIHRoZW4KKyAq IHdlIGNvcHkgYWxsIHNxbCBjb21tYW5kcyBpbnRvIG91dGZpbGUgcmF0aGVyIHRoZW4gZXhlY3V0 aW5nIHRoZW0uCiAgKi8KIHN0YXRpYyB2b2lkCiBleGVjdXRlX2dsb2JhbF9zcWxfY29tbWFuZHMo UEdjb25uICpjb25uLCBjb25zdCBjaGFyICpkdW1wZGlycGF0aCwgY29uc3QgY2hhciAqb3V0Zmls ZSkKQEAgLTEyNDIsNyArMTI0MCw3IEBAIGNvcHlfZ2xvYmFsX2ZpbGVfdG9fb3V0X2ZpbGUoY29u c3QgY2hhciAqb3V0ZmlsZSwgRklMRSAqcGZpbGUpCiAgKi8KIHN0YXRpYyB2b2lkCiBzaW1wbGVf ZGJfb2lkX2xpc3RfYXBwZW5kKFNpbXBsZURhdGFiYXNlT2lkTGlzdCAqbGlzdCwgT2lkIGRiX29p ZCwKLQkJY29uc3QgY2hhciAqZGJuYW1lKQorCQkJCQkJICBjb25zdCBjaGFyICpkYm5hbWUpCiB7 CiAJU2ltcGxlRGF0YWJhc2VPaWRMaXN0Q2VsbCAqY2VsbDsKIApAQCAtMTMxMCw4ICsxMzA4LDgg QEAgc2ltcGxlX3N0cmluZ19mdWxsX2xpc3RfZGVsZXRlKFNpbXBsZVN0cmluZ0xpc3QgKmxpc3Qp CiAgKi8KIHN0YXRpYyB2b2lkCiBzaW1wbGVfZGJfb2lkX2xpc3RfZGVsZXRlKFNpbXBsZURhdGFi YXNlT2lkTGlzdCAqbGlzdCwKLQkJU2ltcGxlRGF0YWJhc2VPaWRMaXN0Q2VsbCAqY2VsbCwKLQkJ U2ltcGxlRGF0YWJhc2VPaWRMaXN0Q2VsbCAqcHJldikKKwkJCQkJCSAgU2ltcGxlRGF0YWJhc2VP aWRMaXN0Q2VsbCAqY2VsbCwKKwkJCQkJCSAgU2ltcGxlRGF0YWJhc2VPaWRMaXN0Q2VsbCAqcHJl dikKIHsKIAlpZiAocHJldiA9PSBOVUxMKQogCXsKLS0gCjIuMzQuMQoK --000000000000a58bfb062d39529e--