See faucet(1) for a more detailed discussion of short flags. Their behavior should be unsurprising. The flags that require separate arguments follow in the tradition of tar(1).
This will connect to port 3000 on the machine reef and connect the socket to the stdin of a tar command.
example$ hose reef 3000 --in tar -xf - .
The command actually exec(2)ed by the hose program is
tar -xf - .
The --in option means that the input of the child process will have been redirected into the socket connected to reef.
This connects to a UNIX domain socket in the current directory
example$ hose --unix- u-socket --in sh -c \ "unfunky.perl.script | dd of=sample.pgm"
The socket provides input to the sh command.
netpipes(1), faucet(1), sockdown(1), getpeername(1), socket(2), bind(2), connect(2), shutdown(2), services(5), gethostbyaddr(3)
Doubtless there are bugs in this program, especially in the unix domain socket portions. I welcome problem reports and would like to make these programs as "clean" (no leftover files, sockets) as possible.
4.0 made the full-word arguments use -- like many GNU programs. They are still available with a single - for backward-compatibility.
3.1 added the single-character flags.
Release 2.3 added support for multi-homed hosts: hosts with multiple internet numbers (such as gateways). Before this faucet assumed that the first internet number that gethostbyname returned was the only one. --foreignport authentication was weakened by this inadequacy so I beefed up the algorithms. --foreignport will accept a connection from any of the internet numbers associated with the host name.
Thanks to Steve Clift <email@example.com> for SGI (SysV) patches.
Many people complained about the old way of specifying the command. Thanks to whoever gave me the alternative which is now implemented. It is much better.
Thanks to Sten Drescher <firstname.lastname@example.org> for the --retry and --delay patches and giving me the idea for the --shutdown option. Evidently some printer doesnt appreciate the socket being close(2)d.
Randy Fischer <email@example.com> finally prodded me into fixing the old lame non-handling of multi-homed host.
Copyright (C) 1992-98 Robert Forsman
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 of the License, or (at your option) any later version.
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.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
Purple Frog Software
|-->||HOSE (1)||October 28, 1998|