* This library 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
- * Library General Public License for more
+ * Library General Public License for more
*/
#ifndef __GST_SOUP_HTTP_SRC_H__
gchar *proxy_id; /* Authentication user id for proxy URI. */
gchar *proxy_pw; /* Authentication user password for proxy URI. */
gchar **cookies; /* HTTP request cookies. */
- GMainContext *context; /* I/O context. */
- GMainLoop *loop; /* Event loop. */
SoupSession *session; /* Async context. */
- GstSoupHTTPSrcSessionIOStatus session_io_status;
- /* Async I/O status. */
+ gboolean session_is_shared;
+ SoupSession *external_session; /* Shared via GstContext */
+ gboolean forced_external_session; /* If session was explicitly set from application */
SoupMessage *msg; /* Request message. */
- GstFlowReturn ret; /* Return code from callback. */
- GstBuffer **outbuf; /* Return buffer allocated by callback. */
- gboolean interrupted; /* Signal unlock(). */
- gboolean retry; /* Should attempt to reconnect. */
gint retry_count; /* Number of retries since we received data */
gint max_retries; /* Maximum number of retries */
+ gchar *method; /* HTTP method */
gboolean got_headers; /* Already received headers from the server */
gboolean have_size; /* Received and parsed Content-Length
gchar *ssl_ca_file;
gboolean ssl_use_system_ca_file;
GTlsDatabase *tls_database;
+ GTlsInteraction *tls_interaction;
+
+ GCancellable *cancellable;
+ GInputStream *input_stream;
+
+ gint reduce_blocksize_count;
+ gint increase_blocksize_count;
+ guint minimum_blocksize;
/* Shoutcast/icecast metadata extraction handling. */
gboolean iradio_mode;
guint timeout;
GMutex mutex;
- GCond request_finished_cond;
+ GCond have_headers_cond;
GstEvent *http_headers_event;
+
+ gint64 last_socket_read_time;
+
+#ifdef TIZEN_FEATURE_SOUP_MODIFICATION
+ gchar *dash_oldest_segment;
+ gchar *dash_newest_segment;
+ guint64 received_total; /* temp: for debugging */
+ guint dlna_opt; /* DLNA server option */
+#endif
};
struct _GstSoupHTTPSrcClass {