Added a test for the syslog functionality.

git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5336 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Axel Dörfler 2003-11-12 16:37:46 +00:00
parent 0edba5de96
commit 21f3abb2b4
3 changed files with 62 additions and 0 deletions

View File

@ -1,3 +1,4 @@
SubDir OBOS_TOP src tests kernel libroot ;
SubInclude OBOS_TOP src tests kernel libroot os ;
SubInclude OBOS_TOP src tests kernel libroot posix ;

View File

@ -0,0 +1,12 @@
SubDir OBOS_TOP src tests kernel libroot posix ;
UsePrivateHeaders syslog_daemon ;
SimpleTest SyslogTest
: SyslogTest.cpp syslog.cpp
;
# Tell Jam where to find these sources
SEARCH on [ FGristFiles
syslog.cpp
] = [ FDirName $(OBOS_TOP) src kernel libroot posix ] ;

View File

@ -0,0 +1,49 @@
/*
** Copyright 2003, Axel Dörfler, axeld@pinc-software.de. All rights reserved.
** Distributed under the terms of the OpenBeOS License.
*/
#include <syslog_daemon.h>
#include <OS.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <syslog.h>
int
main(int argc, char **argv)
{
port_id port = find_port(SYSLOG_PORT_NAME);
if (port < B_OK)
fprintf(stderr, "The (new) syslog_daemon should be running!\n");
openlog_team("SyslogTest", LOG_PID, LOG_USER);
log_team(LOG_ERR, "this is %.", "a test");
int mask = setlogmask_team(LOG_MASK(LOG_CRIT));
printf("team mask == %d\n", mask);
log_team(LOG_WARNING, "this is a warning (hidden)");
log_team(LOG_CRIT, "this is a critical condition (visible)");
setlogmask(mask);
syslog(LOG_WARNING, "thread warning (visible)");
syslog(LOG_CRIT, "thread critical condition (visible)");
setlogmask(LOG_MASK(LOG_WARNING));
log_team(LOG_WARNING | LOG_MAIL, "2. this is a warning from the MAIL facility (visible)");
log_team(LOG_CRIT, "2. this is a critical condition (visible)");
openlog(NULL, LOG_PERROR, LOG_USER);
syslog(LOG_WARNING, "thread/perror warning (visible in stderr as well)");
syslog(LOG_CRIT, "thread/perror critical condition (hidden)");
openlog(NULL, LOG_CONS, LOG_DAEMON);
syslog(LOG_WARNING, "thread/cons warning (visible in stderr only when there is no syslog_daemon)");
return 0;
}