ncat 代码最烂,没有之一,玩去不是能够稳定使用的东东.
最近需要写个SSL的客户端,偷懒直接使用ncat+脚本来实现.越做越发现,ncat其烂无比.这里是说其代码简直是一塌糊涂.建议各位不要使用, 对的,不要使用.
程序退出没有错误代码
一般商用化的程序或者代码都会提供丰富的错误退出代码或者各种原因码. 看看人家curl,通过原因码可以方便的知道问题在哪里.
ncat 对于错误只有一个原因码,那就是1.唉,只能说,您这个是实际使用的东东吗.
exit到处飞
尝试从源代码上根据不同的错误原因让其返回不同的原因码,从代码中发现,根本是不可能的.
ncat_connect.c: exit(1);
ncat_connect.c: exit(2);
ncat_connect.c: exit(1);
ncat_connect.c: exit(1);
ncat_connect.c: exit(1);
ncat_connect.c: exit(1);
ncat_connect.c: exit(1);
ncat_connect.c: exit(1);
也是服了写这个代码的哥们,简直是随心所欲啊,让exit 随意飞….
内存泄漏/Socket没关/Fd没处理…
用Valgrind 做了一下最简单的内存泄漏分析.简直惨不忍读.ncat连接 www.baidu.com 什么都不做退出. Valgrind给的报告要跑好多屏才能报告完.
想想也是,到处exit能有保护不泄漏才怪.