* to be called from specific places within the parser */
static int __iptcc_p_del_policy(TC_HANDLE_T h, unsigned int num)
{
* to be called from specific places within the parser */
static int __iptcc_p_del_policy(TC_HANDLE_T h, unsigned int num)
{
if (h->chain_iterator_cur) {
/* policy rule is last rule */
struct rule_head *pr = (struct rule_head *)
h->chain_iterator_cur->rules.prev;
/* save verdict */
if (h->chain_iterator_cur) {
/* policy rule is last rule */
struct rule_head *pr = (struct rule_head *)
h->chain_iterator_cur->rules.prev;
/* save verdict */
static const STRUCT_ENTRY *
TC_GET_RULE(const char *chain, unsigned int n, TC_HANDLE_T *handle)
{
static const STRUCT_ENTRY *
TC_GET_RULE(const char *chain, unsigned int n, TC_HANDLE_T *handle)
{
/* Returns a pointer to the target name of this position. */
static const char *standard_target_map(int verdict)
/* Returns a pointer to the target name of this position. */
static const char *standard_target_map(int verdict)
{
STRUCT_ENTRY *e = (STRUCT_ENTRY *)ce;
struct rule_head *r = container_of(e, struct rule_head, entry[0]);
{
STRUCT_ENTRY *e = (STRUCT_ENTRY *)ce;
struct rule_head *r = container_of(e, struct rule_head, entry[0]);
DEBUGP("r=%p, spos=%d'\n", r, spos);
return standard_target_map(spos);
break;
DEBUGP("r=%p, spos=%d'\n", r, spos);
return standard_target_map(spos);
break;