Changeset 9336


Ignore:
Timestamp:
08/12/11 15:45:16 (14 years ago)
Author:
Eric.Larour
Message:

Replaced strcpy by memcpy. For security reasons.

Location:
issm/trunk/src/c
Files:
27 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/io/Matlab/OptionParse.cpp

    r9325 r9336  
    2323        odouble=new OptionDouble;
    2424        odouble->name =(char *) xmalloc((strlen(name)+1)*sizeof(char));
    25         strcpy(odouble->name,name);
     25        memcpy(odouble->name,name,(strlen(name)+1)*sizeof(char));
    2626
    2727        /*check and parse the value  */
     
    4242        ological=new OptionLogical;
    4343        ological->name =(char *) xmalloc((strlen(name)+1)*sizeof(char));
    44         strcpy(ological->name,name);
     44        memcpy(ological->name,name,(strlen(name)+1)*sizeof(char));
    4545
    4646        /*check and parse the value  */
     
    6161        ochar=new OptionChar;
    6262        ochar->name =(char *) xmalloc((strlen(name)+1)*sizeof(char));
    63         strcpy(ochar->name,name);
     63        memcpy(ochar->name,name,(strlen(name)+1)*sizeof(char));
    6464
    6565        /*check and parse the value  */
     
    8686        ostruct=new OptionStruct;
    8787        ostruct->name =(char*)xmalloc((strlen(name)+1)*sizeof(char));
    88         strcpy(ostruct->name,name);
     88        memcpy(ostruct->name,name,(strlen(name)+1)*sizeof(char));
    8989
    9090        /*check and parse the value  */
     
    133133        ocell=new OptionCell;
    134134        ocell->name =(char *) xmalloc((strlen(name)+1)*sizeof(char));
    135         strcpy(ocell->name,name);
     135        memcpy(ocell->name,name,(strlen(name)+1)*sizeof(char));
    136136
    137137        /*check and parse the value  */
     
    152152                ColumnWiseDimsFromIndex(dims,(int)cindex,ocell->size,ocell->ndims);
    153153                StringFromDims(cstr,dims,ocell->ndims);
    154                 sprintf(namei,161,"%s%s",name,cstr);
     154                snprintf(namei,161,"%s%s",name,cstr);
    155155                celli=mxGetCell(prhs[0],cindex);
    156156
  • issm/trunk/src/c/modules/InputUpdateFromDakotax/InputUpdateFromDakotax.cpp

    r8263 r9336  
    4242                         * distributed_values with the next qmu_npart variables: */
    4343                       
    44                         strcpy(root,strstr(descriptor,"_")+1); *strstr(root,"_")='\0';
     44                        memcpy(root,strstr(descriptor,"_")+1,(strlen(strstr(descriptor,"_")+1)+1)*sizeof(char));
     45                        *strstr(root,"_")='\0';
     46
    4547
    4648                        distributed_values=(double*)xmalloc(qmu_npart*sizeof(double));
  • issm/trunk/src/c/modules/ParsePetscOptionsx/ParsePetscOptionsx.cpp

    r9320 r9336  
    6868                        to the already existing options*/
    6969                                if(strings[numanalyses-1]==NULL){
    70                                         string=(char*)xmalloc((strlen(line)+1)*sizeof(char)); strcpy(string,line);
     70                                        string=(char*)xmalloc((strlen(line)+1)*sizeof(char));
     71                                        memcpy(string,line,(strlen(line)+1)*sizeof(char));
     72
    7173                                        strings[numanalyses-1]=string;
    7274                                }
    7375                                else{
    7476                                        string=strings[numanalyses-1];
    75                                         newstring=(char*)xmalloc((strlen(line)+1)*sizeof(char)); strcpy(newstring,line);
     77                                        newstring=(char*)xmalloc((strlen(line)+1)*sizeof(char));
     78                                        memcpy(newstring,line,(strlen(line)+1)*sizeof(char));
     79
    7680                                        /*concatenate:*/
    7781                                        catstring=(char*)xmalloc((strlen(string)+1+strlen(newstring)+1+1)*sizeof(char)); //fit in a space " "
    78                                         strcpy(catstring,string);
     82                                        memcpy(catstring,string,(strlen(string)+1)*sizeof(char));
     83
    7984                                        strcat(catstring," ");
    8085                                        strcat(catstring,newstring);
  • issm/trunk/src/c/objects/DakotaPlugin.cpp

    r9320 r9336  
    7878                string label=xCLabels[i];
    7979                variable_descriptor=(char*)xmalloc((strlen(label.c_str())+1)*sizeof(char));
    80                 strcpy(variable_descriptor,label.c_str());
     80                memcpy(variable_descriptors,label.c_str(),(strlen(label.c_str())+1)*sizeof(char));
     81
    8182               
    8283                variable_descriptors[i]=variable_descriptor;
  • issm/trunk/src/c/objects/ExternalResults/StringExternalResult.cpp

    r9320 r9336  
    3232        enum_type=in_enum_type;
    3333        value=(char*)xmalloc((strlen(in_value)+1)*sizeof(char));
    34         strcpy(value,in_value);
     34        memcpy(value,in_value,(strlen(in_value)+1)*sizeof(char));
     35
    3536        step=in_step;
    3637        time=in_time;
  • issm/trunk/src/c/objects/KML/KMLFileReadUtils.cpp

    r9320 r9336  
    142142
    143143        ktagi=(char *) xmalloc((strlen(ktag)+1)*sizeof(char));
    144         strcpy(ktagi,ktag);
     144        memcpy(ktagi,ktag,(strlen(ktag)+1)*sizeof(char));
     145
    145146
    146147/*  loop through tag to find all attributes  */
     
    260261        }
    261262        else
    262                 strcpy(pstr,kstr);
     263                memcpy(pstr,kstr,(strlen(kstr)+1)*sizeof(char));
     264
    263265        xfree((void**)&kstr);
    264266
  • issm/trunk/src/c/objects/KML/KML_Attribute.cpp

    r9320 r9336  
    105105
    106106        name =(char *) xmalloc((strlen(namei )+1)*sizeof(char));
    107         strcpy(name      ,namei);
     107        memcpy(name,namei,(strlen(namei)+1)*sizeof(char));
    108108
    109109        value=(char *) xmalloc((strlen(valuei)+1)*sizeof(char));
    110         strcpy(value     ,valuei);
     110        memcpy(value,valuei,(strlen(valuei)+1)*sizeof(char));
    111111
    112112        return;
     
    128128        if (!value || !strlen(value)) {
    129129                *pvalueo=(char *) xmalloc((strlen(deflt)+1)*sizeof(char));
    130                 strcpy(*pvalueo,deflt);
     130                memcpy(*pvalueo,deflt,(strlen(deflt)+1)*sizeof(char));
    131131        }
    132132        else {
    133133                *pvalueo=(char *) xmalloc((strlen(value)+1)*sizeof(char));
    134                 strcpy(*pvalueo,value);
     134                memcpy(*pvalueo,value,(strlen(value)+1)*sizeof(char));
    135135        }
    136136
  • issm/trunk/src/c/objects/KML/KML_Container.cpp

    r9320 r9336  
    7474/*  loop over the features for the container  */
    7575
    76         strcpy(indent2,indent);
     76        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
     77
    7778        strcat(indent2,"  ");
    7879
     
    100101/*  loop over the features for the container  */
    101102
    102         strcpy(indent2,indent);
     103        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
     104
    103105        strcat(indent2,"  ");
    104106
  • issm/trunk/src/c/objects/KML/KML_Feature.cpp

    r9320 r9336  
    2323KML_Feature::KML_Feature(){
    2424
    25         strcpy(name      ,"");
     25        memcpy(name,"",(strlen("")+1)*sizeof(char));
     26
    2627        visibility=true;
    2728        open      =false;
    28         strcpy(snippet   ,"");
    29         strcpy(descript  ,"");
    30         strcpy(styleurl  ,"");
     29        memcpy(snippet,"",(strlen("")+1)*sizeof(char));
     30        memcpy(descript,"",(strlen("")+1)*sizeof(char));
     31        memcpy(styleurl,"",(strlen("")+1)*sizeof(char));
    3132        style     =new DataSet;
    3233
     
    9394/*  loop over any styles for the feature  */
    9495
    95         strcpy(indent2,indent);
     96        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
     97
    9698        strcat(indent2,"  ");
    9799
     
    130132/*  loop over any styles for the feature  */
    131133
    132         strcpy(indent2,indent);
     134        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
     135
    133136        strcat(indent2,"  ");
    134137
  • issm/trunk/src/c/objects/KML/KML_File.cpp

    r9320 r9336  
    7676/*  loop over the kml objects for the file  */
    7777
    78         strcpy(indent2,indent);
     78        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
     79
    7980        strcat(indent2,"  ");
    8081
     
    106107/*  loop over the kml objects for the file  */
    107108
    108         strcpy(indent2,indent);
     109        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
     110
    109111        strcat(indent2,"  ");
    110112
  • issm/trunk/src/c/objects/KML/KML_GroundOverlay.cpp

    r9320 r9336  
    2424
    2525        altitude  = 0.;
    26         strcpy(altmode   ,"clampToGround");
     26        memcpy(altmode,"clampToGround",(strlen("clampToGround")+1)*sizeof(char));
     27
    2728        llbox     =NULL;
    2829
     
    7778        KML_Overlay::DeepEcho(indent);
    7879
    79         strcpy(indent2,indent);
     80        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
     81
    8082        strcat(indent2,"  ");
    8183
     
    102104        KML_Overlay::Write(filout,indent);
    103105
    104         strcpy(indent2,indent);
     106        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
     107
    105108        strcat(indent2,"  ");
    106109
  • issm/trunk/src/c/objects/KML/KML_LineString.cpp

    r9320 r9336  
    2626        extrude   =false;
    2727        tessellate=false;
    28         strcpy(altmode   ,"clampToGround");
     28        memcpy(altmode,"clampToGround",(strlen(altmode)+1)*sizeof(char));
     29
    2930        ncoord    =0;
    3031        coords    =NULL;
     
    195196/*  write header  */
    196197
    197         strcpy(nstr2,nstr);
     198        memcpy(nstr2,nstr,(strlen(nstr)+1)*sizeof(char));
     199
    198200        for (i=0; i<strlen(nstr2); i++)
    199201                if ((nstr2[i] == ' ') || (nstr2[i] == '\t'))
  • issm/trunk/src/c/objects/KML/KML_LinearRing.cpp

    r9320 r9336  
    2626        extrude   =false;
    2727        tessellate=false;
    28         strcpy(altmode   ,"clampToGround");
     28        memcpy(altmode,"clampToGround",(strlen("clampToGround")+1)*sizeof(char));
     29
    2930        ncoord    =0;
    3031        coords    =NULL;
     
    195196/*  write header  */
    196197
    197         strcpy(nstr2,nstr);
     198        memcpy(nstr2,nstr,(strlen(nstr)+1)*sizeof(char));
     199
    198200        for (i=0; i<strlen(nstr2); i++)
    199201                if ((nstr2[i] == ' ') || (nstr2[i] == '\t'))
  • issm/trunk/src/c/objects/KML/KML_MultiGeometry.cpp

    r9320 r9336  
    7676/*  loop over the geometry elements for the multigeometry  */
    7777
    78         strcpy(indent2,indent);
     78        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
     79
    7980        strcat(indent2,"  ");
    8081
     
    106107/*  loop over the geometry elements for the multigeometry  */
    107108
    108         strcpy(indent2,indent);
     109        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
     110
    109111        strcat(indent2,"  ");
    110112
  • issm/trunk/src/c/objects/KML/KML_Object.cpp

    r9320 r9336  
    156156        else {
    157157                *pvalue=(char *) xmalloc((strlen(deflt)+1)*sizeof(char));
    158                 strcpy(*pvalue,deflt);
     158                memcpy(*pvalue,deflt,(strlen(deflt)+1)*sizeof(char));
     159
    159160        }
    160161
  • issm/trunk/src/c/objects/KML/KML_Overlay.cpp

    r9320 r9336  
    2424
    2525        strcpy(color     ,"ffffffff");
     26        memcpy(color,"ffffffff",(strlen("ffffffff")+1)*sizeof(char));
     27
    2628        draword   = 0;
    2729        icon      =NULL;
     
    7577        KML_Feature::DeepEcho(indent);
    7678
    77         strcpy(indent2,indent);
     79        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
     80
    7881        strcat(indent2,"  ");
    7982
     
    9699        KML_Feature::Write(filout,indent);
    97100
    98         strcpy(indent2,indent);
     101        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
     102
    99103        strcat(indent2,"  ");
    100104
  • issm/trunk/src/c/objects/KML/KML_Placemark.cpp

    r9320 r9336  
    7676/*  loop over the geometry elements for the placemark  */
    7777
    78         strcpy(indent2,indent);
     78        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
     79
    7980        strcat(indent2,"  ");
    8081
     
    106107/*  loop over the geometry elements for the placemark  */
    107108
    108         strcpy(indent2,indent);
     109        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
     110
    109111        strcat(indent2,"  ");
    110112
  • issm/trunk/src/c/objects/KML/KML_Polygon.cpp

    r9320 r9336  
    2525        extrude   =false;
    2626        tessellate=false;
    27         strcpy(altmode   ,"clampToGround");
     27        memcpy(altmode,"clampToGround",(strlen("clampToGround")+1)*sizeof(char));
     28
    2829        outer     =new DataSet;
    2930        inner     =new DataSet;
     
    9192        _printf_(flag,"%s       altmode: \"%s\"\n"      ,indent,altmode);
    9293
    93         strcpy(indent2,indent);
     94        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
     95
    9496        strcat(indent2,"  ");
    9597
     
    132134        fprintf(filout,"%s  <altitudeMode>%s</altitudeMode>\n",indent,altmode);
    133135
    134         strcpy(indent4,indent);
     136        memcpy(indent4,indent,(strlen(indent)+1)*sizeof(char));
     137
    135138        strcat(indent4,"    ");
    136139
  • issm/trunk/src/c/objects/KML/KML_Style.cpp

    r9320 r9336  
    107107        KML_StyleSelector::DeepEcho(indent);
    108108
    109         strcpy(indent2,indent);
     109        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
     110
    110111        strcat(indent2,"  ");
    111112
     
    150151        KML_StyleSelector::Write(filout,indent);
    151152
    152         strcpy(indent2,indent);
     153        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
     154
    153155        strcat(indent2,"  ");
    154156
  • issm/trunk/src/c/objects/Loads/Friction.cpp

    r9320 r9336  
    3434        this->inputs=inputs_in;
    3535        this->element_type=(char*)xmalloc((strlen(element_type_in)+1)*sizeof(char));
    36         strcpy(this->element_type,element_type_in);
     36        memcpy(this->element_type,element_type_in,(strlen(element_type_in)+1)*sizeof(char));
     37
    3738        this->matpar=matpar_in;
    3839
  • issm/trunk/src/c/objects/Options/OptionCell.cpp

    r9320 r9336  
    7777        Option::DeepEcho(indent);
    7878
    79         strcpy(indent2,indent);
     79        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
    8080        strcat(indent2,"  ");
    8181
  • issm/trunk/src/c/objects/Options/OptionChar.cpp

    r9320 r9336  
    8181        Option::DeepEcho(indent);
    8282
    83         strcpy(indent2,indent);
     83        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
    8484        strcat(indent2,"  ");
    8585
  • issm/trunk/src/c/objects/Options/OptionDouble.cpp

    r9320 r9336  
    7777        Option::DeepEcho(indent);
    7878
    79         strcpy(indent2,indent);
     79        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
    8080        strcat(indent2,"  ");
    8181
  • issm/trunk/src/c/objects/Options/OptionLogical.cpp

    r9320 r9336  
    7777        Option::DeepEcho(indent);
    7878
    79         strcpy(indent2,indent);
     79        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
    8080        strcat(indent2,"  ");
    8181
  • issm/trunk/src/c/objects/Options/OptionStruct.cpp

    r9320 r9336  
    8282        Option::DeepEcho(indent);
    8383
    84         strcpy(indent2,indent);
     84        memcpy(indent2,indent,(strlen(indent)+1)*sizeof(char));
    8585        strcat(indent2,"  ");
    8686
  • issm/trunk/src/c/objects/Params/StringParam.cpp

    r9320 r9336  
    3131        enum_type=in_enum_type;
    3232        value=(char*)xmalloc((strlen(in_value)+1)*sizeof(char));
    33         strcpy(value,in_value);
     33        memcpy(value,in_value,(strlen(in_value)+1)*sizeof(char));
     34
    3435       
    3536}
  • issm/trunk/src/c/shared/String/DescriptorIndex.cpp

    r9320 r9336  
    2929                pch = strtok (NULL, "_");
    3030                if(!pch)_error_("%s%s%s"," scaled descriptor ",descriptor," is not correctly formatted!");
    31                 strcpy(root,pch);
     31                memcpy(root,pch,(strlen(pch)+1)*sizeof(char));
     32
    3233                /*now recover  the index if it exists: */
    3334                pch = strtok (NULL, "_");
     
    4445                pch = strtok (NULL, "_");
    4546                if(!pch)_error_("%s%s%s"," indexed descriptor ",descriptor," is not correctly formatted!");
    46                 strcpy(root,pch);
     47                memcpy(root,pch,(strlen(pch)+1)*sizeof(char));
    4748                /*now recover  the index: */
    4849                pch = strtok (NULL, "_");
     
    5556                pch = strtok (NULL, "_");
    5657                if(!pch)_error_("%s%s%s"," nodal descriptor ",descriptor," is not correctly formatted!");
    57                 strcpy(root,pch);
     58                memcpy(root,pch,(strlen(pch)+1)*sizeof(char));
    5859                /*now recover  the index: */
    5960                pch = strtok (NULL, "_");
     
    6465        else{
    6566                /*We don't have _ in the name, this is a regular variable: */
    66                 strcpy(root,pch);
     67                memcpy(root,pch,(strlen(pch)+1)*sizeof(char));
    6768                *pindex=-1;
    6869                return RegularEnum;
Note: See TracChangeset for help on using the changeset viewer.