#include <stdlib.h>
#include <stdio.h>
#include <stdarg.h>

#define DEBUG_BUFFER_SIZE 80
int unifi_debug = 5;

void unifi_trace(void* ospriv, int level, const char *fmt, ...)
{
   
  static char s[DEBUG_BUFFER_SIZE];
  va_list args;
  unsigned int len;

  if (!ospriv) return;
   
  if(unifi_debug >= level) 
   {
	
     va_start(args, fmt);
     len = vsnprintf(&(s)[0], (DEBUG_BUFFER_SIZE), fmt, args);
	
     va_end(args);
     if (len >= DEBUG_BUFFER_SIZE) 
      {
	(s)[DEBUG_BUFFER_SIZE - 2] = '\n';
	(s)[DEBUG_BUFFER_SIZE - 1] = 0;
      }
      printf("%s", s);
   }
   
}
