From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tyler Hicks Subject: [PATCH 2/5] Store daemon config pointer in the periodic watcher's private data Date: Wed, 1 Aug 2012 00:00:21 -0700 Message-ID: <1343804424-3172-3-git-send-email-tyhicks@canonical.com> References: <1343804424-3172-1-git-send-email-tyhicks@canonical.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1343804424-3172-1-git-send-email-tyhicks@canonical.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: linux-audit-bounces@redhat.com Errors-To: linux-audit-bounces@redhat.com To: Steve Grubb Cc: linux-audit@redhat.com List-Id: linux-audit@redhat.com In preparation for moving the periodic watcher to auditd-listen.c, periodic_handler() cannot rely on having access to the config global variable. That can be solved by using the private data pointer built into libev watchers. --- src/auditd.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/auditd.c b/src/auditd.c index a5b8b2c..e0ee702 100644 --- a/src/auditd.c +++ b/src/auditd.c @@ -445,7 +445,9 @@ static void netlink_handler(struct ev_loop *loop, struct ev_io *io, static void periodic_handler(struct ev_loop *loop, struct ev_periodic *per, int revents ) { - if (config.tcp_client_max_idle) + struct daemon_conf *config = (struct daemon_conf *) per->data; + + if (config->tcp_client_max_idle) auditd_tcp_listen_check_idle (loop); } @@ -719,6 +721,7 @@ int main(int argc, char *argv[]) ev_periodic_init (&periodic_watcher, periodic_handler, 0, config.tcp_client_max_idle, NULL); + periodic_watcher.data = &config; if (config.tcp_client_max_idle) ev_periodic_start (loop, &periodic_watcher); -- 1.7.9.5