CWARN.PACKED.TYPEDEF
属性“packed”在 typedef 中被忽略
CWARN.PACKED.TYPEDEF 检查器可查找其中 gcc“packed”属性应用于 typedef 声明的实例。如果 typedef 包含 struct 定义,则允许使用“packed”属性。
漏洞代码示例
复制
typedef struct test{
int a;
char b;
int c;
} __attribute__((__packed__)) testing;
/* ...*/
typedef struct s __attribute__((packed)) s_packed;
/* ...*/
Klocwork 标记了第 7 行,该行中的 packed 属性与 typedef 声明一起使用。未标记第 5 行的 packed 属性,因为它是 struct 定义的一部分。