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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? socket2socket.c

?? linux 上端口映射程序源代碼
?? C
字號:
/* * socket2socket.c: Joins two sockets together * * Copyright (C) 2003 Miguelanxo Otero Salgueiro * * This program is free software; you can redistribute it and/or modify * it under the tems of the GNU General Public License version 2 as * published by the Free Software Foundation. * */#include <signal.h>#include "desproxy.h"#define MAX_CONNECTIONS 10#define PROGRAM_VERSION VERSION#define PROGRAM_NAME "socket2socket"unsigned char client_socket_is_free[MAX_CONNECTIONS];int client_socket[MAX_CONNECTIONS];int remote_socket[MAX_CONNECTIONS];voidEOC_s2s (int index){  close (client_socket[index]);  close (remote_socket[index]);  FD_CLR (client_socket[index], &mask);  FD_CLR (remote_socket[index], &mask);  client_socket_is_free[index] = 1;  printf (gettext ("End of connection\n"));  fflush (stdout);  fflush (stderr);}intmain (int argc, char **argv){  int request_socket, addrlen;  int index, count;  struct sockaddr_in server;  struct sockaddr_in remote;  struct hostent *remote_hostent;  char *remote_host;  char *remote_port;  char *local_port;  int nfound, maxfd;  struct timeval timeout;  int outfile = 1;  char *outfilename;  signal (SIGPIPE, SIG_IGN);  print_program_version (PROGRAM_NAME, PROGRAM_VERSION);  if ((argc < 4) || (argc > 5))    {      printf (gettext	      ("Usage: socket2socket remote_host remote_port local_port"	       " [logfile]\n\n"));      exit (1);    }  remote_host = argv[1];  remote_port = argv[2];  local_port = argv[3];  if (argc == 5)    {      outfilename = argv[4];      if ((outfile =	   open (outfilename, O_CREAT | O_WRONLY, S_IREAD | S_IWRITE)) == -1)	{	  perror ("open");	  exit (1);	}    }  if ((request_socket = socket (AF_INET, SOCK_STREAM, 0)) < 0)    {      perror ("socket");      exit (1);    }  memset (&server, 0, sizeof server);  server.sin_family = AF_INET;  server.sin_addr.s_addr = INADDR_ANY;  server.sin_port = htons (atoi (local_port));  if ((bind (request_socket, (struct sockaddr *) &server, sizeof server)) < 0)    {      perror ("bind");      exit (1);    }  if (listen (request_socket, SOMAXCONN) < 0)    {      perror ("listen");      exit (1);    }  printf (gettext ("Listening in port %d\n"), atoi (local_port));  printf (gettext ("Press <Control+C> to Quit\n\n"));  mark_all_client_sockets_as_free ();  FD_ZERO (&mask);  FD_SET (request_socket, &mask);  maxfd = request_socket;  while (1)    {      rmask = mask;      timeout.tv_sec = 5;      timeout.tv_usec = 0;      nfound = select (maxfd + 1, &rmask, NULL, NULL, &timeout);      if (nfound < 0)	{	  if (errno == EINTR)	    {	      printf (gettext ("Interrupted by system call\n"));	      continue;	    }	  perror ("select");	  exit (1);	}      if (FD_ISSET (request_socket, &rmask))	{	  addrlen = sizeof (remote);	  for (index = 0; index < MAX_CONNECTIONS; index++)	    if (client_socket_is_free[index])	      break;	  if (index == MAX_CONNECTIONS)	    {	      printf (gettext		      ("There are no connections available at this time\n"));	    }	  else	    {	      client_socket_is_free[index] = 0;	      client_socket[index] =		accept (request_socket, (struct sockaddr *) &remote, &addrlen);	      if (client_socket[index] < 0)		{		  perror ("accept");		  exit (1);		}	      printf (gettext ("Connection request from %s, port %d\n"),		      inet_ntoa (remote.sin_addr), ntohs (remote.sin_port));	      if (client_socket[index] > maxfd)		maxfd = client_socket[index];	      printf (gettext ("Connecting to remote host (%s:%s)\n"),		      remote_host, remote_port);	      if ((remote_socket[index] = socket (AF_INET, SOCK_STREAM, 0)) < 0)		{		  perror ("socket");		  exit (1);		}	      if (remote_socket[index] > maxfd)		maxfd = remote_socket[index];	      if ((remote_hostent = gethostbyname (remote_host)) == 0)		{		  perror ("gethostbyname");		  exit (1);		}	      memset (&remote, 0, sizeof remote);	      remote.sin_family = AF_INET;	      memcpy (&remote.sin_addr, remote_hostent->h_addr,		      remote_hostent->h_length);	      remote.sin_port = htons (atoi (remote_port));	      if (connect		  (remote_socket[index], (struct sockaddr *) &remote,		   sizeof remote) < 0)		{		  close (remote_socket[index]);		  printf ("\n");		  perror ("connect");		  exit (1);		}	      printf (gettext ("Bidirectional connection stablished\n"));	      printf ("(%s:%s) <-> (localhost)\n", remote_host, remote_port);	      FD_SET (remote_socket[index], &mask);	      FD_SET (client_socket[index], &mask);	    }	}      for (index = 0; index < MAX_CONNECTIONS; index++)	{	  if (!client_socket_is_free[index])	    {	      if (FD_ISSET (remote_socket[index], &rmask))		{		  printf ("remote -> local (connection #%d) ", index);		  fflush (stdout);		  if ((count =		       read (remote_socket[index], buffer,			     sizeof (buffer))) == -1)		    {		      perror ("read");		      EOC_s2s (index);		    }		  else		    {		      if (count == 0)			{			  EOC_s2s (index);			}		      else			{			  if ((count =			       write (client_socket[index], buffer,				      count)) == -1)			    {			      perror ("\nwrite");			      fflush (stderr);			      EOC_s2s (index);			    }			  else			    {			      if (argc == 5)				{				  write (outfile, "[R->L]", 6);				  write (outfile, buffer, count);				  fsync (outfile);				}			      printf (" %d Bytes\n", count);			      fflush (stdout);			    }			}		    }		}	    }	  if (!client_socket_is_free[index])	    {	      if (FD_ISSET (client_socket[index], &rmask))		{		  printf ("local -> remote (connection #%d)", index);		  fflush (stdout);		  if ((count =		       read (client_socket[index], buffer,			     sizeof (buffer))) == -1)		    {		      perror ("read");		      EOC_s2s (index);		    }		  else		    {		      if (count == 0)			{			  EOC_s2s (index);			}		      else			{			  if ((count =			       write (remote_socket[index], buffer,				      count)) == -1)			    {			      perror ("write");			      EOC_s2s (index);			    }			  else			    {			      if (argc == 5)				{				  write (outfile, "[L->R]", 6);				  write (outfile, buffer, count);				  fsync (outfile);				}			      printf (" %d bytes\n", count);			      fflush (stdout);			    }			}		    }		}	    }	}      fflush (stdout);      fflush (stderr);    }  exit (0);}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本色道久久综合狠狠躁的推荐| 激情欧美日韩一区二区| av在线综合网| 亚洲天堂av一区| 欧美调教femdomvk| 免费xxxx性欧美18vr| 欧美本精品男人aⅴ天堂| 国产精品一区二区久激情瑜伽 | 91丨九色porny丨蝌蚪| 亚洲色图19p| 欧美裸体bbwbbwbbw| 美日韩一区二区| 国产日本亚洲高清| 色域天天综合网| 奇米一区二区三区av| 久久日韩粉嫩一区二区三区| 成人污污视频在线观看| 亚洲不卡av一区二区三区| 日韩一级片在线播放| 国产成人av影院| 一区二区三区四区激情| 精品国精品自拍自在线| 成年人网站91| 日日摸夜夜添夜夜添精品视频| 久久亚区不卡日本| 日本精品视频一区二区三区| 久久超碰97人人做人人爱| 国产精品乱码久久久久久| 欧美区在线观看| 国产91精品精华液一区二区三区| 亚洲欧美福利一区二区| 日韩欧美第一区| 色综合视频一区二区三区高清| 日本三级亚洲精品| 亚洲天堂a在线| 久久综合网色—综合色88| 欧美亚洲一区三区| 国产精品一级二级三级| 亚洲成人免费观看| 中文字幕国产一区| 欧美一级专区免费大片| 色婷婷亚洲一区二区三区| 狠狠色狠狠色综合系列| 五月综合激情婷婷六月色窝| 国产精品国产三级国产a| 日韩一区二区免费高清| 欧美网站一区二区| 成人性生交大合| 麻豆91在线播放免费| 亚洲一区二区精品视频| 国产精品视频麻豆| 26uuu色噜噜精品一区二区| 欧美日韩一区在线| 在线观看亚洲精品视频| 国产69精品久久久久毛片| 蜜臀av国产精品久久久久| 亚洲午夜三级在线| 国产精品白丝在线| 国产精品丝袜久久久久久app| 精品少妇一区二区| 51久久夜色精品国产麻豆| 在线精品视频免费观看| 一本到不卡免费一区二区| 成人美女在线观看| 大胆亚洲人体视频| 国产福利一区在线| 国产黄人亚洲片| 国产在线视频不卡二| 麻豆精品一区二区三区| 视频一区在线播放| 亚洲成人免费影院| 五月天激情小说综合| 亚洲线精品一区二区三区| 亚洲综合一区在线| 亚洲观看高清完整版在线观看 | 亚洲欧美日韩国产综合| 中文字幕一区二区在线观看| 国产精品久久久久久久久久久免费看 | 国产欧美视频在线观看| 久久伊99综合婷婷久久伊| 精品少妇一区二区三区在线播放| 日韩欧美久久一区| 久久综合久久99| 国产欧美日韩综合| 国产精品女同一区二区三区| 亚洲欧洲日韩在线| 一区二区欧美国产| 午夜av区久久| 精品一区二区三区的国产在线播放| 麻豆国产一区二区| 国产一区二区三区香蕉| 国产精品一级片在线观看| 国产69精品久久久久777| 99视频精品全部免费在线| 色94色欧美sute亚洲13| 在线观看不卡一区| 这里只有精品免费| xnxx国产精品| 亚洲欧洲性图库| 亚洲成a人片综合在线| 七七婷婷婷婷精品国产| 国产麻豆视频一区| 99久久精品免费看| 欧美日韩午夜精品| 精品久久久久久久人人人人传媒| 国产亚洲成aⅴ人片在线观看| 国产夜色精品一区二区av| 亚洲欧洲在线观看av| 日精品一区二区| 国产精品主播直播| 欧美视频精品在线| 久久久久99精品一区| 亚洲综合男人的天堂| 麻豆精品精品国产自在97香蕉| 顶级嫩模精品视频在线看| 欧美日韩另类一区| 久久久综合九色合综国产精品| 有码一区二区三区| 久久99国产精品麻豆| 色偷偷久久一区二区三区| 日韩一卡二卡三卡| 最新日韩av在线| 久久国产精品无码网站| 在线观看日韩毛片| 国产欧美视频一区二区三区| 亚洲国产三级在线| 成熟亚洲日本毛茸茸凸凹| 欧美理论电影在线| 中文字幕日本不卡| 韩国中文字幕2020精品| 欧美少妇一区二区| 国产精品你懂的在线| 蜜臀av性久久久久蜜臀aⅴ四虎| 91欧美一区二区| 精品99一区二区三区| 亚洲国产欧美在线人成| 欧美videofree性高清杂交| 中文字幕日本乱码精品影院| 黑人巨大精品欧美一区| 91精品久久久久久久久99蜜臂| 亚洲免费三区一区二区| 国产大陆亚洲精品国产| 欧美一区二区三区视频免费播放 | 2023国产精华国产精品| 亚洲成人免费看| 日本道色综合久久| 国产精品久久久久影院亚瑟| 国产在线精品一区二区不卡了| 欧美日韩久久久一区| 一级日本不卡的影视| a级精品国产片在线观看| 久久久久久亚洲综合| 久久99久久久久| 91精品国产麻豆| 日本午夜一本久久久综合| 欧美久久久久中文字幕| 亚洲永久精品国产| 91美女片黄在线观看91美女| 中文字幕第一区二区| 国产福利电影一区二区三区| 精品国产乱码久久久久久影片| 三级一区在线视频先锋| 欧美日本在线播放| 亚洲国产精品天堂| 欧美日韩电影在线| 日韩av中文在线观看| 欧美精品日韩综合在线| 日本中文在线一区| 日韩欧美中文字幕精品| 久久99久久99小草精品免视看| 日韩丝袜情趣美女图片| 激情综合五月婷婷| 国产日产欧美一区| 99久久精品国产网站| 亚洲综合色区另类av| 欧美日韩一区小说| 人禽交欧美网站| 精品99一区二区三区| 国产伦精一区二区三区| 国产欧美精品一区aⅴ影院| gogo大胆日本视频一区| 亚洲激情av在线| 欧美丰满高潮xxxx喷水动漫| 秋霞影院一区二区| 精品理论电影在线观看 | 中文字幕日韩欧美一区二区三区| 波多野结衣精品在线| 亚洲精品中文在线影院| 欧美色视频一区| 日本不卡视频一二三区| 精品sm在线观看| 91麻豆高清视频| 日韩成人免费电影| 久久久激情视频| 色域天天综合网| 精品中文字幕一区二区| 中文字幕在线观看不卡| 欧美日韩国产精品成人| 精彩视频一区二区三区| 中文字幕在线免费不卡|