X-Git-Url: http://ftp.carnet.hr/carnet-debian/scm?a=blobdiff_plain;f=src%2Fmonitord%2Fmonitord.c;h=9dbbf13aeef471dc0cb01ca5376adf2d7b18f66c;hb=HEAD;hp=b68d98423510d7cb1bd6173eb4ba11994bbf8f1c;hpb=914feba5d54f979cd5d7e69c349c3d01f630042a;p=ossec-hids.git diff --git a/src/monitord/monitord.c b/src/monitord/monitord.c old mode 100755 new mode 100644 index b68d984..9dbbf13 --- a/src/monitord/monitord.c +++ b/src/monitord/monitord.c @@ -1,87 +1,75 @@ -/* @(#) $Id: monitord.c,v 1.9 2009/06/24 17:06:27 dcid Exp $ */ - /* Copyright (C) 2009 Trend Micro Inc. * All rights reserved. * * This program is a free software; you can redistribute it * and/or modify it under the terms of the GNU General Public - * License (version 3) as published by the FSF - Free Software + * License (version 2) as published by the FSF - Free Software * Foundation */ - - #include "shared.h" #include "monitord.h" +/* Global variables */ +monitor_config mond; + -/* Real monitord global */ void Monitord() { - time_t tm; - struct tm *p; + time_t tm; + struct tm *p; - int today = 0; + int today = 0; int thismonth = 0; int thisyear = 0; - char str[OS_SIZE_1024 +1]; + char str[OS_SIZE_1024 + 1]; - /* Waiting a few seconds to settle */ + /* Wait a few seconds to settle */ sleep(10); - memset(str, '\0', OS_SIZE_1024 +1); - - - /* Getting currently time before starting */ + memset(str, '\0', OS_SIZE_1024 + 1); + + /* Get current time before starting */ tm = time(NULL); - p = localtime(&tm); - + p = localtime(&tm); + today = p->tm_mday; thismonth = p->tm_mon; - thisyear = p->tm_year+1900; - - - - /* Connecting to the message queue - * Exit if it fails. - */ - if((mond.a_queue = StartMQ(DEFAULTQUEUE,WRITE)) < 0) - { + thisyear = p->tm_year + 1900; + + /* Connect to the message queue or exit */ + if ((mond.a_queue = StartMQ(DEFAULTQUEUE, WRITE)) < 0) { ErrorExit(QUEUE_FATAL, ARGV0, DEFAULTQUEUE); } - - /* Sending startup message */ - snprintf(str, OS_SIZE_1024 -1, OS_AD_STARTED); - if(SendMSG(mond.a_queue, str, ARGV0, - LOCALFILE_MQ) < 0) - { + /* Send startup message */ + snprintf(str, OS_SIZE_1024 - 1, OS_AD_STARTED); + if (SendMSG(mond.a_queue, str, ARGV0, + LOCALFILE_MQ) < 0) { merror(QUEUE_SEND, ARGV0); } - /* Main monitor loop */ - while(1) - { + while (1) { tm = time(NULL); p = localtime(&tm); - - /* Checking unavailable agents */ - if(mond.monitor_agents) - { + /* Check for unavailable agents */ + if (mond.monitor_agents) { monitor_agents(); } - + /* Day changed, deal with log files */ - if(today != p->tm_mday) - { + if (today != p->tm_mday) { + /* Generate reports */ + generate_reports(today, thismonth, thisyear); + manage_files(today, thismonth, thisyear); today = p->tm_mday; thismonth = p->tm_mon; - thisyear = p->tm_year+1900; + thisyear = p->tm_year + 1900; } /* We only check every two minutes */ @@ -89,4 +77,3 @@ void Monitord() } } -/* EOF */