xextendf
xextendf(&ret, sep_str, "%s", c->name);
xextendf(&ret, sep_str, "%s", k->name);
xextendf(&ssh->kex->server_sig_algs, ",", "%s", sigalg);
xextendf(&ret, sep_str, "%s", m->name);
void xextendf(char **s, const char *sep, const char *fmt, ...)
xextendf(&buf, NULL, "%*s", file_len - cols, "");
xextendf(&buf, NULL, " %3d%% %s %s/s ", percent, format_size(cur_pos),
xextendf(&buf, NULL, "- stalled -");
xextendf(&buf, NULL, " --:-- ETA");
xextendf(&buf, NULL, "%d:%02d:%02d",
xextendf(&buf, NULL, " %02d:%02d", minutes, seconds);
xextendf(&buf, NULL, " ETA");
xextendf(&buf, NULL, " ");
xextendf(&s, ",", "hello");
xextendf(&s, ",", "world");
xextendf(&s, ",", "bar");
xextendf(&s, NULL, "bar");
xextendf(&s, "", "bar");
xextendf(&s, ":", "s=%s,d=%d", "string", 123);
xextendf(&s, ",", "one");
xextendf(&s, ",", "two");
xextendf(&s, ":", "three=%d", 3);
xextendf(&s, NULL, "four");
xextendf(&ret, "_", "%s", cp);
xextendf(&msg1, "\n", "but keys of different "
xextendf(&msg1, "", ".");
xextendf(&msg1, "\n", "%s key fingerprint is: %s",
xextendf(&msg1, "\n", "%s", ra);
xextendf(&msg1, "\n",
xextendf(&msg1, "\n", "%s", msg2);
xextendf(&msg1, "\n",
xextendf(&ret, "\n", " %s", othernames[i]);
xextendf(&ret, "\n", " (%d additional names omitted)",
xextendf(&ret, " ", "%s", av[i]);
xextendf(&ret, sep_str, "%s", impl->name);