fix build on 2.6.19 (closes: #1070), fix missing process name in syslog (closes: #1069), thanks to Wolfgang Breyha for the patches.

git-svn-id: svn://svn.openwrt.org/openwrt/packages@5836 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
nico 2006-12-18 12:10:38 +00:00
parent 20bd7ec551
commit c9a3b3b2ce
2 changed files with 42 additions and 0 deletions

View File

@ -0,0 +1,22 @@
diff -ruN srelay-0.4.6-old/get-bind.c srelay-0.4.6-new/get-bind.c
--- srelay-0.4.6-old/get-bind.c 2003-04-10 04:53:17.000000000 +0200
+++ srelay-0.4.6-new/get-bind.c 2006-12-18 12:53:06.000000000 +0100
@@ -50,6 +50,18 @@
#include <asm/types.h>
#include <linux/netlink.h>
#include <linux/rtnetlink.h>
+#include <linux/version.h>
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,19)
+# include <linux/if_addr.h>
+#endif
+#ifndef IFA_RTA
+# define IFA_RTA(r) ((struct rtattr *) ((char *)(r) + NLMSG_ALIGN (sizeof (struct ifaddrmsg))))
+# define IFA_PAYLOAD(n) NLMSG_PAYLOAD (n, sizeof (struct ifaddrmsg))
+#endif
+#ifndef IFLA_RTA
+# define IFLA_RTA(r) ((struct rtattr *) ((char *)(r) + NLMSG_ALIGN (sizeof (struct ifinfomsg))))
+# define IFLA_PAYLOAD(n) NLMSG_PAYLOAD (n, sizeof (struct ifinfomsg))
+#endif
static int get_ifconf(int, struct addrinfo *);
#endif /* defined(LINUX) */

View File

@ -0,0 +1,20 @@
diff -Naurp srelay-0.4.6.orig/main.c srelay-0.4.6/main.c
--- srelay-0.4.6.orig/main.c 2006-12-13 22:58:39.000000000 +0100
+++ srelay-0.4.6/main.c 2006-12-13 23:02:59.000000000 +0100
@@ -33,6 +33,7 @@ IF ADVISED OF THE POSSIBILITY OF SUCH DA
*/
#include <sys/stat.h>
+#include <syslog.h>
#include "srelay.h"
/* prototypes */
@@ -125,6 +126,8 @@ int main(int ac, char **av)
uid = getuid();
+ openlog("srelay", LOG_PID, LOG_DAEMON);
+
while((ch = getopt(ac, av, "a:c:i:m:o:p:u:frstbvh?")) != -1)
switch (ch) {
case 'a':