issue #5590
[asterisk/asterisk.git] / ChangeLog
1 2005-11-10  Kevin P. Fleming  <kpfleming@digium.com>
2
3         * include/asterisk/chanspy.h: move spy-related stuff into separate header so chan_h323 can build (issue #5590)
4
5         * include/asterisk/linkedlists.h (AST_LIST_HEAD_SET_NOLOCK): properly initialize tail pointer when list head is directly set (issue #5669)
6
7         * app.c (ast_app_parse_options): ok, so we aren't all perfect... let's make the while loop actually work properly here (issue #5684)
8
9         * apps/app_disa.c (disa_exec): correct password file parsing (issue #5676)
10
11         * apps/app_meetme.c (conf_run): don't restrict admin users from joining a locked conference (issue #5680)
12
13         * channels/chan_misdn.c: include stdio.h (issue #5671)
14         * channels/chan_misdn_config.c: fix prototype warning (issue #5671)
15
16         * pbx.c: remove apps that were deprecated before 1.0 was released (issue #5673)
17
18         * apps/app_striplsd.c, apps/app_substring.c: remove apps that were deprecated before 1.0 was released (issue #5673)
19
20         * include/asterisk/lock.h (PTHREAD_MUTEX_RECURSIVE_NP): work around header problems on Cygwin (issue #5668)
21
22         * pbx/pbx_ael.c: handle switch default cases inside macros properly (issue #5354)
23
24         * configs/voicemail.conf.sample (format): add strong warning about changing format list when mailboxes contain messages (issue #5689)
25
26         * many files: ensure that system headers are included before Asterisk headers (issue #5693)
27
28         * channels/chan_iax2.c (complete_iax2_show_peer): don't return from function without releasing lock (issue #5685)
29
30         * channels/iax2-provision.c (iax_provision_reload): don't leak memory (issue #5700)
31
32         * pbx/pbx_ael.c (handle_macro): don't leak memory (issue #5701)
33         (handle_context): ditto
34
35         * res/res_features.c (load_config): properly initialize referenced variable (issue #5703)
36
37         * apps/app_queue.c (rqm_exec): correct segfault problem (issue #5705)
38         (aqm_exec): ditto
39
40         * app.c (ast_app_parse_options): don't increment 's' until after checking for NULL (related to issue #5630)
41
42         * apps/app_rpt.c: solve a memory leak (config structure was not freed) (issue #5706
43
44 2005-11-10  Russell Bryant <russell@digium.com>
45
46         * app.c (ast_app_separate_args): Don't consider the open parenthesis as part of the arguments to an option. (issue #5630)
47         * many files: Change all references to ast_separate_app_args to ast_app_separate_args
48         * many files in apps/: Clean up some application descriptions. Make sure all descriptions in changed files are wrapped at 80 characters.
49
50 2005-11-09  Russell Bryant <russell@digium.com>
51
52         * pbx.c: Clean up descriptions of built-in dialplan applications. Changes include clearer wording and not referring to return values.
53
54 2005-11-09  Kevin P. Fleming  <kpfleming@digium.com>
55
56         * channels/chan_iax2.c (update_registry): don't complain about unspecifed registration expiration intervals, just use the minimum
57
58 2005-11-08  Kevin P. Fleming  <kpfleming@digium.com>
59
60         * Asterisk 1.2.0-rc1 released.
61
62         * include/asterisk/file.h: add test to ensure that stdio.h is included before this file (issue #5658)
63
64         * res/res_odbc.c (odbc_prepare_and_execute): add new API call for use to properly handle prepared statements across server disconnects (issue #5563)
65
66         * pbx.c (pbx_substitute_variables_helper_full): use already-substituted buffer for parsing variable name (issue #5664)
67
68         * channels/chan_zap.c (zt_request): return AST_CAUSE_CONGESTION when a group-channel is requested and the group exists but all channels are busy (issue #3360, related fix)
69         * channels/chan_iax2.c (create_addr): treat UNREACHABLE as AST_CAUSE_UNREGISTERED so that it will generate CHANUNAVAIL from app_dial (issue #3360)
70
71         * res/res_features.c (ast_bridge_call_thread_launch): set SCHED_RR separately from thread creation, so it won't fail when running as non-root (issue #5601, different fix)
72
73         * pbx.c (pbx_builtin_pushvar_helper): add new API function for setting variables that can exist multiple times (issue #2720)
74         * apps/Makefile (APPS): add app_stack (issue #2720)
75         * apps/app_stack.c: new applications (issue #2720)
76
77         * apps/app_meetme.c: fix two audio delay problems related to using non-Zap channels in conferences (issues #3599 and #4252)
78         * configs/meetme.conf.sample: add documentation of new 'audiobuffers' setting to control buffering on incoming audio from non-Zap channels
79
80         * channels/chan_local.c (local_call): move channel variables from incoming to outgoing instead of inheriting them (issue #5604)
81
82         * many files: add explicit include of stdio.h (issue #5650)
83
84 2005-11-07  Kevin P. Fleming  <kpfleming@digium.com>
85
86         * UPGRADE.txt (Parking): add note about new parking behavior (issue #5532)
87
88         * many files: more Cygwin compatibility, and proper getloadavg() prototype/macro (issue #5569)
89
90         * include/asterisk/lock.h (__ast_pthread_mutex_lock): correct build with DETECT_DEADLOCKS defined (issue #5570)
91
92 2005-11-07  Russell Bryant  <russell@digium.com>
93
94         * apps/app_queue.c: upgrade to new arg/option API and implement priority jumping control (issue #5580)
95         * many files: Add missing include of stdio.h, and remove some duplicate and unused header includes
96
97         * include/asterisk/app.h: Increment the arg_index in the options structure to fix applicaiton options that have arguments to them
98
99 2005-11-07  Kevin P. Fleming  <kpfleming@digium.com>
100
101         * cryptostub.c: include necessary headers
102         * include/asterisk/crypto.h: don't include unnecessary headers
103
104         * manager.c (action_setvar): add support for setting global variables (issue #5571)
105
106         * Makefile: correct cross-compilation issue introduced in Cygwin patches (issue #5572)
107
108         * apps/app_voicemail.c: upgrade to new arg/option API and implement priority jumping control (issue #5649)
109
110         * asterisk.c (main): setpriority() failure is not a reason to stop the process (issue #5581)
111
112         * say.c (ast_say_date_with_format_da): say hours properly (issue #5576)
113
114         * manager.c (astman_get_variables): restore old multiple-variable behavior for "Variable" header (issue #5585)
115
116         * many files: don't check for NULL before calling ast_strlen_zero, it can do it itself (issue #5648)
117
118         * pbx.c (handle_show_hints): use proper state-to-string function for hint state (issue #5583)
119
120         * rtp.c: use unsigned format for debug packet output (issue #5595)
121
122         * asterisk.c (main): force a dnsmgr background refresh after all other modules are initialized (issue #5599)
123         * dnsmgr.c: add ability to start a background refresh on demand (issue #5599)
124
125         * apps/app_dial.c (HANDLE_CAUSE): set CDR disposition to match cause code (issue #5602)
126
127         * asterisk.c: support 'runuser' and 'rungroup' options in asterisk.conf (issue #5621)
128
129         * res/Makefile, apps/Makefile, channels/Makefile, Makefile: support WITHOUT_ZAPTEL define to forcibly avoid building Zaptel support (issue #5634)
130
131         * Makefile: various fixes (issue #5633)
132
133         * apps/app_osplookup.c: upgrade to new arg/option API and implement priority jumping control
134
135         * channels/chan_misdn.c: various fixes (issue #5639)
136         * channels/misdn/isdn_lib.c: various fixes (issue #5639)
137
138         * apps/app_playback.c: upgrade to new arg/option API and implement priority jumping control
139
140         * apps/app_privacy.c: upgrade to new arg/option API and implement priority jumping control
141
142         * apps/app_sendtext.c: upgrade to new arg/option API and implement priority jumping control
143
144         * apps/app_transfer.c: upgrade to new arg/option API and implement priority jumping control
145
146         * apps/app_txtcidname.c: upgrade to new arg/option API and implement priority jumping control
147
148         * Makefile: restore function of 'dont-optimize'
149
150         * config.c (config_text_file_load): don't generate log message when stat() fails
151
152         * many files: clean up application documentation to not refer to return values, since they cannot be used in the dialplan (work done by Neil Lewis)
153
154 2005-11-06  Russell Bryant <russell@digium.com>
155
156         * many files: alphabetize options in applicaiton descriptions
157
158         * channels/chan_iax2.c: Use an enum to define iax peer/user flags as well as the pvt structure state.  Use the ast_flags macros for checking or setting the state.
159
160         * sounds.txt: Add missing words from the description of the vm-opts prompt
161
162         * apps/app_externalivr.c: Add a space that fixes building on older versions of gcc
163
164         * many files: Add doxygen updates to categorize modules into groups. Convert a lot of comments over to doxygen style. Add some text giving a basic overview of channels.
165
166         * many files: Update applications to add an exit status variable, make priority jumping optional, and use new args parsing macros
167
168         * pbx.c cdr.c res/res_features.c apps/app_dial.c include/asterisk/cdr.h: Convert some built-in applications to use new args parsing macros.  Change ast_cdr_reset to take a pointer to an ast_flags structure instead of an integer for flags.
169
170         * channels/chan_agent.c: Don't loop forever on an invalid options string
171
172         * apps/app_disa.c apps/app_forkcdr.c: Fix to use correct arguments to ast_cdr_reset
173
174 2005-11-05  Kevin P. Fleming  <kpfleming@digium.com>
175
176         * Makefile: don't rebuild asterisk/build.h unless the asterisk binary is going to be relinked for some other reason (stops spurious recompile/link every time 'make' is issued); clean up variable substitutions to use consistent syntax
177         * asterisk.c: don't include asterisk/build.h (it's unnecessary)
178         * cli.c: don't include asterisk/build.h, use extern references to buildinfo.c
179         * buildinfo.c: new file to hold version info strings
180
181 2005-11-04  Kevin P. Fleming  <kpfleming@digium.com>
182
183         * apps/app_mixmonitor.c (mixmonitor_exec): correct app name in an error message
184
185 2005-11-04  Russell Bryant  <russell@digium.com>
186
187         * channels/chan_iax2.c: Create a function that stores a peer's status in a given buffer.  Use this function in "iax2 show peers" and "iax2 show peer <peername>".  Also, add the peer's status as an option to the IAXPEER dialplan function.
188
189 2005-11-04  Kevin P. Fleming  <kpfleming@digium.com>
190
191         * include/asterisk/compiler.h: don't try to use always_inline on old compilers
192
193 2005-11-03  Russell Bryant  <russell@digium.com>
194
195         * res/res_agi.c: initialize buffer for result so that the contents are always valid in the response to GET FULL VARIABLE
196
197 2005-11-03  Kevin P. Fleming  <kpfleming@digium.com>
198
199         * doc/README.variables: document DYNAMIC_FEATURES
200
201         * res/res_features.c (ast_bridge_call): remove unused variables
202
203         * apps/app_dial.c (dial_exec_full): simplify options and flag usage
204
205         * include/asterisk/app.h: re-work application arg/option parsing APIs for consistent naming, add doxygen docs for option API
206         * many files: update to new APIs
207
208 2005-11-02  Kevin P. Fleming  <kpfleming@digium.com>
209
210         * apps/app_dial.c (dial_exec_full): convert to use API calls for argument/option parsing
211
212         * include/asterisk/channel.h: add doxygen docs for silence generator APIs
213
214         * channel.c (ast_channel_bridge): simplify native-bridge return logic, remove 'unsuccessful' message since it causes too many questions :-)
215
216 2005-11-01  Kevin P. Fleming  <kpfleming@digium.com>
217
218         * stdtime/localtime.c: fix build failure on uClibc systems (issue #5558)
219         * devicestate.c: same
220
221         * many files: make chan_misdn actually build (issue #5566)
222
223         * many files: more Cygwin build system support (issue #4678)
224
225         * apps/app_parkandannounce.c (parkandannounce_exec): supply parent channel to ast_request_and_dial so channel variables can be inherited (issue #5564)
226         * include/asterisk/channel.h: add parent_channel field
227         * channel.c (__ast_request_and_dial): use parent_channel field to inherit variables into new channel
228
229         * apps/app_cut.c (cut_internal): use ast_app_separate_args() instead of open code (issue #5560)
230
231         * apps/app_mixmonitor.c (launch_monitor_thread): ast_strlen_zero can handle NULL input (issue #5561)
232         (mixmonitor_exec): same
233
234         * res/res_features.c (ast_feature_request_and_dial): ensure that channel variables are inherited from the channel placing the call (issue #5499)
235
236         * utils.c (getloadavg): change to using _BSD_SOURCE as the indicator for whether this function is present or not (issue #5549)
237         
238         * include/asterisk/utils.h (ast_slinear_saturated_add): force to be inlined whenever possible
239         (ast_slinear_saturated_multiply): same
240         (ast_slinear_saturated_divide): same
241         (inaddrcmp): same
242         * include/asterisk/strings.h (ast_strlen_zero): force to be inlined whenever possible
243         * include/asterisk/compiler.h (force_inline): add macro to force inlining of functions
244         
245         * app.c (ast_play_and_record): use ast_silence_generator during recording if requested
246         * asterisk.c: add global option to enable silence-during-record (issue #5135)
247         * channel.c (silence_generator_alloc): new
248         (silence_generator_release): new
249         (silence_generator_generate): new
250         (ast_channel_start_silence_generator): new API call to start generating silence on a channel
251         (ast_channel_stop_silence_generator): parallel call to stop silence generation
252         * apps/app_record.c (record_exec): use ast_silence_generator during recording if requested
253
254 2005-11-01  Kevin P. Fleming  <kpfleming@digium.com>
255
256         * Asterisk 1.2.0-beta2 released.
257