Index: trunk/zoo-project/zoo-kernel/makefile.vc
===================================================================
--- trunk/zoo-project/zoo-kernel/makefile.vc	(revision 475)
+++ trunk/zoo-project/zoo-kernel/makefile.vc	(revision 476)
@@ -68,12 +68,9 @@
 	$(CPP) /EHsc /c $(CFLAGS) zoo_loader.c
 
-dirent.obj:
-	$(CPP) /EHsc /c $(CFLAGS) ..\..\thirds\dirent-win32\dirent.c
+zoo_loader.cgi: version.h zoo_loader.obj zoo_service_loader.obj service_internal.obj $(PY_FILE) $(JAVA_FILE) $(MS_FILE) $(JS_FILE) $(RUBY_FILE) ulinet.obj lex.cr.obj lex.sr.obj service_conf.tab.obj main_conf_read.tab.obj
+	link zoo_loader.obj service_internal.obj $(PY_FILE) $(JAVA_FILE) $(MS_FILE) $(JS_FILE) $(RUBY_FILE) ulinet.obj main_conf_read.tab.obj lex.cr.obj service_conf.tab.obj lex.sr.obj  zoo_service_loader.obj /out:zoo_loader.cgi $(LDFLAGS) $(LDFLAGSCGI)
 
-zoo_loader.cgi: version.h zoo_loader.obj zoo_service_loader.obj service_internal.obj $(PY_FILE) $(JAVA_FILE) $(MS_FILE) $(JS_FILE) $(RUBY_FILE) ulinet.obj lex.cr.obj lex.sr.obj service_conf.tab.obj main_conf_read.tab.obj dirent.obj
-	link zoo_loader.obj dirent.obj service_internal.obj $(PY_FILE) $(JAVA_FILE) $(MS_FILE) $(JS_FILE) $(RUBY_FILE) ulinet.obj main_conf_read.tab.obj lex.cr.obj service_conf.tab.obj lex.sr.obj  zoo_service_loader.obj /out:zoo_loader.cgi $(LDFLAGS) $(LDFLAGSCGI)
-
-zcfg2yaml.exe: version.h zcfg2yaml.obj zoo_service_loader.obj service_internal.obj $(PY_FILE) $(JAVA_FILE) $(MS_FILE) $(JS_FILE) $(RUBY_FILE) ulinet.obj lex.cr.obj lex.sr.obj service_conf.tab.obj main_conf_read.tab.obj dirent.obj
-	link zcfg2yaml.obj dirent.obj service_internal.obj $(PY_FILE) $(JAVA_FILE) $(MS_FILE) $(JS_FILE) $(RUBY_FILE) ulinet.obj main_conf_read.tab.obj lex.cr.obj service_conf.tab.obj lex.sr.obj /out:zcfg2yaml.exe $(LDFLAGS) $(LDFLAGSCGI)
+zcfg2yaml.exe: version.h zcfg2yaml.obj zoo_service_loader.obj service_internal.obj $(PY_FILE) $(JAVA_FILE) $(MS_FILE) $(JS_FILE) $(RUBY_FILE) ulinet.obj lex.cr.obj lex.sr.obj service_conf.tab.obj main_conf_read.tab.obj
+	link zcfg2yaml.obj service_internal.obj $(PY_FILE) $(JAVA_FILE) $(MS_FILE) $(JS_FILE) $(RUBY_FILE) ulinet.obj main_conf_read.tab.obj lex.cr.obj service_conf.tab.obj lex.sr.obj /out:zcfg2yaml.exe $(LDFLAGS) $(LDFLAGSCGI)
 
 clean:
Index: trunk/zoo-project/zoo-kernel/service_conf.l
===================================================================
--- trunk/zoo-project/zoo-kernel/service_conf.l	(revision 475)
+++ trunk/zoo-project/zoo-kernel/service_conf.l	(revision 476)
@@ -118,5 +118,5 @@
 
 
-<INITIAL,DANSBALISE,HORSBALISE>.|\n	{lmsg=(char*)malloc(1024*sizeof(char));sprintf(lmsg,"error: line %d: character not allowed '%s'",srlineno,yytext);fprintf(stderr,"%s \n",lmsg);srlval.chaine=lmsg;return -1;}
+<INITIAL,DANSBALISE,HORSBALISE>.|\n	{lmsg=(char*)malloc(1024*sizeof(char));sprintf(lmsg,"error: line %d: character not allowed '%s'",srlineno,yytext);fprintf(stderr,"%s \n",lmsg);srlval.chaine=lmsg;fprintf(stderr,"%s \n",lmsg);return -1;}
 
 %%
Index: trunk/zoo-project/zoo-kernel/service_conf.y
===================================================================
--- trunk/zoo-project/zoo-kernel/service_conf.y	(revision 475)
+++ trunk/zoo-project/zoo-kernel/service_conf.y	(revision 476)
@@ -807,5 +807,6 @@
 
   int resultatYYParse = srparse() ;
-  
+  fprintf(stderr,"%s %d %d\n",__FILE__,__LINE__,resultatYYParse);
+
 #ifdef DEBUG_SERVICE_CONF
   fprintf(stderr,"RESULT: %d %d\n",resultatYYParse,wait_outputs);
@@ -825,4 +826,5 @@
       addToElements(&my_service->outputs,current_element);
     }
+  fprintf(stderr,"%s %d\n",__FILE__,__LINE__);
 #ifdef DEBUG_SERVICE_CONF
     fprintf(stderr,"(DATAOUTPUTS - %d) FREE current_element\n",__LINE__);
@@ -835,4 +837,5 @@
 #endif
   }
+  fprintf(stderr,"%s %d\n",__FILE__,__LINE__);
   if(current_element!=NULL){
     freeElements(&current_element);
@@ -840,4 +843,5 @@
     current_element=NULL;
   }
+  fprintf(stderr,"%s %d\n",__FILE__,__LINE__);
   if(current_content!=NULL){
     freeMap(&current_content);
@@ -845,4 +849,5 @@
     current_content=NULL;
   }
+  fprintf(stderr,"%s %d\n",__FILE__,__LINE__);
   fclose(srin);
 #ifdef DEBUG_SERVICE_CONF
@@ -850,5 +855,7 @@
 #endif
   if(wait_outputs<0 || my_service==NULL || my_service->name==NULL || my_service->content==NULL || my_service->outputs==NULL){
+    fprintf(stderr,"%s %d\n",__FILE__,__LINE__);
     setMapInMaps(conf,"lenv","message",srlval.chaine);
+    dumpMaps(conf);
 #ifndef WIN32
     srlex_destroy();
@@ -858,4 +865,6 @@
   else
     *service=my_service;
+  dumpService(my_service);
+  fprintf(stderr,"%s %d\n",__FILE__,__LINE__);
 
 #ifndef WIN32
Index: trunk/zoo-project/zoo-kernel/service_internal.c
===================================================================
--- trunk/zoo-project/zoo-kernel/service_internal.c	(revision 475)
+++ trunk/zoo-project/zoo-kernel/service_internal.c	(revision 476)
@@ -68,4 +68,5 @@
 
 #include <windows.h>
+#include <fcgi_stdio.h>
 #include <stdio.h>
 #include <conio.h>
@@ -1154,12 +1155,22 @@
 	    xmlAddChild(nc6,nc8);
 	    _tmp0=e->supported;
-	    tmp1=_tmp0->content;
-	    goto doRange;
+	    if(getMap(_tmp0->content,"range")!=NULL ||
+	       getMap(_tmp0->content,"rangeMin")!=NULL ||
+	       getMap(_tmp0->content,"rangeMax")!=NULL ||
+	       getMap(_tmp0->content,"rangeClosure")!=NULL ){
+	      tmp1=_tmp0->content;
+	      goto doRange;
+	    }
 	  }else{
 	    _tmp0=_tmp0->next;
 	    if(_tmp0!=NULL){
 	      xmlAddChild(nc6,nc8);
-	      tmp1=_tmp0->content;
-	      goto doRange;
+	      if(getMap(_tmp0->content,"range")!=NULL ||
+		 getMap(_tmp0->content,"rangeMin")!=NULL ||
+		 getMap(_tmp0->content,"rangeMax")!=NULL ||
+		 getMap(_tmp0->content,"rangeClosure")!=NULL ){
+		tmp1=_tmp0->content;
+		goto doRange;
+	      }
 	    }
 	  }
Index: trunk/zoo-project/zoo-kernel/service_internal.h
===================================================================
--- trunk/zoo-project/zoo-kernel/service_internal.h	(revision 475)
+++ trunk/zoo-project/zoo-kernel/service_internal.h	(revision 476)
@@ -31,5 +31,5 @@
 #define TIME_SIZE 40
 
-#include "fcgi_stdio.h"
+#include "cgic.h"
 #include <libintl.h>
 #include <locale.h>
@@ -39,5 +39,4 @@
 #include <sys/stat.h>
 #include <sys/types.h>
-#include "cgic.h"
 #ifndef WIN32
 #include <sys/ipc.h>
