Commit Graph

1308 Commits

Author SHA1 Message Date
Luigi Rizzo
f148916c23 Move this macro from cli.c to cli.h so apps can use it
without duplicating the macro or the code:

/*!
 * In many cases we need to print singular or plural
 * words depending on a count. This macro helps us e.g.
 *     printf("we have %d object%s", n, ESS(n));
 */
#define ESS(x) ((x) == 1 ? "" : "s")



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47827 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-18 20:08:17 +00:00
Steve Murphy
6dcb17baaf This update fulfils the request of bug 7109, which claimed the language arg to ast_stream_and_wait() was redundant. Almost all calls just used chan->language, and seeing how chan is the first argument, this certainly seems redundant. A change of language could just as easily be done by simply changing the channel language before calling.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47821 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-17 23:18:51 +00:00
Luigi Rizzo
95a99a2469 remove a debugging message
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47818 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-17 22:56:58 +00:00
Luigi Rizzo
c32cae7e50 convert "help" to new style,
fix completion of arguments past the first one
that i broke earlier today.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47817 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-17 22:53:57 +00:00
Luigi Rizzo
619c4ef0ec standardize "module show [like]"
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47815 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-17 22:02:15 +00:00
Luigi Rizzo
4589662f7f describe a bit the patterns that you can have in the commands,
and add support for wildcard (spelled as '%').

On passing fix a bug in the expansion code which was hidden and
appeared when implementing the wildcard
The fix is just the line 'src != argindex', in case someone wants
to test this on 1.4 - but i would just keep this in trunk.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47813 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-17 21:50:55 +00:00
Luigi Rizzo
6f9b6ba0b1 merge the implemenmtation of "core set debug" and "core set verbose".
No externally visible changes.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47790 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-17 12:26:15 +00:00
Luigi Rizzo
867e3d6e5d introduce a bit of regexp support in the internal CLI api.
Now you can specify a cli command as
	"console autoanswer [on|off]"

which means the on|off argument is optional, or

	"console {mute|unmute}"

which means the mute|unmute argument is mandatory.

The blocks in [] or {} do not necessarily need to be at the
end of the string.

Completions for the variant parts are generated automatically.
This should significantly simplify the implementation of
the various handlers.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47787 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-17 11:12:13 +00:00
Luigi Rizzo
0c8f2f1e4c remove an unused function
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47769 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-16 21:57:23 +00:00
Luigi Rizzo
5fb52f8244 reduce indentation on a large function.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47732 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-16 14:58:24 +00:00
Luigi Rizzo
e58079b067 use atomic instructions to update the inuse counters
for CLI entriesC. The lock is not protecting this field.

I wonder if the field should be declared 'volatile' as well.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47731 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-16 14:41:28 +00:00
Luigi Rizzo
84a5921ab5 make kevin (and 64 bit machines) happy and
remove a cast from char* to int in handling the return
values from new-style handlers.

On passing, note that main/loader.c::ast_load_resource() always return 0
so errors are not propagated up. I am not sure this is the intended
behaviour.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47727 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-16 14:21:30 +00:00
Paul Cadach
fc58bec502 Merged revisions 44809 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r44809 | pcadach | 2006-10-10 23:44:54 +0700 (Втр, 10 Окт 2006) | 1 line

CHANNEL() function sometime mix parameter and value
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47718 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-16 08:18:41 +00:00
Joshua Colp
0f15e43add Merged revisions 47707 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r47707 | file | 2006-11-15 16:33:41 -0500 (Wed, 15 Nov 2006) | 2 lines

We need to ensure timelimit stuff is included as well so warnings get played. (issue #8050 reported by KNK)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47708 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-15 21:36:13 +00:00
Kevin P. Fleming
c4ad5399c2 Merged revisions 47701 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r47701 | kpfleming | 2006-11-15 14:50:06 -0600 (Wed, 15 Nov 2006) | 2 lines

don't try to call fclose() if fopen() failed

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47702 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-15 20:51:18 +00:00
Kevin P. Fleming
1c86ec8222 Merged revisions 47690 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r47690 | kpfleming | 2006-11-15 14:01:22 -0600 (Wed, 15 Nov 2006) | 20 lines

Merged revisions 47686,47688-47689 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r47686 | kpfleming | 2006-11-15 13:42:05 -0600 (Wed, 15 Nov 2006) | 2 lines

clear the category's variable tail pointer as well when variables are detached from it

........
r47688 | kpfleming | 2006-11-15 13:47:43 -0600 (Wed, 15 Nov 2006) | 2 lines

when appending a list of variable to a category, ensure the tail pointer points to the last variable in the list

........
r47689 | kpfleming | 2006-11-15 13:58:46 -0600 (Wed, 15 Nov 2006) | 2 lines

when re-writing the config file, don't repeat the path if it hasn't changed

........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47691 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-15 20:05:26 +00:00
Kevin P. Fleming
00c5f6d032 Merged revisions 47684 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r47684 | kpfleming | 2006-11-15 12:43:30 -0600 (Wed, 15 Nov 2006) | 10 lines

Merged revisions 47682 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r47682 | kpfleming | 2006-11-15 12:39:47 -0600 (Wed, 15 Nov 2006) | 2 lines

ouch... don't use printf, use ast_log/ast_verbose

........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47685 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-15 18:44:29 +00:00
Luigi Rizzo
9ddef9890a small simplifications and localization of variables.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47667 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-15 17:17:07 +00:00
Luigi Rizzo
b588fc320e new-style "core show channels"
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47665 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-15 17:05:55 +00:00
Luigi Rizzo
db923f638e more changes to new style of "module load" and "load".
Under FreeBSD, the filename_completion used in the above commands does
not work. Not sure why, but on passing i note that the function is
part of readline and is not reentrant, so it needs to be fixed one way
or another.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47664 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-15 16:39:38 +00:00
Luigi Rizzo
f28f07e1b2 move another deprecated command to the new style
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47663 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-15 16:20:23 +00:00
Luigi Rizzo
0e9753f401 move "core set debug" to the new style, and remove duplicated
code for the deprecated handler.

On passing fix a long standing bug in find_cli() which would not
find the longest match - this part (trivial, basically
just update matchlen on a match) must go in 1.4 and possibly 1.2 as well.




git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47662 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-15 16:13:30 +00:00
Luigi Rizzo
6edcca7b8d one more step cleaning the internal CLI interface:
the NEW_CLI macro now supports extra arguments (to deprecate other commands).
use this to implement unload and reload, and remove some unused functions.
usual completion fixes (as these function accept multiple arguments).

The summary is still a bit inconsistent.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47654 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-15 15:02:56 +00:00
Luigi Rizzo
1781f41b3b update the internal cli api following comments from kevin.
This change basically simplifies the interface of the
new-style handler removing almost all the tricks used in
the previous implementation to achieve backward compatibility
(which is still present and guaranteed.)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47652 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-15 14:11:28 +00:00
Joshua Colp
993c6823e6 Merged revisions 47645 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r47645 | file | 2006-11-14 23:45:24 -0500 (Tue, 14 Nov 2006) | 2 lines

If NAT detection is turned on or already detected then say NAT is active when setting the remote RTP peer when doing early bridging. (issue #8365 reported by marcelbarbulescu)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47646 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-15 04:47:52 +00:00
Kevin P. Fleming
f04ac0ad7e Merged revisions 47641 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r47641 | kpfleming | 2006-11-14 18:19:05 -0600 (Tue, 14 Nov 2006) | 2 lines

more formatting cleanup, and avoid running off the end of the string

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47642 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-15 00:19:35 +00:00
Joshua Colp
5861048fb6 Merged revisions 47639 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r47639 | file | 2006-11-14 19:14:07 -0500 (Tue, 14 Nov 2006) | 2 lines

Turn notice about unknown RTCP packet type into a debug message instead.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47640 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-15 00:15:38 +00:00
Luigi Rizzo
fbcc8f4de2 add missing casts and remove an unused function.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47630 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-14 22:08:20 +00:00
Luigi Rizzo
3d86c80c15 fix completion for "module reload mod_1 mod_2 ... "
(should do the same for the other similar commands, "reload", "module unload" and so on.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47620 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-14 17:00:39 +00:00
Luigi Rizzo
a9259cd8f4 partly convert to new style set-verbose, with completion fixes
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47619 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-14 16:55:27 +00:00
Luigi Rizzo
6e4ed956bc replace two deprecated functions with calls to the standard ones,
with fixes to argc/argv



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47616 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-14 16:38:35 +00:00
Luigi Rizzo
dfd4448412 remove duplicated implementation for a deprecated function, use the
original one instead with appropriate changes in argc/argv.

This is not always applicable, but in some simple cases it is.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47614 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-14 16:31:57 +00:00
Luigi Rizzo
abdb8002df new-style for 'core show uptime', include 'complete' support and better error checking
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47609 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-14 16:09:08 +00:00
Luigi Rizzo
7d38228d6e apply previous fix to old-style cli entries as well.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47608 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-14 15:55:18 +00:00
Luigi Rizzo
ff5160e35c fix "core set debug atleast ",
and fix the simple case where a command can have multiple completions,
the first ones coming from keywords in previous CLI entries.

There is no solution yet for the complex case of N1 completions
from a CLI entry, followed by N2 from the next one, and so on,
because the _complete() handlers do not tell us how many matches
it generates, so we don't know how many to skip when interrogating
the other handlers.

The only solution is to avoid, as much as possible, multiple
CLI entries with the same prefix.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47607 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-14 15:39:03 +00:00
Luigi Rizzo
fbb143b829 Bring in the improved internal API for the CLI.
WATCH OUT: this changes the binary interface (ABI) for modules,
so e.g. users of g729 codecs need a rebuilt module (but read below).

The new way to write CLI handlers is described in detail in cli.h,
and there are a few converted handlers in cli.c, look for NEW_CLI.

After converting a couple of commands i am convinced that
it is reasonably convenient to use, and it makes it easier to fix the
pending CLI issues.

On passing, note a bug with the current 'complete' architecture:
if a command is a prefix of multiple CLI entries, we miss some
of the possible options. As an example, "core set debug" can
continue with "channel" from one CLI entry, and "off" or "atleast"
from another one.

We address this problem in a separate commit
(when i have figured out a fix, that is).

ABI issues:
I asked Kevin if it was ok to make this change and he said yes.
While it would have been possible to make the change without breaking
the module ABI, the code would have been more convoluted.

I am happy to restore the old ABI (while still being able
to use the "new style" handlers) if there is demand.




git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47606 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-14 15:23:35 +00:00
Matt O'Gorman
43aefe9116 fix bytesize to 5.3kb for g723 codec and add support for multimode of tc400p
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47586 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-13 22:01:43 +00:00
Steve Murphy
cd74836d3a This solves bug 8342, whereby a crash occurs under certain circumstances while reading a config file with comments-- a call to CB_ADD shouldn't happen if withcomments is zero
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47577 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-13 19:15:45 +00:00
Joshua Colp
209628c6e2 Return module show to a working state. (issue #8353 reported by jserve)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47544 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-13 16:41:45 +00:00
Luigi Rizzo
06c9ef6411 stop looking for new entries when we know we are done.
there is no functional change, so it is not necessary to
bother merging this to 1.4 now.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47537 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-13 12:04:05 +00:00
Luigi Rizzo
b2e2f3f957 free memory when unregistering an entry.
needs to be merged to 1.4



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47536 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-13 12:01:25 +00:00
Russell Bryant
f575b7e25d Merged revisions 47492 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r47492 | russell | 2006-11-11 10:18:02 -0500 (Sat, 11 Nov 2006) | 2 lines

Tweak the formatting of this new function to better conform to coding guidelines.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47493 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-11 15:22:08 +00:00
Matt O'Gorman
b025702287 safe terminal output is sweet.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47491 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-11 02:12:27 +00:00
Joshua Colp
0282cc1a4d A trunk that builds is a productive trunk.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47464 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-10 19:51:15 +00:00
Tilghman Lesher
691363656f Merged revisions 47436 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r47436 | tilghman | 2006-11-10 10:51:55 -0600 (Fri, 10 Nov 2006) | 2 lines

Discussion of these CLI changes resulted in more consistency (Bug 8236)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47439 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-10 17:01:06 +00:00
Russell Bryant
2b2693499d Add the ability to specify multiple prompts to the Read() dialplan application,
similar to Background() and Playback().
(issue #7897, jsmith, with some modifications)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47408 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-10 03:59:48 +00:00
Joshua Colp
0efd51e1d2 This should already be called while locked.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47404 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-10 03:34:13 +00:00
Russell Bryant
7209032ffe Merged revisions 47377 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r47377 | russell | 2006-11-09 11:28:15 -0500 (Thu, 09 Nov 2006) | 2 lines

fix tab completion for "core debug channel" and "core no debug channel"

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47378 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-09 16:30:06 +00:00
Russell Bryant
adf6bb1d9a Merged revisions 47375 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r47375 | russell | 2006-11-09 11:24:02 -0500 (Thu, 09 Nov 2006) | 3 lines

Fix "core show channel".  Also, fix tab completion for both "core show channel"
and "core show channels".

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47376 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-09 16:26:47 +00:00
Russell Bryant
2ea9bb223f Merged revisions 47372 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r47372 | russell | 2006-11-09 11:18:33 -0500 (Thu, 09 Nov 2006) | 3 lines

Fix "core debug channel <whatever>".  I guess someone needs to go through and
audit every CLI command that changed number of arguments ...

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47374 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-09 16:20:43 +00:00