mirror of
https://github.com/torvalds/linux.git
synced 2026-06-08 14:42:37 +02:00
ANDROID: proc: fix undefined behavior in proc_uid_base_readdir
When uid_base_stuff has no entries, proc_uid_base_readdir tries to compute an address before the start of the array. Revise this check to use uid_base_stuff + nents instead, which makes the code valid regardless of array size. Bug: 80158484 Test: No more compiler warning with CONFIG_CPU_FREQ_TIMES=n Change-Id: I6e55b27c3ba8210cee194f6d27bbd62c0b263796 Signed-off-by: Connor O'Brien <connoro@google.com>
This commit is contained in:
parent
6db26ed97b
commit
c1ef5eec3f
|
|
@ -174,7 +174,7 @@ static int proc_uid_base_readdir(struct file *file, struct dir_context *ctx)
|
|||
return 0;
|
||||
|
||||
for (u = uid_base_stuff + (ctx->pos - 2);
|
||||
u <= uid_base_stuff + nents - 1; u++) {
|
||||
u < uid_base_stuff + nents; u++) {
|
||||
if (!proc_fill_cache(file, ctx, u->name, u->len,
|
||||
proc_uident_instantiate, NULL, u))
|
||||
break;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user