--- rpl/src/instructions_r4.c 2010/03/08 16:44:10 1.8 +++ rpl/src/instructions_r4.c 2010/08/26 19:07:40 1.24 @@ -1,6 +1,6 @@ /* ================================================================================ - RPL/2 (R) version 4.0.12 + RPL/2 (R) version 4.0.19 Copyright (C) 1989-2010 Dr. BERTRAND Joël This file is part of RPL/2. @@ -20,7 +20,7 @@ */ -#include "rpl.conv.h" +#include "rpl-conv.h" /* @@ -874,7 +874,9 @@ instruction_read(struct_processus *s_eta struct sockaddr_un adresse_unix; struct sockaddr_in adresse_ipv4; +# ifdef IPV6 struct sockaddr_in6 adresse_ipv6; +# endif struct timespec attente; @@ -1301,7 +1303,6 @@ instruction_read(struct_processus *s_eta (*s_etat_processus).erreur_systeme = d_es_erreur_fichier; return; } - switch(sqlite3_step(ppStmt)) { @@ -1801,6 +1802,7 @@ instruction_read(struct_processus *s_eta } l_element_courant = NULL; + l_element_inclus = NULL; for(element--; element > 0; element--) { @@ -1913,11 +1915,19 @@ instruction_read(struct_processus *s_eta return; } +# ifndef SEMAPHORES_NOMMES if (sem_post(&((*s_etat_processus).semaphore_fork)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; } +# else + if (sem_post((*s_etat_processus).semaphore_fork) != 0) + { + (*s_etat_processus).erreur_systeme = d_es_processus; + return; + } +# endif for(;;) { @@ -1944,20 +1954,38 @@ instruction_read(struct_processus *s_eta else if ((*((struct_socket *) (*s_objet_argument_1).objet)) .domaine == PF_INET6) { +# ifdef IPV6 longueur_adresse = sizeof(adresse_ipv6); longueur_effective = recvfrom((*((struct_socket *) (*s_objet_argument_1).objet)).socket, tampon_lecture, longueur_questure, MSG_PEEK | MSG_DONTWAIT, (struct sockaddr *) &adresse_ipv6, &longueur_adresse); +# else + if ((*s_etat_processus).langue == 'F') + { + printf("+++Attention : Support du protocole" + " IPv6 indisponible\n"); + } + else + { + printf("+++Warning : IPv6 support " + "unavailable\n"); + } +# endif } else { free(tampon_lecture); liberation(s_etat_processus, s_objet_argument_1); +# ifndef SEMAPHORES_NOMMES while(sem_wait(&((*s_etat_processus) .semaphore_fork)) == -1) +# else + while(sem_wait((*s_etat_processus) + .semaphore_fork) == -1) +# endif { if (errno != EINTR) { @@ -1985,8 +2013,11 @@ instruction_read(struct_processus *s_eta } } - while(sem_wait(&((*s_etat_processus).semaphore_fork)) - == -1) +# ifndef SEMAPHORES_NOMMES + while(sem_wait(&((*s_etat_processus).semaphore_fork)) == -1) +# else + while(sem_wait((*s_etat_processus).semaphore_fork) == -1) +# endif { if (errno != EINTR) { @@ -2273,6 +2304,7 @@ instruction_read(struct_processus *s_eta else if ((*((struct_socket *) (*s_objet_argument_1).objet)) .domaine == PF_INET6) { +# ifdef IPV6 longueur_adresse = sizeof(adresse_ipv6); recvfrom((*((struct_socket *) (*s_objet_argument_1).objet)).socket, tampon_lecture, @@ -2339,6 +2371,18 @@ instruction_read(struct_processus *s_eta (*(*((struct_liste_chainee *) (*s_objet_adresse).objet)) .suivant).suivant = NULL; +# else + if ((*s_etat_processus).langue == 'F') + { + printf("+++Attention : Support du protocole" + " IPv6 indisponible\n"); + } + else + { + printf("+++Warning : IPv6 support " + "unavailable\n"); + } +# endif } else {