Commit 12fc0c89 authored by Michael Niedermayer's avatar Michael Niedermayer

Merge remote-tracking branch 'lukaszmluki/master'

* lukaszmluki/master:
  lavf/libssh: improve authentication
  lavf/libssh: fix file mode
Merged-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parents 828ac6d1 8ba77dfb
...@@ -91,10 +91,13 @@ static int libssh_open(URLContext *h, const char *url, int flags) ...@@ -91,10 +91,13 @@ static int libssh_open(URLContext *h, const char *url, int flags)
goto fail; goto fail;
} }
if (pass && ssh_userauth_password(s->session, NULL, pass) != SSH_AUTH_SUCCESS) { if (ssh_userauth_autopubkey(s->session, pass) != SSH_AUTH_SUCCESS) {
av_log(h, AV_LOG_ERROR, "Error authenticating with password: %s\n", ssh_get_error(s->session)); av_log(s, AV_LOG_DEBUG, "Authentication using public key failed, trying password method.\n");
ret = AVERROR(EACCES); if (ssh_userauth_password(s->session, NULL, pass) != SSH_AUTH_SUCCESS) {
goto fail; av_log(h, AV_LOG_ERROR, "Authentication failed.\n");
ret = AVERROR(EACCES);
goto fail;
}
} }
if (!(s->sftp = sftp_new(s->session))) { if (!(s->sftp = sftp_new(s->session))) {
...@@ -121,7 +124,8 @@ static int libssh_open(URLContext *h, const char *url, int flags) ...@@ -121,7 +124,8 @@ static int libssh_open(URLContext *h, const char *url, int flags)
access = O_RDONLY; access = O_RDONLY;
} }
if (!(s->file = sftp_open(s->sftp, path, access, S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH))) { /* 0666 = -rw-rw-rw- = read+write for everyone, minus umask */
if (!(s->file = sftp_open(s->sftp, path, access, 0666))) {
av_log(h, AV_LOG_ERROR, "Error opening sftp file: %s\n", ssh_get_error(s->session)); av_log(h, AV_LOG_ERROR, "Error opening sftp file: %s\n", ssh_get_error(s->session));
ret = AVERROR(EIO); ret = AVERROR(EIO);
goto fail; goto fail;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment