Changeset 114 for trunk


Ignore:
Timestamp:
Feb 12, 2011, 4:14:17 PM (14 years ago)
Author:
djay
Message:

Code cleanup to avoid most of the warning messages at compilation time.

Location:
trunk/zoo-kernel
Files:
10 edited

Legend:

Unmodified
Added
Removed
  • trunk/zoo-kernel/Makefile.in

    r77 r114  
    9393
    9494zoo_service_loader.o: zoo_service_loader.c service.h
    95         g++ -g -O2 -Wall ${XML2CFLAGS} ${CFLAGS} ${PYTHONCFLAGS} ${JAVACFLAGS} ${JSCFLAGS} ${PERLCFLAGS} ${PHPCFLAGS} ${PYTHON_ENABLED} ${JS_ENABLED} ${PHP_ENABLED} ${PERL_ENABLED} ${JAVA_ENABLED} -c zoo_service_loader.c  -fno-common -DPIC -o zoo_service_loader.o
     95        g++ -g -O2 ${XML2CFLAGS} ${CFLAGS} ${PYTHONCFLAGS} ${JAVACFLAGS} ${JSCFLAGS} ${PERLCFLAGS} ${PHPCFLAGS} ${PYTHON_ENABLED} ${JS_ENABLED} ${PHP_ENABLED} ${PERL_ENABLED} ${JAVA_ENABLED} -c zoo_service_loader.c  -fno-common -DPIC -o zoo_service_loader.o
    9696
    9797zoo_loader.cgi: zoo_loader.c zoo_service_loader.o  ulinet.o service.h lex.sr.o service_conf.tab.o service_conf.y ulinet.o main_conf_read.tab.o lex.cr.o service_internal.o ${PYTHON_FILE}   ${PHP_FILE} ${JAVA_FILE} ${JS_FILE} ${PERL_FILE}
    98         g++ -g -O2 -Wall ${JSCFLAGS} ${PHPCFLAGS}  ${PERLCFLAGS}   ${JAVACFLAGS} ${XML2CFLAGS} ${PYTHONCFLAGS} ${CFLAGS} -c zoo_loader.c  -fno-common -DPIC -o zoo_loader.o
     98        g++ -g -O2 ${JSCFLAGS} ${PHPCFLAGS}  ${PERLCFLAGS}   ${JAVACFLAGS} ${XML2CFLAGS} ${PYTHONCFLAGS} ${CFLAGS} -c zoo_loader.c  -fno-common -DPIC -o zoo_loader.o
    9999        g++  ${JSCFLAGS} ${GDAL_CFLAGS} ${XML2CFLAGS} ${PHPCFLAGS} ${PERLCFLAGS} ${JAVACFLAGS} ${PYTHONCFLAGS} ${CFLAGS} zoo_loader.o zoo_service_loader.o service_internal.o ${PYTHON_FILE}  ${PERL_FILE} ${PHP_FILE}  ${JS_FILE} ${JAVA_FILE} ulinet.o lex.cr.o lex.sr.o service_conf.tab.o main_conf_read.tab.o -o zoo_loader.cgi -lcurl -L../thirds/cgic206 -lcgic -lcurl ${GDAL_LIBS} ${XML2LDFLAGS} ${PYTHONLDFLAGS} ${PERLLDFLAGS}  ${PHPLDFLAGS} ${JAVALDFLAGS} ${JSLDFLAGS} -lfcgi -lcrypto ${MACOS_LD_FLAGS}
    100100
  • trunk/zoo-kernel/main_conf_read.y

    r9 r114  
    2525using namespace std;
    2626
    27 extern void crerror(char *s);
     27extern void crerror(const char *s);
    2828
    2929void usage(void) ;
     
    304304/* fonction qui affiche l erreur si il y en a une */
    305305//======================================================
    306 void crerror(char *s)
     306void crerror(const char *s)
    307307{
    308308  if(debug)
     
    314314/* fonction principale : entrée dans le programme */
    315315//======================================================
    316 int conf_read(char* file,maps* my_map){
     316int conf_read(const char* file,maps* my_map){
    317317 
    318318  crin = fopen(file,"r");
  • trunk/zoo-kernel/service.h

    r109 r114  
    5555#define SHMSZ     27
    5656
     57
     58  /**
     59   * \struct map
     60   * \brief KVP linked list
     61   *
     62   * Deal with WPS KVP (name,value).
     63   * A map is defined as:
     64   *  - name : a key,
     65   *  - value: a value,
     66   *  - next : a pointer to the next map if any.
     67   */
     68  typedef struct map{
     69    char* name;
     70    char* value;
     71    struct map* next;
     72  } map;
     73
     74#ifdef WIN32
     75#define NULLMAP ((map*) 0)
     76#else
     77#define NULLMAP NULL
     78#endif
     79
    5780  /**
    5881   * \struct maps
     
    6083   *
    6184   * Small object to store WPS KVP set.
     85   * Maps is defined as:
     86   *  - a name,
     87   *  - a content map,
     88   *  - a pointer to the next maps if any.
    6289   */
    6390  typedef struct maps{
     
    6895
    6996  /**
    70    * \struct map
    71    * \brief KVP linked list
    72    *
    73    * Deal with WPS KVP (name,value).
     97   * \brief Dump a map on stderr
    7498   */
    75   typedef struct map{
    76     char* name;       /* The key */
    77     char* value;      /* The value */
    78     struct map* next; /* Next couple */
    79   } map;
    80 
    81 #ifdef WIN32
    82 #define NULLMAP ((map*) 0)
    83 #else
    84 #define NULLMAP NULL
    85 #endif
    86 
    8799  static void _dumpMap(map* t){
    88100    if(t!=NULL){
     
    181193  }
    182194
    183   static map* getMapFromMaps(maps* m,char* key,char* subkey){
     195  static map* getMapFromMaps(maps* m,const char* key,const char* subkey){
    184196    maps* _tmpm=getMaps(m,key);
    185197    if(_tmpm!=NULL){
     
    224236  }
    225237
     238  /**
     239   * \brief Not named linked list
     240   *
     241   * Used to store informations about formats, such as mimeType, encoding ...
     242   *
     243   * An iotype is defined as :
     244   *  - a content map,
     245   *  - a pointer to the next iotype if any.
     246   */
    226247  typedef struct iotype{
    227248    struct map* content;
     
    229250  } iotype;
    230251
     252  /**
     253   * \brief Metadata information about input or output.
     254   *
     255   * The elements are used to store metadata informations defined in the ZCFG.
     256   *
     257   * An elements is defined as :
     258   *  - a name,
     259   *  - a content map,
     260   *  - a metadata map,
     261   *  - a format (possible values are LiteralData, ComplexData or
     262   * BoundingBoxData),
     263   *  - a default iotype,
     264   *  - a pointer to the next elements id any.
     265   */
    231266  typedef struct elements{
    232267    char* name;
     
    252287  } services;
    253288
    254   static bool hasElement(elements* e,char* key){
     289  static bool hasElement(elements* e,const char* key){
    255290    elements* tmp=e;
    256291    while(tmp!=NULL){
     
    476511
    477512
    478   static void setMapInMaps(maps* m,char* key,char* subkey,char *value){
     513  static void setMapInMaps(maps* m,const char* key,const char* subkey,const char *value){
    479514    maps* _tmpm=getMaps(m,key);
    480515    if(_tmpm!=NULL){
  • trunk/zoo-kernel/service_conf.y

    r104 r114  
    3636static int previous_data=0;
    3737static int current_data=0;
    38 static char* myFinalObjectAsJSON="{";
    3938// namespace
    4039using namespace std;
     
    4241
    4342// srerror
    44 void srerror(char *s);
     43void srerror(const char *s);
    4544//======================================================
    4645
     
    713712/* fonction qui affiche l erreur si il y en a une */
    714713//======================================================
    715 void srerror(char *s)
     714void srerror(const char *s)
    716715{
    717716  if(debug)
     
    724723 * definition file.
    725724 */
    726 int getServiceFromFile(char* file,service** service){
     725int getServiceFromFile(const char* file,service** service){
    727726
    728727  freeMap(&previous_content);
  • trunk/zoo-kernel/service_internal.c

    r94 r114  
    130130        tmpMap=getMapFromMaps(conf,"lenv","status");
    131131        s1=shm;
    132         for(s=tmpMap->value;*s!=NULL;s++)
     132        for(s=tmpMap->value;s!=NULL;s++)
    133133          *s1++=*s;
    134134        shmdt((void *)shm);
     
    216216
    217217
    218 int zooXmlSearchForNs(char* name){
     218int zooXmlSearchForNs(const char* name){
    219219  int i;
    220220  int res=-1;
     
    227227}
    228228
    229 int zooXmlAddNs(xmlNodePtr nr,char* url,char* name){
     229int zooXmlAddNs(xmlNodePtr nr,const char* url,const char* name){
    230230#ifdef DEBUG
    231231  fprintf(stderr,"zooXmlAddNs %d \n",nbNs);
     
    266266}
    267267
    268 xmlNodePtr printGetCapabilitiesHeader(xmlDocPtr doc,char* service,maps* m){
     268xmlNodePtr printGetCapabilitiesHeader(xmlDocPtr doc,const char* service,maps* m){
    269269
    270270  xmlNsPtr ns,ns_ows,ns_xlink,ns_xsi;
     
    618618}
    619619
    620 xmlNodePtr printDescribeProcessHeader(xmlDocPtr doc,char* service,maps* m){
     620xmlNodePtr printDescribeProcessHeader(xmlDocPtr doc,const char* service,maps* m){
    621621
    622622  xmlNsPtr ns,ns_ows,ns_xlink,ns_xsi;
     
    711711}
    712712
    713 void printFullDescription(elements *elem,char* type,xmlNsPtr ns_ows,xmlNodePtr nc1){
     713void printFullDescription(elements *elem,const char* type,xmlNsPtr ns_ows,xmlNodePtr nc1){
    714714  char *orderedFields[7];
    715715  orderedFields[0]="mimeType";
     
    957957}
    958958
    959 void printProcessResponse(maps* m,map* request, int pid,service* serv,char* service,int status,maps* inputs,maps* outputs){
     959void printProcessResponse(maps* m,map* request, int pid,service* serv,const char* service,int status,maps* inputs,maps* outputs){
    960960  xmlNsPtr ns,ns_ows,ns_xlink,ns_xsi;
    961961  xmlNodePtr nr,n,nc,nc1,nc2,nc3,pseudor;
     
    12171217   */
    12181218  xmlDocDumpFormatMemoryEnc(doc, &xmlbuff, &buffersize, encoding, 1);
    1219   printf((char *) xmlbuff);
     1219  printf("%s",xmlbuff);
    12201220  //fflush(stdout);
    12211221  /*
     
    12281228}
    12291229
    1230 void printOutputDefinitions1(xmlDocPtr doc,xmlNodePtr nc,xmlNsPtr ns_wps,xmlNsPtr ns_ows,elements* e,maps* m,char* type){
     1230void printOutputDefinitions1(xmlDocPtr doc,xmlNodePtr nc,xmlNsPtr ns_wps,xmlNsPtr ns_ows,elements* e,maps* m,const char* type){
    12311231  xmlNodePtr nc1;
    12321232  nc1=xmlNewNode(ns_wps, BAD_CAST type);
     
    12601260}
    12611261
    1262 void printOutputDefinitions(xmlDocPtr doc,xmlNodePtr nc,xmlNsPtr ns_wps,xmlNsPtr ns_ows,elements* e,map* m,char* type){
     1262void printOutputDefinitions(xmlDocPtr doc,xmlNodePtr nc,xmlNsPtr ns_wps,xmlNsPtr ns_ows,elements* e,map* m,const char* type){
    12631263  xmlNodePtr nc1,nc2,nc3;
    12641264  nc1=xmlNewNode(ns_wps, BAD_CAST type);
     
    12881288}
    12891289
    1290 void printIOType(xmlDocPtr doc,xmlNodePtr nc,xmlNsPtr ns_wps,xmlNsPtr ns_ows,xmlNsPtr ns_xlink,elements* e,maps* m,char* type){
     1290void printIOType(xmlDocPtr doc,xmlNodePtr nc,xmlNsPtr ns_wps,xmlNsPtr ns_ows,xmlNsPtr ns_xlink,elements* e,maps* m,const char* type){
    12911291  xmlNodePtr nc1,nc2,nc3;
    12921292  nc1=xmlNewNode(ns_wps, BAD_CAST type);
     
    14431443}
    14441444
    1445 void printDescription(xmlNodePtr root,xmlNsPtr ns_ows,char* identifier,map* amap){
     1445void printDescription(xmlNodePtr root,xmlNsPtr ns_ows,const char* identifier,map* amap){
    14461446  xmlNodePtr nc2 = xmlNewNode(ns_ows, BAD_CAST "Identifier");
    14471447  xmlAddChild(nc2,xmlNewText(BAD_CAST identifier));
     
    17081708          freeMap(&errormap);
    17091709          free(errormap);
    1710           return 1;
     1710          return;
    17111711        }
    17121712        char mime[1024];
     
    19721972 * Note : support only 2D bounding box.
    19731973 */
    1974 map* parseBoundingBox(char* value){
     1974map* parseBoundingBox(const char* value){
    19751975  map *res=NULL;
    19761976  if(value!=NULL){
    19771977    char *cv,*cvp;
    1978     cv=strtok_r(value,",",&cvp);
     1978    cv=strtok_r((char*) value,",",&cvp);
    19791979    int cnt=0;
    19801980    int icnt=0;
     
    20892089  xmlDocDumpFormatMemoryEnc(doc, &xmlbuff, &buffersize, encoding, 1);
    20902090  if(file==NULL)
    2091     printf((char *) xmlbuff);
     2091    printf("%s",xmlbuff);
    20922092  else{
    20932093    fprintf(file,"%s",xmlbuff);
  • trunk/zoo-kernel/service_internal.h

    r88 r114  
    5454#include <openssl/buffer.h>
    5555
    56 extern   int getServiceFromFile(char*,service**);
    57 extern   int conf_read(char*,maps*);
     56extern   int getServiceFromFile(const char*,service**);
     57extern   int conf_read(const char*,maps*);
    5858
    5959#ifdef USE_JS
     
    8484  char* getEncoding(maps*);
    8585
    86   int zooXmlSearchForNs(char*);
    87   int zooXmlAddNs(xmlNodePtr,char*,char*);
     86  int zooXmlSearchForNs(const char*);
     87  int zooXmlAddNs(xmlNodePtr,const char*,const char*);
    8888  void zooXmlCleanupNs();
    8989 
    9090  void printExceptionReportResponse(maps*,map*);
    9191  xmlNodePtr createExceptionReportNode(maps*,map*,int);
    92   void printProcessResponse(maps*,map*,int,service*,char*,int,maps*,maps*);
    93   xmlNodePtr printGetCapabilitiesHeader(xmlDocPtr,char*,maps*);
     92  void printProcessResponse(maps*,map*,int,service*,const char*,int,maps*,maps*);
     93  xmlNodePtr printGetCapabilitiesHeader(xmlDocPtr,const char*,maps*);
    9494  void printGetCapabilitiesForProcess(maps*,xmlNodePtr,service*);
    95   xmlNodePtr printDescribeProcessHeader(xmlDocPtr,char*,maps*);
     95  xmlNodePtr printDescribeProcessHeader(xmlDocPtr,const char*,maps*);
    9696  void printDescribeProcessForProcess(maps*,xmlNodePtr,service*,int);
    97   void printFullDescription(elements*,char*,xmlNsPtr,xmlNodePtr);
     97  void printFullDescription(elements*,const char*,xmlNsPtr,xmlNodePtr);
    9898  void printDocument(maps*,xmlDocPtr,int);
    99   void printDescription(xmlNodePtr,xmlNsPtr,char*,map*);
    100   void printIOType(xmlDocPtr,xmlNodePtr,xmlNsPtr,xmlNsPtr,xmlNsPtr,elements*,maps*,char*);
    101   map* parseBoundingBox(char*);
     99  void printDescription(xmlNodePtr,xmlNsPtr,const char*,map*);
     100  void printIOType(xmlDocPtr,xmlNodePtr,xmlNsPtr,xmlNsPtr,xmlNsPtr,elements*,maps*,const char*);
     101  map* parseBoundingBox(const char*);
    102102  void printBoundingBox(xmlNsPtr,xmlNodePtr,map*);
    103103  void printBoundingBoxDocument(maps*,maps*,FILE*);
    104   void printOutputDefinitions1(xmlDocPtr,xmlNodePtr,xmlNsPtr,xmlNsPtr,elements*,maps*,char*);
     104  void printOutputDefinitions1(xmlDocPtr,xmlNodePtr,xmlNsPtr,xmlNsPtr,elements*,maps*,const char*);
    105105 
    106106  void outputResponse(service*,maps*,maps*,map*,int,maps*,int);
  • trunk/zoo-kernel/service_internal_java.c

    r68 r114  
    22 * Author : Gérald FENOY
    33 *
    4  * Copyright (c) 2009-2010 GeoLabs SARL
     4 * Copyright (c) 2009-2011 GeoLabs SARL
    55 *
    66 * Permission is hereby granted, free of charge, to any person obtaining a copy
     
    118118
    119119      pValue=(*env)->CallStaticIntMethod(env,cls,pmid,arg1,arg2,arg3);
    120       if (pValue != NULL){
     120      if (pValue != (jint)NULL){
    121121        res=pValue;
    122122        m=mapsFromHashMap(env,arg1,scHashMapClass);
     
    233233  jobject scObject,scObject1;
    234234  if(scHashMapClass==NULL){
     235#ifdef DEBUG
    235236    fprintf(stderr,"Unable to load java.util.HashMap\n");
     237#endif
    236238    return NULL;
    237239  }
     
    239241  containsKey_mid = (*env)->GetMethodID(env, scHashMapClass, "containsKey", "(Ljava/lang/Object;)Z");
    240242  get_mid = (*env)->GetMethodID(env, scHashMapClass, "get", "(Ljava/lang/Object;)Ljava/lang/Object;");
     243
    241244  if(containsKey_mid==0){
     245#ifdef DEBUG
    242246    fprintf(stderr,"unable to load containsKey from HashMap object (%d) \n",entrySet_mid);
     247#endif
     248    return NULL;
    243249  }
    244250  if(get_mid==0){
     251#ifdef DEBUG
    245252    fprintf(stderr,"unable to load get from HashMap object (%d) \n",entrySet_mid);
     253#endif
     254    return NULL;
    246255  }
    247256  if(entrySet_mid==0){
     257#ifdef DEBUG
    248258    fprintf(stderr,"unable to load entrySet from HashMap object (%d) \n",entrySet_mid);
     259#endif
    249260    return NULL;
    250261  }
     
    296307    if((*env)->CallBooleanMethod(env,imap,containsKey_mid,(*env)->NewStringUTF(env,"size"))){
    297308      jobject sizeV=(*env)->CallObjectMethod(env, imap, get_mid,(*env)->NewStringUTF(env,"size"));
    298       jstring sizeVS=(*env)->GetStringUTFChars(env, sizeV, NULL);
     309      const char* sizeVS=(*env)->GetStringUTFChars(env, sizeV, NULL);
    299310      size=atoi(sizeVS);
    300311      fprintf(stderr,"SIZE : %s\n",sizeVS);
     312      (*env)->ReleaseStringUTFChars(env, sizeV, sizeVS);
    301313    }
    302314   
     
    306318      jobject jv=(*env)->CallObjectMethod(env,tmp1,getValue_mid);
    307319
    308       jstring jkd=(*env)->GetStringUTFChars(env, jk, NULL);
     320      const char* jkd=(*env)->GetStringUTFChars(env, jk, NULL);
    309321      if(size>=0 && strcmp(jkd,"value")==0){
    310         fprintf(stderr,"%s\n",jkd);
    311322        jobject value=(*env)->GetByteArrayElements(env, jv, NULL);
    312323        if(res==NULL){
     
    315326          addToMap(res,jkd,"");
    316327        }
    317         fprintf(stderr,"/%s\n",jkd);
    318328        map* tmpR=getMap(res,"value");
    319329        free(tmpR->value);
     
    321331        memmove(tmpR->value,value,size*sizeof(char));
    322332        tmpR->value[size]=0;
    323         fprintf(stderr,"/%s\n",jkd);
     333        char tmp[128];
     334        sprintf(tmp,"%d",size);
     335        addToMap(res,"size",tmp);
    324336      }
    325337      else{
    326         jstring jvd=(*env)->GetStringUTFChars(env, jv, NULL);
     338        const char* jvd=(*env)->GetStringUTFChars(env, jv, NULL);
    327339        if(res==NULL){
    328340          res=createMap(jkd,jvd);
     
    330342          addToMap(res,jkd,jvd);
    331343        }
    332         (*env)->ReleaseStringChars(env, jv, jvd);
     344        (*env)->ReleaseStringUTFChars(env, jv, jvd);
    333345      }
    334346
     
    337349#endif
    338350
    339       (*env)->ReleaseStringChars(env, jk, jkd);
     351      (*env)->ReleaseStringUTFChars(env, jk, jkd);
    340352
    341353    }
  • trunk/zoo-kernel/service_internal_python.c

    r108 r114  
    8686  }
    8787  pModule = PyImport_Import(pName);
    88   int i;
    8988  int res=SERVICE_FAILED;
    90   int cpid=getpid();
    9189  if (pModule != NULL) {
    9290    pFunc=PyObject_GetAttrString(pModule,s->name);
    9391    if (pFunc && PyCallable_Check(pFunc)){
     92      PyObject *pValue;
    9493      PyDictObject* arg1=PyDict_FromMaps(m);
    9594      PyDictObject* arg2=PyDict_FromMaps(inputs);
    9695      PyDictObject* arg3=PyDict_FromMaps(outputs);
    9796      PyObject *pArgs=PyTuple_New(3);
    98       PyObject *pValue;
     97      if (!pArgs)
     98        return -1;
    9999      PyTuple_SetItem(pArgs, 0, (PyObject *)arg1);
    100100      PyTuple_SetItem(pArgs, 1, (PyObject *)arg2);
     
    130130        PyErr_Fetch(&ptype, &pvalue, &ptraceback);
    131131        PyObject *trace=PyObject_Str(pvalue);
    132         char tb[1024];
    133132        char pbt[10240];
    134133        if(PyString_Check(trace))
     
    145144        else
    146145          fprintf(stderr,"EMPTY TRACE ?");
    147         PyObject *t;
    148146        pName = PyString_FromString("traceback");
    149147        pModule = PyImport_Import(pName);
     
    302300  int nb=PyList_Size(list);
    303301  int i;
    304   int sizeValue=-1;
    305302  for(i=0;i<nb;i++){
    306303    PyObject* key=PyList_GetItem(list,i);
  • trunk/zoo-kernel/zoo_loader.c

    r99 r114  
    4545}
    4646
    47 xmlXPathObjectPtr extractFromDoc(xmlDocPtr,char*);
     47xmlXPathObjectPtr extractFromDoc(xmlDocPtr,const char*);
    4848int runRequest(map*);
    4949
     
    192192        addToMap(tmpMap,"language",tval);
    193193     
    194       char* requests[3];
     194      const char* requests[3];
    195195      requests[0]="GetCapabilities";
    196196      requests[1]="DescribeProcess";
     
    206206#endif
    207207          if(req!=NULL && req->nodeNr==1){
    208             t1->value=requests[j];
     208            t1->value=strdup(requests[j]);
    209209            j=2;
    210210          }
  • trunk/zoo-kernel/zoo_service_loader.c

    r109 r114  
    9494}
    9595
    96 xmlXPathObjectPtr extractFromDoc(xmlDocPtr doc,char* search){
     96xmlXPathObjectPtr extractFromDoc(xmlDocPtr doc,const char* search){
    9797  xmlXPathContextPtr xpathCtx;
    9898  xmlXPathObjectPtr xpathObj;
     
    110110void sig_handler(int sig){
    111111  char tmp[100];
    112   char *ssig;
     112  const char *ssig;
    113113  switch(sig){
    114114  case SIGSEGV:
     
    153153  map* r_inputs=NULL;
    154154#ifndef WIN32
    155   getcwd(ntmp,1024);
     155  char* pntmp=getcwd(ntmp,1024);
    156156#else
    157157  _getcwd(ntmp,1024);
     
    360360#endif
    361361
    362   map* r_inputs=NULL,*tmps=NULL;
     362  map* r_inputs=NULL;
    363363  maps* m=NULL;
    364   int argc=count(request_inputs);
    365364
    366365  char* REQUEST=NULL;
     
    374373  char ntmp[1024];
    375374#ifndef WIN32
    376   getcwd(ntmp,1024);
     375  char *pntmp=getcwd(ntmp,1024);
    377376#else
    378377  _getcwd(ntmp,1024);
     
    470469  }
    471470
    472   map* outputs=NULL;
    473471  maps* request_output_real_format=NULL;
    474472  map* tmpm=getMapFromMaps(m,"main","serverAddress");
     
    478476    SERVICE_URL=strdup(DEFAULT_SERVICE_URL);
    479477
    480   service* s[100];
    481478  service* s1;
    482479  int scount=0;
     
    497494
    498495  if(strncasecmp(REQUEST,"GetCapabilities",15)==0){
    499     int i=0;
    500496    struct dirent *dp;
    501497#ifdef DEBUG
     
    510506    r_inputs=getMap(request_inputs,"ServiceProvider");
    511507    xmlNodePtr n;
    512     //dumpMap(request_inputs);
    513508    if(r_inputs!=NULL)
    514509      n = printGetCapabilitiesHeader(doc,r_inputs->value,m);
     
    595590      char buff[256];
    596591      char buff1[1024];
    597       int i=0;
    598       int j=0;
    599       int end=-1;
    600592      int saved_stdout = dup(fileno(stdout));
    601593      dup2(fileno(stderr),fileno(stdout));
     
    611603            memset(buff1,0,1024);
    612604            snprintf(buff1,1024,"%s/%s",conf_dir,dp->d_name);
    613             //s1=(service*)malloc(sizeof(service*));
    614605            s1=(service*)calloc(1,SERVICE_SIZE);
    615606            if(s1 == NULL){
     
    640631      free(SERVICE_URL);
    641632      fflush(stdout);
    642       //xmlFree(n);
    643633#ifndef LINUX_FREE_ISSUE
    644634      if(s1)
     
    654644#endif 
    655645        closedir(dirp);
    656         free(s);
    657646        return 0;
    658647      }
     
    703692  dumpService(s1);
    704693#endif
    705   map* inputs=NULL;
    706   elements* c_inputs=s1->inputs;
    707694  int j;
    708695 
     
    747734      fprintf(stderr,"OUTPUT Parsing start now ... \n");
    748735#endif
    749       char current_output_as_string[10240];
    750736      char cursor_output[10240];
    751737      char *cotmp=strdup(r_inputs->value);
     
    753739      free(cotmp);
    754740      j=0;
    755       map* request_kvp_outputs=NULL;
    756741       
    757742      /**
     
    834819        fflush(stderr);
    835820#endif
    836         //tmp_output=tmp_output->next;
    837821        free(tmp);
    838822      }
     
    848832    fprintf(stderr,"DATA INPUTS [%s]\n",r_inputs->value);
    849833#endif
    850     char current_input_as_string[40960];
    851834    char cursor_input[40960];
    852835    if(r_inputs!=NULL)
     
    864847    }
    865848    j=0;
    866     map* request_kvp_inputs=NULL;
    867849 
    868850    /**
     
    907889        strncpy(tmpn,tmpc,(strlen(tmpc)-strlen(tmpv))*sizeof(char));
    908890        tmpn[strlen(tmpc)-strlen(tmpv)]=0;
    909         int cnt=0;
    910891#ifdef DEBUG
    911892        fprintf(stderr,"***\n*** %s = %s ***\n",tmpn,tmpv+1);
     
    1010991    fflush(stderr);
    1011992#endif
    1012     xmlNodePtr cur = xmlDocGetRootElement(doc);
    1013993    /**
    1014994     * Parse every Input in DataInputs node.
    1015995     */
    1016     maps* tempMaps=NULL;
    1017996    xmlXPathObjectPtr tmpsptr=extractFromDoc(doc,"/*/*/*[local-name()='Input']");
    1018997    xmlNodeSet* tmps=tmpsptr->nodesetval;
     
    10641043                return errorException(m, _("Unable to allocate memory."), "InternalError");
    10651044              }
    1066               tmpmaps->name="missingIndetifier";
     1045              tmpmaps->name=strdup("missingIndetifier");
    10671046              tmpmaps->content=createMap((char*)cur2->name,(char*)val);
    10681047              tmpmaps->next=NULL;
     
    10931072            fprintf(stderr,"REFERENCE\n");
    10941073#endif
    1095             map* referenceMap=NULL;
    1096             char *refs[5];
     1074            const char *refs[5];
    10971075            refs[0]="mimeType";
    10981076            refs[1]="encoding";
     
    11001078            refs[3]="method";
    11011079            refs[4]="href";
    1102             char*url;
    11031080            for(int l=0;l<5;l++){
    11041081#ifdef DEBUG
     
    11421119            while(cur3){
    11431120              if(xmlStrcasecmp(cur3->name,BAD_CAST "Header")==0 ){
    1144                 xmlNodePtr cur4=cur3;
    1145                 char *tmp=new char[cgiContentLength];
    1146                 char *ha[2];
     1121                const char *ha[2];
    11471122                ha[0]="key";
    11481123                ha[1]="value";
     
    11701145                }
    11711146                hInternet.header=curl_slist_append(hInternet.header, has);
    1172                 //free(has);
     1147                free(has);
    11731148              }
    11741149              else{
     
    13021277                 * dataType , uom
    13031278                 */
    1304                 char *lits[2];
    1305                 lits[0]="dataType";
    1306                 lits[1]="uom";
     1279                char *list[2];
     1280                list[0]=strdup("dataType");
     1281                list[1]=strdup("uom");
    13071282                for(int l=0;l<2;l++){
    13081283#ifdef DEBUG
    1309                   fprintf(stderr,"*** LiteralData %s ***",lits[l]);
    1310 #endif
    1311                   xmlChar *val=xmlGetProp(cur4,BAD_CAST lits[l]);
     1284                  fprintf(stderr,"*** LiteralData %s ***",list[l]);
     1285#endif
     1286                  xmlChar *val=xmlGetProp(cur4,BAD_CAST list[l]);
    13121287                  if(val!=NULL && strlen((char*)val)>0){
    13131288                    if(tmpmaps->content!=NULL)
    1314                       addToMap(tmpmaps->content,lits[l],(char*)val);
     1289                      addToMap(tmpmaps->content,list[l],(char*)val);
    13151290                    else
    1316                       tmpmaps->content=createMap(lits[l],(char*)val);
     1291                      tmpmaps->content=createMap(list[l],(char*)val);
    13171292                  }
    13181293#ifdef DEBUG
     
    13201295#endif
    13211296                  xmlFree(val);
     1297                  free(list[l]);
    13221298                }
    13231299              }
     
    13271303                 * mimeType, encoding, schema
    13281304                 */
    1329                 char *coms[3];
     1305                const char *coms[3];
    13301306                coms[0]="mimeType";
    13311307                coms[1]="encoding";
     
    13681344                char *res=NULL;
    13691345                char *curs=tmpv->value;
    1370                 int i=0;
    13711346                for(int i=0;i<=strlen(tmpv->value)/64;i++) {
    13721347                  if(res==NULL)
     
    14211396#endif
    14221397    xmlXPathFreeObject(tmpsptr);
    1423     //xmlFree(tmps);
    14241398   
    14251399    tmpsptr=extractFromDoc(doc,"/*/*/*[local-name()='ResponseDocument']");
     
    14391413      else
    14401414        addToMap(request_inputs,"ResponseDocument","");
    1441       request_output_real_format;
    14421415      maps *tmpmaps=NULL;
    14431416      xmlNodePtr cur=tmps->nodeTab[k];
     
    14511424            return errorException(m, _("Unable to allocate memory."), "InternalError");
    14521425          }
    1453           tmpmaps->name="unknownIdentifier";
     1426          tmpmaps->name=strdup("unknownIdentifier");
    14541427          tmpmaps->next=NULL;
    14551428        }
     
    14581431         * storeExecuteResponse, lineage, status
    14591432         */
    1460         char *ress[3];
     1433        const char *ress[3];
    14611434        ress[0]="storeExecuteResponse";
    14621435        ress[1]="lineage";
     
    14871460             * mimeType, encoding, schema, uom, asReference
    14881461             */
    1489             char *outs[5];
     1462            const char *outs[5];
    14901463            outs[0]="mimeType";
    14911464            outs[1]="encoding";
     
    15431516                    return errorException(m, _("Unable to allocate memory."), "InternalError");
    15441517                  }
    1545                   tmpmaps->name="missingIndetifier";
     1518                  tmpmaps->name=strdup("missingIndetifier");
    15461519                  tmpmaps->content=createMap((char*)cur2->name,(char*)val);
    15471520                  tmpmaps->next=NULL;
     
    15631536        }
    15641537      }
    1565       //xmlFree(cur);
    15661538      if(request_output_real_format==NULL)
    15671539        request_output_real_format=dupMaps(&tmpmaps);
     
    15761548
    15771549    xmlXPathFreeObject(tmpsptr);
    1578     //xmlFree(tmps);
    15791550    xmlCleanupParser();
    15801551  }
Note: See TracChangeset for help on using the changeset viewer.

Search

Context Navigation

ZOO Sponsors

http://www.zoo-project.org/trac/chrome/site/img/geolabs-logo.pnghttp://www.zoo-project.org/trac/chrome/site/img/neogeo-logo.png http://www.zoo-project.org/trac/chrome/site/img/apptech-logo.png http://www.zoo-project.org/trac/chrome/site/img/3liz-logo.png http://www.zoo-project.org/trac/chrome/site/img/gateway-logo.png

Become a sponsor !

Knowledge partners

http://www.zoo-project.org/trac/chrome/site/img/ocu-logo.png http://www.zoo-project.org/trac/chrome/site/img/gucas-logo.png http://www.zoo-project.org/trac/chrome/site/img/polimi-logo.png http://www.zoo-project.org/trac/chrome/site/img/fem-logo.png http://www.zoo-project.org/trac/chrome/site/img/supsi-logo.png http://www.zoo-project.org/trac/chrome/site/img/cumtb-logo.png

Become a knowledge partner

Related links

http://zoo-project.org/img/ogclogo.png http://zoo-project.org/img/osgeologo.png