[Openvas-commits] r13270 - in trunk/gsd: . src
scm-commit at wald.intevation.org
scm-commit at wald.intevation.org
Tue Apr 17 18:55:57 CEST 2012
Author: aheinecke
Date: 2012-04-17 18:55:57 +0200 (Tue, 17 Apr 2012)
New Revision: 13270
Modified:
trunk/gsd/ChangeLog
trunk/gsd/src/gsd_control.cpp
trunk/gsd/src/gsd_control.h
Log:
Add a new model for portlists and handle port_list requests
Modified: trunk/gsd/ChangeLog
===================================================================
--- trunk/gsd/ChangeLog 2012-04-17 16:48:25 UTC (rev 13269)
+++ trunk/gsd/ChangeLog 2012-04-17 16:55:57 UTC (rev 13270)
@@ -2,6 +2,13 @@
Start implementing support for port lists
+ * src/gsd_control.cpp, src/gsd_control.h (gsd_control::gsd_control):
+ Add Port List to target model
+ Add Port List model
+ (gsd_control::request_portlists), (gsd_control::getPortListModel),
+ (gsd_control::sig_port_list_finished): New
+ (gsd_control::request_finished_listener): Listen for port_list requests
+
* src/gsd_dlg.cpp, src/gsd_dlg.h (gsd_dlg::update_target_dialog),
(gsd_dlg::update_target_credentials): Renamed update_target_dialog
to update_target_credentials
Modified: trunk/gsd/src/gsd_control.cpp
===================================================================
--- trunk/gsd/src/gsd_control.cpp 2012-04-17 16:48:25 UTC (rev 13269)
+++ trunk/gsd/src/gsd_control.cpp 2012-04-17 16:55:57 UTC (rev 13270)
@@ -62,6 +62,7 @@
targetModel->addHeader (tr ("Name"), "name");
targetModel->addHeader (tr ("Hosts"), "hosts");
targetModel->addHeader (tr ("IPs"), "max_hosts");
+ targetModel->addHeader (tr ("Port List"), "port_list name");
targetModel->addHeader (tr ("SSH Credential"), "ssh_lsc_credential name");
targetModel->addHeader (tr ("SMB Credential"), "smb_lsc_credential name");
@@ -111,6 +112,14 @@
slaveModel->addHeader (tr ("Port"), "port");
slaveModel->addHeader (tr ("Login"), "login");
+ portListModel = new model_omp_entity ();
+ portListModel->addHeader (tr ("Name"), "name");
+ portListModel->addHeader (tr ("Comment"), "comment");
+ portListModel->addHeader (tr ("Deletable"), "in_use");
+ portListModel->addHeader (tr ("Total Ports"), "port_count all");
+ portListModel->addHeader (tr ("TCP"), "port_count tcp");
+ portListModel->addHeader (tr ("UDP"), "port_count udp");
+
systemReportModel = new model_omp_entity ();
familyModel =new model_omp_entity ();
@@ -539,11 +548,12 @@
request_notes (0);
request_overrides (0);
request_slaves (0);
+ request_portlists (0);
+ if (protocol_version >= 2)
+ request_report_formats ();
request_system_reports (0);
request_system_reports (NULL, 3600);
request_families ();
- if (protocol_version == 2 || protocol_version == 3)
- request_report_formats ();
}
@@ -577,6 +587,7 @@
xmlReportModel->removeEntities ();
configDownloadModel->removeEntities ();
reportFormatModel->removeEntities ();
+ portListModel->removeEntities ();
connector->removeCredentials();
}
@@ -870,6 +881,23 @@
parameter);
}
+/**
+ * @brief SLOT that starts an portlist update-request.
+ *
+ * An update for the portlist widget is requested.
+ *
+ * @param[in] interval Time in seconds between two updates.
+ */
+void
+gsd_control::request_portlists (int interval)
+{
+ QMap<QString, QString> parameter;
+ parameter.insert ("details", "1");
+ this->connector->getEntity (omp_utilities::PORT_LIST,
+ interval,
+ portListModel,
+ parameter);
+}
/**
* @brief SLOT that stops frequently running updates.
@@ -2178,6 +2206,17 @@
/**
* @brief Getter
*
+ * @return The model containing the port lists
+ */
+model_omp_entity*
+gsd_control::getPortListModel()
+{
+ return portListModel;
+}
+
+/**
+ * @brief Getter
+ *
* @return The model containing the report formats.
*/
model_omp_entity*
@@ -2569,6 +2608,15 @@
{
emit sig_request_report ();
}
+ if (type == omp_utilities::PORT_LIST && com == omp_utilities::OMP_GET)
+ {
+ emit sig_port_list_finished ();
+ }
+ if (type == omp_utilities::PORT_LIST && ( com == omp_utilities::OMP_MODIFY ||
+ com == omp_utilities::OMP_CREATE || com == omp_utilities::OMP_DELETE ))
+ {
+ request_portlists (0);
+ }
}
void
Modified: trunk/gsd/src/gsd_control.h
===================================================================
--- trunk/gsd/src/gsd_control.h 2012-04-17 16:48:25 UTC (rev 13269)
+++ trunk/gsd/src/gsd_control.h 2012-04-17 16:55:57 UTC (rev 13270)
@@ -70,6 +70,7 @@
void sig_task_details_finished ();
void sig_lsc_credential_finished ();
void sig_request_report ();
+ void sig_port_list_finished();
private:
gsd_config *config;
@@ -105,6 +106,7 @@
model_omp_entity *configDownloadModel;
model_omp_entity *reportFormatModel;
model_omp_entity *tmpReportModel;
+ model_omp_entity *portListModel;
GSList *log_config;
void createConnections ();
@@ -143,6 +145,7 @@
void request_slaves (int);
void request_system_reports (int);
void request_system_reports (QString, long);
+ void request_portlists (int);
void request_families ();
void request_nvts (QString family);
void request_nvt_details (QString, QString);
@@ -217,6 +220,7 @@
model_omp_entity *getXmlReportModel ();
model_omp_entity *getConfigDownloadModel ();
model_omp_entity *getReportDownloadModel ();
+ model_omp_entity *getPortListModel ();
omp_credentials *getProfile (QString name);
QString getProfile (int);
int getProfileCount ();
More information about the Openvas-commits
mailing list