[asterisk-commits] seanbright: branch seanbright/the_ipv6ification_of_chan_iax2_by_the_coward_se...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Tue Feb 28 08:28:19 CST 2012
Author: seanbright
Date: Tue Feb 28 08:28:14 2012
New Revision: 357201
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=357201
Log:
Convert iax2_thread over to ast_sockaddr.
Modified:
team/seanbright/the_ipv6ification_of_chan_iax2_by_the_coward_sean_bright/channels/chan_iax2.c
Modified: team/seanbright/the_ipv6ification_of_chan_iax2_by_the_coward_sean_bright/channels/chan_iax2.c
URL: http://svnview.digium.com/svn/asterisk/team/seanbright/the_ipv6ification_of_chan_iax2_by_the_coward_sean_bright/channels/chan_iax2.c?view=diff&rev=357201&r1=357200&r2=357201
==============================================================================
--- team/seanbright/the_ipv6ification_of_chan_iax2_by_the_coward_sean_bright/channels/chan_iax2.c (original)
+++ team/seanbright/the_ipv6ification_of_chan_iax2_by_the_coward_sean_bright/channels/chan_iax2.c Tue Feb 28 08:28:14 2012
@@ -1014,7 +1014,7 @@
int actions;
pthread_t threadid;
int threadnum;
- struct sockaddr_in iosin;
+ struct ast_sockaddr ioaddr;
unsigned char readbuf[4096];
unsigned char *buf;
ssize_t buf_len;
@@ -1031,7 +1031,7 @@
frames for that callno to other threads */
struct {
unsigned short callno;
- struct sockaddr_in sin;
+ struct ast_sockaddr addr;
unsigned char type;
unsigned char csub;
} ffinfo;
@@ -9614,7 +9614,6 @@
static int socket_read(int *id, int fd, short events, void *cbdata)
{
struct iax2_thread *thread;
- socklen_t len;
time_t t;
static time_t last_errtime = 0;
struct ast_iax2_full_hdr *fh;
@@ -9628,9 +9627,8 @@
return 1;
}
- len = sizeof(thread->iosin);
thread->iofd = fd;
- thread->buf_len = recvfrom(fd, thread->readbuf, sizeof(thread->readbuf), 0, (struct sockaddr *) &thread->iosin, &len);
+ thread->buf_len = ast_recvfrom(fd, thread->readbuf, sizeof(thread->readbuf), 0, &thread->ioaddr);
thread->buf_size = sizeof(thread->readbuf);
thread->buf = thread->readbuf;
if (thread->buf_len < 0) {
@@ -9658,7 +9656,7 @@
AST_LIST_LOCK(&active_list);
AST_LIST_TRAVERSE(&active_list, cur, list) {
if ((cur->ffinfo.callno == callno) &&
- !inaddrcmp(&cur->ffinfo.sin, &thread->iosin))
+ !ast_sockaddr_cmp(&cur->ffinfo.addr, &thread->ioaddr))
break;
}
if (cur) {
@@ -9672,7 +9670,7 @@
} else {
/* this thread is going to process this frame, so mark it */
thread->ffinfo.callno = callno;
- memcpy(&thread->ffinfo.sin, &thread->iosin, sizeof(thread->ffinfo.sin));
+ ast_sockaddr_copy(&thread->ffinfo.addr, &thread->ioaddr);
thread->ffinfo.type = fh->type;
thread->ffinfo.csub = fh->csub;
AST_LIST_INSERT_HEAD(&active_list, thread, list);
@@ -9942,9 +9940,9 @@
/* Copy frequently used parameters to the stack */
res = thread->buf_len;
fd = thread->iofd;
- memcpy(&sin, &thread->iosin, sizeof(sin));
-
- ast_sockaddr_from_sin(&addr, &sin);
+
+ ast_sockaddr_to_sin(&thread->ioaddr, &sin);
+ ast_sockaddr_copy(&addr, &thread->ioaddr);
if (res < sizeof(*mh)) {
ast_log(LOG_WARNING, "midget packet received (%d of %d min)\n", res, (int) sizeof(*mh));
More information about the asterisk-commits
mailing list