Buenas, llevo ya un par de años sin programar en c y ahora resulta que necesito realizar un trabajo y estoy desde ayer con el mismo problema
La funcion que estoy desarrollando es sencilla en si, su misión es enviar un archivo cualquiera en forma de peticion, así un script en PHP alojado en el servidor, podrá coger el archivo.
El problema lo tengo con los null bytes, al tratarse de archivos binarios (imagenes, ejecutables, etc) estos contienen nullbytes y me cortan la cadena, como primera solución opte por leer el archivo binario poco a poco e id enviandolo por partes, pero el problema, es que send, por lo que estoy observando, realiza tantas peticiones como envios se hagan, entonces, si corto el header para enviar luego el archivo, el servidor no entendera ninguna peticion, ya que estaran todas incompletas.
¿Alguna solucion/alternativa?
"POST %s HTTP/1.1\r\n"
"Host: %s\r\n"
"Content-Type: multipart/form-data; boundary=---------------------------%s\r\n"
"Content-Length: %i\r\n\r\n"
"-----------------------------%s\r\n"
"Content-Disposition: form-data; name=\"%s\"; filename=\"%s\"\r\n"
"Content-Type: %s\r\n\r\n"
"%s"
"\r\n-----------------------------%s\r\n"
Gracias y saludos!