From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by sourceware.org (Postfix) with ESMTPS id 896F73858400 for ; Wed, 5 Jan 2022 13:23:22 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 896F73858400 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=suse.cz Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.cz Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id B62831F37B; Wed, 5 Jan 2022 13:23:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa; t=1641389001; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=p+QqyQHuRpZQqxXiK/J9zSs32Jk6gCKxcA5uLiwdruI=; b=huhaWnDksxvmI+7hSzsAix0H3JWALE7nahQti7qHjYIrL04EWFEPqRDh5l0gm588K6J5oq 03XcodKB2J3mwYOtrCxOQlUBUis5xkiGdQ3qGN5zfSK5xT2gBDgUwmp0woUte9fNAJ0hR9 lYTf1maXmyvVQudF8xM11ETdjnBuwJY= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_ed25519; t=1641389001; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=p+QqyQHuRpZQqxXiK/J9zSs32Jk6gCKxcA5uLiwdruI=; b=4e7TnS74PLxmc5aYng5lQRBmwBjdiUSutpx8EpS1eZnF/pV/TLJnEL3vNJM1lFuWsm5xEl +anTsR0NkOCH5OCQ== Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id A119F13BD9; Wed, 5 Jan 2022 13:23:21 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id Kmg3Jsmb1WGQMQAAMHmgww (envelope-from ); Wed, 05 Jan 2022 13:23:21 +0000 Content-Type: multipart/mixed; boundary="------------aD6XW9k2iEGI0HPN5y9dB80y" Message-ID: Date: Wed, 5 Jan 2022 14:23:21 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.4.1 Subject: [PATCH 2/N] Enable migration to C++. Content-Language: en-US From: =?UTF-8?Q?Martin_Li=c5=a1ka?= To: gcc-patches@gcc.gnu.org References: Cc: Jan Hubicka In-Reply-To: X-Spam-Status: No, score=-11.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Jan 2022 13:23:24 -0000 This is a multi-part message in MIME format. --------------aD6XW9k2iEGI0HPN5y9dB80y Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi. The second patch brings us closer to C++. I used some libiberty macros and changed signed/unsigned integer types. Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed? Thanks, Martin --------------aD6XW9k2iEGI0HPN5y9dB80y Content-Type: text/x-patch; charset=UTF-8; name="0001-Enable-migration-to-C.patch" Content-Disposition: attachment; filename="0001-Enable-migration-to-C.patch" Content-Transfer-Encoding: base64 RnJvbSAxN2RlNGQ2NzUwMDUzNjhkN2U2OTYxNWRhMjJjZDQwNTU0MmM0ZmUxIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJ0aW4gTGlza2EgPG1saXNrYUBzdXNlLmN6PgpE YXRlOiBXZWQsIDUgSmFuIDIwMjIgMTQ6MDA6MTUgKzAxMDAKU3ViamVjdDogW1BBVENIXSBF bmFibGUgbWlncmF0aW9uIHRvIEMrKy4KCmx0by1wbHVnaW4vQ2hhbmdlTG9nOgoKCSogbHRv LXBsdWdpbi5jICh0cmFuc2xhdGUpOiBVc2UgWFJFU0laRVZFQyBhbmQgY29ycmVjdAoJc2ln bmVkL3Vuc2lnbmVkIGludGVnZXIgdHlwZXMuCgkoZnJlZV8xKTogTGlrZXdpc2UuCgkoZHVt cF9zeW10YWIpOiBMaWtld2lzZS4KCShmaW5pc2hfY29uZmxpY3RfcmVzb2x1dGlvbik6IExp a2V3aXNlLgoJKGFkZF9vdXRwdXRfZmlsZXMpOiBMaWtld2lzZS4KCShyZXNvbHZlX2NvbmZs aWN0cyk6IExpa2V3aXNlLgoJKHByb2Nlc3Nfc3ltdGFiKTogTGlrZXdpc2UuCgkocHJvY2Vz c19zeW10YWJfZXh0ZW5zaW9uKTogTGlrZXdpc2UuCgkoY2xhaW1fZmlsZV9oYW5kbGVyKTog TGlrZXdpc2UuCgkocHJvY2Vzc19vcHRpb24pOiBMaWtld2lzZS4KCShvbmxvYWQpOiBMaWtl d2lzZS4KLS0tCiBsdG8tcGx1Z2luL2x0by1wbHVnaW4uYyB8IDU1ICsrKysrKysrKysrKysr KysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMjQgaW5zZXJ0 aW9ucygrKSwgMzEgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbHRvLXBsdWdpbi9sdG8t cGx1Z2luLmMgYi9sdG8tcGx1Z2luL2x0by1wbHVnaW4uYwppbmRleCAwMTQ3YjFiOTY2Ny4u NTFlMGI0ZGVkNDMgMTAwNjQ0Ci0tLSBhL2x0by1wbHVnaW4vbHRvLXBsdWdpbi5jCisrKyBi L2x0by1wbHVnaW4vbHRvLXBsdWdpbi5jCkBAIC0xODUsNyArMTg1LDcgQEAgc3RhdGljIGNo YXIgKipvdXRwdXRfZmlsZXMgPSBOVUxMOwogc3RhdGljIHVuc2lnbmVkIGludCBudW1fb3V0 cHV0X2ZpbGVzID0gMDsKIAogc3RhdGljIGNoYXIgKipsdG9fd3JhcHBlcl9hcmd2Owotc3Rh dGljIGludCBsdG9fd3JhcHBlcl9udW1fYXJnczsKK3N0YXRpYyB1bnNpZ25lZCBsdG9fd3Jh cHBlcl9udW1fYXJnczsKIAogc3RhdGljIGNoYXIgKipwYXNzX3Rocm91Z2hfaXRlbXMgPSBO VUxMOwogc3RhdGljIHVuc2lnbmVkIGludCBudW1fcGFzc190aHJvdWdoX2l0ZW1zOwpAQCAt MzYzLDkgKzM2Myw5IEBAIHRyYW5zbGF0ZSAoY2hhciAqZGF0YSwgY2hhciAqZW5kLCBzdHJ1 Y3QgcGx1Z2luX3N5bXRhYiAqb3V0KQogICAgICB0aGUgYWxnb3JpdGhtIGlzIE8oMSkgbm93 LiAqLwogCiAgIGxlbiA9IChlbmQgLSBkYXRhKS84ICsgb3V0LT5uc3ltcyArIDE7Ci0gIHN5 bXMgPSB4cmVhbGxvYyAob3V0LT5zeW1zLCBsZW4gKiBzaXplb2YgKHN0cnVjdCBsZF9wbHVn aW5fc3ltYm9sKSk7Ci0gIGF1eCA9IHhyZWFsbG9jIChvdXQtPmF1eCwgbGVuICogc2l6ZW9m IChzdHJ1Y3Qgc3ltX2F1eCkpOwotICAKKyAgc3ltcyA9IFhSRVNJWkVWRUMgKHN0cnVjdCBs ZF9wbHVnaW5fc3ltYm9sLCBvdXQtPnN5bXMsIGxlbik7CisgIGF1eCA9IFhSRVNJWkVWRUMg KHN0cnVjdCBzeW1fYXV4LCBvdXQtPmF1eCwgbGVuKTsKKwogICBmb3IgKG4gPSBvdXQtPm5z eW1zOyBkYXRhIDwgZW5kOyBuKyspIAogICAgIHsgCiAgICAgICBhdXhbbl0uaWQgPSBvdXQt PmlkOyAKQEAgLTQxNCwxMyArNDE0LDExIEBAIHBhcnNlX3N5bXRhYl9leHRlbnNpb24gKGNo YXIgKmRhdGEsIGNoYXIgKmVuZCwgc3RydWN0IHBsdWdpbl9zeW10YWIgKm91dCkKIHN0YXRp YyB2b2lkCiBmcmVlXzEgKHN0cnVjdCBwbHVnaW5fZmlsZV9pbmZvICpmaWxlcywgdW5zaWdu ZWQgbnVtX2ZpbGVzKQogewotICB1bnNpZ25lZCBpbnQgaTsKLSAgZm9yIChpID0gMDsgaSA8 IG51bV9maWxlczsgaSsrKQorICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbnVtX2ZpbGVz OyBpKyspCiAgICAgewogICAgICAgc3RydWN0IHBsdWdpbl9maWxlX2luZm8gKmluZm8gPSAm ZmlsZXNbaV07CiAgICAgICBzdHJ1Y3QgcGx1Z2luX3N5bXRhYiAqc3ltdGFiID0gJmluZm8t PnN5bXRhYjsKLSAgICAgIHVuc2lnbmVkIGludCBqOwotICAgICAgZm9yIChqID0gMDsgaiA8 IHN5bXRhYi0+bnN5bXM7IGorKykKKyAgICAgIGZvciAoaW50IGogPSAwOyBqIDwgc3ltdGFi LT5uc3ltczsgaisrKQogCXsKIAkgIHN0cnVjdCBsZF9wbHVnaW5fc3ltYm9sICpzID0gJnN5 bXRhYi0+c3ltc1tqXTsKIAkgIGZyZWUgKHMtPm5hbWUpOwpAQCAtNDcwLDkgKzQ2OCw3IEBA IGZyZWVfMiAodm9pZCkKIHN0YXRpYyB2b2lkCiBkdW1wX3N5bXRhYiAoRklMRSAqZiwgc3Ry dWN0IHBsdWdpbl9zeW10YWIgKnN5bXRhYikKIHsKLSAgdW5zaWduZWQgajsKLQotICBmb3Ig KGogPSAwOyBqIDwgc3ltdGFiLT5uc3ltczsgaisrKQorICBmb3IgKGludCBqID0gMDsgaiA8 IHN5bXRhYi0+bnN5bXM7IGorKykKICAgICB7CiAgICAgICB1aW50MzJfdCBzbG90ID0gc3lt dGFiLT5hdXhbal0uc2xvdDsKICAgICAgIHVuc2lnbmVkIGludCByZXNvbHV0aW9uID0gc3lt dGFiLT5zeW1zW2pdLnJlc29sdXRpb247CkBAIC01MDIsNyArNDk4LDcgQEAgZmluaXNoX2Nv bmZsaWN0X3Jlc29sdXRpb24gKHN0cnVjdCBwbHVnaW5fc3ltdGFiICpzeW10YWIsCiAgICAg eyAKICAgICAgIGNoYXIgcmVzb2x1dGlvbiA9IExEUFJfVU5LTk9XTjsKIAotICAgICAgaWYg KHN5bXRhYi0+YXV4W2ldLm5leHRfY29uZmxpY3QgPT0gLTEpCisgICAgICBpZiAoc3ltdGFi LT5hdXhbaV0ubmV4dF9jb25mbGljdCA9PSAtMVUpCiAJY29udGludWU7CiAKICAgICAgIHN3 aXRjaCAoc3ltdGFiLT5zeW1zW2ldLmRlZikgCkBAIC01OTEsNyArNTg3LDcgQEAgYWRkX291 dHB1dF9maWxlcyAoRklMRSAqZikKICAgZm9yICg7OykKICAgICB7CiAgICAgICBjb25zdCB1 bnNpZ25lZCBwaWVjZSA9IDMyOwotICAgICAgY2hhciAqYnVmLCAqcyA9IHhtYWxsb2MgKHBp ZWNlKTsKKyAgICAgIGNoYXIgKmJ1ZiwgKnMgPSBYTkVXVkVDIChjaGFyLCBwaWVjZSk7CiAg ICAgICBzaXplX3QgbGVuOwogCiAgICAgICBidWYgPSBzOwpAQCAtNjA0LDE1ICs2MDAsMTQg QEAgY29udDoKICAgICAgIGxlbiA9IHN0cmxlbiAocyk7CiAgICAgICBpZiAoc1tsZW4gLSAx XSAhPSAnXG4nKQogCXsKLQkgIHMgPSB4cmVhbGxvYyAocywgbGVuICsgcGllY2UpOworCSAg cyA9IFhSRVNJWkVWRUMgKGNoYXIsIHMsIGxlbiArIHBpZWNlKTsKIAkgIGJ1ZiA9IHMgKyBs ZW47CiAJICBnb3RvIGNvbnQ7CiAJfQogICAgICAgc1tsZW4gLSAxXSA9ICdcMCc7CiAKICAg ICAgIG51bV9vdXRwdXRfZmlsZXMrKzsKLSAgICAgIG91dHB1dF9maWxlcwotCT0geHJlYWxs b2MgKG91dHB1dF9maWxlcywgbnVtX291dHB1dF9maWxlcyAqIHNpemVvZiAoY2hhciAqKSk7 CisgICAgICBvdXRwdXRfZmlsZXMgPSBYUkVTSVpFVkVDIChjaGFyICosIG91dHB1dF9maWxl cywgbnVtX291dHB1dF9maWxlcyk7CiAgICAgICBvdXRwdXRfZmlsZXNbbnVtX291dHB1dF9m aWxlcyAtIDFdID0gczsKICAgICAgIGFkZF9pbnB1dF9maWxlIChvdXRwdXRfZmlsZXNbbnVt X291dHB1dF9maWxlcyAtIDFdKTsKICAgICB9CkBAIC05NjIsOCArOTU3LDggQEAgcmVzb2x2 ZV9jb25mbGljdHMgKHN0cnVjdCBwbHVnaW5fc3ltdGFiICp0LCBzdHJ1Y3QgcGx1Z2luX3N5 bXRhYiAqY29uZmxpY3RzKQogICBpbnQgb3V0bGVuOwogCiAgIG91dGxlbiA9IHQtPm5zeW1z OwotICBjb25mbGljdHMtPnN5bXMgPSB4bWFsbG9jIChzaXplb2YgKHN0cnVjdCBsZF9wbHVn aW5fc3ltYm9sKSAqIG91dGxlbik7Ci0gIGNvbmZsaWN0cy0+YXV4ID0geG1hbGxvYyAoc2l6 ZW9mIChzdHJ1Y3Qgc3ltX2F1eCkgKiBvdXRsZW4pOworICBjb25mbGljdHMtPnN5bXMgPSBY TkVXVkVDIChzdHJ1Y3QgbGRfcGx1Z2luX3N5bWJvbCwgb3V0bGVuKTsKKyAgY29uZmxpY3Rz LT5hdXggPSBYTkVXVkVDIChzdHJ1Y3Qgc3ltX2F1eCwgb3V0bGVuKTsKIAogICAvKiBNb3Zl IGFsbCBkdXBsaWNhdGUgc3ltYm9scyBpbnRvIHRoZSBhdXhpbGlhcnkgY29uZmxpY3RzIHRh YmxlLiAqLwogICBvdXQgPSAwOwpAQCAtMTAyNyw3ICsxMDIyLDcgQEAgc3RhdGljIGludAog cHJvY2Vzc19zeW10YWIgKHZvaWQgKmRhdGEsIGNvbnN0IGNoYXIgKm5hbWUsIG9mZl90IG9m ZnNldCwgb2ZmX3QgbGVuZ3RoKQogewogICBzdHJ1Y3QgcGx1Z2luX29iamZpbGUgKm9iaiA9 IChzdHJ1Y3QgcGx1Z2luX29iamZpbGUgKilkYXRhOwotICBjaGFyICpzOworICBjb25zdCBj aGFyICpzOwogICBjaGFyICpzZWNkYXRhc3RhcnQsICpzZWNkYXRhOwogCiAgIGlmICghc3Rh cnRzd2l0aCAobmFtZSwgIi5nbnUubHRvXy5zeW10YWIiKSkKQEAgLTEwMzYsNyArMTAzMSw3 IEBAIHByb2Nlc3Nfc3ltdGFiICh2b2lkICpkYXRhLCBjb25zdCBjaGFyICpuYW1lLCBvZmZf dCBvZmZzZXQsIG9mZl90IGxlbmd0aCkKICAgcyA9IHN0cnJjaHIgKG5hbWUsICcuJyk7CiAg IGlmIChzKQogICAgIHNzY2FuZiAocywgIi4lIiBQUklfTEwgIngiLCAmb2JqLT5vdXQtPmlk KTsKLSAgc2VjZGF0YSA9IHNlY2RhdGFzdGFydCA9IHhtYWxsb2MgKGxlbmd0aCk7CisgIHNl Y2RhdGEgPSBzZWNkYXRhc3RhcnQgPSBYTkVXVkVDIChjaGFyLCBsZW5ndGgpOwogICBvZmZz ZXQgKz0gb2JqLT5maWxlLT5vZmZzZXQ7CiAgIGlmIChvZmZzZXQgIT0gbHNlZWsgKG9iai0+ ZmlsZS0+ZmQsIG9mZnNldCwgU0VFS19TRVQpKQogICAgIGdvdG8gZXJyOwpAQCAtMTA3OSw3 ICsxMDc0LDcgQEAgcHJvY2Vzc19zeW10YWJfZXh0ZW5zaW9uICh2b2lkICpkYXRhLCBjb25z dCBjaGFyICpuYW1lLCBvZmZfdCBvZmZzZXQsCiAJCQkgIG9mZl90IGxlbmd0aCkKIHsKICAg c3RydWN0IHBsdWdpbl9vYmpmaWxlICpvYmogPSAoc3RydWN0IHBsdWdpbl9vYmpmaWxlICop ZGF0YTsKLSAgY2hhciAqczsKKyAgY29uc3QgY2hhciAqczsKICAgY2hhciAqc2VjZGF0YXN0 YXJ0LCAqc2VjZGF0YTsKIAogICBpZiAoIXN0YXJ0c3dpdGggKG5hbWUsICIuZ251Lmx0b18u ZXh0X3N5bXRhYiIpKQpAQCAtMTA4OCw3ICsxMDgzLDcgQEAgcHJvY2Vzc19zeW10YWJfZXh0 ZW5zaW9uICh2b2lkICpkYXRhLCBjb25zdCBjaGFyICpuYW1lLCBvZmZfdCBvZmZzZXQsCiAg IHMgPSBzdHJyY2hyIChuYW1lLCAnLicpOwogICBpZiAocykKICAgICBzc2NhbmYgKHMsICIu JSIgUFJJX0xMICJ4IiwgJm9iai0+b3V0LT5pZCk7Ci0gIHNlY2RhdGEgPSBzZWNkYXRhc3Rh cnQgPSB4bWFsbG9jIChsZW5ndGgpOworICBzZWNkYXRhID0gc2VjZGF0YXN0YXJ0ID0gWE5F V1ZFQyAoY2hhciwgbGVuZ3RoKTsKICAgb2Zmc2V0ICs9IG9iai0+ZmlsZS0+b2Zmc2V0Owog ICBpZiAob2Zmc2V0ICE9IGxzZWVrIChvYmotPmZpbGUtPmZkLCBvZmZzZXQsIFNFRUtfU0VU KSkKICAgICBnb3RvIGVycjsKQEAgLTEyMzEsOSArMTIyNiw4IEBAIGNsYWltX2ZpbGVfaGFu ZGxlciAoY29uc3Qgc3RydWN0IGxkX3BsdWdpbl9pbnB1dF9maWxlICpmaWxlLCBpbnQgKmNs YWltZWQpCiAgICAgICBjaGVjayAoc3RhdHVzID09IExEUFNfT0ssIExEUExfRkFUQUwsICJj b3VsZCBub3QgYWRkIHN5bWJvbHMiKTsKIAogICAgICAgbnVtX2NsYWltZWRfZmlsZXMrKzsK LSAgICAgIGNsYWltZWRfZmlsZXMgPQotCXhyZWFsbG9jIChjbGFpbWVkX2ZpbGVzLAotCQkg IG51bV9jbGFpbWVkX2ZpbGVzICogc2l6ZW9mIChzdHJ1Y3QgcGx1Z2luX2ZpbGVfaW5mbykp OworICAgICAgY2xhaW1lZF9maWxlcyA9IFhSRVNJWkVWRUMgKHN0cnVjdCBwbHVnaW5fZmls ZV9pbmZvLAorCQkJCSAgY2xhaW1lZF9maWxlcywgbnVtX2NsYWltZWRfZmlsZXMpOwogICAg ICAgY2xhaW1lZF9maWxlc1tudW1fY2xhaW1lZF9maWxlcyAtIDFdID0gbHRvX2ZpbGU7CiAK ICAgICAgICpjbGFpbWVkID0gMTsKQEAgLTEyNDIsNyArMTIzNiw3IEBAIGNsYWltX2ZpbGVf aGFuZGxlciAoY29uc3Qgc3RydWN0IGxkX3BsdWdpbl9pbnB1dF9maWxlICpmaWxlLCBpbnQg KmNsYWltZWQpCiAgIGlmIChvZmZsb2FkX2ZpbGVzID09IE5VTEwpCiAgICAgewogICAgICAg LyogQWRkIGR1bW15IGl0ZW0gdG8gdGhlIHN0YXJ0IG9mIHRoZSBsaXN0LiAgKi8KLSAgICAg IG9mZmxvYWRfZmlsZXMgPSB4bWFsbG9jIChzaXplb2YgKHN0cnVjdCBwbHVnaW5fb2ZmbG9h ZF9maWxlKSk7CisgICAgICBvZmZsb2FkX2ZpbGVzID0gWE5FVyAoc3RydWN0IHBsdWdpbl9v ZmZsb2FkX2ZpbGUpOwogICAgICAgb2ZmbG9hZF9maWxlcy0+bmFtZSA9IE5VTEw7CiAgICAg ICBvZmZsb2FkX2ZpbGVzLT5uZXh0ID0gTlVMTDsKICAgICAgIG9mZmxvYWRfZmlsZXNfbGFz dCA9IG9mZmxvYWRfZmlsZXM7CkBAIC0xMjYwLDggKzEyNTQsNyBAQCBjbGFpbV9maWxlX2hh bmRsZXIgKGNvbnN0IHN0cnVjdCBsZF9wbHVnaW5faW5wdXRfZmlsZSAqZmlsZSwgaW50ICpj bGFpbWVkKQogCSBvcmRlciBhZnRlciByZWNvbXBpbGF0aW9uIGFuZCBsaW5raW5nLCBvdGhl cndpc2UgaG9zdCBhbmQgdGFyZ2V0IHRhYmxlcwogCSB3aXRoIGFkZHJlc3NlcyB3b3VsZG4n dCBtYXRjaC4gIElmIGEgc3RhdGljIGxpYnJhcnkgY29udGFpbnMgYm90aCBMVE8KIAkgYW5k IG5vbi1MVE8gb2JqZWN0cywgbGQgYW5kIGdvbGQgbGluayB0aGVtIGluIGEgZGlmZmVyZW50 IG9yZGVyLiAgKi8KLSAgICAgIHN0cnVjdCBwbHVnaW5fb2ZmbG9hZF9maWxlICpvZmxkCi0J PSB4bWFsbG9jIChzaXplb2YgKHN0cnVjdCBwbHVnaW5fb2ZmbG9hZF9maWxlKSk7CisgICAg ICBzdHJ1Y3QgcGx1Z2luX29mZmxvYWRfZmlsZSAqb2ZsZCA9IFhORVcgKHN0cnVjdCBwbHVn aW5fb2ZmbG9hZF9maWxlKTsKICAgICAgIG9mbGQtPm5hbWUgPSBsdG9fZmlsZS5uYW1lOwog ICAgICAgb2ZsZC0+bmV4dCA9IE5VTEw7CiAKQEAgLTEzMzgsOCArMTMzMSw4IEBAIHByb2Nl c3Nfb3B0aW9uIChjb25zdCBjaGFyICpvcHRpb24pCiAgIGVsc2UgaWYgKHN0YXJ0c3dpdGgg KG9wdGlvbiwgIi1wYXNzLXRocm91Z2g9IikpCiAgICAgewogICAgICAgbnVtX3Bhc3NfdGhy b3VnaF9pdGVtcysrOwotICAgICAgcGFzc190aHJvdWdoX2l0ZW1zID0geHJlYWxsb2MgKHBh c3NfdGhyb3VnaF9pdGVtcywKLQkJCQkgICAgIG51bV9wYXNzX3Rocm91Z2hfaXRlbXMgKiBz aXplb2YgKGNoYXIgKikpOworICAgICAgcGFzc190aHJvdWdoX2l0ZW1zID0gWFJFU0laRVZF QyAoY2hhciAqLCBwYXNzX3Rocm91Z2hfaXRlbXMsCisJCQkJICAgICAgIG51bV9wYXNzX3Ro cm91Z2hfaXRlbXMpOwogICAgICAgcGFzc190aHJvdWdoX2l0ZW1zW251bV9wYXNzX3Rocm91 Z2hfaXRlbXMgLSAxXSA9CiAgICAgICAgICAgeHN0cmR1cCAob3B0aW9uICsgc3RybGVuICgi LXBhc3MtdGhyb3VnaD0iKSk7CiAgICAgfQpAQCAtMTUxMiw3ICsxNTA1LDcgQEAgb25sb2Fk IChzdHJ1Y3QgbGRfcGx1Z2luX3R2ICp0dikKIAkgICAgIGZpbmQgYW4gb2RkIG51bWJlciBv ZiB0aGVtKSwgYW5kIGl0IGNvcGllcyBjaGFyYWN0ZXJzCiAJICAgICB0aGF0IGFyZSBlc2Nh cGVkIG9yIG5vdCBvdGhlcndpc2Ugc2tpcHBlZC4gICovCiAJICBpbnQgbGVuID0gcCAtIHN0 YXJ0IC0gdGlja3MgLSBlc2NhcGVzICsgMTsKLQkgIGNoYXIgKnEgPSB4bWFsbG9jIChsZW4p OworCSAgY2hhciAqcSA9IFhORVdWRUMgKGNoYXIsIGxlbik7CiAJICBsaW5rX291dHB1dF9u YW1lID0gcTsKIAkgIGludCBvZGR0aWNrcyA9ICh0aWNrcyAlIDIpOwogCSAgdGlja3MgKz0g b2RkdGlja3M7Ci0tIAoyLjM0LjEKCg== --------------aD6XW9k2iEGI0HPN5y9dB80y--