str_to_gensio_accepter - Man Page
Create a gensio accepter from a string
Synopsis
#include <gensio/gensio.h>
- int str_to_gensio_accepter(const char *str,
struct gensio_os_funcs *o,
gensio_accepter_event cb,
void *user_data,
struct gensio_accepter **acc);- int str_to_gensio_accepter_child(struct gensio_accepter *child,
const char *str,
struct gensio_os_funcs *o,
gensio_accepter_event cb,
void *user_data,
struct gensio_accepter **acc);- int gensio_terminal_acc_alloc(const char *gensiotype,
const void *gdata,
const char * const args[],
struct gensio_os_funcs *o,
gensio_accepter_event cb, void *user_data,
struct gensio_accepter **accepter);- int gensio_filter_acc_alloc(const char *gensiotype,
struct gensio_accepter *child,
const char * const args[],
struct gensio_os_funcs *o,
gensio_accepter_event cb, void *user_data,
struct gensio_accepter **accepter);
Description
str_to_gensio_accepter allocates a new gensio accepter stack based upon the given string str.
str_to_gensio_accepter_child allocates a new gensio accepter stack based upon the given string str and stacks it on top of the given child accepter.
To allocate an accepter directly, use one of gensio_terminal_acc_alloc or gensio_filter_acc_alloc. A terminal accepter is one at the bottom of the stack. The gdata parameter depends on the particular gensio. For instance, for tcp it is a pointer to a gensio_addr structure. For stdio it is an argv array. See gensio.5 under "Direct Allocation" for the particular gensio for what gdata is.
A filter accepter is one that has a child. You can use these two functions to allocate an accepter stack directly, not using a string format.
The cb and user_data parameters set a function that will be called when events come in on the gensio accepter. user_data is unused by the gensio stack itself, it is there for the user and may be anything the user wishes.
The new gensio accepter is returned in acc. It will be in the shutdown state.
Return Values
Zero is returned on success, or a gensio error on failure.
See Also
Referenced By
The man pages gensio_filter_acc_alloc(3), gensio_terminal_acc_alloc(3) and str_to_gensio_accepter_child(3) are aliases of str_to_gensio_accepter(3).