⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testvnet3.c

📁 嵌入式系统的网络仿真
💻 C
字号:
//----------------------------------------------------------------------------//test set/get guestif  mac addr//----------------------------------------------------------------------------#include <net/if.h>#include <sys/ioctl.h>//#include "if_vnet.h"//from linux/sockios.h#define SIOCGIFADDR	0x8915		/* get PA address		*/#define SIOCSIFADDR	0x8916		/* set PA address		*/void main(void){int tapif_fd;struct ifreq ifr;char buf[1024];unsigned char paddr[6];printf("test vnet ioctl\n");tapif_fd = open("/dev/net/vnet", 2);if(tapif_fd<0){ 	perror("open");exit(-1);};printf("open vnet ok!\n");  if (ioctl(tapif_fd, SIOCGIFADDR, (void *) paddr) < 0) {    printf("get mac addr error\n");    exit(-1);}printf("ioctl vnet get mac addr ok, addr is %x:%x:%x:%x:%x:%x \n", paddr[0],paddr[1],paddr[2],paddr[3],paddr[4],paddr[5]);paddr[0]=0;paddr[1]=1;paddr[2]=2;paddr[3]=3;paddr[4]=4;paddr[5]=5;if (ioctl(tapif_fd, SIOCSIFADDR, (void *) paddr) < 0) {    printf("set mac addr error\n");    exit(-1);}printf("ioctl vnet set mac addr ok\n");if (ioctl(tapif_fd, SIOCGIFADDR, (void *) paddr) < 0) {    printf("get mac addr error\n");    exit(-1);}printf("ioctl vnet get mac addr ok, addr is %x:%x:%x:%x:%x:%x \n", paddr[0],paddr[1],paddr[2],paddr[3],paddr[4],paddr[5]);/*while(1){ sleep(30);};*/}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -