【严重程度】 一般
【特性】 网络
【重现类型】 有条件必然重现
【* 定位分析】 (备注: 有效问题请“先对原有功能进行描述,重点描述与当前故障现象相关的技术点、以及缺陷出现的触发条件、错误出现的函数等”;非问题“需要澄清技术细节,描述技术实现原理以及当前现象合理性的解释”;重复问题请“说明重复问题单号”
另外,开发人员需要在此处提供问题相关分析的bugzilla连接(如无可不写),并将问题的最终分析结论详细说明
pakcet通过ipvlan发送数据的时候,如果发包函数被修改为packet_direct_xmit,则packet_snd会调用packet_direct_xmit,再调用ipvaln的发包函数进行发包。packet_snd()只有在sock->type为SOCK_RAW且skb->protocol未被指定的时候才会重置skb->mac_header,而packet_direct_xmit一定不会重置skb->mac_header。比如sock->type为SOCK_DATAGRAM就不会重置skb->mac_header,skb->mac_header保持为初始值65535.
在ipvlan的发包函数中,例如ipvlan_xmit_mode_l2,会使用eth_hdr去获取以太头,eth_hdr具体是使用skb->head + skb->mac_header获取的,如果skb->mac_header是65535,则会越界访问。
具体分析过程可参见:http://hulk.huawei.com/bugzilla/show_bug.cgi?id=187550
【* 影响评估及测试建议】无影响
【* 对外影响描述】无
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
登录 后才可以发表评论