summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornicolargo <nicolas@nicolargo.com>2019-07-03 22:37:50 +0200
committernicolargo <nicolas@nicolargo.com>2019-07-03 22:37:50 +0200
commitc5670e97c46f5a966ea52bb18cf233c0f1b652f5 (patch)
tree1478b6b90c21dd1d6097810c3a49bc5ae6456018
parentb4036670e202f503aa3a516b098f14c500497e79 (diff)
IP plugin displays incorrect subnet mask #1417
-rw-r--r--NEWS1
-rw-r--r--glances/plugins/glances_ip.py4
2 files changed, 4 insertions, 1 deletions
diff --git a/NEWS b/NEWS
index 556aafff..3e96a8e1 100644
--- a/NEWS
+++ b/NEWS
@@ -27,6 +27,7 @@ Bugs corrected:
* UnicodeEncodeError: 'ascii' codec can't encode character u'\u25cf' - Raspbian stretch #1483
* Prometheus integration broken with latest prometheus_client #1397
* "sorted by ?" is displayed when setting the sort criterion to "USER" #1407
+ * IP plugin displays incorrect subnet mask #1417
Others:
diff --git a/glances/plugins/glances_ip.py b/glances/plugins/glances_ip.py
index e72f845c..540826b8 100644
--- a/glances/plugins/glances_ip.py
+++ b/glances/plugins/glances_ip.py
@@ -148,7 +148,9 @@ class Plugin(GlancesPlugin):
Example: '255.255.255.0' will return 24
"""
- return sum([int(x) << 8 for x in ip.split('.')]) // 8128
+ # Thanks to @Atticfire
+ # See https://github.com/nicolargo/glances/issues/1417#issuecomment-469894399
+ return sum(bin(int(x)).count('1') for x in ip.split('.'))
class PublicIpAddress(object):