aboutsummaryrefslogtreecommitdiffstats
path: root/channels/chan_skinny.c
diff options
context:
space:
mode:
authorfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2007-08-08 21:44:58 +0000
committerfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2007-08-08 21:44:58 +0000
commita4803d15a244be2cbd7f852c4fcefe71f5ffaabc (patch)
treed42170fbe8a83884d32f1ed09f238da151554071 /channels/chan_skinny.c
parent21b3ffbe757d2c93610ab1c069116399ef4fdaee (diff)
Add support for using epoll instead of poll. This should increase scalability and is done in such a way that we should be able to add support for other poll() replacements.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@78683 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_skinny.c')
-rw-r--r--channels/chan_skinny.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/channels/chan_skinny.c b/channels/chan_skinny.c
index bc1e73322..c11643805 100644
--- a/channels/chan_skinny.c
+++ b/channels/chan_skinny.c
@@ -2515,12 +2515,12 @@ static void start_rtp(struct skinny_subchannel *sub)
sub->vrtp = ast_rtp_new_with_bindaddr(sched, io, 1, 0, bindaddr.sin_addr);
if (sub->rtp && sub->owner) {
- sub->owner->fds[0] = ast_rtp_fd(sub->rtp);
- sub->owner->fds[1] = ast_rtcp_fd(sub->rtp);
+ ast_channel_set_fd(sub->owner, 0, ast_rtp_fd(sub->rtp));
+ ast_channel_set_fd(sub->owner, 1, ast_rtcp_fd(sub->rtp));
}
if (hasvideo && sub->vrtp && sub->owner) {
- sub->owner->fds[2] = ast_rtp_fd(sub->vrtp);
- sub->owner->fds[3] = ast_rtcp_fd(sub->vrtp);
+ ast_channel_set_fd(sub->owner, 2, ast_rtp_fd(sub->vrtp));
+ ast_channel_set_fd(sub->owner, 3, ast_rtcp_fd(sub->vrtp));
}
if (sub->rtp) {
ast_rtp_setnat(sub->rtp, l->nat);
@@ -3070,7 +3070,7 @@ static struct ast_channel *skinny_new(struct skinny_line *l, int state)
if (skinnydebug)
ast_verbose("skinny_new: tmp->nativeformats=%d fmt=%d\n", tmp->nativeformats, fmt);
if (sub->rtp) {
- tmp->fds[0] = ast_rtp_fd(sub->rtp);
+ ast_channel_set_fd(tmp, 0, ast_rtp_fd(sub->rtp));
}
if (state == AST_STATE_RING) {
tmp->rings = 1;