/* read startup packet length */
if (pool_read(cp, &len, sizeof(len)))
{
+ alarm(0);
pool_signal(SIGALRM, SIG_IGN);
return NULL;
}
{
pool_error("read_startup_packet: invalid startup packet");
pool_free_startup_packet(sp);
+ alarm(0);
pool_signal(SIGALRM, SIG_IGN);
return NULL;
}
{
pool_error("read_startup_packet: out of memory");
pool_free_startup_packet(sp);
+ alarm(0);
pool_signal(SIGALRM, SIG_IGN);
return NULL;
}
if (pool_read(cp, sp->startup_packet, len))
{
pool_free_startup_packet(sp);
+ alarm(0);
pool_signal(SIGALRM, SIG_IGN);
return NULL;
}
{
pool_error("read_startup_packet: out of memory");
pool_free_startup_packet(sp);
+ alarm(0);
pool_signal(SIGALRM, SIG_IGN);
return NULL;
}
{
pool_error("read_startup_packet: out of memory");
pool_free_startup_packet(sp);
+ alarm(0);
pool_signal(SIGALRM, SIG_IGN);
return NULL;
}
{
pool_error("read_startup_packet: out of memory");
pool_free_startup_packet(sp);
+ alarm(0);
pool_signal(SIGALRM, SIG_IGN);
return NULL;
}
{
pool_error("read_startup_packet: out of memory");
pool_free_startup_packet(sp);
+ alarm(0);
pool_signal(SIGALRM, SIG_IGN);
return NULL;
}
{
pool_error("read_startup_packet: out of memory");
pool_free_startup_packet(sp);
+ alarm(0);
pool_signal(SIGALRM, SIG_IGN);
return NULL;
}
{
pool_error("read_startup_packet: out of memory");
pool_free_startup_packet(sp);
+ alarm(0);
pool_signal(SIGALRM, SIG_IGN);
return NULL;
}
default:
pool_error("read_startup_packet: invalid major no: %d", sp->major);
pool_free_startup_packet(sp);
+ alarm(0);
+ pool_signal(SIGALRM, SIG_IGN);
return NULL;
}
pool_debug("Protocol Major: %d Minor: %d database: %s user: %s",
sp->major, sp->minor, sp->database, sp->user);
+ alarm(0);
pool_signal(SIGALRM, SIG_IGN);
return sp;
}