summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Boor <florian.boor@kernelconcepts.de>2005-11-27 22:37:11 +0000
committerOpenEmbedded Project <openembedded-devel@lists.openembedded.org>2005-11-27 22:37:11 +0000
commitb78a8c0c0d845cbebab4557122e104347ecb6b4b (patch)
tree2359fe9152adbc10e24e91074c49a92b02346350
parent41cb1967e1acd8fd3e7d8642e814e9acae6d1aff (diff)
genlist: New package contributed by Bov Davies.
-rw-r--r--packages/genlist/.mtn2git_empty0
-rw-r--r--packages/genlist/files/.mtn2git_empty0
-rw-r--r--packages/genlist/files/Makefile25
-rw-r--r--packages/genlist/files/genlist.c75
-rw-r--r--packages/genlist/genlist.bb20
5 files changed, 120 insertions, 0 deletions
diff --git a/packages/genlist/.mtn2git_empty b/packages/genlist/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/genlist/.mtn2git_empty
diff --git a/packages/genlist/files/.mtn2git_empty b/packages/genlist/files/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/genlist/files/.mtn2git_empty
diff --git a/packages/genlist/files/Makefile b/packages/genlist/files/Makefile
new file mode 100644
index 0000000000..e5ef587d51
--- /dev/null
+++ b/packages/genlist/files/Makefile
@@ -0,0 +1,25 @@
+#CC = gcc
+CFLAGS = -Wall -Os
+
+#VERSION = \"V0.10\"
+#CFLAGS += -DVERSION=$(VERSION)
+
+# for use with LIRC, uncomment the following two lines
+# CFLAGS += -DUSELIRC
+# LDFLAGS += -llirc_client
+
+#######################################################################
+
+SRC = genlist.c
+OBJ = genlist.o
+
+all: genlist
+
+genlist: $(OBJ)
+ $(CC) -s -o genlist $(OBJ) $(LDFLAGS)
+
+genlist.o: genlist.c
+
+
+clean:
+ rm -f $(OBJ) genlist
diff --git a/packages/genlist/files/genlist.c b/packages/genlist/files/genlist.c
new file mode 100644
index 0000000000..3170f36107
--- /dev/null
+++ b/packages/genlist/files/genlist.c
@@ -0,0 +1,75 @@
+/* (Platform independant) IP lister (c)2000-1 Craig Cheetham
+ * Released under the GNU Licence. - Spread the source, not
+ * the binaries! (ahem fixed)
+ *
+ * E-Mail: craig_cheetham@yahoo.co.uk
+ *
+ */
+#include <stdio.h>
+#include <string.h>
+#include <netinet/in.h>
+
+union ipaddy
+{
+ unsigned char c_num[4];
+ unsigned long l_num;
+};
+
+int parse(char *string, char *dest)
+{
+ int i = 0;
+ unsigned long num;
+ char *p = string, *n;
+
+ strtok(p,".");
+
+ while(p && i<4) {
+ if((num = atol(p)) > 255) return 1;
+ dest[i++] = num;
+ p = strtok(0,".");
+ }
+
+ return 0;
+}
+
+int main (int argc, char **argv)
+{
+ union ipaddy source, dest;
+
+ if(argc < 3) {
+ printf("Platform independant IP lister, by Craig Cheetham (c)2000-1\n");
+ printf("===========================================================\n\n");
+ printf("Usage: %s <start ip> <end ip>\n\n", argv[0]);
+ printf("Examples:\n");
+ printf("\t\t%s 205 206\t\t\t# Class A scan\n", argv[0]);
+ printf("\t\t%s 205.214 205.215\t\t# Class B scan\n", argv[0]);
+ printf("\t\t%s 205.214.14 205.214.56\t# Class C scan\n", argv[0]);
+ exit(0);
+ }
+
+ source.l_num = dest.l_num = 0;
+
+ if(parse(argv[1], source.c_num)) {
+ fprintf(stderr, "Error: Source IP is jarg.\n");
+ return 0;
+ }
+
+ if(parse(argv[2], dest.c_num)) {
+ fprintf(stderr, "Error: Dest IP is jarg.\n");
+ return 0;
+ }
+
+ while(htonl(source.l_num) < htonl(dest.l_num)) {
+
+ if ((source.c_num[3]!=0) && (source.c_num[3]!=255))
+ printf("%u.%u.%u.%u\n",
+ source.c_num[0],
+ source.c_num[1],
+ source.c_num[2],
+ source.c_num[3]);
+
+ source.l_num = htonl(htonl(source.l_num)+1);
+ }
+
+ return 0;
+}
diff --git a/packages/genlist/genlist.bb b/packages/genlist/genlist.bb
new file mode 100644
index 0000000000..4fd6160cc2
--- /dev/null
+++ b/packages/genlist/genlist.bb
@@ -0,0 +1,20 @@
+SECTION = "utility"
+DESCRIPTION = "IP Address List Generator"
+MAINTAINER = "Bob Davies (tyggerbob@gmail.com)"
+
+SRC_URI = "file://genlist.c \
+ file://Makefile"
+
+DEFAULT_PREFERENCE="-1"
+
+
+S = "${WORKDIR}"
+LICENSE = "GPL"
+do_compile() {
+ oe_runmake all
+}
+
+do_install() {
+ install -d ${D}${bindir}
+ install -m 0755 genlist ${D}${bindir}/
+}