From 00a7d3ca182dc419a8f2a1b397cc4383d7ec5c4a Mon Sep 17 00:00:00 2001 From: Greg Farnum Date: Fri, 23 Sep 2011 15:41:56 -0700 Subject: [PATCH] Revert "rgw: tolerate missing content-length header on canned ACL puts" This reverts commit 05b06e807ef20c7fe1bd7c7abbeecd656d2280c0. Don't be stupid when an empty content-length can only be on ACL puts! Signed-off-by: Greg Farnum --- src/rgw/rgw_rest.cc | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/rgw/rgw_rest.cc b/src/rgw/rgw_rest.cc index f782d6e3a11a6..102483962353a 100644 --- a/src/rgw/rgw_rest.cc +++ b/src/rgw/rgw_rest.cc @@ -221,7 +221,7 @@ int RGWPutObj_REST::get_params() int RGWPutObj_REST::get_data() { - size_t cl = 0; + size_t cl; if (s->length) { cl = atoll(s->length) - ofs; if (cl > RGW_MAX_CHUNK_SIZE) @@ -703,10 +703,6 @@ int RGWHandler_REST::preprocess(struct req_state *s, FCGX_Request *fcgx) s->content_type = s->env->get("CONTENT_TYPE"); s->prot_flags = 0; - const char *cacl = s->env->get("HTTP_X_AMZ_ACL"); - if (cacl) - s->canned_acl = cacl; - if (!s->method) s->op = OP_UNKNOWN; else if (strcmp(s->method, "GET") == 0) @@ -725,7 +721,7 @@ int RGWHandler_REST::preprocess(struct req_state *s, FCGX_Request *fcgx) init_entities_from_header(s); switch (s->op) { case OP_PUT: - if (s->object && !s->canned_acl.length()) { //we can get a canned acl without data + if (s->object) { if (!s->length) ret = -ERR_LENGTH_REQUIRED; else if (*s->length == '\0') @@ -753,6 +749,10 @@ int RGWHandler_REST::preprocess(struct req_state *s, FCGX_Request *fcgx) init_auth_info(s); + const char *cacl = s->env->get("HTTP_X_AMZ_ACL"); + if (cacl) + s->canned_acl = cacl; + s->copy_source = s->env->get("HTTP_X_AMZ_COPY_SOURCE"); s->http_auth = s->env->get("HTTP_AUTHORIZATION"); -- 2.39.5