Changeset 17209


Ignore:
Timestamp:
06/16/11 16:19:35 (2 years ago)
Author:
BrainSlayer
Message:

new x86 code

Location:
src/router
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • src/router/httpd/modules/broadcom.c

    r17205 r17209  
    15301530{ 
    15311531        int i; 
    1532         unsigned char *disks[]={"/dev/sda2","/dev/sdb2","/dev/sdc2","/dev/sdd2","/dev/sde2","/dev/sdf2","/dev/sdg2","/dev/sdh2","/dev/sdi2"}; 
     1532        static char ret[4]; 
     1533        unsigned char *disks[]={"sda2","sdb2","sdc2","sdd2","sde2","sdf2","sdg2","sdh2","sdi2"}; 
    15331534        for (i = 0; i < 9; i++) { 
    15341535                char dev[64]; 
    15351536 
    1536                 strcpy(dev, disks[i]); 
     1537                sprintf(dev, "/dev/%s", disks[i]); 
    15371538                FILE *in = fopen(dev, "rb"); 
    15381539 
     
    15471548                        fclose(in); 
    15481549                        // filesystem detected 
    1549                         return disks[i]; 
     1550                        strncpy(ret,disks[i],3); 
     1551                        return ret; 
    15501552                } 
    15511553                fclose(in); 
     
    16551657#endif 
    16561658                char drive[64]; 
    1657                 strcpy(drive, getdisc()); 
     1659                sprintf(drive,"/dev/%s",getdisc()); 
    16581660                FILE *in = fopen64(drive, "r+b"); 
    16591661                fseeko64(in, 0, SEEK_END); 
  • src/router/httpd/modules/upgrade_x86.c

    r17205 r17209  
    3535{ 
    3636        int i; 
    37         unsigned char *disks[]={"/dev/sda2","/dev/sdb2","/dev/sdc2","/dev/sdd2","/dev/sde2","/dev/sdf2","/dev/sdg2","/dev/sdh2","/dev/sdi2"}; 
     37        static char ret[4]; 
     38        unsigned char *disks[]={"sda2","sdb2","sdc2","sdd2","sde2","sdf2","sdg2","sdh2","sdi2"}; 
    3839        for (i = 0; i < 9; i++) { 
    3940                char dev[64]; 
    4041 
    41                 strcpy(dev, disks[i]); 
     42                sprintf(dev, "/dev/%s", disks[i]); 
    4243                FILE *in = fopen(dev, "rb"); 
    4344 
     
    5253                        fclose(in); 
    5354                        // filesystem detected 
    54                         return disks[i]; 
     55                        strncpy(ret,disks[i],3); 
     56                        return ret; 
    5557                } 
    5658                fclose(in); 
     
    212214        sprintf(drive, "/dev/sda"); 
    213215#else 
    214         strcpy(drive, getdisc()); 
     216        sprintf(drive, "/dev/%s",getdisc()); 
    215217#endif 
    216218        fprintf (stderr, "Write Linux %d to %s\n", linuxsize,dev); 
     
    355357        sprintf(drive, "/dev/sda"); 
    356358#else 
    357         strcpy(drive, getdisc()); 
     359        sprintf(drive, "/dev/%s",getdisc()); 
    358360#endif 
    359361                FILE *in = fopen(drive, "r+b"); 
  • src/router/services/sysinit/devinit.c

    r17207 r17209  
    5858{ 
    5959        int i; 
    60         unsigned char *disks[]={"/dev/sda2","/dev/sdb2","/dev/sdc2","/dev/sdd2","/dev/sde2","/dev/sdf2","/dev/sdg2","/dev/sdh2","/dev/sdi2"}; 
     60        static char ret[4]; 
     61        unsigned char *disks[]={"sda2","sdb2","sdc2","sdd2","sde2","sdf2","sdg2","sdh2","sdi2"}; 
    6162        for (i = 0; i < 9; i++) { 
    6263                char dev[64]; 
    6364 
    64                 strcpy(dev, disks[i]); 
     65                sprintf(dev, "/dev/%s", disks[i]); 
    6566                FILE *in = fopen(dev, "rb"); 
    6667 
     
    7576                        fclose(in); 
    7677                        // filesystem detected 
    77                         return disks[i]; 
     78                        strncpy(ret,disks[i],3); 
     79                        return ret; 
    7880                } 
    7981                fclose(in); 
     
    9799#endif 
    98100        cprintf("sysinit() tmp\n"); 
    99 #ifdef HAVE_X86 
    100         char dev[64]; 
    101         char *disc = getdisc(); 
    102  
    103         if (disc == NULL) { 
    104                 fprintf(stderr, 
    105                         "no valid dd-wrt partition found, calling shell"); 
    106                 eval("/bin/sh"); 
    107                 exit(0); 
    108         } 
    109         // sprintf (dev, "/dev/discs/disc%d/part1", index); 
    110         // mount (dev, "/boot", "ext2", MS_MGC_VAL, NULL); 
    111  
    112         sprintf(dev, "/dev/discs/disc%d/part3", index); 
    113         if (mount(dev, "/usr/local", "ext2", MS_MGC_VAL, NULL)) { 
    114                 eval("/sbin/mke2fs", "-F", "-b", "1024", dev); 
    115                 mount(dev, "/usr/local", "ext2", MS_MGC_VAL, NULL); 
    116 //              eval("/bin/tar", "-xvvjf", "/etc/local.tar.bz2", "-C", "/"); 
    117         } 
    118         eval("mkdir", "-p", "/usr/local/nvram"); 
    119 #endif 
    120101        /* 
    121102         * /tmp  
     
    157138        system("/etc/hotplug2.startup"); 
    158139#endif 
     140#ifdef HAVE_X86 
     141        fprintf(stderr,"waiting for hotplug\n"); 
     142        char dev[64]; 
     143        char *disc = getdisc(); 
     144 
     145        if (disc == NULL) { 
     146                fprintf(stderr, 
     147                        "no valid dd-wrt partition found, calling shell"); 
     148                eval("/bin/sh"); 
     149        } 
     150        // sprintf (dev, "/dev/discs/disc%d/part1", index); 
     151        // mount (dev, "/boot", "ext2", MS_MGC_VAL, NULL); 
     152 
     153        sprintf(dev, "/dev/%s3", disc); 
     154        if (mount(dev, "/usr/local", "ext2", MS_MGC_VAL, NULL)) { 
     155                eval("/sbin/mke2fs", "-F", "-b", "1024", dev); 
     156                mount(dev, "/usr/local", "ext2", MS_MGC_VAL, NULL); 
     157//              eval("/bin/tar", "-xvvjf", "/etc/local.tar.bz2", "-C", "/"); 
     158        } 
     159        eval("mkdir", "-p", "/usr/local/nvram"); 
     160#endif 
    159161fprintf(stderr,"done\n"); 
    160162} 
  • src/router/services/sysinit/sysinit-x86.c

    r17204 r17209  
    6060{ 
    6161        int i; 
    62         unsigned char *disks[]={"/dev/sda2","/dev/sdb2","/dev/sdc2","/dev/sdd2","/dev/sde2","/dev/sdf2","/dev/sdg2","/dev/sdh2","/dev/sdi2"}; 
     62        static char ret[4]; 
     63        unsigned char *disks[]={"sda2","sdb2","sdc2","sdd2","sde2","sdf2","sdg2","sdh2","sdi2"}; 
    6364        for (i = 0; i < 9; i++) { 
    6465                char dev[64]; 
    6566 
    66                 strcpy(dev, disks[i]); 
     67                sprintf(dev, "/dev/%s", disks[i]); 
    6768                FILE *in = fopen(dev, "rb"); 
    6869 
     
    7778                        fclose(in); 
    7879                        // filesystem detected 
    79                         return disks[i]; 
     80                        strncpy(ret,disks[i],3); 
     81                        return ret; 
    8082                } 
    8183                fclose(in); 
     
    114116        if (in == NULL) { 
    115117                fprintf(stderr, "recover broken nvram\n"); 
     118                sprintf(dev,"/dev/%s",disk); 
    116119                strcpy(dev,disk); 
    117120                in = fopen(dev, "rb"); 
  • src/router/services/sysinit/tools/recover.c

    r17208 r17209  
    55        sprintf(drive, "/dev/sda"); 
    66#else 
    7         strcpy(drive, getdisc()); 
     7        sprintf(drive, "/dev/%s",getdisc()); 
    88#endif 
    99        //backup nvram 
     
    4141        sprintf(dev, "/dev/sda"); 
    4242#else 
    43         strcpy(dev, getdisc()); 
     43        sprintf(dev, "/dev/%s",getdisc()); 
    4444#endif 
    4545        in = fopen(dev, "rb"); 
Note: See TracChangeset for help on using the changeset viewer.