- ret = lttng_condition_serialize(condition, NULL);
- if (ret < 0) {
- status = LTTNG_NOTIFICATION_CHANNEL_STATUS_INVALID;
- goto end_unlock;
- }
- assert(ret < UINT32_MAX);
- cmd_message.size = (uint32_t) ret;
- command_size = ret + sizeof(
- struct lttng_notification_channel_message);
- command_buffer = zmalloc(command_size);
- if (!command_buffer) {
+ ret = lttng_dynamic_buffer_append(&buffer, &cmd_header,
+ sizeof(cmd_header));
+ if (ret) {
+ status = LTTNG_NOTIFICATION_CHANNEL_STATUS_ERROR;