libpcap 中的属性错误

Error with attribute in libpcap

我正在使用 here 中的代码在监控模式下进行 802.11 嗅探。

#define ETH_HEADER_SIZE 14
#define AVS_HEADER_SIZE 64                 /* AVS capture header size */
#define DATA_80211_FRAME_SIZE 24           /* header for 802.11 data packet */
#define LLC_HEADER_SIZE 8                  /* LLC frame for encapsulation */
/* SNAP LLC header format */
struct snap_header           
{
  u_int8_t dsap; 
  u_int8_t ssap;
  u_int8_t ctl;
  u_int16_t org; 
  u_int8_t org2;
  u_int16_t ether_type;          /* ethernet type */              
} __attribute__ ((__packed_  _));

我不是 C++ 的专家,我收到了这个错误:

error: expected ‘)’ before ‘_’ warning: ‘__packed_’ attribute  
directive ignored [-Wattributes]  } __attribute__ ((__packed_  _));

您获取该代码的页面在 __attribute__ ((__packed__)) 声明中添加了一些伪造的空格。它应该是 完全 正如我在那里写的那样,任何下划线之间都没有空格。