Matt McCutchen's Web Site
/
rsync
/
rsync.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Ignore generated files and dirs.
[rsync/rsync.git]
/
authenticate.c
diff --git
a/authenticate.c
b/authenticate.c
index
8991ac4
..
afb8554
100644
(file)
--- a/
authenticate.c
+++ b/
authenticate.c
@@
-21,6
+21,7
@@
#include "rsync.h"
extern char *password_file;
#include "rsync.h"
extern char *password_file;
+extern int log_got_error;
/***************************************************************************
encode a buffer using base64 - simple and slow algorithm. null terminates
/***************************************************************************
encode a buffer using base64 - simple and slow algorithm. null terminates
@@
-166,7
+167,7
@@
static const char *getpassf(const char *filename)
rsyserr(FERROR, errno, "could not open password file \"%s\"",
filename);
if (envpw)
rsyserr(FERROR, errno, "could not open password file \"%s\"",
filename);
if (envpw)
- rprintf(F
ERROR
, "falling back to RSYNC_PASSWORD environment variable.\n");
+ rprintf(F
INFO
, "falling back to RSYNC_PASSWORD environment variable.\n");
return NULL;
}
return NULL;
}
@@
-174,23
+175,20
@@
static const char *getpassf(const char *filename)
rsyserr(FERROR, errno, "stat(%s)", filename);
ok = 0;
} else if ((st.st_mode & 06) != 0) {
rsyserr(FERROR, errno, "stat(%s)", filename);
ok = 0;
} else if ((st.st_mode & 06) != 0) {
- rprintf(FERROR,"password file must not be other-accessible\n");
+ rprintf(FERROR,
"password file must not be other-accessible\n");
ok = 0;
} else if (MY_UID() == 0 && st.st_uid != 0) {
ok = 0;
} else if (MY_UID() == 0 && st.st_uid != 0) {
- rprintf(FERROR,"password file must be owned by root when running as root\n");
+ rprintf(FERROR,
"password file must be owned by root when running as root\n");
ok = 0;
}
if (!ok) {
ok = 0;
}
if (!ok) {
- rprintf(FERROR,"continuing without password file\n");
- if (envpw)
- rprintf(FERROR, "using RSYNC_PASSWORD environment variable.\n");
close(fd);
close(fd);
+ rprintf(FERROR, "continuing without password file\n");
+ if (envpw)
+ rprintf(FINFO, "falling back to RSYNC_PASSWORD environment variable.\n");
return NULL;
}
return NULL;
}
- if (envpw)
- rprintf(FERROR, "RSYNC_PASSWORD environment variable ignored\n");
-
n = read(fd, buffer, sizeof buffer - 1);
close(fd);
if (n > 0) {
n = read(fd, buffer, sizeof buffer - 1);
close(fd);
if (n > 0) {
@@
-310,6
+308,9
@@
void auth_client(int fd, const char *user, const char *challenge)
pass = getpass("Password: ");
}
pass = getpass("Password: ");
}
+ /* Any errors output during password handling aren't transfer errors. */
+ log_got_error = 0;
+
if (!pass)
pass = "";
if (!pass)
pass = "";