#13795: Initial commit for sflphone-android

includes: libexpat libyaml libdbus-c++ commoncpp ccrtp
          libdbus (from android-4.0.4 sources)

TODO:
- git ignores "/jni/sflphone", sflphone repo should be cloned.
- sflphone-android only needs daemon directory. Ideally it should be possible
to clone it without cloning the whole sflphone project.
into sfl-android (commit 6a0fa7a "#13961: Fix cipher handling" has been used here)
- add pjsip-android project as a git submodule
- sflphone-android needs pjsip android project. Ideally daemon git repository
should not embed pjsip. Instead pjsip should be clone from official repositories.

Considering this, structure should have three distincts git repos:

sflphone-android/.git
sflphone-android/jni/ccrtp-1.8.0-android
sflphone-android/jni/commoncpp2-1.8.1-android
sflphone-android/jni/dbus
sflphone-android/jni/libdbus-c++-0.9.0-android
sflphone-android/jni/libexpat
sflphone-android/jni/libyaml

sflphone-android/jni/sflphone-daemon/.git
sflphone-android/jni/sflphone-daemon/src/audio
sflphone-android/jni/sflphone-daemon/src/config
sflphone-android/jni/sflphone-daemon/src/dbus
sflphone-android/jni/sflphone-daemon/src/history
sflphone-android/jni/sflphone-daemon/src/hooks
sflphone-android/jni/sflphone-daemon/src/iax
sflphone-android/jni/sflphone-daemon/src/sip
sflphone-android/jni/sflphone-daemon/src/video

sflphone-android/jni/pjsip-android/.git

Signed-off-by: Emeric Vigier <emeric.vigier@savoirfairelinux.com>
diff --git a/jni/ccrtp-1.8.0-android/ChangeLog b/jni/ccrtp-1.8.0-android/ChangeLog
new file mode 100644
index 0000000..a761dee
--- /dev/null
+++ b/jni/ccrtp-1.8.0-android/ChangeLog
@@ -0,0 +1,960 @@
+2010-12-04  Werner Dittmann
+
+	Added a new method to RTPPacket and modified the takeInData to fix 
+	the handling of padding in case SRTP is active. SRTP encrypts the 
+	full payload including the padded bytes thus at the receiving end 
+	this would give the wrong number of bytes added to the payload.
+
+2010-10-04  David Sugar <dyfet@gnutelephony.org>
+
+	More code cleanup for new 1.7.1 release.
+
+2008-12-12  David Sugar <dyfet@gnutelephony.org>
+
+	General code cleanup and pedantic check for what will be release 1.7.0.
+
+2008-08-20  David Sugar <dyfet@gnutelephony.org>
+
+	Taking in debian gcc-4.3 cleanness patch and upstream patches...
+
+2008-06-01  David Sugar <dyfet@gnutelephony.org>
+
+	For release 1.6.1: Crypto context fixes and updates from Werner
+	Dittmann, timestamp calculation issues as reported on list, and a gcc 
+	4.3 issue I found.
+
+2007-11-16  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/ccrtp/rtcppkt.cpp: fixed switched member in
+	RTCPSenderInfo::getPacketCount and RTCPSenderInfo::getOctetCount
+	(patch from Mattias Seeman). Added better constructor to
+	RTCPReceiverInfo and RTCPSenderInfo.
+
+2007-10-29  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/rtcppkt.cpp: (NTP2Timeval(uint32, uint32): fixed bug in
+	tf_usec field computation (reported by Martin Runge).
+
+2007-10-24  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/outqueue.cpp: fixed removeDestinationFromList and
+	removeDestinationFromListIPV6 (ncrement on an undefined iterator
+	bug reported by Martin Mainka).
+
+2006-12-30  David Sugar <dyfet@gnutelephony.org>
+
+	Recent changes known: SRTP support can now be disabled cleanly in
+	configure; support for sending packets to IPV6 networks (IPV6 
+	receive not working yet).  This will be part of a 1.5.1 release.
+
+2006-10-01  David Sugar <dyfet@gnutelephony.org>
+
+	Prep for release 1.5.0 with Werner Dittman's SRTP changes merged.
+
+2006-09-16  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/ccrtp/rtp.h: (Template class TRTPSessionBase): setMcastTTL
+	moved to public section so that users have a way of setting TTL
+	(pointed out by Tom Anwyll). joinGroup() and leaveGroup() moved to
+	the protected section.
+
+	* src/ccrtp/channel.h: (Template classes DualRTPChannel and
+	DualRTPChannelIPV6): fixed bugs in setMulticast (only recv socket
+	was set) and setTimeToLive (ttl of the recv socket was changed
+	instead of changing the send ttl).
+	
+2006-09-11  David Sugar <dyfet@gnutelephony.org>
+
+	* configure: Updated to use pkgconfig instead of older Common C++
+	macro.
+
+2006-07-25  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* Added 2 fixes from Yaniv Levy:
+
+	* src/ccrtp/cqueue.h: added missing implementation of
+	QueueRTCPManager::setMinRTCPInterval.
+
+	* src/ccrtp/oqueue.h: added two new methods to class
+	OutgoingDataQueue: setNextSeqNum and getCurrentSeqNum (for RTSP
+	PLAY).
+
+2006-07-03  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/control.cpp: (QueueRTCPManager::packReportBlocks): fixed
+	byte ordering bug in report blocks SSRC field. Reported by Yaniv
+	Levy.
+
+2006-05-16  David Sugar <dyfet@gnutelephony.org>
+
+	* src/ccrtp/ioqueue.h: make endQueue protected.
+
+	* src/outqueue.cpp, src/ccrtp/oqueue.h: support added to send
+	immediate RTP data packet with new sendImmediate method.
+
+	* src/ccrtp/rtp.h: endSocket validates dso/cso correctly
+
+	* configure.in: updated for 1.4.1.
+
+2006-05-02  David Sugar <dyfet@gnutelephony.org>
+
+	* configure.in: updated for 1.4.0.
+
+2006-05-16  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/ccrtp/pool.h, src/pool.cpp: applied patch in Savannah
+	support request #105229 (by Jorgen Terner) for session pools
+	thread safety. New classes: SessionListElement and PredEquals.
+
+	* src/ccrtp/pool.h, src/pool.cpp: applied patch in Savannah
+	support request #105156 (by Jorgen Terner) for scheduling packets
+	by timeout (as in single threaded RTP sessions).
+	
+	* src/outqueue.cpp: (OutgoingDataQueue::purgeOutgoingQueue)
+	nullify sendLast (fix by Jorgen Terner)
+
+2006-05-02  David Sugar <dyfet@gnutelephony.org>
+
+	* configure.in: updated for 1.4.0.
+
+2006-03-27  David Sugar <dyfet@gnutelephony.org>
+
+	* src/queue.cpp: 64 bit friendly...
+
+2006-03-08  David Sugar <dyfet@gnutelephony.org>
+
+	* src/ccrtp/rtp.h, src/ccrtp/channel.h, src/pool.cpp: added
+	preliminary IPV6 RTP support.
+
+2005-12-08  David Sugar <dyfet@gnutelephony.org>
+
+	* src/ccrtp/iqueue.h, src/ccrtp/rtppkt.h: minor header fixes for
+	doxygen generated documentation.
+
+	* configure.ac: updated for new release.
+
+2005-12-01  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/source.cpp: (RTPApplication::findCNAME) fixed to avoid
+	crashes when no user name and hostname is available (fix by Michel
+	de Boer).
+
+	* src/pool.cpp: (SingleRTPSessionPool::run) fix to make it run by
+	Guillaume FRAYSSE.
+
+2005-10-10  David Sugar <dyfet@gnutelephony.org>
+
+	* configure.ac: updated for new release
+
+2005-10-10  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/members.cpp:
+	(MembershipBookkeeping::SyncSourceLink::initStats) fixed
+	initialization of timestamps.
+
+2005-09-20  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* Fixes for jitter calculation (bug report by Greg Silverman):
+
+	* src/ccrtp/iqueue.h, src/incqueue.cpp:
+	(IncomingDataQueue::recordReception) now also records
+	lastPacketTime.
+
+	* src/ccrtp/iqueue.h, src/incqueue.cpp: (struct SyncSourceLink)
+	renamed initialTime, initialTimestamp, getInitialTime,
+	setInitialTime, getInitialTimestamp, setInitialTimestamp to
+	initialDataTime, initialDataTimestamp and so on.
+	
+	* src/control.cpp: (QueueRTCPManager::takeInControlPacket): do not
+	call srcLink->setInitialTime.
+
+	* src/ccrtp/rtcppkt.h: doc. fix.
+
+2005-08-21  David Sugar <dyfet@gnutelephony.org>
+
+	* src/queue.cpp: needs <cstdio> for sprintf...
+
+2005-07-29  David Sugar <dyfet@gnutelephony.org>
+
+	* src/control.cpp: fix for pointer skip
+
+	* configurr.ac: updated for release 1.3.4.
+
+2005-07-27  David Sugar <dyfet@gnutelephony.org>
+
+	* configure.ac: updated for release 1.3.3.
+
+2005-07-27  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/control.cpp: Added length checks while processing RTCP
+	received packets, patch from Michel de Boer.
+
+2005-06-13  David Sugar <dyfet@gnutelephony.org>
+
+	* configure.ac: updated for release 1.3.2.
+
+2005-06-11  David Sugar <dyfet@gnutelephony.org>
+
+	* src/ccrtp/base.h, src/ccrtp/rtppkt.h, src/ccrtp/rtcpptk.h:
+	use of CCXX_PACKED to control use of pack() pragma.
+
+2005-05-03  David Sugar <dyfet@gnutelephony.org>
+
+	* src/ccrtp/rtppkt.h: 2833 methods must be public
+
+2005-05-01  David Sugar <dyfet@gnutelephony.org>
+
+	* configure.ac: updated for May 1 release, 1.3.1.
+	
+2005-04-29  David Sugar <dyfet@gnutelephony.org>
+
+	* src/ccrtp/rtp.h: gcc 4.0 pickyness and passing of ~0 to sleep.
+
+2005-04-27  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/control.cpp: (packReportBlocks) use correct SSRC from remote
+	source, fix from Takegami takashi.
+	
+	* src/rtcppkt.cpp: (timevalIntervalTo65536) fixed signed/unsigned
+	issue, reported by Takegami Takashi.
+
+2005-04-19  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* doc/ccrtp.texi: notes on padding and redundancy. Added
+	clarification on linking exception.
+
+	* src/rtcppkt.cpp: (NTP2Timeval) fixed conversion (-
+	NTP_EPOCH_OFFSET instead of +), reported by Takegami Takashi.
+
+	* fixed dlsr computation (reported by Takegami Takashi):
+	
+	* src/ccrtp/iqueue.h, src/members.cpp: added lastRTCPPacketTime
+	and lastRTCPSRTime to SyncSourceLink
+
+	* src/control.cpp: (QueueRTCPManager::takeInControlPacket) record
+	lastRTCPPacketTime and lastRTCPSRTime. (packReportBlocks) use
+	lastRTCPSRTime to compute dlsr (instead of NTP time)
+
+2005-03-24  David Sugar <dyfet@ostel.com>
+
+    * src/queue.cpp: some fix on digest to kill embedded class export
+    and fix for compilers weak (broken) on namespace support.
+
+2005-03-23  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/ccrtp/oqueue.h, src/outqueue.cpp: destinationCounter
+	eventually replaced with the size method of std::list.
+
+	* src/rtppkt.cpp: padding calculation fixed.
+	
+2005-03-22  David Sugar <dyfet@ostel.com>
+
+	* configure.ac: bumped version up for next release to 1.3.0, rather 
+	than 1.2.3 since library dependencies are now different, and 
+	with list changes, class abi also will be different.  Also
+	happens to match commoncpp2 1.3.x release versions nicely!
+
+	* src/ccrtp/oqueue.h, src/outqueue.cpp: added appearently
+	missing "destinationCounter" to DestinationList object, init 0,
+	inc on add, sub on remove.
+
+2005-03-20  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/ccrtp/rtppkt.h, src/rtppkt.cpp: added 'padsize' parameter to
+	OutgoingRTPPkt and RTPPacket constructors. RTPPacket::RTPPacket
+	modified for variable padding lengths.
+
+	* src/ccrtp/oqueue.h, src/outqueue.cpp: added setPadding(uint8),
+	modified OutgoingDataQueue::OutgoingDataQueue().
+
+	* src/ccrtp/oqueue.h, src/outqueue.cpp, src/control.cpp: applied
+	the patch from Dan Weber to use std::list instead of the
+	handcrafted destinationList (destinationCounter also replaced with
+	size()). The minimal std::list-like template is still TODO!
+
+	* Some work to remove dependency on libccext by copying the md5
+	code from Common C++ to ccRTP:
+	- src/private.h: do not include <cc++/digest.h>
+	- src/queue.cpp: copy (and minor tweaks) md5 parts of digest.h and md5.cpp from cc++
+	- libccrtp1.pc.in: require libccgnu2 instead of libccext2
+	- src/Makefile.am: added LIBS= @GNULIBS@ to avoid linking to libccext2
+	- Directory w32/cape/: ccrtp1.vcproj, ccrtp1.dsp, rtphello.vcproj,
+	rtphello.dsp, rtplisten.vcproj, rtplisten.dsp, rtpsend.vcproj,
+	rtpsend.dsp: removed ccext2.lib
+	
+2005-03-02  David Sugar <dyfet@ostel.com>
+	* libccrtp1.pc.in: updated for cc++ >= 1.3.0
+
+2005-02-28  Federico Montesino Pouzols  <fedemp@altern.org>
+	* configure.ac: require cc++ >= 1.3.0.
+
+	* src/outqueue.cpp:
+	(DestinationListHandler::removeDestinationFromList) fixed removal
+	of destination addresses.
+	
+2005-02-11  David Sugar <dyfet@ostel.com>
+	* configure.ac: version bumped to 1.2.2
+
+	* w32/cape{...}: support for CAPE debug project installs
+
+	* src/ccrtp/rtp.h, src/pool.cpp: "startRunning" is also virtual
+	and requires some special handling or it will not link in vs.net
+	when using debug mode options...
+
+2005-02-10  Federico Montesino Pouzols  <fedemp@altern.org>
+	* doc/ccrtp.texi: 'Clossing Sessions' extended and clarified.
+
+	* src/ccrtp/rtp.h, src/control.cpp: doc clarifications and updates
+	to RFC 3550/3551.
+	
+2005-02-07  David Sugar <dyfet@ostel.com>
+	* configure.ac: release 1.2.1
+	
+2005-02-06  David Sugar <dyfet@ostel.com>
+	* cape vs.net projects added.
+
+	* src/control.cpp: some casting fixups for fixed size data types.  fractionLost is a uint8 and so does
+	not need to pass through htonx stuff.
+
+	* src/ccrtp/ioqueue.h: satisfy dominenance by asserting RTPDataQueue which inherets renewLocalSSRC
+	through both iqueue and oqueue now refers explicity to the iqueue one.
+
+	* src/ccrtp/rtp.h: inheritence issues for gcc 3.4 support in templated 
+	RTP class.
+
+	* src/ccrtp/rtppkt.h, queuebase.h: some explicit type conversions added.
+
+	* src/ccrtp/channel.h: ccioctl now uses "SOCKET" rather than pure int type, w32 returns 0.
+
+	* src/incqueue.cpp: explicit type casts added.  "count" seems unused in getData.
+
+	* src/queue.cpp: should we avoid casting address to 32 bit object??
+
+	* src/rtppkt.cpp: explicit typecasts added as needed.
+
+2005-01-28  David Sugar <dyfet@ostel.com>
+	* libccrtp1.pc.in: fix for pkgconfig dependency on libccext2.
+
+2005-01-24  David Sugar <dyfet@ostel.com>
+	* reconfig: getting to work generically and rh7 specific
+
+	* updated headers/source files with "runtime" exception notice
+	for consistency in exception language.
+
+2005-01-20  David Sugar <dyfet@ostel.com>
+	* libccrtp1.pc[.in], configure.ac: pkgconfig file generated for 
+	libccrtp1
+
+	* Makefile.am, w32/Makefile.am, doc/Makefile.am: stripped out 
+	symlink stuff for w32 since "cape.exe" installer provides known
+	directory location for w32 installed versions of GNU Common C++.
+
+	* configure.ac: version bumped to 1.2.0.
+
+	* getRawTimestamp() was not needed after all, change unmade.
+
+	* src/ccrtp/rtppkt.h: definitions for rfc2833 telephony payloads.
+
+2005-01-16  David Sugar <dyfet@ostel.com>
+	* src/ccrtp/iqueue.h: virtual methods for packet filtering were
+	hidden as private; made protected so they can be used.
+
+	* src/ccrtp/rtppkt.h: getRawTimestamp needed for packet filtering.
+
+2005-01-10  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/control.cpp: (QueueRTCPManager::getBYE) patch from Michel de
+	Boer to avoid calling onGotGoodbye with NULL as value for reason.
+
+	* doc/ccrtp.texi: added note on threads, sockets, and sessions.
+	
+2004-11-28  David Sugar <dyfet@ostel.com>
+    	* src/private.h: ignore config.h if pure w32 unpack from cvs
+    
+    	* w32/cape/...: new w32 build tree for combined CAPE Framework
+    	installer.
+
+2004-11-22  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/ccrtp/rtp.h: fixed bug in error handling,
+	TRTPSessionbase::leaveGroup
+
+	* src/ccrtp/channel.h: fixed to compile with cc++ ipv6 support.
+
+	* src/outqueue.cpp: fixed two bugs in
+	DestinationListHandler::removeDestinationFromList (reported by
+	Sigrid Thijs).
+	
+	* src/ccrtp/formats.h, src/rtppkt.cpp: fixed
+	PayloadFormat::setPayloadType (reported by Sigrid Thijs) that
+	failed with dynamic types.  The static range is now enforced in
+	StaticPayloadFormat::StaticPayloadFormat.
+
+2004-11-14  David Sugar <dyfet@ostel.com>
+	* configure.ac: standardized autoconfiguring a bit including
+	shell issues with freebsd.
+
+2004-11-11  David Sugar <dyfet@ostel.com>
+	* m4/ost_debug.m4 and debug support added.
+	* configure.in moved to configure.ac.
+
+2004-06-01  Federico Montesino Pouzols  <fedemp@altern.org>
+	* src/ccrtp/queuebase.h: doc clarifications.
+
+2004-05-19  David Sugar <dyfet@ostel.com>
+	* ccrtp.spec.in: allow .la files to be included.
+
+2004-05-09  David Sugar <dyfet@ostel.com>
+	* src/ccrtp/channel.h: use UDPSocket::setPeer with cast rather
+	than re-impliment to support future merged ipv4/ipv6 release.
+
+2004-05-05  David Sugar <dyfet@ostel.com>
+	* reconfig: can use $ACLOCALDIR for extra m4 path.
+
+2004-04-21  David Sugar <dyfet@ostel.com>
+	* all sources; fixed namespace ending on }; for pedonic gcc-3.4
+
+2004-04-15  David Sugar <dyfet@ostel.com>
+
+	* src/Makefile.am: changes for unsupported autoconf AM_LDFLAGS.
+
+2004-03-30  David Sugar <dyfet@ostel.com>
+
+	* src/rtppkt.cpp, src/members.cpp, src/outqueue.cpp, 
+	src/queue.cpp, src/rtcppkt.cpp, src/source.cpp: support source 
+	build where exceptions have been disabled.
+
+	* src/pool.cpp: header file include order changed for qnx6
+	build.
+
+2004-03-15  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/source.cpp: (findusername): fixed username initialization,
+	from Guillaume Glodas.
+
+	* src/ccrtp/rtp.h: SingleThreadRTPSession::run: fixed timeout
+	checks, from Guillaume Glodas.
+	
+2004-03-10  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* demo/rtplisten.cpp: print payload type field.
+
+2004-01-28  David Sugar <dyfet@ostel.com>
+
+	* configure: use ~/.configure as means to hold default configure
+	options when configure invoked without options.
+
+2004-01-24  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/ccrtp/rtp.h: (TRTPSessionBase and SingleThreadRTPSession):
+	added iface optional parameter to multicast RTP session
+	constructors, so that it is possible to specify which interface to
+	add to multicast groups.
+
+	* src/ccrtp/iqueue.h, src/incqueue.cpp: added
+	IncomingDataQueue::getDefaultMembersSize().
+
+	* doc/ccrtp.texi: more docs.
+
+2004-01-18  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/ccrtp/sources.h, src/source.cpp, src/control.cpp: added
+	RTPApplication::getParticipant, used in
+	QueueRTCPManager::onGotSDESChunk to lookup participants by CNAME.
+
+	* demo/ccrtptest.cpp: added the class PacketsPattern.
+	
+	* doc/ccrtp.texi: more explanations on headers.
+
+	* src/ccrtp/cqueue.h, src/ccrtp/oqueue.h, src/ccrtp/rtcppkt.h,
+	src/control.cpp: doc cleanup (@todos).
+	
+	* demo/audiorx.cpp, demo/rtplisten.cpp: small additions.
+	
+2004-01-17  Federico Montesino Pouzols  <fedemp@altern.org>
+	
+	* src/ccrtp/oqueue.h: added to OutgoingDataQueue methods for CSRC
+	handling (addContributor and removeContributor).
+
+	* src/ccrtp/queuebase.h: added to AppDataUnit methods for
+	accessing CSRC (getContributorsCount and getContributorsID)
+
+	* src/ccrtp/rtp.h, src/ccrtp/channel.h: added support for
+	symmetric RTP (SymmetricRTPSession).
+
+	* src/ccrtp/ioqueue.h, src/ccrtp/rtp.h: startStack renamed to
+	enableStack to avoid confussion with startRunning.
+	
+	* src/control.cpp: fixed a bug in SDES items type and length
+	processing (QueueRTCPManager::onGotSDESChunk). This bug could
+	cause crashes when iterating through the participants list.
+	
+	* src/incqueue.cpp: fixed jitter computation in
+	IncomingDataQueue::recordReception.
+
+	* doc/ccrtp.texi: updated to new RFCs 355x
+
+	* demo/ccrtptest.cpp, demo/Makefile.am, src/private.h: added a
+	simple test program.
+	
+2003-12-26  David Sugar <dyfet@ostel.com>
+	* configure.in, w32/Makefile.am: support for new configure
+	--with-commoncpp=dir option to link Common C++ source files for
+	w32 specific builds, and ability to "make dist" either with or
+	without extra w32 files linked in.  One can also "disable"
+	redistribution of Common C++ files in ccrtp by using either
+	--without-commoncpp, or by specifying an invalid directory.
+
+2003-12-20  David Sugar <dyfet@ostel.com>
+	* Makefile.am, doc/Makefile.am, configure.in: we now regerate
+	doxygen documentation automatically as part of "make" if doxygen
+	is installed.  Hence, we no longer distribute pre-generated doxy
+	stuff in the tarball.
+
+2003-11-15  David Sugar <dyfet@ostel.com>
+	* src/private.h, src/queue.cpp, src/source.cpp,
+	src/ccrtp/base.h src/ccrtp/ext.h: re-arranged headers and
+	dependencies on common C++ headers so use of includes and
+	symbol exports would be correct per Common C++ 1.1.
+
+2003-10-30  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/ccrtp/iqueue.h, src/incqueue.cpp: corrected members counter
+	initialization.
+
+2003-10-21  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/control.cpp: (QueueRTCPManager::computeRTCPInterval): fixed
+	the RTCP interval randomization code.
+
+2003-10-20  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/control.cpp, src/queue.cpp: added checks for extreme control
+	bandwidth values that can cause divided by zero exceptions.
+
+2003-09-23  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/source.cpp: (RTPApplication::removeParticipant): fixed a bug
+	at first participant addition.
+	* src/ccrtp/rtp.h, src/incqueue.cpp, src/outqueue.cpp: fixed minor
+	signed/unsigned inconsistencies
+
+2003-07-03  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/ccrtp/rtp.h: (TRTPSessionBase::build, mcast version): fixed
+	multicast bind/join, from Luuk van Dijk.
+
+2003-06-20  David Sugar <dyfet@ostel.com>
+
+	* src/Makefile.am, phone/Makefile.am, demo/Makefile.am: fix
+	for current automake/autoconf systems
+
+2003-06-09  David Sugar <dyfet@ostel.com>
+
+	* m4/ost_endian.m4: updated for modern autoconf/automake systems
+	* acconfig.h: eliminated
+	* configure.in: updated based on modern autoconf issues
+	* reconfig: support for macosx and multi-version autoconf
+	* Release 1.0.2
+
+2003-05-14  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/ccrtp/sources.h: SyncSource::isSender made const.
+	* doc/ccrtp.texi: fixes and additions.
+
+2003-05-10  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* configure.in, acconfig.h, src/queue.cpp: removed the
+	AC_CHECK_FILE for /dev/urandom so as to allow cross-compilation.
+	* demo/rtplisten.cpp: modified to recognize mcast addresses.
+	* src/ccrtp/ext.h: fixed RTPDuplex::getNextDataPacketSize so that
+	it compiles even though UDPReceive::getReceiver is not const,
+	which will not be an issue with cc++2 versions newer than 1.0.9.
+
+2003-04-24  David Sugar <dyfet@gnu.org>
+
+	* Some compile checks and 1.0.1 release (corrected timeline).
+
+2003-04-04  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/ccrtp/channel.h: (RTPBaseUDPIPv4Socket::join): call
+	Socket::join, instead of UDPSocket::join in order to avoid
+	conflicts with the new join added to releases of common c++ later
+	than 1.0.8.
+	* win32/msvcpp/demo/rtphello.dsp, win32/msvcpp/demo/rtpsend.cpp,
+	win32/msvcpp/demo/rtplisten.dsp: link ws2_32.lib.
+	* src/source.cpp: avoid access violation in the win32 version of
+	findusername, from Christian Steindl.
+	
+2003-04-02  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/ccrtp/rtp.h: (TRTPSocketBase::endSocket): free cso and dso.
+
+2003-03-24  David Sugar <dyfet@gnu.org>
+
+	* What the heck, it's long overdue...1.0.0 release
+
+2003-03-22  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* win32/msvcpp/ccrtp1.dsp: fixed debug project linking settings.
+	* src/outqueue.cpp: (OutgoingDataQueue::getSchedulingTimeout)
+	avoid overflow when calculating next send time.
+	
+2003-02-03  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/ccrtp/rtp.h: fixes for multicast methods of TRTPSessionBase.
+
+2003-01-25  David Sugar <dyfet@gnu.org>
+	* configure.in updated for new pre-release
+	* ext.h fixed for older gcc compile
+
+2003-01-12  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* doc/fdl.texi, doc/fdlnotice.texi: updated to FDL 1.2.
+	* src/ccrtp/formats.h, src/ccrtp/rtppkt.h, src/ccrtp/rtcppkt.h,
+	src/ccrtp/iqueue.h, src/ccrtp/oqueue.h, src/queue.cpp: fixes for
+	ANSI C++ warnings.
+	* src/ccrtp/rtp.h, src/ccrtp/ext.h, src/socket.cpp,
+	src/ccrtp/channel.h, src/ccrtp/socket.h: socket.h renamed to
+	channel.h in order to avoid name conflict with cc++2/socket.h's
+	man page.
+	* src/queue.cpp: (RTPDataQueue::getCurrentTimestamp): fixed
+	signed/unsigned bug, reported by Guillaume Fraysse.
+	* configure.in, src/Makefile.am, demo/Makefile.am,
+	phone/Makefile.am: gcc flags for ANSI C++.
+
+2002-11-27 David Sugar <sugar@gnu.org>
+	* modify spec file for rpm build
+	* release 1.0pre1 prep work
+
+2002-11-24 Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/cc++/rtp is now src/ccrtp.
+	* src/queue.cpp, src/control.cpp, src/cc++/rtp/ioqueue.h: use size
+	parameter for IncomingDataQueue constructor.
+	* demo/rtplisten.cpp: added onNewSyncSource redefinition.
+	* src/incqueue, src/controll.cpp: check that onNewSyncSource is
+	called only once for any source.
+	
+2002-11-03 Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/control.cpp: (takeInControlPacket): source stats init.
+	* src/cc++/rtp/rtcppkt.h, src/control.cpp: new methods for
+	RTCPPacket: getLength and getSSRC.
+
+2002-10-31 Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/cc++/rtp/queuebase.h, src/queue.cpp, src/outqueue.cpp,
+	src/control.cpp: added localSSRCNetwork and reladed methods.
+	* demo/rtplisten.cpp: added onGotGoodbye virtual redefinition.
+	* src/control.cpp: (takeInControlPacket), (getOnlyBye), (getBye)
+	fixed.
+	
+2002-10-28 Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/source.cpp, src/cc++/rtp/sources.h: participants
+	implementation completed.
+	* src/cc++/rtp/rtp.h: send BYE in session destructor.
+	* src/control.cpp: fixed RTCP header init. bug in dispatchBYE.
+	
+2002-10-27 Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/cc++/rtp/iqueue.h, src/members.cpp: SR and RR info are
+	stores as unsigned char* instead of void*
+	* src/private.h: added tags for rtpsend and rtplisten demos.
+	
+2002-10-26 Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/cc++/queuebase.h: include only pointer.h instead of template.h.
+	* src/cc++/iqueue.h, src/incqueue.h, src/control.h: store jitter
+	as float.
+
+2002-10-24 Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/cc++/queuebase.h: added getDefaultMaxSendSegmentSize() and
+	getMaxSendSegmentSize() to OutgoingDataQueueBase.
+	* src/outqueue.cpp: (OutgoingDataQueue::putData) segment data blocks
+	depending on getMaxSendSegmentSize.
+	* doc/ccrtp.texi: extended "Sending Data" subsection.
+	* src/cc++/rtp/iqueue.h: initSequence now inits maxSeqNum and 
+	badSeqNum.
+	
+2002-10-23 Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* src/control.cpp: BYE packets are now correctly sent with a 
+	preceding RR in the compound.
+	* src/cc++/cqueue.h, src/control.cpp: new method
+	QueueRTCPManager::sendControlToDestinations.
+	* src/cc++/iqueue.h: initialize Members::members to 1.
+	
+2002-10-22 Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* doc/Makefile.am, doc/srcmodel.txt, doc/srcmodel.dia,
+	doc/ccrtp.texi: added initial manual.
+	* doc/Doxyfile: added ../demo to EXAMPLE_PATH.
+	
+	* src/cc++/rtp/ioqueue.h: added getDefaultSessionBandwidth and
+	getSessionBandwidth to QueueRTCPManager.
+	* src/queue.cpp: added defaultSessionBw constant.
+	* src/control.cpp computeRTCPInterval now takes into account the
+	session total bandwith.	
+	
+2002-10-21  Federico Montesino Pouzols  <fedemp@altern.org>
+
+	* ccRTP has been rewritten. This changelog summarizes the most
+	important changes. Read it from bottom up.
+
+	* src/cc++/rtp/cqueue.h, src/control.cpp: getSDES splitted into
+	onGotSDES and a new virtual: onGotSDESChunk.
+	* src/cc++/rtp.h, control.cpp: added/updated onGotSR, onGotRR,
+	onGotAPP, onGotRRSRExtension and onSSRCCollision plug-in to
+	QueueRTCPManager class.
+
+	* src/cc++/rtp/oqueue.h, src/cc++/rtp/iqueue.h, src/cc++/cqueue.h:
+	readData, writeData, readControl and writeControl virtuals from
+	RTPQueue renamed to recvData, sendData, recvControl and
+	sendControl, respectively. recvData now provided the source
+	transport address. Added new getNextDataPacketSize virtual.
+
+	* src/cc++/rtp/pool.h, src/pool.cpp: added experimental "RTP
+	session pool" implementation.
+
+	* src/cc++/rtp/rtp.h: T_RTPSocket has been replaced with
+	TRTPSessionBase, which does not include any threading mechanism
+	and uses the new socket classes defined in
+	src/cc++/rtp/socket.h. New template class
+	SingleThreadRTPSession. Its run method is implemented using the
+	new QueueRTCPManager::controlReceptionService,
+	QueueRTCPManager::controlTransmissionService,
+	IncomingDataQueue::takeInDataPacket
+	OutgoingDataQueue::dispatchDataPacket.
+
+	* src/cc++/rtp/cqueue.h: added class AVPQueue.
+	* src/cc++/rtp/socket.h: new class RTPBaseUDPIPv4Socket, and template
+	class DualRTPChannel.
+	* src/cc++/rtp/oqueue.h, src/outqueue.cpp: new class
+	DestinationListHandler.
+	* src/cc++/rtp/iqueue.h, src/incqueue.cpp: class IncomingDataQueue
+	splitted from the old RTPQueue class.
+	* src/cc++/rtp/iqueue.h, src/outqueue.cpp: class OutgoingDataQueue
+	spllited from the old RTPQueue class.
+	* src/cc++/rtp/iqueue.h: MembershipControl is now
+	MembershipBookkeeping, inherits from the xxxHandler classes and
+	defines nested structures IncomingRTPPktLink and SyncSourceLink,
+	for packets/sources lists and hash table.	
+	* src/cc++/rtp/iqueue.h: new classes SyncSourceHandler, 
+	ParticipantHandler, ApplicationHandler and ConflictHandler.
+	* src/cc++/rtp/queuebase.h, src/data.cpp: new class AppDataUnit
+	* src/cc++/rtp/queuebase.h, src/queue.cpp: new class RTPQueueBase.
+	* src/cc++/rtp/queuebase.h, src/outqueue.cpp: new class 
+	OutgoingDataQueueBase.
+	* src/cc++/rtp/queuebase.h, src/incqueue.cpp: new class
+	IncomingDataQueueBase.
+
+	* src/cc++/rtp/sources.h, src/source.cpp: new classes SDESItemsHolder,
+	RTPApplication and Participant. RTPSource has been replaced with
+	SyncSource.
+	* src/cc++/rtp/rtcppkt.h, src/rtcppkt.cpp: RTCPCompoundHandler
+	moved and updated. New classes RTCPReceiverInfo and
+	RTCPSenderInfo.
+	* src/c++/rtp/rtppkt.h, src/rtppkt.cpp: RTPPacket, IncomingRTPPkt and 
+	OutgoingRTPPkt moved and updated.
+	* src/cc++/rtp/formats.h, src/rtppkt.cpp: Added new PayloadType
+	typedef, and classes PayloadFormat, DynamicPayloadFormat and
+	StaticPayloadFormat. The old PayloadType enumeration is now called
+	StaticPayloadType and has been changed.
+	* src/cc++/rtp/base.h: common consts and routines.
+	
+	* src/incqueue.cpp, src/outqueue.cpp: splitted from queue.cpp with
+	a lot of new stuff.
+	* src/packet.cpp: splitted into rtppkt.cpp and rtcppkt.cpp
+	* win32/msvcpp/: added GNUccRTP workspace for ccRTP, and ccRTPdemo
+	workspace for demos.
+	* win32/mingw32/: added mingw32 cross-compiling makefile.
+	* demo/: Makefile.am and demos updated for CC++ 2 and ccRTP 1.0.
+	* phone/: updated for 1.0.
+	* doc/Doxyfile, doc/Doxyman: added src/cc++/rtp to INPUT.
+	* doc/fdl.texi, fdlnotice.texi, doc/gpl.texi, doc/srcmodel.txt,
+	doc/srcmodel.dia: added for ccRTP manual.
+	* Makefile.am: added COPYING.addendum to EXTRA_DIST, and -Wall.
+	* acconfig.h: HAVE_DEV_URANDOM.
+	* configure.in, src/Makefile.am, src/rtp.h, src/rtpext.h:
+	public headers splitted and moved to src/cc++/rtp/.
+	* configure.in: REQUIRES="1.0.0", check for /dev/urandom and
+	cleaned up some headers checks.
+
+2002-07-29  David Sugar <dyfet@ostel.com> (from 0.9.1 to 0.9.2)
+
+	* Updated build for Hammer (x86-64) support.
+
+2002-02-18  David Sugar <dyfet@ostel.com> (from 0.7.2 to 0.7.3)
+
+	* Solaris target compile support.
+
+2001-12-28  David Sugar <dufet@ostel.com> (from 0.7.1 to 0.7.2)
+
+	* src/rtp.h: header fixups for newer Common C++
+
+	* application of Debian patch for gcc 3.0.
+
+2001-11-28  Federico Montesino <p5087@quintero.fie.us.es> (from 0.6.2 to 0.6.3)
+
+	* src/members.cpp: fixed a bug in RTPSource::addNewSource(uint32)
+	(the collision list was wrongly modified when inserting new
+	sources).
+
+	* src/queue.cpp: fixed a serious bug (incomplete initialization)
+	in RTPQueue::RTPQueue(int, uint32) and RTPQueue::initQueue.
+
+	* UDPIPv4Socket now inherits from both UDPReceive and UDPTransmit,
+	instead of only UDPSocket. Inheriting only from UDPSocket is an
+	error I introduced in 0.6.0. This change is necessary to avoid
+	receiving/transmitting collisions, specially when two applications
+	in the same host talk to each other through the same port numbers.
+	
+	* src/socket.cpp: UDPIPv4Socket::Connect(const InetAddress&,
+	tpport_t) removed as a result of the change listed up here.
+	
+	* demo/Makefile.am, demo/rtpsend.cpp and demo/rtplisten.cpp: added
+	new demo apps
+	
+	* COPYING.addendum: added (the same as the Common C++ one)
+
+	* src/rtp.h: rearranged Members class.
+
+	* src/control.cpp: QueueRTCPManager::getOnlyBye() has been filled
+	in.
+	
+	* src/rtp.h, src/control.cpp: static const data members initialization
+	moved from rtp.h to control.cpp to avoid VC++ complaints.
+
+	* src/rtp.h: T_RTPSocket::leaveGroup(const InetMcastAddress&) fixed
+	(now calls to setMulticast(false), instead of setMulticast(true)).
+
+	* src/rtp.h: Template T_RTPSocket updated from __EXPORT to 
+	CCXX_CLASS_EXPORT
+	
+	* src/rtp.h, control.cpp and packet.cpp: RTP_VERSION is now called
+	CCRTP_VERSION to avoid name conflicts with other stacks
+
+	* src/rtp.h and src/queue.h: the "data" parameter of putPacket is
+	now const.
+
+2001-11-27  David Sugar <dyfet@ostel.com> (from 0.7.0 to 0.7.1)
+	* fixed memory leaks in sdes and bye string builds.
+	* added functional virtuals for session control start and stop.
+	* created start of "phone" user agent.
+
+2001-11-02  David Sugar <dyfet@ostel.com> (from 0.6.2 to 0.7.0)
+	* addition of namespace support and changes for Common C++ 1.9.0.
+
+2001-10-15  David Sugar <dyfet@ostel.com> (from 0.6.1 to 0.6.2)
+        * fixed include files in demo apps.
+
+2001-10-14  E. Stuart Hicks <eshicks@hotmail.com> (from 0.6.1 to 0.6.2)
+	* minor patch to compile on older gcc releases.
+
+2001-10-07  David Sugar <dyfet@ostel.com> (from 0.6.0 to 0.6.1)
+	* ccRTP becomes a GNU package.
+
+2001-09-20  David Sugar <dyfet@ostel.com> (from 0.6.0 to 0.6.1)
+	* new virtuals to trap and filter packet queue expiration.
+	
+2001-09-02  Federico Montesino <p5087@quintero.fie.us.es> (from 0.5.1 to 0.6.0)
+
+	* configure.in: added check for nana support
+	(configure --with-nana, for testing), stdlib.h and sys/utsname.h
+
+	* src/Makefile.am: updated to make the following:
+
+	* src/rtpext.h: new public header containing the declarations
+	needed to make low level packet filtering and stack extensions.
+
+	* rtp.h: many new methods and changes in the class hierarchy (to
+	add MembershipControl, QueueRTCPManager and the template
+	T_RTPSocket)
+
+	* New files src/members.cpp, src/data.cpp and src/source.cpp with
+	the implementation of MembershipControl, RTPData and RTPSource
+	classes, respectively
+
+	* src/control.cpp: now includes the implementation of
+	QueueRTCPManager.
+
+	* src/socket.cpp: now includes the implementation of UDPIPv4Socket
+	and could include the implementation of other kind of socket
+	classes used to instantiate T_RTPSocket.
+
+	* Rearranged the doxygen tags and configuration (and changes in
+	src/private.h) so that the introductory README, the TODO list and
+	the examples under demo/ are included in the documentation. Added
+	some comments both for API and implementation.
+
+2001-08-22  David Sugar <dyfet@ostel.com> (from 0.5.0 to 0.5.1)
+
+	* expose private packet structures externally.
+	
+2001-06-21  David Sugar <dyfet@ostel.com> (from 0.4.1 to 0.5.0)
+
+	* added const for address handlers.
+	* added queue Purge function.
+	* extended queue i/o services and support for sequence and 
+	  timestamp initialization/signatures.
+	* added millisecond timeclock for stack time synhronization.
+	* added RTCP event messages as virtuals.
+
+2001-04-23  David Sugar <dyfet@ostel.com> (from 0.4.0 to 0.4.1)
+
+	* added virtual handler for timer tick driven code.
+	* added	patches and demo apps from Federico.
+	
+from 0.3.2 to 0.4.0  David Sugar <dyfet@ostel.com>
+
+	* fixed version test.
+	* added virtual handler to process packet "events".
+
+from 0.3.1 to 0.3.2  David Sugar <dyfet@ostel.com>
+
+	* some win32 things.
+	* new common c++ version check.
+
+from 0.3.0 to 0.3.1  David Sugar <dyfet@ostel.com>
+
+	* some header fixups.
+
+from 0.2.2 to 0.3.0  David Sugar <dyfet@ostel.com>
+
+	* merged with Common C++ updates and new Common C++ UDP classes.
+
+from 0.2.1 to 0.2.2  David Sugar <dyfet@ostel.com>
+
+	* use of sequence and marker checks to allow application to
+	determine if assembled multi-sequence packets are "complete" or
+	missing data.
+
+	* reorganized class structure to allow more malleable assembly of
+	different kinds of RTP session classes.
+
+from 0.2.0 to 0.2.1  David Sugar <dyfet@ostel.com>
+
+	* add support to strip "padding" on receiver side.
+	* add packet reassembly of multi-segment packets.
+	* add getPayloadSize capability.
+	* add setPartial to update a pending (multi-channel) frame.
+	* RTPSocket "broken" constructor fixed.
+
+from 0.1.0 to 0.2.0  David Sugar <dyfet@ostel.com>
+
+	* set SO_REUSEADDR for rtcp socket.
+	* added RTCP scheduling points to service thread.
+	* added expiration of outgoing packets which have been "delayed"
+	or "blocked".
+	* handling of sending to blocked or conjested outbound socket
+	queues.
+	* RTPSocket uses non-blocking send for conjuestion test.
+
+from 0.0.1 to 0.1.0  David Sugar <dyfet@ostel.com>
+
+	* restructured class hierarchy to add new RTPQueue so that we have
+	a generic base for creating different RTP socket types.
+	* RTPDuplex added.