/*
	slspoof.c: syslog spoofer
	
	author: bensoa (aedinius)
	
	readme: rename the exec to the name of any program and call it, "program 'notice message here'".
*/
#include<syslog.h>
#include<varargs.h>
#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int main(int argc, char **argv)
{
	char *entry;
	if(argc != 3)
	{
		printf("%s%s%s%s%s%s%s%s%s%s",
			"usage: slspoof [e|a|c|w|n|i|d|r] <entry>\n\n",
			"priorities:\n",
			"\te: Emergency\n",
			"\ta: Alert\n",
			"\tc: Critical\n",
			"\tr: Error\n",
			"\tw: Warning\n",
			"\tn: Notice\n",
			"\ti: Information\n",
			"\td: Debug\n\n"
			"Refer to syslog(3) for more information on priorities.\n");
		return EXIT_SUCCESS;
	}
	switch(argv[1][0])
	{
		case 'e':
			syslog(LOG_EMERG,"%s",argv[2]);
			break;
		case 'a':
			syslog(LOG_ALERT,"%s",argv[2]);
			break;
		case 'c':
			syslog(LOG_CRIT,"%s",argv[2]);
			break;
		case 'r':
			syslog(LOG_ERR,"%s",argv[2]);
			break;
		case 'w':
			syslog(LOG_WARNING,"%s",argv[2]);
			break;
		case 'n':
			syslog(LOG_NOTICE,"%s",argv[2]);
			break;
		case 'i':
			syslog(LOG_INFO,"%s",argv[2]);
			break;
		case 'd':
			syslog(LOG_DEBUG,"%s",argv[2]);
			break;
		default:
			printf("%s: %c is not a valid priority.\n",argv[0],argv[1][0]);
			break;
	}
	return EXIT_SUCCESS;
}
