OpenCoverage

trace.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/bash/src/lib/malloc/trace.c
Source codeSwitch to Preprocessed file
LineSourceCount
1/* trace.c - tracing functions for malloc */-
2-
3/* Copyright (C) 2001-2003 Free Software Foundation, Inc.-
4-
5 This file is part of GNU Bash, the Bourne Again SHell.-
6-
7 Bash is free software: you can redistribute it and/or modify-
8 it under the terms of the GNU General Public License as published by-
9 the Free Software Foundation, either version 3 of the License, or-
10 (at your option) any later version.-
11-
12 Bash is distributed in the hope that it will be useful,-
13 but WITHOUT ANY WARRANTY; without even the implied warranty of-
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the-
15 GNU General Public License for more details.-
16-
17 You should have received a copy of the GNU General Public License-
18 along with Bash. If not, see <http://www.gnu.org/licenses/>.-
19*/-
20-
21#ifdef HAVE_CONFIG_H-
22# include <config.h>-
23#endif-
24-
25#include <stdio.h>-
26#ifdef HAVE_UNISTD_H-
27# include <unistd.h>-
28#endif-
29-
30#include "imalloc.h"-
31-
32extern int malloc_trace;-
33-
34static int _mtrace_verbose = 0;-
35-
36#ifdef MALLOC_TRACE-
37-
38extern FILE *_imalloc_fopen __P((char *, char *, char *, char *, size_t));-
39-
40FILE *_mtrace_fp = NULL;-
41extern char _malloc_trace_buckets[];-
42-
43void-
44mtrace_alloc (tag, mem, size, file, line)-
45 const char *tag;-
46 PTR_T mem;-
47 size_t size;-
48 const char *file;-
49 int line;-
50{-
51 if (_mtrace_fp == NULL)
_mtrace_fp == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
52 _mtrace_fp = stderr;
never executed: _mtrace_fp = stderr ;
0
53-
54 if (_mtrace_verbose)
_mtrace_verboseDescription
TRUEnever evaluated
FALSEnever evaluated
0
55 fprintf (_mtrace_fp, "alloc: %s: %p (%zu bytes) from '%s:%d'\n",
never executed: fprintf (_mtrace_fp, "alloc: %s: %p (%zu bytes) from '%s:%d'\n", tag, mem, size, file ? file : "unknown", line);
0
56 tag, mem, size, file ? file : "unknown", line);
never executed: fprintf (_mtrace_fp, "alloc: %s: %p (%zu bytes) from '%s:%d'\n", tag, mem, size, file ? file : "unknown", line);
0
57 else-
58 fprintf (_mtrace_fp, "alloc:%p:%zu:%s:%d\n",
never executed: fprintf (_mtrace_fp, "alloc:%p:%zu:%s:%d\n", mem, size, file ? file : "unknown", line);
0
59 mem, size, file ? file : "unknown", line);
never executed: fprintf (_mtrace_fp, "alloc:%p:%zu:%s:%d\n", mem, size, file ? file : "unknown", line);
0
60}-
61-
62void-
63mtrace_free (mem, size, file, line)-
64 PTR_T mem;-
65 int size;-
66 const char *file;-
67 int line;-
68{-
69 if (_mtrace_fp == NULL)
_mtrace_fp == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
70 _mtrace_fp = stderr;
never executed: _mtrace_fp = stderr ;
0
71-
72 if (_mtrace_verbose)
_mtrace_verboseDescription
TRUEnever evaluated
FALSEnever evaluated
0
73 fprintf (_mtrace_fp, "free: %p (%d bytes) from '%s:%d'\n",
never executed: fprintf (_mtrace_fp, "free: %p (%d bytes) from '%s:%d'\n", mem, size, file ? file : "unknown", line);
0
74 mem, size, file ? file : "unknown", line);
never executed: fprintf (_mtrace_fp, "free: %p (%d bytes) from '%s:%d'\n", mem, size, file ? file : "unknown", line);
0
75 else-
76 fprintf (_mtrace_fp, "free:%p:%d:%s:%d\n",
never executed: fprintf (_mtrace_fp, "free:%p:%d:%s:%d\n", mem, size, file ? file : "unknown", line);
0
77 mem, size, file ? file : "unknown", line);
never executed: fprintf (_mtrace_fp, "free:%p:%d:%s:%d\n", mem, size, file ? file : "unknown", line);
0
78}-
79#endif /* MALLOC_TRACE */-
80-
81int-
82malloc_set_trace (n)-
83 int n;-
84{-
85 int old;-
86-
87 old = malloc_trace;-
88 malloc_trace = n;-
89 _mtrace_verbose = (n > 1);-
90 return old;
never executed: return old;
0
91}-
92-
93void-
94malloc_set_tracefp (fp)-
95 FILE *fp;-
96{-
97#ifdef MALLOC_TRACE-
98 _mtrace_fp = fp ? fp : stderr;
fpDescription
TRUEnever evaluated
FALSEnever evaluated
0
99#endif-
100}
never executed: end of block
0
101-
102void-
103malloc_trace_bin (n)-
104 int n;-
105{-
106#ifdef MALLOC_TRACE-
107 _malloc_trace_buckets[n] = 1;-
108#endif-
109}
never executed: end of block
0
110-
111#define TRACEROOT "/var/tmp/maltrace/trace."-
112-
113void-
114malloc_set_tracefn (s, fn)-
115 char *s;-
116 char *fn;-
117{-
118#ifdef MALLOC_TRACE-
119 FILE *fp;-
120 char defname[sizeof (TRACEROOT) + 64];-
121-
122 fp = _imalloc_fopen (s, fn, TRACEROOT, defname, sizeof (defname));-
123 if (fp)
fpDescription
TRUEnever evaluated
FALSEnever evaluated
0
124 malloc_set_tracefp (fp);
never executed: malloc_set_tracefp (fp);
0
125#endif-
126}
never executed: end of block
0
Source codeSwitch to Preprocessed file

Generated by Squish Coco 4.1.2