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

int main(int argc, char **argv) {
    char cmd[0x100];
    char line[0x100];
    FILE *f;

    if(argc != 4) {
        fprintf(stderr, "%s server nickname channel\n", argv[0]);
        return 1;
    }
    snprintf(cmd, sizeof(cmd), "nc %s 6667", argv[1]);
    if((f = popen(cmd, "w")) == NULL) {
        fprintf(stderr, "Can not execute \"%s\"\n", cmd);
        return 1;
    }
    fprintf(f,  "USER irc irc irc :TinyIRC\n"
                "NICK %s\n"
                "JOIN %s\n", argv[2], argv[3]);
    fflush(f);
    for(;;) {
        fgets(line, sizeof(line), stdin);
        if(!strcmp(line, "/quit\n")) {
            fprintf(f, "QUIT\n");
            fflush(f);
            return 0;
        }
        fprintf(f, "PRIVMSG %s :%s\n", argv[3], line);
        fflush(f);
    }
}

