AIX中setsockopt设置参数失败

aix上的应用程序作为客户端,设置网络参数以控制心跳包的属性,以下代码从linux移植过来,即在setsockopt中把SOL_TCP改成了IPPROTO_TCP,但在运行后,出现设置失败现象,错误码是: No such file or directory(通过strerror(errno)获取),跪求专家们帮忙分析,谢谢!
int keep_alive = 1;

int keep_idle = 1;

int keep_interval = 1;

int keep_count = 3;

if (setsockopt(s, SOL_SOCKET, SO_KEEPALIVE, (void*) &keep_alive,

sizeof(keep_alive)) == -1)

{

trace_log(ERR, "setsockopt SOL_SOCKET::SO_KEEPALIVE failed, %s. ",

strerror(errno));

}

if (setsockopt(s, 'IPPROTO_TCP'/*SOL_TCP*/, TCP_KEEPIDLE, (void *) &keep_idle,

sizeof(keep_idle)) == -1)

{

trace_log(ERR, "setsockopt SOL_TCP::TCP_KEEPIDLE failed, %s. ",

strerror(errno));

}
参与1

0同行回答

“答”则兼济天下,请您为题主分忧!

提问者

amdal
项目经理xgd

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2015-05-16
  • 关注会员:1 人
  • 问题浏览:3867
  • X社区推广