You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by gs...@apache.org on 2015/01/21 15:50:53 UTC

svn commit: r1653547 - in /qpid/trunk/qpid/cpp/src/qpid/broker: ConnectionHandler.cpp ConnectionHandler.h

Author: gsim
Date: Wed Jan 21 14:50:52 2015
New Revision: 1653547

URL: http://svn.apache.org/r1653547
Log:
QPID-6325: further improve 0-10 connection handling logic

Modified:
    qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.cpp
    qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.h

Modified: qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.cpp?rev=1653547&r1=1653546&r2=1653547&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.cpp Wed Jan 21 14:50:52 2015
@@ -242,17 +242,17 @@ void ConnectionHandler::Handler::open(co
         AclModule* acl =  connection.getBroker().getAcl();
         if (acl && acl->userAclRules()) {
             if (!acl->authorise(connection.getUserId(),acl::ACT_CREATE,acl::OBJ_LINK,"")){
-                proxy.close(framing::connection::CLOSE_CODE_CONNECTION_FORCED,
-                            QPID_MSG("ACL denied " << connection.getUserId()
-                                        << " creating a federation link"));
+                connection.close(framing::connection::CLOSE_CODE_CONNECTION_FORCED,
+                                 QPID_MSG("ACL denied " << connection.getUserId()
+                                          << " creating a federation link"));
                 return;
             }
         } else {
             if (connection.getBroker().isAuthenticating()) {
-                proxy.close(framing::connection::CLOSE_CODE_CONNECTION_FORCED,
-                            QPID_MSG("User " << connection.getUserId()
-                                << " federation connection denied. Systems with authentication "
-                                   "enabled must specify ACL create link rules."));
+                connection.close(framing::connection::CLOSE_CODE_CONNECTION_FORCED,
+                                 QPID_MSG("User " << connection.getUserId()
+                                          << " federation connection denied. Systems with authentication "
+                                          "enabled must specify ACL create link rules."));
                 return;
             }
         }

Modified: qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.h
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.h?rev=1653547&r1=1653546&r2=1653547&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.h (original)
+++ qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.h Wed Jan 21 14:50:52 2015
@@ -100,13 +100,14 @@ class ConnectionHandler : public framing
     std::auto_ptr<Handler> handler;
 
     bool handle(const qpid::framing::AMQMethodBody& method);
+    void close(framing::connection::CloseCode code, const std::string& text);
   public:
     ConnectionHandler(amqp_0_10::Connection& connection, bool isClient );
-    void close(framing::connection::CloseCode code, const std::string& text);
     void heartbeat();
     void handle(framing::AMQFrame& frame);
     void setSecureConnection(SecureConnection* secured);
     bool isOpen() { return handler->isOpen; }
+  friend class amqp_0_10::Connection;
 };
 
 



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