-/* Copyright (C) 2007-2010 Open Information Security Foundation
+/* Copyright (C) 2007-2024 Open Information Security Foundation
*
* You can copy, redistribute or modify this Program under the terms of
* the GNU General Public License version 2 as published by the Free
#ifndef SURICATA_DETECT_PROTO_H
#define SURICATA_DETECT_PROTO_H
-#define DETECT_PROTO_ANY (1 << 0) /**< Indicate that given protocol
- is considered as IP */
-#define DETECT_PROTO_ONLY_PKT (1 << 1) /**< Indicate that we only care
- about packet payloads. */
-#define DETECT_PROTO_ONLY_STREAM (1 << 2) /**< Indicate that we only care
- about stream payloads. */
-#define DETECT_PROTO_IPV4 (1 << 3) /**< IPv4 only */
-#define DETECT_PROTO_IPV6 (1 << 4) /**< IPv6 only */
+// clang-format off
+#define DETECT_PROTO_ANY BIT_U8(0) /**< Indicate that given protocol is considered as IP */
+#define DETECT_PROTO_ONLY_PKT BIT_U8(1) /**< Indicate that we only care about packet payloads. */
+#define DETECT_PROTO_ONLY_STREAM BIT_U8(2) /**< Indicate that we only care about stream payloads. */
+#define DETECT_PROTO_IPV4 BIT_U8(3) /**< IPv4 only */
+#define DETECT_PROTO_IPV6 BIT_U8(4) /**< IPv6 only */
+// clang-format on
typedef struct DetectProto_ {
uint8_t proto[256/8]; /**< bit array for 256 protocol bits */