* src/stream_output/announce.c:
[vlc.git] / include / announce.h
1 /*****************************************************************************
2  * announce.h : Session announcement
3  *****************************************************************************
4  * Copyright (C) 2002 VideoLAN
5  * $Id: announce.h,v 1.7 2003/07/17 14:10:08 sam Exp $
6  *
7  * Authors: ClĂ©ment Stenac <zorglub@via.ecp.fr>
8  *
9  * This program is free software; you can redistribute it and/or modify
10  * it under the terms of the GNU General Public License as published by
11  * the Free Software Foundation; either version 2 of the License, or
12  * (at your option) any later version.
13  *
14  * This program is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17  * GNU General Public License for more details.
18  *
19  * You should have received a copy of the GNU General Public License
20  * along with this program; if not, write to the Free Software
21  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
22  *****************************************************************************/
23
24 /*****************************************************************************
25  * sap_session_t: SAP Session descriptor
26  *****************************************************************************/
27
28 #if defined( UNDER_CE )
29 #   include <winsock.h>
30 #elif defined( WIN32 )
31 #   include <winsock2.h>
32 #   include <ws2tcpip.h>
33 #   define close closesocket
34 #else
35 #   include <netdb.h>                                         /* hostent ... */
36 #   include <sys/socket.h>
37 #   include <netinet/in.h>
38 #   ifdef HAVE_ARPA_INET_H
39 #       include <arpa/inet.h>                    /* inet_ntoa(), inet_aton() */
40 #   endif
41 #endif
42
43 #ifdef HAVE_SYS_TYPES_H
44 #   include <sys/types.h>
45 #endif
46
47
48 struct sap_session_t
49 {
50         char psz_url[256];
51         char psz_name[1024];
52         char psz_port[8];
53         module_t p_network;
54         unsigned int i_socket;
55         unsigned int i_calls;
56         int i_ip_version;
57 };
58
59
60
61 /*****************************************************************************
62  * Prototypes
63  *****************************************************************************/
64 VLC_EXPORT( sap_session_t *,            sout_SAPNew,         ( sout_instance_t *,char * , char * , int , char *) );
65 VLC_EXPORT( void,            sout_SAPSend,        ( sout_instance_t *,sap_session_t *) );
66 VLC_EXPORT( void,            sout_SAPDelete,      ( sout_instance_t *,sap_session_t * ) );