? configure.lineno Index: main.c =================================================================== RCS file: /cvsroot/ser/rtpproxy/main.c,v retrieving revision 1.83 diff -u -r1.83 main.c --- main.c 17 Sep 2008 01:11:20 -0000 1.83 +++ main.c 23 Sep 2008 10:19:30 -0000 @@ -418,7 +418,7 @@ if (cf->umode == 0) { unlink(cmd_sock); memset(&ifsun, '\0', sizeof ifsun); -#if !defined(__linux__) && !defined(__solaris__) +#if !defined(__linux__) && defined(__sun) && defined(__svr4__) ifsun.sun_len = strlen(cmd_sock); #endif ifsun.sun_family = AF_LOCAL; @@ -640,10 +640,12 @@ sp->pcount[3]++; } else { sp->pcount[2]++; + for (i = (cf->dmode && packet->size < LBR_THRS) ? 2 : 1; i > 0; i--) { - sendto(sp->fds[sidx], packet->buf, packet->size, 0, sp->addr[sidx], + sendto(sp->fds[sidx], packet->pkt_data.buf, packet->size, 0, sp->addr[sidx], SA_LEN(sp->addr[sidx])); } + } if (sp->rrcs[ridx] != NULL && GET_RTP(sp)->rtps[ridx] == NULL) @@ -763,7 +765,7 @@ controlfd = init_controlfd(&cf); -#if !defined(__solaris__) +#if !defined(__sun) && !defined(__svr4__) if (cf.nodaemon == 0) { if (daemon(0, 0) == -1) err(1, "can't switch into daemon mode"); Index: rtp.c =================================================================== RCS file: /cvsroot/ser/rtpproxy/rtp.c,v retrieving revision 1.7 diff -u -r1.7 rtp.c --- rtp.c 17 Apr 2008 22:38:00 -0000 1.7 +++ rtp.c 23 Sep 2008 10:19:30 -0000 @@ -154,7 +154,7 @@ return; } - buf = &pkt->buf[pkt->data_offset]; + buf = &pkt->pkt_data.buf[pkt->data_offset]; while (pos < pkt->data_size && samples > found_samples) { found_samples += 240; n = g723_len(buf[pos]); @@ -178,7 +178,7 @@ assert(pkt->nsamples > min_nsamples); ret->whole_packet_matched = 0; - switch (pkt->header.pt) { + switch (pkt->pkt_data.header.pt) { case RTP_PCMU: case RTP_PCMA: rtp_packet_chunk_find_g711(pkt, ret, min_nsamples); @@ -213,25 +213,25 @@ pkt->data_offset = 0; pkt->nsamples = RTP_NSAMPLES_UNKNOWN; - if (pkt->header.version != 2) + if (pkt->pkt_data.header.version != 2) return; - pkt->data_offset = RTP_HDR_LEN(&pkt->header); + pkt->data_offset = RTP_HDR_LEN(&pkt->pkt_data.header); - if (pkt->header.p) + if (pkt->pkt_data.header.p) padding_size = ((unsigned char *) pkt)[pkt->size - 1]; pkt->data_size = pkt->size - pkt->data_offset - padding_size; - pkt->nsamples = rtp_calc_samples(pkt->header.pt, pkt->data_size, &pkt->buf[pkt->data_offset]); - pkt->ts = ntohl(pkt->header.ts); - pkt->seq = ntohs(pkt->header.seq); + pkt->nsamples = rtp_calc_samples(pkt->pkt_data.header.pt, pkt->data_size, &pkt->pkt_data.buf[pkt->data_offset]); + pkt->ts = ntohl(pkt->pkt_data.header.ts); + pkt->seq = ntohs(pkt->pkt_data.header.seq); pkt->appendable = 1; /* * G.729 comfort noise frame as the last frame causes * packet to be non-appendable */ - if (pkt->header.pt == RTP_G729 && (pkt->data_size % 10) != 0) + if (pkt->pkt_data.header.pt == RTP_G729 && (pkt->data_size % 10) != 0) pkt->appendable = 0; } @@ -268,7 +268,7 @@ return NULL; pkt->rlen = sizeof(pkt->raddr); - pkt->size = recvfrom(fd, pkt->buf, sizeof(pkt->buf), 0, + pkt->size = recvfrom(fd, pkt->pkt_data.buf, sizeof(pkt->pkt_data.buf), 0, sstosa(&pkt->raddr), &pkt->rlen); if (pkt->size == -1) { @@ -284,7 +284,7 @@ { p->seq = seq; - p->header.seq = htons(seq); + p->pkt_data.header.seq = htons(seq); } void @@ -292,5 +292,5 @@ { p->ts = ts; - p->header.ts = htonl(ts); + p->pkt_data.header.ts = htonl(ts); } Index: rtp.h =================================================================== RCS file: /cvsroot/ser/rtpproxy/rtp.h,v retrieving revision 1.9 diff -u -r1.9 rtp.h --- rtp.h 16 Jul 2008 20:42:21 -0000 1.9 +++ rtp.h 23 Sep 2008 10:19:31 -0000 @@ -102,7 +102,7 @@ union { rtp_hdr_t header; unsigned char buf[8192]; - }; + } pkt_data; }; struct rtp_packet_chunk { Index: rtp_resizer.c =================================================================== RCS file: /cvsroot/ser/rtpproxy/rtp_resizer.c,v retrieving revision 1.4 diff -u -r1.4 rtp_resizer.c --- rtp_resizer.c 15 Jul 2008 23:14:52 -0000 1.4 +++ rtp_resizer.c 23 Sep 2008 10:19:31 -0000 @@ -151,8 +151,8 @@ append_packet(struct rtp_packet *dst, struct rtp_packet *src) { - memcpy(&dst->buf[dst->data_offset + dst->data_size], - &src->buf[src->data_offset], src->data_size); + memcpy(&dst->pkt_data.buf[dst->data_offset + dst->data_size], + &src->pkt_data.buf[src->data_offset], src->data_size); dst->nsamples += src->nsamples; dst->data_size += src->data_size; dst->size += src->data_size; @@ -164,8 +164,8 @@ { /* Copy chunk */ - memcpy(&dst->buf[dst->data_offset + dst->data_size], - &src->buf[src->data_offset], chunk->bytes); + memcpy(&dst->pkt_data.buf[dst->data_offset + dst->data_size], + &src->pkt_data.buf[src->data_offset], chunk->bytes); dst->nsamples += chunk->nsamples; dst->data_size += chunk->bytes; dst->size += chunk->bytes; @@ -175,14 +175,14 @@ rtp_packet_set_ts(src, src->ts + chunk->nsamples); src->data_size -= chunk->bytes; src->size -= chunk->bytes; - memmove(&src->buf[src->data_offset], &src->buf[src->data_offset + chunk->bytes], src->data_size); + memmove(&src->pkt_data.buf[src->data_offset], &src->pkt_data.buf[src->data_offset + chunk->bytes], src->data_size); } static void move_chunk(struct rtp_packet *dst, struct rtp_packet *src, const struct rtp_packet_chunk *chunk) { /* Copy chunk */ - memcpy(&dst->buf[dst->data_offset], &src->buf[src->data_offset], chunk->bytes); + memcpy(&dst->pkt_data.buf[dst->data_offset], &src->pkt_data.buf[src->data_offset], chunk->bytes); dst->nsamples = chunk->nsamples; dst->data_size = chunk->bytes; dst->size = dst->data_size + dst->data_offset; @@ -192,7 +192,7 @@ rtp_packet_set_ts(src, src->ts + chunk->nsamples); src->data_size -= chunk->bytes; src->size -= chunk->bytes; - memmove(&src->buf[src->data_offset], &src->buf[src->data_offset + chunk->bytes], src->data_size); + memmove(&src->pkt_data.buf[src->data_offset], &src->pkt_data.buf[src->data_offset + chunk->bytes], src->data_size); } struct rtp_packet * @@ -221,7 +221,7 @@ } output_nsamples = this->output_nsamples; - max = max_nsamples(this->queue.first->header.pt); + max = max_nsamples(this->queue.first->pkt_data.header.pt); if (max > 0 && output_nsamples > max) output_nsamples = max; @@ -241,7 +241,7 @@ ret = rtp_packet_alloc(); if (ret == NULL) break; - memcpy(ret, p, offsetof(struct rtp_packet, buf)); + memcpy(ret, p, offsetof(struct rtp_packet, pkt_data.buf)); move_chunk(ret, p, &chunk); ++split; } @@ -257,7 +257,7 @@ { /* detect holes and payload changes in RTP stream */ if ((ret->ts + ret->nsamples) != p->ts || - ret->header.pt != p->header.pt) + ret->pkt_data.header.pt != p->pkt_data.header.pt) { break; } @@ -269,7 +269,7 @@ rtp_packet_first_chunk_find(p, &chunk, nsamples_left); if (chunk.whole_packet_matched) { /* Prevent RTP packet buffer overflow */ - if ((ret->size + p->data_size) > sizeof(ret->buf)) + if ((ret->size + p->data_size) > sizeof(ret->pkt_data.buf)) break; append_packet(ret, p); detach_queue_head(this); @@ -277,7 +277,7 @@ } else { /* Prevent RTP packet buffer overflow */ - if ((ret->size + chunk.bytes) > sizeof(ret->buf)) + if ((ret->size + chunk.bytes) > sizeof(ret->pkt_data.buf)) break; /* Append chunk to output */ append_chunk(ret, p, &chunk); @@ -292,7 +292,7 @@ /* * Prevent RTP packet buffer overflow */ - if (ret != NULL && (ret->size + p->data_size) > sizeof(ret->buf)) + if (ret != NULL && (ret->size + p->data_size) > sizeof(ret->pkt_data.buf)) break; /* Detach head packet from the queue */ Index: rtpp_command.c =================================================================== RCS file: /cvsroot/ser/rtpproxy/rtpp_command.c,v retrieving revision 1.18 diff -u -r1.18 rtpp_command.c --- rtpp_command.c 17 Sep 2008 01:11:20 -0000 1.18 +++ rtpp_command.c 23 Sep 2008 10:19:31 -0000 @@ -289,7 +289,7 @@ cp = buf; argc = 0; memset(argv, 0, sizeof(argv)); - for (ap = argv; (*ap = strsep(&cp, "\r\n\t ")) != NULL;) + for (ap = argv; (*ap = strtok(&cp, "\r\n\t ")) != NULL;) if (**ap != '\0') { argc++; if (++ap >= &argv[10]) Index: rtpp_record.c =================================================================== RCS file: /cvsroot/ser/rtpproxy/rtpp_record.c,v retrieving revision 1.11 diff -u -r1.11 rtpp_record.c --- rtpp_record.c 18 Jul 2008 00:17:25 -0000 1.11 +++ rtpp_record.c 23 Sep 2008 10:19:31 -0000 @@ -309,7 +309,7 @@ switch (RRC_CAST(rrc)->mode) { case MODE_REMOTE_RTP: - send(RRC_CAST(rrc)->fd, packet->buf, packet->size, 0); + send(RRC_CAST(rrc)->fd, packet->pkt_data.buf, packet->size, 0); return; case MODE_LOCAL_PKT: @@ -335,7 +335,7 @@ v[0].iov_base = (void *)&hdr; v[0].iov_len = hdr_size; - v[1].iov_base = packet->buf; + v[1].iov_base = packet->pkt_data.buf; v[1].iov_len = packet->size; rval = writev(RRC_CAST(rrc)->fd, v, 2); @@ -352,7 +352,7 @@ if (prepare_pkt_hdr(sp, packet, (void *)(RRC_CAST(rrc)->rbuf + RRC_CAST(rrc)->rbuf_len)) != 0) return; RRC_CAST(rrc)->rbuf_len += hdr_size; - memcpy(RRC_CAST(rrc)->rbuf + RRC_CAST(rrc)->rbuf_len, packet->buf, packet->size); + memcpy(RRC_CAST(rrc)->rbuf + RRC_CAST(rrc)->rbuf_len, packet->pkt_data.buf, packet->size); RRC_CAST(rrc)->rbuf_len += packet->size; } Index: rtpp_session.c =================================================================== RCS file: /cvsroot/ser/rtpproxy/rtpp_session.c,v retrieving revision 1.9 diff -u -r1.9 rtpp_session.c --- rtpp_session.c 16 Sep 2008 23:16:13 -0000 1.9 +++ rtpp_session.c 23 Sep 2008 10:19:31 -0000 @@ -275,7 +275,7 @@ memset(&remote, '\0', sizeof(remote)); remote.sun_family = AF_LOCAL; strncpy(remote.sun_path, th->socket_name, sizeof(remote.sun_path) - 1); -#if !defined(__linux__) && !defined(__solaris__) +#if !defined(__linux__) && !defined(__sun) && !defined(__svr4__) remote.sun_len = strlen(remote.sun_path); #endif if (connect(th->fd, (struct sockaddr *)&remote, sizeof(remote)) == -1) {