The following patch fix reverts removal of some lines for the netboot patch.
authorPaul Nasrat <pnasrat@redhat.com>
Thu, 19 Apr 2007 09:25:28 +0000 (10:25 +0100)
committerPaul Nasrat <pauln@enki.eridu>
Thu, 19 Apr 2007 09:25:28 +0000 (10:25 +0100)
Signed-off-by: Paulo Ricardo Paz Vital <vital@br.ibm.com>
second/yaboot.c

index 9b8fcc8e301b9741d37b33585edbe085885b0a44..59f7d2efd91f68e39e5c70e76c2ebcb528a99eee 100644 (file)
@@ -331,6 +331,7 @@ load_config_file(struct boot_fspec_t *fspec)
      char *conf_file = NULL, *p;
      struct boot_file_t file;
      int sz, opened = 0, result = 0;
      char *conf_file = NULL, *p;
      struct boot_file_t file;
      int sz, opened = 0, result = 0;
+     char conf_path[512];
 
      /* Allocate a buffer for the config file */
      conf_file = malloc(CONFIG_FILE_MAX);
 
      /* Allocate a buffer for the config file */
      conf_file = malloc(CONFIG_FILE_MAX);
@@ -339,7 +340,19 @@ load_config_file(struct boot_fspec_t *fspec)
          goto bail;
      }
 
          goto bail;
      }
 
+     /* Build the path to the file */
+     if (_machine == _MACH_chrp)
+         strcpy(conf_path, "/etc/");
+     else
+         conf_path[0] = 0;
+     if (fspec->file && *fspec->file)
+         strcat(conf_path, fspec->file);
+     else
+         strcat(conf_path, CONFIG_FILE_NAME);
+
+
      /* Open it */
      /* Open it */
+     fspec->file = conf_path;
      result = open_file(fspec, &file);
      if (result != FILE_ERR_OK) {
          prom_printf("%s:%d,", fspec->dev, fspec->part);
      result = open_file(fspec, &file);
      if (result != FILE_ERR_OK) {
          prom_printf("%s:%d,", fspec->dev, fspec->part);
@@ -525,6 +538,8 @@ static int load_my_config_file(struct boot_fspec_t *orig_fspec)
          strcat(fspec.file, tmp);
      }
 
          strcat(fspec.file, tmp);
      }
 
+     //DEBUG_F("----> mac addr: %s\n", fspec.file);
+
      rc = load_config_file(&fspec);
      if (rc)
          goto out;
      rc = load_config_file(&fspec);
      if (rc)
          goto out;