wrong parameter to get opt, ws cleanup, and -O2
parent
2fd4d3f7d6
commit
a269f09805
4
Makefile
4
Makefile
|
|
@ -1,13 +1,13 @@
|
||||||
CXX=g++
|
CXX=g++
|
||||||
CC=gcc
|
CC=gcc
|
||||||
CFLAGS=-g -c
|
CFLAGS=-g -c -O2
|
||||||
LDFLAGS=
|
LDFLAGS=
|
||||||
AR=ar
|
AR=ar
|
||||||
|
|
||||||
all: icsscand
|
all: icsscand
|
||||||
|
|
||||||
icsscand: icsscand.o
|
icsscand: icsscand.o
|
||||||
$(CC) $(LDFLAGS) icsscand.o -o icsscand -lpthread -lftdi -licsneoapi
|
$(CC) $(LDFLAGS) icsscand.o -o icsscand -lpthread -licsneoapi
|
||||||
|
|
||||||
icsscand.o: icsscand.c
|
icsscand.o: icsscand.c
|
||||||
$(CC) $(CFLAGS) icsscand.c
|
$(CC) $(CFLAGS) icsscand.c
|
||||||
|
|
|
||||||
76
icsscand.c
76
icsscand.c
|
|
@ -127,33 +127,33 @@ static pthread_mutex_t devices_mutex ; /* mutex for adding/remo
|
||||||
|
|
||||||
static void print_usage(char *prg)
|
static void print_usage(char *prg)
|
||||||
{
|
{
|
||||||
fprintf(stderr, "\nUsage: %s\n\n", prg);
|
fprintf(stderr, "\nUsage: %s\n\n", prg);
|
||||||
fprintf(stderr, " -D (run as a daemon)\n");
|
fprintf(stderr, " -D (run as a daemon)\n");
|
||||||
fprintf(stderr, " -h (show this help page)\n");
|
fprintf(stderr, " -h (show this help page)\n");
|
||||||
fprintf(stderr, "\n");
|
fprintf(stderr, "\n");
|
||||||
exit(EXIT_FAILURE);
|
exit(EXIT_FAILURE);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void signal_handler(int signum)
|
static void signal_handler(int signum)
|
||||||
{
|
{
|
||||||
switch (signum) {
|
switch (signum) {
|
||||||
|
|
||||||
case SIGUSR1:
|
case SIGUSR1:
|
||||||
exit(EXIT_SUCCESS);
|
exit(EXIT_SUCCESS);
|
||||||
break;
|
break;
|
||||||
case SIGALRM:
|
case SIGALRM:
|
||||||
case SIGCHLD:
|
case SIGCHLD:
|
||||||
LOG(LOG_NOTICE, "received signal %i\n", signum);
|
LOG(LOG_NOTICE, "received signal %i\n", signum);
|
||||||
exit_code = EXIT_FAILURE;
|
exit_code = EXIT_FAILURE;
|
||||||
icsscand_running = 0;
|
icsscand_running = 0;
|
||||||
break;
|
break;
|
||||||
case SIGINT:
|
case SIGINT:
|
||||||
case SIGTERM:
|
case SIGTERM:
|
||||||
LOG(LOG_NOTICE, "received signal %i\n", signum);
|
LOG(LOG_NOTICE, "received signal %i\n", signum);
|
||||||
exit_code = EXIT_SUCCESS;
|
exit_code = EXIT_SUCCESS;
|
||||||
icsscand_running = 0;
|
icsscand_running = 0;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void free_connected_device(struct connected_device_t* device, int join_thread)
|
static void free_connected_device(struct connected_device_t* device, int join_thread)
|
||||||
|
|
@ -196,7 +196,7 @@ static void setup_interface_info(int device_index, int net_id,
|
||||||
if (name)
|
if (name)
|
||||||
{
|
{
|
||||||
char new_name[IFNAMSIZ];
|
char new_name[IFNAMSIZ];
|
||||||
struct ifreq ifr;
|
struct ifreq ifr;
|
||||||
int s = socket(PF_INET, SOCK_DGRAM, 0);
|
int s = socket(PF_INET, SOCK_DGRAM, 0);
|
||||||
|
|
||||||
sprintf(new_name, "ics%d%s", device_index, name);
|
sprintf(new_name, "ics%d%s", device_index, name);
|
||||||
|
|
@ -216,7 +216,7 @@ static void setup_interface_info(int device_index, int net_id,
|
||||||
|
|
||||||
close(s);
|
close(s);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void* rx(void* arg)
|
static void* rx(void* arg)
|
||||||
|
|
@ -563,7 +563,7 @@ int main(int argc, char **argv)
|
||||||
pthread_t probe_thread;
|
pthread_t probe_thread;
|
||||||
|
|
||||||
/* process command line switches */
|
/* process command line switches */
|
||||||
while ((opt = getopt(argc, argv, "hF")) != -1)
|
while ((opt = getopt(argc, argv, "hD")) != -1)
|
||||||
{
|
{
|
||||||
switch(opt)
|
switch(opt)
|
||||||
{
|
{
|
||||||
|
|
@ -571,10 +571,10 @@ int main(int argc, char **argv)
|
||||||
run_as_daemon = 1;
|
run_as_daemon = 1;
|
||||||
break;
|
break;
|
||||||
case 'h':
|
case 'h':
|
||||||
case '?':
|
case '?':
|
||||||
default:
|
default:
|
||||||
print_usage(argv[0]);
|
print_usage(argv[0]);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -582,17 +582,17 @@ int main(int argc, char **argv)
|
||||||
openlog(DAEMON_NAME, LOG_PID, LOG_LOCAL5);
|
openlog(DAEMON_NAME, LOG_PID, LOG_LOCAL5);
|
||||||
if (run_as_daemon)
|
if (run_as_daemon)
|
||||||
{
|
{
|
||||||
if (daemon(0, 0))
|
if (daemon(0, 0))
|
||||||
{
|
{
|
||||||
LOG_NOARGS(LOG_ERR, "failed to daemonize");
|
LOG_NOARGS(LOG_ERR, "failed to daemonize");
|
||||||
exit(EXIT_FAILURE);
|
exit(EXIT_FAILURE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
signal(SIGINT, signal_handler);
|
signal(SIGINT, signal_handler);
|
||||||
signal(SIGTERM, signal_handler);
|
signal(SIGTERM, signal_handler);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* we're now "running" -- incoming signals tell us to stop */
|
/* we're now "running" -- incoming signals tell us to stop */
|
||||||
icsscand_running = 1;
|
icsscand_running = 1;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue