}
static int reply_string_cb(void *params, const unsigned char *val, size_t len) {
- char *str = scalloc(len + 1, 1);
- strncpy(str, (const char *)val, len);
+ char *str = sstrndup((const char *)val, len);
+
if (strcmp(last_key, "error") == 0)
last_reply.error = str;
else if (strcmp(last_key, "input") == 0)
static int reply_map_key_cb(void *params, const unsigned char *keyVal, size_t keyLen) {
free(last_key);
- last_key = scalloc(keyLen + 1, 1);
- strncpy(last_key, (const char *)keyVal, keyLen);
+ last_key = sstrndup((const char *)keyVal, keyLen);
return 1;
}
static char *config_last_key = NULL;
static int config_string_cb(void *params, const unsigned char *val, size_t len) {
- char *str = scalloc(len + 1, 1);
- strncpy(str, (const char *)val, len);
+ char *str = sstrndup((const char *)val, len);
if (strcmp(config_last_key, "config") == 0) {
fprintf(stdout, "%s", str);
}
}
static int config_map_key_cb(void *params, const unsigned char *keyVal, size_t keyLen) {
- config_last_key = scalloc(keyLen + 1, 1);
- strncpy(config_last_key, (const char *)keyVal, keyLen);
+ config_last_key = sstrndup((const char *)keyVal, keyLen);
return 1;
}
IPC_HANDLER(run_command) {
/* To get a properly terminated buffer, we copy
* message_size bytes out of the buffer */
- char *command = scalloc(message_size + 1, 1);
- strncpy(command, (const char *)message, message_size);
+ char *command = sstrndup((const char *)message, message_size);
LOG("IPC: received: *%s*\n", command);
yajl_gen gen = yajl_gen_alloc(NULL);
- CommandResult *result = parse_command((const char *)command, gen);
+ CommandResult *result = parse_command(command, gen);
free(command);
if (result->needs_tree_render)