summaryrefslogtreecommitdiff
path: root/lib/libc/stdlib
diff options
context:
space:
mode:
authorThorsten Lockert <tholo@cvs.openbsd.org>1997-05-31 08:55:07 +0000
committerThorsten Lockert <tholo@cvs.openbsd.org>1997-05-31 08:55:07 +0000
commit65a7d192e319bb8a587e55b47d4ab378e112ebab (patch)
tree5ff37a03dd206efd9e4b4b94d9dcd9d20bbcf0b0 /lib/libc/stdlib
parentca77a8a070bb1dd288a98b8e90d239cf65a9705c (diff)
Make it possible to not output warnings (errors causing aborts are always
output).
Diffstat (limited to 'lib/libc/stdlib')
-rw-r--r--lib/libc/stdlib/malloc.36
-rw-r--r--lib/libc/stdlib/malloc.c9
2 files changed, 13 insertions, 2 deletions
diff --git a/lib/libc/stdlib/malloc.3 b/lib/libc/stdlib/malloc.3
index f5ab9d70d9b..eb09eeedbca 100644
--- a/lib/libc/stdlib/malloc.3
+++ b/lib/libc/stdlib/malloc.3
@@ -33,7 +33,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $OpenBSD: malloc.3,v 1.5 1997/05/31 08:47:55 tholo Exp $
+.\" $OpenBSD: malloc.3,v 1.6 1997/05/31 08:55:05 tholo Exp $
.\"
.Dd August 27, 1996
.Dt MALLOC 3
@@ -150,6 +150,10 @@ Currently junk is bytes of 0xd0, this is pronounced ``Duh'' :-)
``hint'' pass a hint to the kernel about pages we don't use. If the
machine is paging a lot this may help a bit.
+.It N
+Do not output warning messages when encountering possible corruption
+or bad pointers.
+
.It R
``realloc'' always reallocate when
.Fn realloc
diff --git a/lib/libc/stdlib/malloc.c b/lib/libc/stdlib/malloc.c
index 94525adfa58..e8c352ca43d 100644
--- a/lib/libc/stdlib/malloc.c
+++ b/lib/libc/stdlib/malloc.c
@@ -8,7 +8,7 @@
*/
#if defined(LIBC_SCCS) && !defined(lint)
-static char rcsid[] = "$OpenBSD: malloc.c,v 1.25 1997/05/31 08:47:56 tholo Exp $";
+static char rcsid[] = "$OpenBSD: malloc.c,v 1.26 1997/05/31 08:55:06 tholo Exp $";
#endif /* LIBC_SCCS and not lint */
/*
@@ -219,6 +219,9 @@ static int suicide;
static int malloc_stats;
#endif
+/* avoid outputting warnings? */
+static int malloc_silent;
+
/* always realloc ? */
static int malloc_realloc;
@@ -361,6 +364,8 @@ wrtwarning(p)
char *q = " warning: ";
if (malloc_abort)
wrterror(p);
+ else if (malloc_silent)
+ return;
write(2, __progname, strlen(__progname));
write(2, malloc_func, strlen(malloc_func));
write(2, q, strlen(q));
@@ -514,6 +519,8 @@ malloc_init ()
case 'R': malloc_realloc = 1; break;
case 'j': malloc_junk = 0; break;
case 'J': malloc_junk = 1; break;
+ case 'n': malloc_silent = 0; break;
+ case 'N': malloc_silent = 1; break;
#ifdef __FreeBSD__
case 'u': malloc_utrace = 0; break;
case 'U': malloc_utrace = 1; break;