From cc0bf3467b33c32922ec78eb0cf4fffbd90483c2 Mon Sep 17 00:00:00 2001 From: Anders Betts Date: Sun, 20 Sep 2026 09:35:06 +0200 Subject: commands: declarative argument schemas with dispatch validation --- src/protocol.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/protocol.c') diff --git a/src/protocol.c b/src/protocol.c index c528759..d9019ba 100644 --- a/src/protocol.c +++ b/src/protocol.c @@ -176,6 +176,12 @@ char *protocol_handle_line(sqlite3 *db, const char *line, size_t len) } { + char verr[512]; + if (cmd->nargs && + command_validate_args(cmd, r.args, verr, sizeof verr) != 0) { + add_error(rdoc, resp, "INVALID_ARGS", verr, NULL); + goto done; + } yyjson_mut_val *result = cmd->fn(&r); if (!result) { add_error(rdoc, resp, r.err_code ? r.err_code : "INTERNAL", -- cgit v1.3