Patch to support the "linexa" distribution
- From: Alex Vogt <elias linexa de>
- To: networkmanager-list gnome org
- Subject: Patch to support the "linexa" distribution
- Date: Tue, 5 Oct 2010 15:10:19 +0200
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]