[Patch 2/2] Enhance -x option checking to only accept valid pid

Sunzen Wang sunzen@gmail.com
Tue May 19 01:11:00 GMT 2009


Fix: Enhance -x option checking to only accept valid pid
---
diff --git a/main.cxx b/main.cxx
index ec5506f..dda781d 100644
--- a/main.cxx
+++ b/main.cxx
@@ -639,7 +639,12 @@ main (int argc, char * const argv [])
 	  break;

 	case 'x':
-	  s.target_pid = atoi(optarg);
+	  s.target_pid = (int) strtoul(optarg, &num_endptr, 10);
+	  if (*num_endptr != '\0')
+	    {
+	      cerr << "Invalid target process ID number." << endl;
+	      usage (s, 1);
+	    }
 	  break;

 	case 'D':
---

Thanks.
-- 
sunzen
<<freedom & enjoyment>>



More information about the Systemtap mailing list