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

NAME
     gensio_get_type,  gensio_get_child,  gensio_is_client,  gensio_is_reliable,
     gensio_is_packet,	 gensio_is_authenticated,   gensio_is_encrypted,    gen-
     sio_is_message, gensio_is_mux - Return general information about a gensio

SYNOPSIS
     #include <gensio/gensio.h>

     const char *gensio_get_type(struct gensio *io,
			 unsigned int depth);

     struct gensio *gensio_get_child(struct gensio *io,
			 unsigned int depth);

     bool gensio_is_client(struct gensio *io);

     bool gensio_is_reliable(struct gensio *io);

     bool gensio_is_packet(struct gensio *io);

     bool gensio_is_authenticated(struct gensio *io);

     bool gensio_is_encrypted(struct gensio *io);

     bool gensio_is_message(struct gensio *io);

     bool gensio_is_mux(struct gensio *io);

DESCRIPTION
     gensio_get_type  return  the  type string for the gensio (if depth is 0) or
     one of its children (depth > 0).  Returns NULL if the depth is greater than
     the number of children.

     gensio_get_child returns the given child of the gensio, returns NULL if the
     depth is greater than the number of children.

     gensio_is_client returns true if the gensio a client or false if  it  is  a
     server.

     gensio_is_reliable return true if the genio is reliable (won't loose data).
     Serial devices are not considered reliable, nor is UDP.  Pretty much every-
     thing else is, because they won't drop data and are flow-controlled.

     gensio_is_packet returns if the genio is packet-oriented.	In a packet-ori-
     ented genio, if one side writes a chunk of data, when the other side does a
     read  it  will  get  the  same chunk of data as a single unit assuming it's
     buffer sizes are set properly.

     gensio_is_authenticated return true if the remote end authenticated,  false
     if  not.	In  the SSL case, this means that the remote certificate was re-
     ceived and verified (client and server, see gensio(5) SSL section	for  de-
     tails).   For  certauth server, this means that the authentication success-
     fully authenticated the certauth client by either certificate or password.

     gensio_is_encrypted returns true if the connection is encrypted,  false  if
     not.

     gensio_is_message	returns if the genio is message-oriented.  In a message-
     oriented genio, a write can explicitly mark message boundaries,  these  are
     delivered	to  the reader with those boundaries set.  See gensio(5) for de-
     tails on how this works.

     gensio_is_mux return true if the genio is capable of multiplexing,  meaning
     that it accepts an gensio_alloc_channel() call.

     Note that for the "gensio_is_xxx" type of requests, the properly is usually
     inherited	from  the child.  So if you run a telnet gensio on top of an SSL
     gensio, the telnet gensio will return true for gensio_is_encrypted  because
     SSL is encrypted.

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

				   27 Feb 2019		      gensio_get_type(3)

home | help