Platon Technologies
not logged in Login Registration
EnglishSlovak
open source software development celebrating 10 years of open source development! Friday, October 16, 2026

Diff for ep/doc/internal/Attic/ep.1 between version 1.1 and 1.2

version 1.1, 2002/06/26 12:00:49 version 1.2, 2003/04/17 23:59:47
Line 1 
Line 1 
 .\" Process this file with groff -man -Tascii ep.1  .TH "ep" "1" "18th April 2003" "ep 1.0pre4" "ep 1.0pre4"
 .TH EP 1 "Apr, 2001"  .BY "Ondrej Jombik"
 .SH NAME  .SH NAME
 ep \- Extended Pipelining  ep \- extended pipelining
 .SH SYNOPSIS  .SH SYNOPSIS
 .PP  .PP
 ep [options] [module_list]  ep [ GLOBAL OPTIONS -- ] [ PROCESSES OPTIONS ]
 .SH DESCRIPTION  .SH DESCRIPTION
 .B Ep  .B ep
 is a pipeline connector. For most of linux user there was a time they wanted  is a pipeline connector. For most of UNIX user there was a time they wanted to
 to bend the pipe (ie. make a bidirectional pipe) which could render many  bend the pipe (ie. make a bidirectional pipe) which could render many problems
 problems to a simple tasks of creating modules.  to a simple tasks of creating modules.
   
 .P  
 .B Ep  
 is mostly used for creating a communication tree  
 between several programs which communicate trhough STDIN, STDOUT and STDERR  
 pipelines.  
 .B EP  
 Supports cyclic pipelining (A -> B, B -> A) thus standing for a powerful  
 tool for creating script-based modular projects.  
 .B Ep  
 is a very cool program : -)))  
 .P  .P
   .B ep
 .SH OPTIONS  is mostly used for creating a communication tree between several programs which
 Remember that options set in the command line overload the  communicate trhough STDIN, STDOUT and STDERR pipelines.
 ones in the config file. Most switches and options can be  .B ep
 abbreviated to a single letter (C programmers will love it ! :-))  supports cyclic pipelining (A -> B, B -> A) between processes thus standing for
 .TP  a powerful tool for creating script-based modular projects.
 \f3-max-connections \f2<max>\f1  .SH GLOBAL OPTIONS
 Maximum number of concurrent connections.  
 (default: 10)  
   
 .TP  .TP
 \f3--version\f1  \f3-h\f1, \f3--help\f1
 Print the  
 .I ep  
 version number and exit.  
   
 .TP  
 \f3--help\f1  
 Print a help screen.  Print a help screen.
   
 .SH FILES  
 .TP  .TP
 .IP "~/.ep/.ep.cfg"  \f3-q\f1, \f3--quiet\f1
 Per-user configfile, created by  Force quiet mode.
 .B ep.  
   
 .SH EXAMPLES  
 .PP  
 Here is a simple example how to create simple pop3  
 mails fetcher (you will have  
 to write the "my_pop3_client.sh" file to try this - it will 'simulate'  
 humans presence at the other end of the telnet connection - ie. will  
 type "USER jones", "PASS mysecretpassword" and other POP3  
 commands as if YOU typed them)  
 .PP  
 ep  
 -input 0in1out -output 2input -errput 0errput telnet emails.com 110 --  
 -input 1output -output 0out1input -errput 0errput ./my_pop3_client.sh  
 .PP  
 Now lets try something more useful - lets create 'pseudo-SSL'  
 (we will use abbrevs. to save space - you will soon get on it)  
 Assume we have the 'encoder.sh', 'decoder.sh', 'logger.sh' files  
 .PP  
 ep  
 -i 0i -o 2o -e 0e4i ./encoder.sh --  
 -i 1o -o 3o -e 0e4i telnet my.secret.org 22 --  
 -i 2o -o 4o -e 0e4i ./decoder.sh --  
 -i 0i1o2o3o -o 0o1i2i3i -e 0e ./logger.sh  
 .P  
 Now lets take closer look at this scheme:  
 ep represents the user - the output goes to the screen, the input is  
 taken from keyboard.  
 The shortcuts are :  
 .TP  
 0 -> EP (user)  
 .TP  .TP
 1 -> encoder  \f3-v\f1, \f3--verbose\f1
   Enable verbose mode. More \f3-v\f1 means more verbose.
 .TP  .TP
 2 -> telnet  \f3-f\f1, \f3--config-file\f1 \f2<config-filename>\f1
   Load user defined configuration file.
 .TP  .TP
 3 -> decoder  \f3--disable-global-config\f1
   Disable global configuration file loading.
   .TP
   \f3--disable-user-config\f1
   Disable user configuration file loading.
   .SH PROCESSES OPTIONS
   Processes are specified on command line after global options. Each process can
   be configured by
   .B ep
   processes options. After these options process command to run has to be
   defined. At the end, there is a separator "--" and the next process
   configuration can begin.
   .P
   [ [ [ \f2PROCS_1\f1 \f2cmd_1\f1 ] \f2--\f1 \f2PROCS_2\f1 \f2cmd_2\f1 ] ... ]
   .P
   \f2PROCS_n\f1 are options of particular process, \f2cmd_2\f1 is command to run
   a process.
 .TP  .TP
 4 -> logger  \f3-i\f1, \f3--input\f1 \f2<link>\f1
   Links binded to standart input (STDIN).
 .PP  
 We could draw this scheme as a 'cyclic' graph:  
 .TP  .TP
 0 -> 1 -> 2 -> 3 -,  \f3-o\f1, \f3--output\f1 \f2<link>\f1
   Links binded to standart output (STDOUT).
 .TP  .TP
 ^-----------------`  \f3-e\f1, \f3--errput\f1 \f2<link>\f1
   Links binded to standart error output (STDERR).
 .SH BUGS  .TP
 blah  \f3-n\f1, \f3--name\f1 \f2<process-name>\f1
 .PP  Name of process. Process can have zero, one or more names.
 Please report bugs you happen to find to  .TP
 .B Ondrej Jombik  \f3-N\f1, \f3--nice\f1 \f2<value>\f1
 .BI<neptun@pobox.sk>  Process run priority. A value from 20 to -20. Only superuser may specify
 .SH LICENSE  negative values.
 .B Ep  .PP
 is free software; you can redistribute it and/or modify  When using \f3--input\f1, \f3--output\f1 or \f3--errput\f1 option, you have to
 it under the terms of the GNU General Public License as published by  pass link specification as a parameter. Link specification consist of two parts
 the Free Software Foundation; either version 2 of the License, or  separated with comma: linked process name and its stream name. For example if you
 (at your option) any later version.  want to link process output to other process with name "telnet" input, you have
   to write something like \f3--output\f1 \f2telnet.input\f1.
 .SH AUTHOR  .PP
 .I Ep  Processes have automatically assigned its index number as a name. Any amount of
 was written by  other names or aliases can be specified fro one process. Process with index 0
 .B Ondrej Jombik  is means STDIN, STDOUT and STDERR. Other process indexes are counted from 1
 .BI <nepto@pobox.sk>  according to their order of definition on command line or configuration file.
 .B Lubomir Host  .SH EXAMPLES
 .BI <rajo@host.sk>  Here is an example how to create simple pop3 e-mails fetcher. You have to write
   the "my-pop3-client.sh" script file, which will communicate via STDIN and
 See file  STDOUT streams. It's aim is to simulate human presence at the other end of the
 .I Authors  telnet connection, so in example it will type "USER jones", "PASS
 for a list of people contributing to this project.  mysecretpassword" and other appropriate POP3 commands as if you typed them.
 .P  .PP
 The homepage of ep can be found at  ep -i 0.in,1.out -o 2.in -e 0.err telnet example.com 110
 .BI http://ep.miesto.sk/  .br
   -- -i 1.out -o 0.out,1in -e 0.err ./my_pop3_client.sh
   .PP
   Now we can try something more useful. Let's create encryption/decryption
   communication layer between our terminal and remote host. Assume we have the
   "encoder.sh", "decoder.sh", "logger.sh" scripts.
   .PP
   ep -i 0.i -o 2.i -e 0.e ./encoder.sh
   .br
   -- -i 1.o -o 3.i -e 0.e telnet secret.example.com
   .br
   -- -i 2.o -o 0.o -e 0.e ./decoder.sh
   .br
   -- -i 1.o,2.o,3.o,1.e,2.e,3.e -o 0.o -e 0.e ./logger.sh
   .br
 .P  .P
 This manual page was written by  Now take closer look at this scheme.
 .B Martin Karas  .B ep
 .BI <wolcano@pobox.sk>  represents the user. The output goes to the screen, the input is taken from
   keyboard. The shortcuts or better say process indexes are:
   .PP
   0 - user
   .br
   1 - encoder
   .br
   2 - telnet
   .br
   3 - decoder
   .br
   4 - logger
   .PP
   The communication streams between programs are here showed graphically:
   .PP
   +----------+    +---------+
   .br
   | keyboard | -> | encoder |
   .br
   +----------+    +---------+
   .br
                    |       |
   .br
                    v       v
   .br
             +--------+    +--------+
   .br
             | telnet | -> | logger |
   .br
             +--------+    +--------+
   .br
                    |       ^
   .br
                    v       |
   .br
    +---------+    +---------+
   .br
    | monitor | <- | decoder |
   .br
    +---------+    +---------+
   .br
   .SH FILES
   .TP
   /etc/ep.conf
   global configuration file
   .TP
   ~/.ep.conf
   per-user configuration file
   .SH AUTHORS
   Developed by Ondrej Jombik <nepto@platon.sk>
   and Lubomir Host <rajo@platon.sk>
   .sp
   Copyright (c) 2000-2003 Platon SDG, http://www.platon.sk/
   .sp
   Comments, suggestions, bug reports and patches are always welcome.  Please
   e-mail them to the following <platon@pobox.sk> e-mail address and write
   .B ep
   keyword in the Subject line.
   .sp
   This manual page was initially written by Martin Karas in April 2001 and
   updated by Ondrej Jombik in 18th April 2003.
   .SH HOMEPAGE
   The official
   .B ep
   homepage is:
   .sp
   .RS
   .UR
   http://www.platon.sk/projects/ep/
   .sp
   .UE
   .RE
   The libcfg+ project management page is:
   .sp
   .RS
   .UR
   http://www.platon.sk/projects/main_page.php?project_id=1
   (not estabilished yet)
   .sp
   .UE
   .RE
   Use
   .B ep
   project management page to submit bugs, feature requests,
   suggestions for improvements or improved code. There is also online
   documentation browser, download central and discussion forum available for
   asking support questions.
   .SH LICENSE
   This program is free software; you can redistribute it and/or modify it under
   the terms of the GNU General Public License as published by the Free Software
   Foundation; either version 2, or (at your option) any later version.
   .sp
   This program is distributed in the hope that it will be useful, but WITHOUT ANY
   WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
   PARTICULAR PURPOSE. See the GNU General Public License for more details.
   .sp
   You should have received a copy of the GNU General Public License along with
   this library; if not, write to the Free Software Foundation, Inc., 59 Temple
   Place - Suite 330, Boston, MA 02111-1307, USA.
 .SH "SEE ALSO"  .SH "SEE ALSO"
 .BR cat (1),  .BR cat (1),
 .BR grep (1)  .BR grep (1),
 .BR pipe (1)  .BR bash (1),
   .BR pipe (2)
   

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

Platon Group <platon@platon.org> http://platon.org/
Copyright © 2002-2006 Platon Group
Site powered by Metafox CMS
Go to Top