summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ftp.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/ftp.c b/ftp.c
index 52497ec54..233c261db 100644
--- a/ftp.c
+++ b/ftp.c
@@ -210,10 +210,14 @@ int ftpOpen(char * host, char * name, char * password, char * proxy,
name = "anonymous";
if (!password) {
- pw = getpwuid(getuid());
- password = alloca(strlen(pw->pw_name) + 2);
- strcpy(password, pw->pw_name);
- strcat(password, "@");
+ if (getuid()) {
+ pw = getpwuid(getuid());
+ password = alloca(strlen(pw->pw_name) + 2);
+ strcpy(password, pw->pw_name);
+ strcat(password, "@");
+ } else {
+ password = "root@";
+ }
}
if (proxy) {