curl命令小记

curl命令小记
curl -x 192.168.33.15:8080 -H "cache_control:no-cache" \ http://120.132.42.189:8090/mp4/test.mp4 -o test.mp4 --progress o:指定文件写入 progress:显示进度百分比 代理设置 wget -e "http_proxy=porxyhost:port" www.baidu.com curl -x proxyhost:port www.baidu.com 如果需要用户名密码,格式 curl -x "http://user:pwd@host:port" www.baidu.com 在Linux的命令行底下,一般的程序都是使用http_pro...

suricata 3.1 源码分析27 (数据包IPv4解码)

suricata 3.1 源码分析27 (数据包IPv4解码)
int DecodeIPV4(ThreadVars *tv, DecodeThreadVars *dtv, Packet *p, uint8_t *pkt, uint16_t len, PacketQueue *pq) { StatsIncr(tv, dtv->counter_ipv4); SCLogDebug("pkt %p len %"PRIu16"", pkt, len); /* do the actual decoding */ if (unlikely(DecodeIPV4Packet (p, pkt, len) < 0)) { /* DecodeIPV4首先会调用完成实际解码的DecodeIPV4Packet函数,该函...

suricata 3.1 源码分析22 (数据包处理2)

suricata 3.1 源码分析22 (数据包处理2)
对数据包进行进一步处理的TmThreadsSlotVarRun函数原型如下: TmEcode TmThreadsSlotVarRun(ThreadVars *tv, Packet *p,TmSlot *slot) 按照函数头的注释说明,这个函数被从母函数中拉出来独立存在的原因是,为了能够对其进行递归调用。函数主流程是一个遍历所有slot的for循环, /** * \brief Separate run function so we can call it recursively. * * \todo Deal with post_pq for slots beyond t...

suricata 3.1 源码分析32 (FlowWorker处理流程1)

suricata 3.1 源码分析32 (FlowWorker处理流程1)
TmEcode FlowWorker(ThreadVars *tv, Packet *p, void *data, PacketQueue *preq, PacketQueue *unused) { FlowWorkerThreadData *fw = data; /*FlowWorkerThreadInit中初始化,包含大量stats统计指标, decode指标在DecodeThreadVars中, tcp指标在StreamTcpThread中*/ void *detect_thread = SC_ATOMIC_GET(fw->detect_thread); //获取detect线程(3.1中的worker线程)的数据 S...

suricata 3.1 源码分析26 (数据包VLAN解码)

suricata 3.1 源码分析26 (数据包VLAN解码)
由于VLAN可能嵌套,因此Packet结构体中使用以下相应字段进行记录: 字段含义vlan_idx当前的vlan层数,初始为0,最多为2,即最多只能嵌套一层VLAN,否则会报错。vlan_id[2]记录每一层的VLAN ID(共12位,可表示4096个VLAN),通过GET_VLAN_ID获得。vlanh[2]记录每一层的VLAN头指针(VLANHdr *类型)。 /** * \internal * \brief this function is used to decode IEEE802.1q packets * * \param tv...

VS2010通过OLE操作Excel2010

VS2010通过OLE操作Excel2010
我使用的语言是C++,网上有许多这方面的例子,但由于VS与Office版本的问题,都需要一些调整,下面是我在使用时遇到的一些问题集解决方法: 操作步骤: a. project->add class->MFC class from typelib 导入Excel.exe,一般都在C:/Program Files/Microsoft Office/Office14路径下; b. 选中以下几项_Application,_WorkSheet,_WorkBook,WorkSheets,WorkBooks,Range,然后导入; c. 导入后在工程中添...

Linux下去掉^M的方法

Linux下去掉^M的方法
第一种方法:cat-Afilename就可以看到Windows下的断元字符^M要去除他,最简单用下面的命令:dos2unixfilename 第二种方法:sed-i's/^M//g'filename#注意:^M的输入方式是Ctrl+v,然后Ctrl+M 第三种方法:#vifilename:1,$s/^M//g^M输入方法

suricata 3.1 源码分析14 (流查找分配)

suricata 3.1 源码分析14 (流查找分配)
流查找/分配 通过FlowWorker线程函数中调用FlowHandlePacket来找到流。 下面将按照FlowHandlePacket的流程,分析flow engine对于新送入的解码后的数据包是如何处理的。 对于一个Packet,首先在流表中查找其所属的流是否已经存在,若存在,则直接返回该流的引用即可,否则就需要分配一个新流。 该过程的实现由FlowGetFlowFromHash完成,函数会返回一个Flow指针,表示找到的或新分配的流。 /** \brief Get F...

Linux下使用shadowsocks(以ubuntu16.04为例,非服务器)

Linux下使用shadowsocks(以ubuntu16.04为例,非服务器)
  系统环境:Ubuntu 16.04 安装 Linux不同的发行版执行的命令如下(最好在root下运行以下命令,原因我下面会说明): Debian / Ubuntu: apt-get install python-pip pip install shadowsocks CentOS: yum install python-setuptools && easy_install pip pip install shadowsocks 配置 sudo vim /etc/shadowsocks.json //这里的json文件是自己创建的,不是系统自带 配置文件的内容大致...
Copyright © 九毛的官方博客 保留所有权利.   Theme  Ality

用户登录