diff options
author | David Ruggles <thedavidfactor@gmail.com> | 2009-12-07 19:48:14 +0000 |
---|---|---|
committer | David Ruggles <thedavidfactor@gmail.com> | 2009-12-07 19:48:14 +0000 |
commit | 43ebe5a2bad354c8d0f836b097e159829241ed70 (patch) | |
tree | febe434e137e857040bedc67b589e033119ce364 /apps | |
parent | 86dc66625c3572b00511c868ed56ac9025513583 (diff) |
Fix TCP Client interface
Fix a couple of very minor bugs that prevent the socket client from working. The wrong set of properties were used in one place and the size of the address variable isn't set if the host name is an ip address. Also includes a fix for a bug that was introduced previously.
(closes issue #16121)
Reported by: thedavidfactor
Tested by: thedavidfactor
Review: https://reviewboard.asterisk.org/r/439/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@233545 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps')
-rw-r--r-- | apps/app_externalivr.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/apps/app_externalivr.c b/apps/app_externalivr.c index ba9c211fb..95511cc65 100644 --- a/apps/app_externalivr.c +++ b/apps/app_externalivr.c @@ -419,7 +419,7 @@ static int app_exec(struct ast_channel *chan, const char *data) } /* Get rid of any extraneous arguments */ - if ((s = strchr(eivr_args.options, ','))) { + if (eivr_args.options && (s = strchr(eivr_args.options, ','))) { *s = '\0'; } @@ -473,9 +473,9 @@ static int app_exec(struct ast_channel *chan, const char *data) } ast_gethostbyname(hostname, &hp); - ivr_desc.local_address.sin_family = AF_INET; - ivr_desc.local_address.sin_port = htons(port); - memcpy(&ivr_desc.local_address.sin_addr.s_addr, hp.hp.h_addr, hp.hp.h_length); + ivr_desc.remote_address.sin_family = AF_INET; + ivr_desc.remote_address.sin_port = htons(port); + memcpy(&ivr_desc.remote_address.sin_addr.s_addr, hp.hp.h_addr, sizeof(hp.hp.h_addr)); if (!(ser = ast_tcptls_client_create(&ivr_desc)) || !(ser = ast_tcptls_client_start(ser))) { goto exit; } |