[FFmpeg-cvslog] r22329 - in trunk: ffserver.c libavformat/avformat.h libavformat/os_support.c
mru
subversion
Mon Mar 8 19:43:27 CET 2010
Author: mru
Date: Mon Mar 8 19:43:27 2010
New Revision: 22329
Log:
Move resolve_host() to ffserver.c
This deprecated function is only used by ffserver, yet does not have
a prototype visible there.
In the long term, ffserver should be made IPv6-aware. In the meantime,
this change removes cruft from lavf and fixes some warnings in ffserver.
Modified:
trunk/ffserver.c
trunk/libavformat/avformat.h
trunk/libavformat/os_support.c
Modified: trunk/ffserver.c
==============================================================================
--- trunk/ffserver.c Mon Mar 8 18:00:21 2010 (r22328)
+++ trunk/ffserver.c Mon Mar 8 19:43:27 2010 (r22329)
@@ -312,6 +312,42 @@ static AVLFG random_state;
static FILE *logfile = NULL;
+/* FIXME: make ffserver work with IPv6 */
+/* resolve host with also IP address parsing */
+static int resolve_host(struct in_addr *sin_addr, const char *hostname)
+{
+
+ if (!ff_inet_aton(hostname, sin_addr)) {
+#if HAVE_GETADDRINFO
+ struct addrinfo *ai, *cur;
+ struct addrinfo hints;
+ memset(&hints, 0, sizeof(hints));
+ hints.ai_family = AF_INET;
+ if (getaddrinfo(hostname, NULL, &hints, &ai))
+ return -1;
+ /* getaddrinfo returns a linked list of addrinfo structs.
+ * Even if we set ai_family = AF_INET above, make sure
+ * that the returned one actually is of the correct type. */
+ for (cur = ai; cur; cur = cur->ai_next) {
+ if (cur->ai_family == AF_INET) {
+ *sin_addr = ((struct sockaddr_in *)cur->ai_addr)->sin_addr;
+ freeaddrinfo(ai);
+ return 0;
+ }
+ }
+ freeaddrinfo(ai);
+ return -1;
+#else
+ struct hostent *hp;
+ hp = gethostbyname(hostname);
+ if (!hp)
+ return -1;
+ memcpy(sin_addr, hp->h_addr_list[0], sizeof(struct in_addr));
+#endif
+ }
+ return 0;
+}
+
static char *ctime1(char *buf2)
{
time_t ti;
Modified: trunk/libavformat/avformat.h
==============================================================================
--- trunk/libavformat/avformat.h Mon Mar 8 18:00:21 2010 (r22328)
+++ trunk/libavformat/avformat.h Mon Mar 8 19:43:27 2010 (r22329)
@@ -1339,10 +1339,6 @@ struct tm *brktimegm(time_t secs, struct
const char *small_strptime(const char *p, const char *fmt,
struct tm *dt);
-struct in_addr;
-/* Deprecated, use getaddrinfo instead. */
-attribute_deprecated int resolve_host(struct in_addr *sin_addr, const char *hostname);
-
/**
* Splits a URL string into components. To reassemble components back into
* a URL, use ff_url_join instead of using snprintf directly.
Modified: trunk/libavformat/os_support.c
==============================================================================
--- trunk/libavformat/os_support.c Mon Mar 8 18:00:21 2010 (r22328)
+++ trunk/libavformat/os_support.c Mon Mar 8 19:43:27 2010 (r22329)
@@ -223,41 +223,6 @@ const char *ff_gai_strerror(int ecode)
}
#endif
-/* resolve host with also IP address parsing */
-int resolve_host(struct in_addr *sin_addr, const char *hostname)
-{
-
- if (!ff_inet_aton(hostname, sin_addr)) {
-#if HAVE_GETADDRINFO
- struct addrinfo *ai, *cur;
- struct addrinfo hints;
- memset(&hints, 0, sizeof(hints));
- hints.ai_family = AF_INET;
- if (getaddrinfo(hostname, NULL, &hints, &ai))
- return -1;
- /* getaddrinfo returns a linked list of addrinfo structs.
- * Even if we set ai_family = AF_INET above, make sure
- * that the returned one actually is of the correct type. */
- for (cur = ai; cur; cur = cur->ai_next) {
- if (cur->ai_family == AF_INET) {
- *sin_addr = ((struct sockaddr_in *)cur->ai_addr)->sin_addr;
- freeaddrinfo(ai);
- return 0;
- }
- }
- freeaddrinfo(ai);
- return -1;
-#else
- struct hostent *hp;
- hp = gethostbyname(hostname);
- if (!hp)
- return -1;
- memcpy(sin_addr, hp->h_addr_list[0], sizeof(struct in_addr));
-#endif
- }
- return 0;
-}
-
int ff_socket_nonblock(int socket, int enable)
{
#if HAVE_WINSOCK2_H
More information about the ffmpeg-cvslog
mailing list