Remove unnecessary overloading from pqissllistener

This commit is contained in:
Gio 2015-10-30 13:20:43 +01:00
parent bb7cfc6387
commit 8936dafe4d
2 changed files with 43 additions and 67 deletions

View file

@ -56,19 +56,17 @@ const int pqissllistenzone = 49787;
*/ */
pqissllistenbase::pqissllistenbase(const struct sockaddr_storage &addr, p3PeerMgr *pm) pqissllistenbase::pqissllistenbase(const sockaddr_storage &addr, p3PeerMgr *pm)
:laddr(addr), active(false), mPeerMgr(pm) : laddr(addr), active(false), mPeerMgr(pm)
{ {
if (!(AuthSSL::getAuthSSL()-> active())) { if (!(AuthSSL::getAuthSSL()-> active()))
{
pqioutput(PQL_ALERT, pqissllistenzone, pqioutput(PQL_ALERT, pqissllistenzone,
"SSL-CTX-CERT-ROOT not initialised!"); "SSL-CTX-CERT-ROOT not initialised!");
exit(1); exit(1);
} }
setuplisten(); setuplisten();
return;
} }
pqissllistenbase::~pqissllistenbase() pqissllistenbase::~pqissllistenbase()
@ -730,17 +728,6 @@ int pqissllistenbase::isSSLActive(int /*fd*/, SSL *ssl)
* *
*/ */
pqissllistener::pqissllistener(const struct sockaddr_storage &addr, p3PeerMgr *lm)
:pqissllistenbase(addr, lm)
{
return;
}
pqissllistener::~pqissllistener()
{
return;
}
int pqissllistener::addlistenaddr(const RsPeerId& id, pqissl *acc) int pqissllistener::addlistenaddr(const RsPeerId& id, pqissl *acc)
{ {
std::map<RsPeerId, pqissl *>::iterator it; std::map<RsPeerId, pqissl *>::iterator it;
@ -755,7 +742,6 @@ int pqissllistener::addlistenaddr(const RsPeerId& id, pqissl *acc)
pqioutput(PQL_DEBUG_ALERT, pqissllistenzone, out); pqioutput(PQL_DEBUG_ALERT, pqissllistenzone, out);
return -1; return -1;
} }
} }

View file

@ -67,20 +67,18 @@ public:
pqissllistenbase(const struct sockaddr_storage &addr, p3PeerMgr *pm); pqissllistenbase(const struct sockaddr_storage &addr, p3PeerMgr *pm);
virtual ~pqissllistenbase(); virtual ~pqissllistenbase();
/*************************************/ /*************************************/
/* LISTENER INTERFACE **/ /* LISTENER INTERFACE */
virtual int tick();
virtual int status();
virtual int setListenAddr(const struct sockaddr_storage &addr);
virtual int setuplisten();
virtual int resetlisten();
/*************************************/
virtual int tick(); int acceptconnection();
virtual int status(); int continueaccepts();
virtual int setListenAddr(const struct sockaddr_storage &addr); int finaliseAccepts();
virtual int setuplisten();
virtual int resetlisten();
/*************************************/
int acceptconnection();
int continueaccepts();
int finaliseAccepts();
struct IncomingSSLInfo struct IncomingSSLInfo
{ {
@ -92,52 +90,44 @@ int finaliseAccepts();
}; };
// fn to get cert, anyway // fn to get cert, anyway
int continueSSL(IncomingSSLInfo&, bool); int continueSSL(IncomingSSLInfo&, bool);
int closeConnection(int fd, SSL *ssl); int closeConnection(int fd, SSL *ssl);
int isSSLActive(int fd, SSL *ssl); int isSSLActive(int fd, SSL *ssl);
virtual int completeConnection(int sockfd, IncomingSSLInfo&) = 0; virtual int completeConnection(int sockfd, IncomingSSLInfo&) = 0;
virtual int finaliseConnection(int fd, SSL *ssl, const RsPeerId& peerId, const struct sockaddr_storage &raddr) = 0; virtual int finaliseConnection(int fd, SSL *ssl, const RsPeerId& peerId,
protected: const sockaddr_storage &raddr) = 0;
protected:
struct sockaddr_storage laddr; struct sockaddr_storage laddr;
std::list<AcceptedSSL> accepted_ssl; std::list<AcceptedSSL> accepted_ssl;
private:
int Extract_Failed_SSL_Certificate(const IncomingSSLInfo&);
bool active;
int lsock;
std::list<IncomingSSLInfo> incoming_ssl ;
protected:
p3PeerMgr *mPeerMgr; p3PeerMgr *mPeerMgr;
private:
int Extract_Failed_SSL_Certificate(const IncomingSSLInfo&);
bool active;
int lsock;
std::list<IncomingSSLInfo> incoming_ssl ;
}; };
class pqissllistener: public pqissllistenbase class pqissllistener: public pqissllistenbase
{ {
public: public:
pqissllistener(const struct sockaddr_storage &addr, p3PeerMgr *pm) :
pqissllistenbase(addr, pm) {}
virtual ~pqissllistener() {}
pqissllistener(const struct sockaddr_storage &addr, p3PeerMgr *pm); int addlistenaddr(const RsPeerId& id, pqissl *acc);
virtual ~pqissllistener(); int removeListenPort(const RsPeerId& id);
int addlistenaddr(const RsPeerId& id, pqissl *acc); virtual int status();
int removeListenPort(const RsPeerId& id); virtual int completeConnection(int sockfd, IncomingSSLInfo&);
virtual int finaliseConnection(int fd, SSL *ssl, const RsPeerId& peerId,
const sockaddr_storage &raddr);
//virtual int tick(); private:
virtual int status(); std::map<RsPeerId, pqissl*> listenaddr;
virtual int completeConnection(int sockfd, IncomingSSLInfo&);
virtual int finaliseConnection(int fd, SSL *ssl, const RsPeerId& peerId, const struct sockaddr_storage &raddr);
private:
std::map<RsPeerId, pqissl *> listenaddr;
}; };