busybox/init/halt.c

29 lines
635 B
C
Raw Normal View History

/* vi: set sw=4 ts=4: */
1999-10-21 03:38:37 +05:30
/*
* Mini halt implementation for busybox
*
* Copyright (C) 1999-2004 by Erik Andersen <andersen@codepoet.org>
1999-10-21 03:38:37 +05:30
*
* Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
1999-10-21 03:38:37 +05:30
*/
1999-10-05 21:54:54 +05:30
#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 21:54:54 +05:30
extern int halt_main(int argc, char **argv)
1999-10-05 21:54:54 +05:30
{
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 21:54:54 +05:30
}