Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
raspberrypi-kernel
提交
356d6c2d
R
raspberrypi-kernel
项目概览
openeuler
/
raspberrypi-kernel
通知
13
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
raspberrypi-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
356d6c2d
编写于
5月 05, 2009
作者:
D
David S. Miller
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'master' of
git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6
上级
86b698b8
fecc1133
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
34 addition
and
32 deletion
+34
-32
include/linux/netfilter/xt_LED.h
include/linux/netfilter/xt_LED.h
+2
-0
include/linux/netfilter/xt_cluster.h
include/linux/netfilter/xt_cluster.h
+2
-0
net/ipv6/netfilter/ip6t_ipv6header.c
net/ipv6/netfilter/ip6t_ipv6header.c
+3
-3
net/netfilter/nf_conntrack_netlink.c
net/netfilter/nf_conntrack_netlink.c
+20
-28
net/netfilter/xt_cluster.c
net/netfilter/xt_cluster.c
+7
-1
未找到文件。
include/linux/netfilter/xt_LED.h
浏览文件 @
356d6c2d
#ifndef _XT_LED_H
#define _XT_LED_H
#include <linux/types.h>
struct
xt_led_info
{
char
id
[
27
];
/* Unique ID for this trigger in the LED class */
__u8
always_blink
;
/* Blink even if the LED is already on */
...
...
include/linux/netfilter/xt_cluster.h
浏览文件 @
356d6c2d
...
...
@@ -12,4 +12,6 @@ struct xt_cluster_match_info {
u_int32_t
flags
;
};
#define XT_CLUSTER_NODES_MAX 32
#endif
/* _XT_CLUSTER_MATCH_H */
net/ipv6/netfilter/ip6t_ipv6header.c
浏览文件 @
356d6c2d
...
...
@@ -50,14 +50,14 @@ ipv6header_mt6(const struct sk_buff *skb, const struct xt_match_param *par)
struct
ipv6_opt_hdr
_hdr
;
int
hdrlen
;
/* Is there enough space for the next ext header? */
if
(
len
<
(
int
)
sizeof
(
struct
ipv6_opt_hdr
))
return
false
;
/* No more exthdr -> evaluate */
if
(
nexthdr
==
NEXTHDR_NONE
)
{
temp
|=
MASK_NONE
;
break
;
}
/* Is there enough space for the next ext header? */
if
(
len
<
(
int
)
sizeof
(
struct
ipv6_opt_hdr
))
return
false
;
/* ESP -> evaluate */
if
(
nexthdr
==
NEXTHDR_ESP
)
{
temp
|=
MASK_ESP
;
...
...
net/netfilter/nf_conntrack_netlink.c
浏览文件 @
356d6c2d
...
...
@@ -1186,28 +1186,6 @@ ctnetlink_change_conntrack(struct nf_conn *ct, struct nlattr *cda[])
return
0
;
}
static
inline
void
ctnetlink_event_report
(
struct
nf_conn
*
ct
,
u32
pid
,
int
report
)
{
unsigned
int
events
=
0
;
if
(
test_bit
(
IPS_EXPECTED_BIT
,
&
ct
->
status
))
events
|=
IPCT_RELATED
;
else
events
|=
IPCT_NEW
;
nf_conntrack_event_report
(
IPCT_STATUS
|
IPCT_HELPER
|
IPCT_REFRESH
|
IPCT_PROTOINFO
|
IPCT_NATSEQADJ
|
IPCT_MARK
|
events
,
ct
,
pid
,
report
);
}
static
struct
nf_conn
*
ctnetlink_create_conntrack
(
struct
nlattr
*
cda
[],
struct
nf_conntrack_tuple
*
otuple
,
...
...
@@ -1373,6 +1351,7 @@ ctnetlink_new_conntrack(struct sock *ctnl, struct sk_buff *skb,
err
=
-
ENOENT
;
if
(
nlh
->
nlmsg_flags
&
NLM_F_CREATE
)
{
struct
nf_conn
*
ct
;
enum
ip_conntrack_events
events
;
ct
=
ctnetlink_create_conntrack
(
cda
,
&
otuple
,
&
rtuple
,
u3
);
...
...
@@ -1383,9 +1362,18 @@ ctnetlink_new_conntrack(struct sock *ctnl, struct sk_buff *skb,
err
=
0
;
nf_conntrack_get
(
&
ct
->
ct_general
);
spin_unlock_bh
(
&
nf_conntrack_lock
);
ctnetlink_event_report
(
ct
,
NETLINK_CB
(
skb
).
pid
,
nlmsg_report
(
nlh
));
if
(
test_bit
(
IPS_EXPECTED_BIT
,
&
ct
->
status
))
events
=
IPCT_RELATED
;
else
events
=
IPCT_NEW
;
nf_conntrack_event_report
(
IPCT_STATUS
|
IPCT_HELPER
|
IPCT_PROTOINFO
|
IPCT_NATSEQADJ
|
IPCT_MARK
|
events
,
ct
,
NETLINK_CB
(
skb
).
pid
,
nlmsg_report
(
nlh
));
nf_ct_put
(
ct
);
}
else
spin_unlock_bh
(
&
nf_conntrack_lock
);
...
...
@@ -1404,9 +1392,13 @@ ctnetlink_new_conntrack(struct sock *ctnl, struct sk_buff *skb,
if
(
err
==
0
)
{
nf_conntrack_get
(
&
ct
->
ct_general
);
spin_unlock_bh
(
&
nf_conntrack_lock
);
ctnetlink_event_report
(
ct
,
NETLINK_CB
(
skb
).
pid
,
nlmsg_report
(
nlh
));
nf_conntrack_event_report
(
IPCT_STATUS
|
IPCT_HELPER
|
IPCT_PROTOINFO
|
IPCT_NATSEQADJ
|
IPCT_MARK
,
ct
,
NETLINK_CB
(
skb
).
pid
,
nlmsg_report
(
nlh
));
nf_ct_put
(
ct
);
}
else
spin_unlock_bh
(
&
nf_conntrack_lock
);
...
...
net/netfilter/xt_cluster.c
浏览文件 @
356d6c2d
...
...
@@ -135,7 +135,13 @@ static bool xt_cluster_mt_checkentry(const struct xt_mtchk_param *par)
{
struct
xt_cluster_match_info
*
info
=
par
->
matchinfo
;
if
(
info
->
node_mask
>=
(
1
<<
info
->
total_nodes
))
{
if
(
info
->
total_nodes
>
XT_CLUSTER_NODES_MAX
)
{
printk
(
KERN_ERR
"xt_cluster: you have exceeded the maximum "
"number of cluster nodes (%u > %u)
\n
"
,
info
->
total_nodes
,
XT_CLUSTER_NODES_MAX
);
return
false
;
}
if
(
info
->
node_mask
>=
(
1ULL
<<
info
->
total_nodes
))
{
printk
(
KERN_ERR
"xt_cluster: this node mask cannot be "
"higher than the total number of nodes
\n
"
);
return
false
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录