OSDN Git Service

cap getdents length argument to INT_MAX
authorRich Felker <dalias@aerifal.cx>
Fri, 28 Jun 2019 21:58:03 +0000 (17:58 -0400)
committerRich Felker <dalias@aerifal.cx>
Fri, 28 Jun 2019 21:58:03 +0000 (17:58 -0400)
commit3d178a7e2b75066593fbd5705742c5808395d90d
treeda5f36fbd4c0508a62eca103c77bf2db7b15e15b
parent54b7564b72c1edcc79fca083047521fb56eaea00
cap getdents length argument to INT_MAX

the linux syscall treats this argument as having type int, so passing
extremely long buffer sizes would be misinterpreted by the kernel.
since "short reads" are always acceptable, just cap it down.

patch based on report and suggested change by Florian Weimer.
src/linux/getdents.c