Provided by: libgensio-dev_2.6.2-3ubuntu1_amd64 bug

NAME

       gensio_open,   gensio_open_s,   gensio_open_nochild,   gensio_open_nochild_s   -  Start  a
       connecting gensio

SYNOPSIS

       #include <gensio/gensio.h>

       typedef void (*gensio_done_err)(struct gensio *io, int err,
                           void *open_data);

       int gensio_open(struct gensio *io, gensio_done_err open_done,
                           void *open_data);

       int gensio_open_s(struct gensio *io);

       int gensio_open_nochild(struct gensio *io, gensio_done_err open_done,
                           void *open_data);

       int gensio_open_nochild_s(struct gensio *io);

DESCRIPTION

       gensio_open starts the gensio.  gensios received from an accepter are open  upon  receipt,
       but  connecting  gensios are started closed and need to be opened before use.  If no error
       is returned, the open_done callback will be called, if there is no error in  the  callback
       err value the gensio will be open.  This will open all children, too.

       Note that the open_done callback will always be called even if you close the gensio before
       the open_done callback happens or if an error occurs.  This is guaranteed.

       gensio_open_s is like gensio_open, but waits for  the  open  to  complete.  Normal  gensio
       processing will happen while waiting.  Note that you must be careful to not call this from
       a callback, you should only call  this  from  a  non-callback  thread  or  a  runner  (see
       gensio_os_funcs(3) for details on runners).

       gensio_open_nochild  is  like  gensio_open, but assumes any child gensios are already open
       and just opens this gensio.  This can be useful if you  have  a  gensio  that  is  already
       opened (like you received it from an accepter) and you want to stack another gensio on top
       of it.  Only filter gensios will support this.

       gensio_open_nochild_s is like gensio_open_nochild, but waits for  the  open  to  complete.
       See the notes on gensio_open_s above for warnings.

RETURN VALUES

       Zero is returned on success, or a gensio error on failure.

SEE ALSO

       gensio_err(3), gensio(5), gensio_os_funcs(3)

                                           27 Feb 2019                             gensio_open(3)