aboutsummaryrefslogtreecommitdiff
path: root/include/ipc-client.h
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2016-01-03 15:37:35 -0500
committerDrew DeVault <sir@cmpwn.com>2016-01-03 15:37:35 -0500
commitf2d519d0bac03b9d69221d3c6c59feb39b9ccf4f (patch)
treed05543b4061aa883248ffbcc4bede68ab7bba1c7 /include/ipc-client.h
parent22592505b1c27df641d25d9e3c4e155eb71a6109 (diff)
parent7298a9c67aed2d7a5c5c1df55bfa6052cac04d51 (diff)
downloadsway-f2d519d0bac03b9d69221d3c6c59feb39b9ccf4f.tar.xz
Merge pull request #427 from mikkeloscar/ipc-update
Refactor IPC server/client
Diffstat (limited to 'include/ipc-client.h')
-rw-r--r--include/ipc-client.h19
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