version 1.28.2.3, 2011/04/17 14:01:23
|
version 1.39, 2011/07/25 07:44:58
|
Line 1
|
Line 1
|
/* |
/* |
================================================================================ |
================================================================================ |
RPL/2 (R) version 4.0.23 |
RPL/2 (R) version 4.1.2 |
Copyright (C) 1989-2011 Dr. BERTRAND Joël |
Copyright (C) 1989-2011 Dr. BERTRAND Joël |
|
|
This file is part of RPL/2. |
This file is part of RPL/2. |
Line 2034 instruction_read(struct_processus *s_eta
|
Line 2034 instruction_read(struct_processus *s_eta
|
} |
} |
} |
} |
|
|
printf("<1>\n"); |
|
if ((*((struct_socket *) (*s_objet_argument_1).objet)).binaire == 'N') |
if ((*((struct_socket *) (*s_objet_argument_1).objet)).binaire == 'N') |
{ // Socket formatée |
{ // Socket formatée |
longueur_questure = 256; |
longueur_questure = 256; |
printf("<2>\n"); |
|
|
|
do |
do |
{ |
{ |
Line 2099 printf("<2>\n");
|
Line 2097 printf("<2>\n");
|
tampon_lecture, longueur_questure, |
tampon_lecture, longueur_questure, |
MSG_PEEK | MSG_DONTWAIT, (struct sockaddr *) |
MSG_PEEK | MSG_DONTWAIT, (struct sockaddr *) |
&adresse_ipv6, &longueur_adresse); |
&adresse_ipv6, &longueur_adresse); |
|
|
# else |
# else |
if ((*s_etat_processus).langue == 'F') |
if ((*s_etat_processus).langue == 'F') |
{ |
{ |
Line 2138 printf("<2>\n");
|
Line 2137 printf("<2>\n");
|
return; |
return; |
} |
} |
|
|
if (longueur_effective <= 0) |
if (longueur_effective < 0) |
{ |
{ |
nanosleep(&attente, NULL); |
nanosleep(&attente, NULL); |
INCR_GRANULARITE(attente.tv_nsec); |
INCR_GRANULARITE(attente.tv_nsec); |
scrutation_injection(s_etat_processus); |
scrutation_injection(s_etat_processus); |
} |
} |
|
|
|
// Une donnée a été reçue. |
|
|
if (((*s_etat_processus).var_volatile_requete_arret == -1) |
if (((*s_etat_processus).var_volatile_requete_arret == -1) |
|| (longueur_effective > 0)) |
|| (longueur_effective >= 0)) |
{ |
{ |
break; |
break; |
} |
} |
Line 2358 printf("<2>\n");
|
Line 2359 printf("<2>\n");
|
(*s_objet_argument_1).objet)).socket, tampon_lecture, |
(*s_objet_argument_1).objet)).socket, tampon_lecture, |
longueur_effective, MSG_DONTWAIT, |
longueur_effective, MSG_DONTWAIT, |
NULL, &longueur_adresse); |
NULL, &longueur_adresse); |
printf("<%s>\n", tampon_lecture); |
|
|
|
(*s_objet_adresse).objet = NULL; |
(*s_objet_adresse).objet = NULL; |
} |
} |