From 39b633c1de8a3db895f9d7a02a054ee2cdf2762f Mon Sep 17 00:00:00 2001 From: Joe Thornber Date: Mon, 17 Dec 2001 14:04:10 +0000 Subject: [PATCH] o lvm_snprintf Could everyone please use this from now on. --- lib/misc/lvm-string.h | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 lib/misc/lvm-string.h diff --git a/lib/misc/lvm-string.h b/lib/misc/lvm-string.h new file mode 100644 index 000000000..a502ce475 --- /dev/null +++ b/lib/misc/lvm-string.h @@ -0,0 +1,31 @@ +/* + * Copyright (C) 2001 Sistina Software (UK) Limited. + * + * This file is released under the LGPL. + */ + +#ifndef _LVM_STRING_H +#define _LVM_STRING_H + +#include + +/* + * Different versions of glibc have different + * return values for over full buffers. + */ +static inline int lvm_snprintf(char *str, size_t size, const char *format, ...) +{ + int n; + va_list ap; + + va_start(ap, format); + n = vsnprintf(str, size, format, ap); + va_end(ap); + + if (n < 0 || n == size) + return -1; + + return n; +} + +#endif