projects
/
project
/
firewall3.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
cmake: Find uci.h
[project/firewall3.git]
/
snats.c
diff --git
a/snats.c
b/snats.c
index
7dae2ee
..
f43daf2
100644
(file)
--- a/
snats.c
+++ b/
snats.c
@@
-1,7
+1,7
@@
/*
* firewall3 - 3rd OpenWrt UCI firewall implementation
*
/*
* firewall3 - 3rd OpenWrt UCI firewall implementation
*
- * Copyright (C) 2014 Jo-Philipp Wich <jo
w@openwrt.org
>
+ * Copyright (C) 2014 Jo-Philipp Wich <jo
@mein.io
>
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
@@
-133,9
+133,12
@@
fw3_load_snats(struct fw3_state *state, struct uci_package *p, struct blob_attr
blob_for_each_attr(rule, a, rem) {
const char *type = NULL;
blob_for_each_attr(rule, a, rem) {
const char *type = NULL;
+ const char *name = "ubus rule";
blobmsg_for_each_attr(opt, rule, orem)
if (!strcmp(blobmsg_name(opt), "type"))
type = blobmsg_get_string(opt);
blobmsg_for_each_attr(opt, rule, orem)
if (!strcmp(blobmsg_name(opt), "type"))
type = blobmsg_get_string(opt);
+ else if (!strcmp(blobmsg_name(opt), "name"))
+ name = blobmsg_get_string(opt);
if (!type || strcmp(type, "nat"))
continue;
if (!type || strcmp(type, "nat"))
continue;
@@
-143,9
+146,9
@@
fw3_load_snats(struct fw3_state *state, struct uci_package *p, struct blob_attr
if (!(snat = alloc_snat(state)))
continue;
if (!(snat = alloc_snat(state)))
continue;
- if (!fw3_parse_blob_options(snat, fw3_snat_opts, rule))
+ if (!fw3_parse_blob_options(snat, fw3_snat_opts, rule
, name
))
{
{
- fprintf(stderr, "
ubus section skipped due to invalid options\n"
);
+ fprintf(stderr, "
%s skipped due to invalid options\n", name
);
fw3_free_snat(snat);
continue;
}
fw3_free_snat(snat);
continue;
}
@@
-262,7
+265,7
@@
append_chain(struct fw3_ipt_rule *r, struct fw3_snat *snat)
if (snat->_src)
fw3_ipt_rule_append(r, "zone_%s_postrouting", snat->src.name);
else
if (snat->_src)
fw3_ipt_rule_append(r, "zone_%s_postrouting", snat->src.name);
else
- fw3_ipt_rule_append(r, "
delegate_postrouting
");
+ fw3_ipt_rule_append(r, "
POSTROUTING
");
}
static void
}
static void