Elektra 0.11.0
zeromq.c File Reference

I/O Adapter for D-Bus. More...

#include <kdbassert.h>
#include <kdbhelper.h>
#include <kdbio/adapters/zeromq.h>
#include <kdblogger.h>
#include <stdlib.h>
#include <string.h>

Functions

ElektraIoAdapterZeroMqHandleelektraIoAdapterZeroMqAttach (void *socket, ElektraIoInterface *ioBinding, ElektraIoAdapterZeroMqCallbackType type, ElektraIoAdapterZeroMqCallback callback, void *context)
 Attach to ZeroMq socket.
 
void elektraIoAdapterZeroMqSetContext (ElektraIoAdapterZeroMqHandle *handle, void *context)
 Set the callback context for a ZeroMq adapter handle.
 
int elektraIoAdapterZeroMqDetach (ElektraIoAdapterZeroMqHandle *handle)
 Remove ZeroMq socket from I/O binding.
 

Detailed Description

I/O Adapter for D-Bus.

Function Documentation

◆ elektraIoAdapterZeroMqAttach()

ElektraIoAdapterZeroMqHandle * elektraIoAdapterZeroMqAttach ( void * socket,
ElektraIoInterface * ioBinding,
ElektraIoAdapterZeroMqCallbackType type,
ElektraIoAdapterZeroMqCallback callback,
void * context )

Attach to ZeroMq socket.

The callback is called whenever socket is readable or writable (depending on type) and data can be processed. The callback should not do blocking calls (e.g. use ZMQ_DONTWAIT for zmq_*recv()). Since ZeroMq guarantees that multipart messages arrive at once, data will be available. New adapter instances are enabled.

Parameters
socketZeroMq socket
ioBindingI/O binding
typecallback type (
See also
ElektraIoAdapterZeroMqCallbackType)
Parameters
callbackcallback
contextcallback context (gets passed to callback)
Returns
handle to use with elektraIoZeroMqAdapterDetach() or NULL on error

◆ elektraIoAdapterZeroMqDetach()

int elektraIoAdapterZeroMqDetach ( ElektraIoAdapterZeroMqHandle * handle)

Remove ZeroMq socket from I/O binding.

This function frees the passed handle.

Parameters
handleadapter handle
Return values
1on success
0on error

◆ elektraIoAdapterZeroMqSetContext()

void elektraIoAdapterZeroMqSetContext ( ElektraIoAdapterZeroMqHandle * handle,
void * context )

Set the callback context for a ZeroMq adapter handle.

The previous context is replaced and not freed.

Parameters
handleadapter handle
contextnew callback context