mirror of git://anongit.mindrot.org/openssh.git
upstream: add xvasprintf()
OpenBSD-Commit-ID: e5e3671c05c121993b034db935bce1a7aa372247
This commit is contained in:
parent
782093ec6c
commit
166927fd41
21
xmalloc.c
21
xmalloc.c
|
@ -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 <ylo@cs.hut.fi>
|
* Author: Tatu Ylonen <ylo@cs.hut.fi>
|
||||||
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
|
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
|
||||||
|
@ -95,6 +95,17 @@ xstrdup(const char *str)
|
||||||
return cp;
|
return cp;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
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
|
int
|
||||||
xasprintf(char **ret, const char *fmt, ...)
|
xasprintf(char **ret, const char *fmt, ...)
|
||||||
{
|
{
|
||||||
|
@ -102,11 +113,7 @@ xasprintf(char **ret, const char *fmt, ...)
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
va_start(ap, fmt);
|
va_start(ap, fmt);
|
||||||
i = vasprintf(ret, fmt, ap);
|
i = xvasprintf(ret, fmt, ap);
|
||||||
va_end(ap);
|
va_end(ap);
|
||||||
|
return i;
|
||||||
if (i < 0 || *ret == NULL)
|
|
||||||
fatal("xasprintf: could not allocate memory");
|
|
||||||
|
|
||||||
return (i);
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $OpenBSD: xmalloc.h,v 1.18 2019/06/06 05:13:13 otto Exp $ */
|
/* $OpenBSD: xmalloc.h,v 1.19 2019/11/12 22:32:48 djm Exp $ */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Author: Tatu Ylonen <ylo@cs.hut.fi>
|
* Author: Tatu Ylonen <ylo@cs.hut.fi>
|
||||||
|
@ -24,3 +24,5 @@ char *xstrdup(const char *);
|
||||||
int xasprintf(char **, const char *, ...)
|
int xasprintf(char **, const char *, ...)
|
||||||
__attribute__((__format__ (printf, 2, 3)))
|
__attribute__((__format__ (printf, 2, 3)))
|
||||||
__attribute__((__nonnull__ (2)));
|
__attribute__((__nonnull__ (2)));
|
||||||
|
int xvasprintf(char **, const char *, va_list)
|
||||||
|
__attribute__((__nonnull__ (2)));
|
||||||
|
|
Loading…
Reference in New Issue