X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=drivers%2Fof%2Fresolver.c;h=0e9f87703bbac8294c8d88a9eb6a07ee47f1098e;hb=f3a61f8f42707e771c27ae2bd0c074d10752d3e5;hp=cfaeef5f6cb1c2c360d53d300bd61baaf0b867f3;hpb=e1d1ea549b57790a3d8cf6300e6ef86118d692a3;p=mirror_ubuntu-bionic-kernel.git diff --git a/drivers/of/resolver.c b/drivers/of/resolver.c index cfaeef5f6cb1..0e9f87703bba 100644 --- a/drivers/of/resolver.c +++ b/drivers/of/resolver.c @@ -128,6 +128,11 @@ static int update_usages_of_a_phandle_reference(struct device_node *overlay, goto err_fail; } + if (offset < 0 || offset + sizeof(__be32) > prop->length) { + err = -EINVAL; + goto err_fail; + } + *(__be32 *)(prop->value + offset) = cpu_to_be32(phandle); }