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

FreeBSD Manual Pages

  
 
  

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

NAME
       rexec --	return stream to a remote command

LIBRARY
       Compatibility Library (libcompat, -lcompat)

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

DESCRIPTION
       This interface is obsoleted by rcmd(3).

       The rexec() function looks up the host *ahost  using  gethostbyname(3),
       returning  -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
       specified,  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
       rexecd(8).

       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 setup,	and a descriptor for it	will be	placed
       in *fd2p.  The control process will return diagnostic output  from  the
       command	(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 in-
       clude  remote authorization failure, as the secondary connection	is set
       up after	authorization 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.

SEE ALSO
       rcmd(3),	rexecd(8)

HISTORY
       The rexec() function appeared in	4.2BSD.

BUGS
       The rexec() function sends the unencrypted password across the network.

       The underlying service is considered a big security hole	and  therefore
       not enabled on many sites, see rexecd(8)	for explanations.

GNU				 June 4, 1993			      REXEC(3)

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | SEE ALSO | HISTORY | BUGS

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=rexec&sektion=3&manpath=FreeBSD+6.0-RELEASE>

home | help