关于 Address family not supported by protocol

just4rmb 2011-11-19 02:03:52

写linux下的通信程序出现: Address family not supported by protocol

在本机上测试,都用的是AF_INET和127.0.0.1

都改成AF_UNIX的话就会出现“Invald paramenter”

信息发不出去,到底怎么回事?
...全文
6024 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
just4rmb 2011-11-19
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 joeblackzqq 的回复:]

用于本机通信的是AF_LOCAL,用于网络通信的是AF_INET
[/Quote]

我是一个客户端程序一个服务器程序,客户端可以向服务器发送成功,服务器回复却不成功
JoeBlackzqq 2011-11-19
  • 打赏
  • 举报
回复
用于本机通信的是AF_LOCAL,用于网络通信的是AF_INET
just4rmb 2011-11-19
  • 打赏
  • 举报
回复
sockfd 是发信的端口
clientGroup[1]是127.0.0.1和AF_INET
另外一个向他发信的sendto成功,这个却不成功,我真郁闷了
just4rmb 2011-11-19
  • 打赏
  • 举报
回复

void send_to_all(int sockfd,struct sockaddr_in* clientGroup,char* buff,int num)
{
int i = 0;
int rel;
printf("message is %s\n",buff);
printf("num == %d\n",num);
for(;i < num;i++)
{
printf("sendto %d\n",clientGroup[num].sin_addr.s_addr);
rel = sendto(sockfd,buff,30,0,(struct sockaddr *)&(clientGroup[i]),sizeof(struct sockaddr));
printf("rel == %d\n",rel);
if(rel == -1)
{
perror("sendto:");
}
}
}
qiuxin315 2011-11-19
  • 打赏
  • 举报
回复
贴源码看看吧
qq120848369 2011-11-19
  • 打赏
  • 举报
回复
AF_LOCAL.

保证客户端,服务端均主动bind在各自的一个不存在的路径名上。

23,120

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧