]>
git.ipfire.org Git - thirdparty/suricata.git/log
Victor Julien [Fri, 5 Oct 2012 09:46:05 +0000 (11:46 +0200)]
Enable libhtp 0.3.0 compilation and crash free UT run. Still see 5 failed tests.
Victor Julien [Sat, 13 Jul 2013 18:26:10 +0000 (20:26 +0200)]
Fix sgh mpm flags assignment
Eric Leblond [Fri, 5 Jul 2013 16:06:40 +0000 (18:06 +0200)]
detect-engine: do a direct update of flag
There is no reason not to update the flag directly. So do it
to avoid to crash the test.
Eric Leblond [Fri, 5 Jul 2013 10:33:17 +0000 (12:33 +0200)]
coccinelle: dynamic testing through make check
This patch modify build system to have make to create the
struct-flags.cocci file by running struct-flags.py.
This way 'make check' is running the test defined from source
code.
Eric Leblond [Fri, 5 Jul 2013 10:28:30 +0000 (12:28 +0200)]
coccinelle: add script to generate flags test
This patch adds a script which can be used to generate a test
on coherence of flag usage.
By adding comment in the code, it is possible to declare that we
link a flag in a structure to a specific family of constant:
For example:
/* coccinelle: Packet:flowflags:FLOW_PKT_ */
will trigger the generation on a test which verifies that the
flowflags field in Packet structure is only used with constant
starting by FLOW_PKT_.
Eric Leblond [Fri, 5 Jul 2013 09:16:26 +0000 (11:16 +0200)]
ccccinelle: add formatted comment for flag test
Victor Julien [Thu, 11 Jul 2013 08:36:22 +0000 (10:36 +0200)]
Use relative dir instead of ac_builddir
When generating src/build-info.h the use of ac_builddir was problematic.
There were several cases where it was undefined leading to the absolute
path /src/build-info.h. ./configure should be called from the parent dir
to the actual src dir, so this should work. Make distcheck and normal builds
complete fine.
Victor Julien [Wed, 10 Jul 2013 13:10:32 +0000 (15:10 +0200)]
Autotools: move libhtp conditionals to configure
In preparation of the libhtp upgrade, move all libhtp related conditionals
to configure. This allows for one set of build scripts that works regardless
of the presence of a local libhtp dir.
Victor Julien [Tue, 9 Jul 2013 16:36:54 +0000 (18:36 +0200)]
Generate proper errors if sid,gid,rev values are out of range. Bug #779.
Victor Julien [Tue, 9 Jul 2013 15:47:58 +0000 (17:47 +0200)]
Yaml: give a more detailed error if the user supplies a directory instead of a yaml file. Bug #803.
Victor Julien [Tue, 9 Jul 2013 14:35:50 +0000 (16:35 +0200)]
TLS: create certs dir on 'make install-full'. Bug #711.
Victor Julien [Tue, 9 Jul 2013 14:21:36 +0000 (16:21 +0200)]
TLS: create certs directory during startup if it doesn't exist yet. Bug #710.
Victor Julien [Tue, 9 Jul 2013 12:53:48 +0000 (14:53 +0200)]
TLS: add missing options to shipped yaml. Bug #709.
Victor Julien [Fri, 5 Jul 2013 09:26:06 +0000 (11:26 +0200)]
DNS: rename dns.rules to dns-events.rules, include it in yaml
Eric Leblond [Wed, 19 Jun 2013 09:14:22 +0000 (11:14 +0200)]
nfq: be sure to always verdict packets
To be sure to always verdict packets (bug #769), this patch adds
a ReleaseData function to NFQ packets. The release function simply
drop the packet if it has not been verdicted before.
Victor Julien [Thu, 4 Jul 2013 15:59:16 +0000 (17:59 +0200)]
Print pkt src to alert-debug log
Victor Julien [Tue, 2 Jul 2013 12:44:41 +0000 (14:44 +0200)]
DNS: better handle TX' with lost replies
Victor Julien [Tue, 2 Jul 2013 10:51:42 +0000 (12:51 +0200)]
HTP: free TX from transaction free API call
Victor Julien [Tue, 2 Jul 2013 10:33:11 +0000 (12:33 +0200)]
App layer: clean up TX before lowest active one
Update DNS to handle cleaning up this way.
Victor Julien [Tue, 2 Jul 2013 08:21:04 +0000 (10:21 +0200)]
DNS: suppress log-dns registration message
Victor Julien [Tue, 2 Jul 2013 08:14:59 +0000 (10:14 +0200)]
Applayer: remove obsolete StateUpdateTransactionId
Also, update StateTransactionFree to take an u64 tx id, so it's
consistant with the rest of the engine.
To reflect these changes, AppLayerRegisterTransactionIdFuncs has
been renamed to AppLayerRegisterTxFreeFunc.
HTP, DNS, SMB, DCERPC parsers updated.
Victor Julien [Tue, 2 Jul 2013 07:49:02 +0000 (09:49 +0200)]
DNS: move internal tx id tracking to u64
Victor Julien [Mon, 1 Jul 2013 13:24:50 +0000 (15:24 +0200)]
App layer: add 'StateHasEvents' API call
Per TX decoder events resulted in significant overhead to the
detection engine, as it walked all TX' all the time to check
if decoder events were available.
This commit introduces a new API call StateHasEvents, which speeds
up this process, at the expense of keeping a counter in the state.
Implement this for DNS as well.
Anoop Saldanha [Tue, 2 Jul 2013 14:58:25 +0000 (20:28 +0530)]
remove unused pattern id assignment functions. Goodbye
Anoop Saldanha [Tue, 2 Jul 2013 12:29:17 +0000 (17:59 +0530)]
Update configure.ac to use the default value of 64 for the cache line size
for systems which return a value of 0.
Victor Julien [Fri, 28 Jun 2013 14:49:56 +0000 (16:49 +0200)]
DNS: convert dns_query to sticky buffer
Victor Julien [Fri, 28 Jun 2013 14:24:10 +0000 (16:24 +0200)]
Content: set up sticky buffers like file_data and dce_stub_data w/o flags, but with a list variable
Victor Julien [Mon, 1 Jul 2013 11:39:52 +0000 (13:39 +0200)]
Coverity
1040312 ,
1040313 ,
1040314 1040315 : improve pool thread error handling.
Victor Julien [Mon, 1 Jul 2013 10:03:09 +0000 (12:03 +0200)]
Thread: remove thread id
Victor Julien [Mon, 1 Jul 2013 11:32:02 +0000 (13:32 +0200)]
Stream: use per thread ssn_pool_id instead of thread id.
Victor Julien [Fri, 28 Jun 2013 10:28:51 +0000 (12:28 +0200)]
Improve memory cleanup in some unittests
Victor Julien [Mon, 27 May 2013 08:24:31 +0000 (10:24 +0200)]
Stream: fix unittests after ssn pool changes.
Victor Julien [Wed, 15 May 2013 09:13:36 +0000 (11:13 +0200)]
Stream: use per thread ssn pool
Use per thread pools to store and retrieve SSN's from. Uses PoolThread
API.
Remove max-sessions setting. Pools are set to unlimited, but TCP memcap
limits the amount of sessions.
The prealloc_session settings now applies to each thread, so lowered the
default from 32k to 2k.
Victor Julien [Tue, 14 May 2013 11:14:37 +0000 (13:14 +0200)]
pool: add error msgs and improve memory layout
Victor Julien [Tue, 14 May 2013 11:17:32 +0000 (13:17 +0200)]
pool: add api for per thread pools
This API is a wrapper around the regular pools where the thread pools
are arrays of locks+pools.
Victor Julien [Tue, 14 May 2013 11:14:37 +0000 (13:14 +0200)]
pool: add error msgs and improve memory layout
Victor Julien [Wed, 8 May 2013 11:26:49 +0000 (13:26 +0200)]
Add a per threadvars thread local thread id, that starts at 0 and increments for each thread.
Victor Julien [Fri, 28 Jun 2013 08:06:27 +0000 (10:06 +0200)]
Coverity
1038959 : DNS mpm might use initialized variable
Anoop Saldanha [Fri, 28 Jun 2013 06:14:33 +0000 (11:44 +0530)]
Remove mpm ctxs in the wrong direction.
A lot of http mpm ctxs have now been removed as a result of this.
Anoop Saldanha [Thu, 27 Jun 2013 19:47:28 +0000 (01:17 +0530)]
Update mpm init ctx to not accept the final cuda_rc_module argument.
It was a part of our older architecture and is no longer used.
Victor Julien [Thu, 27 Jun 2013 16:43:37 +0000 (18:43 +0200)]
DNS: fix CUDA build
Victor Julien [Thu, 27 Jun 2013 16:43:22 +0000 (18:43 +0200)]
DNS: fix warning when debug is not enabled
Victor Julien [Thu, 27 Jun 2013 16:21:30 +0000 (18:21 +0200)]
DNS: disable logging by default
Victor Julien [Thu, 2 May 2013 10:01:07 +0000 (12:01 +0200)]
DNS: add support for per TX decoder events.
Victor Julien [Thu, 2 May 2013 10:00:40 +0000 (12:00 +0200)]
app layer: add support for per TX decoder events
Victor Julien [Wed, 24 Apr 2013 12:59:30 +0000 (14:59 +0200)]
Reset app layer events when we start inspecting a new TX
Victor Julien [Wed, 24 Apr 2013 12:02:53 +0000 (14:02 +0200)]
DNS: add test for app layer event match
Victor Julien [Tue, 23 Apr 2013 14:35:13 +0000 (16:35 +0200)]
Merge SIG_FLAG_MPM_HTTP and SIG_FLAG_MPM_DNS into SIG_FLAG_MPM_APPLAYER, do the same for the _NEG variant.
Victor Julien [Tue, 23 Apr 2013 14:19:26 +0000 (16:19 +0200)]
DNS: enable mpm/fast_pattern support for dns_query
Victor Julien [Sun, 21 Apr 2013 11:34:55 +0000 (13:34 +0200)]
DNS: add /F modifier to pcre to inspect DNS query name
Victor Julien [Sat, 20 Apr 2013 17:38:43 +0000 (19:38 +0200)]
DNS: add event rules file
Victor Julien [Sun, 21 Apr 2013 11:12:03 +0000 (13:12 +0200)]
DNS: add unittests for UDP and TCP for dns_query keyword
Victor Julien [Sat, 20 Apr 2013 17:37:05 +0000 (19:37 +0200)]
DNS: adding dns_request content modifier
Victor Julien [Sat, 20 Apr 2013 15:40:14 +0000 (17:40 +0200)]
DNS: add per tx internal id
Add per TX id. Rename transaction_cnt to transaction_max (id) and increment it on tx creation.
Victor Julien [Mon, 25 Mar 2013 16:19:54 +0000 (17:19 +0100)]
Hacks to enable alert dns even though we have dnstcp and dnsudp parsers. Needs proper solution later.
Victor Julien [Fri, 22 Feb 2013 17:17:49 +0000 (18:17 +0100)]
DNS TCP and UDP parser and DNS response logger
Eric Leblond [Mon, 24 Jun 2013 07:58:42 +0000 (09:58 +0200)]
Use PACKET_* macro instead of UPDATE
Setting the ACTION_DROP flag can be done via PACKET_DROP instead
of using PACKET_UPDATE_ACTION.
Eric Leblond [Mon, 24 Jun 2013 07:52:31 +0000 (09:52 +0200)]
decode: factorize macro code
PACKET_* are now wrapper to the newly introduced PACKET_SET_ACTION
macro.
Eric Leblond [Mon, 24 Jun 2013 07:44:46 +0000 (09:44 +0200)]
decode: Packet action start with PACKET
Rename all Packet action macro to have them prefixed by PACKET.
Anoop Saldanha [Thu, 27 Jun 2013 04:36:37 +0000 (10:06 +0530)]
Don't let geoip match on pseudo packets.
Anoop Saldanha [Wed, 26 Jun 2013 11:44:51 +0000 (17:14 +0530)]
Coverity
1038523 : Fix using cuda buffer slice that has been returned to the pool.
Victor Julien [Fri, 19 Apr 2013 16:51:23 +0000 (18:51 +0200)]
stream: detect keep-alive and keep-alive ACK
Victor Julien [Fri, 19 Apr 2013 14:10:21 +0000 (16:10 +0200)]
stream: fix typo in function name
Eric Leblond [Wed, 26 Jun 2013 07:56:11 +0000 (09:56 +0200)]
Coverity
1038106 : fix FP out-of-bond access
A cast during the reading of a configuration variable was invalid
because a 16 bit integer was cast to a 32 bit integer. The called
function is only setting the pointer value to 1 or 0 so there is
no real issue there.
Eric Leblond [Wed, 26 Jun 2013 07:42:33 +0000 (09:42 +0200)]
Coverity:
1038139 suppress sanity check
The sanity check was really useless as the NULL value is checked in
the code flow.
Eric Leblond [Wed, 26 Jun 2013 07:37:08 +0000 (09:37 +0200)]
Coverity
1038515 : check function return
This is more cosmetic than useful but it is cleaner anyway.
Anoop Saldanha [Wed, 26 Jun 2013 07:53:08 +0000 (13:23 +0530)]
Cuda make distcheck fix for cuda-ptxdump.h
Anoop Saldanha [Wed, 26 Jun 2013 07:51:39 +0000 (13:21 +0530)]
Coverity
1038522 : fix memset inside cuda code. Wrong size specified to memset.
Victor Julien [Tue, 25 Jun 2013 15:16:41 +0000 (17:16 +0200)]
Coverity
1038085 : remove 'default' statement in SCErrorToString. This way a warning will be given if an error is defined w/o updating this function.
Victor Julien [Tue, 25 Jun 2013 15:14:02 +0000 (17:14 +0200)]
Coverity
1038092 &
1038093 : remove dead code
Victor Julien [Tue, 25 Jun 2013 15:00:45 +0000 (17:00 +0200)]
Coverity
1038518 : fix wrong error check
Victor Julien [Tue, 25 Jun 2013 12:14:50 +0000 (14:14 +0200)]
Coverity
1038124 : memory leak on 'seq' keyword parsing failure
Victor Julien [Tue, 25 Jun 2013 12:13:04 +0000 (14:13 +0200)]
Coverity
1038123 : memory leak on 'flowint' keyword parsing failure
Victor Julien [Tue, 25 Jun 2013 12:10:25 +0000 (14:10 +0200)]
Coverity
1038116 &
1038117 : memory leaks on 'app-layer-event' keyword parsing failure
Victor Julien [Tue, 25 Jun 2013 12:07:13 +0000 (14:07 +0200)]
Coverity
1038115 : memory leak on 'ack' keyword parsing failure
Victor Julien [Tue, 25 Jun 2013 12:03:38 +0000 (14:03 +0200)]
Coverity
1038113 : possibly out of bounds read
Anoop Saldanha [Thu, 20 Jun 2013 17:56:23 +0000 (23:26 +0530)]
Minor cosmetic changes to the cuda code.
Moved a couple of functions to more cuda relevant files;
Re-structured some data types.
Anoop Saldanha [Mon, 25 Mar 2013 11:55:33 +0000 (17:25 +0530)]
Modified CudaBufferCullCompletedSlices.
Allow readers specify max size of data they want to read.
Anoop Saldanha [Mon, 25 Mar 2013 09:51:09 +0000 (15:21 +0530)]
Add a usleep to CudaBuffer culling process. Would lead to a situation where the thread wouldn't care to yield to others."
Anoop Saldanha [Mon, 25 Mar 2013 09:38:45 +0000 (15:08 +0530)]
Version 1 of AC Cuda.
Anoop Saldanha [Sat, 23 Mar 2013 17:53:47 +0000 (23:23 +0530)]
Version 1 of CudaBuffer API. Introduced to buffer data to the gpu.
This version allows async writes to a buffer by threads. Allows only
sequential reads though.
Anoop Saldanha [Thu, 15 Nov 2012 16:44:36 +0000 (22:14 +0530)]
We call packet and stream mpm as late as possible now. Won't affect the working of the engine.
The rationale behind this is, if we have pkt buffered to the gpu, we'd want
to delay processing the pkt as much as possible.
Anoop Saldanha [Thu, 15 Nov 2012 16:41:34 +0000 (22:11 +0530)]
pool now uses a queue kinda behaviour when getting/inserting data through poolbuckets.
Anoop Saldanha [Sat, 4 Aug 2012 12:44:38 +0000 (18:14 +0530)]
code refactoring. Call mpmprefilter slightly later than where it's called atm
Anoop Saldanha [Thu, 15 Nov 2012 07:54:29 +0000 (13:24 +0530)]
Remove all cuda related code in the engine except for the cuda api wrappers
Anoop Saldanha [Wed, 1 Aug 2012 08:52:49 +0000 (14:22 +0530)]
update cuda API wrappers
Eric Leblond [Fri, 15 Mar 2013 09:24:32 +0000 (10:24 +0100)]
Add one shot run option to suri-graphite.
Eric Leblond [Wed, 13 Mar 2013 09:50:21 +0000 (10:50 +0100)]
Import suri-graphite script
This patch import suri-graphite into suricata contrib directory.
This script reads counters from suricata unix socket and send them
to a Graphite graphing server.
Eric Leblond [Tue, 18 Jun 2013 08:57:19 +0000 (10:57 +0200)]
unix-socket: fix OSX build
MSG_NOSIGNAL is not defined on macOSX and SO_NOSIGPIPE is used
instead.
Eric Leblond [Tue, 11 Jun 2013 13:41:21 +0000 (15:41 +0200)]
action handling: add test to avoid direct access
Direct access to the action field of Packet structure is not
allowed.
Eric Leblond [Tue, 11 Jun 2013 13:08:01 +0000 (15:08 +0200)]
action handling: use macro for test.
Use test macro instead of direct access to action field.
This patch has been obtained by using the following
spatch file:
@@
Packet *p;
expression E;
@@
- p->action & E
+ TEST_PACKET_ACTION(p, E)
Eric Leblond [Tue, 11 Jun 2013 12:52:11 +0000 (14:52 +0200)]
action handling: define and use macros
The action field in Packet structure should not be accessed
directly as the tunneled packet needs to update the root packet
and not the initial packet.
This patch is fixing issue #819 where suricata was not able to
drop fragmented packets in AF_PACKET IPS mode. It also fixes
drop capability for tunneled packets.
Anoop Saldanha [Tue, 4 Jun 2013 19:21:55 +0000 (00:51 +0530)]
Fix magic unittets.
Fix segv, when magic_load() fails due to the non-availability of default
magic files.
Anoop Saldanha [Sun, 16 Jun 2013 17:47:46 +0000 (23:17 +0530)]
Fix wrong casting of htp pointer. Fixed it back to (HTPState *) inside
htp utility functions.
Anoop Saldanha [Sat, 15 Jun 2013 05:52:16 +0000 (11:22 +0530)]
discontinue matching on buffer if urilen returns a match failure.
Victor Julien [Tue, 11 Jun 2013 10:21:25 +0000 (12:21 +0200)]
bytetest: add unittest showing missed detection
Tests recursive and relative negative byte_test matching.
Anoop Saldanha [Thu, 13 Jun 2013 14:54:55 +0000 (20:24 +0530)]
Fix the bug specified in the previous commit.
Bug emanates from byte_test, byte_jump and byte_extract keyword being
unable to handle negative offsets when the inspection pointer is at the
end of the buffer.
Anoop Saldanha [Thu, 13 Jun 2013 14:50:55 +0000 (20:20 +0530)]
Unit-tests exposing a bug in byte_test, byte_jump and byte_extract.
Bug emanates from all the keywords being unable to handle negative offsets
when the inspection pointer is at the end of the buffer.
Victor Julien [Tue, 11 Jun 2013 10:20:37 +0000 (12:20 +0200)]
bytetest: fix debug messages not printing negative offset correctly
Phil Schroeder [Tue, 28 May 2013 04:40:54 +0000 (23:40 -0500)]
Adding an updated doxygen config file, because the old one was created a couple major versions ago.