commit 075f71338af24057d9f8428bd94ea736ff315254 from: Martijn van Duren date: Tue Nov 3 19:08:14 2026 UTC limit nsExtendCommand, and nsExtendInput to 255 characters. Fix previous botched commit commit - 986364d26ba1975d29998bfe6a8268d29f20bd86 commit + 075f71338af24057d9f8428bd94ea736ff315254 blob - 8a164634eaf5b24148df8b8910fce1d44931becf blob + d801d102e297511104f1e436a10bb3d214df1204 --- main.c +++ main.c @@ -803,8 +803,8 @@ extends_config_table(struct agentx_varbind *vb) { struct agentx_object *obj; struct command *cmd; - size_t i; - char displaystring[256]; + size_t i, n; + char displaystring[256], *in; if ((cmd = extends_find_cmd(vb)) == NULL) { agentx_varbind_notfound(vb); @@ -812,9 +812,11 @@ extends_config_table(struct agentx_varbind *vb) } obj = agentx_varbind_get_object(vb); agentx_varbind_set_index_string(vb, token, cmd->token); - if (obj == command) - agentx_varbind_string(vb, cmd->command); - else if (obj == args) { + if (obj == command) { + if ((n = strlen(cmd->command)) > 255) + n = 255; + agentx_varbind_nstring(vb, cmd->command, n); + } else if (obj == args) { displaystring[0] = '\0'; for (i = 0; cmd->args != NULL && cmd->args[i] != NULL; i++) { if (i != 0) @@ -824,9 +826,12 @@ extends_config_table(struct agentx_varbind *vb) sizeof(displaystring)); } agentx_varbind_string(vb, displaystring); - } else if (obj == input) - agentx_varbind_string(vb, cmd->input != NULL ? cmd->input : ""); - else if (obj == cachetime) + } else if (obj == input) { + in = cmd->input != NULL ? cmd->input : ""; + if ((n = strlen(in)) > 255) + n = 255; + agentx_varbind_nstring(vb, in, n); + } else if (obj == cachetime) agentx_varbind_integer(vb, cmd->cachetime); else if (obj == exectype) agentx_varbind_integer(vb, cmd->exectype); @@ -933,7 +938,7 @@ extends_output2_table(struct agentx_varbind *vb) break; case AGENTX_REQUEST_TYPE_GETNEXT: /* Increments later */ - if (line <= 1024) + if (lidx <= 1024) lidx++; break; case AGENTX_REQUEST_TYPE_GETNEXTINCLUSIVE: