X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=modules%2Faccess%2Fsftp.c;h=2e8cc57148a2592e515aa2d434c02413ff493fa4;hb=3821b962f3fe65bafe8d6600fca594f12ce01ebc;hp=5b28dd2bc22c807c3ac1adabdacbde2ad958db37;hpb=79fb0d4d999367ea0832e1755e2088075c02c8a3;p=vlc diff --git a/modules/access/sftp.c b/modules/access/sftp.c index 5b28dd2bc2..2e8cc57148 100644 --- a/modules/access/sftp.c +++ b/modules/access/sftp.c @@ -48,9 +48,6 @@ static int Open ( vlc_object_t* ); static void Close( vlc_object_t* ); -#define CACHING_TEXT N_("Caching value in ms") -#define CACHING_LONGTEXT N_( \ - "Caching value for SFTP streams. This value should be set in milliseconds." ) #define USER_TEXT N_("SFTP user name") #define USER_LONGTEXT N_("User name that will be used for the connection.") #define PASS_TEXT N_("SFTP password") @@ -66,8 +63,6 @@ vlc_module_begin () set_capability( "access", 0 ) set_category( CAT_INPUT ) set_subcategory( SUBCAT_INPUT_ACCESS ) - add_integer( "sftp-caching", 2 * DEFAULT_PTS_DELAY / 1000, - CACHING_TEXT, CACHING_LONGTEXT, true ); add_integer( "sftp-readsize", 8192, MTU_TEXT, MTU_LONGTEXT, true ) add_integer( "sftp-port", 22, PORT_TEXT, PORT_LONGTEXT, true ) add_shortcut( "sftp" ) @@ -153,7 +148,9 @@ static int Open( vlc_object_t* p_this ) p_sys->i_socket = net_Connect( p_access, url.psz_host, i_port, SOCK_STREAM, 0 ); /* Create the ssh connexion and wait until the server answer */ - p_sys->ssh_session = libssh2_session_init(); + if( ( p_sys->ssh_session = libssh2_session_init() ) == NULL ) + goto error; + while( ( i_ret = libssh2_session_startup( p_sys->ssh_session, p_sys->i_socket ) ) == LIBSSH2_ERROR_EAGAIN ); @@ -240,8 +237,6 @@ static int Open( vlc_object_t* p_this ) } p_access->info.i_size = attributes.filesize; - /* Create the two variables */ - var_Create( p_access, "sftp-caching", VLC_VAR_INTEGER | VLC_VAR_DOINHERIT ); p_sys->i_read_size = var_InheritInteger( p_access, "sftp-readsize" ); free( psz_password ); @@ -250,6 +245,8 @@ static int Open( vlc_object_t* p_this ) return VLC_SUCCESS; error: + if( p_sys->ssh_session ) + libssh2_session_free( p_sys->ssh_session ); free( psz_password ); free( psz_username ); vlc_UrlClean( &url ); @@ -342,7 +339,8 @@ static int Control( access_t* p_access, int i_query, va_list args ) case ACCESS_GET_PTS_DELAY: pi_64 = (int64_t*)va_arg( args, int64_t* ); - *pi_64 = var_GetInteger( p_access, "sftp-caching" ) * INT64_C(1000); + *pi_64 = INT64_C(1000) + * var_InheritInteger( p_access, "network-caching" ); break; case ACCESS_SET_PAUSE_STATE: