1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
|
diff --git a/iptables-module/compat_xtables.c b/iptables-module/compat_xtables.c
index c5b67a4..40f83c8 100644
--- a/iptables-module/compat_xtables.c
+++ b/iptables-module/compat_xtables.c
@@ -464,6 +464,7 @@ struct xt_match *xtnu_request_find_match(unsigned int af, const char *name,
}
EXPORT_SYMBOL_GPL(xtnu_request_find_match);
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 4, 0)
int xtnu_ip_route_me_harder(struct sk_buff **pskb, unsigned int addr_type)
{
#if LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 17)
@@ -476,6 +477,7 @@ int xtnu_ip_route_me_harder(struct sk_buff **pskb, unsigned int addr_type)
#endif
}
EXPORT_SYMBOL_GPL(xtnu_ip_route_me_harder);
+#endif
int xtnu_skb_make_writable(struct sk_buff **pskb, unsigned int len)
{
diff --git a/iptables-module/compat_xtnu.h b/iptables-module/compat_xtnu.h
index 02b6575..253e3df 100644
--- a/iptables-module/compat_xtnu.h
+++ b/iptables-module/compat_xtnu.h
@@ -143,7 +143,9 @@ static inline __wsum csum_unfold(__sum16 n)
#endif
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 4, 0)
extern int xtnu_ip_local_out(struct sk_buff *);
extern int xtnu_ip_route_me_harder(struct sk_buff **, unsigned int);
+#endif
extern int xtnu_skb_make_writable(struct sk_buff **, unsigned int);
extern int xtnu_register_match(struct xtnu_match *);
extern int xtnu_ip_route_output_key(void *, struct rtable **, struct flowi *);
diff --git a/iptables-module/xt_mpeg2ts.c b/iptables-module/xt_mpeg2ts.c
index 91ae4a0..87cfb17 100644
--- a/iptables-module/xt_mpeg2ts.c
+++ b/iptables-module/xt_mpeg2ts.c
@@ -99,7 +99,7 @@ static const struct file_operations dl_file_ops;
#endif
static int debug = -1;
-static int msg_level;
+static int msg_level = MPEG2TS_MSG_DEFAULT;
module_param(debug, int, 0);
module_param(msg_level, int, 0664);
MODULE_PARM_DESC(debug, "Set low N bits of message level");
@@ -1299,14 +1299,12 @@ static void mpeg2ts_seq_stop(struct seq_file *s, void *v)
static int mpeg2ts_seq_show_real(struct mpeg2ts_stream *stream,
struct seq_file *s, unsigned int bucket)
{
- int res;
-
if (!atomic_inc_not_zero(&stream->use)) {
/* If "use" is zero, then we about to be free'd */
return 0;
}
- res = seq_printf(s, "bucket:%d dst:%pI4 src:%pI4 dport:%u sport:%u "
+ seq_printf(s, "bucket:%d dst:%pI4 src:%pI4 dport:%u sport:%u "
"pids:%d skips:%llu discontinuity:%llu "
"payload_bytes:%llu packets:%llu\n",
bucket,
@@ -1323,7 +1321,7 @@ static int mpeg2ts_seq_show_real(struct mpeg2ts_stream *stream,
atomic_dec(&stream->use);
- return res;
+ return seq_has_overflowed(s);
}
static int mpeg2ts_seq_show(struct seq_file *s, void *v)
@@ -1434,7 +1432,7 @@ static int __init mpeg2ts_mt_init(void)
*/
INIT_LIST_HEAD(&conn_htables);
- msg_level = netif_msg_init(debug, MPEG2TS_MSG_DEFAULT);
+ msg_level = netif_msg_init(debug, msg_level);
msg_info(DRV, "Loading: %s", version);
msg_dbg(DRV, "Message level (msg_level): 0x%X", msg_level);
|