version 1.94, 2014/08/17 03:24:47 |
version 1.95, 2014/08/21 16:05:21 |
|
|
#include "config.h" |
#include "config.h" |
|
|
#include <sys/types.h> |
#include <sys/types.h> |
|
#include <sys/time.h> |
|
|
#include <ctype.h> |
#include <ctype.h> |
#include <errno.h> |
#include <errno.h> |
|
|
main(void) |
main(void) |
{ |
{ |
struct req req; |
struct req req; |
|
struct itimerval itimer; |
const char *path; |
const char *path; |
const char *querystring; |
const char *querystring; |
int i; |
int i; |
|
|
|
/* Poor man's ReDoS mitigation. */ |
|
|
|
itimer.it_value.tv_sec = 1; |
|
itimer.it_value.tv_usec = 0; |
|
itimer.it_interval.tv_sec = 1; |
|
itimer.it_interval.tv_usec = 0; |
|
if (setitimer(ITIMER_VIRTUAL, &itimer, NULL) == -1) { |
|
fprintf(stderr, "setitimer: %s\n", strerror(errno)); |
|
pg_error_internal(); |
|
return(EXIT_FAILURE); |
|
} |
|
|
/* Scan our run-time environment. */ |
/* Scan our run-time environment. */ |
|
|