- 论坛徽章:
- 0
|
原始程序大概如下:
报错的就在 show()函数里调用的地方.
struct ether_arp *a;
void show(void);
int main(int argc, char *argv[])
{
int i;
char buffer[65535] = {0};
unsigned char *head;
..........................................
//截包分析包头...
head=buffer+12;
a=(struct ether_arp *)head;
if((*head==0x0 &&(*(head+1)==0x06)) //判断协议,显示包数据
show();
}//endmain
void show(void)
{
printf("header:%d\n",a->eahdr);
printf("dest ip = %d",a->tpa);
printf("source ip =%d",a->spa);
printf("dest mac =%d",a->tha);
printf("source ip =%d",a->sha);
return;
}
[ 本帖最后由 aleenhu1983 于 2006-5-15 20:13 编辑 ] |
|