Merge branch 'master' of github.com:znc/znc

This commit is contained in:
Alexey Sokolov
2014-04-21 00:07:17 +01:00
3 changed files with 55 additions and 9 deletions
+3 -1
View File
@@ -591,7 +591,9 @@ public:
SSL23 = 0,
SSL2 = 2,
SSL3 = 3,
TLS1 = 4
TLS1 = 4,
TLS1_1 = 5,
TLS1_2 = 6
};
enum ECONState
+11 -7
View File
@@ -25,12 +25,16 @@ public:
MODCONSTRUCTOR(CChanSaverMod) {
m_bWriteConf = false;
if (GetNetwork()) {
LoadNetwork(*GetNetwork());
} else if (GetUser()) {
LoadUser(*GetUser());
} else {
LoadUsers();
switch (GetType()) {
case CModInfo::GlobalModule:
LoadUsers();
break;
case CModInfo::UserModule:
LoadUser(*GetUser());
break;
case CModInfo::NetworkModule:
LoadNetwork(*GetNetwork());
break;
}
}
@@ -108,7 +112,7 @@ private:
template<> void TModInfo<CChanSaverMod>(CModInfo& Info) {
Info.SetWikiPage("chansaver");
Info.AddType(CModInfo::NetworkModule);
Info.AddType(CModInfo::UserModule);
Info.AddType(CModInfo::GlobalModule);
}
USERMODULEDEFS(CChanSaverMod, "Keep config up-to-date when user joins/parts")
+41 -1
View File
@@ -1355,6 +1355,26 @@ bool Csock::SSLClientSetup()
return( false );
}
break;
case TLS1_2:
#ifdef TLS1_2_VERSION
m_ssl_ctx = SSL_CTX_new( TLSv1_2_client_method() );
if( !m_ssl_ctx )
{
CS_DEBUG( "WARNING: MakeConnection .... TLSv1_2_client_method failed!" );
return( false );
}
break;
#endif
case TLS1_1:
#ifdef TLS1_1_VERSION
m_ssl_ctx = SSL_CTX_new( TLSv1_1_client_method() );
if( !m_ssl_ctx )
{
CS_DEBUG( "WARNING: MakeConnection .... TLSv1_1_client_method failed!" );
return( false );
}
break;
#endif
case TLS1:
m_ssl_ctx = SSL_CTX_new( TLSv1_client_method() );
if( !m_ssl_ctx )
@@ -1452,6 +1472,26 @@ bool Csock::SSLServerSetup()
return( false );
}
break;
case TLS1_2:
#ifdef TLS1_2_VERSION
m_ssl_ctx = SSL_CTX_new( TLSv1_2_server_method() );
if( !m_ssl_ctx )
{
CS_DEBUG( "WARNING: MakeConnection .... TLSv1_2_server_method failed!" );
return( false );
}
break;
#endif
case TLS1_1:
#ifdef TLS1_1_VERSION
m_ssl_ctx = SSL_CTX_new( TLSv1_1_server_method() );
if( !m_ssl_ctx )
{
CS_DEBUG( "WARNING: MakeConnection .... TLSv1_1_server_method failed!" );
return( false );
}
break;
#endif
case TLS1:
m_ssl_ctx = SSL_CTX_new( TLSv1_server_method() );
if( !m_ssl_ctx )
@@ -2711,7 +2751,7 @@ void Csock::Init( const CS_STRING & sHostname, uint16_t uPort, int iTimeout )
m_shostname = sHostname;
m_sbuffer.clear();
m_eCloseType = CLT_DONT;
m_iMethod = SSL23;
m_iMethod = TLS1_2; // Falls though TLSv1.1 and TLSv1 if not available
m_sCipherType = "ALL";
m_iMaxBytes = 0;
m_iMaxMilliSeconds = 0;