亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? ntp.c

?? socket編程的一個(gè)例子
?? C
字號(hào):
#include <sys/socket.h>
#include <sys/wait.h>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <string.h>
#include <sys/un.h>
#include <sys/time.h>
#include <sys/ioctl.h>
#include <unistd.h>
#include <netinet/in.h>
#include <string.h>
#include <netdb.h>
struct NTPPacket
{
char Leap_Ver_Mode;
/*client=0*/
char Startum; 
char Poll;
char Precision;
double RootDelay;
double Dispersion;
char RefIdentifier[4];
char RefTimeStamp[8];
char OriTimeStamp[8];
char RecvTimeStamp[8];
char TransTimeStamp[8];
};

#define NTPPORT         123
#define TIMEPORT        37
#define NTPV1   "NTP/V1"
#define NTPV2   "NTP/V2"
#define NTPV3   "NTP/V3"
#define NTPV4   "NTP/V4"
#define TIME    "TIME/UDP"
double SecondBef1970;
struct sockaddr_in sin;
struct addrinfo         hints, *res=NULL;
int rc,sk;
char Protocol[32];
/*構(gòu)建NTP協(xié)議包*/
int ConstructPacket(char *Packet)
{
char Version=1;
long SecondFrom1900;
long Zero=0;
int Port;
time_t timer;
strcpy(Protocol,NTPV1);
/*判斷協(xié)議版本*/
if(strcmp(Protocol,NTPV1)||strcmp(Protocol,NTPV2)||strcmp(Protocol,NTPV3)||strcmp(Protocol,NTPV4))
{
	Port=NTPPORT;
	Version=Protocol[6]-0x30;
	Packet[0]=(Version<<3)|3;       //LI--Version--Mode
	Packet[1]=0;            //Startum
	Packet[2]=0;            //Poll interval
	Packet[3]=0;            //Precision
/*包括Root delay、Root disperse和Ref Indentifier */
	memset(&Packet[4],0,12);
/*包括Ref timestamp、Ori timastamp和Receive Timestamp */
	memset(&Packet[16],0,24);
	time(&timer);
	SecondFrom1900=SecondBef1970+(long)timer;
	SecondFrom1900=htonl(SecondFrom1900);
	memcpy(&Packet[40],&SecondFrom1900,4);
	memcpy(&Packet[44],&Zero,4);
	return 48;
	}
else    //time/udp
{
	Port=TIMEPORT;
	memset(Packet,0,4);
	return 4;
	}
return 0;
}

/*計(jì)算從1900年到現(xiàn)在一共有多少秒*/
long GetSecondFrom1900(int End)
{
int Ordinal=0;
int Run=0;
long Result;
int i;
	for(i=1900;i<End;i++)
	{
		if(((i%4==0)&&(i%100!=0))||(i%400==0)) Run++;
		else Ordinal++;
	}
	Result=(Run*366+Ordinal*365)*24*3600;
	return Result;
}

/*獲取NTP時(shí)間*/
long GetNtpTime(int sk,struct addrinfo *res)
{
char Content[256];
int  PacketLen;
fd_set PendingData;
struct timeval BlockTime;
int  FromLen;
int  Count=0;
int  result,i;
int  re;
struct NTPPacket RetTime;
	PacketLen=ConstructPacket(Content);
	if(!PacketLen)
		 return 0;
/*客戶端給服務(wù)器端發(fā)送NTP協(xié)議數(shù)據(jù)包*/
	if((result=sendto(sk,Content,PacketLen,0,res->ai_addr,res->ai_addrlen))<0)
		perror("sendto");
	else
		printf("sendto success result=%d \n",result);
	for(i=0;i<5;i++)
	{
		printf("in for\n");
/*調(diào)用select函數(shù),并設(shè)定超時(shí)時(shí)間為1秒*/
		FD_ZERO(&PendingData);
		FD_SET(sk, &PendingData);
		BlockTime.tv_sec=1;
		BlockTime.tv_usec=0;
		if(select(sk+1,&PendingData,NULL,NULL,&BlockTime)>0)
		{
			FromLen=sizeof(sin);
/*接收服務(wù)器端的信息*/
			if((Count=recvfrom(sk,Content,256,0,res->ai_addr,&(res->ai_addrlen)))<0)
				perror("recvfrom");
			else
				printf("recvfrom success,Count=%d \n",Count);
			if(Protocol==TIME)
			{
				memcpy(RetTime.TransTimeStamp,Content,4);
				return 1;
			}
			else if(Count>=48&&Protocol!=TIME)
			{
				RetTime.Leap_Ver_Mode=Content[0];
				RetTime.Startum=Content[1];
				RetTime.Poll=Content[2];
				RetTime.Precision=Content[3];
				memcpy((void *)&RetTime.RootDelay,&Content[4],4);
				memcpy((void *)&RetTime.Dispersion,&Content[8],4);
				memcpy((void *)RetTime.RefIdentifier,&Content[12],4);
				memcpy((void *)RetTime.RefTimeStamp,&Content[16],8);
				memcpy((void *)RetTime.OriTimeStamp,&Content[24],8);
				memcpy((void *)RetTime.RecvTimeStamp,&Content[32],8);
				memcpy((void *)RetTime.TransTimeStamp,&Content[40],8);
				return 1;
			}
		}
	}
	close(sk);
	return 0;
}

int main()
{
	memset(&hints,0,sizeof(hints));
	hints.ai_family=PF_UNSPEC;
	hints.ai_socktype=SOCK_DGRAM;
	hints.ai_protocol=IPPROTO_UDP;
/*調(diào)用getaddrinfo函數(shù),獲取地址信息*/
	rc=getaddrinfo("200.205.253.254","123",&hints,&res);
	if (rc != 0) {
		perror("getaddrinfo");
		return;
	}
	sk = socket(res->ai_family, res->ai_socktype,res->ai_protocol);
	if (sk <0 ) {
		perror("socket");
	}
	else
	{
		printf("socket success!\n");
	}
/*調(diào)用取得NTP時(shí)間函數(shù)*/
	GetNtpTime(sk,res);
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区视频免费观看| 午夜久久久久久久久久一区二区| 日韩欧美成人激情| 欧美高清视频一二三区| 在线亚洲一区二区| 在线免费观看日韩欧美| 91蝌蚪porny成人天涯| 91香蕉视频mp4| 色天使色偷偷av一区二区| 91丨九色丨国产丨porny| 99久久精品国产一区| 成人午夜免费视频| av综合在线播放| 色呦呦一区二区三区| 欧美亚洲动漫精品| 欧美日韩在线精品一区二区三区激情| 欧美午夜精品免费| 91精品国产综合久久久久久| 欧美一区二区三区日韩| 337p粉嫩大胆色噜噜噜噜亚洲| 精品国产网站在线观看| 国产欧美中文在线| 中文字幕一区二区三区在线不卡 | av中文字幕在线不卡| 91视频精品在这里| 欧美日韩亚洲综合一区| 欧美浪妇xxxx高跟鞋交| 精品国产一区二区三区不卡| 中文文精品字幕一区二区| 中文字幕亚洲一区二区av在线 | 中文字幕五月欧美| 亚洲国产精品麻豆| 老司机一区二区| 国产91综合网| 91国偷自产一区二区开放时间 | 亚洲私人影院在线观看| 午夜精品福利视频网站 | 日韩片之四级片| 中文字幕欧美激情| 亚洲一区二区av在线| 久久精品免费看| 99久久伊人精品| 欧美情侣在线播放| 国产欧美精品区一区二区三区 | 国产亚洲成av人在线观看导航| 国产精品久久久久精k8| 亚洲第一精品在线| 国产a久久麻豆| 欧美日韩国产不卡| 久久精品一二三| 亚洲国产三级在线| 国内精品视频666| 色呦呦国产精品| 久久无码av三级| 五月天一区二区| 成人自拍视频在线观看| 欧美精品第1页| 中文字幕一区二区三区精华液| 日韩精品久久理论片| 播五月开心婷婷综合| 欧美丰满嫩嫩电影| 最好看的中文字幕久久| 老司机午夜精品| 在线免费不卡视频| 亚洲国产精品黑人久久久| 麻豆精品视频在线观看免费| 97se亚洲国产综合自在线不卡| 91精品国产综合久久香蕉的特点| 日韩伦理av电影| 国产一区二区三区免费在线观看| 欧美日韩一区二区在线观看| 久久久久久久久97黄色工厂| 日av在线不卡| 欧美视频在线一区二区三区| 中文字幕一区在线| 国产成人精品一区二区三区网站观看 | 91影院在线观看| 久久久欧美精品sm网站| 奇米777欧美一区二区| 色呦呦日韩精品| 1000部国产精品成人观看| 国v精品久久久网| 精品日韩在线观看| 亚洲第一电影网| 欧洲在线/亚洲| 国产精品白丝在线| 国产精品亚洲午夜一区二区三区| 91麻豆精品国产91久久久资源速度 | 正在播放一区二区| 夜夜操天天操亚洲| 99国产精品国产精品久久| 久久久精品免费网站| 国内成人免费视频| 精品久久久久一区二区国产| 丝瓜av网站精品一区二区 | 久久久久久久久久久久电影 | 日韩视频免费直播| 亚洲福利电影网| 欧美三日本三级三级在线播放| 亚洲免费三区一区二区| av不卡在线播放| √…a在线天堂一区| 成人av在线网站| 中文字幕久久午夜不卡| 国产成人精品免费在线| 久久精子c满五个校花| 国产一区二区在线看| 欧美精品一区二区三区高清aⅴ| 久久精品国产亚洲a| 欧美丰满少妇xxxbbb| 免费成人av在线播放| 日韩区在线观看| 国产精品69久久久久水密桃| 久久久久久久综合狠狠综合| 国产成人综合亚洲91猫咪| 国产亚洲成av人在线观看导航| 成人午夜视频网站| 1000精品久久久久久久久| 91福利在线播放| 丝袜亚洲另类欧美综合| 精品久久久久99| 国产夫妻精品视频| 中文字幕日韩欧美一区二区三区| 99久久精品免费看国产| 亚洲一卡二卡三卡四卡无卡久久| 91精品国产日韩91久久久久久| 另类调教123区| 国产精品美女久久久久久久久久久 | 95精品视频在线| 亚洲一区视频在线| 欧美日韩色综合| 国产真实乱子伦精品视频| 国产亚洲婷婷免费| 91同城在线观看| 日韩1区2区3区| 国产午夜亚洲精品午夜鲁丝片| a美女胸又www黄视频久久| 亚洲va国产天堂va久久en| 日韩欧美中文字幕制服| 国产69精品一区二区亚洲孕妇| 亚洲三级久久久| 欧美一二三在线| 99久久精品99国产精品| 亚洲第一在线综合网站| 久久久国产一区二区三区四区小说 | 日韩理论片一区二区| 91精品在线免费| 欧美在线一二三四区| 亚洲午夜av在线| 久久久久九九视频| 欧美最猛黑人xxxxx猛交| 精彩视频一区二区| 亚洲精品日韩一| 26uuu另类欧美| 在线一区二区三区| 国产麻豆精品视频| 亚洲大尺度视频在线观看| 久久久久久久久一| 欧美日韩国产精品成人| 粉嫩绯色av一区二区在线观看 | 欧美网站一区二区| 懂色中文一区二区在线播放| 亚洲已满18点击进入久久| 久久久www成人免费毛片麻豆| 在线观看欧美黄色| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 日韩视频中午一区| 91激情在线视频| 国产精品亚洲专一区二区三区 | 国产综合一区二区| 亚洲国产成人91porn| 国产女人水真多18毛片18精品视频| 欧美亚州韩日在线看免费版国语版| 国产综合久久久久久久久久久久| 一区二区久久久久| 国产精品全国免费观看高清 | 日韩精品一区二区在线| 91福利在线看| 99re亚洲国产精品| 国产精品一级二级三级| 青椒成人免费视频| 亚洲无人区一区| 亚洲天堂网中文字| 欧美激情在线一区二区| 欧美成人综合网站| 欧美日韩卡一卡二| 色哟哟一区二区在线观看| 国产不卡视频一区| 国产精品中文欧美| 久久99精品视频| 日本亚洲欧美天堂免费| 亚洲午夜激情网站| 一区二区三区美女| 综合中文字幕亚洲| 中文字幕一区二区三区av| 国产亚洲综合性久久久影院| 久久综合狠狠综合| 久久先锋影音av| 337p粉嫩大胆色噜噜噜噜亚洲 | 亚洲视频你懂的|