static int __net_init log_net_init(struct net *net) { nf_log_set(net, NFPROTO_IPV4, &ipt_log_logger); #if IS_ENABLED(CONFIG_IP6_NF_IPTABLES) nf_log_set(net, NFPROTO_IPV6, &ip6t_log_logger); #endif return 0; }
static int __net_init ebt_ulog_net_init(struct net *net) { int i; struct ebt_ulog_net *ebt = ebt_ulog_pernet(net); struct netlink_kernel_cfg cfg = { .groups = EBT_ULOG_MAXNLGROUPS, }; /* initialize ulog_buffers */ for (i = 0; i < EBT_ULOG_MAXNLGROUPS; i++) { ebt->nlgroup[i] = i; setup_timer(&ebt->ulog_buffers[i].timer, ulog_timer, (unsigned long)&ebt->nlgroup[i]); spin_lock_init(&ebt->ulog_buffers[i].lock); } ebt->ebtulognl = netlink_kernel_create(net, NETLINK_NFLOG, &cfg); if (!ebt->ebtulognl) return -ENOMEM; nf_log_set(net, NFPROTO_BRIDGE, &ebt_ulog_logger); return 0; }
static int __net_init nf_log_arp_net_init(struct net *net) { nf_log_set(net, NFPROTO_ARP, &nf_arp_logger); return 0; }
static int __net_init nf_log_ipv6_net_init(struct net *net) { return nf_log_set(net, NFPROTO_IPV6, &nf_ip6_logger); }
static int __net_init nf_log_bridge_net_init(struct net *net) { nf_log_set(net, NFPROTO_BRIDGE, &nf_bridge_logger); return 0; }