While I was looking for match info in iptables.c I found IPT_MATCH_ITERATE. In ip_tables.h IPT_MATCH_ITERATE is defined but there are two lines which I can not understand! #define IPT_MATCH_ITERATE(e, fn, args...) .... .... __ret = fn(__match , ## args); Can you please tell me abour "args..." and "## args" notation? thanks, -- Ozgur Akan