* Re: Filtering socklog output revisited [not found] ` <20060830144632.GM3979@run.galis.org> @ 2006-09-01 15:16 ` George Georgalis 2006-09-01 17:51 ` Matthew R. Dempsky 0 siblings, 1 reply; 5+ messages in thread From: George Georgalis @ 2006-09-01 15:16 UTC (permalink / raw) On Wed, Aug 30, 2006 at 10:46:32AM -0400, George Georgalis wrote: >On Wed, Aug 30, 2006 at 05:10:52AM +0200, Laurent Bercot wrote: >> Why, what you need here is execline. :) >> http://www.skarnet.org/software/execline/pipeline.html > >That looks pretty interesting. > >How would you use it to read (and conditionally process) fd1 >within a program (wrapper) that also reads fd0 and does a >conditional exec with a fd0 and fd1 hand-off to a secondary >program (qmail-queue)? I don't see any way (with redirection) to use pipeline to manage fd1 input within a script that already uses fd0 input. Seems like a good c program, read input from an arbitrary fd specified as a command line switch and pipe to stdout (where it can be directed to an arbitrary fd, with the shell). Seems all the shell redirection methods for "input" work on a file. Or, is there a technique I'm missing? // George -- George Georgalis, systems architect, administrator <IXOYE>< ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Filtering socklog output revisited 2006-09-01 15:16 ` Filtering socklog output revisited George Georgalis @ 2006-09-01 17:51 ` Matthew R. Dempsky 2006-09-02 2:27 ` George Georgalis 2006-11-11 20:42 ` George Georgalis 0 siblings, 2 replies; 5+ messages in thread From: Matthew R. Dempsky @ 2006-09-01 17:51 UTC (permalink / raw) On Fri, Sep 01, 2006 at 11:16:04AM -0400, George Georgalis wrote: > Seems like a good c program, read input from an arbitrary fd > specified as a command line switch and pipe to stdout (where > it can be directed to an arbitrary fd, with the shell). This sounds like a job for multitee[1]. [1] http://code.dogmap.org/fdtools/multitee/ ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Filtering socklog output revisited 2006-09-01 17:51 ` Matthew R. Dempsky @ 2006-09-02 2:27 ` George Georgalis 2006-11-11 20:42 ` George Georgalis 1 sibling, 0 replies; 5+ messages in thread From: George Georgalis @ 2006-09-02 2:27 UTC (permalink / raw) On Fri, Sep 01, 2006 at 12:51:37PM -0500, Matthew R. Dempsky wrote: >On Fri, Sep 01, 2006 at 11:16:04AM -0400, George Georgalis wrote: >> Seems like a good c program, read input from an arbitrary fd >> specified as a command line switch and pipe to stdout (where >> it can be directed to an arbitrary fd, with the shell). > >This sounds like a job for multitee[1]. > >[1] http://code.dogmap.org/fdtools/multitee/ > precisely, and at 2000+ lines, at least I don't think I'm an idiot for thinking "this is a difficult task," anymore. 15 years ago I didn't know there was a Usenet. wonder why djb doesn't link to it? (Thanks Paul). // George -- George Georgalis, systems architect, administrator <IXOYE>< ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Filtering socklog output revisited 2006-09-01 17:51 ` Matthew R. Dempsky 2006-09-02 2:27 ` George Georgalis @ 2006-11-11 20:42 ` George Georgalis 2006-11-12 5:36 ` George Georgalis 1 sibling, 1 reply; 5+ messages in thread From: George Georgalis @ 2006-11-11 20:42 UTC (permalink / raw) On Fri, Sep 01, 2006 at 12:51:37PM -0500, Matthew R. Dempsky wrote: >On Fri, Sep 01, 2006 at 11:16:04AM -0400, George Georgalis wrote: >> Seems like a good c program, read input from an arbitrary fd >> specified as a command line switch and pipe to stdout (where >> it can be directed to an arbitrary fd, with the shell). > >This sounds like a job for multitee[1]. > >[1] http://code.dogmap.org/fdtools/multitee/ even with multitee, I need some help. :-{ Here's the goal, writing a qmail-queue replacement, which will conditionally call qmail-queue and possibly alter the fd1 it receives. To test the filter, I'm doing the following: * verify $a gets set set correctly in the test by first setting it to "null". * spawn a sub-shell to contain all fd * generate qmail-queue type expected input: 'message\n' to fd0 and 'envelope\x00' to fd1 (I do this by outputting them to fd1 and fd2 because I expect the target program will attach those to fd0 and fd1) * pipe output to a separate process (sub-shell) * in the target process, capture fd0 and fd1 so they can be filtered and attached to qmail-queue Trying multitee, after many failed attempts, I got to a='null'; (printf "message\n"; printf "envelope\x00" >&2) | (cat >/dev/null; a="n$(multitee 1,0)"; printf "@$a\n") I expected this output "n@envelope\x00\n" but when it didn't work I began to wonder if I needed multitee at all... a='null'; (printf "message\n"; printf "envelope\x00" >&2) | (cat >/dev/null; a="n$(exec 1>&0; cat)"; printf "@$a\n") but what I actually get is "envlope@n\n", so what's wrong here? (and what's happening?) // George -- George Georgalis, systems architect, administrator <IXOYE>< ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Filtering socklog output revisited 2006-11-11 20:42 ` George Georgalis @ 2006-11-12 5:36 ` George Georgalis 0 siblings, 0 replies; 5+ messages in thread From: George Georgalis @ 2006-11-12 5:36 UTC (permalink / raw) On Sat, Nov 11, 2006 at 03:42:49PM -0500, George Georgalis wrote: >Here's the goal, writing a qmail-queue replacement, which will >conditionally call qmail-queue and possibly alter the fd1 it >receives. nevermind, http://galis.org/script/prequeue I got it. // George -- George Georgalis, systems architect, administrator <IXOYE>< ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2006-11-12 5:36 UTC | newest] Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <loom.20060827T200142-606@post.gmane.org> [not found] ` <20060828054124.GB12147@home.power> [not found] ` <loom.20060830T004327-914@post.gmane.org> [not found] ` <20060830011813.GB6449@home.power> [not found] ` <20060830012814.GK3979@run.galis.org> [not found] ` <20060830024505.GC6449@home.power> [not found] ` <20060830031052.GA3462@skarnet.org> [not found] ` <20060830144632.GM3979@run.galis.org> 2006-09-01 15:16 ` Filtering socklog output revisited George Georgalis 2006-09-01 17:51 ` Matthew R. Dempsky 2006-09-02 2:27 ` George Georgalis 2006-11-11 20:42 ` George Georgalis 2006-11-12 5:36 ` George Georgalis
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).