emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] master d693035: Teach net-utils more iproute2 and nl80211


From: Mark Oteiza
Subject: [Emacs-diffs] master d693035: Teach net-utils more iproute2 and nl80211 tools
Date: Sat, 25 Jun 2016 14:38:41 +0000 (UTC)

branch: master
commit d6930356cabd3036e445cc6a2f668b1fd3e0cde4
Author: Mark Oteiza <address@hidden>
Commit: Mark Oteiza <address@hidden>

    Teach net-utils more iproute2 and nl80211 tools
    
    * lisp/net/net-utils.el (iwconfig-program): Add iw(8).
    (iwconfig-program-options): Add "dev" argument for iw.  Another useful
    option is "phy"; beyond that one needs to know the interface name.
    (netstat-program): Add ss(8).
    (route-program): Add ip(8).
    (route-program-options): Add "route" argument for ip.
---
 lisp/net/net-utils.el |   42 ++++++++++++++++++++++++++++--------------
 1 file changed, 28 insertions(+), 14 deletions(-)

diff --git a/lisp/net/net-utils.el b/lisp/net/net-utils.el
index b13bece..1547f52 100644
--- a/lisp/net/net-utils.el
+++ b/lisp/net/net-utils.el
@@ -112,22 +112,31 @@ These options can be used to limit how many ICMP packets 
are emitted."
   :group 'net-utils
   :type  '(repeat string))
 
-(defcustom iwconfig-program "iwconfig"
+(defcustom iwconfig-program
+  (cond ((executable-find "iwconfig") "iwconfig")
+        ((net-utils--executable-find-sbin "iw") "iw")
+        (t "iw"))
   "Program to print wireless network configuration information."
   :group 'net-utils
   :type 'string
-  :version "23.1")
+  :version "25.2")
 
-(defcustom iwconfig-program-options nil
+(defcustom iwconfig-program-options
+  (cond ((string-match-p "iw\\'" iwconfig-program) (list "dev"))
+        (t nil))
  "Options for the iwconfig program."
  :group 'net-utils
  :type '(repeat string)
- :version "23.1")
+ :version "25.2")
 
-(defcustom netstat-program "netstat"
+(defcustom netstat-program
+  (cond ((executable-find "netstat") "netstat")
+        ((net-utils--executable-find-sbin "ss"))
+        (t "ss"))
   "Program to print network statistics."
   :group 'net-utils
-  :type  'string)
+  :type  'string
+  :version "25.2")
 
 (defcustom netstat-program-options
   (list "-a")
@@ -147,20 +156,25 @@ These options can be used to limit how many ICMP packets 
are emitted."
   :type  '(repeat string))
 
 (defcustom route-program
-  (if (eq system-type 'windows-nt)
-      "route"
-    "netstat")
+  (cond ((eq system-type 'windows-nt) "route")
+        ((executable-find "netstat") "netstat")
+        ((net-utils--executable-find-sbin "netstat"))
+        ((executable-find "ip") "ip")
+        ((net-utils--executable-find-sbin "ip"))
+        (t "ip"))
   "Program to print routing tables."
   :group 'net-utils
-  :type  'string)
+  :type  'string
+  :version "25.2")
 
 (defcustom route-program-options
-  (if (eq system-type 'windows-nt)
-      (list "print")
-    (list "-r"))
+  (cond ((eq system-type 'windows-nt) (list "print"))
+        ((string-match-p "netstat\\'" route-program) (list "-r"))
+        (t (list "route")))
   "Options for the route program."
   :group 'net-utils
-  :type  '(repeat string))
+  :type  '(repeat string)
+  :version "25.2")
 
 (defcustom nslookup-program "nslookup"
   "Program to interactively query DNS information."



reply via email to

[Prev in Thread] Current Thread [Next in Thread]