#include "../header/tsock.h" #include "../header/puit.h" #include "../header/source.h" int main (int argc, char **argv) { char usageChar[30]="usage: cmd [-p|-s][-n ##]\n"; char *ipAddress; extern char *optarg; extern int optind; int source = -1, nb_message = -1, c, tcp=1, port=-1, tailleMessage=30; /* Nb de messages à envoyer ou à recevoir, par défaut : 10 en émission, infini en réception */ while ((c = getopt(argc, argv, "pn:sul:")) != -1) { switch (c) { case 'p': if (source != -1) { printf("%s",usageChar); exit(1); } source = 0; break; case 's': if (source != -1) { printf("%s",usageChar); exit(1) ; } source = 1; break; case 'l': tailleMessage =atoi(optarg); exitMax(tailleMessage,1500); break; case 'n': nb_message = atoi(optarg); break; case 'u': tcp=0; break; default: printf("%s",usageChar); break; } } if (source == -1) { printf("-p|-s non present !\n"); printf("%s",usageChar); exit(1); } if(argc != optind+2) { printf("ip ou port non present !\n"); printf("%s",usageChar); exit(1); } if(tailleMessage == -1) { tailleMessage = 30; } getNonOtpArgs(argv, argc, &port, &ipAddress); setNbMessage(&nb_message,source); printInfo(source,tcp,nb_message,tailleMessage,port,ipAddress); if(source) { //printf("Source : %d\n",nb_message); launchSource(nb_message,tailleMessage,tcp,port,ipAddress); } else { //printf("Puit : %d\n",nb_message); launchPuit(nb_message,tailleMessage,tcp,port,ipAddress); } return(EXIT_SUCCESS); }