[reSIProcate] retransmit patch

palladin p-aladin at yandex.ru
Thu Jun 5 02:52:59 CDT 2014


Dear resip devels,
Some time before there was a Transport Logging patch.
Could you please extend it with a few lines intended to log retransmit 
messages?
For example:

diff --git a/resip/stack/Transport.hxx b/resip/stack/Transport.hxx
index 7b530cb..3b5c548 100644
--- a/resip/stack/Transport.hxx
+++ b/resip/stack/Transport.hxx
@@ -77,6 +77,7 @@ class Transport : public FdSetIOObserver
        public:
            virtual ~SipMessageLoggingHandler(){}
            virtual void outboundMessage(const Tuple &source, const 
Tuple &destination, const SipMessage &msg) = 0;
+          virtual void outboundRetransmit( const SendData& data ) = 0;
            virtual void inboundMessage(const Tuple& source, const 
Tuple& destination, const SipMessage &msg) = 0;
        };

diff --git a/resip/stack/TransportSelector.cxx 
b/resip/stack/TransportSelector.cxx
index c57394d..919bbdb 100644
--- a/resip/stack/TransportSelector.cxx
+++ b/resip/stack/TransportSelector.cxx
@@ -1342,6 +1342,13 @@ TransportSelector::retransmit(const SendData& data)
     if(transport)
     {
        // If this is not true, it means the transport has been removed.
+      Transport::SipMessageLoggingHandler* handler = 
transport->getSipMessageLoggingHandler();
+
+      if(handler)
+      {
+        handler->outboundMessage(data);
+      }
+
transport->send(std::auto_ptr<SendData>(data.clone()));
     }
  }

Appreciate in advance.
tez.



More information about the resiprocate-devel mailing list