mirror of
https://github.com/ceph/ceph
synced 2025-01-30 23:13:44 +00:00
rgw/rgw_op.cc: fix potential null-deref in strcmp()
Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
(cherry picked from commit de7bcfd8d0
)
This commit is contained in:
parent
3e1023a697
commit
f5b01515d0
@ -522,6 +522,12 @@ int RGWOp::init_quota()
|
||||
|
||||
static bool validate_cors_rule_method(RGWCORSRule *rule, const char *req_meth) {
|
||||
uint8_t flags = 0;
|
||||
|
||||
if (!req_meth) {
|
||||
dout(5) << "req_meth is null" << dendl;
|
||||
return false;
|
||||
}
|
||||
|
||||
if (strcmp(req_meth, "GET") == 0) flags = RGW_CORS_GET;
|
||||
else if (strcmp(req_meth, "POST") == 0) flags = RGW_CORS_POST;
|
||||
else if (strcmp(req_meth, "PUT") == 0) flags = RGW_CORS_PUT;
|
||||
@ -627,11 +633,12 @@ bool RGWOp::generate_cors_headers(string& origin, string& method, string& header
|
||||
req_meth = s->info.method;
|
||||
}
|
||||
|
||||
if (req_meth)
|
||||
if (req_meth) {
|
||||
method = req_meth;
|
||||
/* CORS 6.2.5. */
|
||||
if (!validate_cors_rule_method(rule, req_meth)) {
|
||||
return false;
|
||||
/* CORS 6.2.5. */
|
||||
if (!validate_cors_rule_method(rule, req_meth)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/* CORS 6.2.4. */
|
||||
|
Loading…
Reference in New Issue
Block a user