If bus->state is equal to MDIOBUS_ALLOCATED, mdiobus_free(bus) will free
the "bus". But bus->name is still used in the next line, which will lead
to a use after free.
We can fix it by putting the name in a local variable and make the
bus->name point to the rodata section "name",then use the name in the
error message without referring to bus to avoid the uaf.
Fixes:
|
||
|---|---|---|
| .. | ||
| emac_arc.c | ||
| emac_main.c | ||
| emac_mdio.c | ||
| emac_rockchip.c | ||
| emac.h | ||
| Kconfig | ||
| Makefile | ||