summaryrefslogtreecommitdiffstats
path: root/loader
diff options
context:
space:
mode:
authorErik Troan <ewt@redhat.com>2000-04-24 21:28:01 +0000
committerErik Troan <ewt@redhat.com>2000-04-24 21:28:01 +0000
commitcbb528b0e967f1fd8b51c763916a8dd39003f679 (patch)
tree919ebe88cb9e6391e5b997c108c0ca38f8fd5abf /loader
parent7c7d4ec1ea623ff215441ad5ac235c6cb912cb24 (diff)
downloadanaconda-cbb528b0e967f1fd8b51c763916a8dd39003f679.tar.gz
anaconda-cbb528b0e967f1fd8b51c763916a8dd39003f679.tar.xz
anaconda-cbb528b0e967f1fd8b51c763916a8dd39003f679.zip
1) display proper error message when we fail to get the second stage
2) use /tmp/method for ftp urls
Diffstat (limited to 'loader')
-rw-r--r--loader/loader.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/loader/loader.c b/loader/loader.c
index 38de60a1b..a2ed3058d 100644
--- a/loader/loader.c
+++ b/loader/loader.c
@@ -1001,7 +1001,8 @@ static char * mountUrlImage(struct installMethod * method,
#endif
if (fd < 0) {
- newtWinMessage(_("FTP"), _("OK"),
+ newtWinMessage(ui.protocol == URL_METHOD_FTP ?
+ _("FTP") : _("HTTP"), _("OK"),
_("Unable to retrieve the second stage ramdisk"));
stage = URL_STAGE_MAIN;
break;
@@ -2188,7 +2189,17 @@ int main(int argc, char ** argv) {
*argptr++ = "/usr/bin/anaconda";
*argptr++ = "-m";
- *argptr++ = url;
+ if (strncmp(url, "ftp:", 4)) {
+ *argptr++ = url;
+ } else {
+ int fd;
+
+ fd = open("/tmp/method", O_CREAT | O_TRUNC | O_RDWR, 0600);
+ write(fd, url, strlen(url));
+ write(fd, "\r", 1);
+ close(fd);
+ *argptr++ = "@/tmp/method";
+ }
if (FL_SERIAL(flags))
*argptr++ = "--serial";