- 博客(7)
- 收藏
- 关注
原创 GOREPLAY源码解析之命令行参数
[size=medium][b]环境与编译[/b][/size]GOREPLAY使用GO语言编写,源码下载后,安装好GO的运行环境,安装PCAP等linux应用后,还需要对GOREPLAY依赖的GO包进行下载并且放到指定的目录,GO通常是通过GIT获取依赖的包,但因为机器在内网,不能连接互联网,所以我采取的方式把依赖下载到本地,再上传到GO的GOPATH,按路径放好,最后go build可以编...
2017-09-30 17:35:52 658
原创 GOREPLAY源码解析之概况
GOREPLAY是一个网络流量转发的应用,之前的名字叫GOR,GITHUB上的作者有介绍,更准确说应该是HTTP流量转发,作者的目标应该是WEB型应用在内网的转发,因为HTTP是一个应用广泛的协议,并且是标准的,因此从这个角度出发编写出来的转发应用能够在绝大多数的场景使用。这也会带来一定的问题,假设我们要转发其他的协议类型,这个时候需要自行编码识别协议的边界再做转发。GOREPLAY使用GO语...
2017-09-30 16:37:30 760
原创 mysql并发插入
通常我们对表进行插入的时候,是这样操作的:[code="java"]start transaction;select * from t where id='x';if not exist: insert into t(id,c) values('x',1);else: update t set c=c+1 where id='x';commit;[/code]...
2016-05-19 19:54:12 1255
原创 自己写的标准qsort
#include void qsort(int a[], int s, int e) { if(s >= e) { return; } int i = s, j = e, t = 0; while (i < j) { while (i < j && a[j] > a[s]) { --j;...
2014-05-25 21:54:08 173
继承c++ template类的时候找不到基类protected成员定义
翻了好多地方,有人说在成员前面加this->可以解决,果然可以,但一直不明白原因,代码:#include #include #include #include #include using namespace std;template class b { public: b(){} b(T i){ x.push...
2012-05-08 16:40:55 457
原创 gcc编译依赖
gcc编译的时候,依赖库是有顺序的,越基础的库越要写在后面,因为它有可能出现这样的情况,B依赖于C同时A依赖于C,如果这样写gcc -o E B C A,则有可能造成C中的某些函数找不到在B中的实现,其原因可以在gcc的帮助里找到: -l library Search the library named library when linking. (The secon...
2012-04-13 00:50:30 378
原创 c/c++下修改字符串常量(mark)
#include #include int main( int argn, char* argv[] ) { char* szStringA = "Hello,world!"; char* szStringB = "Hello,worl...
2012-04-09 00:13:08 265
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人