1 /* Copyright (C) 1991, 1995, 1997, 1998 Free Software Foundation, Inc. 2 This file is part of the GNU C Library. 3 4 The GNU C Library is free software; you can redistribute it and/or 5 modify it under the terms of the GNU Lesser General Public 6 License as published by the Free Software Foundation; either 7 version 2.1 of the License, or (at your option) any later version. 8 9 The GNU C Library is distributed in the hope that it will be useful, 10 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 Lesser General Public License for more details. 13 14 You should have received a copy of the GNU Lesser General Public 15 License along with the GNU C Library; if not, write to the Free 16 Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 17 02111-1307 USA. */ 18 19 #include <stdarg.h> 20 #include <stdio.h> 21 22 #ifdef USE_IN_LIBIO 23 # include <libio/libioP.h> 24 # define __vsnprintf(s, l, f, a) _IO_vsnprintf (s, l, f, a) 25 #endif 26 27 int __snprintf(char *s, size_t maxlen, const char *format, ...); 28 29 /* Write formatted output into S, according to the format 30 string FORMAT, writing no more than MAXLEN characters. */ 31 /* VARARGS3 */ 32 int 33 __snprintf (char *s, size_t maxlen, const char *format, ...) 34 { 35 va_list arg; 36 int done; 37 38 va_start (arg, format); 39 done = __vsnprintf (s, maxlen, format, arg); 40 va_end (arg); 41 42 return done; 43 } 44 weak_alias (__snprintf, snprintf) 45