[Openvas-commits] r10571 - trunk/gsd/src
scm-commit@wald.intevation.org
scm-commit at wald.intevation.org
Wed Mar 16 18:48:28 CET 2011
Author: raimund
Date: 2011-03-16 18:48:26 +0100 (Wed, 16 Mar 2011)
New Revision: 10571
Added:
trunk/gsd/src/dlg_new_slave.ui
trunk/gsd/src/dock_details_slave.ui
Modified:
trunk/gsd/src/CMakeLists.txt
trunk/gsd/src/dock_details.cpp
trunk/gsd/src/dock_details.h
trunk/gsd/src/gsd_control.cpp
trunk/gsd/src/gsd_control.h
trunk/gsd/src/gsd_dialogs.cpp
trunk/gsd/src/gsd_dialogs.h
trunk/gsd/src/gsd_dlg.cpp
trunk/gsd/src/gsd_dlg.h
trunk/gsd/src/gsd_mainwindow.ui
trunk/gsd/src/gsd_mw.cpp
trunk/gsd/src/gsd_mw.h
trunk/gsd/src/omp_string_builder.cpp
trunk/gsd/src/omp_utilities.cpp
trunk/gsd/src/omp_utilities.h
Log:
Added support for slaves.
* src/gsd_control.cpp (gsd_control): Create and prepare slave model.
(start): Signal/slot configuration for slave handling.
(loadData): Request slaves on startup.
(request_finished_listener): Request slaves if a slave was created or deleted.
(request_slaves, slave_delete, getSlaveModel): New.
* src/gsd_mw.cpp (gsd_mw): Create new dockwidget and table for slaves.
(createToolBars): Add actions to dockwidget.
(createContextMenu): Add actions to contextmenu.
(prepareWidgets): Set configurations for new dockwidget.
(createConnections): Signal/slot configuration for slave dockwidget.
(setLoggedOut): Disable actions on logout.
(authentication_successful): Signal/slot configuration for the dockwidgets
focus.
(delete_slave, new_slave_dlg, details_slave_dlg, slave_dw, focus_slaves)
(slave_selectionchanged): New.
* src/gsd_dlg.cpp (gsd_dlg): Signal/slot configuration for slave creation.
(new_slave_dlg): New.
* src/gsd_dialogs.cpp (dlg_new_slave::create): New.
* src/dock_details.cpp (dock_details_slave::load, dock_details_slave::update):
New.
* src/omp_utilities.cpp (getType): Added slave to types.
* src/omp_string_builder.cpp (requestString): Build request string for slaves.
(createString): Build create string for slaves.
(deleteString): Build delete string for slaves.
(appendCreateParameter): Add parameter to create string for slaves.
* src/gsd_mainwindow.ui: Added actions for slave handling.
* src/dock_details.h: Added class dock_details_slave.
* src/gsd_control.h, src/gsd_mw.h, src/gsd_dialogs.h, src/gsd_dlg.h,
src/omp_utilities.h: Updated prototypes.
* src/dlg_new_slave.ui, src/dock_details_slave.ui: New.
* src/CMakeLists.txt: Added new files.
Modified: trunk/gsd/src/CMakeLists.txt
===================================================================
--- trunk/gsd/src/CMakeLists.txt 2011-03-16 16:24:02 UTC (rev 10570)
+++ trunk/gsd/src/CMakeLists.txt 2011-03-16 17:48:26 UTC (rev 10571)
@@ -118,6 +118,7 @@
dlg_newTask.ui
dlg_new_note.ui
dlg_new_override.ui
+ dlg_new_slave.ui
dlg_modify_config.ui
dlg_modify_scan_pref.ui
dlg_modify_family.ui
@@ -135,6 +136,7 @@
dock_details_family.ui
dock_details_note.ui
dock_details_override.ui
+ dock_details_slave.ui
dock_logging.ui
dock_table.ui
dock_performance.ui
Added: trunk/gsd/src/dlg_new_slave.ui
===================================================================
--- trunk/gsd/src/dlg_new_slave.ui 2011-03-16 16:24:02 UTC (rev 10570)
+++ trunk/gsd/src/dlg_new_slave.ui 2011-03-16 17:48:26 UTC (rev 10571)
@@ -0,0 +1,145 @@
+<ui version="4.0" >
+ <class>dlg_new_slave</class>
+ <widget class="QDialog" name="dlg_new_slave" >
+ <property name="geometry" >
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>417</width>
+ <height>243</height>
+ </rect>
+ </property>
+ <property name="windowTitle" >
+ <string>New Slave</string>
+ </property>
+ <property name="windowIcon" >
+ <iconset>
+ <normaloff>:/img/favicon.gif</normaloff>:/img/favicon.gif</iconset>
+ </property>
+ <property name="modal" >
+ <bool>true</bool>
+ </property>
+ <layout class="QGridLayout" name="gridLayout" >
+ <item row="0" column="0" >
+ <widget class="QLabel" name="label" >
+ <property name="text" >
+ <string>Name:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1" colspan="3" >
+ <widget class="QLineEdit" name="le_name" />
+ </item>
+ <item row="1" column="0" >
+ <widget class="QLabel" name="label_2" >
+ <property name="text" >
+ <string>Comment (optional):</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1" colspan="3" >
+ <widget class="QLineEdit" name="le_comment" />
+ </item>
+ <item row="2" column="0" >
+ <widget class="QLabel" name="label_3" >
+ <property name="text" >
+ <string>Host:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1" colspan="3" >
+ <widget class="QLineEdit" name="le_host" />
+ </item>
+ <item row="3" column="0" >
+ <widget class="QLabel" name="label_4" >
+ <property name="text" >
+ <string>Port:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="6" column="2" >
+ <widget class="QPushButton" name="pb_cancel" >
+ <property name="text" >
+ <string>Cancel</string>
+ </property>
+ </widget>
+ </item>
+ <item row="6" column="3" >
+ <widget class="QPushButton" name="pb_create" >
+ <property name="text" >
+ <string>Create</string>
+ </property>
+ </widget>
+ </item>
+ <item row="6" column="1" >
+ <spacer name="horizontalSpacer" >
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0" >
+ <size>
+ <width>40</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="4" column="0" >
+ <widget class="QLabel" name="label_5" >
+ <property name="text" >
+ <string>Login:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="0" >
+ <widget class="QLabel" name="label_6" >
+ <property name="text" >
+ <string>Password:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="1" >
+ <widget class="QLineEdit" name="le_port" />
+ </item>
+ <item row="4" column="1" colspan="3" >
+ <widget class="QLineEdit" name="le_login" />
+ </item>
+ <item row="5" column="1" colspan="3" >
+ <widget class="QLineEdit" name="le_password" >
+ <property name="echoMode" >
+ <enum>QLineEdit::Password</enum>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <tabstops>
+ <tabstop>le_name</tabstop>
+ <tabstop>le_comment</tabstop>
+ <tabstop>le_host</tabstop>
+ <tabstop>le_port</tabstop>
+ <tabstop>le_login</tabstop>
+ <tabstop>le_password</tabstop>
+ <tabstop>pb_cancel</tabstop>
+ <tabstop>pb_create</tabstop>
+ </tabstops>
+ <resources/>
+ <connections>
+ <connection>
+ <sender>pb_cancel</sender>
+ <signal>released()</signal>
+ <receiver>dlg_new_slave</receiver>
+ <slot>close()</slot>
+ <hints>
+ <hint type="sourcelabel" >
+ <x>274</x>
+ <y>173</y>
+ </hint>
+ <hint type="destinationlabel" >
+ <x>208</x>
+ <y>101</y>
+ </hint>
+ </hints>
+ </connection>
+ </connections>
+</ui>
Modified: trunk/gsd/src/dock_details.cpp
===================================================================
--- trunk/gsd/src/dock_details.cpp 2011-03-16 16:24:02 UTC (rev 10570)
+++ trunk/gsd/src/dock_details.cpp 2011-03-16 17:48:26 UTC (rev 10571)
@@ -2004,3 +2004,85 @@
settings.setValue ("geometrie", saveGeometry ());
settings.endGroup ();
}
+
+
+void
+dock_details_slave::load ()
+{
+ delegate_date_time *d_time = new delegate_date_time ();
+ delegate_icon *d_icon = new delegate_icon ();
+ delegate_progress *d_prog = new delegate_progress ();
+ delegate_text *d_text = new delegate_text ();
+ delegate_threat *d_thre = new delegate_threat ();
+ delegate_trend *d_tren = new delegate_trend ();
+
+ tv_table->setItemDelegateForColumn (1, d_icon);
+ tv_table->setItemDelegateForColumn (2, d_prog);
+ tv_table->setItemDelegateForColumn (4, d_time);
+ tv_table->setItemDelegateForColumn (5, d_time);
+ tv_table->setItemDelegateForColumn (6, d_thre);
+ tv_table->setItemDelegateForColumn (7, d_tren);
+ tv_table->verticalHeader ()->setVisible (false);
+ tv_table->horizontalHeader ()->setResizeMode (QHeaderView::Fixed);
+ tv_table->horizontalHeader ()->setResizeMode (0, QHeaderView::Stretch);
+ tv_table->setColumnWidth (0, 120);
+ tv_table->horizontalHeader ()->setHighlightSections (false);
+ tv_table->horizontalHeader ()->setMinimumSectionSize (75);
+ tv_table->setAlternatingRowColors (true);
+ tv_table->setSelectionBehavior (QAbstractItemView::SelectRows);
+ tv_table->hideColumn (1);
+ tv_table->hideColumn (2);
+ tv_table->hideColumn (4);
+ tv_table->hideColumn (5);
+ tv_table->hideColumn (6);
+
+}
+
+
+void
+dock_details_slave::update ()
+{
+ if (id.compare ("") == 0)
+ return;
+
+ model_omp_entity *tasks = this->control->getTaskModel ();
+ tv_table->setModel (tasks);
+ tasks->setFilterType (model_omp_entity::ATTRIBUTE_FILTER);
+ tasks->setFilter ("task slave id " + id);
+
+ QList <int> filterList = tasks->getFilterIndexList ();
+ for (int i = 0; i < tasks->rowCount (); i++)
+ {
+ if (!filterList.contains (i))
+ tv_table->hideRow (i);
+ else if (tv_table->isRowHidden(i))
+ tv_table->showRow (i);
+ }
+
+ tasks->resetFilter ();
+
+ model_omp_entity *slaves = this->control->getSlaveModel ();
+ QStringList list = this->id.split (" ");
+ QDomElement showElement;
+ int i = 0;
+ while (i < slaves->rowCount())
+ {
+ QString attr = slaves->getAttr(slaves->getEntity(i), "slave id");
+
+ if (attr.compare (id) == 0)
+ {
+ showElement = slaves->getEntity (i);
+ break;
+ }
+ i++;
+ }
+
+ this->setWindowTitle ("Slave " + slaves->getValue (showElement, "name"));
+ this->la_name_v->setText (slaves->getValue (showElement, "name"));
+ this->la_comment_v->setText (slaves->getValue (showElement, "comment"));
+ this->la_host_v->setText (slaves->getValue (showElement, "host"));
+ this->la_port_v->setText (slaves->getValue (showElement, "port"));
+ this->la_login_v->setText (slaves->getValue (showElement,
+ "login"));
+ load ();
+}
Modified: trunk/gsd/src/dock_details.h
===================================================================
--- trunk/gsd/src/dock_details.h 2011-03-16 16:24:02 UTC (rev 10570)
+++ trunk/gsd/src/dock_details.h 2011-03-16 17:48:26 UTC (rev 10571)
@@ -41,6 +41,7 @@
#include "ui_dock_details_nvt.h"
#include "ui_dock_details_note.h"
#include "ui_dock_details_override.h"
+#include "ui_dock_details_slave.h"
#include "delegate_trend.h"
#include "delegate_text.h"
#include "delegate_threat.h"
@@ -429,5 +430,25 @@
~dock_details_override () {};
void load ();
};
+
+
+/**
+ * @brief Protos and data structures for target details widget.
+ */
+class dock_details_slave : public dock_details, private Ui::dock_details_slave
+{
+ Q_OBJECT
+
+ public slots:
+ void update ();
+ public:
+ dock_details_slave (gsd_control *ctl)
+ {
+ setupUi (this);
+ this->control = ctl;
+ };
+ ~dock_details_slave () {};
+ void load ();
+};
#endif
Added: trunk/gsd/src/dock_details_slave.ui
===================================================================
--- trunk/gsd/src/dock_details_slave.ui 2011-03-16 16:24:02 UTC (rev 10570)
+++ trunk/gsd/src/dock_details_slave.ui 2011-03-16 17:48:26 UTC (rev 10571)
@@ -0,0 +1,216 @@
+<ui version="4.0" >
+ <class>dock_details_slave</class>
+ <widget class="QDockWidget" name="dock_details_slave" >
+ <property name="geometry" >
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>499</width>
+ <height>294</height>
+ </rect>
+ </property>
+ <property name="windowIcon" >
+ <iconset resource="img/images.qrc" >
+ <normaloff>:/img/favicon.gif</normaloff>:/img/favicon.gif</iconset>
+ </property>
+ <property name="windowTitle" >
+ <string>Details Slave</string>
+ </property>
+ <widget class="QWidget" name="dockWidgetContents" >
+ <layout class="QGridLayout" name="gridLayout" >
+ <item row="0" column="0" colspan="2" >
+ <widget class="QTabWidget" name="tabWidget" >
+ <property name="currentIndex" >
+ <number>0</number>
+ </property>
+ <widget class="QWidget" name="tab_5" >
+ <attribute name="title" >
+ <string>Summary</string>
+ </attribute>
+ <layout class="QGridLayout" name="gridLayout_3" >
+ <item row="6" column="0" colspan="2" >
+ <widget class="QScrollArea" name="scrollArea" >
+ <property name="widgetResizable" >
+ <bool>true</bool>
+ </property>
+ <widget class="QWidget" name="scrollAreaWidgetContents" >
+ <property name="geometry" >
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>455</width>
+ <height>204</height>
+ </rect>
+ </property>
+ <layout class="QGridLayout" name="gridLayout_4" >
+ <item row="0" column="0" >
+ <widget class="QLabel" name="la_name" >
+ <property name="text" >
+ <string>Name:</string>
+ </property>
+ <property name="margin" >
+ <number>1</number>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1" >
+ <widget class="QLabel" name="la_name_v" >
+ <property name="text" >
+ <string/>
+ </property>
+ <property name="margin" >
+ <number>1</number>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0" >
+ <widget class="QLabel" name="la_comment" >
+ <property name="text" >
+ <string>Comment:</string>
+ </property>
+ <property name="margin" >
+ <number>1</number>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1" >
+ <widget class="QLabel" name="la_comment_v" >
+ <property name="text" >
+ <string/>
+ </property>
+ <property name="margin" >
+ <number>1</number>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0" >
+ <widget class="QLabel" name="la_host" >
+ <property name="text" >
+ <string>Host:</string>
+ </property>
+ <property name="margin" >
+ <number>1</number>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1" >
+ <widget class="QLabel" name="la_host_v" >
+ <property name="text" >
+ <string/>
+ </property>
+ <property name="margin" >
+ <number>1</number>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="0" >
+ <widget class="QLabel" name="la_port" >
+ <property name="text" >
+ <string>Port:</string>
+ </property>
+ <property name="margin" >
+ <number>1</number>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="1" >
+ <widget class="QLabel" name="la_port_v" >
+ <property name="text" >
+ <string/>
+ </property>
+ <property name="margin" >
+ <number>1</number>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="0" >
+ <widget class="QLabel" name="la_login" >
+ <property name="text" >
+ <string>Login:</string>
+ </property>
+ <property name="margin" >
+ <number>1</number>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="1" >
+ <widget class="QLabel" name="la_login_v" >
+ <property name="text" >
+ <string/>
+ </property>
+ <property name="margin" >
+ <number>1</number>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="0" >
+ <spacer name="verticalSpacer" >
+ <property name="orientation" >
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeHint" stdset="0" >
+ <size>
+ <width>20</width>
+ <height>40</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="5" column="1" >
+ <spacer name="horizontalSpacer_2" >
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0" >
+ <size>
+ <width>40</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
+ </widget>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="tab_6" >
+ <attribute name="title" >
+ <string>Tasks using this Slave</string>
+ </attribute>
+ <layout class="QGridLayout" name="gridLayout_2" >
+ <item row="0" column="0" >
+ <widget class="QTableView" name="tv_table" >
+ <property name="alternatingRowColors" >
+ <bool>true</bool>
+ </property>
+ <property name="selectionMode" >
+ <enum>QAbstractItemView::SingleSelection</enum>
+ </property>
+ <property name="selectionBehavior" >
+ <enum>QAbstractItemView::SelectRows</enum>
+ </property>
+ <property name="verticalScrollMode" >
+ <enum>QAbstractItemView::ScrollPerPixel</enum>
+ </property>
+ <property name="horizontalScrollMode" >
+ <enum>QAbstractItemView::ScrollPerPixel</enum>
+ </property>
+ <property name="cornerButtonEnabled" >
+ <bool>false</bool>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </widget>
+ <resources>
+ <include location="img/images.qrc" />
+ </resources>
+ <connections/>
+</ui>
Modified: trunk/gsd/src/gsd_control.cpp
===================================================================
--- trunk/gsd/src/gsd_control.cpp 2011-03-16 16:24:02 UTC (rev 10570)
+++ trunk/gsd/src/gsd_control.cpp 2011-03-16 17:48:26 UTC (rev 10571)
@@ -104,6 +104,12 @@
overrideModel->addHeader (tr ("To"), "new_threat");
overrideModel->addHeader (tr ("Text"), "text");
+ slaveModel = new model_omp_entity ();
+ slaveModel->addHeader (tr ("Name"), "name");
+ slaveModel->addHeader (tr ("Host"), "host");
+ slaveModel->addHeader (tr ("Port"), "port");
+ slaveModel->addHeader (tr ("Login"), "login");
+
systemReportModel = new model_omp_entity ();
familyModel =new model_omp_entity ();
@@ -240,6 +246,10 @@
this,
SLOT (request_override_details (QString)));
connect (mainwindow,
+ SIGNAL (sig_req_slaves (int)),
+ this,
+ SLOT (request_slaves (int)));
+ connect (mainwindow,
SIGNAL (sig_start_task (int)),
this,
SLOT (task_start (int)));
@@ -292,6 +302,10 @@
this,
SLOT (override_delete (int)));
connect (mainwindow,
+ SIGNAL (sig_delete_slave (int)),
+ this,
+ SLOT (slave_delete (int)));
+ connect (mainwindow,
SIGNAL (sig_create_task ()),
dialogs,
SLOT (new_task_dlg ()));
@@ -320,6 +334,10 @@
dialogs,
SLOT (new_agent_dlg ()));
connect (mainwindow,
+ SIGNAL (sig_create_slave ()),
+ dialogs,
+ SLOT (new_slave_dlg ()));
+ connect (mainwindow,
SIGNAL (sig_details_config (int)),
this,
SLOT (request_config_details (int)));
@@ -485,6 +503,7 @@
request_agents (0);
request_notes (0);
request_overrides (0);
+ request_slaves (0);
request_system_reports (0);
request_system_reports (NULL, 3600);
request_families ();
@@ -509,6 +528,7 @@
escalatorModel->removeEntities ();
noteModel->removeEntities ();
overrideModel->removeEntities ();
+ slaveModel->removeEntities ();
systemReportModel->removeEntities ();
familyModel->removeEntities ();
performanceModel->removeEntities ();
@@ -797,6 +817,24 @@
/**
+ * @brief SLOT that starts an slave update-request.
+ *
+ * An update for the slave widget is requested.
+ *
+ * @param[in] interval Time in second between two updates.
+ */
+void
+gsd_control::request_slaves (int interval)
+{
+ QMap<QString, QString> parameter;
+ this->connector->getEntity (omp_utilities::SLAVE,
+ interval,
+ slaveModel,
+ parameter);
+}
+
+
+/**
* @brief SLOT that stops frequently running updates.
*
* The task update for the task widget is stopped.
@@ -1341,6 +1379,51 @@
/**
+ * @brief SLOT that deletes a slave.
+ *
+ * Deletes a slave, identified by its id.
+ *
+ * @param[in] index Index in slave model/table.
+ */
+void
+gsd_control::slave_delete (int index)
+{
+ QDomElement ent = slaveModel->getEntity (index);
+ QString id = slaveModel->getAttr (ent, "slave id");
+
+ int ret = QMessageBox::warning (NULL,
+ tr ("Delete?"),
+ QString (tr ("Do you really want delete the Slave:<b>%1</b>")
+ .arg (slaveModel->getValue (ent, "name"))),
+ QMessageBox::Yes,
+ QMessageBox::No);
+ switch (ret)
+ {
+ case QMessageBox::Yes:
+ {
+ if (this->connector->deleteEntity (omp_utilities::SLAVE,
+ id) != 0)
+ {
+ dialogs->request_failed (omp_utilities::SLAVE,
+ omp_utilities::OMP_DELETE,
+ -1);
+ return;
+ }
+ slaveModel->removeEntity (index);
+ return;
+ }
+ case QMessageBox::No:
+ {
+ return;
+ }
+ default:
+ {
+ return;
+ }
+ }
+}
+
+/**
* @brief SLOT that requests note details.
*
* @param[in] id Note id.
@@ -2001,6 +2084,18 @@
/**
* @brief Getter
*
+ * @return The model containing the slaves.
+ */
+model_omp_entity*
+gsd_control::getSlaveModel ()
+{
+ return slaveModel;
+}
+
+
+/**
+ * @brief Getter
+ *
* @return The model containing the report in html format.
*/
model_omp_entity*
@@ -2335,6 +2430,11 @@
{
request_overrides (0);
}
+ if (type == omp_utilities::SLAVE && (com == omp_utilities::OMP_CREATE ||
+ com == omp_utilities::OMP_DELETE))
+ {
+ request_slaves (0);
+ }
if (type == omp_utilities::NVT_FAMILY && com == omp_utilities::OMP_PREFERENCES )
{
notifyFamilyDetails (userData);
Modified: trunk/gsd/src/gsd_control.h
===================================================================
--- trunk/gsd/src/gsd_control.h 2011-03-16 16:24:02 UTC (rev 10570)
+++ trunk/gsd/src/gsd_control.h 2011-03-16 17:48:26 UTC (rev 10571)
@@ -92,6 +92,7 @@
model_omp_entity *noteDetailsModel;
model_omp_entity *overrideModel;
model_omp_entity *overrideDetailsModel;
+ model_omp_entity *slaveModel;
model_omp_entity *systemReportModel;
model_omp_entity *nvtModel;
model_omp_entity *nvtDetailsModel;
@@ -138,6 +139,7 @@
void request_agents (int);
void request_notes (int);
void request_overrides (int);
+ void request_slaves (int);
void request_system_reports (int);
void request_system_reports (QString, long);
void request_families ();
@@ -166,6 +168,7 @@
void note_modify (int);
void override_delete (int);
void override_modify (int);
+ void slave_delete (int);
void report_delete (QString);
void config_download (int);
void system_report_download ();
@@ -200,6 +203,7 @@
model_omp_entity *getNoteDetailsModel ();
model_omp_entity *getOverrideModel ();
model_omp_entity *getOverrideDetailsModel ();
+ model_omp_entity *getSlaveModel ();
model_omp_entity *getSystemDiagramModel ();
model_omp_entity *getSystemReportModel ();
model_omp_entity *getFamilyModel ();
Modified: trunk/gsd/src/gsd_dialogs.cpp
===================================================================
--- trunk/gsd/src/gsd_dialogs.cpp 2011-03-16 16:24:02 UTC (rev 10570)
+++ trunk/gsd/src/gsd_dialogs.cpp 2011-03-16 17:48:26 UTC (rev 10571)
@@ -1003,3 +1003,20 @@
this->close ();
}
+
+
+void
+dlg_new_slave::create ()
+{
+ QMap<QString,QString> parameter;
+ parameter.insert ("name", le_name->text ());
+ parameter.insert ("comment", le_comment->text ());
+ parameter.insert ("host", le_host->text ());
+ parameter.insert ("port", le_port->text ());
+ parameter.insert ("login", le_login->text ());
+ parameter.insert ("password", le_password->text ());
+
+ emit sig_create (omp_utilities::SLAVE, parameter);
+
+ this->close ();
+}
Modified: trunk/gsd/src/gsd_dialogs.h
===================================================================
--- trunk/gsd/src/gsd_dialogs.h 2011-03-16 16:24:02 UTC (rev 10570)
+++ trunk/gsd/src/gsd_dialogs.h 2011-03-16 17:48:26 UTC (rev 10571)
@@ -44,6 +44,7 @@
#include "ui_dlg_newConfig.h"
#include "ui_dlg_new_note.h"
#include "ui_dlg_new_override.h"
+#include "ui_dlg_new_slave.h"
#include "model_omp_entity.h"
#include "ui_dlg_modify_config.h"
@@ -1155,5 +1156,27 @@
};
};
+
+class dlg_new_slave : public create_dialog,
+ private Ui::dlg_new_slave
+{
+ Q_OBJECT
+
+ private slots:
+ void create ();
+
+ public:
+ dlg_new_slave ()
+ {
+ setupUi (this);
+ connect (pb_create,
+ SIGNAL (released ()),
+ this,
+ SLOT (create ()));
+ QIntValidator *val = new QIntValidator (0, 65535, le_port);
+ le_port->setValidator(val);
+ }
+ ~dlg_new_slave () {};
+};
#endif
Modified: trunk/gsd/src/gsd_dlg.cpp
===================================================================
--- trunk/gsd/src/gsd_dlg.cpp 2011-03-16 16:24:02 UTC (rev 10570)
+++ trunk/gsd/src/gsd_dlg.cpp 2011-03-16 17:48:26 UTC (rev 10571)
@@ -48,6 +48,7 @@
new_escalator = new dlg_new_escalator ();
new_credential = new dlg_new_credential ();
new_agent = new dlg_new_agent ();
+ new_slave = new dlg_new_slave ();
connect (login,
SIGNAL (sig_save_profile (QString, omp_credentials&)),
@@ -97,6 +98,10 @@
SIGNAL (sig_create (int, QMap<QString, QString>)),
this,
SLOT (create (int, QMap <QString, QString>)));
+ connect (new_slave,
+ SIGNAL (sig_create (int, QMap<QString, QString>)),
+ this,
+ SLOT (create (int, QMap<QString, QString>)));
}
gsd_dlg::~gsd_dlg ()
@@ -261,6 +266,12 @@
void
+gsd_dlg::new_slave_dlg ()
+{
+ new_slave->show ();
+}
+
+void
gsd_dlg::request_failed (int type, int command, int err)
{}
Modified: trunk/gsd/src/gsd_dlg.h
===================================================================
--- trunk/gsd/src/gsd_dlg.h 2011-03-16 16:24:02 UTC (rev 10570)
+++ trunk/gsd/src/gsd_dlg.h 2011-03-16 17:48:26 UTC (rev 10571)
@@ -67,6 +67,7 @@
void new_schedule_dlg ();
void new_target_dlg ();
void new_task_dlg ();
+ void new_slave_dlg ();
void request_failed (int, int, int);
private:
@@ -83,6 +84,7 @@
dlg_new_escalator *new_escalator;
dlg_new_credential *new_credential;
dlg_new_agent *new_agent;
+ dlg_new_slave *new_slave;
public:
gsd_dlg (gsd_control *ctl);
Modified: trunk/gsd/src/gsd_mainwindow.ui
===================================================================
--- trunk/gsd/src/gsd_mainwindow.ui 2011-03-16 16:24:02 UTC (rev 10570)
+++ trunk/gsd/src/gsd_mainwindow.ui 2011-03-16 17:48:26 UTC (rev 10571)
@@ -80,16 +80,6 @@
</property>
</widget>
</item>
- <item row="0" column="1" >
- <widget class="QLabel" name="label_3" >
- <property name="text" >
- <string>Resources Overview</string>
- </property>
- <property name="alignment" >
- <set>Qt::AlignCenter</set>
- </property>
- </widget>
- </item>
<item row="1" column="0" >
<widget class="QFrame" name="frame" >
<property name="minimumSize" >
@@ -120,6 +110,16 @@
</layout>
</widget>
</item>
+ <item row="0" column="1" >
+ <widget class="QLabel" name="label_3" >
+ <property name="text" >
+ <string>Resources Overview</string>
+ </property>
+ <property name="alignment" >
+ <set>Qt::AlignCenter</set>
+ </property>
+ </widget>
+ </item>
<item row="1" column="1" >
<widget class="QFrame" name="frame_4" >
<property name="minimumSize" >
@@ -231,18 +231,6 @@
</widget>
</item>
</layout>
- <zorder>label</zorder>
- <zorder>wv_task_count</zorder>
- <zorder>label</zorder>
- <zorder>frame</zorder>
- <zorder>label_3</zorder>
- <zorder>frame_4</zorder>
- <zorder>label_2</zorder>
- <zorder>label_4</zorder>
- <zorder>frame_2</zorder>
- <zorder>frame_3</zorder>
- <zorder>frame_2</zorder>
- <zorder>frame_3</zorder>
</widget>
</widget>
</item>
@@ -321,6 +309,7 @@
<addaction name="actionNotes" />
<addaction name="actionOverrides" />
<addaction name="actionPerformance" />
+ <addaction name="actionSlaves" />
</widget>
<widget class="QMenu" name="menuExtras" >
<property name="title" >
@@ -924,6 +913,38 @@
<string>&Start Greenbone Security Assistant</string>
</property>
</action>
+ <action name="actionDetails_Slave" >
+ <property name="icon" >
+ <iconset resource="img/images.qrc" >
+ <normaloff>:/img/details.png</normaloff>:/img/details.png</iconset>
+ </property>
+ <property name="text" >
+ <string>Details</string>
+ </property>
+ </action>
+ <action name="actionDelete_Slave" >
+ <property name="icon" >
+ <iconset resource="img/images.qrc" >
+ <normaloff>:/img/delete.png</normaloff>:/img/delete.png</iconset>
+ </property>
+ <property name="text" >
+ <string>Delete</string>
+ </property>
+ </action>
+ <action name="actionNew_Slave" >
+ <property name="icon" >
+ <iconset resource="img/images.qrc" >
+ <normaloff>:/img/new.png</normaloff>:/img/new.png</iconset>
+ </property>
+ <property name="text" >
+ <string>New</string>
+ </property>
+ </action>
+ <action name="actionSlaves" >
+ <property name="text" >
+ <string>Slaves</string>
+ </property>
+ </action>
</widget>
<customwidgets>
<customwidget>
Modified: trunk/gsd/src/gsd_mw.cpp
===================================================================
--- trunk/gsd/src/gsd_mw.cpp 2011-03-16 16:24:02 UTC (rev 10570)
+++ trunk/gsd/src/gsd_mw.cpp 2011-03-16 17:48:26 UTC (rev 10571)
@@ -72,6 +72,9 @@
this->addDockWidget (Qt::BottomDockWidgetArea, overrides);
performance = new dock_performance ();
this->addDockWidget (Qt::BottomDockWidgetArea, performance);
+ slaves = new dock_table ();
+ slaves->setObjectName ("Slaves");
+ this->addDockWidget (Qt::BottomDockWidgetArea, slaves);
taskProgress = new delegate_progress ();
trendIcon = new delegate_trend ();
@@ -178,6 +181,11 @@
overrides->addActionToToolBar (actionDelete_Override);
overrides->addSeparator ();
overrides->addActionToToolBar (actionDetails_Override);
+
+ slaves->addActionToToolBar (actionNew_Slave);
+ slaves->addActionToToolBar (actionDelete_Slave);
+ slaves->addSeparator ();
+ slaves->addActionToToolBar (actionDetails_Slave);
}
/**
@@ -238,6 +246,10 @@
overrides->addSeparatorToMenu ();
overrides->addActionToMenu (actionDetails_Override);
+ slaves->addActionToMenu (actionNew_Slave);
+ slaves->addActionToMenu (actionDelete_Slave);
+ slaves->addSeparatorToMenu ();
+ slaves->addActionToMenu (actionDetails_Slave);
}
@@ -499,6 +511,34 @@
this, SLOT (override_selectionchanged (const QItemSelection &,
const QItemSelection &)));
+ slaves->setWindowTitle (tr ("Slaves"));
+ QMainWindow::tabifyDockWidget (targets, slaves);
+ slaves->setModel (control->getSlaveModel ());
+ slaves->setFeatures (QDockWidget::DockWidgetClosable |
+ QDockWidget::DockWidgetMovable |
+ QDockWidget::DockWidgetFloatable);
+ QTableView *tv_slaves = slaves->getTable ();
+ tv_slaves->setObjectName ("tv_slaves");
+ tv_slaves->horizontalHeader ()->setResizeMode (QHeaderView::Fixed);
+ tv_slaves->horizontalHeader ()->setResizeMode (0, QHeaderView::Stretch);
+ tv_slaves->setColumnWidth (0, 150);
+ tv_slaves->setColumnWidth (1, 130);
+ tv_slaves->setColumnWidth (2, 60);
+ tv_slaves->setColumnWidth (3, 80);
+ tv_slaves->verticalHeader ()->setVisible (false);
+ tv_slaves->horizontalHeader ()->setHighlightSections (false);
+ tv_slaves->horizontalHeader ()->setMinimumSectionSize (60);
+
+ tv_slaves->installEventFilter (this);
+ connect (tv_slaves, SIGNAL (doubleClicked (const QModelIndex&)), this,
+ SLOT (details_slave_dlg ()));
+ connect (tv_slaves->selectionModel (),
+ SIGNAL (selectionChanged (const QItemSelection&,
+ const QItemSelection& )),
+ this,
+ SLOT (slave_selectionchanged (const QItemSelection&,
+ const QItemSelection&)));
+
QMainWindow::tabifyDockWidget (targets, performance);
performance->setReportModel (control->getSystemReportModel ());
performance->setGraphicsModel (control->getSystemDiagramModel ());
@@ -743,6 +783,10 @@
SIGNAL (triggered (bool)),
this,
SLOT (override_dw ()));
+ connect (actionSlaves,
+ SIGNAL (triggered (bool)),
+ this,
+ SLOT (slave_dw ()));
connect (actionPerformance,
SIGNAL (triggered(bool)),
this,
@@ -811,6 +855,14 @@
SIGNAL (triggered (bool)),
this,
SLOT (delete_override ()));
+ connect (actionNew_Slave,
+ SIGNAL (triggered (bool)),
+ this,
+ SLOT (new_slave_dlg ()));
+ connect (actionDelete_Slave,
+ SIGNAL (triggered (bool)),
+ this,
+ SLOT (delete_slave ()));
connect (actionDetails_Target,
SIGNAL (triggered (bool)),
this,
@@ -843,6 +895,10 @@
SIGNAL (triggered (bool)),
this,
SLOT (modify_override_dlg ()));
+ connect (actionDetails_Slave,
+ SIGNAL (triggered (bool)),
+ this,
+ SLOT (details_slave_dlg ()));
connect (actionDetails_Task,
SIGNAL (triggered (bool)),
this,
@@ -960,6 +1016,9 @@
actionDelete_Override->setDisabled (true);
actionDetails_Override->setDisabled (true);
actionEdit_Override->setDisabled (true);
+ actionNew_Slave->setDisabled (true);
+ actionDelete_Slave->setDisabled (true);
+ actionDetails_Slave->setDisabled (true);
clearDashboard ();
}
@@ -1011,6 +1070,8 @@
SLOT (focus_notes (bool)));
connect (overrides, SIGNAL (visibilityChanged (bool)), this,
SLOT (focus_overrides (bool)));
+ connect (slaves, SIGNAL (visibilityChanged (bool)), this,
+ SLOT (focus_slaves (bool)));
connect (performance, SIGNAL (visibilityChanged (bool)), this,
SLOT (focus_performance (bool)));
@@ -1028,6 +1089,7 @@
actionNew_Credential->setDisabled (false);
actionNew_Agent->setDisabled (false);
actionNew_Schedule->setDisabled (false);
+ actionNew_Slave->setDisabled (false);
}
@@ -1370,6 +1432,23 @@
/**
+ * @brief SLOT to delete currently selected slave.
+ *
+ * Emits sig_delete_slave (...) to delete the slave.
+ */
+void
+gsd_mw::delete_slave ()
+{
+ QModelIndexList selected = slaves->getTable ()->selectionModel ()
+ ->selectedRows (0);
+ if (selected.at (0).isValid ())
+ emit sig_delete_slave (selected.at (0).row ());
+ else
+ QMessageBox::information (NULL,tr ("Status Error"),
+ tr ("No slave selected!"));
+}
+
+/**
* @brief Requests the new task dialog.
*/
void
@@ -1440,6 +1519,16 @@
/**
+ * @brief Requests the new slave dialog.
+ */
+void
+gsd_mw::new_slave_dlg ()
+{
+ emit sig_create_slave ();
+}
+
+
+/**
* @brief Requests config details.
*/
void
@@ -2433,6 +2522,87 @@
/**
+ * @brief Requests slave details.
+ */
+void
+gsd_mw::details_slave_dlg ()
+{
+ QModelIndexList selected = slaves->getTable ()->selectionModel ()
+ ->selectedRows (0);
+ if (selected.at (0).isValid ())
+ {
+ QDomElement slave = control->getSlaveModel ()
+ ->getEntity (selected.at (0).row ());
+ QString selected_id = control->getSlaveModel ()
+ ->getAttr (slave, "target id");
+ if (details_widgets.contains (selected_id))
+ {
+ QSettings settings ("Greenbone Networks GmbH", "GSD");
+ settings.beginGroup ("DockWidgets");
+ details_widgets[selected_id]->restoreGeometry (settings.value ("geometrie").toByteArray ());
+ settings.endGroup ();
+ details_widgets.value (selected_id)->show ();
+ details_widgets.value (selected_id)->update ();
+ details_widgets.value (selected_id)->raise ();
+ }
+ else
+ {
+ dock_details_slave *details = new dock_details_slave (this->control);
+ details->setId (selected_id);
+ details->load ();
+ QSettings settings ("Greenbone Networks GmbH", "GSD");
+ settings.beginGroup ("DockWidgets");
+ if (!this->restoreDockWidget (details))
+ {
+ int area = this->dockWidgetArea (details_widgets.value (selected_id));
+ QMapIterator <QString, dock_details*> i (details_widgets);
+ while (i.hasNext ())
+ {
+ i.next ();
+ int usedArea = this->dockWidgetArea (i.value ());
+ if (usedArea == Qt::BottomDockWidgetArea &&
+ i.key ().compare (selected_id) != 0 &&
+ i.value ()->isVisible ())
+ {
+ details->show ();
+ details->update ();
+ this->tabifyDockWidget (i.value (), details);
+ details->raise ();
+ details_widgets.insert (selected_id, details);
+ return;
+ }
+ }
+ this->addDockWidget (Qt::BottomDockWidgetArea, details);
+ }
+
+ settings.endGroup ();
+ if (this->dockWidgetArea (details) == Qt::BottomDockWidgetArea)
+ {
+ QMapIterator <QString, dock_details*> i (details_widgets);
+ while (i.hasNext ())
+ {
+ i.next ();
+ int usedArea = this->dockWidgetArea (i.value ());
+ if (usedArea == Qt::BottomDockWidgetArea &&
+ i.key ().compare (selected_id) != 0 &&
+ i.value ()->isVisible ())
+ {
+ this->tabifyDockWidget (i.value (), details);
+ }
+ }
+ }
+
+ details->show ();
+ details->update ();
+ details->raise ();
+ details_widgets.insert (selected_id, details);
+ }
+ }
+ else
+ QMessageBox::information (NULL,tr ("Status Error"),
+ tr ("No slave selected!"));
+}
+/**
* @brief Requests a config download.
*/
void
@@ -2600,6 +2770,17 @@
/**
+ * @brief SLOT to show overrides widget
+ */
+void
+gsd_mw::slave_dw ()
+{
+ slaves->show ();
+ slaves->raise ();
+}
+
+
+/**
* @brief SLOT to show performance widget
*/
void
@@ -2881,6 +3062,35 @@
/**
+ * @brief SLOT called when the slaves dockwidget becomes visible or
+ * invisble.
+ */
+void
+gsd_mw::focus_slaves (bool focus)
+{
+ if (focus)
+ slaves->getTable ()->setFocus ();
+ slaves->getTable ()->viewport ()->update ();
+ if (!slaves->getTable ()->selectionModel ()->hasSelection ())
+ {
+ QModelIndex start;
+ QModelIndex end;
+ start = control->getSlaveModel ()->index (0, 0, QModelIndex ());
+ end = control->getSlaveModel ()->index (0,
+ control->getSlaveModel ()
+ ->columnCount () -1,
+ QModelIndex ());
+ QItemSelection sel (start, end);
+ slaves->getTable ()
+ ->selectionModel ()
+ ->select (sel, QItemSelectionModel::Select);
+ return;
+ }
+ slave_selectionchanged (slaves->getTable ()->selectionModel ()->selection (),
+ QItemSelection ());
+}
+
+/**
* @brief SLOT called when the overrides dockwidget becomes visible or
* invisble.
*
@@ -3372,7 +3582,47 @@
actionDetails_Override->setEnabled (true);
}
+
/**
+ * @brief SLOT to enable/disable action buttons in slave widget.
+ *
+ * @param[in] sel new selected index
+ * @param[in] desel previous selected index
+ */
+void
+gsd_mw::slave_selectionchanged (const QItemSelection &sel,
+ const QItemSelection &desel)
+{
+ int row = -1;
+ if (slaves->getTable ()->selectionModel () == NULL)
+ return;
+ if (sel.empty ())
+ {
+ actionDelete_Slave->setEnabled (false);
+ actionDetails_Slave->setEnabled (false);
+ return;
+ }
+ if (sel.at (0).top () >= 0 )
+ {
+ row = sel.at (0).top ();
+ }
+ else
+ {
+ row = 0;
+ }
+ QDomNode ent = control->getSlaveModel ()->getEntity (row);
+ if (ent.isNull ())
+ {
+ actionDelete_Slave->setEnabled (false);
+ actionDetails_Slave->setEnabled (false);
+ return;
+ }
+ actionDelete_Slave->setEnabled (true);
+ actionDetails_Slave->setEnabled (true);
+}
+
+
+/**
* @brief Eventfiler for task tablewidget. Controls wether action buttons are
* enabled.
*
@@ -3929,7 +4179,6 @@
QFile file4 (QString (OPENVAS_DATA_DIR).append ("/dash_resources.html"));
#endif
- qDebug () << QString (OPENVAS_DATA_DIR).append ("dash_task.html");
QString tasks, trends, task_count, resources, color, label;
if (!file1.open (QIODevice::ReadOnly))
Modified: trunk/gsd/src/gsd_mw.h
===================================================================
--- trunk/gsd/src/gsd_mw.h 2011-03-16 16:24:02 UTC (rev 10570)
+++ trunk/gsd/src/gsd_mw.h 2011-03-16 17:48:26 UTC (rev 10571)
@@ -65,6 +65,7 @@
void sig_req_notes (int);
void sig_req_overrides (int);
void sig_req_nvt_families (int);
+ void sig_req_slaves (int);
void sig_req_report (QMap<QString, QString>);
@@ -107,6 +108,9 @@
void sig_delete_override (int);
+ void sig_delete_slave (int);
+ void sig_create_slave ();
+
void sig_details_config (int);
void sig_details_credential (int);
void sig_details_escalator (int);
@@ -117,6 +121,7 @@
void sig_details_override (QString);
void sig_details_family (QString, QString);
void sig_details_nvt (QString, QString);
+ void sig_details_slave (int);
void sig_nvts (QString);
void sig_modify_note (int);
void sig_modify_override (int);
@@ -142,6 +147,7 @@
void focus_agents (bool focus);
void focus_notes (bool focus);
void focus_overrides (bool focus);
+ void focus_slaves (bool focus);
void focus_performance (bool focus);
void save_config ();
@@ -160,6 +166,7 @@
void new_escalator_dlg ();
void new_credential_dlg ();
void new_agent_dlg ();
+ void new_slave_dlg ();
void modify_note_dlg ();
void modify_override_dlg ();
void modify_config_dlg ();
@@ -170,6 +177,7 @@
void details_target_dlg ();
void details_note_dlg ();
void details_override_dlg ();
+ void details_slave_dlg ();
void details_task_dlg ();
void details_family_dlg (QString config, QString name);
void details_nvt_dlg (QString config, QString oid);
@@ -181,6 +189,7 @@
void delete_agent ();
void delete_note ();
void delete_override ();
+ void delete_slave ();
void show_report (QString id, QString task);
@@ -214,6 +223,7 @@
void agent_dw ();
void note_dw ();
void override_dw ();
+ void slave_dw ();
void performance_dw ();
void update_dw ();
@@ -235,6 +245,8 @@
const QItemSelection &desel);
void override_selectionchanged (const QItemSelection &sel,
const QItemSelection &desel);
+ void slave_selectionchanged (const QItemSelection &sel,
+ const QItemSelection &desel);
void write_settings ();
void read_settings ();
void clear_dock_widget_settings ();
@@ -284,6 +296,7 @@
dock_table *agents;
dock_table *notes;
dock_table *overrides;
+ dock_table *slaves;
dock_table *quickInfo;
delegate_progress *taskProgress;
delegate_trend *trendIcon;
Modified: trunk/gsd/src/omp_string_builder.cpp
===================================================================
--- trunk/gsd/src/omp_string_builder.cpp 2011-03-16 16:24:02 UTC (rev 10570)
+++ trunk/gsd/src/omp_string_builder.cpp 2011-03-16 17:48:26 UTC (rev 10571)
@@ -77,6 +77,8 @@
break;
case omp_utilities::OVERRIDE: command.append ("overrides ");
break;
+ case omp_utilities::SLAVE: command.append ("slaves");
+ break;
case omp_utilities::PREFERENCE: command.append ("preferences ");
break;
case omp_utilities::REPORT: command.append ("reports ");
@@ -157,6 +159,8 @@
break;
case omp_utilities::TASK: typeStr = "task ";
break;
+ case omp_utilities::SLAVE: typeStr = "slave ";
+ break;
default: return QString ("");
}
command.append (typeStr + ">");
@@ -206,6 +210,8 @@
break;
case omp_utilities::TASK: typeString = "task";
break;
+ case omp_utilities::SLAVE: typeString = "slave";
+ break;
default: return QString ("");
}
@@ -743,7 +749,30 @@
return com;
}
}
-
+ if (type == omp_utilities::SLAVE)
+ {
+ if (parameter["name"].compare ("") == 0 ||
+ parameter["host"].compare ("") == 0 ||
+ parameter["port"].compare ("") == 0 ||
+ parameter["login"].compare ("") == 0 ||
+ parameter["password"].compare ("") == 0)
+ return QString ("");
+ else
+ {
+ com = QString ("<name>%1</name>"
+ "<comment>%2</comment>"
+ "<host>%3</host>"
+ "<port>%4</port>"
+ "<login>%5</login>"
+ "<password>%6</password>").arg (parameter["name"])
+ .arg (parameter["comment"])
+ .arg (parameter["host"])
+ .arg (parameter["port"])
+ .arg (parameter["login"])
+ .arg (parameter["password"]);
+ return com;
+ }
+ }
return QString ("");
}
Modified: trunk/gsd/src/omp_utilities.cpp
===================================================================
--- trunk/gsd/src/omp_utilities.cpp 2011-03-16 16:24:02 UTC (rev 10570)
+++ trunk/gsd/src/omp_utilities.cpp 2011-03-16 17:48:26 UTC (rev 10571)
@@ -105,6 +105,8 @@
return omp_utilities::TASK;
else if (type.compare ("version") == 0)
return omp_utilities::VERSION;
+ else if (type.compare ("slave") == 0)
+ return omp_utilities::SLAVE;
else
return omp_utilities::NONE;
}
Modified: trunk/gsd/src/omp_utilities.h
===================================================================
--- trunk/gsd/src/omp_utilities.h 2011-03-16 16:24:02 UTC (rev 10570)
+++ trunk/gsd/src/omp_utilities.h 2011-03-16 17:48:26 UTC (rev 10571)
@@ -72,6 +72,7 @@
TASK = 18,
VERSION = 19,
REPORT_FORMAT = 20,
+ SLAVE = 21,
};
typedef int omp_type;
More information about the Openvas-commits
mailing list