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

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

?? remote-utils.c

?? 樹大根深三棱盡所標桿ssfsfsa fdsafs
?? C
字號:
/* Remote utility routines for the remote server for GDB.   Copyright (C) 1986, 1989, 1993 Free Software Foundation, Inc.This file is part of GDB.This program is free software; you can redistribute it and/or modifyit under the terms of the GNU General Public License as published bythe Free Software Foundation; either version 2 of the License, or(at your option) any later version.This program is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See theGNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with this program; if not, write to the Free SoftwareFoundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */#include "server.h"#include <stdio.h>int gdb_fd;/* Convert hex digit A to a number.  */static intfromhex (a)     int a;{  if (a >= '0' && a <= '9')    return a - '0';  else if (a >= 'a' && a <= 'f')    return a - 'a' + 10;  else    error ("Reply contains invalid hex digit");}/* Convert number NIB to a hex digit.  */static inttohex (nib)     int nib;{  if (nib < 10)    return '0' + nib;  else    return 'a' + nib - 10;}/* Send a packet to the remote machine, with error checking.   The data of the packet is in BUF.  Returns >= 0 on success, -1 otherwise. */intputpkt (buf)     char *buf;{  int i;  unsigned char csum = 0;//  char buf2[200];  char buf2[200];//tanghao  char buf3[1];  int cnt = strlen (buf);  char *p;  /* Copy the packet into buffer BUF2, encapsulating it     and giving it a checksum.  */  p = buf2;  *p++ = '$';  for (i = 0; i < cnt; i++)    {      csum += buf[i];      *p++ = buf[i];    }  *p++ = '#';  *p++ = tohex ((csum >> 4) & 0xf);  *p++ = tohex (csum & 0xf);	 *p = '\0';  //tanghao  /* Send it over and over until we get a positive ack.  */  do    {/*original one tanghao      int cc;      write (gdb_fd, buf2, p - buf2);      cc = read (gdb_fd, buf3, 1);      if (cc <= 0) return -1;*/      int cc;      if (write (gdb_fd, buf2, p - buf2) != p - buf2)        {          fprintf (stderr, "putpkt(write)\n\r");          return -1;        }       if (gdb_fd)        printf ("putpkt (\"%s\"); [looking for ack]\n\r", buf2);      cc = read (gdb_fd, buf3, 1);      if (gdb_fd)        printf ("[received '%c' (0x%x)]\n\r", buf3[0], buf3[0]);      if (cc <= 0)        {          if (cc == 0)            fprintf (stderr, "putpkt(read): Got EOF\n\r");          else            fprintf (stderr, "putpkt(read)\n\r");           return -1;        }                                                                       }  while (buf3[0] != '+');  return 1;			/* Success! */}/* Come here when we get an input interrupt from the remote side.  This   interrupt should only be active while we are waiting for the child to do   something.  About the only thing that should come through is a ^C, which   will cause us to send a SIGINT to the child.  */static voidinput_interrupt(){  int cc;  char c;  cc = read (gdb_fd, &c, 1);  if (cc != 1 || c != '\003')    {      return;    }  /* kill inferior */}voidenable_async_io(){/*  signal (SIGIO, input_interrupt); */}voiddisable_async_io(){/*  signal (SIGIO, SIG_IGN); */}/* Returns next char from remote GDB.  -1 if error.  */static intreadchar (){  char buf;  read (gdb_fd, &buf, 1);  return buf & 0x7f;}/* Read a packet from the remote machine, with error checking,   and store it in BUF.  Returns length of packet, or negative if error. */intgetpkt (buf)     char *buf;{  char *bp;  unsigned char csum, c1, c2;  int c;  while (1)    {      csum = 0;      while (1)	{	  c = readchar ();	  if (c == '$')	    break;    if (gdb_fd) //tanghao       printf ("[getpkt: discarding char '%c']\n\r", c);                 //tanghao	  if (c < 0)	    return -1;	}      bp = buf;      while (1)	{	  c = readchar ();	  if (c < 0)	    return -1;	  if (c == '#')	    break;	  *bp++ = c;	  csum += c;	}      *bp = 0;      c1 = fromhex (readchar ());      c2 = fromhex (readchar ());      if (csum == (c1 << 4) + c2)	break;     fprintf (stderr, "Bad checksum, sentsum=0x%x, csum=0x%x, buf=%s\n\r",               (c1 << 4) + c2, csum, buf);                                  //tanghao//tanghao      write (stdout, "-", 1);      write (gdb_fd, "-", 1);    }  if (gdb_fd)                                    //tanghao    printf ("getpkt (\"%s\");  [sending ack] \n\r", buf);   write (gdb_fd, "+", 1);   if (gdb_fd)    //tanghao    printf ("[sent ack]\n\r");                                                  return bp - buf;}voidwrite_ok (buf)     char *buf;{  buf[0] = 'O';  buf[1] = 'K';  buf[2] = '\0';}voidwrite_enn (buf)     char *buf;{  buf[0] = 'E';  buf[1] = 'N';  buf[2] = 'N';  buf[3] = '\0';}voidconvert_int_to_ascii (from, to, n)     char *from, *to;     int n;{  int nib;  char ch;  while (n--)    {      ch = *from++;      nib = ((ch & 0xf0) >> 4) & 0x0f;      *to++ = tohex (nib);      nib = ch & 0x0f;      *to++ = tohex (nib);    }  *to++ = 0;}voidconvert_ascii_to_int (from, to, n)     char *from, *to;     int n;{  int nib1, nib2;  while (n--)    {      nib1 = fromhex (*from++);      nib2 = fromhex (*from++);      *to++ = (((nib1 & 0x0f) << 4) & 0xf0) | (nib2 & 0x0f);    }}static char *outreg(regno, buf)     int regno;     char *buf;{  *buf++ = tohex (regno >> 4);  *buf++ = tohex (regno & 0xf);  *buf++ = ':';  convert_int_to_ascii (&registers[regno], buf, 4);  buf += 8;  *buf++ = ';';  return buf;}voidprepare_resume_reply (buf, status, signal)     char *buf;     char status;     unsigned char signal;{  int nib;  char ch;  *buf++ = status;  nib = ((signal & 0xf0) >> 4);  *buf++ = tohex (nib);  nib = signal & 0x0f;  *buf++ = tohex (nib);  if (status == 'T')    {      buf = outreg (17, buf);      buf = outreg (14, buf);      buf = outreg (15, buf);    }  /* For W and X, we're done.  */  *buf++ = 0;}voiddecode_m_packet (from, mem_addr_ptr, len_ptr)     char *from;     unsigned int *mem_addr_ptr, *len_ptr;{  int i = 0, j = 0;  char ch;  *mem_addr_ptr = *len_ptr = 0;  while ((ch = from[i++]) != ',')    {      *mem_addr_ptr = *mem_addr_ptr << 4;      *mem_addr_ptr |= fromhex (ch) & 0x0f;    }  for (j = 0; j < 4; j++)    {      if ((ch = from[i++]) == 0)	break;      *len_ptr = *len_ptr << 4;      *len_ptr |= fromhex (ch) & 0x0f;    }}voiddecode_M_packet (from, mem_addr_ptr, len_ptr, to)     char *from, *to;     unsigned int *mem_addr_ptr, *len_ptr;{  int i = 0, j = 0;  char ch;  *mem_addr_ptr = *len_ptr = 0;  while ((ch = from[i++]) != ',')    {      *mem_addr_ptr = *mem_addr_ptr << 4;      *mem_addr_ptr |= fromhex (ch) & 0x0f;    }  while ((ch = from[i++]) != ':')    {      *len_ptr = *len_ptr << 4;      *len_ptr |= fromhex (ch) & 0x0f;    }  convert_ascii_to_int (&from[i++], to, *len_ptr);}voiddecode_z_packet (from, breaktype, mem_addr_ptr, length)     char *from;     unsigned int *breaktype, *mem_addr_ptr, *length;{  int i = 0, j = 0;  char ch;  *breaktype = *mem_addr_ptr = *length =0;  while ((ch = from[i++]) != ',')    {      *breaktype = *breaktype << 4;      *breaktype |= fromhex (ch) & 0x0f;    }  while ((ch = from[i++]) != ',')    {      *mem_addr_ptr = *mem_addr_ptr << 4;      *mem_addr_ptr |= fromhex (ch) & 0x0f;    }  while ((ch = from[i++]) != '\0')    {      *length = *length << 4;      *length |= fromhex (ch) & 0x0f;    }}voiddecode_Z_packet (from, breaktype, mem_addr_ptr, length)     char *from;     unsigned int *breaktype, *mem_addr_ptr, *length;{  int i = 0, j = 0;  char ch;  *breaktype = *mem_addr_ptr = *length =0;  while ((ch = from[i++]) != ',')    {      *breaktype = *breaktype << 4;      *breaktype |= fromhex (ch) & 0x0f;    }  while ((ch = from[i++]) != ',')    {      *mem_addr_ptr = *mem_addr_ptr << 4;      *mem_addr_ptr |= fromhex (ch) & 0x0f;    }  while ((ch = from[i++]) != '\0')    {      *length = *length << 4;      *length |= fromhex (ch) & 0x0f;    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人丝袜美腿| 精品粉嫩超白一线天av| 国产精品入口麻豆原神| 国产成人免费在线视频| 国产亲近乱来精品视频| 国产91精品精华液一区二区三区| 久久精品水蜜桃av综合天堂| 国产精品一级在线| 亚洲欧美偷拍三级| 3d成人动漫网站| 捆绑调教一区二区三区| www日韩大片| 97se亚洲国产综合自在线| 亚洲精品成人天堂一二三| 在线播放欧美女士性生活| 狠狠色2019综合网| 亚洲视频香蕉人妖| 日韩视频一区二区在线观看| 国产99久久久精品| 亚洲影视资源网| 欧美精品一区二区在线播放| 一本一道久久a久久精品 | 风间由美一区二区三区在线观看 | 99精品视频在线免费观看| 一片黄亚洲嫩模| 久久在线观看免费| 色综合天天综合网天天看片| 日韩成人一级片| 国产精品家庭影院| 欧美日韩极品在线观看一区| 国产精品影视在线观看| 亚洲专区一二三| 精品精品国产高清一毛片一天堂| zzijzzij亚洲日本少妇熟睡| 日韩国产在线观看一区| 中文字幕精品综合| 欧美va亚洲va在线观看蝴蝶网| 成人av电影在线| 99免费精品在线| 丝袜美腿一区二区三区| 国产精品国产三级国产| 欧美电视剧在线观看完整版| 99re热视频精品| 国产一区二区在线电影| 亚洲国产一区二区三区青草影视| 久久久精品日韩欧美| 91精品在线观看入口| 色综合久久中文综合久久97 | 日韩av电影天堂| 亚洲人成伊人成综合网小说| 久久久久国产精品厨房| 欧美一区二区在线看| 91极品视觉盛宴| 成人晚上爱看视频| 国产精品一区三区| 日韩高清不卡一区二区| 夜夜精品视频一区二区| 亚洲视频精选在线| 国产欧美一区二区三区在线老狼 | 欧美日韩高清一区二区| www.av亚洲| 国产1区2区3区精品美女| 久久99国产精品麻豆| 日韩激情视频网站| 日韩影视精彩在线| 午夜精品久久一牛影视| 夜夜夜精品看看| 亚洲一线二线三线视频| 亚洲精品视频在线看| 亚洲视频免费在线观看| 亚洲欧洲99久久| 国产精品美女久久久久aⅴ| 国产欧美va欧美不卡在线| 国产欧美日韩在线看| 久久精品人人做人人爽97| 欧美精品一区二区久久婷婷| 精品国产露脸精彩对白 | 成人激情文学综合网| 风流少妇一区二区| 不卡av在线网| 99久久久国产精品免费蜜臀| 97精品久久久久中文字幕 | 首页欧美精品中文字幕| 亚洲成av人片一区二区| 丝袜亚洲另类欧美| 美女任你摸久久 | 中文字幕中文字幕在线一区| 国产精品久久久久永久免费观看| 中国av一区二区三区| 最新欧美精品一区二区三区| 亚洲精品中文在线观看| 亚洲综合精品久久| 日韩成人免费看| 精品在线视频一区| 成人在线视频一区二区| 99精品1区2区| 欧美精三区欧美精三区| 精品免费视频.| 国产精品第一页第二页第三页| 亚洲免费资源在线播放| 偷偷要91色婷婷| 国精产品一区一区三区mba视频 | 99久久久无码国产精品| 色综合咪咪久久| 在线播放91灌醉迷j高跟美女| 欧美成人精品3d动漫h| 亚洲国产精品精华液2区45| 亚洲三级电影网站| 日韩电影在线观看网站| 粉嫩嫩av羞羞动漫久久久 | 奇米在线7777在线精品| 国产激情91久久精品导航 | 激情成人午夜视频| 色婷婷av一区二区三区软件| 欧美一区二区三区在线观看| 国产欧美日韩卡一| 日韩电影在线免费| 成人黄色a**站在线观看| 91精品国产黑色紧身裤美女| 欧美激情在线看| 亚洲高清在线视频| 国产成人午夜视频| 3d成人h动漫网站入口| 国产精品久久久久久久久快鸭 | 国产一区二区三区免费播放| 91偷拍与自偷拍精品| 日韩精品一区二区三区老鸭窝| 亚洲欧洲日韩综合一区二区| 日韩1区2区3区| 色综合夜色一区| 久久久蜜桃精品| 日本特黄久久久高潮| 91丨九色丨尤物| 久久精品亚洲麻豆av一区二区| 亚洲aaa精品| 91女人视频在线观看| 久久久不卡影院| 久久精品国产澳门| 欧美日韩精品三区| 亚洲日本在线a| 成人精品视频网站| 精品国产免费视频| 日韩精彩视频在线观看| 91久久精品日日躁夜夜躁欧美| 国产亚洲一区二区在线观看| 视频一区中文字幕国产| 欧美综合视频在线观看| 亚洲男人的天堂网| 色综合久久久久网| 一区二区中文字幕在线| 风流少妇一区二区| 国产亚洲1区2区3区| 九九国产精品视频| 日韩欧美国产不卡| 日本成人在线一区| 91精品在线一区二区| 亚洲成人av资源| 欧美日韩综合在线免费观看| 亚洲天堂网中文字| 99久精品国产| 日韩伦理av电影| 91网站最新地址| 一区二区三区欧美久久| 91麻豆文化传媒在线观看| 国产精品久久久久久久裸模| 风间由美中文字幕在线看视频国产欧美| 精品国产乱码久久久久久闺蜜| 麻豆精品在线播放| 精品噜噜噜噜久久久久久久久试看| 视频一区二区三区在线| 9191成人精品久久| 日韩—二三区免费观看av| 日韩亚洲欧美高清| 国产真实精品久久二三区| 久久久99精品免费观看| 风间由美性色一区二区三区| 中文字幕在线不卡| 色综合久久88色综合天天| 一区二区三区不卡在线观看 | 久久av中文字幕片| 久久久久国产成人精品亚洲午夜| 国产风韵犹存在线视精品| 国产精品久久久久国产精品日日| www.久久久久久久久| 亚洲一区二区三区四区在线| 5566中文字幕一区二区电影| 免播放器亚洲一区| 中文字幕不卡在线观看| 99国产欧美另类久久久精品| 亚洲最大成人综合| 欧美挠脚心视频网站| 国模无码大尺度一区二区三区| 日本一区二区三区四区在线视频| 91麻豆swag| 奇米一区二区三区| 国产精品伦一区| 欧美日韩日日摸| 国产乱码精品一区二区三| 亚洲男人天堂av| 日韩欧美国产三级电影视频|