comparison libmpdvdkit2/libdvdcss.c @ 8637:0211de3039eb

update libdvdcss in libmpdvdkit to latest version (1.2.4) patch by Andreas Hess <jaska@gmx.net>
author arpi
date Sun, 29 Dec 2002 15:32:56 +0000
parents 9fc45fe0d444
children a2fa276b8ec7
comparison
equal deleted inserted replaced
8636:db4a1b1254cb 8637:0211de3039eb
271 char* disc_id=NULL; 271 char* disc_id=NULL;
272 /*char title_name[64];*/ 272 /*char title_name[64];*/
273 char sector[DVDCSS_BLOCK_SIZE]; 273 char sector[DVDCSS_BLOCK_SIZE];
274 // 32768+40 -> disc title (32 uppercase chars) 274 // 32768+40 -> disc title (32 uppercase chars)
275 // 32768+813 -> disc manufacturing date + serial no (16 digit number) 275 // 32768+813 -> disc manufacturing date + serial no (16 digit number)
276 _dvdcss_seek( dvdcss, 32768/DVDCSS_BLOCK_SIZE); 276 dvdcss->pf_seek( dvdcss, 32768/DVDCSS_BLOCK_SIZE);
277 if(_dvdcss_read( dvdcss, sector, 1) == 1){ 277 if(dvdcss->pf_read( dvdcss, sector, 1) == 1){
278 // check disc title first: 278 // check disc title first:
279 char* title_name=&sector[40]; 279 char* title_name=&sector[40];
280 int i=31; 280 int i=31;
281 while(i>=0 && title_name[i]<=32) i--; 281 while(i>=0 && title_name[i]<=32) i--;
282 title_name[i+1]=0; 282 title_name[i+1]=0;
361 { 361 {
362 return -1; 362 return -1;
363 } 363 }
364 } 364 }
365 365
366 return _dvdcss_seek( dvdcss, i_blocks ); 366 return dvdcss->pf_seek( dvdcss, i_blocks );
367 } 367 }
368 368
369 /** 369 /**
370 * \brief Read from the disc and decrypt data if requested. 370 * \brief Read from the disc and decrypt data if requested.
371 * 371 *
393 int i_blocks, 393 int i_blocks,
394 int i_flags ) 394 int i_flags )
395 { 395 {
396 int i_ret, i_index; 396 int i_ret, i_index;
397 397
398 i_ret = _dvdcss_read( dvdcss, p_buffer, i_blocks ); 398 i_ret = dvdcss->pf_read( dvdcss, p_buffer, i_blocks );
399 399
400 if( i_ret <= 0 400 if( i_ret <= 0
401 || !dvdcss->b_scrambled 401 || !dvdcss->b_scrambled
402 || !(i_flags & DVDCSS_READ_DECRYPT) ) 402 || !(i_flags & DVDCSS_READ_DECRYPT) )
403 { 403 {
469 struct iovec *_p_iovec = (struct iovec *)p_iovec; 469 struct iovec *_p_iovec = (struct iovec *)p_iovec;
470 int i_ret, i_index; 470 int i_ret, i_index;
471 void *iov_base; 471 void *iov_base;
472 size_t iov_len; 472 size_t iov_len;
473 473
474 i_ret = _dvdcss_readv( dvdcss, _p_iovec, i_blocks ); 474 i_ret = dvdcss->pf_readv( dvdcss, _p_iovec, i_blocks );
475 475
476 if( i_ret <= 0 476 if( i_ret <= 0
477 || !dvdcss->b_scrambled 477 || !dvdcss->b_scrambled
478 || !(i_flags & DVDCSS_READ_DECRYPT) ) 478 || !(i_flags & DVDCSS_READ_DECRYPT) )
479 { 479 {