mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-12-22 04:29:01 +02:00
92 lines
2.1 KiB
Diff
92 lines
2.1 KiB
Diff
|
--- br2684ctl-20040226.orig/br2684ctl.c
|
||
|
+++ br2684ctl-20040226/br2684ctl.c
|
||
|
@@ -3,6 +3,8 @@
|
||
|
#include <unistd.h>
|
||
|
#include <errno.h>
|
||
|
#include <sys/ioctl.h>
|
||
|
+#include <sys/types.h>
|
||
|
+#include <signal.h>
|
||
|
#include <string.h>
|
||
|
#include <syslog.h>
|
||
|
#include <atm.h>
|
||
|
@@ -22,9 +24,9 @@
|
||
|
*/
|
||
|
|
||
|
|
||
|
-#define LOG_NAME "RFC1483/2684 bridge"
|
||
|
-#define LOG_OPTION LOG_PERROR
|
||
|
-#define LOG_FACILITY LOG_LOCAL0
|
||
|
+#define LOG_NAME "br2684ctl"
|
||
|
+#define LOG_OPTION LOG_PERROR|LOG_PID
|
||
|
+#define LOG_FACILITY LOG_LOCAL2
|
||
|
|
||
|
|
||
|
int lastsock, lastitf;
|
||
|
@@ -39,10 +41,16 @@
|
||
|
|
||
|
void exitFunc(void)
|
||
|
{
|
||
|
- syslog (LOG_PID,"Daemon terminated\n");
|
||
|
+ syslog (LOG_NOTICE,"Daemon terminated\n");
|
||
|
}
|
||
|
|
||
|
|
||
|
+void int_signal(int dummy)
|
||
|
+{
|
||
|
+ syslog (LOG_INFO,"Killed by a signal\n");
|
||
|
+ exit(0);
|
||
|
+}
|
||
|
+
|
||
|
int create_pidfile(int num)
|
||
|
{
|
||
|
FILE *pidfile = NULL;
|
||
|
@@ -80,7 +88,7 @@
|
||
|
err=ioctl (lastsock, ATM_NEWBACKENDIF, &ni);
|
||
|
|
||
|
if (err == 0)
|
||
|
- syslog(LOG_INFO, "Interface \"%s\" created sucessfully\n",ni.ifname);
|
||
|
+ syslog(LOG_NOTICE, "Interface \"%s\" created sucessfully\n",ni.ifname);
|
||
|
else
|
||
|
syslog(LOG_INFO, "Interface \"%s\" could not be created, reason: %s\n",
|
||
|
ni.ifname,
|
||
|
@@ -112,7 +120,7 @@
|
||
|
addr.sap_addr.vpi = 0;
|
||
|
addr.sap_addr.vci = vci;
|
||
|
#endif
|
||
|
- syslog(LOG_INFO,"Communicating over ATM %d.%d.%d, encapsulation: %s\n", addr.sap_addr.itf,
|
||
|
+ syslog(LOG_NOTICE,"Communicating over ATM %d.%d.%d, encapsulation: %s\n", addr.sap_addr.itf,
|
||
|
addr.sap_addr.vpi,
|
||
|
addr.sap_addr.vci,
|
||
|
encap?"VC mux":"LLC");
|
||
|
@@ -261,11 +269,13 @@
|
||
|
}
|
||
|
|
||
|
create_pidfile(itfnum);
|
||
|
+ signal(SIGINT, int_signal);
|
||
|
+ signal(SIGTERM, int_signal);
|
||
|
|
||
|
syslog (LOG_INFO, "RFC 1483/2684 bridge daemon started\n");
|
||
|
atexit (exitFunc);
|
||
|
|
||
|
- while (1) sleep(30); /* to keep the sockets... */
|
||
|
+ while (1) pause(); /* to keep the sockets... */
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
--- br2684ctl-20040226.orig/Makefile
|
||
|
+++ br2684ctl-20040226/Makefile
|
||
|
@@ -0,0 +1,13 @@
|
||
|
+OPTS := -O2
|
||
|
+CFLAGS := -Wall -g
|
||
|
+LIBS := -latm
|
||
|
+
|
||
|
+all: br2684ctl
|
||
|
+
|
||
|
+br2684ctl: br2684ctl.c
|
||
|
+ $(CC) $(OPTS) $(CFLAGS) $(LIBS) $< -o $@
|
||
|
+
|
||
|
+distclean: clean
|
||
|
+clean:
|
||
|
+ rm -f br2684ctl
|
||
|
+
|