Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
REXEC(3)		 BSD Library Functions Manual		      REXEC(3)

     rexec -- return stream to a remote	command

     Compatibility Library (libcompat, -lcompat)

     rexec(char	**ahost, int inport, char *user, char *passwd, char *cmd,
	 int *fd2p);

     This interface is obsoleted by rcmd(3).  It is available from the compat-
     ibility library, libcompat.

     The rexec() function looks	up the host *ahost using gethostbyname(3), re-
     turning -1	if the host does not exist.  Otherwise *ahost is set to	the
     standard name of the host.	 If a username and password are	both speci-
     fied, then	these are used to authenticate to the foreign host; otherwise
     the environment and then the user's .netrc	file in	his home directory are
     searched for appropriate information.  If all this	fails, the user	is
     prompted for the information.

     The port inport specifies which well-known	DARPA Internet port to use for
     the connection; the call `getservbyname("exec", "tcp")' (see
     getservent(3)) will return	a pointer to a structure, which	contains the
     necessary port.  The protocol for connection is described in detail in

     If	the connection succeeds, a socket in the Internet domain of type
     SOCK_STREAM is returned to	the caller, and	given to the remote command as
     stdin and stdout.	If fd2p	is non-zero, then an auxiliary channel to a
     control process will be set up, and a descriptor for it will be placed in
     *fd2p.  The control process will return diagnostic	output from the	com-
     mand (unit	2) on this channel, and	will also accept bytes on this channel
     as	being UNIX signal numbers, to be forwarded to the process group	of the
     command.  The diagnostic information returned does	not include remote au-
     thorization failure, as the secondary connection is set up	after autho-
     rization has been verified.  If fd2p is 0,	then the stderr	(unit 2	of the
     remote command) will be made the same as the stdout and no	provision is
     made for sending arbitrary	signals	to the remote process, although	you
     may be able to get	its attention by using out-of-band data.

     rcmd(3), rexecd(8)

     The rexec() function appeared in 4.2BSD.

BSD				 June 4, 1993				   BSD


Want to link to this manual page? Use this URL:

home | help