#if CONFIG_NETWORK
#include "network.h"
#endif
+#include "url.h"
#if FF_API_URL_CLASS
/** @name Logging context. */
*puc = NULL;
return ret;
}
+int url_alloc(URLContext **puc, const char *filename, int flags)
+{
+ return ffurl_alloc(puc, filename, flags);
+}
#endif
#define URL_SCHEME_CHARS \
"ABCDEFGHIJKLMNOPQRSTUVWXYZ" \
"0123456789+-."
-int url_alloc(URLContext **puc, const char *filename, int flags)
+int ffurl_alloc(URLContext **puc, const char *filename, int flags)
{
URLProtocol *up;
char proto_str[128], proto_nested[128], *ptr;
int url_open(URLContext **puc, const char *filename, int flags)
{
- int ret = url_alloc(puc, filename, flags);
+ int ret = ffurl_alloc(puc, filename, flags);
if (ret)
return ret;
ret = url_connect(*puc);
*/
attribute_deprecated int url_open_protocol (URLContext **puc, struct URLProtocol *up,
const char *url, int flags);
+attribute_deprecated int url_alloc(URLContext **h, const char *url, int flags);
#endif
/**
- * Create a URLContext for accessing to the resource indicated by
- * url, but do not initiate the connection yet.
- *
- * @param puc pointer to the location where, in case of success, the
- * function puts the pointer to the created URLContext
- * @param flags flags which control how the resource indicated by url
- * is to be opened
- * @return 0 in case of success, a negative value corresponding to an
- * AVERROR code in case of failure
- */
-int url_alloc(URLContext **h, const char *url, int flags);
-
-/**
* Connect an URLContext that has been allocated by url_alloc
*/
int url_connect(URLContext *h);
#include "mms.h"
#include "asf.h"
#include "http.h"
+#include "url.h"
#define CHUNK_HEADER_LENGTH 4 // 2bytes chunk type and 2bytes chunk length.
#define EXT_HEADER_LENGTH 8 // 4bytes sequence, 2bytes useless and 2bytes chunk length.
port = 80; // default mmsh protocol port
ff_url_join(httpname, sizeof(httpname), "http", NULL, host, port, path);
- if (url_alloc(&mms->mms_hd, httpname, URL_RDONLY) < 0) {
+ if (ffurl_alloc(&mms->mms_hd, httpname, URL_RDONLY) < 0) {
return AVERROR(EIO);
}
// close the socket and then reopen it for sending the second play request.
url_close(mms->mms_hd);
memset(headers, 0, sizeof(headers));
- if (url_alloc(&mms->mms_hd, httpname, URL_RDONLY) < 0) {
+ if (ffurl_alloc(&mms->mms_hd, httpname, URL_RDONLY) < 0) {
return AVERROR(EIO);
}
stream_selection = av_mallocz(mms->stream_num * 19 + 1);
#include "rdt.h"
#include "rtpdec_formats.h"
#include "rtpenc_chain.h"
+#include "url.h"
//#define DEBUG
//#define DEBUG_RTP_TCP
av_get_random_seed(), av_get_random_seed());
/* GET requests */
- if (url_alloc(&rt->rtsp_hd, httpname, URL_RDONLY) < 0) {
+ if (ffurl_alloc(&rt->rtsp_hd, httpname, URL_RDONLY) < 0) {
err = AVERROR(EIO);
goto fail;
}
}
/* POST requests */
- if (url_alloc(&rt->rtsp_hd_out, httpname, URL_WRONLY) < 0 ) {
+ if (ffurl_alloc(&rt->rtsp_hd_out, httpname, URL_WRONLY) < 0 ) {
err = AVERROR(EIO);
goto fail;
}
--- /dev/null
+/*
+ *
+ * This file is part of Libav.
+ *
+ * Libav is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * Libav 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
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with Libav; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+/**
+ * @file
+ * unbuffered private I/O API
+ */
+
+#ifndef AVFORMAT_URL_H
+#define AVFORMAT_URL_H
+
+#include "avio.h"
+
+/**
+ * Create a URLContext for accessing to the resource indicated by
+ * url, but do not initiate the connection yet.
+ *
+ * @param puc pointer to the location where, in case of success, the
+ * function puts the pointer to the created URLContext
+ * @param flags flags which control how the resource indicated by url
+ * is to be opened
+ * @return 0 in case of success, a negative value corresponding to an
+ * AVERROR code in case of failure
+ */
+int ffurl_alloc(URLContext **h, const char *url, int flags);
+
+#endif //AVFORMAT_URL_H