1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
--- modules/sftp-method.c.orig Mon Mar 8 13:52:39 2004
+++ modules/sftp-method.c Sun Apr 4 13:50:21 2004
@@ -175,6 +175,15 @@
typedef ssize_t (*read_write_fn) (int, void *, size_t);
+#ifndef TEMP_FAILURE_RETRY
+#define TEMP_FAILURE_RETRY(expression) \
+ (__extension__ \
+ ({ long int __result; \
+ do __result = (long int) (expression); \
+ while (__result == -1L && errno == EINTR); \
+ __result; }))
+#endif
+
static gsize
atomic_io (read_write_fn f, gint fd, gpointer buffer_in, gsize size)
{
@@ -1072,6 +1081,7 @@
if (io_status == G_IO_STATUS_NORMAL) {
buffer[len] = 0;
if (g_str_has_suffix (buffer, "password: ") ||
+ g_str_has_suffix (buffer, "Password:") ||
g_str_has_prefix (buffer, "Enter passphrase for key")) {
if (invoke_full_auth (uri, done_auth, buffer, &password) && password != NULL) {
g_io_channel_write_chars (tty_channel, password, -1, &len, NULL);
|