Convert some versions of EXTRACT_{16,32,64}BITS() to inline functions.

It remove the vast majority of strict-aliasing warnings from GCC.
Fix a strict-aliasing GCC warning in getname6(), as the GCC manual suggests.
Merge pull request #320 from tejblum/strict-aliasing-2

Fix a strict-aliasing GCC warning in addrtoname.c
Avoid some warnings from Sun C.

Some versions of Sun C support __attribute__ but don't support the
"unused" or "format" attributes - they don't fail, but they whine a lot.
They also support the "noreturn" attribute, but don't allow it to be
applied to function pointers, only to functions.

Check whether they can be used without warnings, and use them only if
they can.
Merge pull request #317 from tejblum/strict-aliasing

Remove the vast majority of strict-aliasing warnings from GCC.

Make the EXTRACT_ macros inline functions instead.
Merge git://github.com/the-tcpdump-group/tcpdump

Pull changes from the GitHub repository.
Squelch a signed vs. unsigned comparison warning.

(At that point, we've already checked whether rc is < 0, so we know it's
not.)
Some changes didn't make it into 4.4.0.

Fix the CHANGES list by moving some changes that got in after the 4.4.0
release was made into a list for 4.4.1, and add some additional fixes to
that list.
Fix build issues with the OpenFlow printer on some systems.

Don't assume we have <stdint.h>.  Instead, use the AC_TYPE_ macros to
ensure we have the C99 intN_t and uintN_t types; we already include
<inttypes.h> in tcpdump-stdinc.h iff we have it.

Get rid of the structure declarations in openflow-1.0.h, as they have
zero-length arrays (not supported by all the compilers people might be
using) and as

	1) they're only used in sizeof()

and

	2) after each one there's an assertion to check that sizeof()
returns a specific numerical value

so, instead, just #define various _LEN items to those numerical values
and use them.

Add an openflow.h header with a #define for the length of the basic
header, and move the declaration of of10_header_body_print() there.
Adding support for ISO CALM FAST and ETSI GeoNetworking
Sometimes I hate VCSes.  (Forgetting to add new files also happens with SVN.)
OpenFlow 1.0: rewrite without openflow-1.0.h

The first revision of the header file was copied from the original
distribution tarball intact to use sizeof() instead of adding new
constants on one hand and provide structure definitions for a reference
on the other. But as soon as the structures had a portability issue and
were removed in commit a6c16ed, the remaining fragments of the header
don't justify for a file of its own.

This commit maps all relevant bits of the remaining contents of
openflow-1.0.h to constants in print-openflow-1.0.c (all being specific
to version 1.0 of OpenFlow) and removes the file.
fix license boilerplate in openflow.h

openflow.h in tcpdump doesn't belong to the openflow distribution and
shouldn't be attributed to stanford.edu (probably a copy-and-paste
case). Replace with 2-clause BSD.
Improved quality, bug fixes, typos. Added test case
Merge pull request #324 from lykkja/geonet_and_calmfast

Geonet and calmfast
CARP: fix Windows compile error

(the issue was discovered by Gisle Vanem)
netinet/in.h shouldn't be included during a Windows compile. The fix is
to remove the #include from print-carp.c and let tcpdump-stdinc.h do its
job.
CALM FAST/GeoNet: fix Windows compile errors

It didn't work out-of-the box because my MSVC (v16 from Visual C
Express 2010) isn't a C99 compiler; you cannot have code ahead of
declarations.
Don't include <unistd.h>.

On UN*X, <tcpdump-stdinc.h> already includes it; on Windows, it doesn't
exist, and therefore shouldn't be included.

Thanks and a tip of the Hatlo hat to Gisle Vanem for this.