Eric Blake wrote: > I'm seeking backup from those more knowledgeable about the C > and POSIX standards as to whether NSK is allowed to define SSIZE_MAX to > something smaller than what the underlying type can hold
I'm less knowledgeable than Paul, but I would say that 52*1024 is not an "appropriate" value for SSIZE_MAX. Because if you say that it is, then the sentence "{SSIZE_MAX} Maximum value of an object of type ssize_t." is void - the standard authors might then have defined SSIZE_MAX as "The maximum I/O transfer size" or "A value of type ssize_t". > and if so, whether it is worth auditing gnulib to find any places that have > previously assumed that SSIZE_MAX is ((1<<(sizeof(ssize_t)*CHAR_BIT - > 2))-1)*2+1. I bet that there are none: There are few enough APIs that use ssize_t. If Matthew doesn't like getline() to limit the result size to 52 KB, he can propose a patch. Bruno