[vscweb-commit] SF.net SVN: vscweb: [464] trunk/Main/Host/Scan
Brought to you by:
cirrusrex
|
From: <hc...@us...> - 2006-08-11 20:10:26
|
Revision: 464 Author: hctv19 Date: 2006-08-11 13:10:19 -0700 (Fri, 11 Aug 2006) ViewCVS: http://svn.sourceforge.net/vscweb/?rev=464&view=rev Log Message: ----------- Made it so that recurring scans could be discontinued via a child scan without having to know the scan id for the parent scan Modified Paths: -------------- trunk/Main/Host/Scan/include/libscan.inc trunk/Main/Host/Scan/scan_proc.php trunk/Main/People/Session/include/libpdata.inc Modified: trunk/Main/Host/Scan/include/libscan.inc =================================================================== --- trunk/Main/Host/Scan/include/libscan.inc 2006-08-07 13:51:05 UTC (rev 463) +++ trunk/Main/Host/Scan/include/libscan.inc 2006-08-11 20:10:19 UTC (rev 464) @@ -192,11 +192,13 @@ } function SCAN_CancelRecurScans($scan_id) { - $recur = SCAN_GetRecurScans($scan_id); + + $parent = SCAN_GetParent($scan_id); + $recur = SCAN_GetRecurScans($parent); foreach ($recur as $r) { if ($r['scan_id'] == NULL or $r['scan_id'] == 0) { - SCAN_CancelSchedRecur($scan_id, $r['scheduled_for']); + SCAN_CancelSchedRecur($parent, $r['scheduled_for']); } else { if (SCAN_GetStatus($r['scan_id']) == 'REQ') { SCAN_CancelScan($r['scan_id']); @@ -206,6 +208,7 @@ if (SCAN_GetStatus($scan_id) == 'REQ') { SCAN_CancelScan($r['scan_id']); } + } function SCAN_CancelSchedRecur($parent_id, $dts) { @@ -569,10 +572,11 @@ } function SCAN_GetRecurScans($scan_id, $mark_child_scan=NULL) { + $parent = SCAN_GetParent($scan_id); $sql = "SELECT S.*, IF(R.status IS NULL, 'REQ',R.status) AS status ". "FROM scan_recur_calendar S ". "LEFT JOIN nessus_scan_request R ON R.scan_id=S.scan_id ". - "WHERE parent_scan_id='$scan_id' ORDER BY scheduled_for ASC"; + "WHERE parent_scan_id='$parent' ORDER BY scheduled_for ASC"; $res = DB_GetResult($sql); $ret = array(); @@ -607,10 +611,22 @@ $sql = "SELECT scheduled_for FROM scan_recur_calendar ". */ function SCAN_GetParent($scan_id) { + $parent = ""; $sql = "SELECT parent_scan_id FROM scan_recur_calendar WHERE scan_id='$scan_id'"; $arr = DB_GetArray($sql); - return $arr['parent_scan_id']; + + if ($arr == null || $arr['parent_scan_id'] == null || $arr['parent_scan_id'] == "") + { + $parent = $scan_id; + } + else + { + $parent = $arr['parent_scan_id']; + } + + return $parent; + } function SCAN_CancelRecurring($parent_id) { Modified: trunk/Main/Host/Scan/scan_proc.php =================================================================== --- trunk/Main/Host/Scan/scan_proc.php 2006-08-07 13:51:05 UTC (rev 463) +++ trunk/Main/Host/Scan/scan_proc.php 2006-08-11 20:10:19 UTC (rev 464) @@ -294,7 +294,8 @@ } else if ($rt_action == "all") { //echo "Action: all (canceling all scans in this series)<br>"; //ri-all: remove all instances of status REQ - SCAN_CancelRecurScans($data['scan_id']); + $message = SCAN_CancelRecurScans($data['scan_id']); + echo "Parent id = ".$message; $data['recur_spec'] = "all"; $deleted[] = $data; } else { Modified: trunk/Main/People/Session/include/libpdata.inc =================================================================== --- trunk/Main/People/Session/include/libpdata.inc 2006-08-07 13:51:05 UTC (rev 463) +++ trunk/Main/People/Session/include/libpdata.inc 2006-08-11 20:10:19 UTC (rev 464) @@ -80,10 +80,10 @@ WHERE sessionid='{$_USER['sid']}' AND name='$name'"; - __DEBUG_W("Session_PDATA_GetValue: ".$sql); - __DEBUG_W("Session_PDATA_GetValue: SQL results:"); + //__DEBUG_W("Session_PDATA_GetValue: ".$sql); + //__DEBUG_W("Session_PDATA_GetValue: SQL results:"); $arr = DB_GetArray($sql); - __DEBUG_DS($arr); + //__DEBUG_DS($arr); if ($delete) __pdata_delete($name); if ($arr == NULL) @@ -95,7 +95,7 @@ function Session_PDATA_Register($name, $value, $type=SESSION_PDATA_INPUT) { global $_USER; - __DEBUG_W("Session_PDATA_Register: $name=$value"); + /* __DEBUG_W("Session_PDATA_Register: $name=$value"); */ DB_GetResult("DELETE FROM pdata WHERE sessionid='{$_USER['sid']}' AND name='$name'"); $sql = "INSERT INTO pdata (sessionid, name, value, dtype) VALUES('{$_USER['sid']}', '$name','". This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |