00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifdef ENABLE_SSH
00016
00017 #include <globalsearch/sshmanager_cli.h>
00018
00019 #include <globalsearch/sshconnection_cli.h>
00020
00021 namespace GlobalSearch {
00022
00023 SSHManagerCLI::SSHManagerCLI(unsigned int connections,
00024 OptBase *parent)
00025 : SSHManager(parent),
00026 m_conn(new SSHConnectionCLI()),
00027 m_semaphore(new QSemaphore (connections))
00028 {
00029 }
00030
00031 SSHManagerCLI::~SSHManagerCLI()
00032 {
00033 delete m_conn;
00034 delete m_semaphore;
00035 }
00036
00037 void SSHManagerCLI::makeConnections(const QString &host,
00038 const QString &user,
00039 const QString &pass,
00040 unsigned int port)
00041 {
00042 m_host = host;
00043 m_user = user;
00044 m_port = port;
00045 m_conn->setLoginDetails(host, user, pass, port);
00046 }
00047
00048 SSHConnection *SSHManagerCLI::getFreeConnection()
00049 {
00050 m_semaphore->acquire();
00051 return m_conn;
00052 }
00053
00054 void SSHManagerCLI::unlockConnection(SSHConnection* ssh)
00055 {
00056 m_semaphore->release();
00057 }
00058
00059 }
00060
00061 #endif // ENABLE_SSH