summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--src/conf.c2
-rw-r--r--src/html-error.c9
-rw-r--r--src/html-error.h3
3 files changed, 8 insertions, 6 deletions
diff --git a/src/conf.c b/src/conf.c
index bf2458f..0d164a6 100644
--- a/src/conf.c
+++ b/src/conf.c
@@ -815,7 +815,7 @@ static HANDLE_FUNC (handle_errorfile)
unsigned long int err = get_long_arg (line, &match[2]);
char *page = get_string_arg (line, &match[4]);
- add_new_errorpage (page, err);
+ add_new_errorpage (conf, page, err);
safefree (page);
return 0;
}
diff --git a/src/html-error.c b/src/html-error.c
index c94dbd7..d643aaa 100644
--- a/src/html-error.c
+++ b/src/html-error.c
@@ -37,17 +37,18 @@
#define ERRORNUM_BUFSIZE 8 /* this is more than required */
#define ERRPAGES_BUCKETCOUNT 16
-int add_new_errorpage (char *filepath, unsigned int errornum)
+int add_new_errorpage (struct config_s *conf, char *filepath,
+ unsigned int errornum)
{
char errornbuf[ERRORNUM_BUFSIZE];
- config->errorpages = hashmap_create (ERRPAGES_BUCKETCOUNT);
- if (!config->errorpages)
+ conf->errorpages = hashmap_create (ERRPAGES_BUCKETCOUNT);
+ if (!conf->errorpages)
return (-1);
snprintf (errornbuf, ERRORNUM_BUFSIZE, "%u", errornum);
- if (hashmap_insert (config->errorpages, errornbuf,
+ if (hashmap_insert (conf->errorpages, errornbuf,
filepath, strlen (filepath) + 1) < 0)
return (-1);
diff --git a/src/html-error.h b/src/html-error.h
index 03cec98..c133cef 100644
--- a/src/html-error.h
+++ b/src/html-error.h
@@ -23,8 +23,9 @@
/* Forward declaration */
struct conn_s;
+struct config_s;
-extern int add_new_errorpage (char *filepath, unsigned int errornum);
+extern int add_new_errorpage (struct config_s *, char *filepath, unsigned int errornum);
extern int send_http_error_message (struct conn_s *connptr);
extern int indicate_http_error (struct conn_s *connptr, int number,
const char *message, ...);