summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>2005-12-13 13:01:01 +0000
committerflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>2005-12-13 13:01:01 +0000
commit6cfe225066885175321c3e4a7c27d98bbdced631 (patch)
tree53e273ed1968553b4c1f2fc6a4f5371c2b4f27ee
parentbb9828dba2dca3f7139e22663efde094892e6b81 (diff)
Added dhcp6, an IPv6 implementation of the dhcp server and client
Added support in package/rules.mk for zip files, just use PKG_CAT=unzip to uncompress the archive git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@2649 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--package/Config.in1
-rw-r--r--package/Makefile2
-rw-r--r--package/dhcp6/Config.in7
-rwxr-xr-xpackage/dhcp6/Makefile35
-rwxr-xr-xpackage/dhcp6/ipkg/dhcp6.control5
-rw-r--r--package/dhcp6/ipkg/files/conffiles4
-rw-r--r--package/dhcp6/patches/01-remove_debug.patch118
-rw-r--r--package/rules.mk6
-rwxr-xr-xpackage/vnc-reflector/Config.in2
9 files changed, 178 insertions, 2 deletions
diff --git a/package/Config.in b/package/Config.in
index 5cd589491..ad53b4aff 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -151,6 +151,7 @@ source "package/xsupplicant/Config.in"
comment "IPv6"
source "package/6tunnel/Config.in"
source "package/aiccu/Config.in"
+source "package/dhcp6/Config.in"
source "package/miredo/Config.in"
source "package/ndisc/Config.in"
source "package/radvd/Config.in"
diff --git a/package/Makefile b/package/Makefile
index f906df607..358e1d6c9 100644
--- a/package/Makefile
+++ b/package/Makefile
@@ -27,6 +27,7 @@ package-$(BR2_COMPILE_CYRUS_SASL) += cyrus-sasl
package-$(BR2_COMPILE_DB) += libdb
package-$(BR2_PACKAGE_DECO) += deco
package-$(BR2_COMPILE_DHCP) += dhcp
+package-$(BR2_PACKAGE_DHCP6) += dhcp6
package-$(BR2_PACKAGE_DHCP_FORWARDER) += dhcp-forwarder
package-$(BR2_PACKAGE_DNSMASQ) += dnsmasq
package-$(BR2_PACKAGE_DOSFSTOOLS) += dosfstools
@@ -248,6 +249,7 @@ bind-compile: openssl-compile
curl-compile: openssl-compile zlib-compile
cyrus-sasl-compile: openssl-compile
deco-compile: ncurses-compile
+dhcp6-compile: ncurses-compile
dropbear-compile: zlib-compile
dsniff-compile: libnids-compile openssl-compile libgdbm-compile
freetype-compile: zlib-compile
diff --git a/package/dhcp6/Config.in b/package/dhcp6/Config.in
new file mode 100644
index 000000000..f00e281e4
--- /dev/null
+++ b/package/dhcp6/Config.in
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_DHCP6
+ prompt "dhcp6............................. IPv6 DHCP server and client"
+ tristate
+ default m if CONFIG_DEVEL
+ select BR2_PACKAGE_LIBNCURSES
+ help
+ This is the first ever open source implementation of Dynamic Host Configuration Protocol for IPv6 (DHCPv6) server and client on Linux Operating System. The server provides leases (durations or lifetimes) on IPv6 addresses to the clients who request for it
diff --git a/package/dhcp6/Makefile b/package/dhcp6/Makefile
new file mode 100755
index 000000000..aef4f5cf0
--- /dev/null
+++ b/package/dhcp6/Makefile
@@ -0,0 +1,35 @@
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=dhcp6
+PKG_VERSION:=1.0
+PKG_RELEASE:=1
+PKG_MD5SUM:=86193dfa62137db3ea459543db4f1102
+PKG_SOURCE_URL:=@SF/dhcpv6-linux
+PKG_SOURCE:=dhcpv6-linux-$(PKG_VERSION).zip
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
+PKG_CAT:=unzip
+
+PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
+
+include $(TOPDIR)/package/rules.mk
+
+$(eval $(call PKG_template,DHCP6,$(PKG_NAME),$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
+
+$(PKG_BUILD_DIR)/.configured:
+ touch $@
+
+$(PKG_BUILD_DIR)/.built:
+ $(MAKE) CC=$(TARGET_CC) STAGING_DIR=$(STAGING_DIR) -C $(PKG_BUILD_DIR)/server
+ $(MAKE) CC=$(TARGET_CC) STAGING_DIR=$(STAGING_DIR) -C $(PKG_BUILD_DIR)/client
+ install -d $(PKG_INSTALL_DIR)/usr/sbin $(PKG_INSTALL_DIR)/etc/dhcp{d6,6}
+ install -m0755 $(PKG_BUILD_DIR)/client/cli $(PKG_INSTALL_DIR)/usr/sbin/dhcp6client
+ install -m0755 $(PKG_BUILD_DIR)/server/serv $(PKG_INSTALL_DIR)/usr/sbin/dhcpd6
+ install -m0755 $(PKG_BUILD_DIR)/server/*.conf $(PKG_INSTALL_DIR)/etc/dhcpd6/
+ install -m0755 $(PKG_BUILD_DIR)/client/*.conf $(PKG_INSTALL_DIR)/etc/dhcp6/
+ touch $@
+
+$(IPKG_DHCP6):
+ mkdir -p $(IDIR_DHCP6)
+ cp -fpR $(PKG_INSTALL_DIR)/* $(IDIR_DHCP6)/
+ $(RSTRIP) $(IDIR_DHCP6)
+ $(IPKG_BUILD) $(IDIR_DHCP6) $(PACKAGE_DIR)
diff --git a/package/dhcp6/ipkg/dhcp6.control b/package/dhcp6/ipkg/dhcp6.control
new file mode 100755
index 000000000..cc030a0e2
--- /dev/null
+++ b/package/dhcp6/ipkg/dhcp6.control
@@ -0,0 +1,5 @@
+Package: dhcp6
+Section: net
+Architecture: mipsel
+Priority: optional
+Description: This is the first ever open source implementation of Dynamic Host Configuration Protocol for IPv6 (DHCPv6) server and client on Linux Operating System. The server provides leases (durations or lifetimes) on IPv6 addresses to the clients who request for it.
diff --git a/package/dhcp6/ipkg/files/conffiles b/package/dhcp6/ipkg/files/conffiles
new file mode 100644
index 000000000..267baa94d
--- /dev/null
+++ b/package/dhcp6/ipkg/files/conffiles
@@ -0,0 +1,4 @@
+/etc/dhcpd6/dhcpd6.conf
+/etc/dhcpd6/leases6.conf
+/etc/dhcpd6/partial_leases6.conf
+/etc/dhcp6/sollicit.conf
diff --git a/package/dhcp6/patches/01-remove_debug.patch b/package/dhcp6/patches/01-remove_debug.patch
new file mode 100644
index 000000000..d39eeb126
--- /dev/null
+++ b/package/dhcp6/patches/01-remove_debug.patch
@@ -0,0 +1,118 @@
+diff -urN orig/dhcp6-1.0/client/Makefile dhcp6-1.0/client/Makefile
+--- orig/dhcp6-1.0/client/Makefile 2025-06-28 23:21:40.000000000 +0200
++++ dhcp6-1.0/client/Makefile 2005-12-13 13:43:11.000000000 +0100
+@@ -1,42 +1,40 @@
+-
+-CC = gcc
+ STD_HEADERS = stdhead.h head.h struct.h options_type.h message_type.h states.h timer_val.h constants.h macros.h status_codes.h
+ OBJECT_FILES = client.o solicit.o clilib.o parse.o request.o decline.o renew.o rebind.o release.o
+ HEADER_FILES = solicit.h clilib.h parse.h request.h decline.h renew.h rebind.h release.h
+-
++IFLAGS = -I$(STAGING_DIR)/usr/include
+
+ dhcpv6_client : dhcpv6_client.c cli
+- $(CC) -g3 dhcpv6_client.c -o dhcpv6_client
++ $(CC) $(IFLAGS) dhcpv6_client.c -o dhcpv6_client
+
+ cli : $(OBJECT_FILES)
+- $(CC) -g3 $(OBJECT_FILES) -o cli -lncurses
++ $(CC) $(IFLAGS) $(OBJECT_FILES) -o cli -L$(STAGING_DIR)/usr/lib -lncurses
+
+ client.o : client.c $(STD_HEADERS) $(HEADER_FILES)
+- $(CC) -g3 -c client.c -o client.o
++ $(CC) $(IFLAGS) -c client.c -o client.o
+
+ release.o : release.c release.h clilib.h
+- $(CC) -g3 -c release.c -o release.o
++ $(CC) $(IFLAGS) -c release.c -o release.o
+
+ rebind.o : rebind.c rebind.h clilib.h
+- $(CC) -g3 -c rebind.c -o rebind.o
++ $(CC) $(IFLAGS) -c rebind.c -o rebind.o
+
+ renew.o : renew.c renew.h clilib.h
+- $(CC) -g3 -c renew.c -o renew.o
++ $(CC) $(IFLAGS) -c renew.c -o renew.o
+
+ request.o : request.c request.h clilib.h
+- $(CC) -g3 -c request.c -o request.o
++ $(CC) $(IFLAGS) -c request.c -o request.o
+
+ decline.o : decline.c decline.h clilib.h parse.h solicit.h
+- $(CC) -g3 -c decline.c -o decline.o
++ $(CC) $(IFLAGS) -c decline.c -o decline.o
+
+ solicit.o : solicit.c solicit.h clilib.h parse.h
+- $(CC) -g3 -c solicit.c -o solicit.o
++ $(CC) $(IFLAGS) -c solicit.c -o solicit.o
+
+ clilib.o : clilib.c clilib.h parse.h
+- $(CC) -g3 -c clilib.c -o clilib.o
++ $(CC) $(IFLAGS) -c clilib.c -o clilib.o
+
+ parse.o : parse.c parse.h clilib.h
+- $(CC) -g3 -c parse.c -o parse.o
++ $(CC) $(IFLAGS) -c parse.c -o parse.o
+
+ clean :
+ rm -f *.o cli dhcpv6_client
+diff -urN orig/dhcp6-1.0/client/clilib.c dhcp6-1.0/client/clilib.c
+--- orig/dhcp6-1.0/client/clilib.c 2025-06-28 23:21:40.000000000 +0200
++++ dhcp6-1.0/client/clilib.c 2005-12-13 13:42:43.000000000 +0100
+@@ -554,7 +554,7 @@
+
+ void generate_trans_id (u_int32_t *trans_id)
+ {
+- extern u_int32_t g_trans_id;
++ extern int g_trans_id;
+ time_t t;
+ srand (time (&t));
+ *trans_id = 0;
+@@ -890,9 +890,7 @@
+ break;
+
+ default :
+-#if DEBUG == 3
+ printf ("Unrecognized DUID type\n");
+-#endif
+ }
+
+ next_opt = (struct OPTIONS *) malloc (sizeof (struct OPTIONS));
+diff -urN orig/dhcp6-1.0/server/Makefile dhcp6-1.0/server/Makefile
+--- orig/dhcp6-1.0/server/Makefile 2002-06-28 14:50:04.000000000 +0200
++++ dhcp6-1.0/server/Makefile 2005-12-13 11:35:53.000000000 +0100
+@@ -1,27 +1,26 @@
+-CC = gcc
+ STD_HEADERS = stdhead.h head.h struct.h options_type.h message_type.h macros.h status_codes.h constants.h
+ OBJECT_FILES = server.o lib.o advertise.o parse.o leases.o reply.o
+
+ serv: $(OBJECT_FILES)
+- $(CC) -g3 $(OBJECT_FILES) -o serv
++ $(CC) $(OBJECT_FILES) -o serv
+
+ lib.o: lib.c lib.h $(STD_HEADERS)
+- $(CC) -g3 -c lib.c -o lib.o
++ $(CC) -c lib.c -o lib.o
+
+ parse.o: parse.c parse.h $(STD_HEADERS)
+- $(CC) -g3 -c parse.c -o parse.o
++ $(CC) -c parse.c -o parse.o
+
+ leases.o: leases.c leases.h $(STD_HEADERS)
+- $(CC) -g3 -c leases.c -o leases.o
++ $(CC) -c leases.c -o leases.o
+
+ advertise.o: advertise.c advertise.h $(STD_HEADERS)
+- $(CC) -g3 -c advertise.c -o advertise.o
++ $(CC) -c advertise.c -o advertise.o
+
+ reply.o: reply.c reply.h $(STD_HEADERS)
+- $(CC) -g3 -c reply.c -o reply.o
++ $(CC) -c reply.c -o reply.o
+
+ server.o: server.c lib.h advertise.h reply.h leases.h parse.h $(STD_HEADERS)
+- $(CC) -g3 -c server.c -o server.o
++ $(CC) -c server.c -o server.o
+
+ clean:
+ rm -f *.o serv
diff --git a/package/rules.mk b/package/rules.mk
index 18f53bdc3..9bbf4fa48 100644
--- a/package/rules.mk
+++ b/package/rules.mk
@@ -45,7 +45,11 @@ ifneq ($(strip $(PKG_CAT)),)
$(PKG_BUILD_DIR)/.prepared: $(DL_DIR)/$(PKG_SOURCE)
rm -rf $(PKG_BUILD_DIR)
mkdir -p $(PKG_BUILD_DIR)
- $(PKG_CAT) $(DL_DIR)/$(PKG_SOURCE) | tar -C $(PKG_BUILD_DIR)/.. $(TAR_OPTIONS) -
+ if [ "$(PKG_CAT)" = "unzip" ]; then \
+ unzip -d $(PKG_BUILD_DIR) $(DL_DIR)/$(PKG_SOURCE) ; \
+ else \
+ $(PKG_CAT) $(DL_DIR)/$(PKG_SOURCE) | tar -C $(PKG_BUILD_DIR)/.. $(TAR_OPTIONS) - ; \
+ fi
if [ -d ./patches ]; then \
$(PATCH) $(PKG_BUILD_DIR) ./patches ; \
fi
diff --git a/package/vnc-reflector/Config.in b/package/vnc-reflector/Config.in
index 84a158c39..19dfebf4b 100755
--- a/package/vnc-reflector/Config.in
+++ b/package/vnc-reflector/Config.in
@@ -1,5 +1,5 @@
config BR2_PACKAGE_VNC_REFLECTOR
- tristate "vnc-reflector....................... VNC proxy for multiple clients"
+ tristate "vnc-reflector - VNC proxy"
default m if CONFIG_DEVEL
depends on BR2_PACKAGE_JPEG
depends on BR2_PACKAGE_ZLIB