]> git.sesse.net Git - vlc/blobdiff - modules/access/mms/asf.c
DTV: fix plugin name
[vlc] / modules / access / mms / asf.c
index bde6239ffcdc606afd5703b85d7b04735c15e6b3..52e972984ccc89715a53d9b4d014fb632a97484b 100644 (file)
@@ -25,7 +25,8 @@
 # include "config.h"
 #endif
 
-#include <vlc/vlc.h>
+#include <vlc_common.h>
+#include <vlc_rand.h>
 
 #include "asf.h"
 #include "buffer.h"
@@ -45,34 +46,25 @@ static int CmpGuid( const guid_t *p_guid1, const guid_t *p_guid2 )
               p_guid1->v4[7] == p_guid2->v4[7] ) ? 1 : 0 );
 }
 
-void E_( GenerateGuid )( guid_t *p_guid )
+void  GenerateGuid ( guid_t *p_guid )
 {
-    int i;
-
-    srand( mdate() & 0xffffffff );
-
-    /* FIXME should be generated using random data */
     p_guid->v1 = 0xbabac001;
-    p_guid->v2 = ( (uint64_t)rand() << 16 ) / RAND_MAX;
-    p_guid->v3 = ( (uint64_t)rand() << 16 ) / RAND_MAX;
-    for( i = 0; i < 8; i++ )
-    {
-        p_guid->v4[i] = ( (uint64_t)rand() * 256 ) / RAND_MAX;
-    }
+    vlc_rand_bytes(&p_guid->v2, sizeof(p_guid->v2));
+    vlc_rand_bytes(&p_guid->v3, sizeof(p_guid->v3));
+    vlc_rand_bytes(p_guid->v4, sizeof(p_guid->v4));
 }
 
-void E_( asf_HeaderParse )( asf_header_t *hdr,
+void  asf_HeaderParse ( asf_header_t *hdr,
                             uint8_t *p_header, int i_header )
 {
     var_buffer_t buffer;
     guid_t      guid;
     uint64_t    i_size;
-    int         i;
 
     hdr->i_file_size = 0;
     hdr->i_data_packets_count = 0;
     hdr->i_min_data_packet_size = 0;
-    for( i = 0; i < 128; i++ )
+    for( unsigned i = 0; i < 128; i++ )
     {
         hdr->stream[i].i_cat = ASF_STREAM_UNKNOWN;
         hdr->stream[i].i_selected = 0;
@@ -114,7 +106,6 @@ void E_( asf_HeaderParse )( asf_header_t *hdr,
             /* Grrrrrr */
             int16_t i_count1, i_count2;
             int i_subsize;
-            int i;
 
             var_buffer_getmemory( &buffer, NULL, 84 - 24 );
 
@@ -122,7 +113,7 @@ void E_( asf_HeaderParse )( asf_header_t *hdr,
             i_count2 = var_buffer_get16( &buffer );
 
             i_subsize = 88;
-            for( i = 0; i < i_count1; i++ )
+            for( int i = 0; i < i_count1; i++ )
             {
                 int i_len;
 
@@ -130,10 +121,10 @@ void E_( asf_HeaderParse )( asf_header_t *hdr,
                 i_len = var_buffer_get16( &buffer );
                 var_buffer_getmemory( &buffer, NULL, i_len );
 
-                i_subsize = 4 + i_len;
+                i_subsize += 4 + i_len;
             }
 
-            for( i = 0; i < i_count2; i++ )
+            for( int i = 0; i < i_count2; i++ )
             {
                 int i_len;
                 var_buffer_getmemory( &buffer, NULL, 16 + 2 );
@@ -201,12 +192,12 @@ void E_( asf_HeaderParse )( asf_header_t *hdr,
     }
 }
 
-void E_( asf_StreamSelect ) ( asf_header_t *hdr,
+void  asf_StreamSelect  ( asf_header_t *hdr,
                               int i_bitrate_max,
                               bool b_all, bool b_audio, bool b_video )
 {
     /* XXX FIXME use mututal eclusion information */
-    int i;
+    unsigned i;
     int i_audio, i_video;
     int i_bitrate_total;
 #if 0