On 11/26/2012 10:55 AM, Mr Dash Four wrote:
>
>>> Indeed. It works, though I have another question regarding macros:
>>> since these are included in the chain 'inline' so to speak, is it
>>> possible for a macro to get the name of the chain in which this
>>> particular macro is going to be 'inlined'?
>>>
>>
>> It would be possible but I don't think that it is desirable.
> Eh? Who decides what is "desirable" and what isn't?
>
> If I, as end-user, wish to create a macro, which has different switches
> for different chains (so that I switch them "on" and "off" if and when I
> well so please), I could do so, like:
>
> M_DROP
> ~~~~~~~
> LOG
> NFLOG(1,0,1) - .... ${chain}_nflog_drop
>
>
...

> You may wish to leave the current implementation of a "macro" as it is
> and add a new type of action (call it inline action or whatever) and
> start afresh if that would be easier, instead of dragging the millstone
> of backward compatibility with you by sticking with the old "macro"
> definition. This, though, is a decision for you to make.

I misunderstood your original request; I thought that you were asking 
for the compiler to always qualify switch names by the chain name.

What you are proposing above doesn't work in the general case, given the 
current compiler architecture. Currently, variable expansion takes place 
in the preprocessor which has no knowledge of chains, macros, etc. The 
chain isn't known until the input line handed to it by the preprocessor 
is parsed by rule processor.

Within the body of a macro or an action, however, the chain name is 
known. So if we limit the availability of $chain (or whatever we call 
it), to macro and action bodies, would that meet your needs?

-Tom
-- 
Tom Eastep        \ When I die, I want to go like my Grandfather who
Shoreline,         \ died peacefully in his sleep. Not screaming like
Washington, USA     \ all of the passengers in his car
http://shorewall.net \________________________________________________

------------------------------------------------------------------------------
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
_______________________________________________
Shorewall-devel mailing list
Shorewall-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/shorewall-devel

Reply via email to