Project

General

Profile

Bug #47882

Updated by Abhishek Lekshmanan over 3 years ago

<pre> 
  1: /ssd/builds/cpp/ceph-nautilus/build/lib/libradosgw.so.2(+0x201803e) [0x7f109beef03e] 
  2: /lib64/libpthread.so.0(+0x132d0) [0x7f108db692d0] 
  3: (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::length() const+0xc) [0x7f109b3be522] 
  4: (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_assign(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)+0x3a) [0x7f109b3c3192] 
  5: (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)+0x23) [0x7f109b3c0bd9] 
  6: (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator=(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)+0x1ca) [0x7f109b3bf3be] 
  7: (rgw_user::operator=(rgw_user const&)+0x23) [0x7f109b4f16ef] 
  8: (rgw::sal::RGWUser::RGWUser(rgw_user const&)+0x4a) [0x7f109b71c382] 
  9: (rgw::sal::RGWRadosUser::RGWRadosUser(rgw::sal::RGWRadosStore*, rgw_user const&)+0x27) [0x7f109b71d84f] 
  10: (RGWOp::init_quota()+0xf3) [0x7f109ba36e4f] 
  11: (RGWOp::init_processing()+0x46) [0x7f109b52468e] 
  12: (rgw_process_authenticated(RGWHandler_REST*, RGWOp*&, RGWRequest*, req_state*, bool)+0x931) [0x7f109b517f3b] 
  13: (process_request(rgw::sal::RGWRadosStore*, RGWREST*, RGWRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rgw::auth::StrategyRegistry const&, RGWRestfulIO*, OpsLogSocket*, optional_yield, rgw::dmclock::Scheduler*, int*)+0x195d) [0x7f109b51afeb] 
 </pre> 

 For requests on paths like admin/metadata/bucket/foobar which'll try to initialize quota fail as s->bucket or s->bucket_name aren't populated, which crashes on dereferencing bucket related params. Normal S3/Swift protocol requests would've populated s->bucket in post_auth_init or while parsing policies.

Back