网络、内存以及莫名其妙的问题

2016-12-06  本文已影响19人  李书文

这个问题很奇怪,在测试只是用PROTOCOL_RDP进行加密通信的过程中,程序莫名其妙的崩溃了。
崩溃不可怕,只要可以重现就知道崩溃点在哪里,还是很好解决的。
最后定位到的原因是,在进行RC4的密钥交换时,无法Decode Server的Certificate,从而造成没法把ClientRandom用Server的Public Key加密之后发给Server。最后整个RDP的流程就在这里停止了。
至于为什么崩溃,是直到这个问题解决的时候才明白的,反正就是在读取Certificate的时候用到的一块malloc出来的内存,在最后程序的退出free的时候,莫名其妙的崩溃了。
解决方法很笨拙,就是把MSTSC和FreeRDP的连接的包都抓下来一点点的对比。
总结一下吧,为了和标题对上我们就按标题顺序来描述这个问题:

上一篇下一篇

猜你喜欢

热点阅读