18c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross/* 28c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * Copyright (c) 1989 The Regents of the University of California. 38c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * All rights reserved. 48c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * 58c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * Redistribution and use in source and binary forms, with or without 68c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * modification, are permitted provided that the following conditions 78c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * are met: 88c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * 1. Redistributions of source code must retain the above copyright 98c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * notice, this list of conditions and the following disclaimer. 108c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * 2. Redistributions in binary form must reproduce the above copyright 118c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * notice, this list of conditions and the following disclaimer in the 128c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * documentation and/or other materials provided with the distribution. 138c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * 3. Neither the name of the University nor the names of its contributors 148c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * may be used to endorse or promote products derived from this software 158c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * without specific prior written permission. 168c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * 178c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 188c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 198c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 208c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 218c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 228c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 238c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 248c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 258c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 268c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 278c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * SUCH DAMAGE. 288c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross */ 298c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross 308c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross#include <sys/types.h> 318c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross#include <signal.h> 328c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross#include <errno.h> 338c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross 348c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross/* 358c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross * Backwards-compatible killpg(). 368c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross */ 378c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Crossint 388c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Crosskillpg(pid_t pgid, int sig) 398c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross{ 408c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross if (pgid == 1) { 418c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross errno = ESRCH; 428c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross return (-1); 438c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross } 448c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross return (kill(-pgid, sig)); 458c59d96e243ba1a05d7d9ab7a14d1a00e20bad4aColin Cross} 46