sctp uapi与内核不匹配?

时间:2014-08-26 08:44:40

标签: linux linux-kernel abi sctp

在3.x linux内核中,sctp状态在内核和uapi之间的定义不同。这是不匹配还是我错过了什么?

在include / uapi / linux / sctp.h

/* Association states.  */
enum sctp_sstat_state {
    SCTP_EMPTY                = 0,
    SCTP_CLOSED               = 1,
    SCTP_COOKIE_WAIT          = 2,
    SCTP_COOKIE_ECHOED        = 3,
    SCTP_ESTABLISHED          = 4,
    SCTP_SHUTDOWN_PENDING     = 5,
    SCTP_SHUTDOWN_SENT        = 6,
    SCTP_SHUTDOWN_RECEIVED    = 7,
    SCTP_SHUTDOWN_ACK_SENT    = 8,
};

在include / net / sctp / constants.h

/* SCTP state defines for internal state machine */
typedef enum {  

        SCTP_STATE_CLOSED               = 0,
        SCTP_STATE_COOKIE_WAIT          = 1,
        SCTP_STATE_COOKIE_ECHOED        = 2,
        SCTP_STATE_ESTABLISHED          = 3,
        SCTP_STATE_SHUTDOWN_PENDING     = 4,
        SCTP_STATE_SHUTDOWN_SENT        = 5,
        SCTP_STATE_SHUTDOWN_RECEIVED    = 6,
        SCTP_STATE_SHUTDOWN_ACK_SENT    = 7,

} sctp_state_t;

看起来这个补丁删除了SCTP_STATE_EMPTY: http://lists.openwall.net/netdev/2011/04/20/31

1 个答案:

答案 0 :(得分:0)

我在sctp开发邮件列表上发布了这个问题,内核开发人员证实这是一个不匹配。

希望这个Q / A对其他人来说仍然具有一定的价值,所以我自己回答了