Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define _XOPEN_SOURCE 500
- #include <stdio.h>
- #include <stdlib.h>
- #include <sys/types.h>
- #include <sys/socket.h>
- #include <netinet/in.h>
- #include <netdb.h>
- #include <string.h>
- void error(char *msg)
- {
- perror(msg);
- exit(0);
- }
- int main(int argc,char *argv[]){
- /*char options;*/
- char *botname;
- char *servername;
- char *buffer;
- char *port = "9001";
- extern char *optarg;
- extern int optind;
- char operator;
- int s;
- struct addrinfo *result;
- FILE *sstream;
- int i = 0;
- while((operator = getopt(argc, argv, "n:p:")) != -1){
- /*switch for operatoren*/
- switch(operator){
- case'n':
- botname = optarg;
- printf("botname: %s\n", botname);
- break;
- case'p':
- port = optarg;
- printf("port: %s\n", port);
- break;
- case'?':
- printf("\nUnbekannte Option!!!\n");
- break;
- default :
- printf("this shouldnt happen");
- }
- }
- /*ended*/
- if(optind < argc){
- while(optind < argc){
- servername = argv[optind++];
- printf("%s\n",servername);
- }
- }else{
- printf("no fucking server");
- return -1;
- }
- /*servername und optionen einlesen pferdi*/
- /*anlegen des sockets mit fehlerkontrolle*/
- /*ende. nun: anlegen einer struct socketaddr für connect
- */
- s = socket(AF_INET, SOCK_STREAM, 0);
- if (s == -1){
- perror("socket() failed");
- return 1;
- }
- if((getaddrinfo(servername,port, NULL, &result)) != -1){
- if(connect(s,result->ai_addr,result->ai_addrlen) != -1){
- printf("connection established\n");
- /*receive*/
- if((sstream = fdopen(s, "r"))==NULL){
- printf("Streamopening scheiterte\n");
- }
- else{
- printf("Streamopening erfolgreich\n");
- }
- }
- }
- while(i==0){
- if(fgets(buffer,100,sstream)==NULL){
- printf("Buffering not erfolgreich\n");
- i=1;
- }
- else{
- switch(buffer[0]){
- case 'H':
- snprintf(buffer, 100, "AUTH %s\n", botname);
- break;
- case 'T':
- if(buffer[2]=='H'){
- printf("1: %s",strtok(buffer, " "));
- printf("2: %s",strtok(NULL, " "));
- printf("3: %s",strtok(NULL, " "));
- printf("4: %s",strtok(NULL, " "));
- }
- break;
- }
- }
- }
- return 0;
- }
- /*int rollOrSave()*/
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement