]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
proto/names: add SCTP if not defined in system
authorVictor Julien <victor@inliniac.net>
Mon, 18 Jan 2021 12:56:32 +0000 (13:56 +0100)
committerVictor Julien <victor@inliniac.net>
Tue, 16 Feb 2021 20:42:35 +0000 (21:42 +0100)
If SCTP is missing from /etc/protocols, add it manually.

(cherry picked from commit bf00285d0acf87c794f6569eb51d1f7d1247a0da)

src/util-proto-name.c

index 2392682d7b77e02c4a0039d7d5c12eea5744d0c6..1094a8632be33e13b660e381aaa0b217535a5f72 100644 (file)
 char *known_proto[256];
 static int init_once = 0;
 
+static void SetDefault(const uint8_t proto, const char *string)
+{
+    if (known_proto[proto] == NULL) {
+        known_proto[proto] = SCStrdup(string);
+        if (unlikely(known_proto[proto] == NULL)) {
+            FatalError(SC_ERR_MEM_ALLOC, "failed to alloc protocol name");
+        }
+    }
+}
+
 /**
  *  \brief  Function to load the protocol names from the specified protocol
  *          file.
@@ -85,6 +95,8 @@ void SCProtoNameInit()
         }
         fclose(fp);
     }
+
+    SetDefault(IPPROTO_SCTP, "SCTP");
 }
 
 /**