linux_sockpacket.c

来自「网络流量生成工具,开源软件,也可以作为网络流量检测软件使用」· C语言 代码 · 共 55 行

C
55
字号
/*  * $smu-mark$  * $name: linux_sockpacket.c$  * $author: Salvatore Sanfilippo <antirez@invece.org>$  * $copyright: Copyright (C) 1999 by Salvatore Sanfilippo$  * $license: This software is under GPL version 2 of license$  * $date: Fri Nov  5 11:55:48 MET 1999$  * $rev: 8$  */ #include "hping2.h"#if (defined OSTYPE_LINUX) && (!defined FORCE_LIBPCAP)#include <sys/types.h>#include <sys/socket.h>#include <netinet/in.h>#include <unistd.h>		/* close */#include <stdio.h>#include "globals.h"int open_sockpacket(){	int s;	if (opt_debug)		printf("Trying to open PF_PACKET socket... ");	s = socket(PF_PACKET, SOCK_RAW, htons(ETH_P_IP));	if (s == -1) {		if (opt_debug) {			printf("failed ( 2.0.x kernel? )\n");			printf("Trying to open SOCK_PACKET socket... ");		}		s = socket(AF_INET, SOCK_PACKET, htons(ETH_P_IP));	}	if (s == -1) {		perror("[open_sockpacket] socket()");		return -1;	}	if (opt_debug)		printf("ok\n");	return s;}int close_sockpacket(int s){	return close(s);}#endif /* OSTYPE_LINUX && !FORCE_LIBPCAP */

⌨️ 快捷键说明

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