osmo-pcap (0.0.9) unstable; urgency=medium

  * Fix pcap packet format for 64bit clients. 

 -- Holger Hans Peter Freyther <holger@moiji-mobile.com>  Thu, 03 Dec 2015 22:17:19 +0100

osmo-pcap (0.0.8) unstable; urgency=medium

  * Attempt to work with Jumbo frames up to 9000 bytes
  * Fix wording in the server error message
  * Install cron.daily job that can be changed by the user (e.g. max age of the files) 

 -- Holger Hans Peter Freyther <holger@moiji-mobile.com>  Thu, 03 Dec 2015 20:41:24 +0100

osmo-pcap (0.0.7) unstable; urgency=medium

  * gprs: Do not collect BVC FLOW CONTROL / ACK messages

 -- Holger Hans Peter Freyther <holger@moiji-mobile.com>  Thu, 19 Nov 2015 11:13:55 +0100

osmo-pcap (0.0.6) unstable; urgency=medium

  [ Holger Hans Peter Freyther ]
  * debian: Add changelog entry for 0.0.4
  * debian: Add a osmo-pcap-client init script

  [ Sylvain Munaut ]
  * build: Replace deprecated INCLUDES with AM_CPPFLAGS

  [ Holger Hans Peter Freyther ]
  * gprs: Add a custom GPRS filter
  * gprs: Remove left over for counting llc frames

 -- Holger Hans Peter Freyther <holger@moiji-mobile.com>  Thu, 10 Sep 2015 17:11:32 +0200

osmo-pcap (0.0.5) unstable; urgency=low

  * Add init script for the osmo-pcap tool 

 -- Holger Hans Peter Freyther <holger@moiji-mobile.com>  Thu, 10 Sep 2015 17:10:42 +0200

osmo-pcap (0.0.4) unstable; urgency=low

  * New upstream version.

 -- Holger Hans Peter Freyther <holger@freyther.de>  Wed, 07 Nov 2012 10:11:21 +0100

osmo-pcap (0.0.3) unstable; urgency=low

  * New upstream version.

 -- Holger Hans Peter Freyther <holger@freyther.de>  Tue, 06 Nov 2012 23:41:36 +0100

osmo-pcap (0.0.1) unstable; urgency=low

  * Initial Release.

 -- Holger Hans Peter Freyther <zecke@selfish.org>  Wed, 01 Jun 2011 14:51:32 +0200
