91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 98KB
    文件類型: .rar
    金幣: 1
    下載: 0 次
    發布日期: 2021-06-09
  • 語言: C/C++
  • 標簽:

資源簡介

發送tcp數據包 C++程序實現。。。。。。

資源截圖

代碼片段和文件信息

#include??
#include??
#include??
#include?
#include?
#include?
#include?
//#pragma?comment(lib“wsock32.lib“)

#define?IPVER???4???????????//IP協議預定
#define?MAX_BUFF_LEN?65500??//發送緩沖區最大值

typedef?struct?ip_hdr????//定義IP首部?
{?
UCHAR?h_verlen;????????????//4位首部長度4位IP版本號?
UCHAR?tos;????????????????//8位服務類型TOS?
USHORT?total_len;????????//16位總長度(字節)?
USHORT?ident;????????????//16位標識?
USHORT?frag_and_flags;????//3位標志位?
UCHAR?ttl;????????????????//8位生存時間?TTL?
UCHAR?proto;????????????//8位協議?(TCP?UDP?或其他)?
USHORT?checksum;????????//16位IP首部校驗和?
ULONG?sourceIP;????????????//32位源IP地址?
ULONG?destIP;????????????//32位目的IP地址?
}IP_HEADER;?

typedef?struct?tsd_hdr?//定義TCP偽首部?
{?
ULONG?saddr;????//源地址
ULONG?daddr;????//目的地址?
UCHAR?mbz;????????//沒用
UCHAR?ptcl;????????//協議類型?
USHORT?tcpl;????//TCP長度?
}PSD_HEADER;?

typedef?struct?tcp_hdr?//定義TCP首部?
{?
USHORT?th_sport;????????????//16位源端口?
USHORT?th_dport;????????????//16位目的端口?
ULONG?th_seq;????????????????//32位序列號?
ULONG?th_ack;????????????????//32位確認號?
UCHAR?th_lenres;????????????//4位首部長度/6位保留字?
UCHAR?th_flag;????????????????//6位標志位?
USHORT?th_win;????????????????//16位窗口大小?
USHORT?th_sum;????????????????//16位校驗和?
USHORT?th_urp;????????????????//16位緊急數據偏移量?
}TCP_HEADER;?

//CheckSum:計算校驗和的子函數?
USHORT?checksum(USHORT?*buffer?int?size)?
{?
????unsigned?long?cksum=0;?
????while(size?>1)?
????{?
????????cksum+=*buffer++;?
????????size?-=sizeof(USHORT);?
????}?
????if(size)?
????{?
????????cksum?+=?*(UCHAR*)buffer;?
????}?

????cksum?=?(cksum?>>?16)?+?(cksum?&?0xffff);?
????cksum?+=?(cksum?>>16);?
????return?(USHORT)(~cksum);?
}?

int?main(int?argc?char*?argv[])?
{?
????WSADATA?WSAData;?
????SOCKET?sock;?
????
????IP_HEADER?ipHeader;?
????TCP_HEADER?tcpHeader;?
????PSD_HEADER?psdHeader;?

????char?Sendto_Buff[MAX_BUFF_LEN];??//發送緩沖區
????unsigned?short?check_Buff[MAX_BUFF_LEN];?//檢驗和緩沖區
????const?char?tcp_send_data[]={“This?is?my?homework?of?networtI?am?happy!“};

????BOOL?flag;?
????int?rectnTimeOver;?

????if?(argc!=?5)?
????{
????????printf(“Useage:?SendTcp?soruce_ip?source_port?dest_ip?dest_port?\n“);?
????????return?false;?
????}?

????if?(WSAStartup(MAKEWORD(22)?&WSAData)!=0)?
????{?
????????printf(“WSAStartup?Error!\n“);?
????????return?false;?
????}?

????if?((sock=WSASocket(AF_INETSOCK_RAWIPPROTO_IPNULL0WSA_FLAG_OVERLAPPED))==INVALID_SOCKET)?
????{?
????????printf(“Socket?Setup?Error!\n“);?
????????return?false;?
????}?
????flag=true;?
????if?(setsockopt(sockIPPROTO_IP?IP_HDRINCL(char?*)&flagsizeof(flag))==SOCKET_ERROR)?
????{?
????????printf(“setsockopt?IP_HDRINCL?error!\n“);?
????????return?false;?
????}?
????nTimeOver=1000;?
????if?(setsockopt(sock?SOL_SOCKET?SO_SNDTIMEO?(char*)&nTimeOver?sizeof(nTimeOver))==SOCKET_ERROR)?
????{?
????????printf(“setsockopt?SO_SNDTIMEO?error!\n“);?
????????return?false;?
????}?

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件??????17011??2008-06-24?20:27??發送tcp數據包\tcp\Debug\net.obj

?????文件??????25600??2008-06-24?20:27??發送tcp數據包\tcp\Debug\tcp.pdb

?????文件?????148480??2008-06-24?20:27??發送tcp數據包\tcp\Debug\vc60.idb

?????文件??????77824??2008-06-24?20:27??發送tcp數據包\tcp\Debug\vc60.pdb

?????文件???????6080??2008-06-24?20:27??發送tcp數據包\tcp\net.cpp

?????文件???????3922??2008-06-24?22:30??發送tcp數據包\tcp\tcp.dsp

?????文件????????531??2008-06-24?15:27??發送tcp數據包\tcp\tcp.dsw

?????文件??????33792??2008-06-24?22:30??發送tcp數據包\tcp\tcp.ncb

?????文件??????48640??2008-06-24?22:30??發送tcp數據包\tcp\tcp.opt

?????文件????????913??2008-06-24?20:27??發送tcp數據包\tcp\tcp.plg

?????文件?????108032??2008-07-04?09:20??發送tcp數據包\發送tcp數據包.doc

?????目錄??????????0??2009-05-16?09:09??發送tcp數據包\tcp\Debug

?????目錄??????????0??2009-05-16?09:09??發送tcp數據包\tcp

?????目錄??????????0??2009-06-24?18:21??發送tcp數據包

-----------?---------??----------?-----??----

???????????????470825????????????????????14


評論

共有 條評論

相關資源