Skip to content

Commit

Permalink
Partial change from "xbit" to "flexbit".. ( do not use )
Browse files Browse the repository at this point in the history
  • Loading branch information
beave committed Feb 13, 2019
1 parent eb8cd0e commit 26e783b
Show file tree
Hide file tree
Showing 14 changed files with 264 additions and 265 deletions.
6 changes: 3 additions & 3 deletions src/Makefile.am
Expand Up @@ -29,9 +29,9 @@ AUTOMAKE_OPIONS=foreign no-dependencies subdir-objects
geoip.c \
meta-content.c \
redis.c \
xbit.c \
xbit-mmap.c \
xbit-redis.c \
flexbit.c \
flexbit-mmap.c \
flexbit-redis.c \
flow.c\
aetas.c \
ipc.c \
Expand Down
330 changes: 165 additions & 165 deletions src/xbit-mmap.c → src/flexbit-mmap.c

Large diffs are not rendered by default.

26 changes: 13 additions & 13 deletions src/xbit-mmap.h → src/flexbit-mmap.h
Expand Up @@ -24,24 +24,24 @@

#include "sagan-defs.h"

void Xbit_Set_MMAP( int, char *, char *, int, int, char *, char * );
bool Xbit_Condition_MMAP ( int, char *, char *, int, int, char * );
void Xbit_Cleanup_MMAP( void );
bool Xbit_Count_MMAP( int, char *, char *, char * );
void Flexbit_Set_MMAP( int, char *, char *, int, int, char *, char * );
bool Flexbit_Condition_MMAP ( int, char *, char *, int, int, char * );
void Flexbit_Cleanup_MMAP( void );
bool Flexbit_Count_MMAP( int, char *, char *, char * );

typedef struct _Sagan_Xbit_Track _Sagan_Xbit_Track;
struct _Sagan_Xbit_Track
typedef struct _Sagan_Flexbit_Track _Sagan_Flexbit_Track;
struct _Sagan_Flexbit_Track
{
char xbit_name[64];
int xbit_timeout;
int xbit_srcport;
int xbit_dstport;
char flexbit_name[64];
int flexbit_timeout;
int flexbit_srcport;
int flexbit_dstport;
};

typedef struct _Sagan_IPC_Xbit _Sagan_IPC_Xbit;
struct _Sagan_IPC_Xbit
typedef struct _Sagan_IPC_Flexbit _Sagan_IPC_Flexbit;
struct _Sagan_IPC_Flexbit
{
char xbit_name[64];
char flexbit_name[64];
bool xbit_state;
unsigned char ip_src[MAXIPBIT];
unsigned char ip_dst[MAXIPBIT];
Expand Down
46 changes: 23 additions & 23 deletions src/xbit-redis.c → src/flexbit-redis.c
Expand Up @@ -35,9 +35,9 @@

#include "rules.h"

#include "xbit.h"
#include "xbit-mmap.h"
#include "xbit-redis.h"
#include "flexbit.h"
#include "flexbit-mmap.h"
#include "flexbit-redis.h"
#include "parsers/parsers.h"
#include "redis.h"

Expand Down Expand Up @@ -70,11 +70,11 @@ struct _Sagan_Redis *SaganRedis;
****************************************************************/

/*****************************************************************************
Xbit_Condition_Redis - Test the condition of xbits. For example, "isset"
Flexbit_Condition_Redis - Test the condition of xbits. For example, "isset"
and "isnotset"
*****************************************************************************/

bool Xbit_Condition_Redis(int rule_position, char *ip_src_char, char *ip_dst_char, int src_port, int dst_port, char *selector )
bool Flexbit_Condition_Redis(int rule_position, char *ip_src_char, char *ip_dst_char, int src_port, int dst_port, char *selector )
{

int i;
Expand Down Expand Up @@ -175,7 +175,7 @@ bool Xbit_Condition_Redis(int rule_position, char *ip_src_char, char *ip_dst_cha
else if ( rulestruct[rule_position].xbit_direction[i] == 1 )
{

if ( debug->debugxbit )
if ( debug->debugflexbit )
{
Sagan_Log(DEBUG, "[%s, line %d] \"isset\" xbit \"%s\" (direction: \"both\"). (%s -> %s)", __FILE__, __LINE__, tmp_xbit_name, ip_src_char, ip_dst_char);
}
Expand All @@ -197,7 +197,7 @@ bool Xbit_Condition_Redis(int rule_position, char *ip_src_char, char *ip_dst_cha
if ( rulestruct[rule_position].xbit_type[i] == 3 )
{

if ( debug->debugxbit )
if ( debug->debugflexbit )
{
Sagan_Log(DEBUG, "[%s, line %d] Found xbit '%s' for 'isset'.", __FILE__, __LINE__, tmp_xbit_name );
}
Expand All @@ -207,7 +207,7 @@ bool Xbit_Condition_Redis(int rule_position, char *ip_src_char, char *ip_dst_cha
if ( and_or == OR || and_or == NONE )
{

if ( debug->debugxbit )
if ( debug->debugflexbit )
{
Sagan_Log(DEBUG, "[%s, line %d] '|' set or only one xbit used, returning TRUE", __FILE__, __LINE__, tmp_xbit_name );
}
Expand All @@ -232,7 +232,7 @@ bool Xbit_Condition_Redis(int rule_position, char *ip_src_char, char *ip_dst_cha
if ( rulestruct[rule_position].xbit_type[i] == 4 )
{

if ( debug->debugxbit )
if ( debug->debugflexbit )
{
Sagan_Log(DEBUG, "[%s, line %d] Did not find xbit '%s' for 'isnotset'.", __FILE__, __LINE__, tmp_xbit_name );
}
Expand All @@ -242,7 +242,7 @@ bool Xbit_Condition_Redis(int rule_position, char *ip_src_char, char *ip_dst_cha
if ( and_or == AND || and_or == NONE )
{

if ( debug->debugxbit )
if ( debug->debugflexbit )
{
Sagan_Log(DEBUG, "[%s, line %d] AND in isnotset, returning TRUE.", __FILE__, __LINE__, tmp_xbit_name );
}
Expand Down Expand Up @@ -308,7 +308,7 @@ bool Xbit_Condition_Redis(int rule_position, char *ip_src_char, char *ip_dst_cha
if ( and_or == OR || and_or == NONE )
{

if ( debug->debugxbit )
if ( debug->debugflexbit )
{

Sagan_Log(DEBUG, "[%s, line %d] xbit found, return TRUE", __FILE__, __LINE__ );
Expand Down Expand Up @@ -336,7 +336,7 @@ bool Xbit_Condition_Redis(int rule_position, char *ip_src_char, char *ip_dst_cha
if ( and_or == AND || and_or == NONE )
{

if ( debug->debugxbit )
if ( debug->debugflexbit )
{
Sagan_Log(DEBUG, "[%s, line %d] Single xbit or '&' found in xbit set. Returning TRUE", __FILE__, __LINE__ );
}
Expand Down Expand Up @@ -382,7 +382,7 @@ bool Xbit_Condition_Redis(int rule_position, char *ip_src_char, char *ip_dst_cha
if ( ( rulestruct[rule_position].xbit_condition_count == xbit_total_match ) || ( and_or == OR && xbit_total_match != 0 ) )
{

if ( debug->debugxbit)
if ( debug->debugflexbit)
{
Sagan_Log(DEBUG, "[%s, line %d] Condition of xbit returning TRUE. %d %d", __FILE__, __LINE__, rulestruct[rule_position].xbit_condition_count, xbit_total_match);
}
Expand All @@ -392,7 +392,7 @@ bool Xbit_Condition_Redis(int rule_position, char *ip_src_char, char *ip_dst_cha

/* isset/isnotset failed. */

if ( debug->debugxbit)
if ( debug->debugflexbit)
{
Sagan_Log(DEBUG, "[%s, line %d] Condition of xbit returning FALSE. Needed %d but got %d.", __FILE__, __LINE__, rulestruct[rule_position].xbit_condition_count, xbit_total_match);
}
Expand All @@ -401,10 +401,10 @@ bool Xbit_Condition_Redis(int rule_position, char *ip_src_char, char *ip_dst_cha
}

/*****************************************************************************
* Xbit_Set_Redis - This will "set" and "unset" xbits in Redis
* Flexbit_Set_Redis - This will "set" and "unset" xbits in Redis
*****************************************************************************/

void Xbit_Set_Redis(int rule_position, char *ip_src_char, char *ip_dst_char, int src_port, int dst_port, char *selector, _Sagan_Proc_Syslog *SaganProcSyslog_LOCAL )
void Flexbit_Set_Redis(int rule_position, char *ip_src_char, char *ip_dst_char, int src_port, int dst_port, char *selector, _Sagan_Proc_Syslog *SaganProcSyslog_LOCAL )
{

time_t t;
Expand Down Expand Up @@ -439,7 +439,7 @@ void Xbit_Set_Redis(int rule_position, char *ip_src_char, char *ip_dst_char, int

if ( debug->debugredis )
{
Sagan_Log(DEBUG, "[%s, line %d] Redis Xbit Xbit_Set_Redis()", __FILE__, __LINE__);
Sagan_Log(DEBUG, "[%s, line %d] Redis FLexbit Flexbit_Set_Redis()", __FILE__, __LINE__);
}

snprintf(fullsyslog_orig, sizeof(fullsyslog_orig), "%s|%s|%s|%s|%s|%s|%s|%s|%s",
Expand Down Expand Up @@ -493,7 +493,7 @@ void Xbit_Set_Redis(int rule_position, char *ip_src_char, char *ip_dst_char, int

/* First, clean up */

Xbit_Cleanup_Redis(tmp_xbit_name, utime, notnull_selector, ip_src_char, ip_dst_char);
Flexbit_Cleanup_Redis(tmp_xbit_name, utime, notnull_selector, ip_src_char, ip_dst_char);

utime_plus_timeout = utime + rulestruct[rule_position].xbit_timeout[i];

Expand Down Expand Up @@ -558,7 +558,7 @@ void Xbit_Set_Redis(int rule_position, char *ip_src_char, char *ip_dst_char, int
if ( redis_msgslot < config->redis_max_writer_threads )
{

Xbit_Cleanup_Redis(tmp_xbit_name, utime, notnull_selector, ip_src_char, ip_dst_char);
Flexbit_Cleanup_Redis(tmp_xbit_name, utime, notnull_selector, ip_src_char, ip_dst_char);

snprintf(SaganRedis[redis_msgslot].redis_command, sizeof(SaganRedis[redis_msgslot].redis_command),

Expand Down Expand Up @@ -594,7 +594,7 @@ void Xbit_Set_Redis(int rule_position, char *ip_src_char, char *ip_dst_char, int
if ( redis_msgslot < config->redis_max_writer_threads )
{

Xbit_Cleanup_Redis(tmp_xbit_name, utime, notnull_selector, ip_src_char, ip_dst_char);
Flexbit_Cleanup_Redis(tmp_xbit_name, utime, notnull_selector, ip_src_char, ip_dst_char);

snprintf(SaganRedis[redis_msgslot].redis_command, sizeof(SaganRedis[redis_msgslot].redis_command),
"ZREM %s%s:by_src %s",
Expand Down Expand Up @@ -627,7 +627,7 @@ void Xbit_Set_Redis(int rule_position, char *ip_src_char, char *ip_dst_char, int
if ( redis_msgslot < config->redis_max_writer_threads )
{

Xbit_Cleanup_Redis(tmp_xbit_name, utime, notnull_selector, ip_src_char, ip_dst_char);
Flexbit_Cleanup_Redis(tmp_xbit_name, utime, notnull_selector, ip_src_char, ip_dst_char);

snprintf(SaganRedis[redis_msgslot].redis_command, sizeof(SaganRedis[redis_msgslot].redis_command),
"ZREM %s%s:by_dst %s",
Expand Down Expand Up @@ -659,11 +659,11 @@ void Xbit_Set_Redis(int rule_position, char *ip_src_char, char *ip_dst_char, int
}

/*****************************************************************************
* Xbit_Cleanup_Redis - Cleans up old/stale xbits from Redis
* Flexbit_Cleanup_Redis - Cleans up old/stale xbits from Redis
*****************************************************************************/


void Xbit_Cleanup_Redis( char *xbit_name, uint32_t utime, char *notnull_selector, char *ip_src_char, char *ip_dst_char )
void Flexbit_Cleanup_Redis( char *xbit_name, uint32_t utime, char *notnull_selector, char *ip_src_char, char *ip_dst_char )
{

if ( redis_msgslot < config->redis_max_writer_threads )
Expand Down
6 changes: 3 additions & 3 deletions src/xbit-redis.h → src/flexbit-redis.h
Expand Up @@ -19,7 +19,7 @@
*/


void Xbit_Set_Redis( int rule_position, char *ip_src_char, char *ip_dst_char, int src_port, int dst_port, char *selector, _Sagan_Proc_Syslog *SaganProcSyslog_LOCAL );
bool Xbit_Condition_Redis( int rule_position, char *ip_src_char, char *ip_dst_char, int src_port, int dst_port, char *selector );
void Xbit_Cleanup_Redis( char *xbit_name, uint32_t utime, char *notnull_selector, char *ip_src_char, char *ip_dst_char );
void Flexbit_Set_Redis( int rule_position, char *ip_src_char, char *ip_dst_char, int src_port, int dst_port, char *selector, _Sagan_Proc_Syslog *SaganProcSyslog_LOCAL );
bool Flexbit_Condition_Redis( int rule_position, char *ip_src_char, char *ip_dst_char, int src_port, int dst_port, char *selector );
void Flexbit_Cleanup_Redis( char *xbit_name, uint32_t utime, char *notnull_selector, char *ip_src_char, char *ip_dst_char );

24 changes: 12 additions & 12 deletions src/xbit.c → src/flexbit.c
Expand Up @@ -37,63 +37,63 @@
#include "sagan-defs.h"
#include "sagan-config.h"

#include "xbit.h"
#include "xbit-mmap.h"
#include "flexbit.h"
#include "flexbit-mmap.h"

#ifdef HAVE_LIBHIREDIS

#include "redis.h"
#include "xbit-redis.h"
#include "flexbit-redis.h"

#endif

struct _SaganConfig *config;

bool Xbit_Condition(int rule_position, char *ip_src_char, char *ip_dst_char, int src_port, int dst_port, char *selector )
bool Flexbit_Condition(int rule_position, char *ip_src_char, char *ip_dst_char, int src_port, int dst_port, char *selector )
{

#ifdef HAVE_LIBHIREDIS

if ( config->redis_flag && config->xbit_storage == XBIT_STORAGE_REDIS )
{

return(Xbit_Condition_Redis(rule_position, ip_src_char, ip_dst_char, src_port, dst_port, selector));
return(Flexbit_Condition_Redis(rule_position, ip_src_char, ip_dst_char, src_port, dst_port, selector));
}

#endif

return(Xbit_Condition_MMAP(rule_position, ip_src_char, ip_dst_char, src_port, dst_port, selector));
return(Flexbit_Condition_MMAP(rule_position, ip_src_char, ip_dst_char, src_port, dst_port, selector));

}


bool Xbit_Count( int rule_position, char *ip_src_char, char *ip_dst_char, char *selector )
bool Flexbit_Count( int rule_position, char *ip_src_char, char *ip_dst_char, char *selector )
{

return(Xbit_Count_MMAP(rule_position, ip_src_char, ip_dst_char, selector ));
return(Flexbit_Count_MMAP(rule_position, ip_src_char, ip_dst_char, selector ));

}

void Xbit_Set(int rule_position, char *ip_src_char, char *ip_dst_char, int src_port, int dst_port, char *selector, _Sagan_Proc_Syslog *SaganProcSyslog_LOCAL )
void Flexbit_Set(int rule_position, char *ip_src_char, char *ip_dst_char, int src_port, int dst_port, char *selector, _Sagan_Proc_Syslog *SaganProcSyslog_LOCAL )
{

#ifdef HAVE_LIBHIREDIS

if ( config->redis_flag && config->xbit_storage == XBIT_STORAGE_REDIS )
{

Xbit_Set_Redis(rule_position, ip_src_char, ip_dst_char, src_port, dst_port, selector, SaganProcSyslog_LOCAL );
Flexbit_Set_Redis(rule_position, ip_src_char, ip_dst_char, src_port, dst_port, selector, SaganProcSyslog_LOCAL );
return;
}

#endif

Xbit_Set_MMAP(rule_position, ip_src_char, ip_dst_char, src_port, dst_port, selector, SaganProcSyslog_LOCAL->syslog_message );
Flexbit_Set_MMAP(rule_position, ip_src_char, ip_dst_char, src_port, dst_port, selector, SaganProcSyslog_LOCAL->syslog_message );

}


int Xbit_Type ( char *type, int linecount, const char *ruleset )
int Flexbit_Type ( char *type, int linecount, const char *ruleset )
{

if (!strcmp(type, "none"))
Expand Down
8 changes: 4 additions & 4 deletions src/xbit.h → src/flexbit.h
Expand Up @@ -18,9 +18,9 @@
** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/

int Xbit_Type ( char *, int, const char *);
bool Xbit_Condition ( int, char *, char *, int, int, char * );
bool Xbit_Count ( int, char *, char *, char * );
void Xbit_Set(int, char *, char *, int,int, char *, _Sagan_Proc_Syslog * );
int Flexbit_Type ( char *, int, const char *);
bool Flexbit_Condition ( int, char *, char *, int, int, char * );
bool Flexbit_Count ( int, char *, char *, char * );
void Flexbit_Set(int, char *, char *, int,int, char *, _Sagan_Proc_Syslog * );


0 comments on commit 26e783b

Please sign in to comment.