blob: a761dee42f2074f74f9aa77bf8f76eff578ac96e [file] [log] [blame]
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.