1
0
mirror of https://github.com/falk-werner/webfuse synced 2024-10-27 20:34:10 +00:00
falk-werner_webfuse/lib/wsfs/message.c

39 lines
888 B
C
Raw Normal View History

#include "wsfs/message.h"
2019-02-09 02:08:02 +00:00
#include <stdlib.h>
#include <libwebsockets.h>
extern struct wsfs_message * wsfs_message_create(json_t const * value)
2019-02-09 02:08:02 +00:00
{
#if 0
char * msg = json_dumps(value, JSON_COMPACT);
puts(msg);
free(msg);
#endif
struct wsfs_message * message = NULL;
size_t const length = json_dumpb(value, NULL, 0, JSON_COMPACT);
if (0 < length)
2019-02-09 02:08:02 +00:00
{
char * data = malloc(sizeof(struct wsfs_message) + LWS_PRE + length);
message = (struct wsfs_message *) data;
if (NULL != message)
{
message->data = &data[sizeof(struct wsfs_message) + LWS_PRE];
message->length = length;
message->next = NULL;
json_dumpb(value, message->data, length, JSON_COMPACT);
}
2019-02-09 02:08:02 +00:00
}
return message;
}
void wsfs_message_dispose(
struct wsfs_message * message)
{
free(message);
}