[BACK]Return to util.c CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / distrib / utils / sysinst

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/distrib/utils/sysinst/Attic/util.c between version 1.118 and 1.119

version 1.118, 2004/04/18 20:42:19 version 1.119, 2004/04/18 21:34:56
Line 119  struct  tarstats {
Line 119  struct  tarstats {
         int nskipped;          int nskipped;
 } tarstats;  } tarstats;
   
 static int extract_file(char *path);  static int extract_file(int, int, char *path);
 static int extract_dist(void);  static int extract_dist(int);
 int     distribution_sets_exist_p(const char *path);  int     distribution_sets_exist_p(const char *path);
 static int check_for(unsigned int mode, const char *pathname);  static int check_for(unsigned int mode, const char *pathname);
   
Line 684  ask_verbose_dist(void)
Line 684  ask_verbose_dist(void)
 }  }
   
 static int  static int
 extract_file(char *path)  extract_file(int set, int update, char *path)
 {  {
         char *owd;          char *owd;
         int   tarexit;          int   tarexit;
Line 702  extract_file(char *path)
Line 702  extract_file(char *path)
   
         tarstats.nfound++;          tarstats.nfound++;
         /* cd to the target root. */          /* cd to the target root. */
         target_chdir_or_die("/");          if (update && set == SET_ETC) {
                   make_target_dir("/.sysinst");
                   target_chdir_or_die("/.sysinst");
           } else
                   target_chdir_or_die("/");
   
         /* now extract set files files into "./". */          /* now extract set files files into "./". */
         if (verbose == 1)          if (verbose == 1)
Line 726  extract_file(char *path)
Line 730  extract_file(char *path)
                 return yesno;                  return yesno;
         }          }
   
           if (update && set == SET_ETC) {
                   run_program(RUN_DISPLAY | RUN_CHROOT,
                           "/etc/postinstall -s /.sysinst -d / fix");
           }
   
         tarstats.nsuccess++;          tarstats.nsuccess++;
         return 2;          return 2;
 }  }
Line 738  extract_file(char *path)
Line 747  extract_file(char *path)
  */   */
   
 static int  static int
 extract_dist(void)  extract_dist(int update)
 {  {
         char fname[STRSIZE];          char fname[STRSIZE];
         distinfo *list;          distinfo *list;
Line 762  extract_dist(void)
Line 771  extract_dist(void)
                     ext_dir, list->name, dist_postfix);                      ext_dir, list->name, dist_postfix);
   
                 /* if extraction failed and user aborted, punt. */                  /* if extraction failed and user aborted, punt. */
                 extracted = extract_file(fname);                  extracted = extract_file(list->set, update, fname);
                 if (extracted == 2)                  if (extracted == 2)
                         sets_installed |= list->set;                          sets_installed |= list->set;
         }          }
Line 792  extract_dist(void)
Line 801  extract_dist(void)
  * success_msg and failure_msg must both be 0-adic messages.   * success_msg and failure_msg must both be 0-adic messages.
  */   */
 int  int
 get_and_unpack_sets(msg success_msg, msg failure_msg)  get_and_unpack_sets(int update, msg success_msg, msg failure_msg)
 {  {
         int got_dist;          int got_dist;
   
Line 823  get_and_unpack_sets(msg success_msg, msg
Line 832  get_and_unpack_sets(msg success_msg, msg
         }          }
   
         /* Extract the distribution, abort on errors. */          /* Extract the distribution, abort on errors. */
         if (extract_dist())          if (extract_dist(update))
                 return 1;                  return 1;
   
         /* Configure the system */          /* Configure the system */

Legend:
Removed from v.1.118  
changed lines
  Added in v.1.119

CVSweb <webmaster@jp.NetBSD.org>