IPC Client Functions
Ecore » Ecore_IPC - Ecore inter-process communication functions.

Functions that deal with IPC client objects. More...

## Functions

EAPI int | ecore_ipc_client_send (Ecore_Ipc_Client *cl, int major, int minor, int ref, int ref_to, int response, const void *data, int size)
| Sends a message to the given IPC client.
EAPI Ecore_Ipc_Server * | ecore_ipc_client_server_get (Ecore_Ipc_Client *cl)
| Retrieves the IPC server that the given IPC client is connected to.
EAPI void * | ecore_ipc_client_del (Ecore_Ipc_Client *cl)
| Closes the connection and frees memory allocated to the given IPC client.
EAPI void | ecore_ipc_client_data_set (Ecore_Ipc_Client *cl, const void *data)
| Sets the IPC data associated with the given IPC client to `data`.
EAPI void * | ecore_ipc_client_data_get (Ecore_Ipc_Client *cl)
| Retrieves the data that has been associated with the given IPC client.
EAPI void | ecore_ipc_client_data_size_max_set (Ecore_Ipc_Client *cl, int size)
| Sets the max data payload size for an Ipc message in bytes.
EAPI int | ecore_ipc_client_data_size_max_get (Ecore_Ipc_Client *cl)
| Gets the max data payload size for an Ipc message in bytes.
EAPI const char * | ecore_ipc_client_ip_get (Ecore_Ipc_Client *cl)
| Gets the IP address of a client that has been connected to.
EAPI void | ecore_ipc_client_flush (Ecore_Ipc_Client *cl)
| Flushes all pending data to the given client.

## Detailed Description

Functions that deal with IPC client objects.

## Function Documentation

## ecore_ipc_client_send()

EAPI int ecore_ipc_client_send | ( | Ecore_Ipc_Client * | cl,
|  | int | major,
|  | int | minor,
|  | int | ref,
|  | int | ref_to,
|  | int | response,
|  | const void * | data,
|  | int | size )

Sends a message to the given IPC client.

Parameters

  cl | The given IPC client.
  major | Major opcode of the message.
  minor | Minor opcode of the message.
  ref | Reference number of the message.
  ref_to | Reference number of the message this message refers to.
  response | Requires response.
  data | The data to send as part of the message.
  size | Length of the data, in bytes, to send.

Returns
  The number of bytes sent. `0` will be returned if there is an error.

References eina_error_msg_get(), EINA_SAFETY_ON_TRUE_RETURN_VAL, ERR, _Eina_Slice::len, and _Eina_Slice::mem.

## ecore_ipc_client_server_get()

EAPI Ecore_Ipc_Server * ecore_ipc_client_server_get | ( | Ecore_Ipc_Client * | cl | ) |

Retrieves the IPC server that the given IPC client is connected to.

Parameters

  cl | The given IPC client.

Returns
  The IPC server the IPC client is connected to.

## ecore_ipc_client_del()

EAPI void * ecore_ipc_client_del | ( | Ecore_Ipc_Client * | cl | ) |

Closes the connection and frees memory allocated to the given IPC client.

Parameters

  cl | The given client.

Returns
  Data associated with the client.

References eina_list_remove().

Referenced by ecore_ipc_server_del().

## ecore_ipc_client_data_set()

EAPI void ecore_ipc_client_data_set | ( | Ecore_Ipc_Client * | cl,
|  | const void * | data )

Sets the IPC data associated with the given IPC client to `data`.

Parameters

  cl | The given IPC client.
  data | The data to associate with the IPC client.

## ecore_ipc_client_data_get()

EAPI void * ecore_ipc_client_data_get | ( | Ecore_Ipc_Client * | cl | ) |

Retrieves the data that has been associated with the given IPC client.

Parameters

  cl | The given client.

Returns
  The data associated with the IPC client.

## ecore_ipc_client_data_size_max_set()

EAPI void ecore_ipc_client_data_size_max_set | ( | Ecore_Ipc_Client * | cl,
|  | int | size )

Sets the max data payload size for an Ipc message in bytes.

Parameters

  cl | The given client.
  size | The maximum data payload size in bytes.

## ecore_ipc_client_data_size_max_get()

EAPI int ecore_ipc_client_data_size_max_get | ( | Ecore_Ipc_Client * | cl | ) |

Gets the max data payload size for an Ipc message in bytes.

Parameters

  cl | The given client.

Returns
  The maximum data payload size in bytes on success, `-1` on failure.

## ecore_ipc_client_ip_get()

EAPI const char * ecore_ipc_client_ip_get | ( | Ecore_Ipc_Client * | cl | ) |

Gets the IP address of a client that has been connected to.

Parameters

  cl | The given client.

Returns
  A pointer to an internal string that contains the IP address of the connected server in the form "XXX.YYY.ZZZ.AAA" IP notation. This string should not be modified or trusted to stay valid after deletion for the `cl` object. If no IP is known `NULL` is returned.

## ecore_ipc_client_flush()

EAPI void ecore_ipc_client_flush | ( | Ecore_Ipc_Client * | cl | ) |

Flushes all pending data to the given client.

Will return when done.

Parameters

  cl | The given client.

References EINA_TRUE.