> Estoy pasando mensajes entre el cliente al servidor con las funciones
> send() y recv().
> si tengo en buffer_c una capacidad de 256, como podria hacer algo como
> por el estilo
>
> Es decir, por defecto esta en 256, pero no quiero enviar mas de 50,-
> if (buffer_c > 50) {
>
> printf("No se puede enviar mas de 50 al servidor");
> return 1;
> }
>
>
> esto es lo que estoy implementando
>
> char buffer_c[256];
>
> while(1)
> {
>
> printf("Mensaje para enviar al servidor -> ");
> fgets(buffer_c, sizeof(buffer_c), stdin);
>
> n = send(sockfd, buffer_c, strlen(buffer_c), 0);
>
> if (n <= 0) {
> printf("error en write()");
> close(sockfd);
> exit(-1);
> }
>
> printf("Message Ok\n");
>
>
> }
Me autorespondo, hice algo para limitar el envio de buffer (como
datastring), pero igualemente habria que mejorarlo y por sobre todo
que lo mande si la cantidad sobrepasa los 256,-
#define MAX_BUFFER 256
#define MIN_BUFFER 50
int messaje;
messaje = write(sockfd, buffer_c, strlen(buffer_c));
if (messaje <= 0) {
printf("error en write()");
close(sockfd);
exit(-1);
}
if ((messaje < MAX_BUFFER) && (messaje >
MIN_BUFFER)) {
printf("Trata de no enviar mensajes
largos\n");
}
if (messaje > MAX_BUFFER) {
printf("Imposible mandar mensajes
extensos .....\n");
close(sockfd);
exit(-1);
}
else
printf("Mensaje Ok- Longitud del mensaje %d\n", messaje);
}
--
/* Leonardo Rios
* rios[dot]lj[at]gmail[dot]com
*/
--
/* Leonardo Rios
* rios[dot]lj[at]gmail[dot]com
*/
_______________________________________________
Lista de correo Programacion.
[email protected]
http://listas.fi.uba.ar/mailman/listinfo/programacion