Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 13 Dec 2000 15:20:12 +0100 (CET)
From:      Marius Bendiksen <mbendiks@eunet.no>
To:        Poul-Henning Kamp <phk@critter.freebsd.dk>
Cc:        Dag-Erling Smorgrav <des@ofug.org>, Hajimu UMEMOTO <ume@mahoroba.org>, arch@FreeBSD.ORG
Subject:   Re: %a and %A formats 
Message-ID:  <Pine.BSF.4.05.10012131515050.37018-100000@login-1.eunet.no>
In-Reply-To: <99149.976465929@critter>

next in thread | previous in thread | raw e-mail | index | archive | help
> What we *really* need is a %{type} construct with dynmically
> loadable renderes for different types.
> 
> Then you could printf("Deny %{proto} from ${ip} to ${ip}", ...)

An alternate, though undoubtedly more cumbersome way to do this might be to
use vectors of a sort:

vector *v;
v_create(&v, 3 /*initial*/, 0 /*maxgrow*/);
v_append(v, vdesc_ipfw_proto, myproto);
v_append(v, vdesc_ipfw_ip, myfromip);
v_append(v, vdesc_ipfw_ip, mytoip);
say("Deny \1 from \2 to \3", v);
v_destroy(v);

This mechanism might, however, be reused later, somewhat similar to the va
functions, except that we attach arbitrary descriptors to the data that can
be used for various forms of rendring and special handling.

I have used things like this in my code before, and could supply the code
used there if it is desireable.

Marius




To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-arch" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.05.10012131515050.37018-100000>