mirror of
https://github.com/yoboujon/tsock.git
synced 2025-06-08 14:00:50 +02:00
74 lines
No EOL
1.5 KiB
C
74 lines
No EOL
1.5 KiB
C
#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);
|
|
} |