]> git.ipfire.org Git - thirdparty/systemd.git/blobdiff - .lgtm/cpp-queries/PotentiallyDangerousFunction.ql
lgtm: beef up list of dangerous/questionnable API calls not to make
[thirdparty/systemd.git] / .lgtm / cpp-queries / PotentiallyDangerousFunction.ql
index ba80f4ad8cedd44734ab32e1fc17eb41d8622bf7..cd0284b37a5c898f086fb28b2907f1f6f861c35c 100644 (file)
@@ -16,10 +16,28 @@ import cpp
 predicate potentiallyDangerousFunction(Function f, string message) {
   (
     f.getQualifiedName() = "fgets" and
-    message = "Call to fgets is potentially dangerous. Use read_line() instead."
+    message = "Call to fgets() is potentially dangerous. Use read_line() instead."
   ) or (
     f.getQualifiedName() = "strtok" and
-    message = "Call to strtok is potentially dangerous. Use extract_first_word() instead."
+    message = "Call to strtok() is potentially dangerous. Use extract_first_word() instead."
+  ) or (
+    f.getQualifiedName() = "strsep" and
+    message = "Call to strsep() is potentially dangerous. Use extract_first_word() instead."
+  ) or (
+    f.getQualifiedName() = "dup" and
+    message = "Call to dup() is potentially dangerous. Use fcntl(fd, FD_DUPFD_CLOEXEC, 3) instead."
+  ) or (
+    f.getQualifiedName() = "htonl" and
+    message = "Call to htonl() is confusing. Use htobe32() instead."
+  ) or (
+    f.getQualifiedName() = "htons" and
+    message = "Call to htons() is confusing. Use htobe16() instead."
+  ) or (
+    f.getQualifiedName() = "ntohl" and
+    message = "Call to ntohl() is confusing. Use be32toh() instead."
+  ) or (
+    f.getQualifiedName() = "ntohs" and
+    message = "Call to ntohs() is confusing. Use be16toh() instead."
   )
 }