[Asterisk-code-review] progdocs: Fix for Doxygen, the hidden parts. (asterisk[16])
Kevin Harwell
asteriskteam at digium.com
Thu Dec 2 10:37:53 CST 2021
Kevin Harwell has submitted this change. ( https://gerrit.asterisk.org/c/asterisk/+/17603 )
Change subject: progdocs: Fix for Doxygen, the hidden parts.
......................................................................
progdocs: Fix for Doxygen, the hidden parts.
ASTERISK-29779
Change-Id: If338163488498f65fa7248b60e80299c0a928e4b
---
M apps/app_confbridge.c
M apps/app_queue.c
M apps/app_stack.c
M apps/app_stasis.c
M apps/app_voicemail.c
M channels/chan_dahdi.c
M channels/iax2/include/firmware.h
M channels/misdn/isdn_lib_intern.h
M channels/sig_pri.c
M channels/sig_pri.h
M channels/sig_ss7.c
M funcs/func_odbc.c
M include/asterisk/calendar.h
M include/asterisk/channel.h
M include/asterisk/cli.h
M include/asterisk/config.h
M include/asterisk/datastore.h
M include/asterisk/http_websocket.h
M include/asterisk/logger.h
M include/asterisk/netsock2.h
M include/asterisk/pbx.h
M include/asterisk/sorcery.h
M include/asterisk/stasis.h
M include/asterisk/stasis_app_impl.h
M include/asterisk/stasis_app_mailbox.h
M include/asterisk/tcptls.h
M include/asterisk/test.h
M main/astmm.c
M main/astobj2_container.c
M main/dns_recurring.c
M main/dns_test.c
M main/optional_api.c
M main/pbx.c
M main/stasis_message_router.c
M main/test.c
M menuselect/menuselect.c
M menuselect/menuselect_curses.c
M menuselect/menuselect_gtk.c
M menuselect/menuselect_newt.c
M menuselect/menuselect_stub.c
M pbx/pbx_dundi.c
M pbx/pbx_lua.c
M res/res_odbc.c
M res/res_pjsip/config_transport.c
M res/res_xmpp.c
M tests/test_astobj2.c
M tests/test_astobj2_thrash.c
M tests/test_hashtab_thrash.c
48 files changed, 121 insertions(+), 381 deletions(-)
Approvals:
Kevin Harwell: Looks good to me, approved; Approved for Submit
Benjamin Keith Ford: Looks good to me, but someone else must approve
diff --git a/apps/app_confbridge.c b/apps/app_confbridge.c
index 40a2b4d..2eaae41 100644
--- a/apps/app_confbridge.c
+++ b/apps/app_confbridge.c
@@ -909,7 +909,7 @@
return 0;
}
-/* \brief Playback the given filename and monitor for any dtmf interrupts.
+/*! \brief Playback the given filename and monitor for any dtmf interrupts.
*
* This function is used to playback sound files on a given channel and optionally
* allow dtmf interrupts to occur.
@@ -923,7 +923,9 @@
* \param channel Optional channel to play file on if bridge_channel not given
* \param filename The file name to playback
*
- * \retval -1 failure during playback, 0 on file was fully played, 1 on dtmf interrupt.
+ * \retval -1 failure during playback.
+ * \retval 0 on file was fully played.
+ * \retval 1 on dtmf interrupt.
*/
static int play_file(struct ast_bridge_channel *bridge_channel, struct ast_channel *channel,
const char *filename)
@@ -1306,7 +1308,7 @@
ast_channel_name(user->chan));
}
-/*
+/*!
* \internal
* \brief Mute/unmute a single user.
*/
@@ -3491,7 +3493,7 @@
return CLI_SHOWUSAGE;
}
-/* \internal
+/*! \internal
* \brief finds a conference by name and locks/unlocks.
*
* \retval 0 success
@@ -3515,7 +3517,7 @@
return res;
}
-/* \internal
+/*! \internal
* \brief finds a conference user by channel name and mutes/unmutes them.
*
* \retval 0 success
diff --git a/apps/app_queue.c b/apps/app_queue.c
index 86a2682..ca8fc6f 100644
--- a/apps/app_queue.c
+++ b/apps/app_queue.c
@@ -7797,9 +7797,10 @@
return RESULT_FAILURE;
}
-/* \brief Gets members penalty.
+/*!
+ * \brief Gets members penalty.
* \return Return the members penalty or RESULT_FAILURE on error.
-*/
+ */
static int get_member_penalty(char *queuename, char *interface)
{
int foundqueue = 0, penalty;
@@ -11537,9 +11538,10 @@
return 0;
}
-/* \brief Find a member by looking up queuename and interface.
+/*!
+ * \brief Find a member by looking up queuename and interface.
* \return member or NULL if member not found.
-*/
+ */
static struct member *find_member_by_queuename_and_interface(const char *queuename, const char *interface)
{
struct member *mem = NULL;
diff --git a/apps/app_stack.c b/apps/app_stack.c
index 3c857a9..557c6f1 100644
--- a/apps/app_stack.c
+++ b/apps/app_stack.c
@@ -924,8 +924,6 @@
* \param chan Channel to balance stack on.
*
* \note The channel is already locked when called.
- *
- * \return Nothing
*/
static void balance_stack(struct ast_channel *chan)
{
diff --git a/apps/app_stasis.c b/apps/app_stasis.c
index b98c2b4..bf47bb0 100644
--- a/apps/app_stasis.c
+++ b/apps/app_stasis.c
@@ -79,7 +79,7 @@
/*! \brief Dialplan application name */
static const char *stasis = "Stasis";
-/*! /brief Stasis dialplan application callback */
+/*! \brief Stasis dialplan application callback */
static int app_exec(struct ast_channel *chan, const char *data)
{
char *parse = NULL;
diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c
index 3014ab4..bde543c 100644
--- a/apps/app_voicemail.c
+++ b/apps/app_voicemail.c
@@ -2970,6 +2970,7 @@
* \param recip
* \param fmt
* \param dir
+ * \param flag, dest_folder
*
* This works with IMAP storage based mailboxes.
*
@@ -4259,8 +4260,6 @@
*
* This method is used when mailboxes are stored in an ODBC back end.
* The specified message is directly deleted from the database 'voicemessages' table.
- *
- * \return the value greater than zero on success to indicate the number of messages, less than zero on error.
*/
static void delete_file(const char *sdir, int smsg)
{
diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c
index d8dc90d..e5f0926 100644
--- a/channels/chan_dahdi.c
+++ b/channels/chan_dahdi.c
@@ -2884,13 +2884,17 @@
*
* \details
* original dialstring:
- * DAHDI/[i<span>-](g|G|r|R)<group#(0-63)>[c|r<cadence#>|d][/extension[/options]]
+ * \verbatim
+ DAHDI/[i<span>-](g|G|r|R)<group#(0-63)>[c|r<cadence#>|d][/extension[/options]]
+ \endverbatim
*
* The modified dialstring will have prefixed the channel-group section
* with the ISDN channel restriction.
*
* buf:
- * DAHDI/i<span>-(g|G|r|R)<group#(0-63)>[c|r<cadence#>|d][/extension[/options]]
+ * \verbatim
+ DAHDI/i<span>-(g|G|r|R)<group#(0-63)>[c|r<cadence#>|d][/extension[/options]]
+ \endverbatim
*
* The routine will check to see if the ISDN channel restriction is already
* in the original dialstring.
@@ -3150,6 +3154,7 @@
* \param law Companding law to use.
* \param exten Dialplan extension for incoming call.
* \param requestor Channel requesting this new channel.
+ * \param assignedids
*
* \retval ast_channel on success.
* \retval NULL on error.
diff --git a/channels/iax2/include/firmware.h b/channels/iax2/include/firmware.h
index fba1afb..548682e 100644
--- a/channels/iax2/include/firmware.h
+++ b/channels/iax2/include/firmware.h
@@ -38,8 +38,6 @@
/*!
* \internal
* \brief Unload all of the currently loaded firmware.
- *
- * return Nothing
*/
void iax_firmware_unload(void);
diff --git a/channels/misdn/isdn_lib_intern.h b/channels/misdn/isdn_lib_intern.h
index d811f80..d71fe77 100644
--- a/channels/misdn/isdn_lib_intern.h
+++ b/channels/misdn/isdn_lib_intern.h
@@ -73,7 +73,7 @@
/*! \brief D Channel mISDN driver stack ID (Parent stack ID) */
int d_stid;
- /*! /brief Number of B channels supported by this port */
+ /*! \brief Number of B channels supported by this port */
int b_num;
/*! \brief B Channel mISDN driver stack IDs (Child stack IDs) */
diff --git a/channels/sig_pri.c b/channels/sig_pri.c
index 11c3740..c16c918 100644
--- a/channels/sig_pri.c
+++ b/channels/sig_pri.c
@@ -300,8 +300,6 @@
*
* \param pri PRI span control structure.
*
- * \return Nothing
- *
* \note Assumes the pri->lock is already obtained.
*/
static void sig_pri_span_devstate_changed(struct sig_pri_span *pri)
@@ -317,8 +315,6 @@
* \since 1.8
*
* \param p sig_pri channel structure.
- *
- * \return Nothing
*/
static void sig_pri_set_caller_id(struct sig_pri_chan *p)
{
@@ -361,8 +357,6 @@
*
* \param p sig_pri channel structure.
* \param dnid Dialed Number Identifier string.
- *
- * \return Nothing
*/
static void sig_pri_set_dnid(struct sig_pri_chan *p, const char *dnid)
{
@@ -378,8 +372,6 @@
*
* \param p sig_pri channel structure.
* \param rdnis Redirecting Directory Number Information Service (RDNIS) string.
- *
- * \return Nothing
*/
static void sig_pri_set_rdnis(struct sig_pri_chan *p, const char *rdnis)
{
@@ -715,9 +707,6 @@
*
* \param ast_subaddress Asterisk party subaddress structure.
* \param pri_subaddress PRI party subaddress structure.
- *
- * \return Nothing
- *
*/
static void sig_pri_set_subaddress(struct ast_party_subaddress *ast_subaddress, const struct pri_party_subaddress *pri_subaddress)
{
@@ -838,8 +827,6 @@
* \param pri_subaddress PRI party subaddress structure.
* \param ast_subaddress Asterisk party subaddress structure.
*
- * \return Nothing
- *
* \note Assumes that pri_subaddress has been previously memset to zero.
*/
static void sig_pri_party_subaddress_from_ast(struct pri_party_subaddress *pri_subaddress, const struct ast_party_subaddress *ast_subaddress)
@@ -884,8 +871,6 @@
* \param pri_name PRI party name structure.
* \param ast_name Asterisk party name structure.
*
- * \return Nothing
- *
* \note Assumes that pri_name has been previously memset to zero.
*/
static void sig_pri_party_name_from_ast(struct pri_party_name *pri_name, const struct ast_party_name *ast_name)
@@ -909,8 +894,6 @@
* \param pri_number PRI party number structure.
* \param ast_number Asterisk party number structure.
*
- * \return Nothing
- *
* \note Assumes that pri_number has been previously memset to zero.
*/
static void sig_pri_party_number_from_ast(struct pri_party_number *pri_number, const struct ast_party_number *ast_number)
@@ -934,8 +917,6 @@
* \param pri_id PRI party id structure.
* \param ast_id Asterisk party id structure.
*
- * \return Nothing
- *
* \note Assumes that pri_id has been previously memset to zero.
*/
static void sig_pri_party_id_from_ast(struct pri_party_id *pri_id, const struct ast_party_id *ast_id)
@@ -955,8 +936,6 @@
* \param pvt sig_pri private channel structure.
* \param ast Asterisk channel
*
- * \return Nothing
- *
* \note Assumes that the PRI lock is already obtained.
*/
static void sig_pri_redirecting_update(struct sig_pri_chan *pvt, struct ast_channel *ast)
@@ -985,8 +964,6 @@
* \since 1.8
*
* \param p sig_pri channel structure.
- *
- * \return Nothing
*/
static void sig_pri_dsp_reset_and_flush_digits(struct sig_pri_chan *p)
{
@@ -1060,8 +1037,6 @@
* \since 1.8
*
* \param p Channel private control structure.
- *
- * \return Nothing
*/
static void sig_pri_open_media(struct sig_pri_chan *p)
{
@@ -1082,8 +1057,6 @@
* \param p Channel private control structure.
*
* \note Assumes the private and owner are locked.
- *
- * \return Nothing
*/
static void sig_pri_ami_channel_event(struct sig_pri_chan *p)
{
@@ -1262,8 +1235,6 @@
*
* \note Assumes the pri->lock is already obtained.
* \note Assumes the sig_pri_lock_private(pri->pvts[chanpos]) is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_lock_owner(struct sig_pri_span *pri, int chanpos)
{
@@ -1295,8 +1266,6 @@
*
* \note Assumes the pri->lock is already obtained.
* \note Assumes the sig_pri_lock_private(pri->pvts[chanpos]) is already obtained.
- *
- * \return Nothing
*/
static void pri_queue_frame(struct sig_pri_span *pri, int chanpos, struct ast_frame *frame)
{
@@ -1317,8 +1286,6 @@
*
* \note Assumes the pri->lock is already obtained.
* \note Assumes the sig_pri_lock_private(pri->pvts[chanpos]) is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_queue_hold(struct sig_pri_span *pri, int chanpos)
{
@@ -1339,8 +1306,6 @@
*
* \note Assumes the pri->lock is already obtained.
* \note Assumes the sig_pri_lock_private(pri->pvts[chanpos]) is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_queue_unhold(struct sig_pri_span *pri, int chanpos)
{
@@ -1362,8 +1327,6 @@
*
* \note Assumes the pri->lock is already obtained.
* \note Assumes the sig_pri_lock_private(pri->pvts[chanpos]) is already obtained.
- *
- * \return Nothing
*/
static void pri_queue_control(struct sig_pri_span *pri, int chanpos, int subclass)
{
@@ -1390,8 +1353,6 @@
* \note The unlocking/locking sequence now present has been stress tested
* without deadlocks. Please don't change it without consulting
* core development team members.
- *
- * \return Nothing
*/
static void sig_pri_queue_hangup(struct sig_pri_span *pri, int chanpos)
{
@@ -1427,11 +1388,10 @@
* \param pri PRI span control structure.
* \param chanpos Channel position in the span.
* \param cause String describing the cause to be placed into the frame.
+ * \param ast_cause
*
* \note Assumes the pri->lock is already obtained.
* \note Assumes the sig_pri_lock_private(pri->pvts[chanpos]) is already obtained.
- *
- * \return Nothing
*/
static void pri_queue_pvt_cause_data(struct sig_pri_span *pri, int chanpos, const char *cause, int ast_cause)
{
@@ -1493,8 +1453,6 @@
* Asks the channel driver to queue the span for destruction at a
* possibly later time, if (e.g.) locking considerations don't allow
* destroying it right now.
- *
- * \return Nothing
*/
static void pri_destroy_later(struct sig_pri_span *pri)
{
@@ -1514,8 +1472,6 @@
* \param cause Reason call was killed.
*
* \note Assumes the pvt->pri->lock is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_kill_call(struct sig_pri_span *pri, q931_call *call, int cause)
{
@@ -1850,8 +1806,6 @@
* \param pri PRI span control structure.
* \param number Number to apply numbering plan.
* \param plan Numbering plan to apply.
- *
- * \return Nothing
*/
static void apply_plan_to_number(char *buf, size_t size, const struct sig_pri_span *pri, const char *number, int plan)
{
@@ -1886,8 +1840,6 @@
* \param pri PRI span control structure.
* \param number Number to apply numbering plan.
* \param plan Numbering plan to apply.
- *
- * \return Nothing
*/
static void apply_plan_to_existing_number(char *buf, size_t size, const struct sig_pri_span *pri, const char *number, int plan)
{
@@ -1908,8 +1860,6 @@
* \param pri PRI span control structure.
*
* \note Assumes the pri->lock is already obtained.
- *
- * \return Nothing
*/
static void pri_check_restart(struct sig_pri_span *pri)
{
@@ -1956,8 +1906,6 @@
* \param pri PRI span control structure.
*
* \note Assumes the pri->lock is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_init_config(struct sig_pri_chan *pvt, struct sig_pri_span *pri)
{
@@ -2270,8 +2218,6 @@
*
* \note The filled in ast_name structure needs to be destroyed by
* ast_party_name_free() when it is no longer needed.
- *
- * \return Nothing
*/
static void sig_pri_party_name_convert(struct ast_party_name *ast_name, const struct pri_party_name *pri_name)
{
@@ -2292,8 +2238,6 @@
*
* \note The filled in ast_number structure needs to be destroyed by
* ast_party_number_free() when it is no longer needed.
- *
- * \return Nothing
*/
static void sig_pri_party_number_convert(struct ast_party_number *ast_number, const struct pri_party_number *pri_number, struct sig_pri_span *pri)
{
@@ -2318,8 +2262,6 @@
*
* \note The filled in ast_id structure needs to be destroyed by
* ast_party_id_free() when it is no longer needed.
- *
- * \return Nothing
*/
static void sig_pri_party_id_convert(struct ast_party_id *ast_id, const struct pri_party_id *pri_id, struct sig_pri_span *pri)
{
@@ -2348,8 +2290,6 @@
*
* \note The filled in ast_redirecting structure needs to be destroyed by
* ast_party_redirecting_free() when it is no longer needed.
- *
- * \return Nothing
*/
static void sig_pri_redirecting_convert(struct ast_party_redirecting *ast_redirecting,
const struct pri_party_redirecting *pri_redirecting,
@@ -2473,8 +2413,6 @@
* \param msg Event message string being built.
* \param prefix Prefix to add to the party id lines.
* \param party Party information to encode.
- *
- * \return Nothing
*/
static void party_json_to_ami(struct ast_str **msg, const char *prefix, struct ast_json *party)
{
@@ -2554,8 +2492,6 @@
*
* \note Assumes the pri->lock is already obtained.
* \note Assumes the owner channel lock is already obtained if still present.
- *
- * \return Nothing
*/
static void sig_pri_mcid_event(struct sig_pri_span *pri, const struct pri_subcmd_mcid_req *mcid, struct ast_channel *owner)
{
@@ -2609,8 +2545,6 @@
* \param is_successful TRUE if the transfer was successful.
*
* \note Assumes the rsp->pri->lock is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_transfer_rsp(struct xfer_rsp_data *rsp, int is_successful)
{
@@ -2879,8 +2813,6 @@
* \since 1.8
*
* \param data Monitor instance to destroy.
- *
- * \return Nothing
*/
static void sig_pri_cc_monitor_instance_destroy(void *data)
{
@@ -3028,8 +2960,6 @@
*
* \note Assumes the pri->lock is already obtained.
* \note Assumes the sig_pri_lock_private(pri->pvts[chanpos]) is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_cc_generic_check(struct sig_pri_span *pri, int chanpos, enum ast_cc_service_type service)
{
@@ -3125,8 +3055,6 @@
* \param pri PRI span control structure.
* \param cc_id CC record ID.
* \param is_agent TRUE if the cc_id is for an agent.
- *
- * \return Nothing
*/
static void sig_pri_cc_link_canceled(struct sig_pri_span *pri, long cc_id, int is_agent)
{
@@ -3359,8 +3287,6 @@
* \note Assumes the pri->lock is already obtained.
* \note Assumes the sig_pri private is locked
* \note Assumes the owner channel lock is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_aoc_s_from_pri(const struct pri_subcmd_aoc_s *aoc_s, struct ast_channel *owner, int passthrough)
{
@@ -3447,13 +3373,11 @@
* \brief Generate AOC Request Response
* \since 1.8
*
- * \param aoc_request
+ * \param aoc_request, pvt, call
*
* \note Assumes the pri->lock is already obtained.
* \note Assumes the sig_pri private is locked
* \note Assumes the owner channel lock is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_aoc_request_from_pri(const struct pri_subcmd_aoc_request *aoc_request, struct sig_pri_chan *pvt, q931_call *call)
{
@@ -3516,15 +3440,13 @@
* \brief Generate AOC-D AST_CONTROL_AOC frame
* \since 1.8
*
- * \param aoc_e AOC-D event parameters.
+ * \param aoc_d AOC-D event parameters.
* \param owner Asterisk channel associated with the call.
* \param passthrough indicating if this message should be queued on the ast channel
*
* \note Assumes the pri->lock is already obtained.
* \note Assumes the sig_pri private is locked
* \note Assumes the owner channel lock is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_aoc_d_from_pri(const struct pri_subcmd_aoc_d *aoc_d, struct ast_channel *owner, int passthrough)
{
@@ -3632,8 +3554,6 @@
* \note Assumes the sig_pri private is locked
* \note Assumes the owner channel lock is already obtained.
* \note owner channel may be NULL. In that case, generate event only
- *
- * \return Nothing
*/
static void sig_pri_aoc_e_from_pri(const struct pri_subcmd_aoc_e *aoc_e, struct ast_channel *owner, int passthrough)
{
@@ -3748,9 +3668,7 @@
* \brief send an AOC-S message on the current call
*
* \param pvt sig_pri private channel structure.
- * \param generic decoded ast AOC message
- *
- * \return Nothing
+ * \param decoded decoded ast AOC message
*
* \note Assumes that the PRI lock is already obtained.
*/
@@ -3847,9 +3765,7 @@
* \brief send an AOC-D message on the current call
*
* \param pvt sig_pri private channel structure.
- * \param generic decoded ast AOC message
- *
- * \return Nothing
+ * \param decoded decoded ast AOC message
*
* \note Assumes that the PRI lock is already obtained.
*/
@@ -3930,9 +3846,7 @@
* \brief send an AOC-E message on the current call
*
* \param pvt sig_pri private channel structure.
- * \param generic decoded ast AOC message
- *
- * \return Nothing
+ * \param decoded decoded ast AOC message
*
* \note Assumes that the PRI lock is already obtained.
*/
@@ -4050,8 +3964,6 @@
*
* \note Assumes the pri->lock is already obtained.
* \note Assumes the sig_pri_lock_private(pri->pvts[chanpos]) is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_send_aoce_termination_request(struct sig_pri_span *pri, int chanpos, unsigned int ms)
{
@@ -4127,8 +4039,6 @@
* need to use the pointer to send a response message back.
*
* \note Assumes the pri->lock is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_handle_cis_subcmds(struct sig_pri_span *pri, int event_id,
const struct pri_subcommands *subcmds, q931_call *call_rsp)
@@ -4344,8 +4254,6 @@
*
* \note Assumes the pri->lock is already obtained.
* \note Assumes the sig_pri_lock_private(pri->pvts[chanpos]) is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_handle_subcmds(struct sig_pri_span *pri, int chanpos, int event_id,
const struct pri_subcommands *subcmds, q931_call *call_rsp)
@@ -5329,8 +5237,6 @@
*
* \note Assumes the pvt->pri->lock is already obtained.
* \note Assumes the sig_pri_lock_private(pvt) is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_moh_fsm_event(struct ast_channel *chan, struct sig_pri_chan *pvt, enum sig_pri_moh_event event)
{
@@ -5507,8 +5413,6 @@
* \param ev Hold acknowledge event received.
*
* \note Assumes the pri->lock is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_handle_hold_ack(struct sig_pri_span *pri, pri_event *ev)
{
@@ -5560,8 +5464,6 @@
* \param ev Hold reject event received.
*
* \note Assumes the pri->lock is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_handle_hold_rej(struct sig_pri_span *pri, pri_event *ev)
{
@@ -5609,8 +5511,6 @@
* \param ev Retrieve event received.
*
* \note Assumes the pri->lock is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_handle_retrieve(struct sig_pri_span *pri, pri_event *ev)
{
@@ -5683,8 +5583,6 @@
* \param ev Retrieve acknowledge event received.
*
* \note Assumes the pri->lock is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_handle_retrieve_ack(struct sig_pri_span *pri, pri_event *ev)
{
@@ -5723,8 +5621,6 @@
* \param ev Retrieve reject event received.
*
* \note Assumes the pri->lock is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_handle_retrieve_rej(struct sig_pri_span *pri, pri_event *ev)
{
@@ -5773,8 +5669,6 @@
*
* \note Assumes the pri->lock is already obtained.
* \note Assumes the sig_pri_lock_private(pri->pvts[chanpos]) is already obtained.
- *
- * \return Nothing
*/
static void setup_incoming_channel(struct sig_pri_span *pri, int chanpos, pri_event *ev)
{
@@ -5867,8 +5761,6 @@
* \param e SETUP event received.
*
* \note Assumes the pri->lock is already obtained.
- *
- * \return Nothing
*/
static void sig_pri_handle_setup(struct sig_pri_span *pri, pri_event *e)
{
@@ -7794,12 +7686,10 @@
*
* \param p sig_pri channel structure.
* \param rdest Dial string buffer to extract called number and subaddress.
- * \param called Buffer to fill with extracted <number>[:<subaddress>]
+ * \param called Buffer to fill with extracted \<number\>[:\<subaddress\>]
* \param called_buff_size Size of buffer to fill.
*
* \note Parsing must remain in sync with sig_pri_call().
- *
- * \return Nothing
*/
void sig_pri_extract_called_num_subaddr(struct sig_pri_chan *p, const char *rdest, char *called, size_t called_buff_size)
{
@@ -8832,8 +8722,6 @@
* \param ast Asterisk channel
*
* \note Channel and private lock are already held.
- *
- * \return Nothing
*/
void sig_pri_dial_complete(struct sig_pri_chan *pvt, struct ast_channel *ast)
{
@@ -8869,8 +8757,6 @@
* \param vm_box Voicemail mailbox number
* \param mbox_id Mailbox id
* \param num_messages Number of messages waiting.
- *
- * \return Nothing
*/
static void sig_pri_send_mwi_indication(struct sig_pri_span *pri, const char *vm_number, const char *vm_box, const char *mbox_id, int num_messages)
{
@@ -8913,10 +8799,7 @@
*
* \param userdata the data provider in the call to stasis_subscribe()
* \param sub the subscription to which the message was delivered for this callback
- * \param topic the topic on which the message was published
* \param msg the message being passed to the subscriber
- *
- * \return Nothing
*/
static void sig_pri_mwi_event_cb(void *userdata, struct stasis_subscription *sub, struct stasis_message *msg)
{
@@ -8953,8 +8836,6 @@
* \since 1.8
*
* \param pri PRI span control structure.
- *
- * \return Nothing
*/
static void sig_pri_mwi_cache_update(struct sig_pri_span *pri)
{
@@ -8987,8 +8868,6 @@
* \since 1.8
*
* \param pri PRI span control structure.
- *
- * \return Nothing
*/
void sig_pri_stop_pri(struct sig_pri_span *pri)
{
@@ -9047,8 +8926,6 @@
* \details
* Since the chan_dahdi.conf file can declare channels in any order, we need to sort
* the private channel pointer array.
- *
- * \return Nothing
*/
static void sig_pri_sort_pri_chans(struct sig_pri_span *pri)
{
@@ -9289,8 +9166,6 @@
* \param noalarm Non-zero if not in alarm mode.
*
* \note Assumes the sig_pri_lock_private(p) is already obtained.
- *
- * \return Nothing
*/
void sig_pri_chan_alarm_notify(struct sig_pri_chan *p, int noalarm)
{
@@ -9314,7 +9189,7 @@
/*!
* \brief Determine if layer 1 alarms are ignored.
*
- * \param p Channel private pointer.
+ * \param pri Channel private pointer.
*
* \return TRUE if the alarm is ignored.
*/
@@ -9347,8 +9222,6 @@
* \since 1.8
*
* \param doomed sig_pri private channel structure to delete.
- *
- * \return Nothing
*/
void sig_pri_chan_delete(struct sig_pri_chan *doomed)
{
@@ -9521,8 +9394,6 @@
*
* \param p Channel to send text over
* \param text Text to send.
- *
- * \return Nothing
*/
void sig_pri_sendtext(struct sig_pri_chan *p, const char *text)
{
@@ -9646,8 +9517,6 @@
* The duty of this is to issue a propper response to a
* CC request from the caller by acknowledging receipt
* of that request or rejecting it.
- *
- * \return Nothing
*/
void sig_pri_cc_agent_req_rsp(struct ast_cc_agent *agent, enum ast_cc_agent_response_reason reason)
{
@@ -9870,8 +9739,6 @@
* \note
* The agent private_data pointer may be NULL if the agent
* constructor failed.
- *
- * \return Nothing
*/
void sig_pri_cc_agent_destructor(struct ast_cc_agent *agent)
{
@@ -10166,8 +10033,6 @@
/*!
* \brief Unload the sig_pri submodule.
* \since 1.8
- *
- * \return Nothing
*/
void sig_pri_unload(void)
{
diff --git a/channels/sig_pri.h b/channels/sig_pri.h
index 5bc0907..c9561b7 100644
--- a/channels/sig_pri.h
+++ b/channels/sig_pri.h
@@ -222,8 +222,6 @@
*
* \param pvt Private structure of the user of this module.
* \param chan Channel associated with the private pointer
- *
- * \return Nothing
*/
void (* const ami_channel_event)(void *pvt, struct ast_channel *chan);
@@ -639,7 +637,7 @@
* the configured threshold.
* AST_DEVICE_UNAVAILABLE - Span is in alarm.
* \note
- * Device name: DAHDI/I<span>/threshold
+ * Device name: \verbatim DAHDI/I<span>/threshold \endverbatim
*/
int threshold_devstate;
/*!
diff --git a/channels/sig_ss7.c b/channels/sig_ss7.c
index 99a5d94..eeb5073 100644
--- a/channels/sig_ss7.c
+++ b/channels/sig_ss7.c
@@ -171,8 +171,6 @@
* \since 1.8.12
*
* \param p Channel private control structure.
- *
- * \return Nothing
*/
static void sig_ss7_open_media(struct sig_ss7_chan *p)
{
@@ -187,8 +185,6 @@
* \since 1.8
*
* \param p sig_ss7 channel structure.
- *
- * \return Nothing
*/
static void sig_ss7_set_caller_id(struct sig_ss7_chan *p)
{
@@ -230,8 +226,6 @@
*
* \param p sig_ss7 channel structure.
* \param dnid Dialed Number Identifier string.
- *
- * \return Nothing
*/
static void sig_ss7_set_dnid(struct sig_ss7_chan *p, const char *dnid)
{
@@ -327,7 +321,7 @@
*
* \param pvt Channel to determine if available.
*
- * \return TRUE if the channel is available.
+ * \retval TRUE if the channel is available.
*/
static int sig_ss7_is_chan_available(struct sig_ss7_chan *pvt)
{
@@ -349,8 +343,6 @@
*
* \note Assumes the ss7->lock is already obtained.
* \note Assumes the sig_ss7_lock_private(ss7->pvts[chanpos]) is already obtained.
- *
- * \return Nothing
*/
static void sig_ss7_lock_owner(struct sig_ss7_linkset *ss7, int chanpos)
{
@@ -382,8 +374,6 @@
*
* \note Assumes the ss7->lock is already obtained.
* \note Assumes the sig_ss7_lock_private(ss7->pvts[chanpos]) is already obtained.
- *
- * \return Nothing
*/
static void sig_ss7_queue_frame(struct sig_ss7_linkset *ss7, int chanpos, struct ast_frame *frame)
{
@@ -405,8 +395,6 @@
*
* \note Assumes the ss7->lock is already obtained.
* \note Assumes the sig_ss7_lock_private(ss7->pvts[chanpos]) is already obtained.
- *
- * \return Nothing
*/
static void sig_ss7_queue_control(struct sig_ss7_linkset *ss7, int chanpos, int subclass)
{
@@ -428,12 +416,11 @@
*
* \param owner Owner channel of the pvt.
* \param cause String describing the cause to be placed into the frame.
+ * \param ast_cause
*
* \note Assumes the linkset->lock is already obtained.
* \note Assumes the sig_ss7_lock_private(linkset->pvts[chanpos]) is already obtained.
* \note Assumes linkset->pvts[chanpos]->owner is non-NULL and its lock is already obtained.
- *
- * \return Nothing
*/
static void ss7_queue_pvt_cause_data(struct ast_channel *owner, const char *cause, int ast_cause)
{
@@ -457,7 +444,7 @@
* \param cic Circuit Identification Code
* \param dpc Destination Point Code
*
- * \retval chanpos on success.
+ * \return chanpos on success.
* \retval -1 on error.
*/
int sig_ss7_find_cic(struct sig_ss7_linkset *linkset, int cic, unsigned int dpc)
@@ -482,7 +469,7 @@
* \param dpc Destination Point Code
* \param msg_name Message type name that failed.
*
- * \retval chanpos on success.
+ * \return chanpos on success.
* \retval -1 on error.
*/
static int ss7_find_cic_gripe(struct sig_ss7_linkset *linkset, int cic, unsigned int dpc, const char *msg_name)
@@ -583,8 +570,6 @@
* \param endcic Circuit Identification Code to search up-to
* \param dpc Destination Point Code
* \param state Array containing the status of the search
- *
- * \retval Nothing.
*/
static void ss7_check_range(struct sig_ss7_linkset *linkset, int startcic, int endcic, unsigned int dpc, unsigned char *state)
{
@@ -618,7 +603,7 @@
*
* \note Assumes the linkset->lock is already obtained.
*
- * \return TRUE if all CICs in the range are present
+ * \retval TRUE if all CICs in the range are present
*/
int sig_ss7_find_cic_range(struct sig_ss7_linkset *linkset, int startcic, int endcic, unsigned int dpc)
{
@@ -720,8 +705,6 @@
*
* \note Assumes the linkset->lock is already obtained.
* \note Must be called without sig_ss7_lock_private() obtained.
- *
- * \return Nothing.
*/
static inline void ss7_block_cics(struct sig_ss7_linkset *linkset, int startcic, int endcic, unsigned int dpc, unsigned char state[], int block, int remotely, int type)
{
@@ -767,8 +750,6 @@
* \param dpc Destination Point Code.
*
* \note Must be called without sig_ss7_lock_private() obtained.
- *
- * \return Nothing.
*/
static void ss7_inservice(struct sig_ss7_linkset *linkset, int startcic, int endcic, unsigned int dpc)
{
@@ -859,8 +840,6 @@
*
* \note Assumes the ss7->lock is already obtained.
* \note Assumes sig_ss7_lock_private(p) is already obtained.
- *
- * \return Nothing.
*/
static void ss7_do_rsc(struct sig_ss7_chan *p)
{
@@ -882,13 +861,13 @@
* \brief Start RSC procedure on a specific link
* \since 11.0
*
- * \param ss7 SS7 linkset control structure.
+ * \param linkset SS7 linkset control structure.
* \param which Channel position in the span.
*
* \note Assumes the ss7->lock is already obtained.
* \note Assumes the sig_ss7_lock_private(ss7->pvts[chanpos]) is already obtained.
*
- * \return TRUE on success
+ * \retval TRUE on success
*/
static int ss7_start_rsc(struct sig_ss7_linkset *linkset, int which)
{
@@ -930,8 +909,6 @@
*
* \note Assumes the linkset->lock is already obtained.
* \note Must be called without sig_ss7_lock_private() obtained.
- *
- * \return Nothing.
*/
static void ss7_clear_channels(struct sig_ss7_linkset *linkset, int startcic, int endcic, int dpc, int do_hangup)
{
@@ -966,8 +943,6 @@
*
* \note Assumes the linkset->lock is already obtained.
* \note Assumes the sig_ss7_lock_private(ss7->pvts[chanpos]) is already obtained.
- *
- * \return Nothing.
*/
static void ss7_start_call(struct sig_ss7_chan *p, struct sig_ss7_linkset *linkset)
{
@@ -1346,8 +1321,6 @@
*
* \note Assumes the linkset->lock is already obtained.
* \note Assumes the sig_ss7_lock_private(ss7->pvts[chanpos]) is already obtained.
- *
- * \return Nothing.
*/
static void ss7_match_extension(struct sig_ss7_linkset *linkset, struct sig_ss7_chan *p, ss7_event *e)
{
@@ -2378,7 +2351,7 @@
* \param cic Circuit Identification Code
* \param dpc Destination Point Code
*
- * \return TRUE on success
+ * \retval TRUE on success
*/
int sig_ss7_reset_cic(struct sig_ss7_linkset *linkset, int cic, unsigned int dpc)
{
@@ -2410,7 +2383,7 @@
* \param do_block Action to perform. Block if TRUE.
* \param which On which CIC to perform the operation.
*
- * \return 0 on success
+ * \retval 0 on success
*/
int sig_ss7_cic_blocking(struct sig_ss7_linkset *linkset, int do_block, int which)
{
@@ -2447,7 +2420,7 @@
*
* \note Assumes the linkset->lock is already obtained.
*
- * \return 0 on success
+ * \retval 0 on success
*/
int sig_ss7_group_blocking(struct sig_ss7_linkset *linkset, int do_block, int chanpos, int endcic, unsigned char state[], int type)
{
@@ -2478,7 +2451,7 @@
*
* \note Assumes the linkset->lock is already obtained.
*
- * \return 0 on success
+ * \retval 0 on success
*/
int sig_ss7_reset_group(struct sig_ss7_linkset *linkset, int cic, unsigned int dpc, int range)
{
@@ -2547,8 +2520,6 @@
*
* \param linkset Controlling linkset for the channel.
* \param which Link index of the signaling channel.
- *
- * \return Nothing
*/
void sig_ss7_link_alarm(struct sig_ss7_linkset *linkset, int which)
{
@@ -2563,8 +2534,6 @@
*
* \param linkset Controlling linkset for the channel.
* \param which Link index of the signaling channel.
- *
- * \return Nothing
*/
void sig_ss7_link_noalarm(struct sig_ss7_linkset *linkset, int which)
{
@@ -2585,6 +2554,7 @@
* \param networkindicator User configuration parameter.
* \param pointcode User configuration parameter.
* \param adjpointcode User configuration parameter.
+ * \param cur_slc
*
* \retval 0 on success.
* \retval -1 on error.
@@ -3121,8 +3091,6 @@
* \param oldchan Old channel pointer to replace.
* \param newchan New channel pointer to set.
* \param pchan Signaling private structure pointer.
- *
- * \return Nothing
*/
void sig_ss7_fixup(struct ast_channel *oldchan, struct ast_channel *newchan, struct sig_ss7_chan *pchan)
{
@@ -3268,7 +3236,7 @@
* \param p Signaling private structure pointer.
* \param law Companding law preferred
* \param requestor Asterisk channel requesting a channel to dial (Can be NULL)
- * \param transfercapability
+ * \param assignedids, transfercapability
*
* \retval ast_channel on success.
* \retval NULL on error.
@@ -3306,8 +3274,6 @@
* \since 1.8
*
* \param doomed sig_ss7 private channel structure to delete.
- *
- * \return Nothing
*/
void sig_ss7_chan_delete(struct sig_ss7_chan *doomed)
{
@@ -3389,8 +3355,6 @@
* \since 1.8
*
* \param ss7 SS7 linkset control structure.
- *
- * \return Nothing
*/
void sig_ss7_init_linkset(struct sig_ss7_linkset *ss7)
{
diff --git a/funcs/func_odbc.c b/funcs/func_odbc.c
index 22bc45b..48619b1 100644
--- a/funcs/func_odbc.c
+++ b/funcs/func_odbc.c
@@ -143,7 +143,7 @@
char names[0];
};
-/* \brief Data source name
+/*! \brief Data source name
*
* This holds data that pertains to a DSN
*/
diff --git a/include/asterisk/calendar.h b/include/asterisk/calendar.h
index c21399e..9f89f33 100644
--- a/include/asterisk/calendar.h
+++ b/include/asterisk/calendar.h
@@ -91,7 +91,7 @@
AST_LIST_ENTRY(ast_calendar_attendee) next;
};
-/* \brief Calendar events */
+/*! \brief Calendar events */
struct ast_calendar_event {
AST_DECLARE_STRING_FIELDS(
AST_STRING_FIELD(summary);
diff --git a/include/asterisk/channel.h b/include/asterisk/channel.h
index 6e24073..91659c9 100644
--- a/include/asterisk/channel.h
+++ b/include/asterisk/channel.h
@@ -1390,7 +1390,7 @@
* This function will unlink the channel from the global channels container
* if it is still there and also release the current reference to the channel.
*
- * \retval NULL, convenient for clearing invalid pointers
+ * \retval NULL convenient for clearing invalid pointers
* \note Absolutely _NO_ channel locks should be held before calling this function.
*
* \since 1.8
@@ -1701,7 +1701,9 @@
* \brief Compare a offset with the settings of when to hang a channel up
* \param chan channel on which to check for hangup
* \param offset offset in seconds and microseconds from current time
- * \return 1, 0, or -1
+ * \retval 1
+ * \retval 0
+ * \retval -1
* This function compares a offset from current time with the absolute time
* out on a channel (when to hang up). If the absolute time out on a channel
* is earlier than current time plus the offset, it returns 1, if the two
@@ -2880,7 +2882,7 @@
* This function is used to destroy a channel iterator that was retrieved by
* using one of the channel_iterator_xxx_new() functions.
*
- * \return NULL, for convenience to clear out the pointer to the iterator that
+ * \retval NULL for convenience to clear out the pointer to the iterator that
* was just destroyed.
*
* \since 1.8
@@ -2957,7 +2959,7 @@
*
* \retval the next channel that matches the parameters used when the iterator
* was created.
- * \retval NULL, if no more channels match the iterator parameters.
+ * \retval NULL if no more channels match the iterator parameters.
*
* \since 1.8
*/
diff --git a/include/asterisk/cli.h b/include/asterisk/cli.h
index 71468e5..76e58fa 100644
--- a/include/asterisk/cli.h
+++ b/include/asterisk/cli.h
@@ -371,7 +371,7 @@
*/
void ast_cli_print_timestr_fromseconds(int fd, int seconds, const char *prefix);
-/*
+/*!
* \brief Allow a CLI command to be executed while Asterisk is shutting down.
*
* CLI commands by defeault are disabled when Asterisk is shutting down. This is
diff --git a/include/asterisk/config.h b/include/asterisk/config.h
index f53116d..06ee1f4 100644
--- a/include/asterisk/config.h
+++ b/include/asterisk/config.h
@@ -1026,7 +1026,7 @@
butt,
};
-/*
+/*!
* \brief Callback when configuration is updated
*
* \param cfg A copy of the configuration that is being changed.
diff --git a/include/asterisk/datastore.h b/include/asterisk/datastore.h
index 7a7d99b..cacbf69 100644
--- a/include/asterisk/datastore.h
+++ b/include/asterisk/datastore.h
@@ -44,8 +44,6 @@
* It allows a datastore to fix any pointers it saved to the owning channel
* in case that the owning channel has changed. Generally, this would happen
* when the datastore is set to be inherited, and a masquerade occurs.
- *
- * \return nothing.
*/
void (*chan_fixup)(void *data, struct ast_channel *old_chan, struct ast_channel *new_chan);
@@ -58,8 +56,6 @@
*
* This is the same as the above callback, except it is called for the channel
* being masqueraded into instead of the channel that is masquerading.
- *
- * \return nothing.
*/
void (*chan_breakdown)(void *data, struct ast_channel *old_chan, struct ast_channel *new_chan);
};
diff --git a/include/asterisk/http_websocket.h b/include/asterisk/http_websocket.h
index 323bb9c..d5489fa 100644
--- a/include/asterisk/http_websocket.h
+++ b/include/asterisk/http_websocket.h
@@ -122,7 +122,7 @@
unsigned int version;
/*! \brief Callback called when a new session is attempted. Optional. */
ast_websocket_pre_callback session_attempted;
- /* \brief Callback called when a new session is established. Mandatory. */
+ /*! \brief Callback called when a new session is established. Mandatory. */
ast_websocket_callback session_established;
};
diff --git a/include/asterisk/logger.h b/include/asterisk/logger.h
index 270b5d3..95a555e 100644
--- a/include/asterisk/logger.h
+++ b/include/asterisk/logger.h
@@ -671,8 +671,7 @@
*
* \param level The trace level
* \param indent_type One of the \ref ast_trace_indent_type values
- * \param (optional) A printf style format string
- * \param (optional) Arguments
+ * \param ... A printf style format string, optionally with arguments
*
*/
#define ast_trace_raw(level, indent_type, ...) \
@@ -685,8 +684,7 @@
* \brief Print a basic trace message
*
* \param level The trace level
- * \param (optional) A printf style format string
- * \param (optional) Arguments
+ * \param ... A printf style format string, optionally with arguments
*
* This will print the file, line and function at the current indent level
*/
@@ -732,8 +730,7 @@
* \brief Print a trace message with details when a scope is entered or existed.
*
* \param level The trace level
- * \param (optional) A printf style format string
- * \param (optional) Arguments
+ * \param ... A printf style format string, optionally with arguments
*
* This will print the file, line and function plus details at the current indent level.
* \note Like RAII_VAR, this macro must be called before any code in the scope.
@@ -775,8 +772,7 @@
* \brief Scope Enter
*
* \param level The trace level
- * \param (optional) A printf style format string
- * \param (optional) Arguments
+ * \param ... A printf style format string, optionally with arguments
*/
#define SCOPE_ENTER(level, ...) \
int __scope_level = level; \
@@ -797,8 +793,7 @@
/*!
* \brief Scope Exit
*
- * \param (optional) A printf style format string
- * \param (optional) Arguments
+ * \param ... A printf style format string, optionally with arguments
*
* \details
* This macro can be used at the exit points of a statement block since it just prints the message.
@@ -816,8 +811,7 @@
* \brief Scope Exit with expression
*
* \param __expr An expression to execute after printing the message
- * \param (optional) A printf style format string
- * \param (optional) Arguments
+ * \param ... A printf style format string, optionally with arguments
*
* \details
* Handy for getting out of or continuing loops.
@@ -846,8 +840,7 @@
/*!
* \brief Scope Exit with return
*
- * \param (optional) A printf style format string
- * \param (optional) Arguments
+ * \param ... A printf style format string, optionally with arguments
*
* \details
* This macro can be used at the exit points of a function when no value
@@ -867,8 +860,7 @@
* \brief Scope Exit with return value
*
* \param __return_value The return value
- * \param (optional) A printf style format string
- * \param (optional) Arguments
+ * \param ... A printf style format string, optionally with arguments
*
* \details
* This macro can be used at the exit points of a function when a value
diff --git a/include/asterisk/netsock2.h b/include/asterisk/netsock2.h
index c1eaec1..0d9e64f 100644
--- a/include/asterisk/netsock2.h
+++ b/include/asterisk/netsock2.h
@@ -820,7 +820,6 @@
*
* \param[out] addr The address of the ast_sockaddr to store into
* \param sa The sockaddr structure (sockaddr_in or sockaddr_in6) to convert
- * \return Nothing
*/
#define ast_sockaddr_from_sockaddr(addr,sa) ast_sockaddr_copy_sockaddr(addr, sa, ast_addressfamily_to_sockaddrsize(((const struct sockaddr*)(sa))->sa_family))
diff --git a/include/asterisk/pbx.h b/include/asterisk/pbx.h
index fab8795..f2247d2 100644
--- a/include/asterisk/pbx.h
+++ b/include/asterisk/pbx.h
@@ -1026,7 +1026,7 @@
int ast_context_add_ignorepat2(struct ast_context *con, const char *ignorepat, const char *registrar);
-/*
+/*!
* \brief Remove an ignorepat
*
* \param context context from which to remove the pattern
diff --git a/include/asterisk/sorcery.h b/include/asterisk/sorcery.h
index b6a9aed..fa19002 100644
--- a/include/asterisk/sorcery.h
+++ b/include/asterisk/sorcery.h
@@ -321,7 +321,7 @@
/*! \brief Callback for closing a wizard */
void (*close)(void *data);
- /* \brief Callback for whether or not the wizard believes the object is stale */
+ /*! \brief Callback for whether or not the wizard believes the object is stale */
int (*is_stale)(const struct ast_sorcery *sorcery, void *data, void *object);
/*! \brief Optional callback for forcing a reload to occur, even if wizard has determined no changes */
diff --git a/include/asterisk/stasis.h b/include/asterisk/stasis.h
index 01e7ca4..8b9583e 100644
--- a/include/asterisk/stasis.h
+++ b/include/asterisk/stasis.h
@@ -1061,8 +1061,6 @@
* any remote entities publishing state for a device. e.g., An aggregate
* MWI message is the old/new MWI counts accumulated from the local and
* any remote entities publishing to a mailbox.
- *
- * \return Nothing
*/
typedef void (*cache_aggregate_publish_fn)(struct stasis_topic *topic, struct stasis_message *aggregate);
diff --git a/include/asterisk/stasis_app_impl.h b/include/asterisk/stasis_app_impl.h
index ce60804..6550030 100644
--- a/include/asterisk/stasis_app_impl.h
+++ b/include/asterisk/stasis_app_impl.h
@@ -51,13 +51,10 @@
/*!
* \brief Typedef for data destructor for stasis app commands
*
- * \param data Data to destroy.
- *
- * \details
* This is called during destruction of the command or if we fail to schedule
* a command. It is passed a pointer to the user-defined data of the command.
*
- * \return Nothing
+ * \param data Data to destroy.
*/
typedef void (*command_data_destructor_fn)(void *data);
diff --git a/include/asterisk/stasis_app_mailbox.h b/include/asterisk/stasis_app_mailbox.h
index becfe46..06922b8 100644
--- a/include/asterisk/stasis_app_mailbox.h
+++ b/include/asterisk/stasis_app_mailbox.h
@@ -49,15 +49,15 @@
* be set to the JSON representation of the mailbox
*
* \return stasis mailbox result code indicating success or failure and cause
- * \return \c NULL on error.
+ * \retval NULL on error.
*/
enum stasis_mailbox_result stasis_app_mailbox_to_json(const char *name, struct ast_json **json);
/*!
- * brief Convert mailboxes to json array
+ * \brief Convert mailboxes to json array
*
* \return JSON representation of the mailboxes
- * \return \c NULL on error.
+ * \retval NULL on error.
*/
struct ast_json *stasis_app_mailboxes_to_json(void);
@@ -70,8 +70,8 @@
* \param old_messages count of old (read) messages in the mailbox
* \param new_messages count of new (unread) messages in the mailbox
*
- * \return 0 if successful
- * \return -1 on internal error.
+ * \retval 0 if successful
+ * \retval -1 on internal error.
*/
int stasis_app_mailbox_update(
const char *name, int old_messages, int new_messages);
diff --git a/include/asterisk/tcptls.h b/include/asterisk/tcptls.h
index 66918c8..1e66201 100644
--- a/include/asterisk/tcptls.h
+++ b/include/asterisk/tcptls.h
@@ -169,7 +169,7 @@
*/
struct ast_tcptls_session_instance *ast_tcptls_client_start(struct ast_tcptls_session_instance *tcptls_session);
-/* \brief Creates a client connection's ast_tcptls_session_instance. */
+/*! \brief Creates a client connection's ast_tcptls_session_instance. */
struct ast_tcptls_session_instance *ast_tcptls_client_create(struct ast_tcptls_session_args *desc);
void *ast_tcptls_server_root(void *);
diff --git a/include/asterisk/test.h b/include/asterisk/test.h
index 90e772c..e23aca8 100644
--- a/include/asterisk/test.h
+++ b/include/asterisk/test.h
@@ -172,24 +172,17 @@
/*!
* \brief Notifies the test suite of a change in application state
*
- * \details
* Raises a TestEvent manager event with a subtype of StateChange. Additional parameters
* The fmt parameter allows additional parameters to be added to the manager event using
* printf style statement formatting.
*
- * \param state The state the application has changed to
- * \param fmt The message with format parameters to add to the manager event
- *
- * \return Nothing
- */
-void __ast_test_suite_event_notify(const char *file, const char *func, int line, const char *state, const char *fmt, ...)
- __attribute__((format(printf, 5, 6)));
-
-/*!
- * \ref __ast_test_suite_event_notify()
+ * \param s The state the application has changed to
+ * \param f The message with format parameters to add to the manager event
*/
#define ast_test_suite_event_notify(s, f, ...) \
__ast_test_suite_event_notify(__FILE__, __PRETTY_FUNCTION__, __LINE__, (s), (f), ## __VA_ARGS__)
+void __ast_test_suite_event_notify(const char *file, const char *func, int line, const char *state, const char *fmt, ...)
+ __attribute__((format(printf, 5, 6)));
#else
@@ -292,7 +285,7 @@
/*!
* \brief unregisters a test with the test framework
*
- * \param test callback function (required)
+ * \param cb callback function (required)
*
* \retval 0 success
* \retval -1 failure
@@ -302,7 +295,7 @@
/*!
* \brief registers a test with the test framework
*
- * \param test callback function (required)
+ * \param cb callback function (required)
*
* \retval 0 success
* \retval -1 failure
@@ -349,8 +342,6 @@
*
* \param test Unit test control structure.
* \param fmt printf type format string.
- *
- * \return Nothing
*/
void ast_test_debug(struct ast_test *test, const char *fmt, ...) __attribute__((format(printf, 2, 3)));
@@ -368,20 +359,17 @@
/*!
* \brief update test's status during testing.
*
- * \param test currently executing test
+ * \param t currently executing test
+ * \param f printf type format string
*
* \retval 0 success
* \retval -1 failure
*/
+#define ast_test_status_update(t, f, ...) __ast_test_status_update(__FILE__, __PRETTY_FUNCTION__, __LINE__, (t), (f), ## __VA_ARGS__)
int __ast_test_status_update(const char *file, const char *func, int line, struct ast_test *test, const char *fmt, ...)
__attribute__((format(printf, 5, 6)));
/*!
- * \ref __ast_test_status_update()
- */
-#define ast_test_status_update(t, f, ...) __ast_test_status_update(__FILE__, __PRETTY_FUNCTION__, __LINE__, (t), (f), ## __VA_ARGS__)
-
-/*!
* \brief Check a test condition, failing the test if it's not true.
*
* \since 12.0.0
diff --git a/main/astmm.c b/main/astmm.c
index 7cb50e3..1b3b95c 100644
--- a/main/astmm.c
+++ b/main/astmm.c
@@ -218,8 +218,6 @@
* \internal
*
* \note If DO_CRASH is not defined then the function returns.
- *
- * \return Nothing
*/
static void my_do_crash(void)
{
@@ -282,8 +280,6 @@
* \brief Wipe the region payload data with a known value.
*
* \param reg Region block to be wiped.
- *
- * \return Nothing
*/
static void region_data_wipe(struct ast_region *reg)
{
@@ -305,8 +301,6 @@
* \brief Check the region payload data for memory corruption.
*
* \param reg Region block to be checked.
- *
- * \return Nothing
*/
static void region_data_check(struct ast_region *reg)
{
@@ -334,8 +328,6 @@
* \brief Flush the circular array of freed regions.
*
* \param freed Already freed region blocks storage.
- *
- * \return Nothing
*/
static void freed_regions_flush(struct ast_freed_regions *freed)
{
@@ -361,8 +353,6 @@
*
* \param freed Already freed region blocks storage.
* \param reg Region block to be freed.
- *
- * \return Nothing
*/
static void region_free(struct ast_freed_regions *freed, struct ast_region *reg)
{
@@ -393,7 +383,7 @@
*
* \param ptr Region payload data pointer.
*
- * \retval region on success.
+ * \return region on success.
* \retval NULL if not found.
*/
static struct ast_region *region_remove(void *ptr)
@@ -426,8 +416,6 @@
* \brief Check the fences of a region.
*
* \param reg Region block to check.
- *
- * \return Nothing
*/
static void region_check_fences(struct ast_region *reg)
{
@@ -457,8 +445,6 @@
/*!
* \internal
* \brief Check the fences of all regions currently allocated.
- *
- * \return Nothing
*/
static void regions_check_all_fences(void)
{
@@ -808,8 +794,6 @@
* \param selected_len Accumulated size of the selected allocations.
* \param cache_len Accumulated size of the allocations that are part of a cache.
* \param count Number of selected allocations.
- *
- * \return Nothing
*/
static void print_memory_show_common_stats(int fd,
unsigned int whales_len,
@@ -1133,8 +1117,6 @@
* \param list List to put into the allocated regions hash table.
*
* \note reglock must be locked before calling.
- *
- * \return Nothing
*/
static void mm_atexit_hash_restore(struct region_list *list)
{
@@ -1205,8 +1187,6 @@
* \param list Merge sublists onto this list.
* \param sub1 First sublist to merge.
* \param sub2 Second sublist to merge.
- *
- * \return Nothing
*/
static void mm_atexit_list_merge(struct region_list *list, struct region_list *sub1, struct region_list *sub2)
{
@@ -1242,8 +1222,6 @@
* \param num_lists Number of lists to remove from the source list.
* \param size Size of the sublists to remove.
* \param remaining Remaining number of elements on the source list.
- *
- * \return Nothing
*/
static void mm_atexit_list_split(struct region_list *list, struct region_list sub[], size_t num_lists, size_t size, size_t *remaining)
{
@@ -1276,8 +1254,6 @@
*
* \param list Allocated regions list to sort.
* \param length Length of the list.
- *
- * \return Nothing
*/
static void mm_atexit_list_sort(struct region_list *list, size_t length)
{
@@ -1320,8 +1296,6 @@
* \brief List all regions currently allocated.
*
* \param alloced regions list.
- *
- * \return Nothing
*/
static void mm_atexit_regions_list(struct region_list *alloced)
{
@@ -1339,8 +1313,6 @@
* \brief Summarize all regions currently allocated.
*
* \param alloced Sorted regions list.
- *
- * \return Nothing
*/
static void mm_atexit_regions_summary(struct region_list *alloced)
{
@@ -1448,8 +1420,6 @@
* \brief Dump the memory allocations atexit.
*
* \note reglock must be locked before calling.
- *
- * \return Nothing
*/
static void mm_atexit_dump(void)
{
@@ -1484,7 +1454,6 @@
/*!
* \internal
- * \return Nothing
*/
static void mm_atexit_final(void)
{
@@ -1524,7 +1493,6 @@
/*!
* \internal
- * \return Nothing
*/
static void mm_atexit_ast(void)
{
diff --git a/main/astobj2_container.c b/main/astobj2_container.c
index 6437844..2984c23 100644
--- a/main/astobj2_container.c
+++ b/main/astobj2_container.c
@@ -1030,8 +1030,6 @@
*
* \param where User data pointer needed to determine where to put output.
* \param fmt printf type format string.
- *
- * \return Nothing
*/
static void cli_output(void *where, const char *fmt, ...) __attribute__((format(printf, 2, 3)));
static void cli_output(void *where, const char *fmt, ...)
diff --git a/main/dns_recurring.c b/main/dns_recurring.c
index 6a953fa..0d97a0b 100644
--- a/main/dns_recurring.c
+++ b/main/dns_recurring.c
@@ -39,7 +39,7 @@
#include <arpa/nameser.h>
-/* \brief Delay between TTL expiration and the next DNS query, to make sure the
+/*! \brief Delay between TTL expiration and the next DNS query, to make sure the
resolver cache really expired. */
#define EXTRA_TTL 2
#define MAX_TTL ((INT_MAX - EXTRA_TTL) / 1000)
diff --git a/main/dns_test.c b/main/dns_test.c
index 5ec994a..e6bcc81 100644
--- a/main/dns_test.c
+++ b/main/dns_test.c
@@ -59,7 +59,7 @@
*
* \param num_records The number of DNS records in this DNS response
* \param buf The buffer to write the header into
- * \retval The number of bytes written to the buffer
+ * \return The number of bytes written to the buffer
*/
static int generate_dns_header(unsigned short num_records, char *buf)
{
@@ -97,7 +97,7 @@
* than necessary for the tests.
*
* \param buf The buffer to write the question into
- * \retval The number of bytes written to the buffer
+ * \return The number of bytes written to the buffer
*/
static int generate_dns_question(char *buf)
{
@@ -129,8 +129,9 @@
* the data ourselves and have sized the buffer to be way larger
* than necessary for the tests.
*
+ * \param ttl Time to live
* \param buf The buffer to write the answer into
- * \retval The number of bytes written to the buffer
+ * \return The number of bytes written to the buffer
*/
static int generate_dns_answer(int ttl, char *buf)
{
@@ -145,20 +146,6 @@
return ARRAY_LEN(NAPTR_ANSWER);
}
-/*!
- * \brief Write a DNS string to a buffer
- *
- * This writes the DNS string to the buffer and returns the total
- * number of bytes written to the buffer.
- *
- * There is no buffer size passed to this function since we provide
- * the data ourselves and have sized the buffer to be way larger
- * than necessary for the tests.
- *
- * \param string The string to write
- * \param buf The buffer to write the string into
- * \return The number of bytes written to the buffer
- */
int ast_dns_test_write_string(const struct ast_dns_test_string *string, char *buf)
{
uint8_t len = string->len;
@@ -176,23 +163,6 @@
return actual_len + 1;
}
-/*!
- * \brief Write a DNS domain to a buffer
- *
- * A DNS domain consists of a series of labels separated
- * by dots. Each of these labels gets written as a DNS
- * string. A DNS domain ends with a NULL label, which is
- * essentially a zero-length DNS string.
- *
- *
- * There is no buffer size passed to this function since we provide
- * the data ourselves and have sized the buffer to be way larger
- * than necessary for the tests.
- *
- * \param string The DNS domain to write
- * \param buf The buffer to write the domain into
- * \return The number of bytes written to the buffer
- */
int ast_dns_test_write_domain(const char *string, char *buf)
{
char *copy = ast_strdupa(string);
diff --git a/main/optional_api.c b/main/optional_api.c
index afa9661..8f778f3 100644
--- a/main/optional_api.c
+++ b/main/optional_api.c
@@ -88,7 +88,7 @@
* \param module Name of the module requesting the API.
*
* \return New \ref optional_api_user.
- * \return \c NULL on error.
+ * \retval NULL on error.
*/
static struct optional_api_user *optional_api_user_create(
ast_optional_fn *optional_ref, ast_optional_fn stub, const char *module)
@@ -129,7 +129,7 @@
*
* \param symname Name of the optional function.
* \return New \ref optional_api.
- * \return \c NULL on error.
+ * \retval NULL on error.
*/
static struct optional_api *optional_api_create(const char *symname)
{
@@ -151,9 +151,9 @@
/*!
* \brief Gets (or creates) the \ref optional_api for the given function.
*
- * \param sysname Name of the function to look up.
+ * \param symname Name of the function to look up.
* \return Corresponding \ref optional_api.
- * \return \c NULL on error.
+ * \retval NULL on error.
*/
static struct optional_api *get_api(const char *symname)
{
diff --git a/main/pbx.c b/main/pbx.c
index 224f847..986e3ce 100644
--- a/main/pbx.c
+++ b/main/pbx.c
@@ -7061,7 +7061,7 @@
* \param dst Destination buffer to copy src string.
* \param src Null terminated string to copy.
* \param dst_size Number of bytes in the dst buffer.
- * \param nofluf Nonzero if '-' chars are not copied.
+ * \param nofluff Nonzero if '-' chars are not copied.
*
* \return Number of bytes written to dst including null terminator.
*/
diff --git a/main/stasis_message_router.c b/main/stasis_message_router.c
index 41ff794..ccdfe69 100644
--- a/main/stasis_message_router.c
+++ b/main/stasis_message_router.c
@@ -82,8 +82,6 @@
* \brief route_table vector element cleanup.
*
* \param elem Element to cleanup
- *
- * \return Nothing
*/
#define ROUTE_TABLE_ELEM_CLEANUP(elem) ao2_cleanup((elem).message_type)
diff --git a/main/test.c b/main/test.c
index 32df829..5135803 100644
--- a/main/test.c
+++ b/main/test.c
@@ -369,7 +369,7 @@
* \brief Executes registered unit tests
*
* \param name of test to run (optional)
- * \param test category to run (optional)
+ * \param category category to run (optional)
* \param cli args for cli test updates (optional)
*
* \return number of tests executed.
@@ -475,9 +475,9 @@
* \brief Generate test results.
*
* \param name of test result to generate (optional)
- * \param test category to generate (optional)
- * \param path to xml file to generate. (optional)
- * \param path to txt file to generate, (optional)
+ * \param category category to generate (optional)
+ * \param xml_path path to xml file to generate (optional)
+ * \param txt_path path to txt file to generate (optional)
*
* \retval 0 success
* \retval -1 failure
@@ -612,7 +612,8 @@
* \internal
* \brief removes test from container
*
- * \return ast_test removed from list on success, or NULL on failure
+ * \return ast_test removed from list on success
+ * \retval NULL on failure
*/
static struct ast_test *test_remove(ast_test_cb_t *cb)
{
diff --git a/menuselect/menuselect.c b/menuselect/menuselect.c
index 615e29f..3153ce0 100644
--- a/menuselect/menuselect.c
+++ b/menuselect/menuselect.c
@@ -1901,7 +1901,7 @@
return insane ? -1 : 0;
}
-/* \brief Set the forced default values if they exist */
+/*! \brief Set the forced default values if they exist */
static void process_defaults(void)
{
struct category *cat;
diff --git a/menuselect/menuselect_curses.c b/menuselect/menuselect_curses.c
index 7698061..b72cb34 100644
--- a/menuselect/menuselect_curses.c
+++ b/menuselect/menuselect_curses.c
@@ -16,7 +16,7 @@
* at the top of the source tree.
*/
-/*
+/*!
* \file
*
* \author Russell Bryant <russell at digium.com>
diff --git a/menuselect/menuselect_gtk.c b/menuselect/menuselect_gtk.c
index 624b8db..2e8b5b1 100644
--- a/menuselect/menuselect_gtk.c
+++ b/menuselect/menuselect_gtk.c
@@ -16,7 +16,7 @@
* at the top of the source tree.
*/
-/*
+/*!
* \file
*
* \author Russell Bryant <russell at digium.com>
diff --git a/menuselect/menuselect_newt.c b/menuselect/menuselect_newt.c
index b0f7574..abbfb33 100644
--- a/menuselect/menuselect_newt.c
+++ b/menuselect/menuselect_newt.c
@@ -16,7 +16,7 @@
* at the top of the source tree.
*/
-/*
+/*!
* \file
*
* \author Sean Bright <sean.bright at gmail.com>
diff --git a/menuselect/menuselect_stub.c b/menuselect/menuselect_stub.c
index 29f731e..b0543f6 100644
--- a/menuselect/menuselect_stub.c
+++ b/menuselect/menuselect_stub.c
@@ -16,7 +16,7 @@
* at the top of the source tree.
*/
-/*
+/*!
* \file
*
* \author Russell Bryant <russell at digium.com>
diff --git a/pbx/pbx_dundi.c b/pbx/pbx_dundi.c
index df1f303..9c0f2fa 100644
--- a/pbx/pbx_dundi.c
+++ b/pbx/pbx_dundi.c
@@ -4527,7 +4527,7 @@
ast_log(LOG_WARNING, "Expected at least %d arguments in map, but got only %d\n", 4, x);
}
-/* \note Called with the peers list already locked */
+/*! \note Called with the peers list already locked */
static int do_register(const void *data)
{
struct dundi_ie_data ied;
diff --git a/pbx/pbx_lua.c b/pbx/pbx_lua.c
index aad4110..f6c0656 100644
--- a/pbx/pbx_lua.c
+++ b/pbx/pbx_lua.c
@@ -174,11 +174,12 @@
* lua, don't call directly)
*
* \param L the lua_State to use
- * \return nothing
*
* This funciton is executed as the '()' operator for apps accessed through the
* 'app' table.
*
+ * \return LUA error
+ *
* \code
* app.playback('demo-congrats')
* \endcode
@@ -293,6 +294,8 @@
* 'get()' function in the following example as would be seen in
* extensions.lua.
*
+ * \return LUA error
+ *
* \code
* channel.variable:get()
* \endcode
@@ -353,6 +356,8 @@
* This function is the 'set()' function in the following example as would be
* seen in extensions.lua.
*
+ * \return LUA error
+ *
* \code
* channel.variable:set("value")
* \endcode
diff --git a/res/res_odbc.c b/res/res_odbc.c
index 7cc0874..63fdf37 100644
--- a/res/res_odbc.c
+++ b/res/res_odbc.c
@@ -861,7 +861,7 @@
return max_connections;
}
-/*
+/*!
* \brief Determine if the connection has died.
*
* \param connection The connection to check
diff --git a/res/res_pjsip/config_transport.c b/res/res_pjsip/config_transport.c
index a86632e..c596b79 100644
--- a/res/res_pjsip/config_transport.c
+++ b/res/res_pjsip/config_transport.c
@@ -986,8 +986,8 @@
return 0;
}
-/*! \brief Helper function which turns a cipher name into an identifier */
#if defined(PJ_HAS_SSL_SOCK) && PJ_HAS_SSL_SOCK != 0
+/*! \brief Helper function which turns a cipher name into an identifier */
static pj_ssl_cipher cipher_name_to_id(const char *name)
{
pj_ssl_cipher ciphers[PJ_SSL_SOCK_MAX_CIPHERS];
@@ -1014,7 +1014,7 @@
* \internal
* \brief Add a new cipher to the transport's cipher list array.
*
- * \param transport Which transport to add the cipher to.
+ * \param state Which transport to add the cipher to.
* \param name Cipher identifier name.
*
* \retval 0 on success.
@@ -1052,8 +1052,8 @@
}
#endif
-/*! \brief Custom handler for TLS cipher setting */
#if defined(PJ_HAS_SSL_SOCK) && PJ_HAS_SSL_SOCK != 0
+/*! \brief Custom handler for TLS cipher setting */
static int transport_tls_cipher_handler(const struct aco_option *opt, struct ast_variable *var, void *obj)
{
struct ast_sip_transport *transport = obj;
diff --git a/res/res_xmpp.c b/res/res_xmpp.c
index 28b2d08..f86828f 100644
--- a/res/res_xmpp.c
+++ b/res/res_xmpp.c
@@ -1245,7 +1245,6 @@
* \brief Delete a PubSub node
* \param client the configured XMPP client we use to connect to a XMPP server
* \param node_name the name of the node to delete
- * return void
*/
static void xmpp_pubsub_delete_node(struct ast_xmpp_client *client, const char *node_name)
{
diff --git a/tests/test_astobj2.c b/tests/test_astobj2.c
index ce519ac..ee73cac 100644
--- a/tests/test_astobj2.c
+++ b/tests/test_astobj2.c
@@ -188,8 +188,6 @@
* \param v_obj A pointer to the object we want the key printed.
* \param where User data needed by prnt to determine where to put output.
* \param prnt Print output callback function to use.
- *
- * \return Nothing
*/
static void test_prnt_obj(void *v_obj, void *where, ao2_prnt_fn *prnt)
{
diff --git a/tests/test_astobj2_thrash.c b/tests/test_astobj2_thrash.c
index 1c1c30f..08a7116 100644
--- a/tests/test_astobj2_thrash.c
+++ b/tests/test_astobj2_thrash.c
@@ -73,13 +73,13 @@
return ast_tvdiff_us(data->deadline, ast_tvnow()) < 0;
}
-/*! /brief Free test element */
+/*! \brief Free test element */
static void ht_delete(void *obj)
{
ast_atomic_fetchadd_int(&alloc_count, -1);
}
-/*! /brief Create test element */
+/*! \brief Create test element */
static char *ht_new(int i)
{
const int buflen = 12;
@@ -94,7 +94,7 @@
return keybuf;
}
-/*! /brief Grow the hash data as specified */
+/*! \brief Grow the hash data as specified */
static void *hash_test_grow(void *d)
{
struct hash_test *data = d;
diff --git a/tests/test_hashtab_thrash.c b/tests/test_hashtab_thrash.c
index 854c00c..50e2b75 100644
--- a/tests/test_hashtab_thrash.c
+++ b/tests/test_hashtab_thrash.c
@@ -73,7 +73,7 @@
return val;
}
-/*! /brief Create test element */
+/*! \brief Create test element */
static char *ht_new(int i)
{
const int buflen = 12;
@@ -87,13 +87,13 @@
return keybuf;
}
-/*! /brief Free test element */
+/*! \brief Free test element */
static void ht_delete(void *obj)
{
ast_free(obj);
}
-/*! /brief Grow the hash data as specified */
+/*! \brief Grow the hash data as specified */
static void *hash_test_grow(void *d)
{
struct hash_test *data = d;
--
To view, visit https://gerrit.asterisk.org/c/asterisk/+/17603
To unsubscribe, or for help writing mail filters, visit https://gerrit.asterisk.org/settings
Gerrit-Project: asterisk
Gerrit-Branch: 16
Gerrit-Change-Id: If338163488498f65fa7248b60e80299c0a928e4b
Gerrit-Change-Number: 17603
Gerrit-PatchSet: 2
Gerrit-Owner: Alexander Traud <pabstraud at compuserve.com>
Gerrit-Reviewer: Benjamin Keith Ford <bford at digium.com>
Gerrit-Reviewer: Friendly Automation
Gerrit-Reviewer: Kevin Harwell <kharwell at digium.com>
Gerrit-MessageType: merged
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-code-review/attachments/20211202/f161164a/attachment-0001.html>
More information about the asterisk-code-review
mailing list