From 19d701ddf07d855128ded0cf2b573ce468e3bdd6 Mon Sep 17 00:00:00 2001 From: Ashlee Young Date: Wed, 20 Jan 2016 01:10:01 +0000 Subject: Removing Suricata and Audit from source repo, and updated build.sh to avoid building suricata. Will re-address this in C release via tar balls. Change-Id: I3710076f8b7f3313cb3cb5260c4eb0a6834d4f6e Signed-off-by: Ashlee Young --- framework/src/audit/src/delete_all.c | 109 ----------------------------------- 1 file changed, 109 deletions(-) delete mode 100644 framework/src/audit/src/delete_all.c (limited to 'framework/src/audit/src/delete_all.c') diff --git a/framework/src/audit/src/delete_all.c b/framework/src/audit/src/delete_all.c deleted file mode 100644 index 4e0feed1..00000000 --- a/framework/src/audit/src/delete_all.c +++ /dev/null @@ -1,109 +0,0 @@ -/* delete_all.c -- - * Copyright 2005-06, 2008-09,2014 Red Hat Inc., Durham, North Carolina. - * All Rights Reserved. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * Authors: - * Steve Grubb - */ -#include "config.h" -#include -#include -#include - -#include "libaudit.h" -#include "private.h" - -#include "auditctl-llist.h" - -extern int key_match(const struct audit_rule_data *r); - -/* Returns 0 for success and -1 for failure */ -int delete_all_rules(int fd) -{ - int seq, i, rc; - int timeout = 40; /* tenths of seconds */ - struct audit_reply rep; - fd_set read_mask; - llist l; - lnode *n; - - /* list the rules */ - seq = audit_request_rules_list_data(fd); - if (seq <= 0) - return -1; - - FD_ZERO(&read_mask); - FD_SET(fd, &read_mask); - list_create(&l); - - for (i = 0; i < timeout; i++) { - struct timeval t; - - t.tv_sec = 0; - t.tv_usec = 100000; /* .1 second */ - do { - rc = select(fd+1, &read_mask, NULL, NULL, &t); - } while (rc < 0 && errno == EINTR); - // We'll try to read just in case - rc = audit_get_reply(fd, &rep, GET_REPLY_NONBLOCKING, 0); - if (rc > 0) { - /* Reset timeout */ - i = 0; - - /* Don't make decisions based on wrong packet */ - if (rep.nlh->nlmsg_seq != seq) - continue; - - /* If we get done or error, break out */ - if (rep.type == NLMSG_DONE) - break; - - if (rep.type == NLMSG_ERROR && rep.error->error) { - audit_msg(LOG_ERR, - "Error receiving rules list (%s)", - strerror(-rep.error->error)); - return -1; - } - - /* If its not what we are expecting, keep looping */ - if (rep.type != AUDIT_LIST_RULES) - continue; - - if (key_match(rep.ruledata)) - list_append(&l, rep.ruledata, - sizeof(struct audit_rule_data) + - rep.ruledata->buflen); - - } - } - list_first(&l); - n = l.cur; - while (n) { - /* Bounce it right back with delete */ - rc = audit_send(fd, AUDIT_DEL_RULE, n->r, n->size); - if (rc < 0) { - audit_msg(LOG_ERR, "Error deleting rule (%s)", - strerror(-rc)); - return -1; - } - n = list_next(&l); - } - list_clear(&l); - - return 0; -} - -- cgit 1.2.3-korg