4 ms·
The array length is zero in that code.
by JdeBP 10y ago
The array length is zero in that code.
- gpderetta 10y agowhich is irrelevant, as the null pointer passed to poll triggers UB before the length of the array enters into the picture.
- JdeBP 10y agoTo repeat: The NULL pointer is not the locus of the bug, and this was explained by the detailed discussion from the headlined article. The NULL pointer for the array base is passed to copyin() and copyout() without incident, and those are its only uses by poll().
- gpderetta 10y agoTo repeat: my point is that the test case shown in the article and described in the bug cannot be used to reliably identify a broken poll as passing NULL for fds is, strictly speaking, UB. I'm not making any claim about the actual source of the poll bug here.
- JdeBP 10y agoAt https://news.ycombinator.com/item?id=12689472 https://news.ycombinator.com/item?id=12689472 that's exactly what you stated, and you were wrong. The test case has a zero length array; that it what it is exercising; and that is the locus of the bug, as the headlined article's detailed discussion makes clear.