* dvd_css.c: Functions for DVD authentification and unscrambling
*****************************************************************************
* Copyright (C) 1999-2001 VideoLAN
- * $Id: dvd_css.c,v 1.21 2001/04/06 09:15:47 sam Exp $
+ * $Id: dvd_css.c,v 1.22 2001/04/08 16:57:47 sam Exp $
*
* Author: Stéphane Borel <stef@via.ecp.fr>
*
if( i_ret < 0 )
{
+ /* Since it's the first ioctl we try to issue, we add a notice */
+ intf_ErrMsg( "css error: ioctl_ReadCopyright failed, "
+ "make sure DVD ioctls were compiled in" );
+
return i_ret;
}
break;
}
- intf_ErrMsg( "css error: AGID N/A, invalidating" );
+ intf_ErrMsg( "css error: ioctl_LUSendAgid failed, invalidating" );
p_css->i_agid = 0;
ioctl_InvalidateAgid( p_css );
/* Unable to authenticate without AGID */
if( i_ret == -1 )
{
- intf_ErrMsg( "css error: could not get AGID" );
+ intf_ErrMsg( "css error: ioctl_LUSendAgid failed, fatal" );
return -1;
}
/* Send challenge to LU */
if( ioctl_HostSendChallenge( p_css, p_buffer ) < 0 )
{
- intf_ErrMsg( "css error: failed sending challenge to LU" );
+ intf_ErrMsg( "css error: ioctl_HostSendChallenge failed" );
return -1;
}
/* Get key1 from LU */
if( ioctl_LUSendKey1( p_css, p_buffer ) < 0)
{
- intf_ErrMsg( "css error: failed getting key1 from LU" );
+ intf_ErrMsg( "css error: ioctl_LUSendKey1 failed" );
return -1;
}
/* Get challenge from LU */
if( ioctl_LUSendChallenge( p_css, p_buffer ) < 0 )
{
- intf_ErrMsg( "css error: failed getting challenge from LU" );
+ intf_ErrMsg( "css error: ioctl_LUSendKeyChallenge failed" );
return -1;
}
/* Send key2 to LU */
if( ioctl_HostSendKey2( p_css, p_buffer ) < 0 )
{
- intf_ErrMsg( "css error: failed sending key2 to LU" );
+ intf_ErrMsg( "css error: ioctl_HostSendKey2 failed" );
return -1;
}
/* Get encrypted disc key */
if( ioctl_ReadKey( p_css, p_buffer ) < 0 )
{
- intf_ErrMsg( "css error: could not read Disc Key" );
+ intf_ErrMsg( "css error: ioctl_ReadKey failed" );
return -1;
}
}
-/*****************************************************************************
- * CSSEnd : frees css structure
- *****************************************************************************/
-void CSSEnd( css_t * p_css )
-{
-#ifdef HAVE_CSS
- free( p_css );
-#else /* HAVE_CSS */
- ;
-#endif /* HAVE_CSS */
-}
-
/*****************************************************************************
* CSSGetKey : get title key.
*****************************************************************************
* input_dvd.h: thread structure of the DVD plugin
*****************************************************************************
* Copyright (C) 1999-2001 VideoLAN
- * $Id: input_dvd.h,v 1.15 2001/04/02 23:30:41 sam Exp $
+ * $Id: input_dvd.h,v 1.16 2001/04/08 16:57:47 sam Exp $
*
* Author: Stéphane Borel <stef@via.ecp.fr>
*
*****************************************************************************/
int CSSTest ( int );
int CSSInit ( struct css_s * );
-void CSSEnd ( struct css_s * );
int CSSGetKey ( struct css_s * );
int CSSDescrambleSector ( u8 * , u8 * );
* vout_xvideo.c: Xvideo video output display method
*****************************************************************************
* Copyright (C) 1998, 1999, 2000, 2001 VideoLAN
- * $Id: vout_xvideo.c,v 1.3 2001/04/04 16:33:07 sam Exp $
+ * $Id: vout_xvideo.c,v 1.4 2001/04/08 16:57:47 sam Exp $
*
* Authors: Shane Harper <shanegh@optusnet.com.au>
* Vincent Seguin <seguin@via.ecp.fr>
/* Prepare window attributes */
xwindow_attributes.backing_store = Always; /* save the hidden part */
- xwindow_attributes.background_pixel = WhitePixel( p_vout->p_sys->p_display,
+ xwindow_attributes.background_pixel = BlackPixel( p_vout->p_sys->p_display,
p_vout->p_sys->i_screen );
xwindow_attributes.event_mask = ExposureMask | StructureNotifyMask;