X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=common-src%2Fwaitpid.c;fp=common-src%2Fwaitpid.c;h=0000000000000000000000000000000000000000;hb=d3b2175e084f88c8736ad7073eacbf4670147aec;hp=ee694d418a46c35a15971bacb9152a5e2c6fc9cc;hpb=34197d9f46a5f4e944378cbb65fca32ee0eec7b9;p=debian%2Famanda diff --git a/common-src/waitpid.c b/common-src/waitpid.c deleted file mode 100644 index ee694d4..0000000 --- a/common-src/waitpid.c +++ /dev/null @@ -1,176 +0,0 @@ -/* - -Copyright (c) 1990, 1991, 1992 X Consortium - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -Except as contained in this notice, the name of the X Consortium shall not be -used in advertising or otherwise to promote the sale, use or other dealings -in this Software without prior written authorization from the X Consortium. - - * - * Copyright 1990, 1991, 1992 by UniSoft Group Limited. - * - * Permission to use, copy, modify, distribute, and sell this software and - * its documentation for any purpose is hereby granted without fee, - * provided that the above copyright notice appear in all copies and that - * both that copyright notice and this permission notice appear in - * supporting documentation, and that the name of UniSoft not be - * used in advertising or publicity pertaining to distribution of the - * software without specific, written prior permission. UniSoft - * makes no representations about the suitability of this software for any - * purpose. It is provided "as is" without express or implied warranty. - * - * $XConsortium: waitpid.c,v 1.3 94/04/17 20:59:56 rws Exp $ - */ - -/* modified for Amanda team: - * replaced all occurrences of "int" for status variables with "amwait_t" - * compile only if wait4() is not available; if it is, waitpid() is - * #defined to use wait4 instead. */ - -#include "config.h" - -#ifdef HAVE_WAIT4 -/* some compilers do not't like empty C sources */ -static void foo() {}; - -#else - -#if 1 -#include "amanda.h" -#else -/* these are all included in amanda.h */ -#include -#include -#include -#endif - -#ifdef DEBUG -# include -# define DBP(fmt,arg) (fprintf(stderr, "waitpid(%d): ", currpid), \ - fprintf(stderr, fmt, arg), fflush(stderr)) -#else -# define DBP(fmt,arg) -#endif - -#define MAXTAB 20 - -static struct { - pid_t pid; - amwait_t /*int*/ status; -} savtab[MAXTAB]; -static int ntab = 0; -static pid_t currpid = 0; - -pid_t -waitpid(pid, stat_loc, options) -pid_t pid; -amwait_t /*int*/ *stat_loc; -int options; -{ - int rval, i; - amwait_t /*int*/ local_loc; - - /* Clear the table for each new process */ - if (getpid() != currpid) - { - ntab = 0; - currpid = getpid(); - DBP("clearing table\n", 0); - } - - DBP("waiting for pid %d\n", pid); - - if (options & ~(WNOHANG|WUNTRACED)) - { - errno = EINVAL; - return -1; - } - - if (pid == -1) - { - /* see if any saved */ - for (i=0; i