From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 117472 invoked by alias); 13 May 2015 08:51:16 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 117405 invoked by uid 89); 13 May 2015 08:51:16 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.0 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-qk0-f176.google.com Received: from mail-qk0-f176.google.com (HELO mail-qk0-f176.google.com) (209.85.220.176) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-GCM-SHA256 encrypted) ESMTPS; Wed, 13 May 2015 08:51:15 +0000 Received: by qkgy4 with SMTP id y4so23552289qkg.2 for ; Wed, 13 May 2015 01:51:13 -0700 (PDT) MIME-Version: 1.0 X-Received: by 10.229.84.70 with SMTP id i6mr26204645qcl.20.1431507073085; Wed, 13 May 2015 01:51:13 -0700 (PDT) Received: by 10.229.215.4 with HTTP; Wed, 13 May 2015 01:51:12 -0700 (PDT) Date: Wed, 13 May 2015 08:51:00 -0000 Message-ID: Subject: [PATCH 2/7] [D] libiberty: Fail if reached end of symbol string From: Iain Buclaw To: gcc-patches , Ian Lance Taylor Content-Type: multipart/mixed; boundary=001a1133c1ba9602a80515f2b687 X-IsSubscribed: yes X-SW-Source: 2015-05/txt/msg01188.txt.bz2 --001a1133c1ba9602a80515f2b687 Content-Type: text/plain; charset=UTF-8 Content-length: 477 If a symbol that has so far been valid abruptly ends then we will want to fail the process rather than silently succeed. --- libiberty/ChangeLog 2015-05-13 Iain Buclaw * d-demangle.c (dlang_call_convention): Return NULL if have reached the end of the symbol, but expected more. (dlang_attributes): Likewise. (dlang_function_type): Likewise. (dlang_type): Likewise. (dlang_identifier): Likewise. (dlang_value): Likewise. --001a1133c1ba9602a80515f2b687 Content-Type: text/x-diff; charset=US-ASCII; name="0002-D-demangle-Fail-early-on-bad-symbols.patch" Content-Disposition: attachment; filename="0002-D-demangle-Fail-early-on-bad-symbols.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_i9mhczow0 Content-length: 2501 RnJvbSBlOTgwNmExODJmODI5NmQ5MmE5OWQ4NDJlZGFiNmE0YzI5MTI0ZWIx IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBJYWluIEJ1Y2xhdyA8 aWJ1Y2xhd0BnZGNwcm9qZWN0Lm9yZz4KRGF0ZTogV2VkLCAxMyBNYXkgMjAx NSAwODo1MDo1NSArMDIwMApTdWJqZWN0OiBbUEFUQ0ggMi83XSBEIGRlbWFu Z2xlOiBGYWlsIGVhcmx5IG9uIGJhZCBzeW1ib2xzCgotLS0KIGxpYmliZXJ0 eS9kLWRlbWFuZ2xlLmMgfCAxMiArKysrKystLS0tLS0KIDEgZmlsZSBjaGFu Z2VkLCA2IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEvbGliaWJlcnR5L2QtZGVtYW5nbGUuYyBiL2xpYmliZXJ0eS9kLWRl bWFuZ2xlLmMKaW5kZXggZmEwMTc2Ny4uOTFjNmQ1NSAxMDA2NDQKLS0tIGEv bGliaWJlcnR5L2QtZGVtYW5nbGUuYworKysgYi9saWJpYmVydHkvZC1kZW1h bmdsZS5jCkBAIC0xODUsNyArMTg1LDcgQEAgc3RhdGljIGNvbnN0IGNoYXIg KgogZGxhbmdfY2FsbF9jb252ZW50aW9uIChzdHJpbmcgKmRlY2wsIGNvbnN0 IGNoYXIgKm1hbmdsZWQpCiB7CiAgIGlmIChtYW5nbGVkID09IE5VTEwgfHwg Km1hbmdsZWQgPT0gJ1wwJykKLSAgICByZXR1cm4gbWFuZ2xlZDsKKyAgICBy ZXR1cm4gTlVMTDsKIAogICBzd2l0Y2ggKCptYW5nbGVkKQogICAgIHsKQEAg LTIyMSw3ICsyMjEsNyBAQCBzdGF0aWMgY29uc3QgY2hhciAqCiBkbGFuZ19h dHRyaWJ1dGVzIChzdHJpbmcgKmRlY2wsIGNvbnN0IGNoYXIgKm1hbmdsZWQp CiB7CiAgIGlmIChtYW5nbGVkID09IE5VTEwgfHwgKm1hbmdsZWQgPT0gJ1ww JykKLSAgICByZXR1cm4gbWFuZ2xlZDsKKyAgICByZXR1cm4gTlVMTDsKIAog ICB3aGlsZSAoKm1hbmdsZWQgPT0gJ04nKQogICAgIHsKQEAgLTI4MCw3ICsy ODAsNyBAQCBkbGFuZ19mdW5jdGlvbl90eXBlIChzdHJpbmcgKmRlY2wsIGNv bnN0IGNoYXIgKm1hbmdsZWQpCiAgIHNpemVfdCBzemF0dHIsIHN6YXJncywg c3p0eXBlOwogCiAgIGlmIChtYW5nbGVkID09IE5VTEwgfHwgKm1hbmdsZWQg PT0gJ1wwJykKLSAgICByZXR1cm4gbWFuZ2xlZDsKKyAgICByZXR1cm4gTlVM TDsKIAogICAvKiBUaGUgb3JkZXIgb2YgdGhlIG1hbmdsZWQgc3RyaW5nIGlz OgogCUNhbGxDb252ZW50aW9uIEZ1bmNBdHRycyBBcmd1bWVudHMgQXJnQ2xv c2UgVHlwZQpAQCAtMzgwLDcgKzM4MCw3IEBAIHN0YXRpYyBjb25zdCBjaGFy ICoKIGRsYW5nX3R5cGUgKHN0cmluZyAqZGVjbCwgY29uc3QgY2hhciAqbWFu Z2xlZCkKIHsKICAgaWYgKG1hbmdsZWQgPT0gTlVMTCB8fCAqbWFuZ2xlZCA9 PSAnXDAnKQotICAgIHJldHVybiBtYW5nbGVkOworICAgIHJldHVybiBOVUxM OwogCiAgIHN3aXRjaCAoKm1hbmdsZWQpCiAgICAgewpAQCAtNjAwLDcgKzYw MCw3IEBAIHN0YXRpYyBjb25zdCBjaGFyICoKIGRsYW5nX2lkZW50aWZpZXIg KHN0cmluZyAqZGVjbCwgY29uc3QgY2hhciAqbWFuZ2xlZCkKIHsKICAgaWYg KG1hbmdsZWQgPT0gTlVMTCB8fCAqbWFuZ2xlZCA9PSAnXDAnKQotICAgIHJl dHVybiBtYW5nbGVkOworICAgIHJldHVybiBOVUxMOwogCiAgIGlmIChJU0RJ R0lUICgqbWFuZ2xlZCkpCiAgICAgewpAQCAtMTA2MSw3ICsxMDYxLDcgQEAg c3RhdGljIGNvbnN0IGNoYXIgKgogZGxhbmdfdmFsdWUgKHN0cmluZyAqZGVj bCwgY29uc3QgY2hhciAqbWFuZ2xlZCwgY29uc3QgY2hhciAqbmFtZSwgY2hh ciB0eXBlKQogewogICBpZiAobWFuZ2xlZCA9PSBOVUxMIHx8ICptYW5nbGVk ID09ICdcMCcpCi0gICAgcmV0dXJuIG1hbmdsZWQ7CisgICAgcmV0dXJuIE5V TEw7CiAKICAgc3dpdGNoICgqbWFuZ2xlZCkKICAgICB7Ci0tIAoyLjEuMAoK --001a1133c1ba9602a80515f2b687--