Skip to content

Commit

Permalink
Teach the qt programs the new socket abstraction.
Browse files Browse the repository at this point in the history
  • Loading branch information
Marco van Wieringen committed Feb 17, 2015
1 parent 950e8ba commit 2ed70a3
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 13 deletions.
11 changes: 7 additions & 4 deletions src/qt-console/bcomm/dircomm.cpp
Expand Up @@ -62,6 +62,7 @@ void DirComm::terminate()
if (mainWin->m_connDebug)
Pmsg2(000, "DirComm %i terminating connections %s\n", m_conn, m_console->m_dir->name());
m_sock->close();
delete m_sock;
m_sock = NULL;
}
}
Expand Down Expand Up @@ -167,14 +168,16 @@ bool DirComm::connect_dir()
heart_beat = 0;
}

m_sock = bnet_connect(NULL, 5, 15, heart_beat,
_("Director daemon"), m_console->m_dir->address,
NULL, m_console->m_dir->DIRport, false);
if (m_sock == NULL) {
m_sock = New(BSOCK_TCP);
if (!m_sock->connect(NULL, 5, 15, heart_beat, "Director daemon",
m_console->m_dir->address, NULL,
m_console->m_dir->DIRport, false)) {
mainWin->set_status("Connection failed");
if (mainWin->m_connDebug) {
Pmsg2(000, "DirComm %i BAILING Connection failed %s\n", m_conn, m_console->m_dir->name());
}
delete m_sock;
m_sock = NULL;
goto bail_out;
} else {
/* Update page selector to green to indicate that Console is connected */
Expand Down
34 changes: 25 additions & 9 deletions src/qt-tray-monitor/monitoritem.cpp
Expand Up @@ -152,25 +152,40 @@ bool MonitorItem::doconnect()
dird = static_cast<DIRRES*>(d->resource);
message = QString("Connecting to Director %1:%2").arg(dird->address).arg(dird->DIRport);
emit showStatusbarMessage(message);
d->DSock = bnet_connect(NULL, d->connectTimeout,
0, 0, "Director daemon", dird->address, NULL, dird->DIRport, false);
jcr.dir_bsock = d->DSock;
d->DSock = New(BSOCK_TCP);
if (!d->DSock->connect(NULL, d->connectTimeout, 0, 0, "Director daemon",
dird->address, NULL, dird->DIRport, false)) {
delete d->DSock;
d->DSock = NULL;
} else {
jcr.dir_bsock = d->DSock;
}
break;
case R_CLIENT:
filed = static_cast<CLIENTRES*>(d->resource);
message = QString("Connecting to Client %1:%2").arg(filed->address).arg(filed->FDport);
emit showStatusbarMessage(message);
d->DSock = bnet_connect(NULL, d->connectTimeout,
0, 0, "File daemon", filed->address, NULL, filed->FDport, false);
jcr.file_bsock = d->DSock;
d->DSock = New(BSOCK_TCP);
if (!d->DSock->connect(NULL, d->connectTimeout, 0, 0, "File daemon",
filed->address, NULL, filed->FDport, false)) {
delete d->DSock;
d->DSock = NULL;
} else {
jcr.file_bsock = d->DSock;
}
break;
case R_STORAGE:
stored = static_cast<STORERES*>(d->resource);
message = QString("Connecting to Storage %1:%2").arg(stored->address).arg(stored->SDport);
emit showStatusbarMessage(message);
d->DSock = bnet_connect(NULL, d->connectTimeout,
0, 0, "Storage daemon", stored->address, NULL, stored->SDport, false);
jcr.store_bsock = d->DSock;
d->DSock = New(BSOCK_TCP);
if (!d->DSock->connect(NULL, d->connectTimeout, 0, 0, "Storage daemon",
stored->address, NULL, stored->SDport, false)) {
delete d->DSock;
d->DSock = NULL;
} else {
jcr.store_bsock = d->DSock;
}
break;
default:
printf("Error, currentitem is not a Client, a Storage or a Director..\n");
Expand Down Expand Up @@ -230,6 +245,7 @@ void MonitorItem::disconnect()
writecmd("quit");
d->DSock->signal(BNET_TERMINATE); /* send EOF */
d->DSock->close();
delete d->DSock;
d->DSock = NULL;
}
}
Expand Down

0 comments on commit 2ed70a3

Please sign in to comment.