]> git.sur5r.net Git - openldap/commitdiff
Remove dependencies on HAVE_VSNPRINTF, use replacement in liblutil/stdio.c
authorHoward Chu <hyc@openldap.org>
Fri, 6 Sep 2002 20:54:22 +0000 (20:54 +0000)
committerHoward Chu <hyc@openldap.org>
Fri, 6 Sep 2002 20:54:22 +0000 (20:54 +0000)
if needed. Same check for snprintf.

configure.in
libraries/liblber/bprint.c
libraries/liblber/debug.c
libraries/libldap/print.c
libraries/liblutil/setproctitle.c
libraries/liblutil/stdio.c

index 8ac2dda8d17f4eda250833614a09bf0a28f66575..2057f3d8b88da80e7faf250046ae187f38f4e05a 100644 (file)
@@ -2420,7 +2420,7 @@ AC_FUNC_VPRINTF
 
 if test $ac_cv_func_vprintf = yes ; then
        dnl check for vsnprintf
-       AC_CHECK_FUNCS(vsnprintf vsprintf)
+       AC_CHECK_FUNCS(snprintf vsnprintf)
 fi
 
 AC_CHECK_FUNCS(                \
@@ -2485,6 +2485,16 @@ AC_REPLACE_FUNCS(getopt)
 if test "$ac_cv_func_getopt" != yes; then
        LIBSRCS="$LIBSRCS getopt.c"
 fi
+if test "$ac_cv_func_snprintf" != yes -o "$ac_cv_func_vsnprintf" != yes; then
+       LIBSRCS="$LIBSRCS stdio.c"
+       LIBOBJS="$LIBOBJS stdio.o"
+       if test "$ac_cv_func_snprintf" != yes; then
+               AC_DEFINE(snprintf, lutil_snprintf, [define to snprintf routine])
+       fi
+       if test "$ac_cv_func_vsnprintf" != yes; then
+               AC_DEFINE(vsnprintf, lutil_vsnprintf, [define to snprintf routine])
+       fi
+fi
 
 dnl ----------------------------------------------------------------
 # Check Configuration
index 23ebf88853e05261216084530eb2f2a0e4ebdffd..0535603b0c39df3cb37cb59e2a7c38b526e5c7ae 100644 (file)
@@ -87,15 +87,8 @@ int ber_pvt_log_output(
        {
             int level;
             ber_get_option( NULL, LBER_OPT_BER_DEBUG, &level );
-#ifdef HAVE_VSNPRINTF
             buf[sizeof(buf) - 1] = '\0';
             vsnprintf( buf, sizeof(buf)-1, fmt, vl );
-#elif HAVE_VSPRINTF
-            vsprintf( buf, fmt, vl ); /* hope it's not too long */
-#else
-                /* use doprnt() */
-#error "vsprintf() required.";
-#endif
             if ( ber_log_check( LDAP_DEBUG_BER, level ) )
                 (*ber_pvt_log_print)( buf );
         }
@@ -117,15 +110,8 @@ int ber_pvt_log_printf( int errlvl, int loglvl, const char *fmt, ... )
 
        va_start( ap, fmt );
 
-#ifdef HAVE_VSNPRINTF
        buf[sizeof(buf) - 1] = '\0';
        vsnprintf( buf, sizeof(buf)-1, fmt, ap );
-#elif HAVE_VSPRINTF
-       vsprintf( buf, fmt, ap ); /* hope it's not too long */
-#else
-       /* use doprnt() */
-#error "vsprintf() required."
-#endif
 
        va_end(ap);
 
index 8d182d83f26ded57b6ec693c80fbf901cf9b5991..13ab67c30b01c9a93302281e4b95481826024736 100644 (file)
@@ -311,11 +311,7 @@ void (lutil_debug)( int debug, int level, const char *fmt, ... )
 #endif
        va_start( vl, fmt );
 
-#ifdef HAVE_VSNPRINTF
        vsnprintf( buffer, sizeof(buffer), fmt, vl );
-#else
-       vsprintf( buffer, fmt, vl );
-#endif
        buffer[sizeof(buffer)-1] = '\0';
 
        if( log_file != NULL ) {
index bbd21b36e1f99aba83939c6a559f37942db6fd9c..7ea14d63a3d18a585b7aaeeaec23353a5a3f7be7 100644 (file)
@@ -43,15 +43,8 @@ int ldap_log_printf( LDAP *ld, int loglvl, const char *fmt, ... )
 
        va_start( ap, fmt );
 
-#ifdef HAVE_VSNPRINTF
        buf[sizeof(buf) - 1] = '\0';
        vsnprintf( buf, sizeof(buf)-1, fmt, ap );
-#elif HAVE_VSPRINTF
-       vsprintf( buf, fmt, ap ); /* hope it's not too long */
-#else
-       /* use doprnt() */
-       chokeme = "choke me! I don't have a doprnt manual handy!";
-#endif
 
        va_end(ap);
 
index 6d1ab6a032a83e5fd494917d1f562445ad915a9b..8a095e2c5d16eacf271743d7db3906fda16a9dcb 100644 (file)
@@ -42,15 +42,8 @@ void setproctitle( const char *fmt, ... )
 
        va_start(ap, fmt);
 
-#ifdef HAVE_VSNPRINTF
        buf[sizeof(buf) - 1] = '\0';
        vsnprintf( buf, sizeof(buf)-1, fmt, ap );
-#elif HAVE_VPRINTF
-       vsprintf( buf, fmt, ap ); /* hope it's not too long */
-#else
-       /* use doprnt() */
-       chokeme = "choke me!  I don't have a doprnt() manual handy";
-#endif
 
        va_end(ap);
 
index adf41871851a401e5a7fe9447d9f8138818638ec..39d8a3754142b5d06ea17a3cd5008b57730435b2 100644 (file)
@@ -12,7 +12,7 @@
 
 #include <lutil.h>
 
-#ifndef HAVE_VSNPRINTF
+#if !defined(HAVE_VSNPRINTF) && !defined(HAVE_EBCDIC)
 /* Write at most n characters to the buffer in str, return the
  * number of chars written or -1 if the buffer would have been
  * overflowed.
  * broken pipe, and the write will be terminated.
  * -- hyc, 2002-07-19
  */
-#ifndef HAVE_EBCDIC
 /* This emulation uses vfprintf; on OS/390 we're also emulating
  * that function so it's more efficient just to have a separate
  * version of vsnprintf there.
  */
 #include <ac/signal.h>
-int vsnprintf( char *str, size_t n, const char *fmt, va_list ap )
+int lutil_vsnprintf( char *str, size_t n, const char *fmt, va_list ap )
 {
        int fds[2], res;
        FILE *f;
@@ -62,7 +61,8 @@ int vsnprintf( char *str, size_t n, const char *fmt, va_list ap )
 }
 #endif
 
-int snprintf( char *str, size_t n, const char *fmt, ... )
+#ifndef HAVE_SNPRINTF
+int lutil_snprintf( char *str, size_t n, const char *fmt, ... )
 {
        va_list ap;
        int res;
@@ -116,7 +116,7 @@ int lutil_fputs( const char *str, FILE *fp )
  * may need to be extended to recognize other qualifiers but so
  * far this seems to be enough.
  */
-int vsnprintf( char *str, size_t n, const char *fmt, va_list ap )
+int lutil_vsnprintf( char *str, size_t n, const char *fmt, va_list ap )
 {
        char *ptr, *pct, *s2, *f2, *end;
        char fm2[64];