From patchwork Fri Jun 10 00:54:48 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paul Pluzhnikov X-Patchwork-Id: 12934 Received: (qmail 105111 invoked by alias); 10 Jun 2016 00:55:23 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 105100 invoked by uid 89); 10 Jun 2016 00:55:22 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.9 required=5.0 tests=AWL, BAYES_00, RCVD_IN_DNSWL_LOW, RP_MATCHES_RCVD, SPF_PASS autolearn=ham version=3.3.2 spammy=ISO-8859-1, ISO88591, testskeletonc, UD:test-skeleton.c X-HELO: mail-vk0-f41.google.com X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=MtKtWZXLnR8XmSq9uQgVYTTNponwVLk2NjauV6ZnGpY=; b=ipTjneCCICuKfgmMoY8+dM2jliysC/vKC+odwV6ahPKW20uK0cGAuG3qaP98d5ubjC FyR4W4/cB71O+ikw9vESEofo3DXJMetJXXd7bypljwC0XiF1QFIbCY7Zntqwe1Bwg76n EdM5nxiuE+j+CdoqrlhStw8HbxfjL5d97y2rhwR+n3aczcCVwBcx8FXkO7ROiKPmM7oZ fRdaihhsWoGVuv6/Q1PWi73wxZoMcJp3hZaY9Wj4Df8zAPxld0hM+tkxJhsCZ2u1aua7 yVZdCXgcFffEo8UjhsPrwC++bmGiqKp1s5sBfjmQZuQr3lMNVK9E85G574LTb8sc5ZMr s2jA== X-Gm-Message-State: ALyK8tLm/Il8/U33SfJoQFX3+5gqOpbSMs1/K9g8vbYEs5AWIyOo9jR9Qf+YLGjP7IPkPmFjTRXiSOSXi3+4/VZ6 X-Received: by 10.159.39.165 with SMTP id b34mr6116921uab.84.1465520117986; Thu, 09 Jun 2016 17:55:17 -0700 (PDT) MIME-Version: 1.0 From: Paul Pluzhnikov Date: Thu, 9 Jun 2016 17:54:48 -0700 Message-ID: Subject: [patch] [BZ #19670] [BZ #19672] Replace malloc with xmalloc To: GLIBC Devel Greetings, Attached patch fixes most of missing malloc failure checks from BZ #19670 and #19672. Ok? 2016-06-09 Paul Pluzhnikov [BZ #19670] [BZ #19672] * io/test-lfs.c (do_prepare): Use xmalloc. * io/tst-fcntl.c (do_prepare): Likewise. * libio/tst-fopenloc.c (do_bz17916): Likewise. * libio/tst-mmap2-eofsync.c (do_prepare): Likewise. * posix/tst-exec.c (do_prepare): Likewise. * posix/tst-pathconf.c (prepare): Likewise. * posix/tst-spawn.c (do_prepare): Likewise. * posix/tst-truncate.c (do_prepare): Likewise. * rt/tst-aio.c (do_prepare): Likewise. diff --git a/io/test-lfs.c b/io/test-lfs.c index 3088a21..0c91177 100644 --- a/io/test-lfs.c +++ b/io/test-lfs.c @@ -53,7 +53,7 @@ do_prepare (int argc, char *argv[]) struct rlimit64 rlim; name_len = strlen (test_dir); - name = malloc (name_len + sizeof ("/lfsXXXXXX")); + name = xmalloc (name_len + sizeof ("/lfsXXXXXX")); mempcpy (mempcpy (name, test_dir, name_len), "/lfsXXXXXX", sizeof ("/lfsXXXXXX")); diff --git a/io/tst-fcntl.c b/io/tst-fcntl.c index 98a642e..e8782b0 100644 --- a/io/tst-fcntl.c +++ b/io/tst-fcntl.c @@ -47,7 +47,7 @@ do_prepare (int argc, char *argv[]) size_t name_len; name_len = strlen (test_dir); - name = malloc (name_len + sizeof ("/fcntlXXXXXX")); + name = xmalloc (name_len + sizeof ("/fcntlXXXXXX")); mempcpy (mempcpy (name, test_dir, name_len), "/fcntlXXXXXX", sizeof ("/fcntlXXXXXX")); /* Create the temporary file. */ diff --git a/libio/tst-fopenloc.c b/libio/tst-fopenloc.c index 0f7edb6..63ac540 100644 --- a/libio/tst-fopenloc.c +++ b/libio/tst-fopenloc.c @@ -26,9 +26,13 @@ #include #include - static const char inputfile[] = "../iconvdata/testdata/ISO-8859-1"; +static int do_test(void); + +#define TEST_FUNCTION do_test () +#include "../test-skeleton.c" + static int do_bz17916 (void) { @@ -39,7 +43,7 @@ do_bz17916 (void) setrlimit (RLIMIT_STACK, &rl); const size_t sz = 2 * 1024 * 1024; - char *ccs = malloc (sz); + char *ccs = xmalloc (sz); strcpy (ccs, "r,ccs="); memset (ccs + 6, 'A', sz - 6 - 1); ccs[sz - 1] = '\0'; @@ -85,6 +89,3 @@ do_test (void) return do_bz17916 (); } - -#define TEST_FUNCTION do_test () -#include "../test-skeleton.c" diff --git a/libio/tst-mmap2-eofsync.c b/libio/tst-mmap2-eofsync.c index f369965..05dedb8 100644 --- a/libio/tst-mmap2-eofsync.c +++ b/libio/tst-mmap2-eofsync.c @@ -20,7 +20,7 @@ static char *pages; static void do_prepare (void) { - pages = malloc (getpagesize () * 2); + pages = xmalloc (getpagesize () * 2); memset (pages, 'a', getpagesize ()); memset (pages + getpagesize (), 'b', getpagesize ()); diff --git a/login/tst-utmp.c b/login/tst-utmp.c index 2fb20b6..348854a 100644 --- a/login/tst-utmp.c +++ b/login/tst-utmp.c @@ -62,7 +62,7 @@ do_prepare (int argc, char *argv[]) size_t name_len; name_len = strlen (test_dir); - name = malloc (name_len + sizeof ("/utmpXXXXXX")); + name = xmalloc (name_len + sizeof ("/utmpXXXXXX")); mempcpy (mempcpy (name, test_dir, name_len), "/utmpXXXXXX", sizeof ("/utmpXXXXXX")); diff --git a/posix/tst-exec.c b/posix/tst-exec.c index b0b04b5..ef1638a 100644 --- a/posix/tst-exec.c +++ b/posix/tst-exec.c @@ -59,12 +59,12 @@ do_prepare (int argc, char *argv[]) size_t name_len; name_len = strlen (test_dir); - name1 = malloc (name_len + sizeof ("/execXXXXXX")); + name1 = xmalloc (name_len + sizeof ("/execXXXXXX")); mempcpy (mempcpy (name1, test_dir, name_len), "/execXXXXXX", sizeof ("/execXXXXXX")); add_temp_file (name1); - name2 = malloc (name_len + sizeof ("/execXXXXXX")); + name2 = xmalloc (name_len + sizeof ("/execXXXXXX")); mempcpy (mempcpy (name2, test_dir, name_len), "/execXXXXXX", sizeof ("/execXXXXXX")); add_temp_file (name2); diff --git a/posix/tst-pathconf.c b/posix/tst-pathconf.c index 949fc65..4f51ae8 100644 --- a/posix/tst-pathconf.c +++ b/posix/tst-pathconf.c @@ -41,12 +41,7 @@ prepare (void) static const char dir_name[] = "/tst-pathconf.XXXXXX"; size_t dirbuflen = test_dir_len + sizeof (dir_name); - dirbuf = malloc (dirbuflen); - if (dirbuf == NULL) - { - puts ("Out of memory"); - exit (1); - } + dirbuf = xmalloc (dirbuflen); snprintf (dirbuf, dirbuflen, "%s%s", test_dir, dir_name); if (mkdtemp (dirbuf) == NULL) @@ -73,7 +68,7 @@ do_test (void) static const char *fifo_name = "some-fifo"; size_t filenamelen = strlen (dirbuf) + strlen (fifo_name) + 2; - char *filename = malloc (filenamelen); + char *filename = xmalloc (filenamelen); snprintf (filename, filenamelen, "%s/%s", dirbuf, fifo_name); diff --git a/posix/tst-spawn.c b/posix/tst-spawn.c index c046098..6c8d718 100644 --- a/posix/tst-spawn.c +++ b/posix/tst-spawn.c @@ -63,17 +63,17 @@ do_prepare (int argc, char *argv[]) size_t name_len; name_len = strlen (test_dir); - name1 = (char *) malloc (name_len + sizeof ("/spawnXXXXXX")); + name1 = (char *) xmalloc (name_len + sizeof ("/spawnXXXXXX")); mempcpy (mempcpy (name1, test_dir, name_len), "/spawnXXXXXX", sizeof ("/spawnXXXXXX")); add_temp_file (name1); - name2 = (char *) malloc (name_len + sizeof ("/spawnXXXXXX")); + name2 = (char *) xmalloc (name_len + sizeof ("/spawnXXXXXX")); mempcpy (mempcpy (name2, test_dir, name_len), "/spawnXXXXXX", sizeof ("/spawnXXXXXX")); add_temp_file (name2); - name3 = (char *) malloc (name_len + sizeof ("/spawnXXXXXX")); + name3 = (char *) xmalloc (name_len + sizeof ("/spawnXXXXXX")); mempcpy (mempcpy (name3, test_dir, name_len), "/spawnXXXXXX", sizeof ("/spawnXXXXXX")); add_temp_file (name3); diff --git a/posix/tst-truncate.c b/posix/tst-truncate.c index 8f5957f..99bddb3 100644 --- a/posix/tst-truncate.c +++ b/posix/tst-truncate.c @@ -59,7 +59,7 @@ do_prepare (int argc, char *argv[]) #define FNAME2(s) "/" STRINGIFY(s) "XXXXXX" name_len = strlen (test_dir); - name = malloc (name_len + sizeof (FNAME)); + name = xmalloc (name_len + sizeof (FNAME)); mempcpy (mempcpy (name, test_dir, name_len), FNAME, sizeof (FNAME)); add_temp_file (name); diff --git a/rt/tst-aio.c b/rt/tst-aio.c index 9ca3775..1ad9c60 100644 --- a/rt/tst-aio.c +++ b/rt/tst-aio.c @@ -51,7 +51,7 @@ do_prepare (int argc, char *argv[]) size_t name_len; name_len = strlen (test_dir); - name = malloc (name_len + sizeof ("/aioXXXXXX")); + name = xmalloc (name_len + sizeof ("/aioXXXXXX")); mempcpy (mempcpy (name, test_dir, name_len), "/aioXXXXXX", sizeof ("/aioXXXXXX"));