| /* | 
 |  * net stream generic functions | 
 |  * | 
 |  * Copyright Red Hat | 
 |  * | 
 |  * SPDX-License-Identifier: GPL-2.0-or-later | 
 |  */ | 
 |  | 
 | typedef struct NetStreamData { | 
 |     NetClientState nc; | 
 |     QIOChannel *ioc; | 
 |     guint ioc_read_tag; | 
 |     guint ioc_write_tag; | 
 |     SocketReadState rs; | 
 |     unsigned int send_index;      /* number of bytes sent*/ | 
 |     QIOChannelFunc send; | 
 |     /* server data */ | 
 |     QIOChannel *listen_ioc; | 
 |     QIONetListener *listener; | 
 |     QIONetListenerClientFunc listen; | 
 | } NetStreamData; | 
 |  | 
 | ssize_t net_stream_data_receive(NetStreamData *d, const uint8_t *buf, | 
 |                                 size_t size); | 
 | void net_stream_data_rs_finalize(SocketReadState *rs); | 
 | gboolean net_stream_data_send(QIOChannel *ioc, GIOCondition condition, | 
 |                               NetStreamData *d); | 
 | int net_stream_data_client_connected(QIOTask *task, NetStreamData *d); | 
 | void net_stream_data_listen(QIONetListener *listener, | 
 |                             QIOChannelSocket *cioc, | 
 |                             NetStreamData *d); |