hush/init/halt.c

29 lines
635 B
C
Raw Normal View History

/* vi: set sw=4 ts=4: */
1999-10-20 22:08:37 +00:00
/*
* Mini halt implementation for busybox
*
* Copyright (C) 1999-2004 by Erik Andersen <andersen@codepoet.org>
1999-10-20 22:08:37 +00:00
*
* Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
1999-10-20 22:08:37 +00:00
*/
1999-10-05 16:24:54 +00:00
#include <signal.h>
#include <stdlib.h>
#include <unistd.h>
#include <getopt.h>
#include <sys/reboot.h>
#include "busybox.h"
#include "init_shared.h"
1999-10-05 16:24:54 +00:00
extern int halt_main(int argc, char **argv)
1999-10-05 16:24:54 +00:00
{
char *delay; /* delay in seconds before rebooting */
if(bb_getopt_ulflags(argc, argv, "d:", &delay)) {
sleep(atoi(delay));
}
return ENABLE_INIT ? kill(1,SIGUSR1) : bb_shutdown_system(RB_HALT_SYSTEM);
1999-10-05 16:24:54 +00:00
}