diff --git a/src/internals/rules.rs b/src/internals/rules.rs index 0d631f6..3823d3d 100644 --- a/src/internals/rules.rs +++ b/src/internals/rules.rs @@ -164,7 +164,7 @@ impl<'a> Iterator for RuleIterator<'a> { let rule = unsafe { *self.head }; let mut result: Option = None; - if (rule.flags & yara_sys::RULE_FLAGS_NULL) != 0 { + if ((rule.flags as u32) & yara_sys::RULE_FLAGS_NULL) != 0 { self.head = std::ptr::null(); } else { let rule_data = Rule::from(unsafe { &*self.head }); diff --git a/yara-sys/build.rs b/yara-sys/build.rs index 4f0898f..1b3029b 100644 --- a/yara-sys/build.rs +++ b/yara-sys/build.rs @@ -395,6 +395,7 @@ mod bindings { .allowlist_var("META_FLAGS_LAST_IN_RULE") .allowlist_var("OBJECT_TYPE_.*") .allowlist_var("STRING_FLAGS_LAST_IN_RULE") + .allowlist_var("RULE_FLAGS_NULL") .allowlist_var("YARA_ERROR_LEVEL_.*") .allowlist_var("SCAN_FLAGS_.*") .allowlist_var("YR_CONFIG_.*") diff --git a/yara-sys/src/lib.rs b/yara-sys/src/lib.rs index 39fc36d..eb25832 100644 --- a/yara-sys/src/lib.rs +++ b/yara-sys/src/lib.rs @@ -2,8 +2,6 @@ #![allow(non_snake_case)] #![allow(non_upper_case_globals)] -pub const RULE_FLAGS_NULL: i32 = 0x04; - pub mod errors; pub use crate::errors::*;