Patch to support the "linexa" distribution



Hi everyone, 

I'm maintaining a little distribution that uses NetworkManager as its main
network configuration facility. 
I created this little patch to enter the distro-specific settings into the
NetworkManager. 

Could you merge it upstream? 

Thanks in advance! 

Regards,  
Alex
diff -Naur NetworkManager-0.8.1.997.orig/configure.ac NetworkManager-0.8.1.997/configure.ac
--- NetworkManager-0.8.1.997.orig/configure.ac	2010-09-29 00:18:36.000000000 +0200
+++ NetworkManager-0.8.1.997/configure.ac	2010-10-05 14:40:26.511000520 +0200
@@ -84,7 +84,7 @@
 dnl
 AC_C_BIGENDIAN
 
-AC_ARG_WITH(distro, AS_HELP_STRING([--with-distro=DISTRO], [Specify the Linux distribution to target: One of redhat, suse, gentoo, debian, arch, slackware, paldo, mandriva or pardus]))
+AC_ARG_WITH(distro, AS_HELP_STRING([--with-distro=DISTRO], [Specify the Linux distribution to target: One of redhat, suse, gentoo, debian, arch, slackware, paldo, mandriva, pardus or linexa]))
 if test "z$with_distro" = "z"; then
 	AC_CHECK_FILE(/etc/redhat-release,with_distro="redhat")
 	AC_CHECK_FILE(/etc/SuSE-release,with_distro="suse")
@@ -96,6 +96,7 @@
 	AC_CHECK_FILE(/etc/frugalware-release,with_distro="frugalware")
 	AC_CHECK_FILE(/etc/mandriva-release,with_distro="mandriva")
 	AC_CHECK_FILE(/etc/pardus-release,with_distro="pardus")
+	AC_CHECK_FILE(/etc/linexa-release,with_distro="linexa")
 	if test "z$with_distro" = "z"; then
 		with_distro=`lsb_release -is`
 	fi
@@ -107,7 +108,7 @@
 	exit 1
 else
 	case $with_distro in
-		redhat|suse|gentoo|debian|slackware|arch|paldo|frugalware|mandriva|pardus) ;;
+		redhat|suse|gentoo|debian|slackware|arch|paldo|frugalware|mandriva|pardus|linexa) ;;
 		*)
 			echo "Your distribution (${with_distro}) is not yet supported!  (patches welcome)"
 			exit 1
@@ -165,6 +166,11 @@
   AC_DEFINE(TARGET_PARDUS, 1, [Define if you have Pardus])
 fi
 
+AM_CONDITIONAL(TARGET_LINEXA, test x"$with_distro" = xlinexa)
+if test x"$with_distro" = xlinexa; then
+  AC_DEFINE(TARGET_PARDUS, 1, [Define if you have linexa])
+fi
+
 dnl
 dnl Distribution version string
 dnl
@@ -543,6 +549,8 @@
 initscript/paldo/NetworkManager
 initscript/Mandriva/Makefile
 initscript/Mandriva/networkmanager
+initscript/linexa/Makefile
+initscript/linexa/networkmanager
 introspection/Makefile
 man/Makefile
 man/NetworkManager.8
diff -Naur NetworkManager-0.8.1.997.orig/initscript/Makefile.am NetworkManager-0.8.1.997/initscript/Makefile.am
--- NetworkManager-0.8.1.997.orig/initscript/Makefile.am	2009-12-23 19:30:29.000000000 +0100
+++ NetworkManager-0.8.1.997/initscript/Makefile.am	2010-10-05 14:40:05.630000027 +0200
@@ -23,3 +23,6 @@
 if TARGET_MANDRIVA
 SUBDIRS += Mandriva
 endif
+if TARGET_LINEXA
+SUBDIRS += linexa
+endif
diff -Naur NetworkManager-0.8.1.997.orig/initscript/linexa/Makefile.am NetworkManager-0.8.1.997/initscript/linexa/Makefile.am
--- NetworkManager-0.8.1.997.orig/initscript/linexa/Makefile.am	1970-01-01 01:00:00.000000000 +0100
+++ NetworkManager-0.8.1.997/initscript/linexa/Makefile.am	2010-10-05 14:40:05.630000027 +0200
@@ -0,0 +1,6 @@
+EXTRA_DIST = networkmanager
+DISTCLEANFILES = networkmanager
+
+initddir = $(sysconfdir)/rc.d/init.d
+initd_SCRIPTS = networkmanager
+
diff -Naur NetworkManager-0.8.1.997.orig/initscript/linexa/networkmanager.in NetworkManager-0.8.1.997/initscript/linexa/networkmanager.in
--- NetworkManager-0.8.1.997.orig/initscript/linexa/networkmanager.in	1970-01-01 01:00:00.000000000 +0100
+++ NetworkManager-0.8.1.997/initscript/linexa/networkmanager.in	2010-10-05 14:40:05.630000027 +0200
@@ -0,0 +1,59 @@
+#!/bin/bash
+# Start the networkmanager daemon
+#
+# Author: Elias <elias linexa de>
+# [2010-08-20]
+
+# Information about the daemon
+title="networkmanager"           # No spaces allowed in here
+start_after="dbus" 						# dependencies for start-up
+stop_after="xinetd"                     # dependencies for stop
+runlevel="2"                         # start/stop in this runlevel
+sequence="25"                        # "checkinstall networkmanager enable"
+                                     # will create links to:
+                                     #   /etc/rc.d/rc${runlevel}.d/S${sequence}${title}
+                                     #   /etc/rc.d/rc${runlevel}.d/S$((100 - ${sequence}))${title}
+                   
+# check whether daemon is running
+# returns 0 if running, >0 if not
+check() {
+  [ -f /var/run/NetworkManager.pid ]
+}
+
+# start procedure
+start() {
+  if check ; then
+    warning "${title} is already running. Type 'service restart ${title}'" # Issue a warning
+  else
+    /usr/sbin/NetworkManager &
+    evaluate_retval "Starting ${title}. "     # Print [  done  ] or [ failed ] depending on outcome
+  fi
+}
+
+# stop procedure
+stop() {
+  if check ; then # daemon is running
+    kill $(cat /var/run/NetworkManager.pid)
+    evaluate_retval "Stopping ${title}."     # Print [  done  ] or [ failed ] depending on outcome
+  else # daemon not running
+    warning "${title} is not running." # Issue a warning
+  fi
+}
+
+# restart procedure
+restart() {
+  stop
+  sleep 1
+  start
+}
+
+# reload action
+reload() {
+  if check ; then # daemon is running
+    kill -HUP $(cat /var/run/NetworkManager.pid) &>/dev/null
+    evaluate_retval "Reloading ${title}."    # Print [  done  ] or [ failed ] depending on outcome
+  else # daemon not running
+    warning "${title} is not running." # Issue a warning
+  fi
+}
+
diff -Naur NetworkManager-0.8.1.997.orig/src/backends/Makefile.am NetworkManager-0.8.1.997/src/backends/Makefile.am
--- NetworkManager-0.8.1.997.orig/src/backends/Makefile.am	2010-09-28 22:01:11.000000000 +0200
+++ NetworkManager-0.8.1.997/src/backends/Makefile.am	2010-10-05 14:40:05.630000027 +0200
@@ -53,6 +53,10 @@
 libnmbackend_la_SOURCES += NetworkManagerPardus.c
 endif
 
+if TARGET_LINEXA
+libnmbackend_la_SOURCES += NetworkManagerLinexa.c
+endif
+
 libnmbackend_la_LIBADD += \
 	$(top_builddir)/src/logging/libnm-logging.la \
 	$(DBUS_LIBS) \
diff -Naur NetworkManager-0.8.1.997.orig/src/backends/NetworkManagerLinexa.c NetworkManager-0.8.1.997/src/backends/NetworkManagerLinexa.c
--- NetworkManager-0.8.1.997.orig/src/backends/NetworkManagerLinexa.c	1970-01-01 01:00:00.000000000 +0100
+++ NetworkManager-0.8.1.997/src/backends/NetworkManagerLinexa.c	2010-10-05 14:40:05.631000024 +0200
@@ -0,0 +1,66 @@
+/* -*- Mode: C; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
+/* NetworkManager -- Network link manager
+ *
+ * Matthew Garrett <mjg59 srcf ucam org>
+ *
+ * Heavily based on NetworkManagerRedhat.c by Dan Williams <dcbw redhat com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * (C) Copyright 2004 Tom Parker
+ * (C) Copyright 2004 Matthew Garrett
+ * (C) Copyright 2004 Red Hat, Inc.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+
+#include "NetworkManagerGeneric.h"
+#include "nm-system.h"
+#include "NetworkManagerUtils.h"
+#include "nm-logging.h"
+
+/*
+ * nm_system_enable_loopback
+ *
+ * Bring up the loopback interface
+ *
+ */
+void nm_system_enable_loopback (void)
+{
+	nm_generic_enable_loopback ();
+}
+
+/*
+ * nm_system_update_dns
+ *
+ * Invalidate the nscd host cache, if it exists, since
+ * we changed resolv.conf.
+ *
+ */
+void nm_system_update_dns (void)
+{
+	if (g_file_test ("/usr/sbin/nscd", G_FILE_TEST_IS_EXECUTABLE)) {
+		nm_log_info (LOGD_DNS, "Clearing nscd hosts cache.");
+		nm_spawn_process ("/usr/sbin/nscd -i hosts");
+	}
+}
+
+


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]