[BACK]Return to mbr.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/mbr.c between version 1.37 and 1.38

version 1.37, 2003/06/03 11:54:48 version 1.38, 2003/06/12 16:48:43
Line 105  struct part_id {
Line 105  struct part_id {
   
 int dosptyp_nbsd = MBR_PTYPE_NETBSD;  int dosptyp_nbsd = MBR_PTYPE_NETBSD;
   
 static int get_mapping (struct mbr_partition *, int, int *, int *, int *,  static int get_mapping(struct mbr_partition *, int, int *, int *, int *,
                             long *absolute);                              long *);
 static void convert_mbr_chs (int, int, int, u_int8_t *, u_int8_t *,  static void convert_mbr_chs(int, int, int, u_int8_t *, u_int8_t *,
                                  u_int8_t *, u_int32_t);                                   u_int8_t *, u_int32_t);
   
 #ifdef BOOTSEL  #ifdef BOOTSEL
Line 115  static int defbootselpart, defbootseldis
Line 115  static int defbootselpart, defbootseldis
 struct mbr_bootsel *mbs;  struct mbr_bootsel *mbs;
 #endif  #endif
   
 #ifdef notdef  
 /*  
  * First, geometry  stuff...  
  */  
 int  
 check_geom()  
 {  
   
         return bcyl <= 1024 && bsec < 64 && bcyl > 0 && bhead > 0 && bsec > 0;  
 }  
 #endif  
   
 /*  /*
  * get C/H/S geometry from user via menu interface and   * get C/H/S geometry from user via menu interface and
  * store in globals.   * store in globals.
  */   */
 void  void
 set_bios_geom(cyl, head, sec)  set_bios_geom(int cyl, int head, int sec)
         int cyl, head, sec;  
 {  {
         char res[80];          char res[80];
   
Line 153  set_bios_geom(cyl, head, sec)
Line 140  set_bios_geom(cyl, head, sec)
   
 #ifdef notdef  #ifdef notdef
 void  void
 disp_cur_geom()  disp_cur_geom(void)
 {  {
   
         msg_display_add(MSG_realgeom, dlcyl, dlhead, dlsec);          msg_display_add(MSG_realgeom, dlcyl, dlhead, dlsec);
Line 166  disp_cur_geom()
Line 153  disp_cur_geom()
  * Then,  the partition stuff...   * Then,  the partition stuff...
  */   */
 int  int
 otherpart(id)  otherpart(int id)
         int id;  
 {  {
   
         return (id != 0 && id != MBR_PTYPE_386BSD && id != MBR_PTYPE_NETBSD);          return (id != 0 && id != MBR_PTYPE_386BSD && id != MBR_PTYPE_NETBSD);
 }  }
   
 int  int
 ourpart(id)  ourpart(int id)
         int id;  
 {  {
   
         return (id == MBR_PTYPE_386BSD || id == MBR_PTYPE_NETBSD);          return (id == MBR_PTYPE_386BSD || id == MBR_PTYPE_NETBSD);
Line 185  ourpart(id)
Line 170  ourpart(id)
  * Let user change incore Master Boot Record partitions via menu.   * Let user change incore Master Boot Record partitions via menu.
  */   */
 int  int
 edit_mbr(mbr)  edit_mbr(struct mbr_sector *mbr)
         struct mbr_sector *mbr;  
 {  {
         int i, j;          int i, j;
   
Line 350  edit_ptn_bounds(void)
Line 334  edit_ptn_bounds(void)
         if (sizemult > 1 && start < bsec)          if (sizemult > 1 && start < bsec)
                 start = bsec;                  start = bsec;
         msg_table_add(MSG_mbrpart_size_special);          msg_table_add(MSG_mbrpart_size_special);
         msg_prompt_add (MSG_size, NULL, buf, 40);          msg_prompt_add(MSG_size, NULL, buf, 40);
         inp = atoi(buf);          inp = atoi(buf);
         /*          /*
          * -0, -1, -2, -3: until start of part # given           * -0, -1, -2, -3: until start of part # given
Line 376  edit_ptn_bounds(void)
Line 360  edit_ptn_bounds(void)
 }  }
   
 int  int
 partsoverlap(part, i, j)  partsoverlap(struct mbr_partition *part, int i, int j)
         struct mbr_partition *part;  
         int i;  
         int j;  
 {  {
   
         /*          /*
Line 401  partsoverlap(part, i, j)
Line 382  partsoverlap(part, i, j)
 }  }
   
 char *  char *
 get_partname(i)  get_partname(int i)
         int i;  
 {  {
         int j;          int j;
         static char unknown[32];          static char unknown[32];
Line 416  get_partname(i)
Line 396  get_partname(i)
 }  }
   
 void  void
 disp_cur_part(part, sel, disp)  disp_cur_part(struct mbr_partition *part, int sel, int disp)
         struct mbr_partition *part;  
         int sel;  
         int disp;  
 {  {
         int i, start, stop, rsize, rend;          int i, start, stop, rsize, rend;
   
Line 452  disp_cur_part(part, sel, disp)
Line 429  disp_cur_part(part, sel, disp)
 }  }
   
 int  int
 read_mbr(disk, mbr, len)  read_mbr(const char *disk, mbr_sector_t *mbr, size_t len)
         const char *disk;  
         mbr_sector_t *mbr;  
         size_t len;  
 {  {
         char diskpath[MAXPATHLEN];          char diskpath[MAXPATHLEN];
         int fd, i;          int fd, i;
Line 496  read_mbr(disk, mbr, len)
Line 470  read_mbr(disk, mbr, len)
 }  }
   
 int  int
 write_mbr(disk, mbr, len, convert)  write_mbr(const char *disk, mbr_sector_t *mbr, size_t len, int convert)
         const char *disk;  
         mbr_sector_t *mbr;  
         size_t len;  
         int convert;  
 {  {
         char diskpath[MAXPATHLEN];          char diskpath[MAXPATHLEN];
         int fd, i, ret = 0;          int fd, i, ret = 0;
Line 551  write_mbr(disk, mbr, len, convert)
Line 521  write_mbr(disk, mbr, len, convert)
 }  }
   
 int  int
 valid_mbr(mbr)  valid_mbr(mbr_sector_t *mbr)
         mbr_sector_t *mbr;  
 {  {
   
         return (le_to_native16(mbr->mbr_signature) == MBR_MAGIC);          return (le_to_native16(mbr->mbr_signature) == MBR_MAGIC);
 }  }
   
 static void  static void
 convert_mbr_chs(cyl, head, sec, cylp, headp, secp, relsecs)  convert_mbr_chs(int cyl, int head, int sec,
         int cyl, head, sec;                  u_int8_t *cylp, u_int8_t *headp, u_int8_t *secp,
         u_int8_t *cylp, *headp, *secp;                  u_int32_t relsecs)
         u_int32_t relsecs;  
 {  {
         unsigned int tcyl, temp, thead, tsec;          unsigned int tcyl, temp, thead, tsec;
   
Line 593  convert_mbr_chs(cyl, head, sec, cylp, he
Line 561  convert_mbr_chs(cyl, head, sec, cylp, he
  * device.   * device.
  */   */
 int  int
 guess_biosgeom_from_mbr(mbr, cyl, head, sec)  guess_biosgeom_from_mbr(mbr_sector_t *mbr, int *cyl, int *head, int *sec)
         mbr_sector_t *mbr;  
         int *cyl, *head, *sec;  
 {  {
         struct mbr_partition *parts = &mbr->mbr_parts[0];          struct mbr_partition *parts = &mbr->mbr_parts[0];
         int cylinders = -1, heads = -1, sectors = -1, i, j;          int cylinders = -1, heads = -1, sectors = -1, i, j;
Line 668  guess_biosgeom_from_mbr(mbr, cyl, head, 
Line 634  guess_biosgeom_from_mbr(mbr, cyl, head, 
 }  }
   
 static int  static int
 get_mapping(parts, i, cylinder, head, sector, absolute)  get_mapping(mbr_partition_t *parts, int i,
         struct mbr_partition *parts;              int *cylinder, int *head, int *sector, long *absolute)
         int i, *cylinder, *head, *sector;  
         long *absolute;  
 {  {
         struct mbr_partition *apart = &parts[i / 2];          struct mbr_partition *apart = &parts[i / 2];
   
Line 719  disp_bootsel(void)
Line 683  disp_bootsel(void)
 void  void
 edit_bootsel_entry(int ptn)  edit_bootsel_entry(int ptn)
 {  {
   
         if (part[ptn].mbrp_typ != 0)          if (part[ptn].mbrp_typ != 0)
                 msg_prompt(MSG_bootselitemname, mbs->mbrb_nametab[ptn],                  msg_prompt(MSG_bootselitemname, mbs->mbrb_nametab[ptn],
                             mbs->mbrb_nametab[ptn], 8);                              mbs->mbrb_nametab[ptn], 8);

Legend:
Removed from v.1.37  
changed lines
  Added in v.1.38

CVSweb <webmaster@jp.NetBSD.org>