return 0;
}
- FILE *f = fopen( argv[1], "rb" );
- if( !f ){
- vg_error( "vg_disk_open_read: %s\n", strerror(errno) );
- }
+ for( int i=0; i<argc-1; i++ ){
+ FILE *f = fopen( argv[i+1], "rb" );
+ if( !f ){
+ vg_error( "vg_disk_open_read: %s\n", strerror(errno) );
+ }
- void *buffer = NULL;
- u64 current = 0;
+ void *buffer = NULL;
+ u64 current = 0;
- /* read in chunks */
- for( u32 i=0; 1; i++ ){
- buffer = realloc( buffer, current + CHUNK_SIZE );
- u64 l = fread( buffer + current, 1, CHUNK_SIZE, f );
- current += l;
+ /* read in chunks */
+ for( u32 i=0; 1; i++ ){
+ buffer = realloc( buffer, current + CHUNK_SIZE );
+ u64 l = fread( buffer + current, 1, CHUNK_SIZE, f );
+ current += l;
- if( l != CHUNK_SIZE ){
- if( feof( f ) ){
- break;
- }
- else{
- if( ferror( f ) ){
- fclose(f);
- vg_fatal_error( "read error" );
+ if( l != CHUNK_SIZE ){
+ if( feof( f ) ){
+ break;
}
else{
- fclose(f);
- vg_fatal_error( "unknown error codition" );
+ if( ferror( f ) ){
+ fclose(f);
+ vg_fatal_error( "read error" );
+ }
+ else{
+ fclose(f);
+ vg_fatal_error( "unknown error codition" );
+ }
}
}
}
- }
- fclose( f );
+ fclose( f );
+
+ printf( "%s (%u bytes):", argv[i+1], (u32)current );
- vg_msg msg;
- vg_msg_init( &msg, buffer, current );
- vg_msg_print( &msg, current );
+ vg_msg msg;
+ vg_msg_init( &msg, buffer, current );
+ vg_msg_print( &msg, current );
- free( buffer );
+ free( buffer );
+ }
}