On Tue, 16 Sep 2003, Pat Lashley wrote:
> Right. But I wasn't really going for maximum speed. My assumption
> was that macro processing, include processing, and basic lexical
> analysis and parsing were a sufficiently high percentage of config
> file parsing to be worth optimizing down to reading a single pre-tokenized,
> pre-parsed file.
That's where I feel it won't actually prove to be worthwhile.
> No, that is disk blocks; which have been 512 bytes for a couple of
> decades now.
I've only been working with Unix for just over a decade; before that I
was an IBM mainframe programmer, and disk blocks were whatever size you
chose to make them. Before *that*, IIRC, on the Titan/Atlas system we
used, disk blocks were 512 x 48-bit words...
> Modern filesystems do tend to work in some multiple
> of disk blocks for the base level I/O; but that multiple is often
> a tunable. And even when it isn't, it varies widely among different
> OSes and filesystem types.
Indeed. Seems to be 512 bytes on Solaris and FreeBSD, and 1K on Linux
and OSF1 (whatever it's called now), to name a few I can check.
> Actually, I just thought of that last one; and I suspect it would
> be the easiest to do. The basic idea is a combination of the add
> and remove functions. It would expand the string, then remove any
> old instance(s) of the given header, then add a new one using the
> expanded string. This would provide a clean way to do things like:
>
> headers_replace Subject: [mumble] $h_subject
>
> (Or similarly with a space instead of the underscore in a filter.)
Already WishListed:
------------------------------------------------------------------------------
(41) 14-Oct-98 M Find a way of modifying header lines
Oliver Smith
The problem with header_remove followed by header_add is that you can't refer
to the previous value of the header when adding a replacement. This could be
solved with a replace_header option.
------------------------------------------------------------------------------
That's rather a long time ago... There are a number of header-related
items on the Wish List. Maybe I should have a campaign.
Philip.
--
Philip Hazel University of Cambridge Computing Service,
ph10@??? Cambridge, England. Phone: +44 1223 334714.
Get the Exim 4 book: http://www.uit.co.uk/exim-book