📄 pingd.c
字号:
/* Beholder RMON ethernet network monitor,Copyright (C) 1993 DNPAP group *//* See file COPYING 'GNU General Public Licence' for copyright details */#include <chain.h>#include <icmp.h>#include "pingd.h"static BOOLEAN Rcve(ICMP_DESCR *descr, CHAIN *chain, ICMP_HDR *icmpHdr, IP_HDR *ipHdr);PINGD_STAT pingdStat;ICMP_DESCR pingdIcmp ={ Rcve, ICMP_ECHO_REQUEST, ICMP_CODE_ANY, ICMP_ID_ANY, ICMP_SEQNR_ANY, ICMP_ADDR_ANY, ICMP_ADDR_ANY, 0};BOOLEAN PingdInit(void){ static BOOLEAN init = FALSE; if (!init) { init = IcmpRegister(&pingdIcmp); } return init;}PINGD_STAT *PingdStatistics(void){ return &pingdStat;}static BOOLEAN Rcve(ICMP_DESCR *descr, CHAIN *chain, ICMP_HDR *icmpHdr, IP_HDR *ipHdr){ DWORD addr; BOOLEAN success = FALSE; icmpHdr->type = ICMP_ECHO_REPLY; addr = ipHdr->src; ipHdr->src = ipHdr->dst; ipHdr->dst = addr; success = IcmpSend(chain, icmpHdr, ipHdr); if (success) pingdStat.datagrams++; else pingdStat.errors++; return success;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -