TLS: PIPELINING under OpenSSL
[exim.git] / src / src / debug.c
index 3cd6d0c92e0afb4975114d3b9fab5e7b058b1d29..35571547f656ed6c465509d6da102d357ab89ff1 100644 (file)
@@ -152,33 +152,22 @@ void
 debug_printf_indent(const char * format, ...)
 {
 va_list ap;
-unsigned depth = acl_level + expand_level, i;
-
-if (!debug_file) return;
-if (depth > 0)
-  {
-  for (i = depth >> 2; i > 0; i--)
-    fprintf(debug_file, "   .");
-  fprintf(debug_file, "%*s", depth & 3, "");
-  }
-
 va_start(ap, format);
-debug_vprintf(format, ap);
+debug_vprintf(acl_level + expand_level, format, ap);
 va_end(ap);
 }
 
-
 void
 debug_printf(const char *format, ...)
 {
 va_list ap;
 va_start(ap, format);
-debug_vprintf(format, ap);
+debug_vprintf(0, format, ap);
 va_end(ap);
 }
 
 void
-debug_vprintf(const char *format, va_list ap)
+debug_vprintf(int indent, const char *format, va_list ap)
 {
 int save_errno = errno;
 
@@ -217,6 +206,20 @@ if (debug_ptr == debug_buffer)
   debug_prefix_length = debug_ptr - debug_buffer;
   }
 
+if (indent > 0)
+  {
+  int i;
+  for (i = indent >> 2; i > 0; i--)
+    {
+    Ustrcpy(debug_ptr, "   " UTF8_VERT_2DASH);
+    debug_ptr += 6;    /* 3 spaces + 3 UTF-8 octets */
+    debug_prefix_length += 6;
+    }
+  Ustrncpy(debug_ptr, "   ", indent &= 3);
+  debug_ptr += indent;
+  debug_prefix_length += indent;
+  }
+
 /* Use the checked formatting routine to ensure that the buffer
 does not overflow. Ensure there's space for a newline at the end. */