Linux下socket(AF_INET, SOCK_RAW, IPPROTO_UDP)总返回-1

JackHao123 2017-08-09 02:59:55
socket(AF_INET, SOCK_RAW, IPPROTO_UDP)在windows下就没有问题,但是移植到linux下,就创建不成功了,不知道问什么,总返回-1,而socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP)就没有问题,求解答
...全文
826 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
JackHao123 2017-08-10
  • 打赏
  • 举报
回复
引用 5 楼 jklinux 的回复:
[quote=引用 3 楼 haoxiuzhao 的回复:] 非root用户就不成功,root用户就可以
看错了还以为是移植到开发板里呢, 原始套接字在linux pc系统里是需要管理员权限的.[/quote]谢谢你了,能不能加你为好友阿,太感谢了
jklinux 2017-08-09
  • 打赏
  • 举报
回复
引用 3 楼 haoxiuzhao 的回复:
非root用户就不成功,root用户就可以
看错了还以为是移植到开发板里呢, 原始套接字在linux pc系统里是需要管理员权限的.
JackHao123 2017-08-09
  • 打赏
  • 举报
回复
引用 1 楼 renwotao2009 的回复:
查看下errno,用strerror(errno)打印下错误,针对错误找原因
好的,我试试
JackHao123 2017-08-09
  • 打赏
  • 举报
回复
非root用户就不成功,root用户就可以
jklinux 2017-08-09
  • 打赏
  • 举报
回复
引用 楼主 haoxiuzhao 的回复:
socket(AF_INET, SOCK_RAW, IPPROTO_UDP)在windows下就没有问题,但是移植到linux下,就创建不成功了,不知道问什么,总返回-1,而socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP)就没有问题,求解答
嵌入式系统里有可能与当前执行程序的用户有关,不能用root用户,试下用其它用户。
renwotao2009 2017-08-09
  • 打赏
  • 举报
回复
查看下errno,用strerror(errno)打印下错误,针对错误找原因

23,110

社区成员

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

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