Author: gsim
Date: Fri Oct 19 17:15:22 2012
New Revision: 1400173

URL: http://svn.apache.org/viewvc?rev=1400173&view=rev
Log:
QPID-4368: Make security strength factor a property of the security layer

Modified:
    qpid/trunk/qpid/cpp/src/qpid/SaslFactory.cpp
    qpid/trunk/qpid/cpp/src/qpid/broker/SaslAuthenticator.cpp
    qpid/trunk/qpid/cpp/src/qpid/sys/SecurityLayer.h
    qpid/trunk/qpid/cpp/src/qpid/sys/cyrus/CyrusSecurityLayer.cpp
    qpid/trunk/qpid/cpp/src/qpid/sys/cyrus/CyrusSecurityLayer.h

Modified: qpid/trunk/qpid/cpp/src/qpid/SaslFactory.cpp
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/SaslFactory.cpp?rev=1400173&r1=1400172&r2=1400173&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/SaslFactory.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/SaslFactory.cpp Fri Oct 19 17:15:22 2012
@@ -377,7 +377,7 @@ std::auto_ptr<SecurityLayer> CyrusSasl::
     std::auto_ptr<SecurityLayer> securityLayer;
     if (ssf) {
         QPID_LOG(info, "Installing security layer,  SSF: "<< ssf);
-        securityLayer = std::auto_ptr<SecurityLayer>(new 
CyrusSecurityLayer(conn, maxFrameSize));
+        securityLayer = std::auto_ptr<SecurityLayer>(new 
CyrusSecurityLayer(conn, maxFrameSize, ssf));
     }
     return securityLayer;
 }

Modified: qpid/trunk/qpid/cpp/src/qpid/broker/SaslAuthenticator.cpp
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/broker/SaslAuthenticator.cpp?rev=1400173&r1=1400172&r2=1400173&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/broker/SaslAuthenticator.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/broker/SaslAuthenticator.cpp Fri Oct 19 
17:15:22 2012
@@ -505,7 +505,7 @@ std::auto_ptr<SecurityLayer> CyrusAuthen
     uint ssf = *(reinterpret_cast<const unsigned*>(value));
     std::auto_ptr<SecurityLayer> securityLayer;
     if (ssf) {
-        securityLayer = std::auto_ptr<SecurityLayer>(new 
CyrusSecurityLayer(sasl_conn, maxFrameSize));
+        securityLayer = std::auto_ptr<SecurityLayer>(new 
CyrusSecurityLayer(sasl_conn, maxFrameSize, ssf));
     }
     qmf::org::apache::qpid::broker::Connection::shared_ptr cnxMgmt = 
connection.getMgmtObject();
     if ( cnxMgmt )

Modified: qpid/trunk/qpid/cpp/src/qpid/sys/SecurityLayer.h
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/sys/SecurityLayer.h?rev=1400173&r1=1400172&r2=1400173&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/sys/SecurityLayer.h (original)
+++ qpid/trunk/qpid/cpp/src/qpid/sys/SecurityLayer.h Fri Oct 19 17:15:22 2012
@@ -33,8 +33,12 @@ namespace sys {
 class SecurityLayer : public Codec
 {
   public:
+    SecurityLayer(int ssf_) : ssf(ssf_) {}
+    int getSsf() const { return ssf; }
     virtual void init(Codec*) = 0;
     virtual ~SecurityLayer() {}
+  private:
+    int ssf;
 };
 
 }} // namespace qpid::sys

Modified: qpid/trunk/qpid/cpp/src/qpid/sys/cyrus/CyrusSecurityLayer.cpp
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/sys/cyrus/CyrusSecurityLayer.cpp?rev=1400173&r1=1400172&r2=1400173&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/sys/cyrus/CyrusSecurityLayer.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/sys/cyrus/CyrusSecurityLayer.cpp Fri Oct 19 
17:15:22 2012
@@ -29,8 +29,8 @@ namespace qpid {
 namespace sys {
 namespace cyrus {
 
-CyrusSecurityLayer::CyrusSecurityLayer(sasl_conn_t* c, uint16_t maxFrameSize) 
: 
-    conn(c), decrypted(0), decryptedSize(0), encrypted(0), encryptedSize(0), 
codec(0), maxInputSize(0), 
+CyrusSecurityLayer::CyrusSecurityLayer(sasl_conn_t* c, uint16_t maxFrameSize, 
int ssf) :
+    SecurityLayer(ssf), conn(c), decrypted(0), decryptedSize(0), encrypted(0), 
encryptedSize(0), codec(0), maxInputSize(0),
     decodeBuffer(maxFrameSize), encodeBuffer(maxFrameSize), encoded(0)
 {
     const void* value(0);

Modified: qpid/trunk/qpid/cpp/src/qpid/sys/cyrus/CyrusSecurityLayer.h
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/sys/cyrus/CyrusSecurityLayer.h?rev=1400173&r1=1400172&r2=1400173&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/sys/cyrus/CyrusSecurityLayer.h (original)
+++ qpid/trunk/qpid/cpp/src/qpid/sys/cyrus/CyrusSecurityLayer.h Fri Oct 19 
17:15:22 2012
@@ -37,7 +37,7 @@ namespace cyrus {
 class CyrusSecurityLayer : public qpid::sys::SecurityLayer
 {
   public:
-    CyrusSecurityLayer(sasl_conn_t*, uint16_t maxFrameSize);
+    CyrusSecurityLayer(sasl_conn_t*, uint16_t maxFrameSize, int ssf);
     size_t decode(const char* buffer, size_t size);
     size_t encode(char* buffer, size_t size);
     bool canEncode();



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to