I searched my Linux box and saw this typedef:
typedef __time_t time_t;
But I could not find the __time_t definition.
__time_t
It's a 32-bit signed integer type on most legacy platforms. However, that causes your code to suffer from the year 2038 bug. So modern C libraries should be defining it to be a signed 64-bit int instead, which is safe for a few billion years.