debug

Name

debug -- 

Synopsis


#include <debug.h>


#define     UNUSED                          (x)
#define     debug_msg
void        debug_dump                      (void *lp,
                                             long len);
void        debug_set_core_dir              (const char *argv0);

Description

Details

UNUSED()

#define UNUSED(x)	(x=x)

x :


debug_msg

#define debug_msg	_dprintf("[pid/%d +%d %s] ", getpid(), __LINE__, __FILE__), _dprintf


debug_dump ()

void        debug_dump                      (void *lp,
                                             long len);

Writes a dump of a memory region to stdout. The dump contains a hexadecimal and an ascii representation of the memory region.

lp :

pointer to memory region.

Param2 :


debug_set_core_dir ()

void        debug_set_core_dir              (const char *argv0);

Creates a directory with the application name and makes it the current working directory.

This function exists because some unix variants use the name 'core' for core dump files. When an application uses multiple processes, this can be problematic if the failure of one process leads to the failure of another because the dependent process 'core' file will overwrite the core of the failing process.

argv0 :

the application path (usually argv[0] in main()).