X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=ortp_send.c;h=0c6cccb902a7be84f0f4ce1d40c699c7ff544cda;hp=65c68418bc7cba6f9d6f327d6b95195dfb2f8c74;hb=9492ba2d1b8f21af37436b121569e51a9b1df0c0;hpb=ae0e4594c6a0312c5b4b4c0bde86f9c12253d11b diff --git a/ortp_send.c b/ortp_send.c index 65c68418..0c6cccb9 100644 --- a/ortp_send.c +++ b/ortp_send.c @@ -1,19 +1,7 @@ /* * Copyright (C) 2005-2007 Andre Noll * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. + * Licensed under the GPL v2. For licencing details see COPYING. */ /** \file ortp_send.c para_server's ortp sender */ @@ -22,34 +10,37 @@ #include #include "server.cmdline.h" +#include "para.h" +#include "error.h" +#include "string.h" +#include "afh.h" +#include "afs.h" #include "server.h" #include "vss.h" #include "send.h" #include "list.h" #include "ortp.h" -#include "string.h" -/** \cond convert in_addr to ascii */ +/** Convert in_addr to ascii. */ #define TARGET_ADDR(oc) inet_ntoa((oc)->addr) -/** \endcond */ -/** describes one entry in the list of targets for the ortp sender */ +/** Describes one entry in the list of targets for the ortp sender. */ struct ortp_target { -/** address info */ + /** Address info. */ struct in_addr addr; -/** whether the ortp sender is activated */ + /** Whether the ortp sender is activated. */ int status; -/** the ortp timestamp increases by this amount */ + /** The ortp timestamp increases by this amount. */ uint32_t chunk_ts; -/** the currently used timestamp for this target */ + /** The currently used timestamp for this target. */ uint32_t last_ts; -/** the position of this target in the list of targets */ + /** The position of this target in the list of targets. */ struct list_head node; -/** the UDP port */ + /** The UDP port. */ int port; -/** non-zero if at least one chunk has been sent to this target */ + /** Non-zero if at least one chunk has been sent to this target. */ int streaming; -/** the session pointer from libortp */ + /** The session pointer from libortp. */ RtpSession *session; }; @@ -171,13 +162,15 @@ static void ortp_send(long unsigned current_chunk, long unsigned chunks_sent, { struct ortp_target *ot, *tmp; size_t sendbuf_len; - size_t header_len = 0; + unsigned header_len = 0; int packet_type = ORTP_DATA; char *sendbuf, *header_buf = NULL; struct timeval *chunk_tv; if (self->status != SENDER_ON) return; + +// PARA_NOTICE_LOG("sending %lu\n", current_chunk); chunk_tv = vss_chunk_time(); if (!chunk_tv) return; @@ -299,7 +292,7 @@ static void ortp_init_target_list(void) if (!p) goto err; *p = '\0'; - if (!inet_aton(arg, &addr)) + if (!inet_pton(AF_INET, arg, &addr)) goto err; port = atoi(++p); if (port < 0 || port > 65535)