diff options
| author | Furkan Sahin <furkan-dev@proton.me> | 2016-01-03 20:40:50 +0100 |
|---|---|---|
| committer | Furkan Sahin <furkan-dev@proton.me> | 2016-01-03 20:40:50 +0100 |
| commit | 380e88bfb84ce58b4e6d09bde173fb7417543dbb (patch) | |
| tree | af92196751fdc7cc326b8e6a32c1c62983fd30bb /include/ipc-client.h | |
| parent | 196c821945a15be8e3052981e5d8f447cfc03938 (diff) | |
Add type to returned response.
Makes `ipc_recv_response` return a struct with size, type and payload
rather than just the payload string.
This is useful if the type has to be checked on the client.
Diffstat (limited to 'include/ipc-client.h')
| -rw-r--r-- | include/ipc-client.h | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/include/ipc-client.h b/include/ipc-client.h index a4cfd87f..030c80b6 100644 --- a/include/ipc-client.h +++ b/include/ipc-client.h @@ -4,6 +4,16 @@ #include "ipc.h" /** + * IPC response including type of IPC response, size of payload and the json + * encoded payload string. + */ +struct ipc_response { + uint32_t size; + uint32_t type; + char *payload; +}; + +/** * Gets the path to the IPC socket from sway. */ char *get_socketpath(void); @@ -17,9 +27,12 @@ int ipc_open_socket(const char *socket_path); */ char *ipc_single_command(int socketfd, uint32_t type, const char *payload, uint32_t *len); /** - * Receives a single IPC resposne and returns the buffer. len will be updated - * with the length of the buffer returned from sway. + * Receives a single IPC response and returns an ipc_response. + */ +struct ipc_response *ipc_recv_response(int socketfd); +/** + * Free ipc_response struct */ -char *ipc_recv_response(int socketfd, uint32_t *len); +void free_ipc_response(struct ipc_response *response); #endif |
