百度质量部面试笔试体验之—三面_第1页
百度质量部面试笔试体验之—三面_第2页
百度质量部面试笔试体验之—三面_第3页
百度质量部面试笔试体验之—三面_第4页
百度质量部面试笔试体验之—三面_第5页
已阅读5页,还剩3页未读, 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、百度质量部面试笔试体验之一三面1.有过什么实习经历啊?1.1安天实验室在哈尔滨安天实验室,我在 CERT组实习,跟过两个大神,一 个是胡哥,部门技术经理,在异常分析方面很犀利。一个是swordlea, 对李哥的印象就是 C+大神,同时他也是 CERT老大。当时的项目 是做一个whois的查询插件,VC+编写。当然的组件功能是输入一 个IP地址,能够查询出它的whois信息,因为有点久了,当时也是 借鉴网上代码写出来的,自己的代码找不到了(当然怎么就没备份呢),就拿网上的代码凑合一下:/* brief* Whois clie nt program* details* This program s

2、hall fetch whois data for a IPv4 address.* author Silver Moon ( mOO n. silv3r )* */#in clude /sca nf , printf#i nclude /strtok#i nclude /realloc#in clude /socket#i nclude sockaddr_i n#in clude /getsock name#in clude /hoste nt#i nclude /closeint main (i nt argc , char *argv)char ip100 , *data = NULL;

3、printf( En ter ip address to whois :sca nf( %s , ip);get_whois(ip , data);printf(puts(data);free(data);return 0;Get the whois content of an ip by Selecti ng the correct server */void get_whois(char *ip , char *data)char *wch = NULL, *pch , *resp onse = NULL; if(whois_query( whois.ia , ip , re

4、sp on se) printf( Whois query failedpch = strtok(resp onse ,while(pch != NULL)/Check if whois linewch = strstr(pch , whois.if(wch != NULL)break;/Next line please pch = strtok(NULL ,if(wch != NULL)printf( Whois server is : %s , wch);whois_query(wch , ip , data);else*data = malloc(100);strcpy(*data ,

5、No whois datareturn;/*thechar* Perform a whois query to a server an d record resp onse* */int whois_query(char *server , char *query ,*resp on se)char ip32 , message100 , buffer1500;int sock , read_size , total_size = 0;struct sockaddr_i n dest;sock = socket(AF_INET , SOCK_STREAM , IPPROTO_TCP);/Pre

6、pare conn ecti on structures :)memset( dest , 0 , sizeof(dest);dest.sin_family = AF_INET;printf( Resol ving %s. , server);if(host name_t 0p(server , ip)printf( Failedreturn 1;printf( %s , ip);dest.s in _addr.s_addr = in et_addr( ip );dest.s in _port = htons( 43 );/Now connect to remote serverif(conn

7、 ect( sock , (const struct sockaddr*) dest sizeof(dest) ) 0)perror( connect failed/Now send some data or messageprintf( Query ing for . %s . , query);spri ntf(message , %s , query);if( sen d(sock , message , strle n( message) , 0) 0)perror( send failed/Now receive the resp onsewhile( (read_size = re

8、cv(sock , buffer , sizeof(buffer) , 0) *resp onse = realloc(*resp onse , read_size + total_size);if(*resp onse = NULL)printf( realloc failedmemcpy(*resp onse + total_size , buffer , read_size);total_size += read_size;printf( Donefflush(stdout);*resp onse = realloc(*resp onse , total_size + 1);*(*res

9、p onse + total_size)=”;close(sock);return 0;/* brief* Get the ip address of a give n host name* */int host name_t 0p(char * host name , char* ip)struct hoste nt *he;struct in _addr *addr_list;int i;if ( (he = gethostb yn ame( host name ) ) = NULL)/ get the host infoherror( gethostb yn amereturn 1;addr_list = (struct in _

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论