/* vi: set sw=4 ts=4: */
/*
 * setlogcons: Send kernel messages to the current console or to console N
 *
 * Copyright (C) 2006 by Jan Kiszka <jan.kiszka@web.de>
 *
 * Based on setlogcons (kbd-1.12) by Andries E. Brouwer
 *
 * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
 */

#include "busybox.h"

extern int setlogcons_main(int argc, char **argv)
{
	struct {
		char fn;
		char subarg;
	} arg;

	arg.fn = 11;    /* redirect kernel messages */
	arg.subarg = 0; /* to specified console (current as default) */

	if (argc == 2)
		arg.subarg = xatoul_range(argv[1], 0, 63);

	if (ioctl(xopen(VC_1, O_RDONLY), TIOCLINUX, &arg))
		bb_perror_msg_and_die("TIOCLINUX");

	return 0;
}
