X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=libraries%2Flibldap%2Fprint.c;h=aaa3845448bc02b3c430f44fcfab3ce106d6a6de;hb=eae2233d0ce2e956a6018b2dfd1f00e3d9478075;hp=5254fea8db43c47b823e5ca6b351fc0c772aede2;hpb=bd6dfe333d667ea8b795b20a684c3fc1cc05f6ae;p=openldap diff --git a/libraries/libldap/print.c b/libraries/libldap/print.c index 5254fea8db..aaa3845448 100644 --- a/libraries/libldap/print.c +++ b/libraries/libldap/print.c @@ -1,6 +1,16 @@ -/* - * Copyright 1998-1999 The OpenLDAP Foundation, All Rights Reserved. - * COPYING RESTRICTIONS APPLY, see COPYRIGHT file +/* $OpenLDAP$ */ +/* This work is part of OpenLDAP Software . + * + * Copyright 1998-2005 The OpenLDAP Foundation. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted only as authorized by the OpenLDAP + * Public License. + * + * A copy of this license is available in the file LICENSE in the + * top-level directory of the distribution or, alternatively, at + * . */ #include "portable.h" @@ -25,53 +35,28 @@ static int ldap_log_check( LDAP *ld, int loglvl ) if(ld == NULL) { errlvl = ldap_debug; } else { - errlvl = ld->ld_errno; + errlvl = ld->ld_debug; } return errlvl & loglvl ? 1 : 0; } -int ldap_log_printf -#ifdef HAVE_STDARG - ( LDAP *ld, int loglvl, char *fmt, ... ) -#else - ( va_alist ) -va_dcl -#endif +int ldap_log_printf( LDAP *ld, int loglvl, const char *fmt, ... ) { char buf[ 1024 ]; va_list ap; -#ifdef HAVE_STDARG - va_start( ap, fmt ); -#else - LD *ld - int loglvl; - char *fmt; - - va_start( ap ); - - errlvl = va_arg( ap, LD * ); - loglvl = va_arg( ap, int ); - fmt = va_arg( ap, char * ); -#endif - if ( !ldap_log_check( ld, loglvl )) { return 0; } -#ifdef HAVE_VSNPRINTF + va_start( ap, fmt ); + 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); - (*lber_pvt_log_print)( buf ); + (*ber_pvt_log_print)( buf ); return 1; }