05f6817f0543da15523454f7a1681a4479c41487
[asterisk/asterisk.git] / ChangeLog
1 2005-11-20  Russell Bryant <russell@digium.com>
2
3         * Makefile apps/Makefile: Fix 'make install' for Solaris. (issue #5775)
4
5         * apps/app_record.c: Don't leak a frame if writing it to the file fails. (issue #5787)
6
7         * Makefile: Create the monitor spool directory when the other spool directories are created.
8
9         * pbx.c.c: Remove some useless checks and unnecessary calls to ast_strlen_zero(). (issue #5805)
10
11         * cli.c: Remove some unnecessary calls to ast_strlen_zero(). (issue #5804)
12
13         * channels/chan_oss.c configs/oss.conf.sample: Add the ability to set callerid in oss.conf. 
14
15         * channels/chan_sip.c channels/chan_iax2.c: Change warning messages about the number of scheduled events happening all at once to debug messages. (issue #5794)
16
17 2005-11-20  Josh Roberson <josh@asteriasgi.com>
18
19         * pbx/pbx_spool.c: Fix crash in spooler if set/setvar declared incorrectly. (issue #5806)
20
21         * apps/app_meetme.c: fix 'X' option in MeetMe, with slight modification. (issue #5773)
22
23         * apps/app_voicemail.c: Make sure we're copying the read digits when calling voicemail without a box. (issue #5774)
24
25         * apps/app_md5.c: Fix conditional jump option.
26
27         * apps/app_controlplayback.c: Fix conditional jump option.
28
29         * apps/app_hasnewvoicemail.c: Fix conditional jump option to jump properly, also correct a small typo in the description. (issue #5795)
30
31         * channels/chan_iax2.c: Fix output of iax2 show peer <peer> (issue #5792)
32
33         * UPGRADE.txt: Adjust note for naming conventions of iax2 channels. (issue #5792)
34
35         * res/res_musiconhold.c: Correct typo in ast_copy_string() for class->mode.  (issue #5803)
36
37 2005-11-19  Josh Roberson <josh@asteriasgi.com>
38
39         * channels/Makefile: Put chan_oss back into the default build. (issue #5799)
40
41         * funcs/func_enum.c: Fix long text description causing cosmetic defect on module load. (issue #5791)
42
43 2005-11-19  Russell Bryant  <russell@digium.com>
44
45         * app/app_echo.c: Update application description to be a bit more accurate, and clean up a little bit of code formatting
46
47 2005-11-16  Russell Bryant  <russell@digium.com>
48
49         * Makefile: Fix the output of Makefile generated variables to doxygen
50
51         * channels/chan_sip.c: Add missing carriage return and line feed to the SDP line indicating that we don't support VAD (issue #5780)
52
53 2005-11-16  Kevin P. Fleming  <kpfleming@digium.com>
54
55         * Asterisk 1.2.0 released.
56         
57 2005-11-16  Jeremy McNamara <jj@nufone.net>
58
59         * apps/app_voicemail.c (load_config): do not terminate asterisk if no voicemail config file
60         * channels/chan_skinny:  Don't register channel type until ready, code formatting updates
61
62 2005-11-16  Josh Roberson <josh@asteriasgi.com>
63
64         * Makefile:  Update to fix non-responsive remote console on Darwin (OSX)(issue #5757)
65
66 2005-11-16  Kevin P. Fleming  <kpfleming@digium.com>
67
68         * channels/Makefile: don't build chan_modem and sub-modules by default
69         * configs/modules.conf.sample: explicitly 'noload' chan_modem.so and submodules, in case old versions exist
70         
71         * res/Makefile: issue mpg123 not-installed warning at 'make install' time, not 'make'
72
73         * apps/app_forkcdr.c (forkcdr_exec): issue warning (and don't segfault) if ForkCDR is called on a channel that doesn't have a CDR (issue #5763)
74
75         * channel.c (ast_queue_hangup): ensure that the channel lock is held before changing its fields... (issue #5770)
76
77         * res/res_musiconhold.c: don't spit out incorrect log messages (and leak memory) during reload (issue #5766)
78
79         * channels/chan_sip.c (process_sdp): don't pass video codec number into ast_getformatname(), it is not valid input for that function (issue #5764)
80
81         * pbx/pbx_ael.c (match_assignment): properly parse equal signs surrounded by whitespace (issue #5761)
82
83         * doc/README.realtime: document the limitations of using FreeTDS with Realtime (issue #5767)
84
85 2005-11-15  Kevin P. Fleming  <kpfleming@digium.com>
86
87         * Makefile: use -g3 for compiler to include macro information for debugger
88
89         * astmm.c (__ast_vasprintf): don't re-use the ap list without copying it; that's not safe on some platforms (issue #5035)
90
91         * doc/README.backtrace: add note about properly building Asterisk to be able to produce backtraces; wrap text and remove DOS line endings
92
93         * channels/chan_sip.c (add_codec_to_sdp): add 'annexb=no' to G.729A SDP (issue #5539)
94
95         * channels/chan_alsa.c (alsa_hangup): handle autohangup properly (issue #5672)
96
97         * channels/chan_misdn.c (and other files): various fixes (issue #5739)
98
99         * channels/chan_sip.c (handle_request_info): properly forward 'flash' events received via SIP INFO (issue #5751, different patch)
100
101         * apps/app_disa.c (disa_exec): don't duplicate constant strings when not needed
102
103         * apps/app_playback.c (playback_exec): use correct logic tests for options (issue #5752)
104
105         * apps/app_disa.c (disa_exec): use standard arg parsing routines (issue #5736)
106
107 2005-11-15  Russell Bryant <russell@digium.com>
108
109         * manager.c: Don't crash on a SetVar action if the channel name is not set, or variable's value is not set (issue #5760)
110
111         * doc/README.variables: Add application exit status variables
112
113 2005-11-14  Josh Roberson <josh@asteriasgi.com>
114         
115         * manager.c: Fix crash on variable passing from AMI originate (issue #5737)
116
117 2005-11-14  Russell Bryant  <russell@digium.com>
118
119         * many files: Merge doxygen documentation updates. (issue #5605)
120
121         * apps/app_dial.c: Fix typo in RetryDial description.
122
123 2005-11-12  Russell Bryant  <russell@digium.com>
124
125         * channels/chan_oss.c: Fix a typo in an error message.
126
127 2005-11-11  Kevin P. Fleming  <kpfleming@digium.com>
128
129         * Asterisk 1.2.0-rc2 released.
130         
131 2005-11-11  Kevin P. Fleming  <kpfleming@digium.com>
132
133         * channels/chan_sip.c (thread_safe_rand): ensure that threads don't get the same random number (issue #5712)
134
135         * apps/app_voicemail.c (forward_message): correct bugs in message forwarding (issue #5718)
136         (copy_message): use correct path for locking (issue #5704)
137
138         * apps/app_dial.c (wait_for_answer): correct flag copying for automon feature (issue #5720)
139
140         * channels/chan_iax2.c: correct comment
141
142         * apps/app_voicemail.c (close_mailbox): correct previous commit (issue #5663)
143         (vm_change_password): fix password change writing (issue #5721)
144
145         * channels/chan_sip.c (transmit_invite): remove useless debug message; don't try to add OSP tokens to OPTIONS pings
146
147         * apps/app_voicemail.c (close_mailbox): properly remove deleted messages at mailbox close time (issue #5663)
148
149 2005-11-11  Mark Spencer <markster@digium.com>
150
151         * channels/chan_zap.c (zt_bridge): only enable/disable DTMF detection on SUB_REAL channels
152
153 2005-11-10  Kevin P. Fleming  <kpfleming@digium.com>
154
155         * channels/chan_iax2.c: ensure that system headers that provide basic types are included first (issue #5713)
156
157 2005-11-11  Russell Bryant  <russell@digium.com>
158
159         * many files in apps/: Clean up application descriptions. Clarify some wording and make sure they wrap at 80 characters.
160
161 2005-11-10  Mark Spencer <markster@digium.com>
162
163         * rtp.c (ast_rtp_raw_write): use unsigned int for return value from calc_txstamp() (issue #5595)
164         (calc_txstamp): never return a value that was less than zero before being turned into 'unsigned int' (issue #5595)
165
166 2005-11-10  Kevin P. Fleming  <kpfleming@digium.com>
167
168         * include/asterisk/chanspy.h: move spy-related stuff into separate header so chan_h323 can build (issue #5590)
169
170         * include/asterisk/linkedlists.h (AST_LIST_HEAD_SET_NOLOCK): properly initialize tail pointer when list head is directly set (issue #5669)
171
172         * 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)
173
174         * apps/app_disa.c (disa_exec): correct password file parsing (issue #5676)
175
176         * apps/app_meetme.c (conf_run): don't restrict admin users from joining a locked conference (issue #5680)
177
178         * channels/chan_misdn.c: include stdio.h (issue #5671)
179         * channels/chan_misdn_config.c: fix prototype warning (issue #5671)
180
181         * pbx.c: remove apps that were deprecated before 1.0 was released (issue #5673)
182
183         * apps/app_striplsd.c, apps/app_substring.c: remove apps that were deprecated before 1.0 was released (issue #5673)
184
185         * include/asterisk/lock.h (PTHREAD_MUTEX_RECURSIVE_NP): work around header problems on Cygwin (issue #5668)
186
187         * pbx/pbx_ael.c: handle switch default cases inside macros properly (issue #5354)
188
189         * configs/voicemail.conf.sample (format): add strong warning about changing format list when mailboxes contain messages (issue #5689)
190
191         * many files: ensure that system headers are included before Asterisk headers (issue #5693)
192
193         * channels/chan_iax2.c (complete_iax2_show_peer): don't return from function without releasing lock (issue #5685)
194
195         * channels/iax2-provision.c (iax_provision_reload): don't leak memory (issue #5700)
196
197         * pbx/pbx_ael.c (handle_macro): don't leak memory (issue #5701)
198         (handle_context): ditto
199
200         * res/res_features.c (load_config): properly initialize referenced variable (issue #5703)
201
202         * apps/app_queue.c (rqm_exec): correct segfault problem (issue #5705)
203         (aqm_exec): ditto
204
205         * app.c (ast_app_parse_options): don't increment 's' until after checking for NULL (related to issue #5630)
206
207         * apps/app_rpt.c: solve a memory leak (config structure was not freed) (issue #5706)
208
209 2005-11-10  Russell Bryant <russell@digium.com>
210
211         * app.c (ast_app_separate_args): Don't consider the open parenthesis as part of the arguments to an option. (issue #5630)
212
213         * many files: Change all references to ast_separate_app_args to ast_app_separate_args
214
215         * many files in apps/: Clean up some application descriptions. Make sure all descriptions in changed files are wrapped at 80 characters.
216
217 2005-11-09  Russell Bryant <russell@digium.com>
218
219         * pbx.c: Clean up descriptions of built-in dialplan applications. Changes include clearer wording and not referring to return values.
220
221 2005-11-09  Kevin P. Fleming  <kpfleming@digium.com>
222
223         * channels/chan_iax2.c (update_registry): don't complain about unspecifed registration expiration intervals, just use the minimum
224
225 2005-11-08  Kevin P. Fleming  <kpfleming@digium.com>
226
227         * Asterisk 1.2.0-rc1 released.
228
229         * include/asterisk/file.h: add test to ensure that stdio.h is included before this file (issue #5658)
230
231         * res/res_odbc.c (odbc_prepare_and_execute): add new API call for use to properly handle prepared statements across server disconnects (issue #5563)
232
233         * pbx.c (pbx_substitute_variables_helper_full): use already-substituted buffer for parsing variable name (issue #5664)
234
235         * 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)
236         * channels/chan_iax2.c (create_addr): treat UNREACHABLE as AST_CAUSE_UNREGISTERED so that it will generate CHANUNAVAIL from app_dial (issue #3360)
237
238         * 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)
239
240         * pbx.c (pbx_builtin_pushvar_helper): add new API function for setting variables that can exist multiple times (issue #2720)
241         * apps/Makefile (APPS): add app_stack (issue #2720)
242         * apps/app_stack.c: new applications (issue #2720)
243
244         * apps/app_meetme.c: fix two audio delay problems related to using non-Zap channels in conferences (issues #3599 and #4252)
245         * configs/meetme.conf.sample: add documentation of new 'audiobuffers' setting to control buffering on incoming audio from non-Zap channels
246
247         * channels/chan_local.c (local_call): move channel variables from incoming to outgoing instead of inheriting them (issue #5604)
248
249         * many files: add explicit include of stdio.h (issue #5650)
250
251 2005-11-07  Kevin P. Fleming  <kpfleming@digium.com>
252
253         * UPGRADE.txt (Parking): add note about new parking behavior (issue #5532)
254
255         * many files: more Cygwin compatibility, and proper getloadavg() prototype/macro (issue #5569)
256
257         * include/asterisk/lock.h (__ast_pthread_mutex_lock): correct build with DETECT_DEADLOCKS defined (issue #5570)
258
259 2005-11-07  Russell Bryant  <russell@digium.com>
260
261         * apps/app_queue.c: upgrade to new arg/option API and implement priority jumping control (issue #5580)
262         * many files: Add missing include of stdio.h, and remove some duplicate and unused header includes
263
264         * include/asterisk/app.h: Increment the arg_index in the options structure to fix applicaiton options that have arguments to them
265
266 2005-11-07  Kevin P. Fleming  <kpfleming@digium.com>
267
268         * cryptostub.c: include necessary headers
269         * include/asterisk/crypto.h: don't include unnecessary headers
270
271         * manager.c (action_setvar): add support for setting global variables (issue #5571)
272
273         * Makefile: correct cross-compilation issue introduced in Cygwin patches (issue #5572)
274
275         * apps/app_voicemail.c: upgrade to new arg/option API and implement priority jumping control (issue #5649)
276
277         * asterisk.c (main): setpriority() failure is not a reason to stop the process (issue #5581)
278
279         * say.c (ast_say_date_with_format_da): say hours properly (issue #5576)
280
281         * manager.c (astman_get_variables): restore old multiple-variable behavior for "Variable" header (issue #5585)
282
283         * many files: don't check for NULL before calling ast_strlen_zero, it can do it itself (issue #5648)
284
285         * pbx.c (handle_show_hints): use proper state-to-string function for hint state (issue #5583)
286
287         * rtp.c: use unsigned format for debug packet output (issue #5595)
288
289         * asterisk.c (main): force a dnsmgr background refresh after all other modules are initialized (issue #5599)
290         * dnsmgr.c: add ability to start a background refresh on demand (issue #5599)
291
292         * apps/app_dial.c (HANDLE_CAUSE): set CDR disposition to match cause code (issue #5602)
293
294         * asterisk.c: support 'runuser' and 'rungroup' options in asterisk.conf (issue #5621)
295
296         * res/Makefile, apps/Makefile, channels/Makefile, Makefile: support WITHOUT_ZAPTEL define to forcibly avoid building Zaptel support (issue #5634)
297
298         * Makefile: various fixes (issue #5633)
299
300         * apps/app_osplookup.c: upgrade to new arg/option API and implement priority jumping control
301
302         * channels/chan_misdn.c: various fixes (issue #5639)
303         * channels/misdn/isdn_lib.c: various fixes (issue #5639)
304
305         * apps/app_playback.c: upgrade to new arg/option API and implement priority jumping control
306
307         * apps/app_privacy.c: upgrade to new arg/option API and implement priority jumping control
308
309         * apps/app_sendtext.c: upgrade to new arg/option API and implement priority jumping control
310
311         * apps/app_transfer.c: upgrade to new arg/option API and implement priority jumping control
312
313         * apps/app_txtcidname.c: upgrade to new arg/option API and implement priority jumping control
314
315         * Makefile: restore function of 'dont-optimize'
316
317         * config.c (config_text_file_load): don't generate log message when stat() fails
318
319         * 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)
320
321 2005-11-06  Russell Bryant <russell@digium.com>
322
323         * many files: alphabetize options in applicaiton descriptions
324
325         * 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.
326
327         * sounds.txt: Add missing words from the description of the vm-opts prompt
328
329         * apps/app_externalivr.c: Add a space that fixes building on older versions of gcc
330
331         * 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.
332
333         * many files: Update applications to add an exit status variable, make priority jumping optional, and use new args parsing macros
334
335         * 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.
336
337         * channels/chan_agent.c: Don't loop forever on an invalid options string
338
339         * apps/app_disa.c apps/app_forkcdr.c: Fix to use correct arguments to ast_cdr_reset
340
341 2005-11-05  Kevin P. Fleming  <kpfleming@digium.com>
342
343         * 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
344         * asterisk.c: don't include asterisk/build.h (it's unnecessary)
345         * cli.c: don't include asterisk/build.h, use extern references to buildinfo.c
346         * buildinfo.c: new file to hold version info strings
347
348 2005-11-04  Kevin P. Fleming  <kpfleming@digium.com>
349
350         * apps/app_mixmonitor.c (mixmonitor_exec): correct app name in an error message
351
352 2005-11-04  Russell Bryant  <russell@digium.com>
353
354         * 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.
355
356 2005-11-04  Kevin P. Fleming  <kpfleming@digium.com>
357
358         * include/asterisk/compiler.h: don't try to use always_inline on old compilers
359
360 2005-11-03  Russell Bryant  <russell@digium.com>
361
362         * res/res_agi.c: initialize buffer for result so that the contents are always valid in the response to GET FULL VARIABLE
363
364 2005-11-03  Kevin P. Fleming  <kpfleming@digium.com>
365
366         * doc/README.variables: document DYNAMIC_FEATURES
367
368         * res/res_features.c (ast_bridge_call): remove unused variables
369
370         * apps/app_dial.c (dial_exec_full): simplify options and flag usage
371
372         * include/asterisk/app.h: re-work application arg/option parsing APIs for consistent naming, add doxygen docs for option API
373         * many files: update to new APIs
374
375 2005-11-02  Kevin P. Fleming  <kpfleming@digium.com>
376
377         * apps/app_dial.c (dial_exec_full): convert to use API calls for argument/option parsing
378
379         * include/asterisk/channel.h: add doxygen docs for silence generator APIs
380
381         * channel.c (ast_channel_bridge): simplify native-bridge return logic, remove 'unsuccessful' message since it causes too many questions :-)
382
383 2005-11-01  Kevin P. Fleming  <kpfleming@digium.com>
384
385         * stdtime/localtime.c: fix build failure on uClibc systems (issue #5558)
386         * devicestate.c: same
387
388         * many files: make chan_misdn actually build (issue #5566)
389
390         * many files: more Cygwin build system support (issue #4678)
391
392         * apps/app_parkandannounce.c (parkandannounce_exec): supply parent channel to ast_request_and_dial so channel variables can be inherited (issue #5564)
393         * include/asterisk/channel.h: add parent_channel field
394         * channel.c (__ast_request_and_dial): use parent_channel field to inherit variables into new channel
395
396         * apps/app_cut.c (cut_internal): use ast_app_separate_args() instead of open code (issue #5560)
397
398         * apps/app_mixmonitor.c (launch_monitor_thread): ast_strlen_zero can handle NULL input (issue #5561)
399         (mixmonitor_exec): same
400
401         * res/res_features.c (ast_feature_request_and_dial): ensure that channel variables are inherited from the channel placing the call (issue #5499)
402
403         * utils.c (getloadavg): change to using _BSD_SOURCE as the indicator for whether this function is present or not (issue #5549)
404         
405         * include/asterisk/utils.h (ast_slinear_saturated_add): force to be inlined whenever possible
406         (ast_slinear_saturated_multiply): same
407         (ast_slinear_saturated_divide): same
408         (inaddrcmp): same
409         * include/asterisk/strings.h (ast_strlen_zero): force to be inlined whenever possible
410         * include/asterisk/compiler.h (force_inline): add macro to force inlining of functions
411         
412         * app.c (ast_play_and_record): use ast_silence_generator during recording if requested
413         * asterisk.c: add global option to enable silence-during-record (issue #5135)
414         * channel.c (silence_generator_alloc): new
415         (silence_generator_release): new
416         (silence_generator_generate): new
417         (ast_channel_start_silence_generator): new API call to start generating silence on a channel
418         (ast_channel_stop_silence_generator): parallel call to stop silence generation
419         * apps/app_record.c (record_exec): use ast_silence_generator during recording if requested
420
421 2005-11-01  Kevin P. Fleming  <kpfleming@digium.com>
422
423         * Asterisk 1.2.0-beta2 released.
424