struct trace trace;
char trace_string[MAX_TRACE_ELEMENTS * 100 + 400];
-static char *spaces[11] = {
+static const char *spaces[11] = {
" ",
" ",
" ",
* initializes a new trace
* all values will be reset
*/
-void _start_trace(const char *__file, int __line, int port, struct interface *interface, char *caller, char *dialing, int direction, int category, int serial, char *name)
+void _start_trace(const char *__file, int __line, int port, struct interface *interface, const char *caller, const char *dialing, int direction, int category, int serial, const char *name)
{
if (trace.name[0])
PERROR("trace already started (name=%s) in file %s line %d\n", trace.name, __file, __line);
trace.serial = serial;
if (name) if (name[0])
SCPY(trace.name, name);
+ if (!trace.name[0])
+ SCPY(trace.name, "<unknown>");
trace.sec = now_tv.tv_sec;
trace.usec = now_tv.tv_usec;
}
* if subelement is given, element will also contain a subelement
* if multiple subelements belong to same element, name must be equal for all subelements
*/
-void _add_trace(const char *__file, int __line, char *name, char *sub, const char *fmt, ...)
+void _add_trace(const char *__file, int __line, const char *name, const char *sub, const char *fmt, ...)
{
va_list args;
return(NULL);
/* filter trace */
- if (port && trace.port)
+ if (port >= 0 && trace.port >= 0)
if (port != trace.port) return(NULL);
if (interface) if (interface[0] && trace.interface[0])
if (!!strcasecmp(interface, trace.interface)) return(NULL);
{
SCAT(trace_string, "------------------------------------------------------------------------------\n");
/* "Port: 1 (BRI PTMP TE)" */
- if (trace.port)
+ if (trace.port >= 0)
{
mISDNport = mISDNport_first;
while(mISDNport)
switch(detail)
{
case 1: /* brief */
- if (trace.port)
+ if (trace.port >= 0)
{
SPRINT(buffer, " port %d", trace.port);
SCAT(trace_string, buffer);
if (options.deb || options.log[0])
{
- string = print_trace(1, 0, NULL, NULL, NULL, 0);
+ string = print_trace(1, -1, NULL, NULL, NULL, 0);
if (string)
{
/* process debug */