if (ret >= 0) {
string& name = nv.get_name();
string& val = nv.get_val();
- val_map[name] = val;
+ if(name.length() > 0)
+ val_map[name] = val;
if ((name.compare("acl") == 0) ||
(name.compare("location") == 0) ||
(name.compare("response-cache-control") == 0) ||
(name.compare("response-content-disposition") == 0) ||
(name.compare("response-content-encoding") == 0)) {
- sub_resources[name] = val;
- has_resp_modifier = true;
- }
+ sub_resources[name] = val;
+ has_resp_modifier = true;
+ }
} else if ((name.compare("subuser") == 0) ||
(name.compare("key") == 0) ||
(name.compare("caps") == 0) ||
key.clear();
}
- out = (section + string(":") + key);
+ out = section;
if (!key.empty()) {
out += string(":") + key;
}
RGWOp *RGWHandler_Metadata::op_get() {
+ if (s->args.get_num_params() > 0 &&
+ !s->args.exists("key")) {
+ return NULL;
+ }
if (s->args.exists("key"))
return new RGWOp_Metadata_Get;
else
/*cout << "accesskeys [ " << it->first << " ] = " <<
"{ " << _k.id << ", " << _k.key << ", " << _k.subuser << "}" << std::endl;*/
creds.append(it->first + string(":") + _k.key);
+ break;
}
return 0;
}
/*Check with a wrong parameter*/
g_test->send_request(string("GET"), string("/admin/metadata/user?keys=test"));
- EXPECT_EQ(400U, g_test->get_resp_code());
+ EXPECT_EQ(405U, g_test->get_resp_code());
g_test->send_request(string("GET"), string("/admin/metadata/user?key=test"));
EXPECT_EQ(404U, g_test->get_resp_code());