elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


  Mostrar Mensajes
Páginas: 1 ... 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 [73] 74 75 76 77
721  Programación / Programación C/C++ / Devolver cadena con función en: 5 Agosto 2014, 22:39 pm
Bueno este tema es un clásico, pero no consigo devolver la cadena o no la muestra haber si sabéis algo:

Código:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

char* crenombre();

int main()
{
    char *nombre=NULL;
    nombre=creanombre();
    printf(":%s.",nombre);
}

char* creanombre()
{
    int i;
    char nombre[100];
    srand(time(NULL));
    for(i=0;i<13;i++)
    {
        nombre[i]=(48+rand()%(57-48)+1);
    }
    return nombre;
}


El programa no muestra el nombre en el prinf que puede fallar? Gracias.
722  Programación / Programación C/C++ / Re: Ayuda envío archivo a web con C vía http en: 30 Julio 2014, 16:08 pm
Curioso, entonces como propones enviar el archivo a la vez que lo lees sin guardar lo que lees en variables. Es decir yo solo se subir variables con POST, para subir un archivo tendría que subir o una variable cargadísima con todo su contenido, o bien varias con poco contenido, pero haciendo varios POST, es eso correcto? Si a lo que te referias no es a ninguna de las 2 anteriores me gustaría conocer tu idea.
723  Programación / Programación C/C++ / Re: Ayuda envío archivo a web con C vía http en: 30 Julio 2014, 12:19 pm
XD te refieres en guardar el archivo entero en una cadena y enviarla como variable al servidor? Si el archivo es grande funcionará?, si es así perfecto  ;-)
724  Programación / Programación C/C++ / Re: Ayuda envío archivo a web con C vía http en: 30 Julio 2014, 12:02 pm
Supongo que esto debería funcionar:

Código:
archivo=fopen("archivito.txt","rt");
        while (fgets(cod, 100, archivo) != NULL)
        {
            strcpy(ced,"");
            strcat(ced,"nombre=archivo&contenido=");
            strcat(ced,cod);
            len=strlen(ced);
            itoa(len,cad,10);
            strcpy(buffer,"POST /script.php HTTP/1.0\r\n");
            strcat(buffer,"Host: mipagina.com\r\n");
            strcat(buffer,"Content-type: application/x-www-form-urlencoded\r\n");
            strcat(buffer,"Content-length: ");
            strcat(buffer,cad);
            strcat(buffer,"\r\n\r\n");
            strcat(buffer,ced);
            printf("%s\n",buffer);
       
            if(connect(sock,(struct sockaddr*)&direccion,sizeof(direccion))==-1)
            {
                printf("\nError al conectar.\n");
                exit(0);
            }
            printf("\nConectado correctamente.\n");

            if((send(sock,buffer,strlen(buffer),0))==-1)
            {
                printf("Error Send.\n");
                exit(0);
            }
        }

Que vaya enviando POST con el contenido del archivo hasta que se acabe, aunque no se como funciona pues no me va a mi el programa, lo que le falta es control de errores, puede que falle un POST en algún momento, y no se tiene en cuenta, por lo demás bien.
725  Programación / Programación C/C++ / Re: Ayuda envío archivo a web con C vía http en: 29 Julio 2014, 22:10 pm
Y para subirlo lo guardo todo el archivo en una cadena y hago el POST si es que es viable, o como es eso de abrir el archivo en stream?, soy muy pesado lo se xD.
726  Programación / Programación C/C++ / Re: Ayuda envío archivo a web con C vía http en: 29 Julio 2014, 20:18 pm
mmm pero si el archivo tiene más caracteres de los que la URL tiene por límite?, cuando hacia get escribiendo las variables en navegador había limite.

ok saco los bytes del archivo, los paso al content length, pero no he entendido eso de abrir el archivo en stream xD lo demás si.

Edito: te refieres a meter todo el contenido del archivo en la cadena?. Otra cosilla caracteres como por ejemplo un espacio tendría que enviarlo como %24 no? gracias
727  Programación / Programación C/C++ / Re: Ayuda envío archivo a web con C vía http en: 29 Julio 2014, 19:28 pm
Ahhh me alegra oír eso, yo uso codeblocks que usa gcc compiler, puede que sea algo del firewall etc, probare a meter el programa en otro ordenador haber si le funciona.

Ahora bien, ya esta resuelto algo de vital importancia, como es enviar variables, ahora la idea de subir archivos como sería no hay alguna cabecera para mandar archivo directamente añadiendo algún campo en la cebecera, o tengo que ir cargando variables y subiendolas poco a poco, además como puedo controlar si hay posibles errores, me vendría muy bien saber algo de esto, muchas gracias.

PD: Ya os comentaré si me funcionó en otro ordenador.
PD: MIL gracias ivancea  :rolleyes:
728  Programación / Programación C/C++ / Re: Ayuda envío archivo a web con C vía http en: 29 Julio 2014, 13:43 pm
Respecto a lo de minosfour si que funciona el php correctamente, no es necesario hacer eso, pues antes con escribir las variables en el navegador creaba el archivo y todo bien solo que ahora cambié GET por POST lo demás es igual, debería ir.

Ivancea a ti te funciono con esos 3 campos solo?, probé a descargar el WPE y al descargar me salio como archivo malicioso, desde la página web del autor, no sé lo que está claro es que no se realiza correctamente el POST algo pasa desapercibido en el cliente, pues busqué con wireshark los POST y efectivamente conectaba a la IP de la web pero no estaba la cabecera en ningún paquete, sin embargo en otros POST no relacionados si aparecía. Que puede fallar en ese programa en C me pregunto.
729  Programación / Programación C/C++ / Re: Ayuda envío archivo a web con C vía http en: 29 Julio 2014, 01:38 am
He cargado mi página con el mozilla y no me muestra nada elhttpheaders xD, de todas formas es normal pues tendremos que forzar la interacción  y eso yo no se como hacerlo según dijiste parece que se puede hacer con el programa pero yo no se como usarlo, sería pasarle unas variables con POST a la página con el programa y leer la cabecera que mete, bueno hasta mañana se seguirá en ello gracias.
730  Programación / Programación C/C++ / Re: Ayuda envío archivo a web con C vía http en: 29 Julio 2014, 01:15 am
Aaaaamigo ya se porque no las veía porque la extensión lo que hace es mostrarte lost GET y POST que se realizan en el navegador, es decir hay que cargar al menos páginas para que aparezcan esas cabeceras, me fui a hotmail.com por ejemplo y me salieron muuchos POST y GET  :D como cosa mala, aquí pique uno:

Código:
POST / HTTP/1.1
Host: ocsp.digicert.com
User-Agent: Mozilla/5.0 (Windows XX 9.5; WOW64; rv:29.0) Gecko/20100101 Firefox/28.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: es-ES,es;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Content-Length: 115
Content-Type: application/ocsp-request
Connection: keep-alive
0q0o0M0K0I0 +

Lo que hace darme cuenta de que parece que sea necesario cosas como el agente de navegación, idioma, y demás de todas formas este que he pillado no es de "application/x-www-form-urlencoded" asi que no creo que tenga que ser en lo demás igual, bueno sigo indagando.

Edito: Nótese que esta linea:

Código:
POST / HTTP/1.1

Nosotros teníamos

Código:
POST /script.php HTTP/1.1

Haciendo referencia al archivo que ejecutará el php, allí no hace referencia a nada, quizás sea index.php por defecto, sino que php recogerá sus variables.

Edito: Acabo de usar el programa que muestra los GET y POST que me dijiste en en el mozilla xD, y probé con una busqueda en google, entonces mostraba las cabecera, wireshark también las mostraba, pero cuando ejecuto mi programa no aparece la cabecera por ningún lado. Raro.
Páginas: 1 ... 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 [73] 74 75 76 77
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines