From 999d9343fa00efb4ad9b30bd96bfaaac0abe2afe Mon Sep 17 00:00:00 2001 From: asomers Date: Thu, 13 Feb 2014 22:19:24 +0000 Subject: MFC r261081, r261133, and r261615 r261081 Replace the old unix_seqpacket and unix_seqpacket_exercise tests, which were a little broken and not automatable, with unix_seqpacket_test. It's coverage is a superset of the old tests and it uses ATF. It includes test cases for bugs kern/185813 and kern/185812. r261133 Fix the Makefiles so that the tests I submitted in r261081 will actually get built. r261615 tests/sys/Makefile use TESTS_SUBDIRS for kern instead of SUBDIRS. I don't think it makes a difference in this case, but TESTS_SUBDIRS is generally correct for subdirectories that contain tests. --- .../sockets/unix_seqpacket/unix_seqpacket.c | 140 --------------------- 1 file changed, 140 deletions(-) delete mode 100644 tools/regression/sockets/unix_seqpacket/unix_seqpacket.c (limited to 'tools/regression/sockets/unix_seqpacket/unix_seqpacket.c') diff --git a/tools/regression/sockets/unix_seqpacket/unix_seqpacket.c b/tools/regression/sockets/unix_seqpacket/unix_seqpacket.c deleted file mode 100644 index 40baa64..0000000 --- a/tools/regression/sockets/unix_seqpacket/unix_seqpacket.c +++ /dev/null @@ -1,140 +0,0 @@ -/*- - * Copyright (c) 2009 Robert N. M. Watson - * All rights reserved. - * - * This software was developed at the University of Cambridge Computer - * Laboratory with support from a grant from Google, Inc. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#include -__FBSDID("$FreeBSD$"); - -#include -#include - -#include -#include -#include -#include -#include -#include - -#define FAILERR(str) err(-1, "%s: %s", __func__, str) -#define FAILERRX(str) errx(-1, "%s: %s", __func__, str) - -static void -test_socket(void) -{ - int s; - - s = socket(PF_LOCAL, SOCK_SEQPACKET, 0); - if (s < 0) - FAILERR("socket"); - (void)close(s); -} - -static void -test_socketpair(void) -{ - int sv[2]; - - if (socketpair(PF_LOCAL, SOCK_SEQPACKET, 0, sv) < 0) - FAILERR("socketpair"); - (void)close(sv[0]); - (void)close(sv[1]); -} - -static void -test_listen_unbound(void) -{ - int s; - - s = socket(PF_LOCAL, SOCK_SEQPACKET, 0); - if (s < 0) - FAILERR("socket"); - if (listen(s, -1) == 0) - FAILERRX("listen"); - (void)close(s); -} - -static void -test_bind(void) -{ - struct sockaddr_un sun; - char path[PATH_MAX]; - int s; - - snprintf(path, sizeof(path), "/tmp/lds.XXXXXXXXX"); - if (mktemp(path) == NULL) - FAILERR("mktemp"); - s = socket(PF_LOCAL, SOCK_SEQPACKET, 0); - if (s < 0) - FAILERR("socket"); - bzero(&sun, sizeof(sun)); - sun.sun_family = AF_LOCAL; - sun.sun_len = sizeof(sun); - strlcpy(sun.sun_path, path, sizeof(sun.sun_path)); - if (bind(s, (struct sockaddr *)&sun, sizeof(sun)) < 0) - FAILERR("bind"); - close(s); - (void)unlink(path); -} - -static void -test_listen_bound(void) -{ - struct sockaddr_un sun; - char path[PATH_MAX]; - int s; - - snprintf(path, sizeof(path), "/tmp/lds.XXXXXXXXX"); - if (mktemp(path) == NULL) - FAILERR("mktemp"); - s = socket(PF_LOCAL, SOCK_SEQPACKET, 0); - if (s < 0) - FAILERR("socket"); - bzero(&sun, sizeof(sun)); - sun.sun_family = AF_LOCAL; - sun.sun_len = sizeof(sun); - strlcpy(sun.sun_path, path, sizeof(sun.sun_path)); - if (bind(s, (struct sockaddr *)&sun, sizeof(sun)) < 0) - FAILERR("bind"); - if (listen(s, -1)) { - (void)unlink(path); - FAILERR("bind"); - } - close(s); - (void)unlink(path); -} - -int -main(int argc, char *argv[]) -{ - - test_socket(); - test_socketpair(); - test_listen_unbound(); - test_bind(); - test_listen_bound(); -} -- cgit v1.1