sock, trigger_payload.buffer.data, trigger_len);
if (sock_recv_len < 0 || sock_recv_len != trigger_len) {
ERR("Failed to receive \"register trigger\" command payload");
- /* TODO: should this be a new error enum ? */
- ret = LTTNG_ERR_INVALID_TRIGGER;
+ ret = LTTNG_ERR_INVALID_PROTOCOL;
goto end;
}
}
}
+ /*
+ * The bytecode generation also serves as a validation step for the
+ * bytecode expressions.
+ */
+ ret = lttng_trigger_generate_bytecode(trigger, &cmd_creds);
+ if (ret != LTTNG_OK) {
+ goto end;
+ }
+
/*
* A reference to the trigger is acquired by the notification thread.
* It is safe to return the same trigger to the caller since it the