#include <errno.h>
#include <fcntl.h> 
#include <string.h>
#include <termios.h>
#include <unistd.h>
#include <stdio.h>
#include <stdint.h>
#include <string.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/socket.h>
#include <endian.h>
#include <arpa/inet.h>

#define DATA_SIZE 200

uint8_t data[DATA_SIZE];

int main(int argc, char* argv[])
{
    if(argc < 2)
    {
        printf("Usage:\n%s host_address\n", argv[0]);
        return 1;
    }

    struct sockaddr_in address;
    int s;

    address.sin_family = AF_INET;
    address.sin_port = htons(1104);
    inet_pton(AF_INET, argv[1], &address.sin_addr);

    s = socket(AF_INET, SOCK_DGRAM | SOCK_NONBLOCK, 0);
    if(s == -1)
    {
        perror("socket()");
        return 1;
    }

    while(1)
    {
        sendto(s, data, DATA_SIZE, 0, (struct sockaddr*)&address, sizeof(address));
    }
    return 0;
}