Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 24 Jul 2015 18:01:09 +0000
From:      "emaste (Ed Maste)" <phabric-noreply@FreeBSD.org>
To:        freebsd-toolchain@freebsd.org
Subject:   [Differential] [Closed] D2338: readelf: avoid division by zero for files with invalid sh_entsize
Message-ID:  <627afc60ec88d368400d3ad626d694d0@localhost.localdomain>
In-Reply-To: <differential-rev-PHID-DREV-qcsywqhy33xvasn2kx4a-req@FreeBSD.org>
References:  <differential-rev-PHID-DREV-qcsywqhy33xvasn2kx4a-req@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--b1_627afc60ec88d368400d3ad626d694d0
Content-Type: text/plain; charset = "utf-8"
Content-Transfer-Encoding: 8bit

This revision was automatically updated to reflect the committed changes.
Closed by commit rS285845: readelf: avoid division by zero on section entry size (authored by emaste).

CHANGED PRIOR TO COMMIT
  https://reviews.freebsd.org/D2338?vs=7069&id=7269#toc

REPOSITORY
  rS FreeBSD src repository

CHANGES SINCE LAST UPDATE
  https://reviews.freebsd.org/D2338?vs=7069&id=7269

REVISION DETAIL
  https://reviews.freebsd.org/D2338

AFFECTED FILES
  head/contrib/elftoolchain/readelf/readelf.c

EMAIL PREFERENCES
  https://reviews.freebsd.org/settings/panel/emailpreferences/

To: emaste, brooks
Cc: brooks, freebsd-toolchain-list

--b1_627afc60ec88d368400d3ad626d694d0
Content-Type: text/x-patch; charset=utf-8; name="D2338.7269.patch"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="D2338.7269.patch"

ZGlmZiAtLWdpdCBhL2hlYWQvY29udHJpYi9lbGZ0b29sY2hhaW4vcmVhZGVsZi9yZWFkZWxmLmMg
Yi9oZWFkL2NvbnRyaWIvZWxmdG9vbGNoYWluL3JlYWRlbGYvcmVhZGVsZi5jCi0tLSBhL2hlYWQv
Y29udHJpYi9lbGZ0b29sY2hhaW4vcmVhZGVsZi9yZWFkZWxmLmMKKysrIGIvaGVhZC9jb250cmli
L2VsZnRvb2xjaGFpbi9yZWFkZWxmL3JlYWRlbGYuYwpAQCAtMjcsNiArMjcsNyBAQAogI2luY2x1
ZGUgPHN5cy9wYXJhbS5oPgogI2luY2x1ZGUgPHN5cy9xdWV1ZS5oPgogI2luY2x1ZGUgPGFyLmg+
CisjaW5jbHVkZSA8YXNzZXJ0Lmg+CiAjaW5jbHVkZSA8Y3R5cGUuaD4KICNpbmNsdWRlIDxkd2Fy
Zi5oPgogI2luY2x1ZGUgPGVyci5oPgpAQCAtMzE0LDYgKzMxNSw3IEBACiBzdGF0aWMgY29uc3Qg
Y2hhciAqZHdhcmZfcmVnbmFtZShzdHJ1Y3QgcmVhZGVsZiAqcmUsIHVuc2lnbmVkIGludCBudW0p
Owogc3RhdGljIHN0cnVjdCBkdW1wb3AgKmZpbmRfZHVtcG9wKHN0cnVjdCByZWFkZWxmICpyZSwg
c2l6ZV90IHNpLAogICAgIGNvbnN0IGNoYXIgKnNuLCBpbnQgb3AsIGludCB0KTsKK3N0YXRpYyBp
bnQgZ2V0X2VudF9jb3VudChzdHJ1Y3Qgc2VjdGlvbiAqcywgaW50ICplbnRfY291bnQpOwogc3Rh
dGljIGNoYXIgKmdldF9yZWdvZmZfc3RyKHN0cnVjdCByZWFkZWxmICpyZSwgRHdhcmZfSGFsZiBy
ZWcsCiAgICAgRHdhcmZfQWRkciBvZmYpOwogc3RhdGljIGNvbnN0IGNoYXIgKmdldF9zdHJpbmco
c3RydWN0IHJlYWRlbGYgKnJlLCBpbnQgc3RydGFiLCBzaXplX3Qgb2ZmKTsKQEAgLTI5MDEsNiAr
MjkwMywyNCBAQAogI3VuZGVmCVNUX0NUTAogfQogCisvKgorICogUmV0dXJuIG51bWJlciBvZiBl
bnRyaWVzIGluIHRoZSBnaXZlbiBzZWN0aW9uLiBXZSdkIHByZWZlciBlbnRfY291bnQgYmUgYQor
ICogc2l6ZV90ICosIGJ1dCBsaWJlbGYgQVBJcyBhbHJlYWR5IHVzZSBpbnQgZm9yIHNlY3Rpb24g
aW5kaWNlcy4KKyAqLworc3RhdGljIGludAorZ2V0X2VudF9jb3VudChzdHJ1Y3Qgc2VjdGlvbiAq
cywgaW50ICplbnRfY291bnQpCit7CisJaWYgKHMtPmVudHNpemUgPT0gMCkgeworCQl3YXJueCgi
c2VjdGlvbiAlcyBoYXMgZW50cnkgc2l6ZSAwIiwgcy0+bmFtZSk7CisJCXJldHVybiAoMCk7CisJ
fSBlbHNlIGlmIChzLT5zeiAvIHMtPmVudHNpemUgPiBJTlRfTUFYKSB7CisJCXdhcm54KCJzZWN0
aW9uICVzIGhhcyBpbnZhbGlkIHNlY3Rpb24gY291bnQiLCBzLT5uYW1lKTsKKwkJcmV0dXJuICgw
KTsKKwl9CisJKmVudF9jb3VudCA9IChpbnQpKHMtPnN6IC8gcy0+ZW50c2l6ZSk7CisJcmV0dXJu
ICgxKTsKK30KKwogc3RhdGljIHZvaWQKIGR1bXBfZHluYW1pYyhzdHJ1Y3QgcmVhZGVsZiAqcmUp
CiB7CkBAIC0yOTI5LDggKzI5NDksOCBAQAogCiAJCS8qIERldGVybWluZSB0aGUgYWN0dWFsIG51
bWJlciBvZiB0YWJsZSBlbnRyaWVzLiAqLwogCQluZW50cmllcyA9IDA7Ci0JCWptYXggPSAoaW50
KSAocy0+c3ogLyBzLT5lbnRzaXplKTsKLQorCQlpZiAoIWdldF9lbnRfY291bnQocywgJmptYXgp
KQorCQkJY29udGludWU7CiAJCWZvciAoaiA9IDA7IGogPCBqbWF4OyBqKyspIHsKIAkJCWlmIChn
ZWxmX2dldGR5bihkLCBqLCAmZHluKSAhPSAmZHluKSB7CiAJCQkJd2FybngoImdlbGZfZ2V0ZHlu
IGZhaWxlZDogJXMiLApAQCAtMzE3Niw3ICszMTk2LDkgQEAKIAkJZWxzZQogCQkJcHJpbnRmKCIl
LTEycyAlLTEycyAlLTE5cyAlLTE2cyAlc1xuIiwgUkVMX0hEUik7CiAJfQotCWxlbiA9IGQtPmRf
c2l6ZSAvIHMtPmVudHNpemU7CisJYXNzZXJ0KGQtPmRfc2l6ZSA9PSBzLT5zeik7CisJaWYgKCFn
ZXRfZW50X2NvdW50KHMsICZsZW4pKQorCQlyZXR1cm47CiAJZm9yIChpID0gMDsgaSA8IGxlbjsg
aSsrKSB7CiAJCWlmIChnZWxmX2dldHJlbChkLCBpLCAmcikgIT0gJnIpIHsKIAkJCXdhcm54KCJn
ZWxmX2dldHJlbCBmYWlsZWQ6ICVzIiwgZWxmX2Vycm1zZygtMSkpOwpAQCAtMzIzMiw3ICszMjU0
LDkgQEAKIAkJZWxzZQogCQkJcHJpbnRmKCIlLTEycyAlLTEycyAlLTE5cyAlLTE2cyAlc1xuIiwg
UkVMQV9IRFIpOwogCX0KLQlsZW4gPSBkLT5kX3NpemUgLyBzLT5lbnRzaXplOworCWFzc2VydChk
LT5kX3NpemUgPT0gcy0+c3opOworCWlmICghZ2V0X2VudF9jb3VudChzLCAmbGVuKSkKKwkJcmV0
dXJuOwogCWZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykgewogCQlpZiAoZ2VsZl9nZXRyZWxhKGQs
IGksICZyKSAhPSAmcikgewogCQkJd2FybngoImdlbGZfZ2V0cmVsIGZhaWxlZDogJXMiLCBlbGZf
ZXJybXNnKC0xKSk7CkBAIC0zMjk3LDcgKzMzMjEsNyBAQAogCUVsZl9EYXRhICpkOwogCUdFbGZf
U3ltIHN5bTsKIAljb25zdCBjaGFyICpuYW1lOwotCWludCBlbGZlcnIsIHN0YWIsIGo7CisJaW50
IGVsZmVyciwgc3RhYiwgaiwgbGVuOwogCiAJcyA9ICZyZS0+c2xbaV07CiAJc3RhYiA9IHMtPmxp
bms7CkBAIC0zMzEwLDEyICszMzM0LDE0IEBACiAJfQogCWlmIChkLT5kX3NpemUgPD0gMCkKIAkJ
cmV0dXJuOworCWlmICghZ2V0X2VudF9jb3VudChzLCAmbGVuKSkKKwkJcmV0dXJuOwogCXByaW50
ZigiU3ltYm9sIHRhYmxlICglcykiLCBzLT5uYW1lKTsKLQlwcmludGYoIiBjb250YWlucyAlanUg
ZW50cmllczpcbiIsIHMtPnN6IC8gcy0+ZW50c2l6ZSk7CisJcHJpbnRmKCIgY29udGFpbnMgJWQg
ZW50cmllczpcbiIsIGxlbik7CiAJcHJpbnRmKCIlN3MlOXMlMTRzJTVzJThzJTZzJTlzJTVzXG4i
LCAiTnVtOiIsICJWYWx1ZSIsICJTaXplIiwgIlR5cGUiLAogCSAgICAiQmluZCIsICJWaXMiLCAi
TmR4IiwgIk5hbWUiKTsKIAotCWZvciAoaiA9IDA7ICh1aW50NjRfdClqIDwgcy0+c3ogLyBzLT5l
bnRzaXplOyBqKyspIHsKKwlmb3IgKGogPSAwOyBqIDwgbGVuOyBqKyspIHsKIAkJaWYgKGdlbGZf
Z2V0c3ltKGQsIGosICZzeW0pICE9ICZzeW0pIHsKIAkJCXdhcm54KCJnZWxmX2dldHN5bSBmYWls
ZWQ6ICVzIiwgZWxmX2Vycm1zZygtMSkpOwogCQkJY29udGludWU7CkBAIC0zMzUzLDcgKzMzNzks
NyBAQAogCUVsZl9EYXRhICpkOwogCXN0cnVjdCBzZWN0aW9uICpzOwogCXVpbnQ2NF90IGR5bl9v
ZmY7Ci0JaW50IGVsZmVyciwgaTsKKwlpbnQgZWxmZXJyLCBpLCBsZW47CiAKIAkvKgogCSAqIElm
IC1EIGlzIHNwZWNpZmllZCwgb25seSBkdW1wIHRoZSBzeW1ib2wgdGFibGUgc3BlY2lmaWVkIGJ5
CkBAIC0zMzc4LDggKzM0MDQsMTAgQEAKIAkJfQogCQlpZiAoZC0+ZF9zaXplIDw9IDApCiAJCQly
ZXR1cm47CisJCWlmICghZ2V0X2VudF9jb3VudChzLCAmbGVuKSkKKwkJCXJldHVybjsKIAotCQlm
b3IgKGkgPSAwOyAodWludDY0X3QpaSA8IHMtPnN6IC8gcy0+ZW50c2l6ZTsgaSsrKSB7CisJCWZv
ciAoaSA9IDA7IGkgPCBsZW47IGkrKykgewogCQkJaWYgKGdlbGZfZ2V0ZHluKGQsIGksICZkeW4p
ICE9ICZkeW4pIHsKIAkJCQl3YXJueCgiZ2VsZl9nZXRkeW4gZmFpbGVkOiAlcyIsIGVsZl9lcnJt
c2coLTEpKTsKIAkJCQljb250aW51ZTsKQEAgLTM1NjcsNyArMzU5NSw4IEBACiAJbWFza3dvcmRz
ID0gYnVmWzJdOwogCWJ1ZiArPSA0OwogCWRzID0gJnJlLT5zbFtzLT5saW5rXTsKLQlkeW5zeW1j
b3VudCA9IGRzLT5zeiAvIGRzLT5lbnRzaXplOworCWlmICghZ2V0X2VudF9jb3VudChkcywgJmR5
bnN5bWNvdW50KSkKKwkJcmV0dXJuOwogCW5jaGFpbiA9IGR5bnN5bWNvdW50IC0gc3ltbmR4Owog
CWlmIChkLT5kX3NpemUgIT0gNCAqIHNpemVvZih1aW50MzJfdCkgKyBtYXNrd29yZHMgKgogCSAg
ICAocmUtPmVjID09IEVMRkNMQVNTMzIgPyBzaXplb2YodWludDMyX3QpIDogc2l6ZW9mKHVpbnQ2
NF90KSkgKwpAQCAtMzk5Niw3ICs0MDI1LDcgQEAKIAljaGFyIHRidWZbMjBdOwogCUVsZl9EYXRh
ICpkOwogCUVsZl9MaWIgKmxpYjsKLQlpbnQgaSwgaiwgaywgZWxmZXJyLCBmaXJzdDsKKwlpbnQg
aSwgaiwgaywgZWxmZXJyLCBmaXJzdCwgbGVuOwogCiAJZm9yIChpID0gMDsgKHNpemVfdCkgaSA8
IHJlLT5zaG51bTsgaSsrKSB7CiAJCXMgPSAmcmUtPnNsW2ldOwpAQCAtNDAxMyw4ICs0MDQyLDEw
IEBACiAJCWlmIChkLT5kX3NpemUgPD0gMCkKIAkJCWNvbnRpbnVlOwogCQlsaWIgPSBkLT5kX2J1
ZjsKKwkJaWYgKCFnZXRfZW50X2NvdW50KHMsICZsZW4pKQorCQkJY29udGludWU7CiAJCXByaW50
ZigiXG5MaWJyYXJ5IGxpc3Qgc2VjdGlvbiAnJXMnICIsIHMtPm5hbWUpOwotCQlwcmludGYoImNv
bnRhaW5zICVqdSBlbnRyaWVzOlxuIiwgcy0+c3ogLyBzLT5lbnRzaXplKTsKKwkJcHJpbnRmKCJj
b250YWlucyAlZCBlbnRyaWVzOlxuIiwgbGVuKTsKIAkJcHJpbnRmKCIlMTJzJTI0cyUxOHMlMTBz
JTZzXG4iLCAiTGlicmFyeSIsICJUaW1lIFN0YW1wIiwKIAkJICAgICJDaGVja3N1bSIsICJWZXJz
aW9uIiwgIkZsYWdzIik7CiAJCWZvciAoaiA9IDA7ICh1aW50NjRfdCkgaiA8IHMtPnN6IC8gcy0+
ZW50c2l6ZTsgaisrKSB7CkBAIC00Mzk5LDcgKzQ0MzAsNyBAQAogZHVtcF9taXBzX3JlZ2luZm8o
c3RydWN0IHJlYWRlbGYgKnJlLCBzdHJ1Y3Qgc2VjdGlvbiAqcykKIHsKIAlFbGZfRGF0YSAqZDsK
LQlpbnQgZWxmZXJyOworCWludCBlbGZlcnIsIGxlbjsKIAogCSh2b2lkKSBlbGZfZXJybm8oKTsK
IAlpZiAoKGQgPSBlbGZfcmF3ZGF0YShzLT5zY24sIE5VTEwpKSA9PSBOVUxMKSB7CkBAIC00NDEx
LDkgKzQ0NDIsMTAgQEAKIAl9CiAJaWYgKGQtPmRfc2l6ZSA8PSAwKQogCQlyZXR1cm47CisJaWYg
KCFnZXRfZW50X2NvdW50KHMsICZsZW4pKQorCQlyZXR1cm47CiAKLQlwcmludGYoIlxuU2VjdGlv
biAnJXMnIGNvbnRhaW5zICVqdSBlbnRyaWVzOlxuIiwgcy0+bmFtZSwKLQkgICAgcy0+c3ogLyBz
LT5lbnRzaXplKTsKKwlwcmludGYoIlxuU2VjdGlvbiAnJXMnIGNvbnRhaW5zICVkIGVudHJpZXM6
XG4iLCBzLT5uYW1lLCBsZW4pOwogCWR1bXBfbWlwc19vZGtfcmVnaW5mbyhyZSwgZC0+ZF9idWYs
IGQtPmRfc2l6ZSk7CiB9CiAKCg==


--b1_627afc60ec88d368400d3ad626d694d0--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?627afc60ec88d368400d3ad626d694d0>