One of the most annoying things with ffmpeg is that password must be provided as a program param. It is visible while typing and on process list. (I'm talking about ffplay/ffmpeg/ffprobe here.)
This patchset provides API that protocols may use to ask user for password interactively. I added implementation in ffplay, but I see it potentially useful for any user application. The question is: is this really required, application may just ask for password when connection fails. Assuming application knows it is matter of credentials (not wrong hostname, file permissions etc), it may be ineffective. It is almost sure connection has to be established at each try. API also allows to distinguish password for reqular user/pass authentication and password for private key (not included in this patchset, but libssh may benefit from this probably). I added callback as global variable with settter and as part of URLContext. Global variable is not nice, but it allows to avoid massive attack on avio API :) I don't see any reason it cannot be done this way. I also added it to URLContext to allow muxers, demuxers (like HLS, DASH, SmoothStreaming, image2) to add a wrapper and cache these credentials as they open many urls to store sequential data (images/chunks). Patchset available at https://github.com/lukaszmluki/ffmpeg branch: auth Lukasz Marek (3): [RFC]lavf/avio: add custom authentication API ffplay: add basic credentials handler lavf/ftp: support credentials callback ffplay.c | 63 ++++++++++++++++++++++++++++++++++- libavformat/avio.c | 46 ++++++++++++++++++++++++++ libavformat/avio.h | 28 ++++++++++++++++ libavformat/ftp.c | 96 ++++++++++++++++++++++++++++++++++++++++++++++-------- libavformat/url.h | 12 +++++++ 5 files changed, 231 insertions(+), 14 deletions(-) -- 1.9.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel