I'm sorry but I think I've done almost all you have told me.. what's wrong? I've been correcting every mistake I had, I only have some few silly mistakes in integer and long comparison and things like that, nothing related to recv and send.
Look, this is the server..
Code:lautarox@lautarox-desktop:~/Escritorio/codigo c$ gcc -std=c99 -pedantic -Wall -Werror -Wextra fileserver.c -o fileserver cc1: warnings being treated as errors fileserver.c: En la función ‘passwdcheck’: fileserver.c:38: aviso: comparación entre signed y unsigned fileserver.c: En la función ‘recievefile’: fileserver.c:80: aviso: se sugieren paréntesis alrededor de la asignación usada como valor verdadero fileserver.c:84: aviso: comparación entre signed y unsigned fileserver.c: En la función ‘main’: fileserver.c:170: aviso: el puntero que apunta en el paso del argumento 3 de ‘accept’ difiere en signo // only this worries me, buty the connection is accepted, so.. this says that the pointer that points the third argument of accept differs from sign fileserver.c:120: aviso: variable ‘j’ sin usar