`
optman
  • 浏览: 44128 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

ios上libevent在dns解析时崩溃的解决

阅读更多

 

在window和mac,甚至模拟器里都一切正常,就是在iPad机器上崩溃了。

 

libevent版本:2.0.11-stable

 

 

1.       DNS解析时需要使用ARC4RANDOM算法生成transaction id,而ios自带的算法库有问题,会导致崩溃。还好,libevents提供了另一套替代的算法库,使用该算法库可以不崩溃。

Evutil_rand.c里,去掉_EVENT_HAVE_ARC4RANDOM定义

这时,arc4random_bufarc4random_addrandom与系统提供的实现命名冲突,修改一个名字即可,同时修改arc4random.c文件。

2.       Ipad上读取DNS配置有问题,所以不能读取系统配置,而要单独设置域名解析服务器,比如Google的域名解析服务器8.8.8.8


_dns_base = evdns_base_new(_base, 0);

evdns_base_nameserver_ip_add(_dns_base, "8.8.8.8");            

 

 

分享到:
评论
1 楼 yingsun_xuebao 2013-03-31  
在ios上设置dns需要什么设置吗.....我的邮箱,850551720@qq.com,,,,,急。。。。谢谢。。。。

相关推荐

Global site tag (gtag.js) - Google Analytics