forked from lei.chen/myxce
Add the full call chain for host control operations from the Go API server through the C library to the controller: - schema/controller.capnp: HostControl struct + hostctrlmsg @21 in Request.body union - include/typemap.h: xce_hostctrl_t* hostctrlmsg in body union (placed after @20 clrpreasonmsg, matching capnp ordinal) - include/client.h, xceapi.h, request.h: declarations for xcecli_hostctrl, xce_hostctrl, xce_hostctrl_req - lib/client.c: xcecli_hostctrl (validate + delegate to xce_hostctrl) - lib/xceapi.c: xce_hostctrl (validate ctx state + send + wait reply) - lib/request.c: xce_hostctrl_req (validate hostname/empty/nil, accept only HOST_OPEN/HOST_CLOSE, reject HOST_TAG/UNTAG) - lib/helper.c: Request_body_hostctrlmsg cases in xce_request_body() and xce_request_msg_name() - controller/cluster.c: OPCode_hostcontrol dispatch - controller/include/cluster.h: do_hostcontrol_op declaration - controller/worker.c: do_hostcontrol_op + fix pre-existing goto-clean bug in worker_ctrl that leaked write lock and reference on HOST_OPEN/HOST_CLOSE no-op paths TDD: 8 xce_hostctrl_req validation tests (null ep, null ctrl, null/empty hostname, HOST_DO_NONE no-op, HOST_TAG/UNTAG reject, negative action reject, HOST_OPEN/CLOSE accept via xce_request). 116/116 xcelib tests pass. CGO_ENABLED=0 Go backend tests pass. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| testsuite | ||
| bitset.c | ||
| CLAUDE.md | ||
| client.c | ||
| configobj.c | ||
| dataq.c | ||
| delay.c | ||
| group.c | ||
| helper.c | ||
| hook.c | ||
| htab.c | ||
| idgen.c | ||
| jobj.c | ||
| kv.c | ||
| kvmgr.c | ||
| meson.build | ||
| misc.c | ||
| mylock.c | ||
| netio.c | ||
| ordq.c | ||
| preason.c | ||
| qobj.c | ||
| request.c | ||
| resobj.c | ||
| resreq.c | ||
| rusage.peg | ||
| section.peg | ||
| threshold.c | ||
| utils.c | ||
| vtaskmgr.c | ||
| window.c | ||
| wobj.c | ||
| wrap.c | ||
| xce_resreq.peg | ||
| xcealloc.c | ||
| xceapi.c | ||
| xcectx.c | ||
| xcelimit.c | ||
| xlist.c | ||
| xstring.c | ||
| xvec.c | ||
| zarray.c | ||