2
* Copyright (C) <2005> Wim Taymans <wim@fluendo.com>
2
* Copyright (C) <2005,2006> Wim Taymans <wim@fluendo.com>
4
4
* This library is free software; you can redistribute it and/or
5
5
* modify it under the terms of the GNU Library General Public
16
16
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17
17
* Boston, MA 02111-1307, USA.
20
* Unless otherwise indicated, Source Code is licensed under MIT license.
21
* See further explanation attached in License Statement (distributed in the file
24
* Permission is hereby granted, free of charge, to any person obtaining a copy of
25
* this software and associated documentation files (the "Software"), to deal in
26
* the Software without restriction, including without limitation the rights to
27
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
28
* of the Software, and to permit persons to whom the Software is furnished to do
29
* so, subject to the following conditions:
31
* The above copyright notice and this permission notice shall be included in all
32
* copies or substantial portions of the Software.
34
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
35
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
36
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
37
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
38
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
39
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
43
#ifndef __RTSP_CONNECTION_H__
21
44
#define __RTSP_CONNECTION_H__
31
54
typedef struct _RTSPConnection
33
gint fd; /* our socket */
56
/* URL for the connection */
59
/* connection state */
35
65
gint cseq; /* sequence number */
36
66
gchar session_id[512]; /* session id */
38
RTSPState state; /* state of the connection */
41
69
/* opening/closing a connection */
42
RTSPResult rtsp_connection_open (RTSPUrl *url, RTSPConnection **conn);
43
RTSPResult rtsp_connection_create (gint fd, RTSPConnection **conn);
70
RTSPResult rtsp_connection_create (RTSPUrl *url, RTSPConnection **conn);
71
RTSPResult rtsp_connection_connect (RTSPConnection *conn);
44
72
RTSPResult rtsp_connection_close (RTSPConnection *conn);
45
73
RTSPResult rtsp_connection_free (RTSPConnection *conn);
48
76
RTSPResult rtsp_connection_send (RTSPConnection *conn, RTSPMessage *message);
49
77
RTSPResult rtsp_connection_receive (RTSPConnection *conn, RTSPMessage *message);
79
RTSPResult rtsp_connection_flush (RTSPConnection *conn, gboolean flush);
53
83
#endif /* __RTSP_CONNECTION_H__ */