• 大小: 2KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-01-07
  • 语言: 其他
  • 标签:

资源简介

ICMP的地址掩码协议实现,该协议用于向本地网络获取当前网络地址的掩码

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 
#include “getmask.h“

#define ICMP_MASK_REQ 17
#define ICMP_MASK_REP 18
#define ICMP_MASK_SIZE 12

int nsend = 0;

/*
 * Function: cal_cksum 
 * Purpose: calculate checksum of icmp header
 * Parameters: addr - start address of icmp header
 * len - icmp length
 * Return: calculated checksum
 */
uint16_t cal_cksum(uint16_t *addr int len)
{
int nleft = len;
uint32_t sum = 0;
uint16_t *w = addr;
uint16_t answer = 0;

while (nleft > 1) {
sum += *w++;
nleft -= 2;
}

if (nleft == 1) {
*(unsigned char *)(&answer) = *(unsigned char *)w ;
sum += answer;
}

sum = (sum >> 16) + (sum & 0xffff);
sum += (sum >> 16);
answer = ~sum;
return(answer);
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        217  2010-04-18 13:37  icmpmask\makefile

     文件       2586  2010-04-18 13:05  icmpmask\getmask.c

     文件       1123  2010-03-22 14:42  icmpmask\getmask.h

     文件       1352  2010-04-18 13:38  icmpmask\icmpmask.c

     目录          0  2010-03-29 20:34  icmpmask

----------- ---------  ---------- -----  ----

                 5278                    5


评论

共有 条评论

相关资源