According to the book Advanced Programming in the Unix Environment :-The character l in the name lseek means long integer. Before the introduction of the off_t data type, the offset argument and the return value were long integers. lseek was introduced with Version 7 when long integers were added to C. (Similar functionality was provided in Version 6 by the functions seek and tell.)We know that there is a limit on the value of file descriptors.That value lies in the range 0-OPEN_MAX-1.So,if earlier versions use long integer for file descriptors ,then this could mean that the maximum number of files which can be opened per process must vary according to the system word format(32 bit or 64 bit),and this means that the number of available file descriptors could be of the order of 10^18.Am I right?
What was the reason for lseek function to return file descriptors as long integer?
c;programming;historical unix