From e4a9e3cc7cc2a93a8ef666af89cd6885709ff7e0 Mon Sep 17 00:00:00 2001 From: Aurelien Jacobs Date: Sun, 14 Mar 2010 23:59:48 +0000 Subject: [PATCH] move ff_url_split() and ff_url_join() declarations to internal.h those functions are not part of the public API Originally committed as revision 22534 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavformat/avformat.h | 53 ------------------------------------------------- libavformat/gopher.c | 1 + libavformat/http.c | 1 + libavformat/internal.h | 53 +++++++++++++++++++++++++++++++++++++++++++++++++ libavformat/rtmpproto.c | 1 + libavformat/rtpproto.c | 1 + libavformat/rtsp.c | 1 + libavformat/tcp.c | 1 + libavformat/udp.c | 1 + 9 files changed, 60 insertions(+), 53 deletions(-) diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 10371a48c..305924566 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -1340,59 +1340,6 @@ const char *small_strptime(const char *p, const char *fmt, struct tm *dt); /** - * Splits a URL string into components. To reassemble components back into - * a URL, use ff_url_join instead of using snprintf directly. - * - * The pointers to buffers for storing individual components may be null, - * in order to ignore that component. Buffers for components not found are - * set to empty strings. If the port isn't found, it is set to a negative - * value. - * - * @see ff_url_join - * - * @param proto the buffer for the protocol - * @param proto_size the size of the proto buffer - * @param authorization the buffer for the authorization - * @param authorization_size the size of the authorization buffer - * @param hostname the buffer for the host name - * @param hostname_size the size of the hostname buffer - * @param port_ptr a pointer to store the port number in - * @param path the buffer for the path - * @param path_size the size of the path buffer - * @param url the URL to split - */ -void ff_url_split(char *proto, int proto_size, - char *authorization, int authorization_size, - char *hostname, int hostname_size, - int *port_ptr, - char *path, int path_size, - const char *url); - -/** - * Assembles a URL string from components. This is the reverse operation - * of ff_url_split. - * - * Note, this requires networking to be initialized, so the caller must - * ensure ff_network_init has been called. - * - * @see ff_url_split - * - * @param str the buffer to fill with the url - * @param size the size of the str buffer - * @param proto the protocol identifier, if null, the separator - * after the identifier is left out, too - * @param authorization an optional authorization string, may be null - * @param hostname the host name string - * @param port the port number, left out from the string if negative - * @param fmt a generic format string for everything to add after the - * host/port, may be null - * @return the number of characters written to the destination buffer - */ -int ff_url_join(char *str, int size, const char *proto, - const char *authorization, const char *hostname, - int port, const char *fmt, ...); - -/** * Returns a positive value if the given filename has one of the given * extensions, 0 otherwise. * diff --git a/libavformat/gopher.c b/libavformat/gopher.c index abef1b018..f5bb4a371 100644 --- a/libavformat/gopher.c +++ b/libavformat/gopher.c @@ -24,6 +24,7 @@ #include "libavutil/avstring.h" #include "avformat.h" +#include "internal.h" #include "network.h" typedef struct { diff --git a/libavformat/http.c b/libavformat/http.c index feeba5f6e..638102c81 100644 --- a/libavformat/http.c +++ b/libavformat/http.c @@ -24,6 +24,7 @@ #include "avformat.h" #include #include +#include "internal.h" #include "network.h" #include "os_support.h" diff --git a/libavformat/internal.h b/libavformat/internal.h index be3fbb2b2..0881fd221 100644 --- a/libavformat/internal.h +++ b/libavformat/internal.h @@ -59,4 +59,57 @@ int ff_probe_input_buffer(ByteIOContext **pb, AVInputFormat **fmt, const char *filename, void *logctx, unsigned int offset, unsigned int max_probe_size); +/** + * Splits a URL string into components. To reassemble components back into + * a URL, use ff_url_join instead of using snprintf directly. + * + * The pointers to buffers for storing individual components may be null, + * in order to ignore that component. Buffers for components not found are + * set to empty strings. If the port isn't found, it is set to a negative + * value. + * + * @see ff_url_join + * + * @param proto the buffer for the protocol + * @param proto_size the size of the proto buffer + * @param authorization the buffer for the authorization + * @param authorization_size the size of the authorization buffer + * @param hostname the buffer for the host name + * @param hostname_size the size of the hostname buffer + * @param port_ptr a pointer to store the port number in + * @param path the buffer for the path + * @param path_size the size of the path buffer + * @param url the URL to split + */ +void ff_url_split(char *proto, int proto_size, + char *authorization, int authorization_size, + char *hostname, int hostname_size, + int *port_ptr, + char *path, int path_size, + const char *url); + +/** + * Assembles a URL string from components. This is the reverse operation + * of ff_url_split. + * + * Note, this requires networking to be initialized, so the caller must + * ensure ff_network_init has been called. + * + * @see ff_url_split + * + * @param str the buffer to fill with the url + * @param size the size of the str buffer + * @param proto the protocol identifier, if null, the separator + * after the identifier is left out, too + * @param authorization an optional authorization string, may be null + * @param hostname the host name string + * @param port the port number, left out from the string if negative + * @param fmt a generic format string for everything to add after the + * host/port, may be null + * @return the number of characters written to the destination buffer + */ +int ff_url_join(char *str, int size, const char *proto, + const char *authorization, const char *hostname, + int port, const char *fmt, ...); + #endif /* AVFORMAT_INTERNAL_H */ diff --git a/libavformat/rtmpproto.c b/libavformat/rtmpproto.c index e23148827..a8e8de044 100644 --- a/libavformat/rtmpproto.c +++ b/libavformat/rtmpproto.c @@ -29,6 +29,7 @@ #include "libavutil/lfg.h" #include "libavutil/sha.h" #include "avformat.h" +#include "internal.h" #include "network.h" diff --git a/libavformat/rtpproto.c b/libavformat/rtpproto.c index ac8c3dbd6..35bbc1863 100644 --- a/libavformat/rtpproto.c +++ b/libavformat/rtpproto.c @@ -30,6 +30,7 @@ #include #include +#include "internal.h" #include "network.h" #include "os_support.h" #include diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c index 062e18513..c079fb629 100644 --- a/libavformat/rtsp.c +++ b/libavformat/rtsp.c @@ -29,6 +29,7 @@ #include #endif #include +#include "internal.h" #include "network.h" #include "os_support.h" #include "rtsp.h" diff --git a/libavformat/tcp.c b/libavformat/tcp.c index 3a39a9977..ae846a4c3 100644 --- a/libavformat/tcp.c +++ b/libavformat/tcp.c @@ -20,6 +20,7 @@ */ #include "avformat.h" #include +#include "internal.h" #include "network.h" #include "os_support.h" #if HAVE_SYS_SELECT_H diff --git a/libavformat/udp.c b/libavformat/udp.c index 3037a04fa..dc896a43f 100644 --- a/libavformat/udp.c +++ b/libavformat/udp.c @@ -27,6 +27,7 @@ #define _BSD_SOURCE /* Needed for using struct ip_mreq with recent glibc */ #include "avformat.h" #include +#include "internal.h" #include "network.h" #include "os_support.h" #if HAVE_SYS_SELECT_H -- 2.11.0