You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by Steve Huston <sh...@riverace.com> on 2014/07/07 02:07:03 UTC

Fwd: New Defects reported by Coverity Scan for Apache-Qpid

FYI, Coverity changes this week.

-Steve

Begin forwarded message:

From: <sc...@coverity.com>>
Date: July 6, 2014 at 5:51:34 PM EDT
Subject: New Defects reported by Coverity Scan for Apache-Qpid


Hi,


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

Defect(s) Reported-by: Coverity Scan
Showing 4 of 4 defect(s)


** CID 1224524:  Big parameter passed by value  (PASS_BY_VALUE)
/qpidbuilds/trunk/qpid/cpp/src/tests/BrokerFixture.h: 155 in qpid::tests::SessionFixtureT<qpid::tests::LocalConnection, qpid::client::Session_0_10>::SessionFixtureT(qpid::broker::BrokerOptions)()

** CID 1224525:  Big parameter passed by value  (PASS_BY_VALUE)
/qpidbuilds/trunk/qpid/cpp/src/tests/ClientSessionTest.cpp: 108 in qpid::tests::ClientSessionFixture::ClientSessionFixture(qpid::broker::BrokerOptions)()

** CID 1224526:  Big parameter passed by value  (PASS_BY_VALUE)
/qpidbuilds/trunk/qpid/cpp/src/tests/MessagingFixture.h: 106 in qpid::tests::MessagingFixture::MessagingFixture(qpid::broker::BrokerOptions, bool)()

** CID 1224527:  Wrapper object use after free  (WRAPPER_ESCAPE)
/qpidbuilds/trunk/qpid/cpp/src/qpid/broker/SaslAuthenticator.cpp: 276 in qpid::broker::CyrusAuthenticator::init()()


________________________________________________________________________________________________________
*** CID 1224524:  Big parameter passed by value  (PASS_BY_VALUE)
/qpidbuilds/trunk/qpid/cpp/src/tests/BrokerFixture.h: 155 in qpid::tests::SessionFixtureT<qpid::tests::LocalConnection, qpid::client::Session_0_10>::SessionFixtureT(qpid::broker::BrokerOptions)()
149     /**
150      * A BrokerFixture and ready-connected BrokerFixture::Client all in one.
151      */
152     template <class ConnectionType, class SessionType=qpid::client::Session>
153     struct  SessionFixtureT : BrokerFixture, ClientT<ConnectionType,SessionType> {
154
   CID 1224524:  Big parameter passed by value  (PASS_BY_VALUE)
   Passing parameter opts of type qpid::tests::BrokerFixture::BrokerOptions (size 256 bytes) by value.
155         SessionFixtureT(BrokerOptions opts=BrokerOptions()) :
156             BrokerFixture(BrokerFixture::Args(), opts),
157             ClientT<ConnectionType,SessionType>(getPort())
158         {}
159
160     };

________________________________________________________________________________________________________
*** CID 1224525:  Big parameter passed by value  (PASS_BY_VALUE)
/qpidbuilds/trunk/qpid/cpp/src/tests/ClientSessionTest.cpp: 108 in qpid::tests::ClientSessionFixture::ClientSessionFixture(qpid::broker::BrokerOptions)()
102             }
103         }
104     };
105
106     struct ClientSessionFixture : public SessionFixture
107     {
   CID 1224525:  Big parameter passed by value  (PASS_BY_VALUE)
   Passing parameter opts of type qpid::tests::BrokerFixture::BrokerOptions (size 256 bytes) by value.
108         ClientSessionFixture(BrokerOptions opts = BrokerOptions()) : SessionFixture(opts) {
109             session.queueDeclare(arg::queue="my-queue");
110         }
111     };
112
113     QPID_AUTO_TEST_CASE(testQueueQuery) {

________________________________________________________________________________________________________
*** CID 1224526:  Big parameter passed by value  (PASS_BY_VALUE)
/qpidbuilds/trunk/qpid/cpp/src/tests/MessagingFixture.h: 106 in qpid::tests::MessagingFixture::MessagingFixture(qpid::broker::BrokerOptions, bool)()
100     struct MessagingFixture : public BrokerFixture
101     {
102         messaging::Connection connection;
103         messaging::Session session;
104         BrokerAdmin admin;
105
   CID 1224526:  Big parameter passed by value  (PASS_BY_VALUE)
   Passing parameter opts of type qpid::tests::BrokerFixture::BrokerOptions (size 256 bytes) by value.
106         MessagingFixture(BrokerOptions opts = BrokerOptions(), bool mgmtEnabled=false) :
107             BrokerFixture(opts, mgmtEnabled),
108             connection(open(broker->getPort(Broker::TCP_TRANSPORT))),
109             session(connection.createSession()),
110             admin(broker->getPort(Broker::TCP_TRANSPORT))
111         {

________________________________________________________________________________________________________
*** CID 1224527:  Wrapper object use after free  (WRAPPER_ESCAPE)
/qpidbuilds/trunk/qpid/cpp/src/qpid/broker/SaslAuthenticator.cpp: 276 in qpid::broker::CyrusAuthenticator::init()()
270               * which cannot specify a realm for the user that is
271               * authenticating.
272               */
273         int code;
274
275         const char *realm = connection.getBroker().getRealm().c_str();
   CID 1224527:  Wrapper object use after free  (WRAPPER_ESCAPE)
   Using internal representation of destroyed object "temporary".
276         code = sasl_server_new(BROKER_SASL_NAME, /* Service name */
277                                NULL, /* Server FQDN, gethostname() */
278                                realm, /* Authentication realm */
279                                NULL, /* Local IP, needed for some mechanism */
280                                NULL, /* Remote IP, needed for some mechanism */
281                                NULL, /* Callbacks */


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

To unsubscribe from the email notification for new defects, http://scan5.coverity.com/cgi-bin/unsubscribe.py




Re: Fwd: New Defects reported by Coverity Scan for Apache-Qpid

Posted by Alan Conway <ac...@redhat.com>.
Fixed. The SASLAutenticator one is a particularly good catch.

------------------------------------------------------------------------
r1608487 | aconway | 2014-07-07 11:24:11 -0400 (Mon, 07 Jul 2014) | 16
lines

NO-JIRA: Fix defects found by coverity.

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

** CID 1224524:  Big parameter passed by value  (PASS_BY_VALUE)
/qpidbuilds/trunk/qpid/cpp/src/tests/BrokerFixture.h: 155 in
qpid::tests::SessionFixtureT<qpid::tests::LocalConnection,
qpid::client::Session_0_10>::SessionFixtureT(qpid::broker::Broker\
Options)()

** CID 1224525:  Big parameter passed by value  (PASS_BY_VALUE)
/qpidbuilds/trunk/qpid/cpp/src/tests/ClientSessionTest.cpp: 108 in
qpid::tests::ClientSessionFixture::ClientSessionFixture(qpid::broker::BrokerOptions)()

** CID 1224526:  Big parameter passed by value  (PASS_BY_VALUE)
/qpidbuilds/trunk/qpid/cpp/src/tests/MessagingFixture.h: 106 in
qpid::tests::MessagingFixture::MessagingFixture(qpid::broker::BrokerOptions, bool)()

** CID 1224527:  Wrapper object use after free  (WRAPPER_ESCAPE)
/qpidbuilds/trunk/qpid/cpp/src/qpid/broker/SaslAuthenticator.cpp: 276 in
qpid::broker::CyrusAuthenticator::init()()

------------------------------------------------------------------------

On Mon, 2014-07-07 at 00:07 +0000, Steve Huston wrote:
> FYI, Coverity changes this week.
> 
> -Steve
> 
> Begin forwarded message:
> 
> From: <sc...@coverity.com>>
> Date: July 6, 2014 at 5:51:34 PM EDT
> Subject: New Defects reported by Coverity Scan for Apache-Qpid
> 
> 
> Hi,
> 
> 
> Please find the latest report on new defect(s) introduced to Apache-Qpid found with Coverity Scan.
> 
> Defect(s) Reported-by: Coverity Scan
> Showing 4 of 4 defect(s)
> 
> 
> ** CID 1224524:  Big parameter passed by value  (PASS_BY_VALUE)
> /qpidbuilds/trunk/qpid/cpp/src/tests/BrokerFixture.h: 155 in qpid::tests::SessionFixtureT<qpid::tests::LocalConnection, qpid::client::Session_0_10>::SessionFixtureT(qpid::broker::BrokerOptions)()
> 
> ** CID 1224525:  Big parameter passed by value  (PASS_BY_VALUE)
> /qpidbuilds/trunk/qpid/cpp/src/tests/ClientSessionTest.cpp: 108 in qpid::tests::ClientSessionFixture::ClientSessionFixture(qpid::broker::BrokerOptions)()
> 
> ** CID 1224526:  Big parameter passed by value  (PASS_BY_VALUE)
> /qpidbuilds/trunk/qpid/cpp/src/tests/MessagingFixture.h: 106 in qpid::tests::MessagingFixture::MessagingFixture(qpid::broker::BrokerOptions, bool)()
> 
> ** CID 1224527:  Wrapper object use after free  (WRAPPER_ESCAPE)
> /qpidbuilds/trunk/qpid/cpp/src/qpid/broker/SaslAuthenticator.cpp: 276 in qpid::broker::CyrusAuthenticator::init()()
> 
> 
> ________________________________________________________________________________________________________
> *** CID 1224524:  Big parameter passed by value  (PASS_BY_VALUE)
> /qpidbuilds/trunk/qpid/cpp/src/tests/BrokerFixture.h: 155 in qpid::tests::SessionFixtureT<qpid::tests::LocalConnection, qpid::client::Session_0_10>::SessionFixtureT(qpid::broker::BrokerOptions)()
> 149     /**
> 150      * A BrokerFixture and ready-connected BrokerFixture::Client all in one.
> 151      */
> 152     template <class ConnectionType, class SessionType=qpid::client::Session>
> 153     struct  SessionFixtureT : BrokerFixture, ClientT<ConnectionType,SessionType> {
> 154
>    CID 1224524:  Big parameter passed by value  (PASS_BY_VALUE)
>    Passing parameter opts of type qpid::tests::BrokerFixture::BrokerOptions (size 256 bytes) by value.
> 155         SessionFixtureT(BrokerOptions opts=BrokerOptions()) :
> 156             BrokerFixture(BrokerFixture::Args(), opts),
> 157             ClientT<ConnectionType,SessionType>(getPort())
> 158         {}
> 159
> 160     };
> 
> ________________________________________________________________________________________________________
> *** CID 1224525:  Big parameter passed by value  (PASS_BY_VALUE)
> /qpidbuilds/trunk/qpid/cpp/src/tests/ClientSessionTest.cpp: 108 in qpid::tests::ClientSessionFixture::ClientSessionFixture(qpid::broker::BrokerOptions)()
> 102             }
> 103         }
> 104     };
> 105
> 106     struct ClientSessionFixture : public SessionFixture
> 107     {
>    CID 1224525:  Big parameter passed by value  (PASS_BY_VALUE)
>    Passing parameter opts of type qpid::tests::BrokerFixture::BrokerOptions (size 256 bytes) by value.
> 108         ClientSessionFixture(BrokerOptions opts = BrokerOptions()) : SessionFixture(opts) {
> 109             session.queueDeclare(arg::queue="my-queue");
> 110         }
> 111     };
> 112
> 113     QPID_AUTO_TEST_CASE(testQueueQuery) {
> 
> ________________________________________________________________________________________________________
> *** CID 1224526:  Big parameter passed by value  (PASS_BY_VALUE)
> /qpidbuilds/trunk/qpid/cpp/src/tests/MessagingFixture.h: 106 in qpid::tests::MessagingFixture::MessagingFixture(qpid::broker::BrokerOptions, bool)()
> 100     struct MessagingFixture : public BrokerFixture
> 101     {
> 102         messaging::Connection connection;
> 103         messaging::Session session;
> 104         BrokerAdmin admin;
> 105
>    CID 1224526:  Big parameter passed by value  (PASS_BY_VALUE)
>    Passing parameter opts of type qpid::tests::BrokerFixture::BrokerOptions (size 256 bytes) by value.
> 106         MessagingFixture(BrokerOptions opts = BrokerOptions(), bool mgmtEnabled=false) :
> 107             BrokerFixture(opts, mgmtEnabled),
> 108             connection(open(broker->getPort(Broker::TCP_TRANSPORT))),
> 109             session(connection.createSession()),
> 110             admin(broker->getPort(Broker::TCP_TRANSPORT))
> 111         {
> 
> ________________________________________________________________________________________________________
> *** CID 1224527:  Wrapper object use after free  (WRAPPER_ESCAPE)
> /qpidbuilds/trunk/qpid/cpp/src/qpid/broker/SaslAuthenticator.cpp: 276 in qpid::broker::CyrusAuthenticator::init()()
> 270               * which cannot specify a realm for the user that is
> 271               * authenticating.
> 272               */
> 273         int code;
> 274
> 275         const char *realm = connection.getBroker().getRealm().c_str();
>    CID 1224527:  Wrapper object use after free  (WRAPPER_ESCAPE)
>    Using internal representation of destroyed object "temporary".
> 276         code = sasl_server_new(BROKER_SASL_NAME, /* Service name */
> 277                                NULL, /* Server FQDN, gethostname() */
> 278                                realm, /* Authentication realm */
> 279                                NULL, /* Local IP, needed for some mechanism */
> 280                                NULL, /* Remote IP, needed for some mechanism */
> 281                                NULL, /* Callbacks */
> 
> 
> ________________________________________________________________________________________________________
> To view the defects in Coverity Scan visit, http://scan.coverity.com/projects/6?tab=overview
> 
> To unsubscribe from the email notification for new defects, http://scan5.coverity.com/cgi-bin/unsubscribe.py
> 
> 
> 



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org