diff options
author | Theo de Raadt <deraadt@cvs.openbsd.org> | 2003-01-19 23:09:24 +0000 |
---|---|---|
committer | Theo de Raadt <deraadt@cvs.openbsd.org> | 2003-01-19 23:09:24 +0000 |
commit | c55c27afc5b3f1669d001934542a2101f49a6648 (patch) | |
tree | 19591eb24d1964dbb293fcc0ee331a9ddb34293f /regress/lib/libc_r/pthread_specific | |
parent | fbd275bc3a6941b17dea61a0bb698f9977e9e5e3 (diff) |
repository move to libpthread
Diffstat (limited to 'regress/lib/libc_r/pthread_specific')
-rw-r--r-- | regress/lib/libc_r/pthread_specific/Makefile | 5 | ||||
-rw-r--r-- | regress/lib/libc_r/pthread_specific/pthread_specific.c | 87 |
2 files changed, 0 insertions, 92 deletions
diff --git a/regress/lib/libc_r/pthread_specific/Makefile b/regress/lib/libc_r/pthread_specific/Makefile deleted file mode 100644 index 93bba05a419..00000000000 --- a/regress/lib/libc_r/pthread_specific/Makefile +++ /dev/null @@ -1,5 +0,0 @@ -# $OpenBSD: Makefile,v 1.1 2002/05/03 10:08:55 wcobb Exp $ - -PROG= pthread_specific - -.include <bsd.regress.mk> diff --git a/regress/lib/libc_r/pthread_specific/pthread_specific.c b/regress/lib/libc_r/pthread_specific/pthread_specific.c deleted file mode 100644 index 7c030bacabc..00000000000 --- a/regress/lib/libc_r/pthread_specific/pthread_specific.c +++ /dev/null @@ -1,87 +0,0 @@ -/* $OpenBSD: pthread_specific.c,v 1.2 2002/06/16 23:05:14 marc Exp $ */ - -/* - * Copyright (c) 2002 CubeSoft Communications, Inc. - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistribution of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Neither the name of CubeSoft Communications, nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS 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 <pthread.h> -#include <pthread_np.h> -#include <stdio.h> -#include <stdlib.h> -#include <unistd.h> -#include "test.h" - -#define NTHREADS 128 - -pthread_key_t key; -int destroy_run = 0; - -void * -run_thread(void *arg) -{ - int i; - - CHECKe(write(STDOUT_FILENO, ".", 1)); - for (i = 0; i < 32767; i++) { - void *p; - - p = pthread_getspecific(key); - if (p == NULL) { - CHECKr(pthread_setspecific(key, pthread_self())); - } else { - ASSERT(p == pthread_self()); - } - fflush(stderr); - } - - return (NULL); -} - -void -destroy_key(void *keyp) -{ - destroy_run++; -} - -int -main() -{ - pthread_t threads[NTHREADS]; - int i; - - CHECKr(pthread_key_create(&key, destroy_key)); - for (i = 0; i < NTHREADS; i++) { - CHECKr(pthread_create(&threads[i], NULL, run_thread, NULL)); - } - for (i = 0; i < NTHREADS; i++) { - CHECKr(pthread_join(threads[i], NULL)); - } - CHECKe(write(STDOUT_FILENO, "\n", 1)); - - CHECKr(pthread_key_delete(key)); - - ASSERT(destroy_run > 0); - - SUCCEED; -} |