Manual Reference Pages - DC_PLUG_NEW (2)
DC_PLUG_new, DC_PLUG_free, DC_PLUG_to_select, DC_PLUG_io - basic DC_PLUG functions
DC_PLUG *DC_PLUG_new(NAL_CONNECTION *conn, unsigned int flags);
int DC_PLUG_free(DC_PLUG *plug);
void DC_PLUG_to_select(DC_PLUG *plug, NAL_SELECTOR *sel);
int DC_PLUG_io(DC_PLUG *plug, NAL_SELECTOR *sel);
DC_PLUG_new() allocates and initialises a DC_PLUG structure encapsulating the
specified connection. The flags parameter is zero or a bitmask combining one or
more of the following flags;
#define DC_PLUG_FLAG_TO_SERVER (unsigned int)0x0001
#define DC_PLUG_FLAG_NOFREE_CONN (unsigned int)0x0002
If the DC_PLUG_FLAG_TO_SERVER flag is specified, the plug object will expect
to be sending request messages and receiving response messages,
otherwise will default to the opposite sense.
DC_PLUG_free() frees the DC_PLUG structure and, unless it had been created
with the DC_PLUG_FLAG_NOFREE_CONN flag, will also destroy the connection
object it encapsulates.
DC_PLUG_to_select() is used to add a plug object to the sel selector so that
it can be tested for network events it is waiting on. This will automatically
handle selection of flags depending on the plug objects state. Ie. it will
select for writability on its underlying connection only if there is data
waiting to be sent, and likewise will select for readability only if it is
ready to receive any data that may have arrived.
DC_PLUG_io() is used to allow network I/O to be performed on a plug objects
underlying connection depending on the results of the last select operation on
DC_PLUG_new() returns the new plug object on success, otherwise NULL for
DC_PLUG_free() should never fail and should only return non-zero results.
DC_PLUG_to_select() has no return value.
DC_PLUG_io() return zero on an error, otherwise non-zero.
None of the DC_PLUG functions sets (or clears) errno because it is
implemented on top of the libnal library which in turn is an abstraction
layer for the systems networking interfaces. As such, any errno codes set
by failure in system libraries will not be overwritten by these functions.
DC_PLUG_read(2) - Provides documentation for other DC_PLUG
distcache(8) - Overview of the distcache architecture.
http://www.distcache.org/ - Distcache home page.
This toolkit was designed and implemented by Geoff Thorpe for Cryptographic
Appliances Incorporated. Since the project was released into open source, it
has a home page and a project environment where development, mailing lists, and
releases are organised. For problems with the software or this man page please
check for new releases at the project web-site below, mail the users mailing
list described there, or contact the author at firstname.lastname@example.org.
Home Page: http://www.distcache.org
|1.4.5 ||DC_PLUG_NEW (2) ||2004.03.23 |
Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.