Message ID | 1449734374-23041-1-git-send-email-tklauser@distanz.ch (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Herbert Xu |
Headers | show |
On Thu, Dec 10, 2015 at 08:59:34AM +0100, Tobias Klauser wrote: > If job %0 is (mistakenly) specified, an out-of-bounds access to the > jobtab occurs in function getjob() if num = 0: > > jp = jobtab + 0 - 1 > > Fix this by checking that the job number is larger than 0 before > accessing the jobtab. > > Signed-off-by: Tobias Klauser <tklauser@distanz.ch> Patch applied. Thanks!
diff --git a/src/jobs.c b/src/jobs.c index c2c2332a25fa..39978635d891 100644 --- a/src/jobs.c +++ b/src/jobs.c @@ -699,7 +699,7 @@ check: if (is_number(p)) { num = atoi(p); - if (num <= njobs) { + if (num > 0 && num <= njobs) { jp = jobtab + num - 1; if (jp->used) goto gotit;
If job %0 is (mistakenly) specified, an out-of-bounds access to the jobtab occurs in function getjob() if num = 0: jp = jobtab + 0 - 1 Fix this by checking that the job number is larger than 0 before accessing the jobtab. Signed-off-by: Tobias Klauser <tklauser@distanz.ch> --- src/jobs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)