diff options
author | epochqwert <epoch@hacking.allowed.org> | 2015-06-28 00:15:29 -0500 |
---|---|---|
committer | epochqwert <epoch@hacking.allowed.org> | 2015-06-28 00:15:29 -0500 |
commit | 976c801cbe9ae8d03cae529b57a10cbb588fd92a (patch) | |
tree | 8c8a64ed504ec8abde678ddd10ab07d9536f3c50 /src/bin/cidr.c | |
parent | 5581f63df9034370cff54aeda44b365439b141fb (diff) | |
download | misc-976c801cbe9ae8d03cae529b57a10cbb588fd92a.tar.gz misc-976c801cbe9ae8d03cae529b57a10cbb588fd92a.zip |
fixed up a lot of warnings. added watch.
Diffstat (limited to 'src/bin/cidr.c')
-rw-r--r-- | src/bin/cidr.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/bin/cidr.c b/src/bin/cidr.c index fe44668..1cef7d4 100644 --- a/src/bin/cidr.c +++ b/src/bin/cidr.c @@ -1,4 +1,7 @@ #include <stdio.h> +#include <string.h> +#include <stdlib.h> +#include <arpa/inet.h> int main(int argc,char *argv[]) { unsigned int cidr; @@ -9,17 +12,16 @@ int main(int argc,char *argv[]) { printf("example: cidr 192.168.0.1/24\n"); return 1; } - if(!strchr(argv[1],'/')) { - cidr=32; - net=argv[1]; - } else { + if(!strchr(argv[1],'/')) cidr=32; + else { cidr=atoi(strchr(argv[1],'/')+1); *strchr(argv[1],'/')=0; - net=htonl(inet_addr(argv[1])); } + net=htonl(inet_addr(argv[1])); printf("%d.%d.%d.%d ",net>>24&255,net>>16&255,net>>8&255,net&255); - mask=-1; + mask=~0; mask>>=(32-cidr); mask<<=(32-cidr); printf("%d.%d.%d.%d\n",mask>>24&255,mask>>16&255,mask>>8&255,mask&255); + return 0; } |