#! /usr/bin/make
PF_EXT_SLIB:=tcp udp icmp mac limit standard REJECT LOG unclean state multiport tos TOS mark MARK owner SNAT DNAT MASQUERADE REDIRECT
+PF6_EXT_SLIB:=tcp udp icmp standard
SHARED_LIBS+=$(foreach T,$(PF_EXT_SLIB),extensions/libipt_$(T).so)
+SHARED_LIBS+=$(foreach T,$(PF6_EXT_SLIB),extensions/libip6t_$(T).so)
EXTRA_INSTALLS+=$(foreach T, $(PF_EXT_SLIB), $(DESTDIR)$(LIBDIR)/iptables/libipt_$(T).so)
+EXTRA_INSTALLS+=$(foreach T, $(PF6_EXT_SLIB), $(DESTDIR)$(LIBDIR)/iptables/libip6t_$(T).so)
ifndef TOPLEVEL_INCLUDED
local:
$(DESTDIR)$(LIBDIR)/iptables/libipt_%.so: extensions/libipt_%.so
@[ -d $(DESTDIR)$(LIBDIR)/iptables ] || mkdir -p $(DESTDIR)$(LIBDIR)/iptables
cp $< $@
+
+$(DESTDIR)$(LIBDIR)/iptables/libip6t_%.so: extensions/libip6t_%.so
+ @[ -d $(DESTDIR)$(LIBDIR)/iptables ] || mkdir -p $(DESTDIR)$(LIBDIR)/iptables
+ cp $< $@
ret = ip6tc_commit(&handle);
if (!ret)
- fprintf(stderr, "iptables: %s\n",
+ fprintf(stderr, "ip6tables: %s\n",
ip6tc_strerror(errno));
exit(!ret);
{
unsigned int i, j;
int ret = 1;
- struct ip6t_entry ipfw = *fw;
unsigned char *mask;
mask = make_delete_mask(fw);
for (i = 0; i < nsaddrs; i++) {
- ipfw.ipv6.src = saddrs[i];
+ fw->ipv6.src = saddrs[i];
for (j = 0; j < ndaddrs; j++) {
- ipfw.ipv6.dst = daddrs[j];
+ fw->ipv6.dst = daddrs[j];
if (verbose)
print_firewall_line(fw, *handle);
- ret &= ip6tc_delete_entry(chain, &ipfw, mask, handle);
+ ret &= ip6tc_delete_entry(chain, fw, mask, handle);
}
}
return ret;