diff options
Diffstat (limited to 'networking/ipcalc.c')
-rw-r--r-- | networking/ipcalc.c | 21 |
1 files changed, 1 insertions, 20 deletions
diff --git a/networking/ipcalc.c b/networking/ipcalc.c index 92e7b289d..3ec473c6b 100644 --- a/networking/ipcalc.c +++ b/networking/ipcalc.c | |||
@@ -71,25 +71,6 @@ static unsigned long get_netmask(unsigned long ipaddr) | |||
71 | return 0; | 71 | return 0; |
72 | } | 72 | } |
73 | 73 | ||
74 | #if ENABLE_FEATURE_IPCALC_FANCY | ||
75 | static int get_prefix(unsigned long netmask) | ||
76 | { | ||
77 | unsigned long msk = 0x80000000; | ||
78 | int ret = 0; | ||
79 | |||
80 | netmask = htonl(netmask); | ||
81 | while (msk) { | ||
82 | if (netmask & msk) | ||
83 | ret++; | ||
84 | msk >>= 1; | ||
85 | } | ||
86 | return ret; | ||
87 | } | ||
88 | #else | ||
89 | int get_prefix(unsigned long netmask); | ||
90 | #endif | ||
91 | |||
92 | |||
93 | #define NETMASK 0x01 | 74 | #define NETMASK 0x01 |
94 | #define BROADCAST 0x02 | 75 | #define BROADCAST 0x02 |
95 | #define NETWORK 0x04 | 76 | #define NETWORK 0x04 |
@@ -210,7 +191,7 @@ int ipcalc_main(int argc UNUSED_PARAM, char **argv) | |||
210 | 191 | ||
211 | if (ENABLE_FEATURE_IPCALC_FANCY) { | 192 | if (ENABLE_FEATURE_IPCALC_FANCY) { |
212 | if (opt & NETPREFIX) { | 193 | if (opt & NETPREFIX) { |
213 | printf("PREFIX=%i\n", get_prefix(netmask)); | 194 | printf("PREFIX=%i\n", bb_popcnt_32(netmask)); |
214 | } | 195 | } |
215 | 196 | ||
216 | if (opt & HOSTNAME) { | 197 | if (opt & HOSTNAME) { |