diff options
| author | Lu Qiuwen <[email protected]> | 2020-04-02 17:12:50 +0800 |
|---|---|---|
| committer | Lu Qiuwen <[email protected]> | 2020-04-02 17:12:50 +0800 |
| commit | 21026588dfbb17846f6e6b6abcb14c0a8c2c9bd4 (patch) | |
| tree | 883893aa44ee90181e15799b92d141d0f5ed12ef | |
| parent | b7e5f7bf9d9c0fb8f709d71c3781765b05dfb1eb (diff) | |
修正向前兼容问题,读取不到当前包的方式时认为该包是C->S方向。HEADv1.0.5-20200408master
| -rw-r--r-- | cmsg.c | 4 | ||||
| -rw-r--r-- | cmsg.h | 1 |
2 files changed, 3 insertions, 2 deletions
@@ -83,7 +83,7 @@ int tcp_restore_info_parse_from_skb(struct sk_buff *skb, struct tcp_restore_info struct sockaddr_in *in_addr_client; struct sockaddr_in *in_addr_server; - if (out->cur_dir == PKT_CUR_DIR_C2S) + if (out->cur_dir == PKT_CUR_DIR_NOT_SET || out->cur_dir == PKT_CUR_DIR_C2S) { in_addr_client = (struct sockaddr_in *)&out->client.addr; in_addr_server = (struct sockaddr_in *)&out->server.addr; @@ -113,7 +113,7 @@ int tcp_restore_info_parse_from_skb(struct sk_buff *skb, struct tcp_restore_info struct sockaddr_in6 *in6_addr_client; struct sockaddr_in6 *in6_addr_server; - if (out->cur_dir == PKT_CUR_DIR_C2S) + if (out->cur_dir == PKT_CUR_DIR_NOT_SET || out->cur_dir == PKT_CUR_DIR_C2S) { in6_addr_client = (struct sockaddr_in6 *)&out->client.addr; in6_addr_server = (struct sockaddr_in6 *)&out->server.addr; @@ -24,6 +24,7 @@ enum tcp_restore_info_tlv_type enum tcp_restore_pkt_cur_dir { + PKT_CUR_DIR_NOT_SET = 0x0, PKT_CUR_DIR_C2S = 0x1, PKT_CUR_DIR_S2C = 0x2 }; |
