Mailinglist Archive: opensuse-commit (2092 mails)

< Previous Next >
commit linuxrc
  • From: root@xxxxxxxxxxxxxxx (h_root)
  • Date: Thu, 30 Aug 2007 23:15:02 +0200
  • Message-id: <20070830211502.8172B678182@xxxxxxxxxxxxxxx>

Hello community,

here is the log from the commit of package linuxrc
checked in at Thu Aug 30 23:15:02 CEST 2007.

--------
--- linuxrc/linuxrc.changes     2007-08-27 18:23:30.000000000 +0200
+++ /mounts/work_src_done/STABLE/linuxrc/linuxrc.changes        2007-08-30 17:54:05.000000000 +0200
@@ -1,0 +2,6 @@
+Thu Aug 30 17:53:57 CEST 2007 - snwint@xxxxxxx
+
+- fix rescue system loading
+- finished driver update loading (#304827)
+
+-------------------------------------------------------------------

Old:
----
  linuxrc-3.0.10.tar.bz2

New:
----
  linuxrc-3.0.12.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ linuxrc.spec ++++++
--- /var/tmp/diff_new_pack.x22983/_old  2007-08-30 23:11:27.000000000 +0200
+++ /var/tmp/diff_new_pack.x22983/_new  2007-08-30 23:11:27.000000000 +0200
@@ -1,5 +1,5 @@
 #
-# spec file for package linuxrc (Version 3.0.10)
+# spec file for package linuxrc (Version 3.0.12)
 #
 # Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
 # This file and all modifications and additions to the pristine
@@ -16,9 +16,9 @@
 Group:          System/Boot
 Autoreqprov:    on
 Summary:        SUSE Installation Program
-Version:        3.0.10
+Version:        3.0.12
 Release:        1
-Source:         linuxrc-3.0.10.tar.bz2
+Source:         linuxrc-3.0.12.tar.bz2
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 
 %description
@@ -53,6 +53,9 @@
 %doc linuxrc.html
 
 %changelog
+* Thu Aug 30 2007 - snwint@xxxxxxx
+- fix rescue system loading
+- finished driver update loading (#304827)
 * Mon Aug 27 2007 - snwint@xxxxxxx
 - better handle situations with more than one module to load (#304134)
 * Mon Aug 20 2007 - snwint@xxxxxxx

++++++ linuxrc-3.0.10.tar.bz2 -> linuxrc-3.0.12.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linuxrc-3.0.10/auto2.c new/linuxrc-3.0.12/auto2.c
--- old/linuxrc-3.0.10/auto2.c  2007-08-27 18:06:31.000000000 +0200
+++ new/linuxrc-3.0.12/auto2.c  2007-08-30 16:49:36.000000000 +0200
@@ -334,8 +334,6 @@
 int auto2_find_repo()
 {
   int err, win, i;
-  unsigned dud_count;
-  char *file_name;
 
   config.sig_failed = 0;
   config.sha1_failed = 0;
@@ -412,39 +410,7 @@
     return 0;
   }
 
-  /* check for driver updates */
-
-  dud_count = config.update.count;
-
-  /* first, look for 'driverupdate' archive */
-  err = url_read_file(
-    config.url.install,
-    NULL,
-    "driverupdate",
-    file_name = strdup(new_download()),
-    txt_get(TXT_LOADING_UPDATE),
-    URL_FLAG_UNZIP /* + URL_FLAG_PROGRESS */
-  );
-
-  if(!err) err = util_mount_ro(file_name, config.mountpoint.update);
-
-  if(!err) util_chk_driver_update(config.mountpoint.update, get_instmode_name(config.url.install->scheme));
-
-  util_umount(config.mountpoint.update);
-  free(file_name);
-
-  if(!err) util_do_driver_updates();
-
-  /* then, look for unpacked version */
-  if(config.url.install->mount) {
-    util_chk_driver_update(config.url.install->mount, get_instmode_name(config.url.install->scheme));
-    util_do_driver_updates();
-  }
-
-  if(dud_count == config.update.count) {
-    fprintf(stderr, "No new driver updates found.\n");
-    // printf("No new driver updates found.\n");
-  }
+  auto2_driverupdate(config.url.install);
 
   return 1;
 }
@@ -877,3 +843,67 @@
   free(cmdline);
 }
 
+
+/*
+ * Check for driver updates.
+ */
+void auto2_driverupdate(url_t *url)
+{
+  unsigned dud_count;
+  char *file_name;
+  slist_t **names;
+  int err = 0;
+  window_t win;
+
+  dud_count = config.update.count;
+
+  /* point at list end */
+  for(names = &config.update.name_list; *names; names = &(*names)->next);
+
+  if(config.win) dia_info(&win, txt_get(TXT_DUD_READ));
+
+  /* first, look for 'driverupdate' archive */
+  err = url_read_file(
+    url,
+    NULL,
+    "driverupdate",
+    file_name = strdup(new_download()),
+    txt_get(TXT_LOADING_UPDATE),
+    URL_FLAG_UNZIP + URL_FLAG_NOSHA1 + URL_FLAG_KEEP_MOUNTED
+  );
+
+  if(!err) err = util_mount_ro(file_name, config.mountpoint.update);
+
+  if(!err) util_chk_driver_update(config.mountpoint.update, get_instmode_name(url->scheme));
+
+  util_umount(config.mountpoint.update);
+
+  unlink(file_name);
+
+  free(file_name);
+
+  if(!err) util_do_driver_updates();
+
+  /* then, look for unpacked version */
+  if(url->mount) {
+    util_chk_driver_update(url->mount, get_instmode_name(url->scheme));
+    util_do_driver_updates();
+  }
+
+  if(config.win) win_close(&win);
+
+  if(dud_count == config.update.count) {
+    fprintf(stderr, "No new driver updates found.\n");
+    if(config.win) dia_message(txt_get(TXT_DUD_NOTFOUND), MSGTYPE_INFO);
+  }
+  else {
+    if(*names) {
+      if(config.win) dia_show_lines2(txt_get(TXT_DUD_ADDED), *names, 64);
+    }
+    else {
+      if(config.win) dia_message(txt_get(TXT_DUD_OK), MSGTYPE_INFO);
+    }
+  }  
+}
+
+
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linuxrc-3.0.10/auto2.h new/linuxrc-3.0.12/auto2.h
--- old/linuxrc-3.0.10/auto2.h  2007-07-20 16:38:54.000000000 +0200
+++ new/linuxrc-3.0.12/auto2.h  2007-08-30 15:53:10.000000000 +0200
@@ -5,3 +5,4 @@
 void load_network_mods(void);
 char *auto2_serial_console(void);
 void pcmcia_socket_startup(void);
+void auto2_driverupdate(url_t *url);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linuxrc-3.0.10/Changelog new/linuxrc-3.0.12/Changelog
--- old/linuxrc-3.0.10/Changelog        2007-08-27 18:22:53.000000000 +0200
+++ new/linuxrc-3.0.12/Changelog        2007-08-30 17:47:09.000000000 +0200
@@ -1,3 +1,9 @@
+30/8/2007:     v3.0.12
+       - finished driver update loading (#304827)
+
+29/8/2007:     v3.0.11
+       - fix rescue system loading
+
 27/8/2007:     v3.0.10
        - better handle situations with more than one module to load (#304134)
 
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linuxrc-3.0.10/file.c new/linuxrc-3.0.12/file.c
--- old/linuxrc-3.0.10/file.c   2007-08-16 17:34:54.000000000 +0200
+++ new/linuxrc-3.0.12/file.c   2007-08-29 15:14:41.000000000 +0200
@@ -791,8 +791,6 @@
         }
 
       case key_install:
-        config.rescue = f->key == key_rescue ? 1 : 0;
-
         url_free(config.url.install);
         config.url.install = url_set(f->value);
 
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linuxrc-3.0.10/install.c new/linuxrc-3.0.12/install.c
--- old/linuxrc-3.0.10/install.c        2007-08-17 14:44:00.000000000 +0200
+++ new/linuxrc-3.0.12/install.c        2007-08-30 17:09:24.000000000 +0200
@@ -1315,82 +1315,22 @@
  */
 int inst_update_cd()
 {
-#if 0
-  int i, update_rd;
-  char *dev, *buf = NULL, *argv[3], *module;
-  unsigned old_count;
-  slist_t **names;
-  window_t win;
-#endif
-
-  dia_message("Sorry, not working yet.", MSGTYPE_ERROR);
+  char *dev;
+  url_t *url;
 
-#if 0
   config.update.shown = 1;
 
   if(choose_dud(&dev)) return 1;
 
   if(!dev) return 0;
 
-  util_fstype(long_dev(dev), &module);
-  if(module) mod_modprobe(module, NULL);
-
-  /* ok, mount it */
-  i = util_mount_ro(long_dev(dev), config.mountpoint.update);
-
-  if(i) {
-    dia_message(txt_get(TXT_DUD_FAIL), MSGTYPE_ERROR);
-    return 0;
-  }
-
-  old_count = config.update.count;
-
-  /* point at list end */
-  for(names = &config.update.name_list; *names; names = &(*names)->next);
+  url = url_set("disk:/");
+  url->device = strdup(short_dev(dev));
 
-  dia_info(&win, txt_get(TXT_DUD_READ));
+  auto2_driverupdate(url);
 
-  strprintf(&buf, "%s/%s", config.mountpoint.update, SP_FILE);
-
-  if(util_check_exist(buf) == 'r' && !util_check_exist("/" SP_FILE)) {
-    argv[1] = buf;
-    argv[2] = "/";
-    util_cp_main(3, argv);
-  }
-
-  util_chk_driver_update(config.mountpoint.update, dev);
-
-  strprintf(&buf, "%s/driverupdate", config.mountpoint.update);
-  if(util_check_exist(buf) == 'r') {
-    update_rd = load_image(buf, inst_file, txt_get(TXT_LOADING_UPDATE));
-
-    if(update_rd >= 0) {
-      i = ramdisk_mount(update_rd, config.mountpoint.update);
-      if(!i) util_chk_driver_update(config.mountpoint.update, get_instmode_name(inst_file));
-      ramdisk_free(update_rd);
-    }
-  }
-
-  util_umount(config.mountpoint.update);
-
-  util_do_driver_updates();
-
-  win_close(&win);
-
-  if(old_count == config.update.count) {
-    dia_message(txt_get(TXT_DUD_NOTFOUND), MSGTYPE_INFO);
-  }
-  else {
-    if(*names) {
-      dia_show_lines2(txt_get(TXT_DUD_ADDED), *names, 64);
-    }
-    else {
-      dia_message(txt_get(TXT_DUD_OK), MSGTYPE_INFO);
-    }
-  }
-
-  free(buf);
-#endif
+  url_umount(url);
+  url_free(url);
 
   return 0;
 }
@@ -1438,7 +1378,7 @@
   }
 
   /* just max values, actual lists might be shorter */
-  items = calloc(i + 1+ 2, sizeof *items);
+  items = calloc(i + 1 + 2, sizeof *items);
   values = calloc(i + 1 + 2, sizeof *values);
 
   item_cnt = 0;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linuxrc-3.0.10/url.c new/linuxrc-3.0.12/url.c
--- old/linuxrc-3.0.10/url.c    2007-08-17 18:21:53.000000000 +0200
+++ new/linuxrc-3.0.12/url.c    2007-08-30 16:59:49.000000000 +0200
@@ -1247,6 +1247,7 @@
 {
   int err = 0, free_src = 0;
   char *buf1 = NULL, *s, *t;
+  int keep_mounted = 0, real_err = 0;
 
   int test_and_copy(url_t *url)
   {
@@ -1260,7 +1261,11 @@
     if(url->is.mountable && url->scheme != inst_file) {
       if(!url->mount) return 0;
       ok = util_check_exist2(url->mount, src) == 'r' ? 1 : 0;
-      if(!ok) return ok;
+      if(!ok) {
+        real_err = 1;
+
+        return keep_mounted ? 1 : 0;
+      }
       strprintf(&buf, "file:%s", url->mount);
       url = url_set(buf);
       new_url = 1;
@@ -1379,7 +1384,9 @@
   }
   else {
     if(url->is.mountable && url->scheme != inst_file) {
+      keep_mounted = flags & URL_FLAG_KEEP_MOUNTED;
       err = url_mount(url, dir, test_and_copy);
+      if(keep_mounted && !err) err = real_err;
     }
     else {
       err = test_and_copy(url) ? 0 : 1;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linuxrc-3.0.10/url.h new/linuxrc-3.0.12/url.h
--- old/linuxrc-3.0.10/url.h    2007-08-17 17:20:25.000000000 +0200
+++ new/linuxrc-3.0.12/url.h    2007-08-30 17:01:20.000000000 +0200
@@ -32,10 +32,11 @@
   char *sha1;
 } url_data_t;
 
-#define URL_FLAG_UNZIP         1
-#define URL_FLAG_PROGRESS      2
-#define URL_FLAG_NOSHA1                4
-#define URL_FLAG_NOUNLINK      8
+#define URL_FLAG_UNZIP         (1 << 0)
+#define URL_FLAG_PROGRESS      (1 << 1)
+#define URL_FLAG_NOSHA1                (1 << 2)
+#define URL_FLAG_NOUNLINK      (1 << 3)
+#define URL_FLAG_KEEP_MOUNTED  (1 << 4)
 
 void url_read(url_data_t *url_data);
 url_t *url_set(char *str);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/linuxrc-3.0.10/VERSION new/linuxrc-3.0.12/VERSION
--- old/linuxrc-3.0.10/VERSION  2007-08-27 17:51:35.000000000 +0200
+++ new/linuxrc-3.0.12/VERSION  2007-08-30 16:12:21.000000000 +0200
@@ -1 +1 @@
-3.0.10
+3.0.12


++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



Remember to have fun...

---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-commit+help@xxxxxxxxxxxx

< Previous Next >