]> git.sesse.net Git - vlc/commitdiff
Export Content-Type out of HTTP access using Control.
authorRémi Denis-Courmont <rem@videolan.org>
Tue, 2 Oct 2007 15:54:16 +0000 (15:54 +0000)
committerRémi Denis-Courmont <rem@videolan.org>
Tue, 2 Oct 2007 15:54:16 +0000 (15:54 +0000)
19 files changed:
include/vlc_access.h
modules/access/bda/bda.c
modules/access/cdda.c
modules/access/directory.c
modules/access/dv.c
modules/access/dvb/access.c
modules/access/eyetv.c
modules/access/file.c
modules/access/ftp.c
modules/access/gnomevfs.c
modules/access/http.c
modules/access/mms/mmsh.c
modules/access/mms/mmstu.c
modules/access/pvr.c
modules/access/rtsp/access.c
modules/access/smb.c
modules/access/tcp.c
modules/access/udp.c
modules/access/vcd/vcd.c

index 380bdbc350b1b6f7c0e776aa0853521a5360fca0..0b74977a0ad9f542946558f9f20edf5f3595dcd3 100644 (file)
@@ -62,7 +62,9 @@ enum access_query_e
      * XXX: avoid to use it unless you can't */
     ACCESS_SET_PRIVATE_ID_STATE,    /* arg1= int i_private_data, vlc_bool_t b_selected can fail */
     ACCESS_SET_PRIVATE_ID_CA,    /* arg1= int i_program_number, uint16_t i_vpid, uint16_t i_apid1, uint16_t i_apid2, uint16_t i_apid3, uint8_t i_length, uint8_t *p_data */
-    ACCESS_GET_PRIVATE_ID_STATE     /* arg1=int i_private_data arg2=vlc_bool_t *  res=can fail */
+    ACCESS_GET_PRIVATE_ID_STATE,    /* arg1=int i_private_data arg2=vlc_bool_t *  res=can fail */
+
+    ACCESS_GET_CONTENT_TYPE, /* arg1=char **ppsz_content_type */
 };
 
 struct access_t
@@ -132,6 +134,14 @@ static inline int access2_Control( access_t *p_access, int i_query, ... )
     return i_result;
 }
 
+static inline char *access_GetContentType( access_t *p_access )
+{
+    char *res;
+    if( access2_Control( p_access, ACCESS_GET_CONTENT_TYPE, &res ) )
+        return NULL;
+    return res;
+}
+
 static inline void access_InitFields( access_t *p_a )
 {
     p_a->info.i_update = 0;
index f3da942d3a0cbd215ac987b955284474b5078a08..2d280b1cfa5f053d883932c9321e5bedd148772f 100644 (file)
@@ -519,6 +519,7 @@ static int Control( access_t *p_access, int i_query, va_list args )
     case ACCESS_SET_PAUSE_STATE:    /* 8 */
     case ACCESS_SET_TITLE:          /* 9 */
     case ACCESS_SET_SEEKPOINT:      /* 10 */
+    case ACCESS_GET_CONTENT_TYPE:
         return VLC_EGENERIC;
 
     case ACCESS_SET_PRIVATE_ID_STATE: /* 11 */
index b246ad67c781a4dcbec171c16d4aa503f42b3a5b..6c13a23f5b648aeebcd718be981166b30c5973db 100644 (file)
@@ -380,6 +380,7 @@ static int Control( access_t *p_access, int i_query, va_list args )
         case ACCESS_GET_META:
         case ACCESS_SET_SEEKPOINT:
         case ACCESS_SET_PRIVATE_ID_STATE:
+        case ACCESS_GET_CONTENT_TYPE:
             return VLC_EGENERIC;
 
         default:
index 65c83cca0d87ff63b0742f9e069d1492abe86a83..3947bd9580638d457194855b23f262023fd4cfe5 100644 (file)
@@ -301,6 +301,7 @@ static int Control( access_t *p_access, int i_query, va_list args )
         case ACCESS_SET_TITLE:
         case ACCESS_SET_SEEKPOINT:
         case ACCESS_SET_PRIVATE_ID_STATE:
+        case ACCESS_GET_CONTENT_TYPE:
             return VLC_EGENERIC;
 
         default:
index 92bdc251f956171e6a2e61e047c49a599d4d20b3..5fc73542041ebfcc18236a4b29b9efb9730227f5 100644 (file)
@@ -319,6 +319,7 @@ static int Control( access_t *p_access, int i_query, va_list args )
         case ACCESS_SET_TITLE:
         case ACCESS_SET_SEEKPOINT:
         case ACCESS_SET_PRIVATE_ID_STATE:
+        case ACCESS_GET_CONTENT_TYPE:
             return VLC_EGENERIC;
 
         default:
index 47fa4ba42d6496c2678dc9cc6a4056614047053c..47ced7b7d7c2be51067d98220f4b2798c99640f2 100644 (file)
@@ -542,6 +542,7 @@ static int Control( access_t *p_access, int i_query, va_list args )
         case ACCESS_GET_TITLE_INFO:
         case ACCESS_SET_TITLE:
         case ACCESS_SET_SEEKPOINT:
+        case ACCESS_GET_CONTENT_TYPE:
             return VLC_EGENERIC;
 
         case ACCESS_SET_PRIVATE_ID_STATE:
index 2f04b509d40ce3f9b8133b0b4bbe6731b359f6a1..96fdeb73dea6a4bf2365f75d8b3162e91072e4b0 100644 (file)
@@ -305,6 +305,7 @@ static int Control( access_t *p_access, int i_query, va_list args )
         case ACCESS_SET_TITLE:
         case ACCESS_SET_SEEKPOINT:
         case ACCESS_SET_PRIVATE_ID_STATE:
+        case ACCESS_GET_CONTENT_TYPE:
             return VLC_EGENERIC;
  
         default:
index 2ac89bd831644b770ba89c518a9beaa96de43381..52456915fd16bd37a66131a5bfd9ea5288557859 100644 (file)
@@ -382,6 +382,7 @@ static int Control( access_t *p_access, int i_query, va_list args )
         case ACCESS_SET_SEEKPOINT:
         case ACCESS_SET_PRIVATE_ID_STATE:
         case ACCESS_GET_META:
+        case ACCESS_GET_CONTENT_TYPE:
             return VLC_EGENERIC;
 
         default:
index 070cf4099ed2cd0d2f4f48e2e84b75012b0f4808..b44368435bfe636bed7fcc3403dd6d84b549628f 100644 (file)
@@ -557,6 +557,7 @@ static int Control( access_t *p_access, int i_query, va_list args )
         case ACCESS_SET_TITLE:
         case ACCESS_SET_SEEKPOINT:
         case ACCESS_SET_PRIVATE_ID_STATE:
+        case ACCESS_GET_CONTENT_TYPE:
             return VLC_EGENERIC;
 
         default:
index aec397569ebb783e087cde51101dcf5b9555d216..f329421119de0e12af7224dab2e990a80a09b961 100644 (file)
@@ -412,6 +412,7 @@ static int Control( access_t *p_access, int i_query, va_list args )
         case ACCESS_SET_SEEKPOINT:
         case ACCESS_SET_PRIVATE_ID_STATE:
         case ACCESS_GET_META:
+        case ACCESS_GET_CONTENT_TYPE:
             return VLC_EGENERIC;
 
         default:
index a1d1d4a8a4f6b35db0d14c3a587c140efb36af9f..32defac17d74f7581a483e8f8cc5214020e227bd 100644 (file)
@@ -746,6 +746,11 @@ static int Control( access_t *p_access, int i_query, va_list args )
                 vlc_meta_Set( p_meta, vlc_meta_NowPlaying, p_sys->psz_icy_title );
             break;
 
+        case ACCESS_GET_CONTENT_TYPE:
+            *va_arg( args, char ** ) =
+                p_sys->psz_mime ? strdup( p_sys->psz_mime ) : NULL;
+            break;
+
         case ACCESS_GET_TITLE_INFO:
         case ACCESS_SET_TITLE:
         case ACCESS_SET_SEEKPOINT:
index 965c7273971a726aad9e87f90716276ae682f26f..65ec8fe300b0d4a8880a377658ff2aae008b84ff 100644 (file)
@@ -283,6 +283,7 @@ static int Control( access_t *p_access, int i_query, va_list args )
         case ACCESS_SET_TITLE:
         case ACCESS_SET_SEEKPOINT:
         case ACCESS_SET_PRIVATE_ID_STATE:
+        case ACCESS_GET_CONTENT_TYPE:
             return VLC_EGENERIC;
 
         default:
index 71c256047c1ab67902f57b566dc7301908049a87..af227e22a72dbfdb1b26d74e98240d3a990d999b 100644 (file)
@@ -268,6 +268,7 @@ static int Control( access_t *p_access, int i_query, va_list args )
         case ACCESS_SET_TITLE:
         case ACCESS_SET_SEEKPOINT:
         case ACCESS_SET_PRIVATE_ID_STATE:
+        case ACCESS_GET_CONTENT_TYPE:
             return VLC_EGENERIC;
 
 
index 52c197ce6ee77b2bbe6965686af8bc8089d7b3a6..36cee60f57f184b1c9f722042a9dc70497d91e01 100644 (file)
@@ -1149,6 +1149,7 @@ static int Control( access_t *p_access, int i_query, va_list args )
         case ACCESS_SET_TITLE:
         case ACCESS_SET_SEEKPOINT:
         case ACCESS_SET_PRIVATE_ID_STATE:
+        case ACCESS_GET_CONTENT_TYPE:
             return VLC_EGENERIC;
 
         default:
index af182cccc44cc04c425705ccb65087d76085fe12..9a46ab2fc2f66ebe0d15573c411e2b012a58d919 100644 (file)
@@ -350,6 +350,7 @@ static int Control( access_t *p_access, int i_query, va_list args )
         case ACCESS_SET_SEEKPOINT:
         case ACCESS_SET_PRIVATE_ID_STATE:
         case ACCESS_GET_META:
+        case ACCESS_GET_CONTENT_TYPE:
             return VLC_EGENERIC;
 
         default:
index c192f2a9fe00cc36721ca23bad9046367aead113..a86cb3cb9a10a18775d10e015f02e44cfb3284dc 100644 (file)
@@ -418,6 +418,7 @@ static int Control( access_t *p_access, int i_query, va_list args )
     case ACCESS_SET_TITLE:
     case ACCESS_SET_SEEKPOINT:
     case ACCESS_SET_PRIVATE_ID_STATE:
+    case ACCESS_GET_CONTENT_TYPE:
         return VLC_EGENERIC;
 
     default:
index fcb623db08e49e9461d9a44982bb3122c24dc2f9..c455d4f801f891b2e6976b8e16dde5f4db66dd5f 100644 (file)
@@ -196,6 +196,7 @@ static int Control( access_t *p_access, int i_query, va_list args )
         case ACCESS_SET_TITLE:
         case ACCESS_SET_SEEKPOINT:
         case ACCESS_SET_PRIVATE_ID_STATE:
+        case ACCESS_GET_CONTENT_TYPE:
             return VLC_EGENERIC;
 
         default:
index 17e6a673482d26d1a4734c66cd44130910da2a6c..9ca4ac688cea39c067dbc5a6f9ef1dce58b0c2e6 100644 (file)
@@ -308,6 +308,7 @@ static int Control( access_t *p_access, int i_query, va_list args )
         case ACCESS_SET_TITLE:
         case ACCESS_SET_SEEKPOINT:
         case ACCESS_SET_PRIVATE_ID_STATE:
+        case ACCESS_GET_CONTENT_TYPE:
             return VLC_EGENERIC;
 
         default:
index 32aea5ede14936bc757638f81e988c34758ba756..943272f4e7a08f95ec006ac16f09d24d56fb077c 100644 (file)
@@ -314,6 +314,7 @@ static int Control( access_t *p_access, int i_query, va_list args )
         }
 
         case ACCESS_SET_PRIVATE_ID_STATE:
+        case ACCESS_GET_CONTENT_TYPE:
             return VLC_EGENERIC;
 
         default: