X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Ftests%2Fcreatetest.c;h=17008a84c220ac891e4d1c1c941cdbf53b0c674a;hb=9adc02c016d2c0c1211274cb407637f9b49b4e09;hp=323f2ff8ad9b7a88753c27e3eff668cca15035a8;hpb=70e80ade90af09300396706b8910e196a7928520;p=fs%2Flustre-release.git diff --git a/lustre/tests/createtest.c b/lustre/tests/createtest.c index 323f2ff..17008a8 100644 --- a/lustre/tests/createtest.c +++ b/lustre/tests/createtest.c @@ -1,6 +1,4 @@ -/* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*- - * vim:expandtab:shiftwidth=8:tabstop=8: - * +/* * GPL HEADER START * * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. @@ -16,17 +14,13 @@ * in the LICENSE file that accompanied this code). * * You should have received a copy of the GNU General Public License - * version 2 along with this program; If not, see [sun.com URL with a - * copy of GPLv2]. - * - * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, - * CA 95054 USA or visit www.sun.com if you need additional information or - * have any questions. + * version 2 along with this program; If not, see + * http://www.gnu.org/licenses/gpl-2.0.html * * GPL HEADER END */ /* - * Copyright 2008 Sun Microsystems, Inc. All rights reserved + * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. * Use is subject to license terms. */ /* @@ -67,7 +61,7 @@ int main(int argc, char *argv[]) int mode = i | 0644; int rc; - sprintf(name, "%s-mknod%06o", argv[1], mode); + snprintf(name, sizeof(name), "%s-mknod%07o", argv[1], mode); rc = mknod(name, mode, 0x1234); switch (i) { case 0: @@ -93,18 +87,27 @@ int main(int argc, char *argv[]) argv[0], name, st.st_mode, mode); exit(12); } + if (i == S_IFCHR || i == S_IFBLK) { + if (st.st_rdev != 0x1234) { + fprintf(stderr, "%s: ERROR rdev %s: " + "%llu != 0x1234", + argv[0], name, + (unsigned long long)st.st_rdev); + exit(13); + } + } rc = unlink(name); if (rc < 0) { fprintf(stderr, "%s: ERROR unlink %s: %s", argv[0], name, strerror(errno)); - exit(13); + exit(14); } break; default: if (rc == 0) { fprintf(stderr, "%s: ERROR: %s created\n", argv[0], name); - exit(14); + exit(15); } } } @@ -116,7 +119,7 @@ int main(int argc, char *argv[]) int rc; mode = i | 0644; - sprintf(name, "%s-creat%06o", argv[1], mode); + snprintf(name, sizeof(name), "%s-creat%07o", argv[1], mode); fd = open(name, O_CREAT|O_RDONLY, mode); if (fd < 0) { fprintf(stderr, "%s: ERROR creat %s: %s\n", @@ -147,7 +150,7 @@ int main(int argc, char *argv[]) struct stat st; int rc; - sprintf(name, "%s-mkdir%06o", argv[1], i | 0644); + snprintf(name, sizeof(name), "%s-mkdir%06o", argv[1], i | 0644); rc = mkdir(name, i | 0664); if (rc < 0) { fprintf(stderr, "%s: ERROR mkdir %s: %s\n",