diff --git a/src/civetweb.c b/src/civetweb.c index 21e5aa7c..028bda79 100755 --- a/src/civetweb.c +++ b/src/civetweb.c @@ -3827,11 +3827,12 @@ interpret_uri(struct mg_connection *conn, /* in: request */ int *is_put_or_delete_request /* out: put/delete a file? */ ) { + /* TODO: Restructure this function */ if (conn && conn->ctx) { - const char *uri = conn->request_info.uri; - const char *root = conn->ctx->config[DOCUMENT_ROOT]; #if !defined(NO_FILES) + const char *uri = conn->request_info.uri; + const char *root = conn->ctx->config[DOCUMENT_ROOT]; const char *rewrite; struct vec a, b; char *p; @@ -3839,6 +3840,8 @@ interpret_uri(struct mg_connection *conn, /* in: request */ char gz_path[PATH_MAX]; char const *accept_encoding; int truncated; +#else + (void)filename_buf_len; /* unused if NO_FILES is defined */ #endif memset(filep, 0, sizeof(*filep)); @@ -3849,12 +3852,14 @@ interpret_uri(struct mg_connection *conn, /* in: request */ #if defined(USE_WEBSOCKET) *is_websocket_request = is_websocket_protocol(conn); +#if !defined(NO_FILES) if (*is_websocket_request && conn->ctx->config[WEBSOCKET_ROOT]) { root = conn->ctx->config[WEBSOCKET_ROOT]; } -#else +#endif /* !NO_FILES */ +#else /* USE_WEBSOCKET */ *is_websocket_request = 0; -#endif +#endif /* USE_WEBSOCKET */ #if !defined(NO_FILES) /* Note that root == NULL is a regular use case here. This occurs, @@ -4004,12 +4009,14 @@ interpret_uri(struct mg_connection *conn, /* in: request */ } return; +#if !defined(NO_FILES) /* Reset all outputs */ interpret_cleanup: memset(filep, 0, sizeof(*filep)); *filename = 0; *is_found = 0; *is_script_ressource = 0; +#endif } /* Check whether full request is buffered. Return: @@ -5817,6 +5824,7 @@ static int read_request( return (request_len <= 0 && n <= 0) ? -1 : request_len; } +#if !defined(NO_FILES) /* For given directory path, substitute it to valid index file. * Return 1 if index file has been found, 0 if not found. * If the file is found, it's stats is returned in stp. */ @@ -5884,6 +5892,7 @@ static int is_not_modified(const struct mg_connection *conn, return (inm != NULL && !mg_strcasecmp(etag, inm)) || (ims != NULL && (filep->last_modified <= parse_date_string(ims))); } +#endif static int forward_body_data(struct mg_connection *conn, FILE *fp, SOCKET sock, SSL *ssl) @@ -6434,6 +6443,7 @@ static int put_dir(struct mg_connection *conn, const char *path) return res; } +#if !defined(NO_FILES) static void mkcol(struct mg_connection *conn, const char *path) { int rc, body_len; @@ -7048,6 +7058,7 @@ static void handle_propfind(struct mg_connection *conn, conn->num_bytes_sent += mg_printf(conn, "%s\n", ""); } +#endif void mg_lock_connection(struct mg_connection *conn) { @@ -8261,8 +8272,7 @@ static void handle_request(struct mg_connection *conn) int is_found = 0, is_script_resource = 0, is_websocket_request = 0, is_put_or_delete_request = 0, is_callback_resource = 0; int i; - struct file file = STRUCT_FILE_INITIALIZER; - time_t curtime = time(NULL); + struct file file = STRUCT_FILE_INITIALIZER; mg_request_handler callback_handler = NULL; mg_websocket_connect_handler ws_connect_handler = NULL; mg_websocket_ready_handler ws_ready_handler = NULL; @@ -8270,6 +8280,7 @@ static void handle_request(struct mg_connection *conn) mg_websocket_close_handler ws_close_handler = NULL; void *callback_data = NULL; #if !defined(NO_FILES) + time_t curtime = time(NULL); char date[64]; #endif