]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
Fri Mar 7 11:34:33 EST 2008 Pekka.Pessi@nokia.com
authorMichael Jerris <mike@jerris.com>
Fri, 7 Mar 2008 17:42:16 +0000 (17:42 +0000)
committerMichael Jerris <mike@jerris.com>
Fri, 7 Mar 2008 17:42:16 +0000 (17:42 +0000)
  * nta: added nta_outgoing_bind()

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@7817 d0543943-73ff-0310-b7d9-9358b9ac24b2

libs/sofia-sip/libsofia-sip-ua/nta/nta.c
libs/sofia-sip/libsofia-sip-ua/nta/nta_tag.c
libs/sofia-sip/libsofia-sip-ua/nta/sofia-sip/nta.h

index b0cb19f4c3220ac0b8a3ba22175b428a0a720b6a..903a9760c8ece5091cdb1ba667f36b6de8305945 100644 (file)
@@ -6749,6 +6749,29 @@ nta_outgoing_t *nta_outgoing_tcancel(nta_outgoing_t *orq,
   return NULL;
 }
 
+/**Bind callback and application context to an client transaction.
+ *
+ * @param orq       outgoing client transaction
+ * @param callback  callback function (may be NULL)
+ * @param magic     application context pointer 
+ *                  (given as argument to @a callback)
+ *
+ * @NEW_1_12_9
+ */
+SOFIAPUBFUN int nta_outgoing_bind(nta_outgoing_t *orq,
+                                 nta_response_f *callback,
+                                 nta_outgoing_magic_t *magic)
+{
+  if (orq && !orq->orq_destroyed) {
+    if (callback == NULL)
+      callback = outgoing_default_cb;
+    orq->orq_callback = callback;
+    orq->orq_magic = magic;
+    return 0;
+  }
+  return -1;
+}
+
 /**
  * Destroy a request object.
  *
index 58efc6f27af49c3d80b1c52c03ebf51e8a7d16a8..8fb53ff2f5a3377d6ecc4e83e80090096e34ed28 100644 (file)
@@ -103,7 +103,7 @@ tag_typedef_t ntatag_mclass = PTRTAG_TYPEDEF(mclass);
  *   @ContentLength, @Via, @ContentType, @ContentDisposition,
  *   @ContentEncoding, @Supported, @Contact, @Require, @RecordRoute, @RAck,
  *   @RSeq, @Event, @Expires, @SubscriptionState, @SessionExpires,
- *   @MinSE, @SIPEtag, and @SIPIfMatch.
+ *   @MinSE, @SIPETag, and @SIPIfMatch.
  *  
  * @sa enum #sip_bad_mask, NTATAG_BAD_RESP_MASK()
  */
@@ -140,7 +140,7 @@ tag_typedef_t ntatag_bad_req_mask = UINTTAG_TYPEDEF(bad_req_mask);
  *   @ContentLength, @Via, @ContentType, @ContentDisposition,
  *   @ContentEncoding, @Supported, @Contact, @Require, @RecordRoute, @RAck,
  *   @RSeq, @Event, @Expires, @SubscriptionState, @SessionExpires, 
- *   @MinSE, @SIPEtag, and @SIPIfMatch.
+ *   @MinSE, @SIPETag, and @SIPIfMatch.
  */
 tag_typedef_t ntatag_bad_resp_mask = UINTTAG_TYPEDEF(bad_resp_mask);
 
@@ -962,7 +962,7 @@ tag_typedef_t ntatag_pass_100 = BOOLTAG_TYPEDEF(pass_100);
  * As per recommended by @RFC4320, the stack can generate a 100 Trying
  * response to the non-INVITE requests if the application has not responded
  * to a request within half of the SIP T2 (the default value for T2 is 4000
- * milliseconds, so the extra <i>100 Trying<i/> would be sent after 2 seconds).
+ * milliseconds, so the extra <i>100 Trying</i> would be sent after 2 seconds).
  *
  * @par Used with      
  *    nua_create(), nua_set_params(),
index f7385759f21b4882609874b94a39cd33ae8826bf..f7add5a179058b31390b3a3f39c32dc9aecbc45b 100644 (file)
@@ -383,6 +383,9 @@ nta_outgoing_t *nta_outgoing_default(nta_agent_t *agent,
                                     nta_response_f *callback,
                                     nta_outgoing_magic_t *magic);
 
+SOFIAPUBFUN int nta_outgoing_bind(nta_outgoing_t *orq,
+                                 nta_response_f *callback,
+                                 nta_outgoing_magic_t *magic);
 SOFIAPUBFUN int nta_outgoing_status(nta_outgoing_t const *orq);
 SOFIAPUBFUN sip_method_t nta_outgoing_method(nta_outgoing_t const *orq);
 SOFIAPUBFUN char const *nta_outgoing_method_name(nta_outgoing_t const *orq);