 /*
 |  Send a signal to a process
 |  Basically a user-level interface to kill()
*/

#include <sys/unix.h>
#include <calls.h>

#define	stdin	0
#define	stdout	1
#define	stderr	2

extern int ERRNO;

int main( argc, argv )
int	argc;
char	*argv[];
{
	int	signum, pid;

	if( argc != 3 )
	{
		fprintf(stderr,"usage: kill -signal pid\n");
		return(-1);
	}

	signum = -(atoi(argv[1]));
	if( (signum<0) || (signum>15) )
	{
		fprintf(stderr,"kill: signal must be between 0 and 15\n");
		return(-1);
	}

	pid = atoi(argv[2]);
	if( (pid<0) || (pid>32000) )
	{
		fprintf(stderr,"kill: pid must be from 1 to 32000\n");
		return(-1);
	}

	kill( pid, signum );

	if( ERRNO )
	{
		fprintf(stderr,"kill: failed (%i)\n",ERRNO);
		return(-1);
	}

	return(0);
}

