diff --git a/daemon/src/sip/sipcall.cpp b/daemon/src/sip/sipcall.cpp
index f68b1f465199d6106ad24f065d5d16635091d3b2..a1b4780bc385ec9b201cae3fbbd01b1ad75d56eb 100644
--- a/daemon/src/sip/sipcall.cpp
+++ b/daemon/src/sip/sipcall.cpp
@@ -44,7 +44,6 @@ SIPCall::SIPCall (const std::string& id, Call::CallType type, pj_caching_pool *c
     , _did (0)
     , _tid (0)
     , _audiortp (new sfl::AudioRtpFactory(this))
-    , _xferSub (NULL)
     , _invSession (NULL)
 	, pool_(pj_pool_create(&caching_pool->factory, id.c_str(), CALL_MEMPOOL_INIT_SIZE,
                             CALL_MEMPOOL_INC_SIZE, NULL))
diff --git a/daemon/src/sip/sipcall.h b/daemon/src/sip/sipcall.h
index 40c451dfadc6bf87cc1e4ed9b342b6fe4d481b46..3a2b07658a2e1b0b7b589b7398c7c5f8d3a9dc13 100644
--- a/daemon/src/sip/sipcall.h
+++ b/daemon/src/sip/sipcall.h
@@ -66,19 +66,6 @@ class SIPCall : public Call
          * Destructor
          */
         ~SIPCall ();
-        /**
-         * Get event subscription internal structure
-         */
-        pjsip_evsub *getXferSub() {
-            return _xferSub;
-        }
-
-        /**
-         * Set event subscription internal structure
-         */
-        void setXferSub (pjsip_evsub* sub) {
-            _xferSub = sub;
-        }
 
         void setInvSession (pjsip_inv_session* inv) {
             _invSession = inv;
@@ -151,11 +138,6 @@ class SIPCall : public Call
          */
         sfl::AudioRtpFactory * _audiortp;
 
-        /**
-         * Event subscription structure
-         */
-        pjsip_evsub *_xferSub;
-
         /**
          * The invite session to be reused in case of transfer
          */
diff --git a/daemon/src/sip/sipvoiplink.cpp b/daemon/src/sip/sipvoiplink.cpp
index 9c23f12751feee5ff605ab680ed1eeee7dd1914e..80bccf9d3fce758cc0371010aaa1ac9eec70261a 100644
--- a/daemon/src/sip/sipvoiplink.cpp
+++ b/daemon/src/sip/sipvoiplink.cpp
@@ -3135,74 +3135,6 @@ void invite_session_state_changed_cb (pjsip_inv_session *inv, pjsip_event *e)
         return;
     }
 
-    // If this is an outgoing INVITE that was created because of
-    // REFER/transfer, send NOTIFY to transferer.
-    if (call->getXferSub() && e->type==PJSIP_EVENT_TSX_STATE) {
-
-    	_debug("UserAgent: Call state changed during transfer");
-
-        int st_code = -1;
-        pjsip_evsub_state ev_state = PJSIP_EVSUB_STATE_ACTIVE;
-
-        switch (call->getInvSession()->state) {
-
-            case PJSIP_INV_STATE_NULL:
-            	_debug("PJSIP_INV_STATE_NULL");
-            	break;
-            case PJSIP_INV_STATE_CALLING:
-            	_debug("\n");
-                /* Do nothing */
-            	_debug("PJSIP_INV_STATE_CALLING");
-                break;
-            case PJSIP_INV_STATE_EARLY:
-            case PJSIP_INV_STATE_CONNECTING:
-                st_code = e->body.tsx_state.tsx->status_code;
-                ev_state = PJSIP_EVSUB_STATE_ACTIVE;
-                _debug("PJSIP_INV_STATE_EARLY, PJSIP_INV_STATE_CONNECTING");
-                break;
-            case PJSIP_INV_STATE_CONFIRMED:
-                /* When state is confirmed, send the final 200/OK and terminate
-                 * subscription.
-                 */
-                st_code = e->body.tsx_state.tsx->status_code;
-                ev_state = PJSIP_EVSUB_STATE_TERMINATED;
-                _debug("PJSIP_INV_STATE_CONFIRMED");
-                break;
-
-            case PJSIP_INV_STATE_DISCONNECTED:
-                st_code = e->body.tsx_state.tsx->status_code;
-                ev_state = PJSIP_EVSUB_STATE_TERMINATED;
-                _debug("PJSIP_EVSUB_STATE_TERMINATED");
-                break;
-
-            case PJSIP_INV_STATE_INCOMING:
-                /* Nothing to do. Just to keep gcc from complaining about
-                 * unused enums.
-                 */
-            	_debug("PJSIP_INV_STATE_INCOMING");
-                break;
-        }
-
-        if (st_code != -1) {
-            pjsip_tx_data *tdata;
-            pj_status_t status;
-
-            status = pjsip_xfer_notify (call->getXferSub(), ev_state, st_code, NULL, &tdata);
-
-            if (status != PJ_SUCCESS) {
-                _debug ("UserAgent: Unable to create NOTIFY -- %d", status);
-            } else {
-                status = pjsip_xfer_send_request (call->getXferSub(), tdata);
-
-                if (status != PJ_SUCCESS) {
-                    _debug ("UserAgent: Unable to send NOTIFY -- %d", status);
-                }
-            }
-        }
-
-        return;
-    }
-
     if (inv->state != PJSIP_INV_STATE_CONFIRMED) {
         // Update UI with the current status code and description
         pjsip_transaction * tsx = e->body.tsx_state.tsx;
@@ -4117,7 +4049,6 @@ pj_bool_t transaction_response_cb (pjsip_rx_data *rdata)
 
 static void sendAck (pjsip_dialog *dlg, pjsip_rx_data *rdata)
 {
-
     pjsip_tx_data *tdata;
 
     // Create ACK request
@@ -4161,10 +4092,9 @@ void onCallTransfered (pjsip_inv_session *inv, pjsip_rx_data *rdata)
     /* Find optional Refer-Sub header */
     refer_sub = (pjsip_generic_string_hdr*)
     pjsip_msg_find_hdr_by_name (rdata->msg_info.msg, &str_refer_sub, NULL);
-    if (refer_sub) {
-        if (!pj_strnicmp2 (&refer_sub->hvalue, "true", 4) ==0)
+    if (refer_sub)
+        if (!pj_strnicmp2 (&refer_sub->hvalue, "true", 4) == 0)
             no_refer_sub = PJ_TRUE;
-    }
 
     /* Find optional Referred-By header (to be copied onto outgoing INVITE
      * request.
@@ -4220,7 +4150,7 @@ void transfer_client_cb (pjsip_evsub *sub, pjsip_event *event)
         pjsip_generic_string_hdr *refer_sub;
         const pj_str_t REFER_SUB = { (char *) "Refer-Sub", 9 };
 
- 	/* Must be receipt of response message */
+        /* Must be receipt of response message */
         pj_assert(event->type == PJSIP_EVENT_TSX_STATE &&
                   event->body.tsx_state.type == PJSIP_EVENT_RX_MSG);
         rdata = event->body.tsx_state.src.rdata;
@@ -4231,19 +4161,16 @@ void transfer_client_cb (pjsip_evsub *sub, pjsip_event *event)
                                                &REFER_SUB, NULL);
 
         /* Check if subscription is suppressed */
-        if (refer_sub && pj_stricmp2(&refer_sub->hvalue, "false")==0) {
-	    _debug("UserAgent: No subscription requested");
-        }
-	else {
-	    _debug("UserAgent: Transfer subscription reqeusted");
-	}	
-    }
+        if (refer_sub and pj_stricmp2(&refer_sub->hvalue, "false") == 0)
+            _debug("UserAgent: No subscription requested");
+        else
+            _debug("UserAgent: Transfer subscription reqeusted");
 
-    /*
-     * On incoming NOTIFY, notify application about call transfer progress.
-     */
-    else if (pjsip_evsub_get_state (sub) == PJSIP_EVSUB_STATE_ACTIVE ||
+    } else if (pjsip_evsub_get_state (sub) == PJSIP_EVSUB_STATE_ACTIVE or
     		pjsip_evsub_get_state (sub) == PJSIP_EVSUB_STATE_TERMINATED) {
+        /*
+         * On incoming NOTIFY, notify application about call transfer progress.
+         */
 
         pjsip_msg *msg;
         pjsip_msg_body *body;
@@ -4252,7 +4179,6 @@ void transfer_client_cb (pjsip_evsub *sub, pjsip_event *event)
         pj_bool_t cont;
         pj_status_t status;
 
-
         _debug("UserAgent: PJSIP_EVSUB_STATE_ACTIVE PJSIP_EVSUB_STATE_TERMINATED");
 
         SIPVoIPLink *link = reinterpret_cast<SIPVoIPLink *> (pjsip_evsub_get_mod_data (sub, _mod_ua.id));
@@ -4264,12 +4190,10 @@ void transfer_client_cb (pjsip_evsub *sub, pjsip_event *event)
         if (pjsip_evsub_get_state (sub) == PJSIP_EVSUB_STATE_TERMINATED) {
             pjsip_evsub_set_mod_data (sub, _mod_ua.id, NULL);
             _debug ("UserAgent: Xfer client subscription terminated");
-            // Manager::instance().hangupCall(call->getCallId());
-
         }
 
         /* Application is not interested with call progress status */
-        if (!link || !event) {
+        if (!link or !event) {
             _warn ("UserAgent: Either link or event is empty in transfer callback");
             return;
         }
@@ -4281,8 +4205,8 @@ void transfer_client_cb (pjsip_evsub *sub, pjsip_event *event)
         std::string request =  pjsip_rx_data_get_info (r_data);
 
         /* This better be a NOTIFY request */
-        if (r_data->msg_info.msg->line.req.method.id == PJSIP_OTHER_METHOD &&
-        request.find (method_notify) != (size_t)-1) {
+        if (r_data->msg_info.msg->line.req.method.id == PJSIP_OTHER_METHOD and
+                request.find (method_notify) != std::string::npos) {
 
             /* Check if there's body */
             msg = r_data->msg_info.msg;
@@ -4294,8 +4218,8 @@ void transfer_client_cb (pjsip_evsub *sub, pjsip_event *event)
             }
 
             /* Check for appropriate content */
-            if (pj_stricmp2 (&body->content_type.type, "message") != 0 ||
-            pj_stricmp2 (&body->content_type.subtype, "sipfrag") != 0) {
+            if (pj_stricmp2 (&body->content_type.type, "message") != 0 or
+                    pj_stricmp2 (&body->content_type.subtype, "sipfrag") != 0) {
                 _warn ("UserAgent: Warning! Received NOTIFY without message/sipfrag content");
                 return;
             }
@@ -4338,31 +4262,27 @@ void transfer_client_cb (pjsip_evsub *sub, pjsip_event *event)
 
             status = pjsip_inv_end_session (call->getInvSession(), PJSIP_SC_GONE, NULL, &tdata);
 
-            if (status != PJ_SUCCESS) {
+            if (status != PJ_SUCCESS)
                 _debug ("UserAgent: Fail to create end session msg!");
-            } else {
+            else {
                 status = pjsip_inv_send_msg (call->getInvSession(), tdata);
 
-                if (status != PJ_SUCCESS) {
+                if (status != PJ_SUCCESS)
                     _debug ("UserAgent: Fail to send end session msg!");
-		}
             }
 
             Manager::instance().hangupCall(call->getCallId());
-
             cont = PJ_FALSE;
         }
 
-        if (!cont) {
+        if (!cont)
             pjsip_evsub_set_mod_data (sub, _mod_ua.id, NULL);
-        }
     }
 }
 
 
 void transfer_server_cb (pjsip_evsub *sub, pjsip_event *event)
 {
-
     PJ_UNUSED_ARG (event);
 
     /*
@@ -4400,10 +4320,6 @@ void transfer_server_cb (pjsip_evsub *sub, pjsip_event *event)
 
         pjsip_evsub_set_mod_data (sub, _mod_ua.id, NULL);
 
-        call->setXferSub (NULL);
-
-        // Manager::instance().hangupCall(call->getCallId());
-
         _error ("UserAgent: Xfer server subscription terminated");
     }
 }