CONNLD(4)                                               CONNLD(4)

     NAME
          connld - unique stream connection

     DESCRIPTION
          This stream module (see stream(4)) is used to provide unique
          connections to a server.  The file descriptor fd should
          refer to an end of a stream-usually a pipe-that will subse-
          quently be mounted onto a file by gmount(2). When an open or
          creat(2) call is applied to a stream-associated file with
          this module installed, a new pipe is created internally.  A
          message identical to that described for the FIOSNDFD request
          (see stream(4)) is sent along the stream to the process at
          the other end.  This process must respond in one of these
          ways: it may simply write some data, or reply with

               ioctl(fd1, FIOACCEPT, (char *)NULL);

          Then the attempt to open the stream succeeds, and the
          returned file descriptor refers to the new pipe, whose other
          end is held by the server process.  It may also respond by
          passing a new file descriptor, using

               ioctl(fd1, FIOSNDFD, &fd2);

          Then the local end of the internally-created pipe is dis-
          carded, and the returned file descriptor refers to the
          transmitted file.

          On the other hand, if the server process closes the trans-
          mitted file descriptor, or does

               ioctl(fd1, FIOREJECT, (char *)NULL);

          then the attempt to open fails.

          Finally, if the entity, whether process or device, that
          receives the FIOSNDFD message fails to respond in some
          appropriate way, the process attempting to open the file
          will wait until it is sent a signal, or the system is
          rebooted, or the end of eternity, whichever comes first.