为什么断言在CTS情况下关闭udp6端口:android.net.cts.ListeningPortsTest :: testNoListeningUdp6Ports

时间:2012-07-06 12:25:35

标签: android cts

当我运行CTS案例:android.net.cts.ListeningPortsTest:: testNoListeningUdp6Ports时,它失败了,跟踪如下:

  

android.net.cts.ListeningPortsTest $ ListeningPortsAssertionError:发现端口侦听addr = 00000000000000000000000000000000,po​​rt = 43012,UID = 1000 in / proc / net / udp6 at android.net.cts.ListeningPortsTest.assertNoListeningPorts(ListeningPortsTest.java: 130)

这种情况从文件中获取udp6端口信息:/ proc / net / udp6,但是如果udp6端口的状态为“07”,这意味着CLOSED(如include / net / tcp_states.h所定义),为什么isPortListening()同样返回“true”。然后案例认为udp6端口正在侦听,并抛出异常。

所以,我认为在这种情况下可能有问题,有人可以解释一下吗?谢谢。

附录

private static boolean isPortListening(String state, boolean isTcp) {
    // 0A = TCP_LISTEN from include/net/tcp_states.h
    String listeningState = isTcp ? "0A" : "07";
    return listeningState.equals(state);
}

1 个答案:

答案 0 :(得分:1)

方法isTcpfalse参数设置为testNoListeningUdp6Ports,但testNoListeningTcp6Ports true