From 009a15c7d0228181c75e6c10ddc440bfcb478190 Mon Sep 17 00:00:00 2001 From: Serge Tupchii Date: Wed, 29 Nov 2023 12:12:42 +0200 Subject: [PATCH] fix(emqx_mgmt_api_data_backup): validate empty file in upload API fixes EMQX-11488 --- apps/emqx_management/src/emqx_mgmt_api_data_backup.erl | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/apps/emqx_management/src/emqx_mgmt_api_data_backup.erl b/apps/emqx_management/src/emqx_mgmt_api_data_backup.erl index 4cd7d404e..7cd151b08 100644 --- a/apps/emqx_management/src/emqx_mgmt_api_data_backup.erl +++ b/apps/emqx_management/src/emqx_mgmt_api_data_backup.erl @@ -204,7 +204,7 @@ data_export(post, _Request) -> data_import(post, #{body := #{<<"filename">> := FileName} = Body}) -> case safe_parse_node(Body) of {error, Msg} -> - {400, #{code => 'BAD_REQUEST', message => Msg}}; + {400, #{code => ?BAD_REQUEST, message => Msg}}; FileNode -> CoreNode = core_node(FileNode), response( @@ -231,8 +231,10 @@ data_files(post, #{body := #{<<"filename">> := #{type := _} = File}}) -> ok -> {204}; {error, Reason} -> - {400, #{code => 'BAD_REQUEST', message => emqx_mgmt_data_backup:format_error(Reason)}} + {400, #{code => ?BAD_REQUEST, message => emqx_mgmt_data_backup:format_error(Reason)}} end; +data_files(post, #{body := _}) -> + {400, #{code => ?BAD_REQUEST, message => "Missing required parameter: filename"}}; data_files(get, #{query_string := PageParams}) -> case emqx_mgmt_api:parse_pager_params(PageParams) of false -> @@ -244,7 +246,7 @@ data_files(get, #{query_string := PageParams}) -> data_file_by_name(Method, #{bindings := #{filename := Filename}, query_string := QS}) -> case safe_parse_node(QS) of {error, Msg} -> - {400, #{code => 'BAD_REQUEST', message => Msg}}; + {400, #{code => ?BAD_REQUEST, message => Msg}}; Node -> case get_or_delete_file(Method, Filename, Node) of {error, not_found} ->