}
g_variant_get(message, "(i)", &result);
- STC_LOGD("Successfully Add Rule [%d]", result);
+ STC_LOGD("Successfully Add Rule [%d:%s]", result, rule->nfacct_name);
g_variant_unref(message);
return STC_ERROR_NONE;
}
g_variant_get(message, "(i)", &result);
- STC_LOGD("Successfully Remove Rule [%d]", result);
+ STC_LOGD("Successfully Remove Rule [%d:%s]", result, rule->nfacct_name);
g_variant_unref(message);
return STC_ERROR_NONE;
}
g_variant_get(message, "(i)", &result);
- STC_LOGD("Successfully Add 6 Rule [%d]", result);
+ STC_LOGD("Successfully Add 6 Rule [%d:%s]", result, rule->nfacct_name);
g_variant_unref(message);
return STC_ERROR_NONE;
}
g_variant_get(message, "(i)", &result);
- STC_LOGD("Successfully Remove 6 Rule [%d]", result);
+ STC_LOGD("Successfully Remove 6 Rule [%d:%s]", result, rule->nfacct_name);
g_variant_unref(message);
return STC_ERROR_NONE;
}
g_variant_get(message, "(i)", &result);
- STC_LOGD("Successfully added ipv4 chain [%d]", result);
+ STC_LOGD("Successfully added ipv4 chain [%d:%s]", result, chain);
g_variant_unref(message);
return STC_ERROR_NONE;
}
g_variant_get(message, "(i)", &result);
- STC_LOGD("Successfully added ipv6 chain [%d]", result);
+ STC_LOGD("Successfully added ipv6 chain [%d:%s]", result, chain);
g_variant_unref(message);
return STC_ERROR_NONE;
}
g_variant_get(message, "(i)", &result);
- STC_LOGD("Successfully removed ipv4 chain [%d]", result);
+ STC_LOGD("Successfully removed ipv4 chain [%d:%s]", result, chain);
g_variant_unref(message);
return STC_ERROR_NONE;
}
g_variant_get(message, "(i)", &result);
- STC_LOGD("Successfully removed ipv6 chain [%d]", result);
+ STC_LOGD("Successfully removed ipv6 chain [%d:%s]", result, chain);
g_variant_unref(message);
return STC_ERROR_NONE;
}
g_variant_get(message, "(i)", &result);
- STC_LOGD("Successfully flushed ipv4 chain [%d]", result);
+ STC_LOGD("Successfully flushed ipv4 chain [%d:%s]", result, chain);
g_variant_unref(message);
return STC_ERROR_NONE;
}
g_variant_get(message, "(i)", &result);
- STC_LOGD("Successfully flushed ipv6 chain [%d]", result);
+ STC_LOGD("Successfully flushed ipv6 chain [%d:%s]", result, chain);
g_variant_unref(message);
return STC_ERROR_NONE;
iptables_rule.target = g_strdup(target);
iptables_rule.chain = g_strdup(chain);
- ret = iptables_add(&iptables_rule);
+ ret = iptables_add(&iptables_rule, IP_TYPE_IPV4_IPV6);
g_free(iptables_rule.target);
g_free(iptables_rule.chain);
return ret;
}
-stc_error_e iptables_add(iptables_rule_s *rule)
+stc_error_e iptables_add(iptables_rule_s *rule, iptables_ip_type_e iptype)
{
stc_error_e ret = STC_ERROR_NONE;
stc_s *stc = stc_get_manager();
if (!stc || !stc->connection)
return STC_ERROR_INVALID_PARAMETER; //LCOV_EXCL_LINE
- ret = __iptables_rule_add(stc->connection, rule);
- if (ret != STC_ERROR_NONE)
- goto done; //LCOV_EXCL_LINE
+ if (iptype == IP_TYPE_IPV4 ||
+ iptype == IP_TYPE_IPV4_IPV6) {
+ ret = __iptables_rule_add(stc->connection, rule);
+ if (ret != STC_ERROR_NONE)
+ goto done; //LCOV_EXCL_LINE
+ }
+
+ if (iptype == IP_TYPE_IPV6 ||
+ iptype == IP_TYPE_IPV4_IPV6)
+ ret = __ip6tables_rule_add(stc->connection, rule);
- ret = __ip6tables_rule_add(stc->connection, rule);
done:
return ret;
}
-stc_error_e iptables_remove(iptables_rule_s *rule)
+stc_error_e iptables_remove(iptables_rule_s *rule, iptables_ip_type_e iptype)
{
stc_error_e ret = STC_ERROR_NONE;
stc_s *stc = stc_get_manager();
if (!stc || !stc->connection)
return STC_ERROR_INVALID_PARAMETER; //LCOV_EXCL_LINE
- ret = __iptables_rule_remove(stc->connection, rule);
- if (ret != STC_ERROR_NONE)
- goto done; //LCOV_EXCL_LINE
+ if (iptype == IP_TYPE_IPV4 ||
+ iptype == IP_TYPE_IPV4_IPV6) {
+ ret = __iptables_rule_remove(stc->connection, rule);
+ if (ret != STC_ERROR_NONE)
+ goto done; //LCOV_EXCL_LINE
+ }
+
+ if (iptype == IP_TYPE_IPV6 ||
+ iptype == IP_TYPE_IPV4_IPV6)
+ ret = __ip6tables_rule_remove(stc->connection, rule);
- ret = __ip6tables_rule_remove(stc->connection, rule);
done:
return ret;
}