=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/ssh/xmalloc.c,v retrieving revision 1.35 retrieving revision 1.36 diff -u -r1.35 -r1.36 --- src/usr.bin/ssh/xmalloc.c 2019/06/06 05:13:13 1.35 +++ src/usr.bin/ssh/xmalloc.c 2019/11/12 22:32:48 1.36 @@ -1,4 +1,4 @@ -/* $OpenBSD: xmalloc.c,v 1.35 2019/06/06 05:13:13 otto Exp $ */ +/* $OpenBSD: xmalloc.c,v 1.36 2019/11/12 22:32:48 djm Exp $ */ /* * Author: Tatu Ylonen * Copyright (c) 1995 Tatu Ylonen , Espoo, Finland @@ -90,17 +90,24 @@ } int +xvasprintf(char **ret, const char *fmt, va_list ap) +{ + int i; + + i = vasprintf(ret, fmt, ap); + if (i < 0 || *ret == NULL) + fatal("xvasprintf: could not allocate memory"); + return i; +} + +int xasprintf(char **ret, const char *fmt, ...) { va_list ap; int i; va_start(ap, fmt); - i = vasprintf(ret, fmt, ap); + i = xvasprintf(ret, fmt, ap); va_end(ap); - - if (i < 0 || *ret == NULL) - fatal("xasprintf: could not allocate memory"); - - return (i); + return i; }