CVE-2025-40030
Full vulnerability record from the local CVENow database.
Description
In the Linux kernel, the following vulnerability has been resolved: pinctrl: check the return value of pinmux_ops::get_function_name() While the API contract in docs doesn't specify it explicitly, the generic implementation of the get_function_name() callback from struct pinmux_ops - pinmux_generic_get_function_name() - can fail and return NULL. This is already checked in pinmux_check_ops() so add a similar check in pinmux_func_name_to_selector() instead of passing the returned pointer right down to strcmp() where the NULL can get dereferenced. This is normal operation when adding new pinfunctions.
Severity
Not scored
CVSS score
Not available
Vulnerability status
Deferred
Source identifier
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Published
2025-10-28 12:15:36.757000
Last modified
2026-10-19 21:10:00.160000
View original CVE JSON
{
"id": "CVE-2025-40030",
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"published": "2025-10-28T12:15:36.757",
"lastModified": "2026-10-19T21:10:00.160",
"vulnStatus": "Deferred",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\npinctrl: check the return value of pinmux_ops::get_function_name()\n\nWhile the API contract in docs doesn't specify it explicitly, the\ngeneric implementation of the get_function_name() callback from struct\npinmux_ops - pinmux_generic_get_function_name() - can fail and return\nNULL. This is already checked in pinmux_check_ops() so add a similar\ncheck in pinmux_func_name_to_selector() instead of passing the returned\npointer right down to strcmp() where the NULL can get dereferenced. This\nis normal operation when adding new pinfunctions."
},
{
"lang": "es",
"value": "En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta:\n\npinctrl: verificar el valor de retorno de pinmux_ops::get_function_name()\n\nSi bien el contrato de la API en la documentación no lo especifica explícitamente, la implementación genérica de la función de callback get_function_name() de la estructura pinmux_ops - pinmux_generic_get_function_name() - puede fallar y devolver NULL. Esto ya se verifica en pinmux_check_ops(), así que se añade una verificación similar en pinmux_func_name_to_selector() en lugar de pasar el puntero devuelto directamente a strcmp() donde el NULL puede ser desreferenciado. Esta es una operación normal al añadir nuevas pinfunctions."
}
],
"affected": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"affectedData": [
{
"vendor": "Linux",
"product": "Linux",
"defaultStatus": "unaffected",
"programFiles": [
"drivers/pinctrl/pinmux.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"versions": [
{
"version": "f913cfce4ee49a3382a9ff95696f49a46e56e974",
"lessThan": "1a7fc8fed2bb2e113604fde7a45432ace2056b97",
"versionType": "git",
"status": "affected"
},
{
"version": "f913cfce4ee49a3382a9ff95696f49a46e56e974",
"lessThan": "e7265dc4c670b89611bcf5fe33acf99bc0aa294f",
"versionType": "git",
"status": "affected"
},
{
"version": "f913cfce4ee49a3382a9ff95696f49a46e56e974",
"lessThan": "d77ef2f621cd1d605372c4c6ce667c496f6990c3",
"versionType": "git",
"status": "affected"
},
{
"version": "f913cfce4ee49a3382a9ff95696f49a46e56e974",
"lessThan": "ba7f7c2b2b3261e7def67018c38c69b626e0e66e",
"versionType": "git",
"status": "affected"
},
{
"version": "f913cfce4ee49a3382a9ff95696f49a46e56e974",
"lessThan": "1a2ea887a5cd7d47bab599f733d89444df018b1a",
"versionType": "git",
"status": "affected"
},
{
"version": "f913cfce4ee49a3382a9ff95696f49a46e56e974",
"lessThan": "688c688e0bf55824f4a38f8c2180046f089a3e3b",
"versionType": "git",
"status": "affected"
},
{
"version": "f913cfce4ee49a3382a9ff95696f49a46e56e974",
"lessThan": "b7e0535060a60cc99eafc19cc665d979714cd73a",
"versionType": "git",
"status": "affected"
},
{
"version": "f913cfce4ee49a3382a9ff95696f49a46e56e974",
"lessThan": "4002ee98c022d671ecc1e4a84029e9ae7d8a5603",
"versionType": "git",
"status": "affected"
}
]
},
{
"vendor": "Linux",
"product": "Linux",
"defaultStatus": "affected",
"programFiles": [
"drivers/pinctrl/pinmux.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"versions": [
{
"version": "4.19",
"status": "affected"
},
{
"version": "0",
"lessThan": "4.19",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "5.4.301",
"lessThanOrEqual": "5.4.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "5.10.246",
"lessThanOrEqual": "5.10.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "5.15.195",
"lessThanOrEqual": "5.15.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.1.156",
"lessThanOrEqual": "6.1.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.6.112",
"lessThanOrEqual": "6.6.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.12.53",
"lessThanOrEqual": "6.12.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.17.3",
"lessThanOrEqual": "6.17.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.18",
"lessThanOrEqual": "*",
"versionType": "original_commit_for_fix",
"status": "unaffected"
}
]
}
]
}
],
"metrics": {},
"references": [
{
"url": "https://git.kernel.org/stable/c/1a2ea887a5cd7d47bab599f733d89444df018b1a",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/1a7fc8fed2bb2e113604fde7a45432ace2056b97",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/4002ee98c022d671ecc1e4a84029e9ae7d8a5603",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/688c688e0bf55824f4a38f8c2180046f089a3e3b",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/b7e0535060a60cc99eafc19cc665d979714cd73a",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/ba7f7c2b2b3261e7def67018c38c69b626e0e66e",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/d77ef2f621cd1d605372c4c6ce667c496f6990c3",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/e7265dc4c670b89611bcf5fe33acf99bc0aa294f",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
]
}