+ /* Find method from DVDCSS_METHOD environment variable */
+ if( psz_method != NULL )
+ {
+ if( !strncmp( psz_method, "key", 4 ) )
+ {
+ dvdcss->i_method = DVDCSS_METHOD_KEY;
+ }
+ else if( !strncmp( psz_method, "disc", 5 ) )
+ {
+ dvdcss->i_method = DVDCSS_METHOD_DISC;
+ }
+ else if( !strncmp( psz_method, "title", 5 ) )
+ {
+ dvdcss->i_method = DVDCSS_METHOD_TITLE;
+ }
+ else
+ {
+ _dvdcss_error( dvdcss, "unknown decrypt method, please choose "
+ "from 'title', 'key' or 'disc'" );
+ free( dvdcss );
+ return NULL;
+ }
+ }
+
+ /* Find verbosity from DVDCSS_VERBOSE environment variable */
+ if( psz_verbose != NULL )
+ {
+ switch( atoi( psz_verbose ) )
+ {
+ case 0:
+ dvdcss->b_errors = 0;
+ break;
+ case 1:
+ break;
+ case 2:
+ dvdcss->b_debug = 1;
+ break;
+ default:
+ _dvdcss_error( dvdcss, "unknown verbose level, please choose "
+ "from '0', '1' or '2'" );
+ free( dvdcss );
+ return NULL;
+ break;
+ }
+ }
+
+ /* Open device */