summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorManuel Schneider2014-06-03 14:11:46 +0200
committerManuel Schneider2014-06-03 14:11:46 +0200
commit0d9e99a40590e2ef6ef04efa975d2185a244d519 (patch)
treeff98bf17d30f9ed73ad944b8f5e23b2071c16e42
parentRemove client list from listenServer. Check maxClients in Mainwindow (diff)
parentRemoved some unnecessary qDebug comments. (diff)
downloadpvs2-0d9e99a40590e2ef6ef04efa975d2185a244d519.tar.gz
pvs2-0d9e99a40590e2ef6ef04efa975d2185a244d519.tar.xz
pvs2-0d9e99a40590e2ef6ef04efa975d2185a244d519.zip
Merge branch 'master' of git.openslx.org:pvs2
-rw-r--r--src/server/mainwindow/mainwindow.cpp34
-rw-r--r--src/server/mainwindow/mainwindow.h2
-rw-r--r--src/server/net/listenserver.cpp1
-rw-r--r--src/server/net/sslserver.cpp1
4 files changed, 22 insertions, 16 deletions
diff --git a/src/server/mainwindow/mainwindow.cpp b/src/server/mainwindow/mainwindow.cpp
index d1974ab..32613f9 100644
--- a/src/server/mainwindow/mainwindow.cpp
+++ b/src/server/mainwindow/mainwindow.cpp
@@ -101,6 +101,7 @@ MainWindow::MainWindow(QString ipListUrl, QWidget* parent) :
connect(ui->action_Lock, SIGNAL(toggled(bool)), this, SLOT(onButtonLock(bool)));
connect(ui->action_Help, SIGNAL(triggered()), this, SLOT(onButtonHelp()));
+
/* Stuff for the button lock */
_buttonLockTimer = new QTimer(this);
_buttonLockTimer->setSingleShot(true);
@@ -276,6 +277,21 @@ void MainWindow::tellClientCurrentSituation(Client* client)
client->lockScreen(true);
}
+/***************************************************************************//**
+ * Checks if client and manager runs on same machine.
+ * @param client
+ * @return Return true, if pvsmanager is running on client.
+ */
+bool MainWindow::isManagerMachine(Client* client)
+{
+ foreach (const QHostAddress &address, QNetworkInterface::allAddresses())
+ if (address != QHostAddress(QHostAddress::LocalHost)
+ && client != NULL
+ && client->ip() == address.toString())
+ return true;
+ return false;
+}
+
/*
* Overridden methods
*/
@@ -647,15 +663,9 @@ void MainWindow::onButtonLock(bool checked)
for (QList<ConnectionFrame*>::iterator it(_clientFrames.begin()); it != _clientFrames.end(); ++it)
{
// Check if client is Tutor or the manager is also running on this machine.
- bool isManagerMachine = false;
- foreach (const QHostAddress &address, QNetworkInterface::allAddresses())
- if (address != QHostAddress(QHostAddress::LocalHost)
- && (*it)->client() != NULL
- && (*it)->client()->ip() == address.toString())
- isManagerMachine = true;
-
- if ((*it)->client() == NULL || isManagerMachine)
- continue; // Don't lock the tutor or the manager running machine.
+ bool isManager = isManagerMachine((*it)->client());
+ if ((*it)->client() == NULL || isManager)
+ continue;
(*it)->client()->lockScreen(checked);
}
}
@@ -709,7 +719,6 @@ void MainWindow::onButtonSetAsTutor()
*/
void MainWindow::onClientConnected(Client* client)
{
- qDebug("ListenServer told MainWindow about new connection");
connect(client, SIGNAL(authenticating(Client*, ClientLogin*)), this, SLOT(onClientAuthenticating(Client*, ClientLogin*)));
connect(client, SIGNAL(authenticated(Client*)), this, SLOT(onClientAuthenticated(Client*)));
}
@@ -726,7 +735,6 @@ void MainWindow::onClientConnected(Client* client)
*/
void MainWindow::onClientAuthenticating(Client* client, ClientLogin* request)
{
- qDebug("onClientAuthenticating - Slot was called.");
disconnect(client, SIGNAL(authenticating(Client*, ClientLogin*)), this, SLOT(onClientAuthenticating(Client*, ClientLogin*)));
if (!request->accept) // Another receiver of that signal already rejected the client, so nothing to do
return;
@@ -774,7 +782,6 @@ void MainWindow::onClientAuthenticating(Client* client, ClientLogin* request)
*/
void MainWindow::onClientAuthenticated(Client* client)
{
- qDebug("Entering onClientAuthenticated - Slot.");
disconnect(client, SIGNAL(authenticated(Client*)), this, SLOT(onClientAuthenticated(Client*)));
connect(client, SIGNAL(vncServerStateChange(Client*)), this, SLOT(onVncServerStateChange(Client*)), Qt::QueuedConnection);
connect(client, SIGNAL(vncClientStateChange(Client*)), this, SLOT(onVncClientStateChange(Client*)), Qt::QueuedConnection);
@@ -903,7 +910,8 @@ void MainWindow::onVncServerStateChange(Client* client)
else
{
// Lock others and stop their clients
- (*it)->client()->lockScreen(_mode == Mode::LockedMulticast);
+ bool isManager = isManagerMachine((*it)->client());
+ (*it)->client()->lockScreen(_mode == Mode::LockedMulticast && isManager != true);
(*it)->client()->stopVncClient();
}
}
diff --git a/src/server/mainwindow/mainwindow.h b/src/server/mainwindow/mainwindow.h
index 89361c9..a15c12f 100644
--- a/src/server/mainwindow/mainwindow.h
+++ b/src/server/mainwindow/mainwindow.h
@@ -78,6 +78,7 @@ private:
bool isValidClient(Client* client);
void changeProjection(Client *from, Mode mode = Mode::Broadcast, Client *to = NULL);
void tellClientCurrentSituation(Client* client);
+ bool isManagerMachine(Client* client);
void reset();
void closeEvent(QCloseEvent *e);
@@ -85,7 +86,6 @@ private:
void resizeEvent(QResizeEvent *e);
void mouseReleaseEvent(QMouseEvent* e);
-
protected slots:
void onTutorListDownloaded(QByteArray& tutorList);
void onSessionNameClick();
diff --git a/src/server/net/listenserver.cpp b/src/server/net/listenserver.cpp
index b005a45..ba56177 100644
--- a/src/server/net/listenserver.cpp
+++ b/src/server/net/listenserver.cpp
@@ -30,7 +30,6 @@ ListenServer::~ListenServer()
*/
void ListenServer::newClientConnection()
{
- qDebug("Listenserver::newClientConnection().");
QSslSocket* sock;
while ((sock = (QSslSocket*)_server.nextPendingConnection()) != NULL)
{
diff --git a/src/server/net/sslserver.cpp b/src/server/net/sslserver.cpp
index 65a40b4..4ea3991 100644
--- a/src/server/net/sslserver.cpp
+++ b/src/server/net/sslserver.cpp
@@ -36,7 +36,6 @@ SslServer::~SslServer()
*/
void SslServer::incomingConnection(int socketDescriptor)
{
- qDebug("SslServer:incomingConnection.");
QSslSocket *serverSocket = new QSslSocket(NULL);
connect(serverSocket, SIGNAL(sslErrors(const QList<QSslError> &)), this, SLOT(sslErrors(const QList<QSslError> &)));
QSslKey key;