diff options
author | Roland McGrath <roland@gnu.org> | 2003-02-23 03:35:39 +0000 |
---|---|---|
committer | Roland McGrath <roland@gnu.org> | 2003-02-23 03:35:39 +0000 |
commit | dd1747485cf1cacc65523aedf0e365333df1f3f5 (patch) | |
tree | f36285dd412b0728fb407a76c2532ba5a3b61211 | |
parent | 445546a1c9e085fee574cb3e2830a9f1bb2bc679 (diff) | |
download | glibc-dd1747485cf1cacc65523aedf0e365333df1f3f5.zip glibc-dd1747485cf1cacc65523aedf0e365333df1f3f5.tar.gz glibc-dd1747485cf1cacc65523aedf0e365333df1f3f5.tar.bz2 |
2003-02-22 Roland McGrath <roland@redhat.com>
* resolv/tst-leaks.c: New file by Daniel Jacobowitz <drow@mvista.com>.
* resolv/Makefile (tests): Add tst-leaks.
($(objpfx)tst-leaks): Depend on $(objpfx)libresolv.so.
(tst-leaks-ENV): New variable.
($(objpfx)mtrace-tst-leaks): New target.
(tests): Depend on it.
-rw-r--r-- | resolv/Makefile | 13 | ||||
-rw-r--r-- | resolv/tst-leaks.c | 43 |
2 files changed, 54 insertions, 2 deletions
diff --git a/resolv/Makefile b/resolv/Makefile index c3b6605..44c1b34 100644 --- a/resolv/Makefile +++ b/resolv/Makefile @@ -1,4 +1,5 @@ -# Copyright (C) 1994,95,96,97,98,99,2000,2001 Free Software Foundation, Inc. +# Copyright (C) 1994,1995,1996,1997,1998,1999,2000,2001,2003 +# Free Software Foundation, Inc. # This file is part of the GNU C Library. # The GNU C Library is free software; you can redistribute it and/or @@ -31,7 +32,7 @@ distribute := ../conf/portability.h mapv4v6addr.h mapv4v6hostent.h \ routines := herror inet_addr inet_ntop inet_pton nsap_addr res_init \ res_hconf res_libc res-state -tests = tst-aton +tests = tst-aton tst-leaks include ../Makeconfig @@ -87,3 +88,11 @@ $(objpfx)libanl.so: $(common-objpfx)libc.so $(common-objpfx)libc_nonshared.a \ $(shared-thread-library) $(objpfx)ga_test: $(objpfx)libanl.so $(shared-thread-library) + +$(objpfx)tst-leaks: $(objpfx)libresolv.so +tst-leaks-ENV = MALLOC_TRACE=$(objpfx)tst-leaks.mtrace +$(objpfx)mtrace-tst-leaks: $(objpfx)tst-leaks.out + $(common-objpfx)malloc/mtrace $(objpfx)tst-leaks.mtrace > $@ +ifneq (no,$(PERL)) +tests: $(objpfx)mtrace-tst-leaks +endif diff --git a/resolv/tst-leaks.c b/resolv/tst-leaks.c new file mode 100644 index 0000000..0a94514 --- /dev/null +++ b/resolv/tst-leaks.c @@ -0,0 +1,43 @@ +/* Tests for res_query in libresolv + Copyright (C) 2003 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, write to the Free + Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. */ + +#include <netinet/in.h> +#include <arpa/nameser.h> +#include <resolv.h> +#include <mcheck.h> + +/* Prototype for our test function. */ +extern int do_test (int argc, char *argv[]); + +/* This defines the `main' function and some more. */ +#include <test-skeleton.c> + +int +do_test (int argc, char *argv[]) +{ + unsigned char buf[256]; + + mtrace(); + + /* This will allocate some memory, which should be automatically + freed at exit. */ + res_query ("1.0.0.127.in-addr.arpa.", C_ANY, T_ANY, buf, 256); + + return 0; +} |