summaryrefslogtreecommitdiff
path: root/src/couch/src/couch_httpd_db.erl
diff options
context:
space:
mode:
authorRobert Newson <rnewson@apache.org>2023-05-09 16:48:58 +0000
committerGitHub <noreply@github.com>2023-05-09 16:48:58 +0000
commit4a8c8b52f0decb9f3f8254ccac232a0a5f224756 (patch)
tree7abce2ab12ebc06e00375ab90dc20317fb9dff9e /src/couch/src/couch_httpd_db.erl
parent92c338a3a20e4b2c174a52e4783fef65601fbdee (diff)
parent039da4a8b7e69847802ca34901bd3af159347d36 (diff)
downloadcouchdb-4a8c8b52f0decb9f3f8254ccac232a0a5f224756.tar.gz
Merge pull request #4574 from apache/remove-content-md5-header
remove Content-MD5 header support
Diffstat (limited to 'src/couch/src/couch_httpd_db.erl')
-rw-r--r--src/couch/src/couch_httpd_db.erl31
1 files changed, 1 insertions, 30 deletions
diff --git a/src/couch/src/couch_httpd_db.erl b/src/couch/src/couch_httpd_db.erl
index f0786536d..e045510cc 100644
--- a/src/couch/src/couch_httpd_db.erl
+++ b/src/couch/src/couch_httpd_db.erl
@@ -1073,15 +1073,7 @@ db_attachment_req(#httpd{method = 'GET', mochi_req = MochiReq} = Req, Db, DocId,
->
send_ranges_multipart(Req, Type, Len, Att, Ranges);
_ ->
- Headers1 =
- Headers ++
- if
- Enc =:= identity orelse ReqAcceptsAttEnc =:= true ->
- [{"Content-MD5", base64:encode(Md5)}];
- true ->
- []
- end,
- {ok, Resp} = start_response_length(Req, 200, Headers1, Len),
+ {ok, Resp} = start_response_length(Req, 200, Headers, Len),
AttFun(Att, fun(Seg, _) -> send(Resp, Seg) end, {ok, Resp})
end
end
@@ -1174,7 +1166,6 @@ db_attachment_req(
{type, MimeType},
{data, Data},
{att_len, AttLen},
- {md5, get_md5_header(Req)},
{encoding, Encoding}
])
]
@@ -1250,26 +1241,6 @@ parse_ranges([{From, none} | Rest], Len, Acc) ->
parse_ranges([{From, To} | Rest], Len, Acc) ->
parse_ranges(Rest, Len, [{From, To}] ++ Acc).
-get_md5_header(Req) ->
- ContentMD5 = couch_httpd:header_value(Req, "Content-MD5"),
- Length = couch_httpd:body_length(Req),
- Trailer = couch_httpd:header_value(Req, "Trailer"),
- case {ContentMD5, Length, Trailer} of
- _ when is_list(ContentMD5) orelse is_binary(ContentMD5) ->
- base64:decode(ContentMD5);
- {_, chunked, undefined} ->
- <<>>;
- {_, chunked, _} ->
- case re:run(Trailer, "\\bContent-MD5\\b", [caseless]) of
- {match, _} ->
- md5_in_footer;
- _ ->
- <<>>
- end;
- _ ->
- <<>>
- end.
-
parse_doc_query(Req) ->
lists:foldl(
fun({Key, Value}, Args) ->