Commit 2169c0e0e3 for bind
commit 2169c0e0e30a41de8d494b2b3f935276445a7736
Author: Mark Andrews <marka@isc.org>
Date: Tue Jul 14 16:58:47 2026 +1000
Send the error id string when sending a control channel error
The is in addition to the error string that is already being
sent.
diff --git a/bin/named/controlconf.c b/bin/named/controlconf.c
index 8051581669..c3e8ec4717 100644
--- a/bin/named/controlconf.c
+++ b/bin/named/controlconf.c
@@ -322,9 +322,13 @@ control_respond(controlconnection_t *conn) {
data = isccc_alist_lookup(conn->response, "_data");
if (data != NULL) {
+ const char *errid = isc_result_toid(result);
if (isccc_cc_defineuint32(data, "result", result) == NULL) {
goto cleanup;
}
+ if (isccc_cc_definestring(data, "errid", errid) == NULL) {
+ goto cleanup;
+ }
}
if (result != ISC_R_SUCCESS) {
diff --git a/bin/tests/system/rndc/tests.sh b/bin/tests/system/rndc/tests.sh
index 276b17eb0e..42f68f7e9c 100644
--- a/bin/tests/system/rndc/tests.sh
+++ b/bin/tests/system/rndc/tests.sh
@@ -828,7 +828,7 @@ n=$((n + 1))
echo_i "check rndc -d sexpr printing ($n)"
ret=0
$RNDCCMD 10.53.0.3 -d status >rndc.out.test$n 2>rndc.err.test$n || ret=1
-grep '("\*alist\*" ("_auth" "\*alist\*" ("hsha" . 0x[0-9a-f]*)) ("_ctrl" "\*alist\*" ("_ser" . '"'"'[0-9]*'"'"') ("_tim" . '"'"'[0-9]*'"'"') ("_exp" . '"'"'[0-9]*'"'"') ("_rpl" . '"'"'1'"'"') ("_nonce" . '"'"'[0-9]*'"'"')) ("_data" "\*alist\*" ("type" . '"'"'status'"'"') ("result" . '"'"'0'"'"') ("text" . 0x[0-9a-f]*)))' rndc.err.test$n >/dev/null || ret=1
+grep '("\*alist\*" ("_auth" "\*alist\*" ("hsha" . 0x[0-9a-f]*)) ("_ctrl" "\*alist\*" ("_ser" . '"'"'[0-9]*'"'"') ("_tim" . '"'"'[0-9]*'"'"') ("_exp" . '"'"'[0-9]*'"'"') ("_rpl" . '"'"'1'"'"') ("_nonce" . '"'"'[0-9]*'"'"')) ("_data" "\*alist\*" ("type" . '"'"'status'"'"') ("result" . '"'"'0'"'"') ("errid" . '"'"'ISC_R_SUCCESS'"'"') ("text" . 0x[0-9a-f]*)))' rndc.err.test$n >/dev/null || ret=1
if [ $ret != 0 ]; then echo_i "failed"; fi
status=$((status + ret))