- 博客(100)
- 收藏
- 关注
原创 openssl 命令参数
openssl enc -d -p -aes-128-cbc -K 25683749789abcdeffedcba987654321 -iv 00000000000000000000000000000000 -nosalt -nopad -out 17_des.txt -in test17.txt
2021-06-03 00:56:13 1425 1
原创 文件系统支持64位
支持64BIT fopen_FILE_OFFSET_BITS,其实调用是fopen64()stat实际上调用的stat64.为什么要用这个宏定义,而不直接将stat的实现到stat64.因为有些老库还是有的这个结构,如果不保留老的。所有的老库要全部更新,这牵扯到好多第三方更新,兼容性就不够好。1:_GNU_SOURCE(g++定义了...
2020-02-22 17:27:27 591
转载 交换密匙扫盲
感谢大牛分享:https://blog.csdn.net/mynameislinduan/article/details/83181534文章目录★密钥交换/协商机制要达到啥目的?★密钥交换/协商机制的几种类型★基于 RSA 的密钥协商★基于 DH 的密钥协商★DH 的变种★基于 PSK 的密钥协商★基于 SRP 的密钥协商★各种组合的一览表 先插播一个好消息: 本月初俺发...
2019-08-23 16:42:01 395
原创 https真的能保证完全数据安全和完整性吗?
A:对于https的认证完成,获取对称加密数据后,我个人感觉后面是难以保证完整性的,特别是通过抓包和fiddle劫持后的感受.1.别人偷窥不到真正的数据.2.但别人可以搞破坏(损人为最高原则)譬如,当中间人随意改动tcp段数据(我看不到但可以搞破坏数据),服务器通过对称加密算法解密,从tcp来看,并不能感知数据被篡改.除非应用代码对数据进行额外的安全校验.网上查阅了不少资料,也没有...
2019-03-06 14:34:06 7855
原创 repo+gerrit环境搭建
搭建repo的过程中,遇到几个拦路虎,折腾了很久,终于搞定。1.repo的main.py等脚本必须添加。脚本是从拷贝的内网来的。来源稍后需要再分析。2.git 可以pull下来,repo sync 不下来。没有权限。原因:.gitconfig确认用户名和邮箱是否和gerrit网页配置的一致。git并不会严格检查这里,所以git并没有问题。1.repo upload没有权限。repo --trace...
2018-05-10 21:18:51 2160
转载 apn
引用自http://blog.chinaunix.net/uid-20658254-id-189410.html3G模块拨号上网设置APN,拨号号码,帐号和密码 分类: 嵌入式2011-03-15 09:31:50 运营商(ISP)APN拨号号码帐号密码中国联通WCDMA(China Unicom)3GNET*99#空空中国电信CDMA2000(China Telecom)EVDO网络空#777...
2018-05-08 08:42:36 1175
原创 ip,tcp,icmp,udp校验
报文的校验和算法一样,但在作用范围存在不同: IP校验和只校验20字节的IP报头; 而ICMP校验和覆盖整个报文(ICMP报头+ICMP数据);UDP和TCP校验和不仅覆盖整个报文,而且还有12字节的IP伪首部,包括源IP地址(4字节)、目的IP地址(4字节)、协议(2字节,第一字节补0)和TCP/UDP包长(2字节)。另外UDP、TCP数据报的长度可以为奇数字
2017-09-06 16:27:56 455
转载 为什么tcp没有长度,而udp有
突然想到这个问题.转载http://www.itye.org/archives/3087,相对来说解释比较合理.但stevens的可能两字还是不爽,但是历史原因谁能说全呢?协议制定人,不同人不同角度,再说规则的制定前后并不是给你去对比统一的.何必钻牛角呢?如此想来,也是正常的,辩证看待问题.你才会有更宽的视野.IP的头部包换数据的长度,TCP的头部不包含数据长度,UDP的头部则包含
2017-09-06 15:54:45 879
原创 ecos tcpip代码解析
free_tcpip=bsd_tcpip : tcp_output()进行了分段+输出,512是比较保守的mss.iwtcpip: tcp_enqueue进行了分段,tcp_output进行输出.tcp_output---->ip_outputip_output再进行分片.当然,udp分片在所难免(如果长度>mtu).tcp在分段的时候就规避了分
2017-09-05 15:51:21 355
原创 父子进程对信号的继承
经测试,使用system ,exec族产生的子进程子进程会继承父亲的部分信号。默认-》默认忽略--》继承改写--》默认这个也好理解,父子进程就像DNA遗传,尽量遗传父亲的。但是execl已经重新载入进程,改写的函数位置都不存在了。如何继承!!如果是fork的话,则完全继承。
2017-09-01 08:03:01 706
原创 僵尸进程产生
僵尸进程通俗理解就是孩子先于父亲死掉,父亲又没有埋掉孩子,导致孩子成了僵尸。但是父亲死后,孩子资源就会被系统回收掉。如果父亲先于孩子死了,那孩子就成了孤儿,会由社会收养。如果父亲没死,则社会不会管的。孤儿是活着的,僵尸是死的。这么通俗的解释,应该好理解吧。
2017-09-01 07:56:29 273
原创 upstart进程
在ubuntu上测试父子进程的时候,发现父进程被kill了后,子进程被过继给了upstart进程,并不是1号init进程。init->sbin/lightdm->lightdm->upstart->gnome->bash->test->a.outkill test后,a.out是孤儿进程,过继给upstart!
2017-09-01 07:42:33 412
原创 sprintf和swprintf
setlocal对这两个函数的影响。操作环境。ubuntu,local zh_CN.utf8测试printf,sprintf,10 setlocale(LC_ALL, "zh_CN.utf8");(gdb) n22 sprintf(aa,"%ls",L"中国");(gdb) n23 printf("%ls",L"中国");(gdb) x/10x aa0
2017-08-24 08:06:36 572
原创 JTAG调试内核和gdbserver冲突问题。
在进行linux 内核使用jtag ,应用使用gdbserver调试的时候,应用的断点被jtag命中。发现应用只要bkpt命令,则会导致jtag响应,估计和jtag的驱动监控breakpoint有关。以为是自己内核的断点。解决方式1:更新驱动,需要中天配合。暂不考虑。 2:修改gdbserver代码(原理:gdbserver修改了断点指令到0(bkpt...
2017-03-26 21:29:41 641
原创 printk 比printf先打印出来。
在系统调用代码里加的打印比应用上还要快出来。顺序不对了。why?都使用了\n.即使使用了fflash(stdout)还是一样。不清楚是不是printf的行缓冲打印是不是在内核里面使用了非同步模式。比如定期刷新。
2017-03-21 08:24:56 483
原创 关机流程
#0 0xc02d8fcc in gx3211_demux_cleanup ()#1 0xc027b652 in gxav_device_close ()#2 0xc027a2bc in gxav_close ()#3 0x9004010c in __fput ()#4 0x900401aa in fput ()#5 0x9003d886 in filp_close
2017-03-17 21:04:09 329
转载 内核sleep schedule_timeout
#include #include #include #include #include MODULE_VERSION("1.0.0_0"); MODULE_LICENSE("GPL"); MODULE_AUTHOR("gwy"); #ifndef SLEEP_MILLI_SEC #define SLEEP_MILLI_SEC(nMilliSec)
2017-01-05 12:43:02 628
原创 一个脚本在makefile中用到嘚问题。
Makefile :test: ./buildbuild . env.shmake test发现报错。./build: 1: .: env.sh: not found如果不是在makefile中调用这个build则不会报错。经测试,发现貌似Makefile会将默认脚本改为/bi
2016-08-24 16:20:22 242
原创 关于ld.so.conf
配置这个,再调用ldconfig.ldconfig -p 将可以看到哪些库被定位了。(读ld.cache 文件)必须要注意的是。这种方式并不是将目录添加到搜索路径,每次加一个库到一个已经有过的自定义lib都要重新调用ldcnfig来进行注册到cache.同时cache里面登记的是soname.所以对于这种结构/home/xiongyf/lib/libtest.so.
2016-08-12 14:42:16 442
转载 GCC编译顺序和依赖。
转自http://www.cnblogs.com/little-ant/p/3398885.html折腾gcc/g++链接时.o文件及库的顺序问题Table of Contents1 gcc/g++链接时.o文件以及库的顺序问题1.1 写在前面1.2 几个名词1.3 技术铺垫1.3.1 编译动态库时的符号解析1.3.2 linux下查看一
2016-07-20 18:09:30 1090
原创 apache 搭载PHP
我的apache版本是2.2.php版本是D:\php-5.4.45-Win32-VC9-x86php只需要指定目录即可。php.ini :doc_root = "C:\Program Files\Apache Software Foundation\Apache2.2\htdocs"apache需要修改。httpd.conf1,LoadModule
2016-06-04 16:06:55 261
原创 patch命令注意
patch命令对于补丁路径的概念。如果两个路径都是相对路径:如果两个一个是相对,一个绝对路径:如果两个都是绝对路径:经过测试:都是先找短的,再找长的,不管是第一个还是第二个。总结:先找短的,找不到再找长的。如果两个长度相同,则找第一个,找不到找第二个。所以打补丁的人拿到补丁后,找到打补丁处和第一个或者第二个的相对路径差即可。diff -ru home2/aa/b
2016-04-08 10:01:17 531
转载 ubuntu sourceinsight 下smb挂载和gvfs的不同表现。
sudo mount -t cifs //192.168.1.156/xiongyf /home/xiongyf/samba/ -o user=xiongyf,pass=xiongyf,iocharset=utf8,uid=1000注意此挂载的uid是表示的意义是以什么身份挂载过来。比如他在原来服务器上是1008,如果你不加UID,则挂成1008,此时你的1000就不是使用者,而是
2016-03-15 17:30:40 1404
原创 关于类的虚函数的public,private的继承问题。
下面的代码编译结果报错。test.c: In function `int main(int, char**)':test.c:18:22: error: `virtual void TEST2::testxiongyf()' is privatetest.c:60:25: error: within this context但是看60行。如果把private切换为public,
2015-12-24 15:02:02 2188
原创 关于类的多态思考。
通过测试代码,目前的结论;A:类不能强制转换,比如b=(bb)a;错误,function 'int main(int, void**)':test444.cpp:85:8: error: no matching function for call to 'bb::bb(aa&)'test444.cpp:85:8: note: candidates are:test444.c
2015-12-16 01:36:14 292
原创 关于信号函数处理过程中对信号的屏蔽理解。
首先看下面的例子。备注,这个从网络上一个提问者,但是因为不好提评论而且没人回复的帖子说起。2,编译运行后 另外起一个终端, kill -s USR2 842 kill -s USR1 842输出: start working ,send signal cmd: kill -s USR1 842 in sigparse2: SIGUSR2
2015-10-23 00:38:34 435
转载 http 表单加密。
js md4、md5、sha1 加密算法文件下载地址:md5.js、md4.js、sha1.js使用MD5加密的方法:下载md5.js文件,在网页中引用该文件: type="text/javascript" src="md5.js">在你需要使用MD5加密的地方如此调用: type="text/javascript" >hash = hex_md5("input stri
2015-09-28 16:11:12 2150
原创 关于浏览器f5和ctrl+f5加深对缓冲的理解。
IE:F5:GET http://192.168.1.107/htdocs/ HTTP/1.1Accept: */*Accept-Language: zh-cnAccept-Encoding: gzip, deflateIf-Modified-Since: Thu, 24 Sep 2015 05:46:11 GMTIf-None-Match: "2000000003ba
2015-09-24 15:08:04 314
原创 UDP发送接收尺寸问题。
测试发现:UDP发送尺寸不能太大。比如我这里的系统4096都发送不出去。4095可以。具体可能和系统相关。即使你 setsockopt(sockfd,SOL_SOCKET,SO_SNDBUF,&optVal,optLen);也是无效的(尽管使用getsockopt发现已经设置正确2*大小)也就是说 。UDP的发送是可以说完全是由系统默认大小。通过socket接口不能更改!
2015-07-19 22:46:03 722
原创 关于在内网服务器的思考。
目标:做一个网页服务器。花生壳内网版本:注册一个帐号。记住你的IP和客户端的端口。你共享一个端口,则配置80:11125.xiongyf--->你的IP。服务器不会记录80:11125隐射。发给你的客户端。客户端再将11125解释为80。调用80端口。假想前提:TCP通信。缺点:所有数据通过花生壳服务器中转!特点:服务器只要开一个监听端口为客户端
2015-07-08 12:48:58 268
转载 $@ 和$*
shell中$*与$@的区别关于$* 和 $@的 一点 认识 同是菜鸟一起学习$*所有的位置参数,被作为一个单词.注意:"$*"必须被""引用.$@与$*同义,但是每个参数都是一个独立的""引用字串,这就意味着参数被完整地传递,并没有被解释和扩展.这也意味着,每个参数列表中的每个参数都被当成一个独立的单词.注意:"$@"必须被引用.$@ $* 只在被
2015-01-26 12:57:22 340
原创 关于复制高棉语言到UE和记事本。
005 មិនមានឆានែលសូមទាក់ទងសេវាអតិថិជន ...复制到UE的时候:1,新建一个,然后复制,发现显示乱码。保存为UTF-8格式,比较,发现数据都为???的ASCII 3f3f.打开仍然为乱码。2,但是如果是先新建一个文件,保存为UTF8或者UNICODE,然后复制。则是完全正确的。所以,UE的复制逻辑是1,检查新建文件的格式。
2015-01-05 13:50:52 678
原创 fwrite的理解。
测试过a+的时候,发现两个进程同时开一个文件,1,即使不fclose,数据还是会往硬盘写。2,发现1K的时候数据会从clib写入系统的PAGE_BUF.3,从page_buf往硬盘写的时机是kernel有一个pflush线程按照一定的算法去刷新。比如几个扇区挨的近的会在一起刷。 两个进程同时运行写一个文件,他们会穿插着写,而且穿插单位是1K。include "stdio
2015-01-04 00:46:43 884
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人