From 63d42efc9dc3f5cf13856cf08aaa807bfd8982e5 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Fri, 20 Dec 2013 11:50:21 +0100 Subject: initial commit --- nullshell.c | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 nullshell.c (limited to 'nullshell.c') diff --git a/nullshell.c b/nullshell.c new file mode 100644 index 0000000..1c14d7c --- /dev/null +++ b/nullshell.c @@ -0,0 +1,47 @@ +/* + * (C) 2013 by Christian Hesse + * + * This software may be used and distributed according to the terms + * of the GNU General Public License, incorporated herein by reference. + * + * Based on ideas from Sleep Dummy Shell (SleepShell) + * by Mario A. Valdez-Ramirez (http://www.mariovaldez.net/) + */ + +#include +#include +#include + +#define SLEEPTIME 10 + +int main(int argc, char **argv) { + char *ssh_connection, *ssh_client, *ssh_tty; + + /* read environment variables */ + ssh_connection = getenv("SSH_CONNECTION"); + ssh_client = getenv("SSH_CLIENT"); + ssh_tty = getenv("SSH_TTY"); + + /* clear the screen */ + fputs("\033[2J\033[1;1H", stdout); + fflush(NULL); + + /* print some info if available */ + if (ssh_connection != NULL && ssh_client != NULL) { + printf("Connection: %s\nClient: %s\n", ssh_connection, ssh_client); + if (ssh_tty != NULL) + printf("Terminal: %s\n", ssh_tty); + } + + /* print an asterisk every SLEEPTIME seconds */ + while (1) { + sleep(SLEEPTIME); + putchar('*'); + fflush(NULL); + } + + /* we should never get here.... */ + return EXIT_SUCCESS; +} + +// vim: set syntax=c: -- cgit v1.2.3-54-g00ecf