Commit 759272fe authored by Pekka Pessi's avatar Pekka Pessi
Browse files

Updated documentation in nua.

darcs-hash:20060329161236-65a35-93660384551dacc4abd8520948b1dc1147ee1110.gz
parent 5ddb550b
...@@ -19,4 +19,5 @@ TAGFILES += ../docs/doxytags_sdp=../sdp ...@@ -19,4 +19,5 @@ TAGFILES += ../docs/doxytags_sdp=../sdp
GENERATE_TAGFILE = ../docs/doxytags_nua GENERATE_TAGFILE = ../docs/doxytags_nua
ALIASES += ALIASES += CFILE="@internal @file" IFILE="@internal @file"
VERBATIM_HEADERS = NO
\ No newline at end of file
...@@ -100,13 +100,14 @@ su_log_t nua_log[] = { SU_LOG_INIT("nua", "NUA_DEBUG", SU_DEBUG) }; ...@@ -100,13 +100,14 @@ su_log_t nua_log[] = { SU_LOG_INIT("nua", "NUA_DEBUG", SU_DEBUG) };
* @retval NULL upon an error * @retval NULL upon an error
* *
* @par Related tags: * @par Related tags:
* #NUTAG_MEDIA_ENABLE \n * NUTAG_MEDIA_ENABLE() \n
* #NUTAG_PROXY \n * NUTAG_SOA_NAME() \n
* #NUTAG_SIP_PARSER \n * NUTAG_PROXY() \n
* #NUTAG_SIPS_URL \n * NUTAG_URL() \n
* #NUTAG_UICC \n * NUTAG_SIPS_URL() \n
* #NUTAG_CERTIFICATE_DIR \n * NUTAG_SIP_PARSER() \n
* #NUTAG_URL \n * NUTAG_UICC() \n
* NUTAG_CERTIFICATE_DIR() \n
* all relevant NTATAG_* are passed to NTA * all relevant NTATAG_* are passed to NTA
* *
* @note * @note
...@@ -459,7 +460,7 @@ int nua_handle_has_active_call(nua_handle_t const *nh) ...@@ -459,7 +460,7 @@ int nua_handle_has_active_call(nua_handle_t const *nh)
* *
* @retval 0 if no call on hold in operation or operation handle is invalid * @retval 0 if no call on hold in operation or operation handle is invalid
* @retval 1 if operation has call on hold, for example nua_invite() or * @retval 1 if operation has call on hold, for example nua_invite() or
* nua_update() has been called with #NUTAG_HOLD with != 0 argument. * nua_update() has been called with NUTAG_HOLD() with != 0 argument.
* *
* @par Related tags: * @par Related tags:
* none * none
...@@ -700,57 +701,12 @@ void nua_get_hparams(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...) ...@@ -700,57 +701,12 @@ void nua_get_hparams(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...)
NUA_SIGNAL(nh, nua_r_get_params, tag, value); NUA_SIGNAL(nh, nua_r_get_params, tag, value);
} }
/** Send SIP REGISTER request to the registrar. /* Documented with nua_stack_register() */
*
* Request status will be delivered to the application using #nua_r_register
* event. When successful the registration will be updated periodically. If
* the registrar includes Service-Route header in response, and service
* route is enabled using NUTAG_SERVICE_ROUTE_ENABLE(), the service route
* will be used for initial non-REGISTER requests.
*
* The handle used for registration cannot be used for any other purposes.
*
* @param nh Pointer to operation handle
* @param tag, value, ... List of tagged parameters
*
* @return
* nothing
*
* @par Related tags:
* #NUTAG_REGISTRAR
*
* @par Events:
* #nua_r_register
*/
void nua_register(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...) void nua_register(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...)
{ {
NUA_SIGNAL(nh, nua_r_register, tag, value); NUA_SIGNAL(nh, nua_r_register, tag, value);
} }
/** Unregister.
*
* Send a REGISTER request with expiration time 0. This removes the
* registration from the registrar. If the handle was earlier used
* with nua_register() the periodic updates will be terminated.
*
* If a #SIPTAG_CONTACT_STR with argument "*" is used, the all registrations
* will be removed from the registrar otherwise only the contact address
* belonging to the NUA stack is removed.
*
* @param nh Pointer to operation handle
* @param tag, value, ... List of tagged parameters
*
* @return
* nothing
*
* @par Related tags:
* #NUTAG_REGISTRAR \n
* Tags in <sip_tag.h> except #SIPTAG_EXPIRES or #SIPTAG_EXPIRES_STR
*
* @par Events:
* #nua_r_unregister
*/
void nua_unregister(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...) void nua_unregister(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...)
{ {
NUA_SIGNAL(nh, nua_r_unregister, tag, value); NUA_SIGNAL(nh, nua_r_unregister, tag, value);
...@@ -766,9 +722,9 @@ void nua_unregister(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...) ...@@ -766,9 +722,9 @@ void nua_unregister(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...)
* hung-up with nua_bye(). * hung-up with nua_bye().
* *
* Optionally * Optionally
* - uses early media if #NUTAG_EARLY_MEDIA tag is used with non zero value * - uses early media if NUTAG_EARLY_MEDIA() tag is used with non zero value
* - media parameters can be set by NUTAG_MEDIA_* tags * - media parameters can be set by NUTAG_MEDIA_* tags
* - if #NUTAG_MEDIA_ENABLE tag is used with value zero then the soa is * - if NUTAG_MEDIA_ENABLE() tag is used with value zero then the soa is
* not used and application must create the SDP * not used and application must create the SDP
* - nua_invite() can be used to change call status: * - nua_invite() can be used to change call status:
* - #SOATAG_HOLD tag listing the media put on hold or with value "*" sets * - #SOATAG_HOLD tag listing the media put on hold or with value "*" sets
...@@ -820,7 +776,7 @@ void nua_invite(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...) ...@@ -820,7 +776,7 @@ void nua_invite(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...)
* *
* Acknowledge a successful response to INVITE request * Acknowledge a successful response to INVITE request
* with SIP ACK message. This function is need only if * with SIP ACK message. This function is need only if
* #NUTAG_AUTOACK parameter has been cleared. * NUTAG_AUTOACK() parameter has been cleared.
* *
* @param nh Pointer to operation handle * @param nh Pointer to operation handle
* @param tag, value, ... List of tagged parameters * @param tag, value, ... List of tagged parameters
...@@ -966,7 +922,7 @@ void nua_chat(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...) ...@@ -966,7 +922,7 @@ void nua_chat(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...)
* nothing * nothing
* *
* @par Related Tags: * @par Related Tags:
* #NUTAG_URL * NUTAG_URL()
* Tags in <sip_tag.h> * Tags in <sip_tag.h>
* *
* @par Events: * @par Events:
...@@ -1041,7 +997,7 @@ void nua_notify(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...) ...@@ -1041,7 +997,7 @@ void nua_notify(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...)
* nothing * nothing
* *
* @par Related Tags: * @par Related Tags:
* #NUTAG_URL \n * NUTAG_URL() \n
* #SIPTAG_EVENT or #SIPTAG_EVENT_STR \n * #SIPTAG_EVENT or #SIPTAG_EVENT_STR \n
* #SIPTAG_CONTENT_TYPE or SIPTAG_CONTENT_TYPE_STR \n * #SIPTAG_CONTENT_TYPE or SIPTAG_CONTENT_TYPE_STR \n
* #SIPTAG_PAYLOAD or #SIPTAG_PAYLOAD_STR \n * #SIPTAG_PAYLOAD or #SIPTAG_PAYLOAD_STR \n
...@@ -1096,7 +1052,7 @@ void nua_terminate(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...) ...@@ -1096,7 +1052,7 @@ void nua_terminate(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...)
* nothing * nothing
* *
* @par Related Tags: * @par Related Tags:
* #NUTAG_URL \n * NUTAG_URL() \n
* Tags in <sip_tag.h> * Tags in <sip_tag.h>
* *
* @par Events: * @par Events:
...@@ -1124,7 +1080,7 @@ void nua_refer(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...) ...@@ -1124,7 +1080,7 @@ void nua_refer(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...)
* nothing * nothing
* *
* @par Related Tags: * @par Related Tags:
* #NUTAG_URL \n * NUTAG_URL() \n
* Tags in <sip_tag.h> * Tags in <sip_tag.h>
* *
* @par Events: * @par Events:
...@@ -1148,7 +1104,7 @@ void nua_publish(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...) ...@@ -1148,7 +1104,7 @@ void nua_publish(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...)
* nothing * nothing
* *
* @par Related Tags: * @par Related Tags:
* #NUTAG_URL \n * NUTAG_URL() \n
* Tags in <sip_tag.h> * Tags in <sip_tag.h>
* *
* @par Events: * @par Events:
...@@ -1236,7 +1192,7 @@ void nua_update(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...) ...@@ -1236,7 +1192,7 @@ void nua_update(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...)
* *
* - 401 / 407 response with www-authenticate header/ proxy-authenticate header * - 401 / 407 response with www-authenticate header/ proxy-authenticate header
* - application should provide stack with username&password for each realm * - application should provide stack with username&password for each realm
* with #NUTAG_AUTH tag * with NUTAG_AUTH() tag
* - restarts operation * - restarts operation
* *
* @param nh Pointer to operation handle * @param nh Pointer to operation handle
...@@ -1246,7 +1202,7 @@ void nua_update(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...) ...@@ -1246,7 +1202,7 @@ void nua_update(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...)
* nothing * nothing
* *
* @par Related Tags: * @par Related Tags:
* #NUTAG_AUTH * NUTAG_AUTH()
* *
* @par Events: * @par Events:
* (any operation events) * (any operation events)
...@@ -1262,8 +1218,8 @@ void nua_authenticate(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...) ...@@ -1262,8 +1218,8 @@ void nua_authenticate(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...)
* incoming subscriber launches nua_i_subscription event. Subscriber * incoming subscriber launches nua_i_subscription event. Subscriber
* can be authorized in this application callback. * can be authorized in this application callback.
* *
* #NUTAG_SUB tag * NUTAG_SUB() tag
* #NUTAG_SUBSTATE tag * NUTAG_SUBSTATE() tag
* *
* @param nh Pointer to operation handle * @param nh Pointer to operation handle
* @param tag, value, ... List of tagged parameters * @param tag, value, ... List of tagged parameters
...@@ -1272,8 +1228,8 @@ void nua_authenticate(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...) ...@@ -1272,8 +1228,8 @@ void nua_authenticate(nua_handle_t *nh, tag_type_t tag, tag_value_t value, ...)
* nothing * nothing
* *
* @par Related Tags: * @par Related Tags:
* #NUTAG_SUB * NUTAG_SUB()
* #NUTAG_SUBSTATE * NUTAG_SUBSTATE()
* *
* @par Events: * @par Events:
* (any operation events) * (any operation events)
......
...@@ -793,7 +793,7 @@ void app_i_message(int status, ...@@ -793,7 +793,7 @@ void app_i_message(int status,
} /* app_i_message */ } /* app_i_message */
@endcode @endcode
@subsection nua_notifier Creating Presence Server @subsection nua_notifier Creating a Presence Server
@code @code
...@@ -827,7 +827,7 @@ void app_i_message(int status, ...@@ -827,7 +827,7 @@ void app_i_message(int status,
@endcode @endcode
After the nua_notifier object -- the presence server -- is created, an After the nua_notifier object -- the presence server -- is created, an
event nua_r_notifier is launched. Status and phrase values of the event nua_r_notifier is returned. Status and phrase values of the
app_callback function indicate the success of the creation. app_callback function indicate the success of the creation.
Authorization of an incoming subscription (to the local presence Authorization of an incoming subscription (to the local presence
...@@ -2386,20 +2386,6 @@ NUTAG_AUTOANSWER(0) on B side, NUTAG_AUTOACK(0) on A side. ...@@ -2386,20 +2386,6 @@ NUTAG_AUTOANSWER(0) on B side, NUTAG_AUTOACK(0) on A side.
* #NUTAG_SUBSTATE * #NUTAG_SUBSTATE
*/ */
/** @var nua_event_e::nua_r_register
*
* Answer to outgoing REGISTER.
*
* The REGISTER may be sent explicitly by nua_register() or
* implicitly by NUA state machine.
*
* @param nh operation handle associated with the call
* @param hmagic operation magic associated with the call
* @param sip response to REGISTER request or NULL upon an error
* (error code and message are in status an phrase parameters)
* @param tags empty
*/
/** @var nua_event_e::nua_r_shutdown /** @var nua_event_e::nua_r_shutdown
* *
* Answer to nua_shutdown(). * Answer to nua_shutdown().
...@@ -2440,17 +2426,6 @@ NUTAG_AUTOANSWER(0) on B side, NUTAG_AUTOACK(0) on A side. ...@@ -2440,17 +2426,6 @@ NUTAG_AUTOANSWER(0) on B side, NUTAG_AUTOACK(0) on A side.
* @param tags empty * @param tags empty
*/ */
/** @var nua_event_e::nua_r_unregister
*
* Answer to outgoing un-REGISTER.
*
* @param nh operation handle associated with the call
* @param hmagic operation magic associated with the call
* @param sip response to REGISTER request or NULL upon an error
* (error code and message are in status and phrase parameters)
* @param tags empty
*/
/** @var nua_event_e::nua_r_unsubscribe /** @var nua_event_e::nua_r_unsubscribe
* *
* Answer to outgoing un-SUBSCRIBE. * Answer to outgoing un-SUBSCRIBE.
......
...@@ -22,9 +22,8 @@ ...@@ -22,9 +22,8 @@
* *
*/ */
/** /**@CFILE nua_common.c
* @file nua_common.c * @brief Function common to both stack and application side.
* @brief
* *
* @author Pekka.Pessi@nokia.com * @author Pekka.Pessi@nokia.com
* *
...@@ -74,7 +73,8 @@ ...@@ -74,7 +73,8 @@
#include "nua_stack.h" #include "nua_stack.h"
/** Create an operation handle /**@internal
* Create an operation handle
* *
* Allocates a new operation handle and associated storage. * Allocates a new operation handle and associated storage.
* *
......
...@@ -61,11 +61,13 @@ static void nua_dialog_usage_remove_at(nua_owner_t*, nua_dialog_state_t*, ...@@ -61,11 +61,13 @@ static void nua_dialog_usage_remove_at(nua_owner_t*, nua_dialog_state_t*,
nua_dialog_usage_t**); nua_dialog_usage_t**);
static void nua_dialog_log_usage(nua_owner_t *, nua_dialog_state_t *); static void nua_dialog_log_usage(nua_owner_t *, nua_dialog_state_t *);
/** UAS tag and route. /**@internal
* UAS tag and route.
* *
* Update dialog tags and route on the UAS side. * Update dialog tags and route on the UAS side.
* *
* @param own dialog owner * @param own dialog owner
* @param ds dialog state
* @param sip SIP message containing response used to update dialog * @param sip SIP message containing response used to update dialog
* @param rtag if true, set remote tag within the leg * @param rtag if true, set remote tag within the leg
*/ */
...@@ -89,11 +91,13 @@ void nua_dialog_uas_route(nua_owner_t *own, ...@@ -89,11 +91,13 @@ void nua_dialog_uas_route(nua_owner_t *own,
nta_leg_rtag(ds->ds_leg, sip->sip_from->a_tag); nta_leg_rtag(ds->ds_leg, sip->sip_from->a_tag);
} }
/** UAC tag and route. /**@internal
* UAC tag and route.
* *
* Update dialog tags and route on the UAC side. * Update dialog tags and route on the UAC side.
* *
* @param own dialog owner * @param own dialog owner
* @param ds dialog state
* @param sip SIP message containing response used to update dialog * @param sip SIP message containing response used to update dialog
* @param rtag if true, set remote tag within the leg * @param rtag if true, set remote tag within the leg
*/ */
...@@ -117,7 +121,7 @@ void nua_dialog_uac_route(nua_owner_t *own, ...@@ -117,7 +121,7 @@ void nua_dialog_uac_route(nua_owner_t *own,
nta_leg_rtag(ds->ds_leg, sip->sip_to->a_tag); nta_leg_rtag(ds->ds_leg, sip->sip_to->a_tag);
} }
/** Store information from remote endpoint. */ /**@internal Store information from remote endpoint. */
void nua_dialog_store_peer_info(nua_owner_t *own, void nua_dialog_store_peer_info(nua_owner_t *own,
nua_dialog_state_t *ds, nua_dialog_state_t *ds,
sip_t const *sip) sip_t const *sip)
...@@ -177,7 +181,7 @@ void nua_dialog_store_peer_info(nua_owner_t *own, ...@@ -177,7 +181,7 @@ void nua_dialog_store_peer_info(nua_owner_t *own,
} }
} }
/** Get dialog usage slot */ /** @internal Get dialog usage slot. */
nua_dialog_usage_t ** nua_dialog_usage_t **
nua_dialog_usage_at(nua_dialog_state_t const *ds, nua_dialog_usage_at(nua_dialog_state_t const *ds,
nua_usage_class const *kind, nua_usage_class const *kind,
...@@ -217,7 +221,7 @@ nua_dialog_usage_at(nua_dialog_state_t const *ds, ...@@ -217,7 +221,7 @@ nua_dialog_usage_at(nua_dialog_state_t const *ds,
return &none; return &none;
} }
/** Get a dialog usage */ /** @internal Get a dialog usage */
nua_dialog_usage_t *nua_dialog_usage_get(nua_dialog_state_t const *ds, nua_dialog_usage_t *nua_dialog_usage_get(nua_dialog_state_t const *ds,
nua_usage_class const *kind, nua_usage_class const *kind,
sip_event_t const *event) sip_event_t const *event)
...@@ -225,7 +229,7 @@ nua_dialog_usage_t *nua_dialog_usage_get(nua_dialog_state_t const *ds, ...@@ -225,7 +229,7 @@ nua_dialog_usage_t *nua_dialog_usage_get(nua_dialog_state_t const *ds,
return *nua_dialog_usage_at(ds, kind, event); return *nua_dialog_usage_at(ds, kind, event);
} }
/** Get dialog usage name */ /** @internal Get dialog usage name */
char const *nua_dialog_usage_name(nua_dialog_usage_t const *du) char const *nua_dialog_usage_name(nua_dialog_usage_t const *du)
{ {
if (du == NULL) if (du == NULL)
...@@ -233,7 +237,7 @@ char const *nua_dialog_usage_name(nua_dialog_usage_t const *du) ...@@ -233,7 +237,7 @@ char const *nua_dialog_usage_name(nua_dialog_usage_t const *du)
return du->du_class->usage_name(du); return du->du_class->usage_name(du);
} }
/** Add dialog usage */ /** @internal Add dialog usage */
nua_dialog_usage_t *nua_dialog_usage_add(nua_owner_t *own, nua_dialog_usage_t *nua_dialog_usage_add(nua_owner_t *own,
struct nua_dialog_state *ds, struct nua_dialog_state *ds,
nua_usage_class const *uclass, nua_usage_class const *uclass,
...@@ -290,7 +294,7 @@ nua_dialog_usage_t *nua_dialog_usage_add(nua_owner_t *own, ...@@ -290,7 +294,7 @@ nua_dialog_usage_t *nua_dialog_usage_add(nua_owner_t *own,
return NULL; return NULL;
} }
/** Remove dialog usage. */ /** @internal Remove dialog usage. */
void nua_dialog_usage_remove(nua_owner_t *own, void nua_dialog_usage_remove(nua_owner_t *own,
nua_dialog_state_t *ds, nua_dialog_state_t *ds,
nua_dialog_usage_t *du) nua_dialog_usage_t *du)
...@@ -308,7 +312,7 @@ void nua_dialog_usage_remove(nua_owner_t *own, ...@@ -308,7 +312,7 @@ void nua_dialog_usage_remove(nua_owner_t *own,
nua_dialog_usage_remove_at(own, ds, at); nua_dialog_usage_remove_at(own, ds, at);
} }
/** Remove dialog usage. /** @internal Remove dialog usage.
* *
* Zap dialog state (leg, tag and route) if no usages remain. * Zap dialog state (leg, tag and route) if no usages remain.
*/ */
...@@ -382,7 +386,7 @@ void nua_dialog_log_usage(nua_owner_t *own, nua_dialog_state_t *ds) ...@@ -382,7 +386,7 @@ void nua_dialog_log_usage(nua_owner_t *own, nua_dialog_state_t *ds)
} }
} }
/** Dialog has been terminated. */ /** @internal Dialog has been terminated. */
void nua_dialog_terminated(nua_owner_t *own, void nua_dialog_terminated(nua_owner_t *own,
struct nua_dialog_state *ds, struct nua_dialog_state *ds,
int status, int status,
...@@ -405,7 +409,8 @@ void nua_dialog_terminated(nua_owner_t *own, ...@@ -405,7 +409,8 @@ void nua_dialog_terminated(nua_owner_t *own,
} }
/** Set refresh value suitably. /**@internal
* Set refresh value suitably.
* *
* The refresh time is set either at half of the @a delta interval or if @a * The refresh time is set either at half of the @a delta interval or if @a
* delta is less than 5 minutes, 30 seconds before end of interval. $ * delta is less than 5 minutes, 30 seconds before end of interval. $
...@@ -432,7 +437,7 @@ void nua_dialog_usage_set_refresh(nua_dialog_usage_t *du, unsigned delta) ...@@ -432,7 +437,7 @@ void nua_dialog_usage_set_refresh(nua_dialog_usage_t *du, unsigned delta)
du->du_refresh = target; du->du_refresh = target;
} }
/** Call the owner operation function */ /** @internal Call the owner operation function. */
void nua_dialog_usage_refresh(nua_owner_t *owner, void nua_dialog_usage_refresh(nua_owner_t *owner,
nua_dialog_usage_t *du, nua_dialog_usage_t *du,
sip_time_t now) sip_time_t now)
......
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
#ifndef NUA_DIALOG_H /** Defined when <nua_dialog.h> has been included. */ #ifndef NUA_DIALOG_H /** Defined when <nua_dialog.h> has been included. */
#define NUA_DIALOG_H #define NUA_DIALOG_H
/**@file nua_dialog.h /**@IFILE nua_dialog.h
* @brief Dialog and dialog usage handling * @brief Dialog and dialog usage handling
* *
* @author Pekka Pessi <Pekka.Pessi@nokia.com> * @author Pekka Pessi <Pekka.Pessi@nokia.com>
......
...@@ -244,11 +244,12 @@ void authorize_watcher(nea_server_t *nes, ...@@ -244,11 +244,12 @@ void authorize_watcher(nea_server_t *nes,
} }
/* ---------------------------------------------------------------------- */ /* ---------------------------------------------------------------------- */
/* Authorization by application */ /* Authorization of watchers by application */
void void nua_stack_authorize(nua_t *nua,
nua_stack_authorize(nua_t *nua, nua_handle_t *nh, nua_event_t e, nua_handle_t *nh,
tagi_t const *tags) nua_event_t e,
tagi_t const *tags)
{ {
nea_sub_t *sub = NULL; nea_sub_t *sub = NULL;
nea_state_t state = nea_extended; nea_state_t state = nea_extended;
...@@ -268,13 +269,11 @@ nua_stack_authorize(nua_t *nua, nua_handle_t *nh, nua_event_t e, ...@@ -268,13 +269,11 @@ nua_stack_authorize(nua_t *nua, nua_handle_t *nh, nua_event_t e,
return; return;
} }
/** @internal Shutdown notifier object */
int nh_notifier_shutdown(nua_handle_t *nh,
nea_event_t *ev,
/** Shutdown notifier object */ tag_type_t t,
int tag_value_t v, ...)
nh_notifier_shutdown(nua_handle_t *nh, nea_event_t *ev,
tag_type_t t, tag_value_t v, ...)
{ {
nea_server_t *nes = nh->nh_notifier; nea_server_t *nes = nh->nh_notifier;
nea_subnode_t const **subs; nea_subnode_t const **subs;
...@@ -310,9 +309,11 @@ nh_notifier_shutdown(nua_handle_t *nh, nea_event_t *ev, ...@@ -310,9 +309,11 @@ nh_notifier_shutdown(nua_handle_t *nh, nea_event_t *ev,
} }
/** Terminate notifier. */ /** @internal Terminate notifier. */
void void nua_stack_terminate(nua_t *nua,
nua_stack_terminate(nua_t *nua, nua_handle_t *nh, nua_event_t e, tagi_t const *tags) nua_handle_t *nh,
nua_event_t e,
tagi_t const *tags)
{ {
sip_event_t const *event = NULL; sip_event_t const *event = NULL;
sip_content_type_t const *ct = NULL; sip_content_type_t const *ct = NULL;
......
...@@ -22,8 +22,8 @@ ...@@ -22,8 +22,8 @@
* *
*/ */