Add test verifying that the lexer can handle strings like "\\".

Which, amazingly, it currently cannot.
Correct problem identified by last test.

Thanks, Cliff!
add BandwidthRatedSpliter testie, it currently fails

Signed-off-by: Cliff Frey <cliff@meraki.com>
fix two issues with BandwidthRatedSplitter

It was not calling checked_output_push on output 1.

It was not checking against tb_bandwidth_thresh, causing it to always have a
BURST size of 128kB.

Bug report from Ruetee Chitpranee.

Signed-off-by: Cliff Frey <cliff@meraki.com>
script: add catq/printq/printnq handlers

These allow binary-safe handlercalls.

Specifically, if there is a file containing " foo" that should be passed as an
argument to a handler, and output the results of the handler to a file, it was
impossible before this change (the space at the beginning would be eaten).

now this can be run:
  printnq >output_file my_elt.my_handler $(catq input_file)
CVSucks.
Probably adding $(LIBS) here won't hurt, and it helps Anthony Dempsey.
Add aliasable integer and pointer types.

Becuase they're declared with __attribute__((may_alias)), they do
not cause strict aliasing warnings (and act as expected). Use them
in the packet annotation area, where they are necessary (especially
for GCC 4.7).
Do not supply -rdynamic to compilers that don't support it.
Clear up GCC 4.7 warnings.
Attempt to rewrite some Perl again to avoid 'modifying readonly value' errors.
IPsec: Fix HMAC (at least partially).

Bug report and fix from Markku Savela. This should be in a package.
NS: Schedule at most one timer per expiration time per node.

And prepare for nanosecond precision. Requested by Björn Lichtblau
and Sascha Alexander Jopen. Actually tested sort of.

Also avoid some strict aliasing warnings.
Fix Timestamp (duh!).
Add a little test for Script infinite loops.
ErrorHandler: Support %p{element} as a synonym for %{element}.

Why use %p{element}? Because then GCC will give you a warning if you don't
supply a pointer.

Cliff Frey idea.
Correct printf format string error.

Yay Cliff!
Make comments correct.
EtherAddress: Improve is_broadcast() a bit, add static variant.

Signed-off-by: Eddie Kohler <ekohler@gmail.com>
User-level Click: Support netmap.

With Luigi Rizzo. We look for the netmap header, and if provided, support
"METHOD NETMAP". Netmap is an efficient way to move packets between the
kernel and user level using shared memory packet rings. This checkin
provides basic netmap support for FromDevice and ToDevice.

Signed-off-by: Eddie Kohler <ekohler@gmail.com>