GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
gensio_write(3) FreeBSD Library Functions Manual gensio_write(3)

gensio_write - Write data to a gensio

#include <gensio/gensio.h>


const void *buf, gensiods buflen,
const char *const *auxdata);

struct gensio_sg {

const void *buf;
gensiods buflen;
};

const struct gensio_sg *sg, gensiods sglen,
const char *const *auxdata);

Write data to the given gensio. The data is in buf and the length of the data is in buflen. Note that gensio_write may not write all of the data given, depending on the gensio type and the internal buffer space. It will return the number of bytes actually written in count which may be NULL if you don't care. (Hint: you should almost always care.)

If gensio_write is unable to write the full amount of data, you should generally buffer the unwritten data and call gensio_set_write_callback_enable(3) to know when you can write the rest of the data. Many applications always buffer the data and enable the write callback to do the write and then disable the write callback when all data is written, for consistency.

gensio_write will never block, if it cannot write all the data it will write what it can and return.

auxdata is used to pass in gensio specific auxiliary data, such as the stream number for SCTP or whether the data is out of band data for SCTP or TCP.

gensio_write_sg is like gensio_write, but it takes a scatter-gather structure to allow you to combine multiple chunks of data without copying. Note that if you get a partial write, you must figure out where the write ended in your scatter-gather list and start the next write from there.

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

gensio_err(3), gensio(5)

24 Feb 2019

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.