|
Lines 268-274
sshbuf_putfv(struct sshbuf *buf, const char *fmt, va_list ap)
Link Here
|
| 268 |
int r, len; |
268 |
int r, len; |
| 269 |
u_char *p; |
269 |
u_char *p; |
| 270 |
|
270 |
|
| 271 |
va_copy(ap2, ap); |
271 |
VA_COPY(ap2, ap); |
| 272 |
if ((len = vsnprintf(NULL, 0, fmt, ap2)) < 0) { |
272 |
if ((len = vsnprintf(NULL, 0, fmt, ap2)) < 0) { |
| 273 |
r = SSH_ERR_INVALID_ARGUMENT; |
273 |
r = SSH_ERR_INVALID_ARGUMENT; |
| 274 |
goto out; |
274 |
goto out; |
|
Lines 278-284
sshbuf_putfv(struct sshbuf *buf, const char *fmt, va_list ap)
Link Here
|
| 278 |
goto out; /* Nothing to do */ |
278 |
goto out; /* Nothing to do */ |
| 279 |
} |
279 |
} |
| 280 |
va_end(ap2); |
280 |
va_end(ap2); |
| 281 |
va_copy(ap2, ap); |
281 |
VA_COPY(ap2, ap); |
| 282 |
if ((r = sshbuf_reserve(buf, (size_t)len + 1, &p)) < 0) |
282 |
if ((r = sshbuf_reserve(buf, (size_t)len + 1, &p)) < 0) |
| 283 |
goto out; |
283 |
goto out; |
| 284 |
if ((r = vsnprintf((char *)p, len + 1, fmt, ap2)) != len) { |
284 |
if ((r = vsnprintf((char *)p, len + 1, fmt, ap2)) != len) { |