Na origem do encerramento, é utilizado um int
para o tempo de espera, portanto, em uma máquina típica, o limite superior é 2147483647
minutos, ou seja, 4083
anos a partir de agora.
Aqui estão as partes relevantes da fonte:
int main(int argc, char **argv)
{
...
int c, i, wt;
...
if (strchr(when, ':') == NULL) {
/* Time in minutes. */
wt = atoi(when);
if (wt == 0 && when[0] != '0') usage();
} else {
...
}
...
/* Give warnings on regular intervals and finally shutdown. */
if (wt < 15 && !needwarning(wt)) warn(wt);
while(wt) {
if (wt <= 5 && !didnolog) {
donologin(wt);
didnolog++;
}
if (needwarning(wt)) warn(wt);
hardsleep(60);
wt--;
}
shutdown(halttype);
return 0; /* Never happens */
}