errno总是在VxWorks PPC中返回零

时间:2010-03-26 15:36:01

标签: c vxworks errno

我在VxWorks PPC上运行我的代码并且系统调用失败,特别是对于套接字发送/ recv函数,errno总是返回0。

经过一些分析后我发现,errno会在所有系统调用失败时返回0。

我是否应该为errno进行任何初始化以返回正确的值?

2 个答案:

答案 0 :(得分:1)

从shell(内核或主机),如果键入“i”命令,您将获得任务列表。其中一个字段是errno值。找到有错误的任务,并设置errno值。

检查errno时,您必须处于导致错误的同一任务中:

if(ERROR = someSystemFunction())
  printf("errno=%x", errno);

你不能在shell并期望打印errno

-> errno     (<---- will NEVER work)
errno:0x123455 value: 0 = 0x0

答案 1 :(得分:0)

errnoGet()将返回执行它的任务的错误。 请参阅errnoLib上的文档以检索其他任务的错误