New Defects reported by Coverity Scan for ceph

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Please find the latest report on new defect(s) introduced to ceph found with Coverity Scan.

52 new defect(s) introduced to ceph found with Coverity Scan.
39 defect(s), reported by Coverity Scan earlier, were marked fixed in the recent build analyzed by Coverity Scan.

New defect(s) Reported-by: Coverity Scan
Showing 20 of 52 defect(s)


** CID 716871:  Error handling issues  (CHECKED_RETURN)
/test/multi_stress_watch.cc: 157 in main()


________________________________________________________________________________________________________
*** CID 716871:  Error handling issues  (CHECKED_RETURN)
/test/multi_stress_watch.cc: 157 in main()
151       }
152       ret = cluster.conf_parse_env(NULL);
153       if (ret) {
154         std::cerr << "Error " << ret << " in cluster.conf_read_env" << std::endl;
155         return ret;
156       }
>>>     CID 716871:  Error handling issues  (CHECKED_RETURN)
>>>     Calling "connect" without checking return value (as is done elsewhere 20 out of 25 times).
157       cluster.connect();
158     
159       if (type == "rep")
160         test_replicated(cluster, pool_name, obj_name);
161       else if (type == "ec")
162         test_erasure(cluster, pool_name, obj_name);
163     
164       sem_destroy(&sem);
165       return 0;

** CID 1219460:  Error handling issues  (CHECKED_RETURN)
/tools/cephfs/JournalTool.cc: 112 in JournalTool::main(std::vector<const char *, std::allocator<const char *>> &)()


________________________________________________________________________________________________________
*** CID 1219460:  Error handling issues  (CHECKED_RETURN)
/tools/cephfs/JournalTool.cc: 112 in JournalTool::main(std::vector<const char *, std::allocator<const char *>> &)()
106       if (r < 0) {
107         derr << "RADOS unavailable, cannot scan filesystem journal" << dendl;
108         return r;
109       }
110     
111       dout(4) << "JournalTool: connecting to RADOS..." << dendl;
>>>     CID 1219460:  Error handling issues  (CHECKED_RETURN)
>>>     Calling "connect" without checking return value (as is done elsewhere 20 out of 25 times).
112       rados.connect();
113      
114       int const pool_id = mdsmap->get_metadata_pool();
115       dout(4) << "JournalTool: resolving pool " << pool_id << dendl;
116       std::string pool_name;
117       r = rados.pool_reverse_lookup(pool_id, &pool_name);

** CID 1354430:  Error handling issues  (CHECKED_RETURN)
/tools/cephfs/TableTool.cc: 318 in TableTool::main(std::vector<const char *, std::allocator<const char *>> &)()


________________________________________________________________________________________________________
*** CID 1354430:  Error handling issues  (CHECKED_RETURN)
/tools/cephfs/TableTool.cc: 318 in TableTool::main(std::vector<const char *, std::allocator<const char *>> &)()
312       if (r < 0) {
313         derr << "RADOS unavailable, cannot scan filesystem journal" << dendl;
314         return r;
315       }
316     
317       dout(4) << "connecting to RADOS..." << dendl;
>>>     CID 1354430:  Error handling issues  (CHECKED_RETURN)
>>>     Calling "connect" without checking return value (as is done elsewhere 20 out of 25 times).
318       rados.connect();
319      
320       int const pool_id = mdsmap->get_metadata_pool();
321       dout(4) << "resolving pool " << pool_id << dendl;
322       std::string pool_name;
323       r = rados.pool_reverse_lookup(pool_id, &pool_name);

** CID 1354431:  Error handling issues  (CHECKED_RETURN)
/test/rbd_mirror/test_PoolWatcher.cc: 157 in TestPoolWatcher::clone_image(const std::basic_string<char, std::char_traits<char>, std::allocator<char>>&, const std::basic_string<char, std::char_traits<char>, std::allocator<char>>&, const std::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool, std::basic_string<char, std::char_traits<char>, std::allocator<char>>*)()


________________________________________________________________________________________________________
*** CID 1354431:  Error handling issues  (CHECKED_RETURN)
/test/rbd_mirror/test_PoolWatcher.cc: 157 in TestPoolWatcher::clone_image(const std::basic_string<char, std::char_traits<char>, std::allocator<char>>&, const std::basic_string<char, std::char_traits<char>, std::allocator<char>>&, const std::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool, std::basic_string<char, std::char_traits<char>, std::allocator<char>>*)()
151         ASSERT_EQ(0, m_cluster->ioctx_create(clone_pool_name.c_str(), cioctx));
152     
153         string snap_name = "snap" + stringify(++m_snap_number);
154         {
155           librbd::ImageCtx *ictx = new librbd::ImageCtx(parent_image_name.c_str(),
156     						    "", "", pioctx, false);
>>>     CID 1354431:  Error handling issues  (CHECKED_RETURN)
>>>     Calling "open" without checking return value (as is done elsewhere 8 out of 9 times).
157           ictx->state->open();
158           EXPECT_EQ(0, ictx->operations->snap_create(snap_name.c_str()));
159           EXPECT_EQ(0, ictx->operations->snap_protect(snap_name.c_str()));
160           ictx->state->close();
161         }
162     

** CID 1354432:  Error handling issues  (CHECKED_RETURN)
/tools/rados/RadosImport.cc: 45 in RadosImport::import(std::basic_string<char, std::char_traits<char>, std::allocator<char>>, bool)()


________________________________________________________________________________________________________
*** CID 1354432:  Error handling issues  (CHECKED_RETURN)
/tools/rados/RadosImport.cc: 45 in RadosImport::import(std::basic_string<char, std::char_traits<char>, std::allocator<char>>, bool)()
39       }
40       ret = cluster.conf_parse_env(NULL);
41       if (ret) {
42         cerr << "Error " << ret << " in cluster.conf_read_env" << std::endl;
43         return ret;
44       }
>>>     CID 1354432:  Error handling issues  (CHECKED_RETURN)
>>>     Calling "connect" without checking return value (as is done elsewhere 20 out of 25 times).
45       cluster.connect();
46     
47       ret = cluster.ioctx_create(pool.c_str(), ioctx);
48       if (ret < 0) {
49         cerr << "ioctx_create " << pool << " failed with " << ret << std::endl;
50         return ret;

** CID 1354433:  Security best practices violations  (DC.WEAK_CRYPTO)
/osd/PGBackend.cc: 671 in PGBackend::be_compare_scrubmaps(const std::map<pg_shard_t, ScrubMap *, std::less<pg_shard_t>, std::allocator<std::pair<const pg_shard_t, ScrubMap *>>> &, bool, bool, std::map<hobject_t, std::set<pg_shard_t, std::less<pg_shard_t>, std::allocator<pg_shard_t>>, hobject_t::BitwiseComparator, std::allocator<std::pair<const hobject_t, std::set<pg_shard_t, std::less<pg_shard_t>, std::allocator<pg_shard_t>>>>>&, std::map<hobject_t, std::set<pg_shard_t, std::less<pg_shard_t>, std::allocator<pg_shard_t>>, hobject_t::BitwiseComparator, std::allocator<std::pair<const hobject_t, std::set<pg_shard_t, std::less<pg_shard_t>, std::allocator<pg_shard_t>>>>>&, std::map<hobject_t, std::list<pg_shard_t, std::allocator<pg_shard_t>>, hobject_t::BitwiseComparator, std::allocator<std::pair<const hobject_t, std::list<pg_shard_t, std::allocator<pg_shard_t>>>>>&, std::map<hobject_t, std::pair<unsigned int, unsigned int>, hobject_t::BitwiseComparator, std::allocator<std::pair<const hobj
 ect_t, std::pair<unsigned int, unsigned int>>>>&, int &, int &, Scrub::Store *, const spg_t &, const std::vector<int, std::allocator<int>> &, std::basic_ostream<char, std::char_traits<char>>&)()


________________________________________________________________________________________________________
*** CID 1354433:  Security best practices violations  (DC.WEAK_CRYPTO)
/osd/PGBackend.cc: 671 in PGBackend::be_compare_scrubmaps(const std::map<pg_shard_t, ScrubMap *, std::less<pg_shard_t>, std::allocator<std::pair<const pg_shard_t, ScrubMap *>>> &, bool, bool, std::map<hobject_t, std::set<pg_shard_t, std::less<pg_shard_t>, std::allocator<pg_shard_t>>, hobject_t::BitwiseComparator, std::allocator<std::pair<const hobject_t, std::set<pg_shard_t, std::less<pg_shard_t>, std::allocator<pg_shard_t>>>>>&, std::map<hobject_t, std::set<pg_shard_t, std::less<pg_shard_t>, std::allocator<pg_shard_t>>, hobject_t::BitwiseComparator, std::allocator<std::pair<const hobject_t, std::set<pg_shard_t, std::less<pg_shard_t>, std::allocator<pg_shard_t>>>>>&, std::map<hobject_t, std::list<pg_shard_t, std::allocator<pg_shard_t>>, hobject_t::BitwiseComparator, std::allocator<std::pair<const hobject_t, std::list<pg_shard_t, std::allocator<pg_shard_t>>>>>&, std::map<hobject_t, std::pair<unsigned int, unsigned int>, hobject_t::BitwiseComparator, std::allocator<std::pair<const hobj
 ect_t, std::pair<unsigned int, unsigned int>>>>&, int &, int &, Scrub::Store *, const spg_t &, const std::vector<int, std::allocator<int>> &, std::basic_ostream<char, std::char_traits<char>>&)()
665     	  (!auth_oi.is_data_digest() || !auth_oi.is_omap_digest())) {
666     	dout(20) << __func__ << " missing digest on " << *k << dendl;
667     	update = MAYBE;
668           }
669           if (auth_object.digest_present && auth_object.omap_digest_present &&
670     	  g_conf->osd_debug_scrub_chance_rewrite_digest &&
>>>     CID 1354433:  Security best practices violations  (DC.WEAK_CRYPTO)
>>>     "rand" should not be used for security related applications, as linear congruential algorithms are too easy to break.
671     	  (((unsigned)rand() % 100) >
672     	   g_conf->osd_debug_scrub_chance_rewrite_digest)) {
673     	dout(20) << __func__ << " randomly updating digest on " << *k << dendl;
674     	update = MAYBE;
675           }
676     

** CID 1354434:  Security best practices violations  (DC.WEAK_CRYPTO)
/msg/async/AsyncConnection.cc: 354 in AsyncConnection::_try_send(bool, bool)()


________________________________________________________________________________________________________
*** CID 1354434:  Security best practices violations  (DC.WEAK_CRYPTO)
/msg/async/AsyncConnection.cc: 354 in AsyncConnection::_try_send(bool, bool)()
348     ssize_t AsyncConnection::_try_send(bool send, bool more)
349     {
350       if (!send)
351         return 0;
352     
353       if (async_msgr->cct->_conf->ms_inject_socket_failures && sd >= 0) {
>>>     CID 1354434:  Security best practices violations  (DC.WEAK_CRYPTO)
>>>     "rand" should not be used for security related applications, as linear congruential algorithms are too easy to break.
354         if (rand() % async_msgr->cct->_conf->ms_inject_socket_failures == 0) {
355           ldout(async_msgr->cct, 0) << __func__ << " injecting socket failure" << dendl;
356           ::shutdown(sd, SHUT_RDWR);
357         }
358       }
359     

** CID 1354435:    (DC.WEAK_CRYPTO)
/common/WeightedPriorityQueue.h: 175 in WeightedPriorityQueue<std::pair<boost::intrusive_ptr<PG>, PGQueueable>, entity_inst_t>::Queue::pop(bool)()
/common/WeightedPriorityQueue.h: 190 in WeightedPriorityQueue<std::pair<boost::intrusive_ptr<PG>, PGQueueable>, entity_inst_t>::Queue::pop(bool)()


________________________________________________________________________________________________________
*** CID 1354435:    (DC.WEAK_CRYPTO)
/common/WeightedPriorityQueue.h: 175 in WeightedPriorityQueue<std::pair<boost::intrusive_ptr<PG>, PGQueueable>, entity_inst_t>::Queue::pop(bool)()
169     	    }
170     	    return ret;
171     	  }
172     	  if (queues.size() > 1) {
173     	    while (true) {
174     	      // Pick a new priority out of the total priority.
>>>     CID 1354435:    (DC.WEAK_CRYPTO)
>>>     "rand" should not be used for security related applications, as linear congruential algorithms are too easy to break.
175     	      unsigned prio = rand() % total_prio + 1;
176     	      unsigned tp = total_prio - i->key;
177     	      // Find the priority coresponding to the picked number.
178     	      // Subtract high priorities to low priorities until the picked number
179     	      // is more than the total and try to dequeue that priority.
180     	      // Reverse the direction from previous implementation because there is a higher
/common/WeightedPriorityQueue.h: 190 in WeightedPriorityQueue<std::pair<boost::intrusive_ptr<PG>, PGQueueable>, entity_inst_t>::Queue::pop(bool)()
184     		tp -= i->key;
185     	      }
186     	      // Flip a coin to see if this priority gets to run based on cost.
187     	      // The next op's cost is multiplied by .9 and subtracted from the
188     	      // max cost seen. Ops with lower costs will have a larger value
189     	      // and allow them to be selected easier than ops with high costs.
>>>     CID 1354435:    (DC.WEAK_CRYPTO)
>>>     "rand" should not be used for security related applications, as linear congruential algorithms are too easy to break.
190     	      if (max_cost == 0 || rand() % max_cost <=
191     		  (max_cost - ((i->get_cost() * 9) / 10))) {
192     		break;
193     	      }
194     	      i = --queues.end();
195     	    }

** CID 1354436:  Compiler dependency  (DELETE_ARRAY)
/log/Log.cc: 318 in ceph::log::Log::_flush(ceph::log::EntryQueue *, ceph::log::EntryQueue *, bool)()


________________________________________________________________________________________________________
*** CID 1354436:  Compiler dependency  (DELETE_ARRAY)
/log/Log.cc: 318 in ceph::log::Log::_flush(ceph::log::EntryQueue *, ceph::log::EntryQueue *, bool)()
312             buf[buflen] = '\n';
313             int r = safe_write(m_fd, buf, buflen+1);
314             if (r < 0)
315               cerr << "problem writing to " << m_log_file << ": " << cpp_strerror(r) << std::endl;
316           }
317           if(need_dynamic)
>>>     CID 1354436:  Compiler dependency  (DELETE_ARRAY)
>>>     Deleting array variable "buf" with non-array delete in "delete buf".
318             delete buf;
319         }
320         if (do_graylog2 && m_graylog) {
321           m_graylog->log_entry(e);
322         }
323     

** CID 1354437:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 13185 in __pyx_pw_5rados_5Rados_51mon_command()


________________________________________________________________________________________________________
*** CID 1354437:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 13185 in __pyx_pw_5rados_5Rados_51mon_command()
13179           }
13180           kw_args = PyDict_Size(__pyx_kwds);
13181           switch (pos_args) {
13182             case  0:
13183             if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_cmd)) != 0)) kw_args--;
13184             else goto __pyx_L5_argtuple_error;
>>>     CID 1354437:  Control flow issues  (MISSING_BREAK)
>>>     The above case falls through to this one.
13185             case  1:
13186             if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_inbuf)) != 0)) kw_args--;
13187             else {
13188               __Pyx_RaiseArgtupleInvalid("mon_command", 0, 2, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1110; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
13189             }
13190             case  2:

** CID 1354438:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 13190 in __pyx_pw_5rados_5Rados_51mon_command()


________________________________________________________________________________________________________
*** CID 1354438:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 13190 in __pyx_pw_5rados_5Rados_51mon_command()
13184             else goto __pyx_L5_argtuple_error;
13185             case  1:
13186             if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_inbuf)) != 0)) kw_args--;
13187             else {
13188               __Pyx_RaiseArgtupleInvalid("mon_command", 0, 2, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1110; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
13189             }
>>>     CID 1354438:  Control flow issues  (MISSING_BREAK)
>>>     The above case falls through to this one.
13190             case  2:
13191             if (kw_args > 0) {
13192               PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_timeout);
13193               if (value) { values[2] = value; kw_args--; }
13194             }
13195             case  3:

** CID 1354439:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 13195 in __pyx_pw_5rados_5Rados_51mon_command()


________________________________________________________________________________________________________
*** CID 1354439:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 13195 in __pyx_pw_5rados_5Rados_51mon_command()
13189             }
13190             case  2:
13191             if (kw_args > 0) {
13192               PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_timeout);
13193               if (value) { values[2] = value; kw_args--; }
13194             }
>>>     CID 1354439:  Control flow issues  (MISSING_BREAK)
>>>     The above case falls through to this one.
13195             case  3:
13196             if (kw_args > 0) {
13197               PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_target);
13198               if (value) { values[3] = value; kw_args--; }
13199             }
13200           }

** CID 1354440:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 13828 in __pyx_pw_5rados_5Rados_53osd_command()


________________________________________________________________________________________________________
*** CID 1354440:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 13828 in __pyx_pw_5rados_5Rados_53osd_command()
13822           }
13823           kw_args = PyDict_Size(__pyx_kwds);
13824           switch (pos_args) {
13825             case  0:
13826             if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_osdid)) != 0)) kw_args--;
13827             else goto __pyx_L5_argtuple_error;
>>>     CID 1354440:  Control flow issues  (MISSING_BREAK)
>>>     The above case falls through to this one.
13828             case  1:
13829             if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_cmd)) != 0)) kw_args--;
13830             else {
13831               __Pyx_RaiseArgtupleInvalid("osd_command", 0, 3, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1167; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
13832             }
13833             case  2:

** CID 1354441:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 13833 in __pyx_pw_5rados_5Rados_53osd_command()


________________________________________________________________________________________________________
*** CID 1354441:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 13833 in __pyx_pw_5rados_5Rados_53osd_command()
13827             else goto __pyx_L5_argtuple_error;
13828             case  1:
13829             if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_cmd)) != 0)) kw_args--;
13830             else {
13831               __Pyx_RaiseArgtupleInvalid("osd_command", 0, 3, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1167; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
13832             }
>>>     CID 1354441:  Control flow issues  (MISSING_BREAK)
>>>     The above case falls through to this one.
13833             case  2:
13834             if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_inbuf)) != 0)) kw_args--;
13835             else {
13836               __Pyx_RaiseArgtupleInvalid("osd_command", 0, 3, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1167; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
13837             }
13838             case  3:

** CID 1354442:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 13838 in __pyx_pw_5rados_5Rados_53osd_command()


________________________________________________________________________________________________________
*** CID 1354442:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 13838 in __pyx_pw_5rados_5Rados_53osd_command()
13832             }
13833             case  2:
13834             if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_inbuf)) != 0)) kw_args--;
13835             else {
13836               __Pyx_RaiseArgtupleInvalid("osd_command", 0, 3, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1167; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
13837             }
>>>     CID 1354442:  Control flow issues  (MISSING_BREAK)
>>>     The above case falls through to this one.
13838             case  3:
13839             if (kw_args > 0) {
13840               PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_timeout);
13841               if (value) { values[3] = value; kw_args--; }
13842             }
13843           }

** CID 1354443:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 14351 in __pyx_pw_5rados_5Rados_55pg_command()


________________________________________________________________________________________________________
*** CID 1354443:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 14351 in __pyx_pw_5rados_5Rados_55pg_command()
14345           }
14346           kw_args = PyDict_Size(__pyx_kwds);
14347           switch (pos_args) {
14348             case  0:
14349             if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_pgid)) != 0)) kw_args--;
14350             else goto __pyx_L5_argtuple_error;
>>>     CID 1354443:  Control flow issues  (MISSING_BREAK)
>>>     The above case falls through to this one.
14351             case  1:
14352             if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_cmd)) != 0)) kw_args--;
14353             else {
14354               __Pyx_RaiseArgtupleInvalid("pg_command", 0, 3, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1210; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
14355             }
14356             case  2:

** CID 1354444:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 14356 in __pyx_pw_5rados_5Rados_55pg_command()


________________________________________________________________________________________________________
*** CID 1354444:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 14356 in __pyx_pw_5rados_5Rados_55pg_command()
14350             else goto __pyx_L5_argtuple_error;
14351             case  1:
14352             if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_cmd)) != 0)) kw_args--;
14353             else {
14354               __Pyx_RaiseArgtupleInvalid("pg_command", 0, 3, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1210; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
14355             }
>>>     CID 1354444:  Control flow issues  (MISSING_BREAK)
>>>     The above case falls through to this one.
14356             case  2:
14357             if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_inbuf)) != 0)) kw_args--;
14358             else {
14359               __Pyx_RaiseArgtupleInvalid("pg_command", 0, 3, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1210; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
14360             }
14361             case  3:

** CID 1354445:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 14361 in __pyx_pw_5rados_5Rados_55pg_command()


________________________________________________________________________________________________________
*** CID 1354445:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 14361 in __pyx_pw_5rados_5Rados_55pg_command()
14355             }
14356             case  2:
14357             if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_inbuf)) != 0)) kw_args--;
14358             else {
14359               __Pyx_RaiseArgtupleInvalid("pg_command", 0, 3, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1210; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
14360             }
>>>     CID 1354445:  Control flow issues  (MISSING_BREAK)
>>>     The above case falls through to this one.
14361             case  3:
14362             if (kw_args > 0) {
14363               PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_timeout);
14364               if (value) { values[3] = value; kw_args--; }
14365             }
14366           }

** CID 1354446:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 15034 in __pyx_pw_5rados_5Rados_59blacklist_add()


________________________________________________________________________________________________________
*** CID 1354446:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 15034 in __pyx_pw_5rados_5Rados_59blacklist_add()
15028           }
15029           kw_args = PyDict_Size(__pyx_kwds);
15030           switch (pos_args) {
15031             case  0:
15032             if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_client_address)) != 0)) kw_args--;
15033             else goto __pyx_L5_argtuple_error;
>>>     CID 1354446:  Control flow issues  (MISSING_BREAK)
>>>     The above case falls through to this one.
15034             case  1:
15035             if (kw_args > 0) {
15036               PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_expire_seconds);
15037               if (value) { values[1] = value; kw_args--; }
15038             }
15039           }

** CID 1354447:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 15298 in __pyx_pw_5rados_5Rados_61monitor_log()


________________________________________________________________________________________________________
*** CID 1354447:  Control flow issues  (MISSING_BREAK)
/build/rados.c: 15298 in __pyx_pw_5rados_5Rados_61monitor_log()
15292           }
15293           kw_args = PyDict_Size(__pyx_kwds);
15294           switch (pos_args) {
15295             case  0:
15296             if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_level)) != 0)) kw_args--;
15297             else goto __pyx_L5_argtuple_error;
>>>     CID 1354447:  Control flow issues  (MISSING_BREAK)
>>>     The above case falls through to this one.
15298             case  1:
15299             if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_callback)) != 0)) kw_args--;
15300             else {
15301               __Pyx_RaiseArgtupleInvalid("monitor_log", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1282; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
15302             }
15303             case  2:


________________________________________________________________________________________________________
To view the defects in Coverity Scan visit, https://scan.coverity.com/projects/ceph?tab=overview

To manage Coverity Scan email notifications for "ceph-devel@xxxxxxxxxxxxxxx", click https://scan.coverity.com/subscriptions/edit?email=ceph-devel%40vger.kernel.org&token=018084d671e3cc89d00dd2ccb7eb849c

--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux