Detect L1 cache line size at build time. Fall back to 64 bytes if detection failed.
Fix CLS detection on systems that have getconf, but don't support the LEVEL1_DCACHE_LINESIZE option.
Move fallback to CLS detection to configure script.
Move memset() out of PACKET_INITIALIZE()

The memset() inside PACKET_INITIALIZE() is redundant in some cases and
it is cleaner to do as part of the memory allocation. This simplifies
changes for integrating Tilera mPIPE support because the size of memory
cleared in that case is different from SIZE_OF_PACKET.

For the cases where Packets are directly allocated and then call
PACKET_INITIALIZE() without memset() first, this patch adds memset() calls.

A further change would use GetPacketFromAlloc() directly.
Preserve PKT_ALLOC flag inside PACKET_RECYCLE().

The PKT_ALLOC flag was being cleared by PACKET_RECYCLE(), which could
then result in a packet being pushed back to the Packet ring buffer
incorrectly.
coccinelle: update pkt not set test

This patch updates the test to add the support of initialization
of a Packet via the INITIALIZE macro.
hsbd mpm and packet mpm share same mpm ctx id.

This is a bug emanating from we having a var reference for hsbd mpm,
but failing to initialize it, and we default to using the packet mpm.
Track transaction progress separately for each direction in libhtp.

Currently libhtp tracks it using the same var.  This can lead to misleading
states, since a response can come in without a full request.
Transaction engine redesigned.

Improved accuracy, improved performance.  Performance improvement
noticeable with http heavy traffic and ruleset.

A lot of other cosmetic changes carried out as well.  Wrappers introduced
for a lot of app layer functions.

Failing dce unittests disabled.  Will be reintroduced in the updated dce
engine.

Cross transaction matching taken care of.  FPs emanating from these
matches have now disappeared.  Double inspection of transactions taken
care of as well.
Fix luajit compilation failure introduced by the transaction update.
Fix coverity lock issues reported by transaction update as well.
More lock fixes for the transaction update.  Issues reported by Coverity.
Allow protocols to have both app layer keywords, as well as transaction
based ones.

Our general logic and assumption is protocols either support one of the
above and not have both.
1. Fix assignment of signums, which affected how we used read
   sigs(priority wise) inside staging.

   Previously we would assign signums before sig ordering, and hence the
   order didn't actually reflect the order of the sig in the
   sig_list(assuming sig reordering changed the sig_list).  Staging would
   use the old sig_nums to decide the priority of sigs.
2. Fix sig ordering for flowvar, flowbits, flowint, pktvar sigs.   We have
   introduced a new priority to treat sigs with set + read as lower
   priority compared to set only sigs.
3. Previously we treated sigs with a "priority(keyword)" > another sig's
   priority, as a sig with greater priority than the later.  We have
   reversed it.  Now the sig priority ordering is 1,2,.etc.  Updated
   sigordering unittests to reflect the same.
Removed Signature->order_id and replaced it with Signature->num.
Use PacketGetfromAlloc() for packet allocation instead of SCMalloc.

Only changed in one file for testing.
More PacketGetFromMalloc() to allocate packets.
Clear the PKT_ALLOC flag when storing Packets into the Packet pool.

The PKT_ALLOC flag is set by PacketGetFromAlloc(), which needs to be
cleared for Packets in the Packet Pool, so clear the flag here.
Update configure.ac to detect Tile architecture.

Detect if the architecture supports the Tilera mPipe packet processing
hardware. It it does, add the requried libraries and define HAVE_MPIPE.
luajit flowvar support

This patch adds flowvar support to luajit. It does so by exposing two special
C functions to the luajit scripts: ScFlowvarGet and ScFlowvarSet.
flowvar/flowint: make local function static