Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
kernel_linux
提交
d76e60a5
K
kernel_linux
项目概览
OpenHarmony
/
kernel_linux
上一次同步 3 年多
通知
13
Star
8
Fork
2
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
kernel_linux
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
d76e60a5
编写于
3月 20, 2006
作者:
D
David S. Miller
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[IPV6]: Fix some code/comment formatting in ip6_dst_output().
Signed-off-by:
N
David S. Miller
<
davem@davemloft.net
>
上级
06ef921d
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
21 addition
and
20 deletion
+21
-20
net/ipv6/ip6_output.c
net/ipv6/ip6_output.c
+21
-20
未找到文件。
net/ipv6/ip6_output.c
浏览文件 @
d76e60a5
...
@@ -734,27 +734,28 @@ int ip6_dst_lookup(struct sock *sk, struct dst_entry **dst, struct flowi *fl)
...
@@ -734,27 +734,28 @@ int ip6_dst_lookup(struct sock *sk, struct dst_entry **dst, struct flowi *fl)
struct
rt6_info
*
rt
=
(
struct
rt6_info
*
)
*
dst
;
struct
rt6_info
*
rt
=
(
struct
rt6_info
*
)
*
dst
;
/* Yes, checking route validity in not connected
/* Yes, checking route validity in not connected
case is not very simple. Take into account,
*
case is not very simple. Take into account,
that we do not support routing by source, TOS,
*
that we do not support routing by source, TOS,
and MSG_DONTROUTE --ANK (980726)
*
and MSG_DONTROUTE --ANK (980726)
*
1. If route was host route, check that
*
1. If route was host route, check that
cached destination is current.
*
cached destination is current.
If it is network route, we still may
*
If it is network route, we still may
check its validity using saved pointer
*
check its validity using saved pointer
to the last used address: daddr_cache.
*
to the last used address: daddr_cache.
We do not want to save whole address now,
*
We do not want to save whole address now,
(because main consumer of this service
*
(because main consumer of this service
is tcp, which has not this problem),
*
is tcp, which has not this problem),
so that the last trick works only on connected
*
so that the last trick works only on connected
sockets.
*
sockets.
2. oif also should be the same.
*
2. oif also should be the same.
*/
*/
if
(((
rt
->
rt6i_dst
.
plen
!=
128
||
if
(((
rt
->
rt6i_dst
.
plen
!=
128
||
!
ipv6_addr_equal
(
&
fl
->
fl6_dst
,
&
rt
->
rt6i_dst
.
addr
))
!
ipv6_addr_equal
(
&
fl
->
fl6_dst
,
&
rt
->
rt6i_dst
.
addr
))
&&
(
np
->
daddr_cache
==
NULL
||
&&
(
np
->
daddr_cache
==
NULL
||
!
ipv6_addr_equal
(
&
fl
->
fl6_dst
,
np
->
daddr_cache
)))
!
ipv6_addr_equal
(
&
fl
->
fl6_dst
,
np
->
daddr_cache
)))
||
(
fl
->
oif
&&
fl
->
oif
!=
(
*
dst
)
->
dev
->
ifindex
))
{
||
(
fl
->
oif
&&
fl
->
oif
!=
(
*
dst
)
->
dev
->
ifindex
))
{
dst_release
(
*
dst
);
dst_release
(
*
dst
);
*
dst
=
NULL
;
*
dst
=
NULL
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录