mirror of
https://github.com/espressif/esp-idf
synced 2025-03-09 17:19:09 -04:00
feat(https_server): Added checks to verify if uri is empty
Added the checks if the URI is empty for the funtions httpd_req_get_url_query_len and httpd_req_get_url_query_str in httpd_parser.c
This commit is contained in:
parent
098ecb1cf1
commit
f96a118ebf
@ -964,7 +964,7 @@ esp_err_t httpd_req_get_hdr_value_str(httpd_req_t *r, const char *field, char *v
|
|||||||
*
|
*
|
||||||
* @return
|
* @return
|
||||||
* - Length : Query is found in the request URL
|
* - Length : Query is found in the request URL
|
||||||
* - Zero : Query not found / Null arguments / Invalid request
|
* - Zero : Query not found / Null arguments / Invalid request / uri is empty
|
||||||
*/
|
*/
|
||||||
size_t httpd_req_get_url_query_len(httpd_req_t *r);
|
size_t httpd_req_get_url_query_len(httpd_req_t *r);
|
||||||
|
|
||||||
@ -992,6 +992,7 @@ size_t httpd_req_get_url_query_len(httpd_req_t *r);
|
|||||||
*
|
*
|
||||||
* @return
|
* @return
|
||||||
* - ESP_OK : Query is found in the request URL and copied to buffer
|
* - ESP_OK : Query is found in the request URL and copied to buffer
|
||||||
|
* - ESP_FAIL : uri is empty
|
||||||
* - ESP_ERR_NOT_FOUND : Query not found
|
* - ESP_ERR_NOT_FOUND : Query not found
|
||||||
* - ESP_ERR_INVALID_ARG : Null arguments
|
* - ESP_ERR_INVALID_ARG : Null arguments
|
||||||
* - ESP_ERR_HTTPD_INVALID_REQ : Invalid HTTP request pointer
|
* - ESP_ERR_HTTPD_INVALID_REQ : Invalid HTTP request pointer
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* SPDX-FileCopyrightText: 2018-2024 Espressif Systems (Shanghai) CO LTD
|
* SPDX-FileCopyrightText: 2018-2025 Espressif Systems (Shanghai) CO LTD
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
*/
|
*/
|
||||||
@ -916,6 +916,11 @@ size_t httpd_req_get_url_query_len(httpd_req_t *r)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (r->uri[0] == '\0') {
|
||||||
|
ESP_LOGD(TAG, "uri is empty");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
struct httpd_req_aux *ra = r->aux;
|
struct httpd_req_aux *ra = r->aux;
|
||||||
struct http_parser_url *res = &ra->url_parse_res;
|
struct http_parser_url *res = &ra->url_parse_res;
|
||||||
|
|
||||||
@ -936,6 +941,11 @@ esp_err_t httpd_req_get_url_query_str(httpd_req_t *r, char *buf, size_t buf_len)
|
|||||||
return ESP_ERR_HTTPD_INVALID_REQ;
|
return ESP_ERR_HTTPD_INVALID_REQ;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (r->uri[0] == '\0') {
|
||||||
|
ESP_LOGD(TAG, "uri is empty");
|
||||||
|
return ESP_FAIL;
|
||||||
|
}
|
||||||
|
|
||||||
struct httpd_req_aux *ra = r->aux;
|
struct httpd_req_aux *ra = r->aux;
|
||||||
struct http_parser_url *res = &ra->url_parse_res;
|
struct http_parser_url *res = &ra->url_parse_res;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user