summaryrefslogtreecommitdiff
path: root/examples/shell
diff options
context:
space:
mode:
authorJiří Klimeš <jklimes@redhat.com>2011-12-08 16:36:37 +0100
committerJiří Klimeš <jklimes@redhat.com>2011-12-08 16:36:37 +0100
commitb366ebe32157bc4f9b183e49534d3531f72872a0 (patch)
tree55117dbae8631576e1a7918c3db37882c7392b48 /examples/shell
parent6dcd9114cb2abaff79e04f213fc0d93bbe2cdcb7 (diff)
downloadNetworkManager-b366ebe32157bc4f9b183e49534d3531f72872a0.tar.gz
examples: add some examples in shell
Diffstat (limited to 'examples/shell')
-rw-r--r--examples/shell/Makefile.am3
-rwxr-xr-xexamples/shell/get-hostname.sh45
-rwxr-xr-xexamples/shell/nm-logging.sh46
3 files changed, 94 insertions, 0 deletions
diff --git a/examples/shell/Makefile.am b/examples/shell/Makefile.am
new file mode 100644
index 0000000000..e4083d9aa2
--- /dev/null
+++ b/examples/shell/Makefile.am
@@ -0,0 +1,3 @@
+EXTRA_DIST = \
+ nm-logging.sh \
+ get-hostname.sh
diff --git a/examples/shell/get-hostname.sh b/examples/shell/get-hostname.sh
new file mode 100755
index 0000000000..a521132c97
--- /dev/null
+++ b/examples/shell/get-hostname.sh
@@ -0,0 +1,45 @@
+#!/bin/sh
+# vim: ft=sh ts=2 sts=2 sw=2 et ai
+# -*- Mode: sh; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
+#
+# 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.
+#
+# Copyright (C) 2011 Red Hat, Inc.
+#
+
+#
+# Call Get() method on org.freedesktop.DBus.Properties interface to get Hostname
+# property of /org/freedesktop/NetworkManager/Settings object
+#
+
+SERVICE_NAME="org.freedesktop.NetworkManager"
+OBJECT_PATH="/org/freedesktop/NetworkManager/Settings"
+METHOD="org.freedesktop.DBus.Properties.Get"
+
+
+dbus-send --system --print-reply --dest=$SERVICE_NAME $OBJECT_PATH $METHOD \
+ string:"org.freedesktop.NetworkManager.Settings" string:"Hostname" | \
+sed -n 's/.*"\([^"]*\)".*/\1/p'
+
+
+# The same with glib's gdbus
+# gdbus call --system --dest $SERVICE_NAME --object-path $OBJECT_PATH --method $METHOD \
+# "org.freedesktop.NetworkManager.Settings" "Hostname"
+
+
+# The same with qt's qdbus
+# qdbus --system $SERVICE_NAME $OBJECT_PATH $METHOD \
+# "org.freedesktop.NetworkManager.Settings" "Hostname"
+
diff --git a/examples/shell/nm-logging.sh b/examples/shell/nm-logging.sh
new file mode 100755
index 0000000000..afd06e5aae
--- /dev/null
+++ b/examples/shell/nm-logging.sh
@@ -0,0 +1,46 @@
+#!/bin/sh
+# vim: ft=sh ts=2 sts=2 sw=2 et ai
+# -*- Mode: sh; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
+#
+# 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.
+#
+# Copyright (C) 2011 Red Hat, Inc.
+#
+
+#
+# Sets NM logging level and/or domains (see description in 'man NetworkManager.conf')
+# The level controls how verbose NM's log output will be (err,warn,info,debug).
+# Domains control what parts of networking NM emits log messages for. Leaving
+# either of the two arguments blank (i.e., an empty string) will leave that
+# parameter unchanged.
+#
+# The normal logging level is 'info', for debugging use 'debug'.
+#
+# Examples:
+# nm-logging.sh debug - switches the debugging level on
+# nm-logging.sh info - turns debugging off (back to normal)
+# nm-logging.sh "" "WIFI" - changes domain to print only WiFi related messages
+# nm-logging.sh err "HW,IP4" - will print only error messages related to hardware or IPv4
+#
+
+LOG_LEVEL=$1
+LOG_DOMAINS=$2
+
+dbus-send --system --print-reply \
+--dest=org.freedesktop.NetworkManager \
+/org/freedesktop/NetworkManager \
+org.freedesktop.NetworkManager.SetLogging \
+string:"$LOG_LEVEL" string:"$LOG_DOMAINS"
+