Commit df74fe4c authored by Poul-Henning Kamp's avatar Poul-Henning Kamp

Unlearn struct cli from VCLI_WriteResult()

parent 50b7975c
......@@ -400,7 +400,7 @@ mgt_cli_setup(int fdi, int fdo, int verbose, const char *ident, mgt_cli_close_f
mcf_banner(cli, NULL, NULL);
}
AZ(VSB_finish(cli->sb));
(void)VCLI_WriteResult(fdo, cli);
(void)VCLI_WriteResult(fdo, cli->result, VSB_data(cli->sb));
ev = vev_new();
......
......@@ -44,7 +44,7 @@ struct cli {
struct VCLS *cls;
};
int VCLI_WriteResult(int fd, const struct cli *cli);
int VCLI_WriteResult(int fd, unsigned status, const char *result);
int VCLI_ReadResult(int fd, unsigned *status, char **ptr, double tmo);
void VCLI_AuthResponse(int S_fd, const char *challenge,
......
......@@ -83,7 +83,7 @@ VCLI_SetResult(struct cli *cli, unsigned res)
}
int
VCLI_WriteResult(int fd, const struct cli *cli)
VCLI_WriteResult(int fd, unsigned status, const char *result)
{
int i, l;
struct iovec iov[3];
......@@ -93,18 +93,18 @@ VCLI_WriteResult(int fd, const struct cli *cli)
* any misformats by snprintf
*/
assert(cli->result >= 100);
assert(cli->result <= 999); /*lint !e650 const out of range */
assert(status >= 100);
assert(status <= 999); /*lint !e650 const out of range */
i = snprintf(res, sizeof res,
"%-3d %-8ld\n", cli->result, (long)VSB_len(cli->sb));
"%-3d %-8jd\n", status, (intmax_t)strlen(result));
assert(i == CLI_LINE0_LEN);
iov[0].iov_base = res;
iov[0].iov_len = CLI_LINE0_LEN;
iov[1].iov_base = VSB_data(cli->sb);
iov[1].iov_len = VSB_len(cli->sb);
iov[1].iov_base = (void*)(uintptr_t)result; /* TRUST ME */
iov[1].iov_len = strlen(result);
iov[2].iov_base = nl;
iov[2].iov_len = 1;
......
......@@ -293,7 +293,8 @@ cls_vlu2(void *priv, char * const *av)
cli->cls = NULL;
if (VCLI_WriteResult(cfd->fdo, cli) || cli->result == CLIS_CLOSE)
if (VCLI_WriteResult(cfd->fdo, cli->result, VSB_data(cli->sb)) ||
cli->result == CLIS_CLOSE)
return (1);
return (0);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment