Signed-off-by: Marcelo Henrique Cerri <marcelo.cerri@xxxxxxxxxxxxx> --- extensions/pknock/xt_pknock.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/extensions/pknock/xt_pknock.c b/extensions/pknock/xt_pknock.c index 6fbdea43321c..31d4bc8c9584 100644 --- a/extensions/pknock/xt_pknock.c +++ b/extensions/pknock/xt_pknock.c @@ -358,10 +358,20 @@ has_logged_during_this_minute(const struct peer *peer) * @r: rule */ static void -peer_gc(unsigned long r) +peer_gc( +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0) + struct timer_list *tl +#else + unsigned long r +#endif +) { unsigned int i; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0) + struct xt_pknock_rule *rule = from_timer(rule, tl, timer); +#else struct xt_pknock_rule *rule = (struct xt_pknock_rule *)r; +#endif struct peer *peer; struct list_head *pos, *n; @@ -469,9 +479,13 @@ add_rule(struct xt_pknock_mtinfo *info) if (rule->peer_head == NULL) goto out; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0) + timer_setup(&rule->timer, peer_gc, 0); +#else init_timer(&rule->timer); rule->timer.function = peer_gc; rule->timer.data = (unsigned long)rule; +#endif rule->status_proc = proc_create_data(info->rule_name, 0, pde, &pknock_proc_ops, rule); -- 2.7.4 -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html