All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest
@ 2013-01-06  9:12 Khem Raj
  2013-01-06  9:12 ` [meta-networking][PATCH V2 02/25] ebtables: Fix segfault by linking with no-as-needed Khem Raj
                   ` (23 more replies)
  0 siblings, 24 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Make LICENSE more specific
Add LIC_FILES_CHKSUM

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../arptables-compile-install.patch                |   61 ++++++++++++++++
 .../arptables-0.0.3-4/arptables-init-busybox.patch |   77 ++++++++++++++++++++
 .../recipes-support/arptables/arptables_0.0.3-4.bb |   23 ++++++
 3 files changed, 161 insertions(+)
 create mode 100644 meta-networking/recipes-support/arptables/arptables-0.0.3-4/arptables-compile-install.patch
 create mode 100644 meta-networking/recipes-support/arptables/arptables-0.0.3-4/arptables-init-busybox.patch
 create mode 100644 meta-networking/recipes-support/arptables/arptables_0.0.3-4.bb

diff --git a/meta-networking/recipes-support/arptables/arptables-0.0.3-4/arptables-compile-install.patch b/meta-networking/recipes-support/arptables/arptables-0.0.3-4/arptables-compile-install.patch
new file mode 100644
index 0000000..80e9804
--- /dev/null
+++ b/meta-networking/recipes-support/arptables/arptables-0.0.3-4/arptables-compile-install.patch
@@ -0,0 +1,61 @@
+Index: arptables-v0.0.3-4/Makefile
+===================================================================
+--- arptables-v0.0.3-4.orig/Makefile	2010-03-08 18:49:28.000000000 +0300
++++ arptables-v0.0.3-4/Makefile	2010-03-22 15:52:56.000000000 +0300
+@@ -6,12 +6,11 @@
+ LIBDIR:=$(PREFIX)/lib
+ BINDIR:=$(PREFIX)/sbin
+ MANDIR:=$(PREFIX)/man
+-INITDIR:=/etc/rc.d/init.d
++INITDIR:=/etc/init.d
+ SYSCONFIGDIR:=/etc/sysconfig
+ DESTDIR:=
+ 
+-COPT_FLAGS:=-O2
+-CFLAGS:=$(COPT_FLAGS) -Wall -Wunused -I$(KERNEL_DIR)/include/ -Iinclude/ -DARPTABLES_VERSION=\"$(ARPTABLES_VERSION)\" #-g -DDEBUG #-pg # -DARPTC_DEBUG
++ARPCFLAGS:=-Wall -Wunused -I$(KERNEL_DIR)/include/ -Iinclude/ -DARPTABLES_VERSION=\"$(ARPTABLES_VERSION)\"
+ 
+ ifndef ARPT_LIBDIR
+ ARPT_LIBDIR:=$(LIBDIR)/arptables
+@@ -22,16 +21,16 @@
+ all: arptables
+ 
+ arptables.o: arptables.c
+-	$(CC) $(CFLAGS) -c -o $@ $<
++	$(CC) $(CFLAGS) $(ARPCFLAGS) -c -o $@ $<
+ 
+ arptables-standalone.o: arptables-standalone.c
+-	$(CC) $(CFLAGS) -c -o $@ $<
++	$(CC) $(CFLAGS) $(ARPCFLAGS) -c -o $@ $<
+ 
+ libarptc/libarptc.o: libarptc/libarptc.c libarptc/libarptc_incl.c
+-	$(CC) $(CFLAGS) -c -o $@ $<
++	$(CC) $(CFLAGS) $(ARPCFLAGS) -c -o $@ $<
+ 
+ arptables: arptables-standalone.o arptables.o libarptc/libarptc.o $(EXT_OBJS)
+-	$(CC) $(CFLAGS) -o $@ $^
++	$(CC) $(LDFLAGS) $(CFLAGS) $(ARPCFLAGS) -o $@ $^
+ 
+ $(DESTDIR)$(MANDIR)/man8/arptables.8: arptables.8
+ 	mkdir -p $(@D)
+@@ -50,6 +49,7 @@
+ 	cat arptables-restore | sed 's/__EXEC_PATH__/$(tmp1)/g' > arptables-restore_
+ 	install -m 0755 -o root -g root arptables-restore_ $(DESTDIR)$(BINDIR)/arptables-restore
+ 	cat arptables.sysv | sed 's/__EXEC_PATH__/$(tmp1)/g' | sed 's/__SYSCONFIG__/$(tmp2)/g' > arptables.sysv_
++	install -d $(DESTDIR)$(INITDIR)
+ 	if test -d $(DESTDIR)$(INITDIR); then install -m 0755 -o root -g root arptables.sysv_ $(DESTDIR)$(INITDIR)/arptables; fi
+ 	rm -f arptables-save_ arptables-restore_ arptables.sysv_
+ 
+Index: arptables-v0.0.3-4/extensions/Makefile
+===================================================================
+--- arptables-v0.0.3-4.orig/extensions/Makefile	2010-03-08 18:49:28.000000000 +0300
++++ arptables-v0.0.3-4/extensions/Makefile	2010-03-22 15:52:38.000000000 +0300
+@@ -4,4 +4,7 @@
+ EXT_OBJS+=$(foreach T,$(EXT_FUNC), extensions/arpt_$(T).o)
+ 
+ extensions/ebt_%.o: extensions/arpt_%.c include/arptables.h include/arptables_common.h
+-	$(CC) $(CFLAGS) $(PROGSPECS) -c -o $@ $<
++	$(CC) $(CFLAGS) $(ARPCFLAGS) $(PROGSPECS) -c -o $@ $<
++
++extensions/arpt_%.o: extensions/arpt_%.c include/arptables.h include/arptables_common.h
++	$(CC) $(CFLAGS) $(ARPCFLAGS) $(PROGSPECS) -c -o $@ $<
diff --git a/meta-networking/recipes-support/arptables/arptables-0.0.3-4/arptables-init-busybox.patch b/meta-networking/recipes-support/arptables/arptables-0.0.3-4/arptables-init-busybox.patch
new file mode 100644
index 0000000..24956c4
--- /dev/null
+++ b/meta-networking/recipes-support/arptables/arptables-0.0.3-4/arptables-init-busybox.patch
@@ -0,0 +1,77 @@
+Index: arptables-v0.0.3-4/arptables.sysv
+===================================================================
+--- arptables-v0.0.3-4.orig/arptables.sysv	2010-03-22 16:28:03.000000000 +0300
++++ arptables-v0.0.3-4/arptables.sysv	2010-03-22 16:27:51.000000000 +0300
+@@ -12,10 +12,10 @@
+ # config: __SYSCONFIG__/arptables
+ 
+ source /etc/init.d/functions
+-source /etc/sysconfig/network
++# source /etc/sysconfig/network
+ 
+ # Check that networking is up.
+-[ ${NETWORKING} = "no" ] && exit 0
++# [ ${NETWORKING} = "no" ] && exit 0
+ 
+ [ -x __EXEC_PATH__/arptables ] || exit 1
+ [ -x __EXEC_PATH__/arptables-save ] || exit 1
+@@ -28,32 +28,30 @@
+ desc="Arp filtering"
+ 
+ start() {
+-	echo -n $"Starting $desc ($prog): "
++	echo -n "Starting $desc ($prog): "
+ 	__EXEC_PATH__/arptables-restore < __SYSCONFIG__/arptables || RETVAL=1
+ 
+ 	if [ $RETVAL -eq 0 ]; then
+-		success "$prog startup"
+-		rm -f /var/lock/subsys/$prog
++		echo "$prog ok"
++		touch /var/lock/subsys/$prog
+ 	else
+-		failure "$prog startup"
++		echo "$prog failed"
+ 	fi
+ 
+-	echo
+ 	return $RETVAL
+ }
+ 
+ stop() {
+-	echo -n $"Stopping $desc ($prog): "
++	echo -n "Stopping $desc ($prog): "
+ 	__EXEC_PATH__/arptables-restore < /dev/null || RETVAL=1
+ 
+ 	if [ $RETVAL -eq 0 ]; then
+-		success "$prog shutdown"
+-		rm -f %{_localstatedir}/lock/subsys/$prog
++		echo "$prog stopped"
++		rm -f /var/lock/subsys/$prog
+ 	else
+-		failure "$prog shutdown"
++		echo "$prog failed to stop"
+ 	fi
+ 
+-	echo
+ 	return $RETVAL
+ }
+ 
+@@ -63,15 +61,14 @@
+ }
+ 
+ save() {
+-	echo -n $"Saving $desc ($prog): "
++	echo -n "Saving $desc ($prog): "
+ 	__EXEC_PATH__/arptables-save > __SYSCONFIG__/arptables || RETVAL=1
+ 
+ 	if [ $RETVAL -eq 0 ]; then
+-		success "$prog saved"
++		echo "$prog saved"
+ 	else
+-		failure "$prog saved"
++		echo "$prog is not saved"
+ 	fi
+-	echo
+ }
+ 
+ case "$1" in
diff --git a/meta-networking/recipes-support/arptables/arptables_0.0.3-4.bb b/meta-networking/recipes-support/arptables/arptables_0.0.3-4.bb
new file mode 100644
index 0000000..71e2600
--- /dev/null
+++ b/meta-networking/recipes-support/arptables/arptables_0.0.3-4.bb
@@ -0,0 +1,23 @@
+DESCRIPTION = "Administration tool for arp packet filtering"
+PRIORITY = "optional"
+LICENSE = "GPL-2.0"
+SECTION = "console/network"
+
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6"
+SRC_URI = " \
+	${SOURCEFORGE_MIRROR}/ebtables/arptables-v${PV}.tar.gz;name=arptables \
+	file://arptables-compile-install.patch \
+	file://arptables-init-busybox.patch \
+	"
+SRC_URI[arptables.md5sum] = "1d4ab05761f063b0751645d8f2b8f8e5"
+SRC_URI[arptables.sha256sum] = "e529fd465c67d69ad335299a043516e6b38cdcd337a5ed21718413e96073f928"
+
+S = "${WORKDIR}/arptables-v${PV}"
+
+do_compile () {
+	oe_runmake
+}
+
+fakeroot do_install () {
+	oe_runmake 'BINDIR=${sbindir}' 'MANDIR=${mandir}/' 'DESTDIR=${D}' install
+}
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-networking][PATCH V2 02/25] ebtables: Fix segfault by linking with no-as-needed
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:12 ` [meta-networking][PATCH V2 03/25] autofs: Add recipes for 5.0.7 Khem Raj
                   ` (22 subsequent siblings)
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../ebtables/ebtables-2.0.10-4/no-as-needed.patch  |   25 ++++++++++++++++++++
 .../recipes-filter/ebtables/ebtables_2.0.10-4.bb   |    3 ++-
 2 files changed, 27 insertions(+), 1 deletion(-)
 create mode 100644 meta-networking/recipes-filter/ebtables/ebtables-2.0.10-4/no-as-needed.patch

diff --git a/meta-networking/recipes-filter/ebtables/ebtables-2.0.10-4/no-as-needed.patch b/meta-networking/recipes-filter/ebtables/ebtables-2.0.10-4/no-as-needed.patch
new file mode 100644
index 0000000..336119d
--- /dev/null
+++ b/meta-networking/recipes-filter/ebtables/ebtables-2.0.10-4/no-as-needed.patch
@@ -0,0 +1,25 @@
+link ebtables with --no-as-needed and adjust the link order to fix runtime crash
+
+Program terminated with signal 11, Segmentation fault.
+#0  0x00007ffaa837fb53 in ebt_initialize_entry () from /lib64/ebtables/libebtc.so
+(gdb) bt
+#0  0x00007ffaa837fb53 in ebt_initialize_entry () from /lib64/ebtables/libebtc.so
+#1  0x00007ffaa83824dc in do_command () from /lib64/ebtables/libebtc.so
+#2  0x000000000040065c in ?? ()
+#3  0x00007ffaa7fed755 in __libc_start_main () from /lib64/libc.so.6
+#4  0x0000000000400691 in ?? ()
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Index: ebtables-v2.0.10-4/Makefile
+===================================================================
+--- ebtables-v2.0.10-4.orig/Makefile	2011-12-15 12:02:47.000000000 -0800
++++ ebtables-v2.0.10-4/Makefile	2012-12-17 22:09:45.065973753 -0800
+@@ -90,7 +90,7 @@
+ 	$(CC) -shared $(LDFLAGS) -Wl,-soname,libebtc.so -o libebtc.so -lc $(OBJECTS2)
+ 
+ ebtables: $(OBJECTS) ebtables-standalone.o libebtc.so
+-	$(CC) $(CFLAGS) $(CFLAGS_SH_LIB) $(LDFLAGS) -o $@ ebtables-standalone.o -I$(KERNEL_INCLUDES) -L. -Lextensions -lebtc $(EXT_LIBSI) \
++	$(CC) $(CFLAGS) $(CFLAGS_SH_LIB) $(LDFLAGS) -o $@ ebtables-standalone.o -I$(KERNEL_INCLUDES) -L. -Lextensions -Wl,--no-as-needed $(EXT_LIBSI) -lebtc \
+ 	-Wl,-rpath,$(LIBDIR)
+ 
+ ebtablesu: ebtablesu.c
diff --git a/meta-networking/recipes-filter/ebtables/ebtables_2.0.10-4.bb b/meta-networking/recipes-filter/ebtables/ebtables_2.0.10-4.bb
index e3476da..2596d2f 100644
--- a/meta-networking/recipes-filter/ebtables/ebtables_2.0.10-4.bb
+++ b/meta-networking/recipes-filter/ebtables/ebtables_2.0.10-4.bb
@@ -2,12 +2,13 @@ SUMMARY = "Utility for basic Ethernet frame filtering on a Linux bridge, MAC NAT
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=53b4a999993871a28ab1488fdbd2e73e"
 SECTION = "console/network"
-PR = "r0"
+PR = "r1"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/ebtables/ebtables-v${PV}.tar.gz \
            file://installnonroot.patch \
            file://01debian_defaultconfig.patch \
            file://ebtables.init \
+           file://no-as-needed.patch \
            "
 
 SRC_URI[md5sum] = "506742a3d44b9925955425a659c1a8d0"
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-networking][PATCH V2 03/25] autofs: Add recipes for 5.0.7
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
  2013-01-06  9:12 ` [meta-networking][PATCH V2 02/25] ebtables: Fix segfault by linking with no-as-needed Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-07 15:58   ` Joe MacDonald
  2013-01-06  9:12 ` [meta-networking][PATCH V2 04/25] nis: Import recipes from OE classic Khem Raj
                   ` (21 subsequent siblings)
  23 siblings, 1 reply; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Forward port from OE classic

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../autofs/autofs-5.0.7/Makefile.rules-cross.patch |   23 ++
 ...autofs-5.0.6-fix-recursive-mount-deadlock.patch |   78 +++++
 ...-5.0.6-increase-file-map-read-buffer-size.patch |   38 +++
 ...DME-update-mailing-list-subscription-info.patch |   56 ++++
 ...dd-timeout-option-description-to-man-page.patch |   42 +++
 ...5.0.7-allow-non-root-user-to-check-status.patch |   69 +++++
 ...-configure-allow-cross-compilation-update.patch |   28 ++
 ....0.7-configure-in-allow-cross-compilation.patch |   41 +++
 ...autofs-5.0.7-dont-wait-forever-to-restart.patch |   54 ++++
 ...tofs-5.0.7-fix-ipv6-proximity-calculation.patch |  297 ++++++++++++++++++++
 ...-5.0.7-fix-nobind-sun-escaped-map-entries.patch |   47 ++++
 ...s-5.0.7-fix-null-map-entry-order-handling.patch |   81 ++++++
 ...ofs-5.0.7-fix-parse-buffer-initialization.patch |   51 ++++
 .../autofs-5.0.7-fix-typo-in-automount-8.patch     |   37 +++
 ....7-fix-use-cache-entry-after-free-mistake.patch |   49 ++++
 ...tofs-5.0.7-handle-new-location-of-systemd.patch |   57 ++++
 ...tofs-5.0.7-include-usage-in-usage-message.patch |   25 ++
 ...ption-of-default-MOUNT_WAIT-setting-clear.patch |   57 ++++
 .../autofs-5.0.7/autofs-additional-distros.patch   |   12 +
 .../autofs/autofs-5.0.7/cross.patch                |   44 +++
 .../autofs-5.0.7/libtirpc-name-clash-backout.patch |   21 ++
 .../autofs/autofs-5.0.7/libtirpc.patch             |   26 ++
 .../autofs/autofs-5.0.7/no-bash.patch              |   20 ++
 .../recipes-daemons/autofs/autofs_5.0.7.bb         |   71 +++++
 24 files changed, 1324 insertions(+)
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/Makefile.rules-cross.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.6-fix-recursive-mount-deadlock.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.6-increase-file-map-read-buffer-size.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-README-update-mailing-list-subscription-info.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-add-timeout-option-description-to-man-page.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-allow-non-root-user-to-check-status.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-configure-allow-cross-compilation-update.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-configure-in-allow-cross-compilation.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-dont-wait-forever-to-restart.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-ipv6-proximity-calculation.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-nobind-sun-escaped-map-entries.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-null-map-entry-order-handling.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-parse-buffer-initialization.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-typo-in-automount-8.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-use-cache-entry-after-free-mistake.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-handle-new-location-of-systemd.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-include-usage-in-usage-message.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-make-description-of-default-MOUNT_WAIT-setting-clear.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-additional-distros.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/cross.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/libtirpc-name-clash-backout.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/libtirpc.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs-5.0.7/no-bash.patch
 create mode 100644 meta-networking/recipes-daemons/autofs/autofs_5.0.7.bb

diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/Makefile.rules-cross.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/Makefile.rules-cross.patch
new file mode 100644
index 0000000..7dc7096
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/Makefile.rules-cross.patch
@@ -0,0 +1,23 @@
+Index: autofs-5.0.7/Makefile.rules
+===================================================================
+--- autofs-5.0.7.orig/Makefile.rules	2012-07-24 23:05:26.000000000 -0700
++++ autofs-5.0.7/Makefile.rules	2012-10-26 09:23:40.270204270 -0700
+@@ -34,14 +34,14 @@
+ else
+ CFLAGS    ?= -O2 -Wall
+ LDFLAGS   = -s
+-STRIP     = strip --strip-debug
++STRIP     = ${TARGET_PREFIX}strip --strip-debug
+ endif
+ endif
+ 
+-CC        = gcc
+-CXX       = g++
++CC        ?= ${TARGET_PREFIX}gcc
++CXX       ?= ${TARGET_PREFIX}g++
+ CXXFLAGS  = $(CFLAGS)
+-LD        = ld
++LD        ?= ${TARGET_PREFIX}ld
+ SOLDFLAGS = -shared
+ 
+ CFLAGS += -D_REENTRANT -D_FILE_OFFSET_BITS=64
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.6-fix-recursive-mount-deadlock.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.6-fix-recursive-mount-deadlock.patch
new file mode 100644
index 0000000..e6549a7
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.6-fix-recursive-mount-deadlock.patch
@@ -0,0 +1,78 @@
+autofs-5.0.6 - fix recursive mount deadlock
+
+From: Ian Kent <raven@themaw.net>
+
+Prior to the vfs-automount changes that went into 2.6.38
+and were finalized in 3.1 it was not possible to block
+path walks into multi-mounts whose root was covered by
+another mount. To deal with that a write lock was used
+to ensure the mount tree construction was completed. This
+restricts the types of recursively defined mount maps that
+can be used and can lead to a deadlock during lookup.
+
+Now that we can prevent processes walking into multi-mounts
+that are under construction we no longer need to use a
+write lock.
+
+Also, in the patch below, a cache writelock is changed to
+a read lock because a write lock isn't needed since the
+map cache entry isn't being updated.
+---
+
+ CHANGELOG       |    1 +
+ daemon/direct.c |   14 ++++++++++++--
+ 2 files changed, 13 insertions(+), 2 deletions(-)
+
+
+diff --git a/CHANGELOG b/CHANGELOG
+index 936c9ab..9cdad6e 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -12,6 +12,7 @@
+ - configure.in: allow cross compilation.
+ - README: update mailing list subscription info.
+ - allow non root user to check status.
++- fix recursive mount deadlock.
+ 
+ 25/07/2012 autofs-5.0.7
+ =======================
+diff --git a/daemon/direct.c b/daemon/direct.c
+index 7e2f0d7..3e09c5d 100644
+--- a/daemon/direct.c
++++ b/daemon/direct.c
+@@ -1285,6 +1285,8 @@ int handle_packet_missing_direct(struct autofs_point *ap, autofs_packet_missing_
+ 	struct timespec wait;
+ 	struct timeval now;
+ 	int ioctlfd, len, state;
++	unsigned int kver_major = get_kver_major();
++	unsigned int kver_minor = get_kver_minor();
+ 
+ 	pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, &state);
+ 
+@@ -1297,8 +1299,16 @@ int handle_packet_missing_direct(struct autofs_point *ap, autofs_packet_missing_
+ 	 * cache entry we will not be able to find the mapent. So
+ 	 * we must take the source writelock to ensure the parent
+ 	 * has mount is complete before we look for the entry.
++	 *
++	 * Since the vfs-automount kernel changes we can now block
++	 * on covered mounts during mount tree construction so a
++	 * write lock is no longer needed. So we now can handle a
++	 * wider class of recursively define mount lookups.
+ 	 */
+-	master_source_writelock(ap->entry);
++	if (kver_major > 5 || (kver_major == 5 && kver_minor > 1))
++		master_source_readlock(ap->entry);
++	else
++		master_source_writelock(ap->entry);
+ 	map = ap->entry->maps;
+ 	while (map) {
+ 		/*
+@@ -1311,7 +1321,7 @@ int handle_packet_missing_direct(struct autofs_point *ap, autofs_packet_missing_
+ 		}
+ 
+ 		mc = map->mc;
+-		cache_writelock(mc);
++		cache_readlock(mc);
+ 		me = cache_lookup_ino(mc, pkt->dev, pkt->ino);
+ 		if (me)
+ 			break;
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.6-increase-file-map-read-buffer-size.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.6-increase-file-map-read-buffer-size.patch
new file mode 100644
index 0000000..39b2221
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.6-increase-file-map-read-buffer-size.patch
@@ -0,0 +1,38 @@
+autofs-5.0.6 - increase file map read buffer size
+
+From: Ian Kent <raven@themaw.net>
+
+The file map entry read buffer can be too small for larger
+multi-mount map entries so increase it.
+---
+
+ CHANGELOG           |    1 +
+ include/automount.h |    2 +-
+ 2 files changed, 2 insertions(+), 1 deletions(-)
+
+
+diff --git a/CHANGELOG b/CHANGELOG
+index 9cdad6e..3bdf8a4 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -13,6 +13,7 @@
+ - README: update mailing list subscription info.
+ - allow non root user to check status.
+ - fix recursive mount deadlock.
++- increase file map read buffer size.
+ 
+ 25/07/2012 autofs-5.0.7
+ =======================
+diff --git a/include/automount.h b/include/automount.h
+index 561fcc2..37541f5 100644
+--- a/include/automount.h
++++ b/include/automount.h
+@@ -233,7 +233,7 @@ int rmdir_path(struct autofs_point *ap, const char *path, dev_t dev);
+ #define AUTOFS_LOOKUP_VERSION 5
+ 
+ #define KEY_MAX_LEN    NAME_MAX
+-#define MAPENT_MAX_LEN 4095
++#define MAPENT_MAX_LEN 16384
+ #define PARSE_MAX_BUF	KEY_MAX_LEN + MAPENT_MAX_LEN + 2
+ 
+ int lookup_nss_read_master(struct master *master, time_t age);
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-README-update-mailing-list-subscription-info.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-README-update-mailing-list-subscription-info.patch
new file mode 100644
index 0000000..99b6181
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-README-update-mailing-list-subscription-info.patch
@@ -0,0 +1,56 @@
+autofs-5.0.7 - README: update mailing list subscription info
+
+From: Chris Packham <chris.packham@alliedtelesis.co.nz>
+
+Following the kernel.org compromise the mailing list was moved to
+vger.kernel.org. Update the subscription info and add URLs for the gmane
+mailing list archive.
+
+Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
+---
+
+ CHANGELOG |    1 +
+ README    |   17 ++++++++++++++---
+ 2 files changed, 15 insertions(+), 3 deletions(-)
+
+
+diff --git a/CHANGELOG b/CHANGELOG
+index fe801e8..44c9fb2 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -10,6 +10,7 @@
+ - fix null map entry order handling.
+ - make description of default MOUNT_WAIT setting clear.
+ - configure.in: allow cross compilation.
++- README: update mailing list subscription info.
+ 
+ 25/07/2012 autofs-5.0.7
+ =======================
+diff --git a/README b/README
+index cef16a9..9024e64 100644
+--- a/README
++++ b/README
+@@ -43,9 +43,20 @@ Fitzhardinge's <jeremy@goop.org> work on autofs 3. Further enhancements
+ have been made by Ian Kent <raven@themaw.net>.
+ 
+ If you use or want to help develop autofs, please join the autofs
+-mailing list by visiting:
++mailing list by sending an email to:
+ 
+-	http://linux.kernel.org/mailman/listinfo/autofs
++	majordomo@vger.kernel.org
+ 
+-and folling the instructions there to subscribe to the autofs mailing list.
++With the body text:
++
++	subscribe autofs
++
++Once subscribed you can send patches to:
++
++	autofs@vger.kernel.org
++
++The autofs mailing list archive can be viewed on gmane:
++
++	http://news.gmane.org/gmane.linux.kernel.autofs
++	http://blog.gmane.org/gmane.linux.kernel.autofs
+ 
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-add-timeout-option-description-to-man-page.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-add-timeout-option-description-to-man-page.patch
new file mode 100644
index 0000000..ac598dd
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-add-timeout-option-description-to-man-page.patch
@@ -0,0 +1,42 @@
+autofs-5.0.7 - add timeout option description to man page
+
+From: Ian Kent <ikent@redhat.com>
+
+The pseudo option used t set the timeout for map entries is one of
+the most most frequently used autofs options but is not mentioned
+in auto.master(5).
+---
+
+ CHANGELOG            |    1 +
+ man/auto.master.5.in |    5 +++++
+ 2 files changed, 6 insertions(+), 0 deletions(-)
+
+
+diff --git a/CHANGELOG b/CHANGELOG
+index 93b9c26..7b8d185 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -6,6 +6,7 @@
+ - fix parse buffer initialization.
+ - fix typo in automount(8).
+ - dont wait forever to restart.
++- add timeout option description to man page.
+ 
+ 25/07/2012 autofs-5.0.7
+ =======================
+diff --git a/man/auto.master.5.in b/man/auto.master.5.in
+index 54269f8..21d7544 100644
+--- a/man/auto.master.5.in
++++ b/man/auto.master.5.in
+@@ -167,6 +167,11 @@ server is specified in the map entry. If no server weights are given
+ then each available server will be tried in the order listed, within
+ proximity.
+ .TP
++.I "\-t, \-\-timeout <seconds>"
++Set the expire timeout for map entries. This option can be used to
++override the global default given either on the command line
++or in the configuration.
++.TP
+ .I "\-n, \-\-negative\-timeout <seconds>"
+ Set the timeout for caching failed key lookups. This option can be
+ used to override the global default given either on the command line
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-allow-non-root-user-to-check-status.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-allow-non-root-user-to-check-status.patch
new file mode 100644
index 0000000..6020c31
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-allow-non-root-user-to-check-status.patch
@@ -0,0 +1,69 @@
+autofs-5.0.7 - allow non root user to check status
+
+From: Ian Kent <ikent@redhat.com>
+
+
+---
+
+ CHANGELOG             |    1 +
+ redhat/autofs.init.in |   20 +++++++++++++-------
+ 2 files changed, 14 insertions(+), 7 deletions(-)
+
+
+diff --git a/CHANGELOG b/CHANGELOG
+index 44c9fb2..936c9ab 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -11,6 +11,7 @@
+ - make description of default MOUNT_WAIT setting clear.
+ - configure.in: allow cross compilation.
+ - README: update mailing list subscription info.
++- allow non root user to check status.
+ 
+ 25/07/2012 autofs-5.0.7
+ =======================
+diff --git a/redhat/autofs.init.in b/redhat/autofs.init.in
+index cd5cb34..fe18b3e 100644
+--- a/redhat/autofs.init.in
++++ b/redhat/autofs.init.in
+@@ -167,6 +167,19 @@ function usage_message() {
+ 
+ RETVAL=0
+ 
++# allow non-root users to read status / usage
++
++case "$1" in
++	status)
++		status -p @@autofspiddir@@/autofs.pid -l autofs $prog
++		exit 0;
++		;;
++	usage)
++		usage_message
++		exit 0;
++		;;
++esac
++
+ # Only the root user may change the service status
+ if [ `id -u` -ne 0 ] && [ "$1" != "status" ]; then
+ 	echo "insufficient privilege to change service status"
+@@ -184,9 +197,6 @@ case "$1" in
+ 	stop)
+ 		stop
+ 		;;
+-	status)
+-		status -p @@autofspiddir@@/autofs.pid -l autofs $prog
+-		;;
+ 	restart|force-reload)
+ 		restart
+ 		;;
+@@ -202,10 +212,6 @@ case "$1" in
+ 			restart
+ 		fi
+ 		;;
+-	usage)
+-		usage_message
+-		exit 0
+-		;;
+ 	*)
+ 		usage_message
+ 		exit 2
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-configure-allow-cross-compilation-update.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-configure-allow-cross-compilation-update.patch
new file mode 100644
index 0000000..a8bc3ce
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-configure-allow-cross-compilation-update.patch
@@ -0,0 +1,28 @@
+autofs-5.0.7 - configure: allow cross compilation update
+
+From: Chris Packham <chris.packham@alliedtelesis.co.nz>
+
+Run "make distclean" to update configure. This should have been included
+in 5936c738 when configure.in was updated but it was missed.
+---
+
+ configure |    5 +----
+ 1 files changed, 1 insertions(+), 4 deletions(-)
+
+
+diff --git a/configure b/configure
+index bf62203..ba3bba6 100755
+--- a/configure
++++ b/configure
+@@ -5378,10 +5378,7 @@ DAEMON_LDFLAGS=
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gcc -fPIE works" >&5
+ $as_echo_n "checking whether gcc -fPIE works... " >&6; }
+ if test "$cross_compiling" = yes; then :
+-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+-as_fn_error $? "cannot run test program while cross compiling
+-See \`config.log' for more details" "$LINENO" 5; }
++  gcc_supports_pie=no
+ else
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-configure-in-allow-cross-compilation.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-configure-in-allow-cross-compilation.patch
new file mode 100644
index 0000000..ac18bd9
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-configure-in-allow-cross-compilation.patch
@@ -0,0 +1,41 @@
+autofs-5.0.7 - configure.in: allow cross compilation
+
+From: Chris Packham <chris.packham@alliedtelesis.co.nz>
+
+The default behaviour of AC_RUN_IFELSE is to stop with an error if cross
+compiling. Avoid this by providing the optional 4th argument to set
+gcc_supports_pie=no if support for PIE cannot be detected.
+
+Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
+---
+
+ CHANGELOG    |    1 +
+ configure.in |    2 +-
+ 2 files changed, 2 insertions(+), 1 deletions(-)
+
+
+diff --git a/CHANGELOG b/CHANGELOG
+index 961e340..fe801e8 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -9,6 +9,7 @@
+ - add timeout option description to man page.
+ - fix null map entry order handling.
+ - make description of default MOUNT_WAIT setting clear.
++- configure.in: allow cross compilation.
+ 
+ 25/07/2012 autofs-5.0.7
+ =======================
+diff --git a/configure.in b/configure.in
+index 1a24e34..90bda62 100644
+--- a/configure.in
++++ b/configure.in
+@@ -307,7 +307,7 @@ DAEMON_CFLAGS=
+ DAEMON_LDFLAGS=
+ AC_MSG_CHECKING([whether gcc -fPIE works])
+ AC_RUN_IFELSE([AC_LANG_PROGRAM([[]], [[int main(void) {return 0;}]])],
+-	      [gcc_supports_pie=yes], [gcc_supports_pie=no])
++	      [gcc_supports_pie=yes], [gcc_supports_pie=no], [gcc_supports_pie=no])
+ AC_MSG_RESULT([$gcc_supports_pie])
+ if test $gcc_supports_pie = yes ; then
+ 	DAEMON_CFLAGS="-fPIE"
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-dont-wait-forever-to-restart.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-dont-wait-forever-to-restart.patch
new file mode 100644
index 0000000..9973b47
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-dont-wait-forever-to-restart.patch
@@ -0,0 +1,54 @@
+autofs-5.0.7 - dont wait forever to restart
+
+From: Ian Kent <ikent@redhat.com>
+
+When restarting autofs the daemon must be stopped before it is started
+again if it is to function properly. At the moment the init script waits
+forever which is not ok if the daemon won't exit for some reason.
+
+So, if the daemon is still running after the stop, run stop() again, wait
+a bit longer and if it still hasn't stopped kill it with a SIGKILL to clear
+the way for the startup.
+---
+
+ CHANGELOG             |    1 +
+ redhat/autofs.init.in |   13 ++++++++++---
+ 2 files changed, 11 insertions(+), 3 deletions(-)
+
+
+diff --git a/CHANGELOG b/CHANGELOG
+index 6051723..93b9c26 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -5,6 +5,7 @@
+ - fix ipv6 proximity calculation.
+ - fix parse buffer initialization.
+ - fix typo in automount(8).
++- dont wait forever to restart.
+ 
+ 25/07/2012 autofs-5.0.7
+ =======================
+diff --git a/redhat/autofs.init.in b/redhat/autofs.init.in
+index ec6d5d6..cd5cb34 100644
+--- a/redhat/autofs.init.in
++++ b/redhat/autofs.init.in
+@@ -129,9 +129,16 @@ function restart() {
+ 	status autofs > /dev/null 2>&1
+ 	if [ $? -eq 0 ]; then
+ 		stop
+-		while [ -n "`pidof $prog`" ] ; do
+-			sleep 5
+-		done
++		if [ -n "`pidof $prog`" ]; then
++			# If we failed to stop, try at least one more time
++			# after waiting a little while
++			sleep 20
++			stop
++			auto_pid=`pidof $prog`
++			if [ -n "$auto_pid" ]; then
++				kill -9 $auto_pid
++			fi
++		fi
+ 	fi
+ 	start
+ }
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-ipv6-proximity-calculation.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-ipv6-proximity-calculation.patch
new file mode 100644
index 0000000..b341ecd
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-ipv6-proximity-calculation.patch
@@ -0,0 +1,297 @@
+autofs-5.0.7 - fix ipv6 proximity calculation
+
+From: Ian Kent <ikent@redhat.com>
+
+The socket based ioctl used to get interface information only
+return IPv4 information. Change get_proximity() function to use
+getifaddrs(3) instead.
+---
+
+ CHANGELOG            |    1 
+ modules/replicated.c |  149 ++++++++++++++------------------------------------
+ 2 files changed, 42 insertions(+), 108 deletions(-)
+
+
+diff --git a/CHANGELOG b/CHANGELOG
+index dc38580..34c70fa 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -2,6 +2,7 @@
+ =======================
+ - fix nobind sun escaped map entries.
+ - fix use cache entry after free in lookup_prune_one_cache().
++- fix ipv6 proximity calculation.
+ 
+ 25/07/2012 autofs-5.0.7
+ =======================
+diff --git a/modules/replicated.c b/modules/replicated.c
+index 78046c6..bd6003b 100644
+--- a/modules/replicated.c
++++ b/modules/replicated.c
+@@ -52,6 +52,7 @@
+ #include <net/if.h>
+ #include <netinet/in.h>
+ #include <netdb.h>
++#include <ifaddrs.h>
+ 
+ #include "rpc_subs.h"
+ #include "replicated.h"
+@@ -110,58 +111,18 @@ void seed_random(void)
+ 	return;
+ }
+ 
+-static int alloc_ifreq(struct ifconf *ifc, int sock)
+-{
+-	int ret, lastlen = ifc_last_len, len = ifc_buf_len;
+-	char err_buf[MAX_ERR_BUF], *buf;
+-
+-	while (1) {
+-		buf = malloc(len);
+-		if (!buf) {
+-			char *estr = strerror_r(errno, err_buf, MAX_ERR_BUF);
+-			logerr("malloc: %s", estr);
+-			return 0;
+-		}
+-
+-		ifc->ifc_len = len;
+-		ifc->ifc_req = (struct ifreq *) buf;
+-
+-		ret = ioctl(sock, SIOCGIFCONF, ifc);
+-		if (ret == -1) {
+-			char *estr = strerror_r(errno, err_buf, MAX_ERR_BUF);
+-			logerr("ioctl: %s", estr);
+-			free(buf);
+-			return 0;
+-		}
+-
+-		if (ifc->ifc_len <= lastlen)
+-			break;
+-
+-		lastlen = ifc->ifc_len;
+-		len += MAX_IFC_BUF;
+-		free(buf);
+-	}
+-
+-	if (lastlen != ifc_last_len) {
+-		ifc_last_len = lastlen;
+-		ifc_buf_len = len;
+-	}
+-
+-	return 1;
+-}
+-
+ static unsigned int get_proximity(struct sockaddr *host_addr)
+ {
++	struct ifaddrs *ifa = NULL;
++	struct ifaddrs *this;
+ 	struct sockaddr_in *addr, *msk_addr, *if_addr;
+ 	struct sockaddr_in6 *addr6, *msk6_addr, *if6_addr;
+ 	struct in_addr *hst_addr;
+ 	struct in6_addr *hst6_addr;
+ 	int addr_len;
+-	char buf[MAX_ERR_BUF], *ptr;
+-	struct ifconf ifc;
+-	struct ifreq *ifr, nmptr;
+-	int sock, ret, i;
++	char buf[MAX_ERR_BUF];
+ 	uint32_t mask, ha, ia, *mask6, *ha6, *ia6;
++	int ret;
+ 
+ 	addr = NULL;
+ 	addr6 = NULL;
+@@ -170,13 +131,14 @@ static unsigned int get_proximity(struct sockaddr *host_addr)
+ 	mask6 = NULL;
+ 	ha6 = NULL;
+ 	ia6 = NULL;
++	ha = 0;
+ 
+ 	switch (host_addr->sa_family) {
+ 	case AF_INET:
+ 		addr = (struct sockaddr_in *) host_addr;
+ 		hst_addr = (struct in_addr *) &addr->sin_addr;
+ 		ha = ntohl((uint32_t) hst_addr->s_addr);
+-		addr_len = sizeof(hst_addr);
++		addr_len = sizeof(*hst_addr);
+ 		break;
+ 
+ 	case AF_INET6:
+@@ -186,7 +148,7 @@ static unsigned int get_proximity(struct sockaddr *host_addr)
+ 		addr6 = (struct sockaddr_in6 *) host_addr;
+ 		hst6_addr = (struct in6_addr *) &addr6->sin6_addr;
+ 		ha6 = &hst6_addr->s6_addr32[0];
+-		addr_len = sizeof(hst6_addr);
++		addr_len = sizeof(*hst6_addr);
+ 		break;
+ #endif
+ 
+@@ -194,36 +156,29 @@ static unsigned int get_proximity(struct sockaddr *host_addr)
+ 		return PROXIMITY_ERROR;
+ 	}
+ 
+-	sock = open_sock(AF_INET, SOCK_DGRAM, 0);
+-	if (sock < 0) {
++	ret = getifaddrs(&ifa);
++	if (ret) {
+ 		char *estr = strerror_r(errno, buf, MAX_ERR_BUF);
+-		logerr("socket creation failed: %s", estr);
++		logerr("getifaddrs: %s", estr);
+ 		return PROXIMITY_ERROR;
+ 	}
+ 
+-	if (!alloc_ifreq(&ifc, sock)) {
+-		close(sock);
+-		return PROXIMITY_ERROR;
+-	}
+-
+-	/* For each interface */
+-
+-	/* Is the address a local interface */
+-	i = 0;
+-	ptr = (char *) &ifc.ifc_buf[0];
+-
+-	while (ptr < (char *) ifc.ifc_req + ifc.ifc_len) {
+-		ifr = (struct ifreq *) ptr;
++	this = ifa;
++	while (this) {
++		if (this->ifa_flags & IFF_POINTOPOINT ||
++		    this->ifa_addr->sa_data == NULL) {
++			this = this->ifa_next;
++			continue;
++		}
+ 
+-		switch (ifr->ifr_addr.sa_family) {
++		switch (this->ifa_addr->sa_family) {
+ 		case AF_INET:
+ 			if (host_addr->sa_family == AF_INET6)
+ 				break;
+-			if_addr = (struct sockaddr_in *) &ifr->ifr_addr;
++			if_addr = (struct sockaddr_in *) this->ifa_addr;
+ 			ret = memcmp(&if_addr->sin_addr, hst_addr, addr_len);
+ 			if (!ret) {
+-				close(sock);
+-				free(ifc.ifc_req);
++				freeifaddrs(ifa);
+ 				return PROXIMITY_LOCAL;
+ 			}
+ 			break;
+@@ -234,55 +189,41 @@ static unsigned int get_proximity(struct sockaddr *host_addr)
+ #else
+ 			if (host_addr->sa_family == AF_INET)
+ 				break;
+-
+-			if6_addr = (struct sockaddr_in6 *) &ifr->ifr_addr;
++			if6_addr = (struct sockaddr_in6 *) this->ifa_addr;
+ 			ret = memcmp(&if6_addr->sin6_addr, hst6_addr, addr_len);
+ 			if (!ret) {
+-				close(sock);
+-				free(ifc.ifc_req);
++				freeifaddrs(ifa);
+ 				return PROXIMITY_LOCAL;
+ 			}
+ #endif
+-
+ 		default:
+ 			break;
+ 		}
+-
+-		i++;
+-		ptr = (char *) &ifc.ifc_req[i];
++		this = this->ifa_next;
+ 	}
+ 
+-	i = 0;
+-	ptr = (char *) &ifc.ifc_buf[0];
+-
+-	while (ptr < (char *) ifc.ifc_req + ifc.ifc_len) {
+-		ifr = (struct ifreq *) ptr;
+-
+-		nmptr = *ifr;
+-		ret = ioctl(sock, SIOCGIFNETMASK, &nmptr);
+-		if (ret == -1) {
+-			char *estr = strerror_r(errno, buf, MAX_ERR_BUF);
+-			logerr("ioctl: %s", estr);
+-			close(sock);
+-			free(ifc.ifc_req);
+-			return PROXIMITY_ERROR;
++	this = ifa;
++	while (this) {
++		if (this->ifa_flags & IFF_POINTOPOINT ||
++		    this->ifa_addr->sa_data == NULL) {
++			this = this->ifa_next;
++			continue;
+ 		}
+ 
+-		switch (ifr->ifr_addr.sa_family) {
++		switch (this->ifa_addr->sa_family) {
+ 		case AF_INET:
+ 			if (host_addr->sa_family == AF_INET6)
+ 				break;
+-			if_addr = (struct sockaddr_in *) &ifr->ifr_addr;
++			if_addr = (struct sockaddr_in *) this->ifa_addr;
+ 			ia =  ntohl((uint32_t) if_addr->sin_addr.s_addr);
+ 
+-			/* Is the address within a localiy attached subnet */
++			/* Is the address within a localy attached subnet */
+ 
+-			msk_addr = (struct sockaddr_in *) &nmptr.ifr_netmask;
++			msk_addr = (struct sockaddr_in *) this->ifa_netmask;
+ 			mask = ntohl((uint32_t) msk_addr->sin_addr.s_addr);
+ 
+ 			if ((ia & mask) == (ha & mask)) {
+-				close(sock);
+-				free(ifc.ifc_req);
++				freeifaddrs(ifa);
+ 				return PROXIMITY_SUBNET;
+ 			}
+ 
+@@ -304,8 +245,7 @@ static unsigned int get_proximity(struct sockaddr *host_addr)
+ 				break;
+ 
+ 			if ((ia & mask) == (ha & mask)) {
+-				close(sock);
+-				free(ifc.ifc_req);
++				freeifaddrs(ifa);
+ 				return PROXIMITY_NET;
+ 			}
+ 			break;
+@@ -316,35 +256,28 @@ static unsigned int get_proximity(struct sockaddr *host_addr)
+ #else
+ 			if (host_addr->sa_family == AF_INET)
+ 				break;
+-
+-			if6_addr = (struct sockaddr_in6 *) &ifr->ifr_addr;
++			if6_addr = (struct sockaddr_in6 *) this->ifa_addr;
+ 			ia6 = &if6_addr->sin6_addr.s6_addr32[0];
+ 
+ 			/* Is the address within the network of the interface */
+ 
+-			msk6_addr = (struct sockaddr_in6 *) &nmptr.ifr_netmask;
++			msk6_addr = (struct sockaddr_in6 *) this->ifa_netmask;
+ 			mask6 = &msk6_addr->sin6_addr.s6_addr32[0];
+ 
+ 			if (ipv6_mask_cmp(ha6, ia6, mask6)) {
+-				close(sock);
+-				free(ifc.ifc_req);
++				freeifaddrs(ifa);
+ 				return PROXIMITY_SUBNET;
+ 			}
+ 
+ 			/* How do we define "local network" in ipv6? */
+ #endif
+-			break;
+-
+ 		default:
+ 			break;
+ 		}
+-
+-		i++;
+-		ptr = (char *) &ifc.ifc_req[i];
++		this = this->ifa_next;
+ 	}
+ 
+-	close(sock);
+-	free(ifc.ifc_req);
++	freeifaddrs(ifa);
+ 
+ 	return PROXIMITY_OTHER;
+ }
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-nobind-sun-escaped-map-entries.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-nobind-sun-escaped-map-entries.patch
new file mode 100644
index 0000000..b5d7ad2
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-nobind-sun-escaped-map-entries.patch
@@ -0,0 +1,47 @@
+autofs-5.0.7 - fix nobind sun escaped map entries
+
+From: Ian Kent <ikent@redhat.com>
+
+If a map contains a Sun colon escape to indicate the mount is a local
+file system and the "nobind" option is present there is no hostname in
+the mount location and the mount fails.
+---
+
+ CHANGELOG           |    4 ++++
+ modules/mount_nfs.c |    5 +++--
+ 2 files changed, 7 insertions(+), 2 deletions(-)
+
+
+diff --git a/CHANGELOG b/CHANGELOG
+index 67fdcec..faf4c80 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -1,3 +1,7 @@
++??/??/2012 autofs-5.0.8
++=======================
++- fix nobind sun escaped map entries.
++
+ 25/07/2012 autofs-5.0.7
+ =======================
+ - fix ipv6 name for lookup fix.
+diff --git a/modules/mount_nfs.c b/modules/mount_nfs.c
+index 9b8e5f1..bbbb1de 100644
+--- a/modules/mount_nfs.c
++++ b/modules/mount_nfs.c
+@@ -263,13 +263,14 @@ int mount_mount(struct autofs_point *ap, const char *root, const char *name, int
+ 			} else
+ 				strcpy(loc, n_addr);
+ 		} else {
+-			loc = malloc(strlen(this->name) + strlen(this->path) + 2);
++			char *host = this->name ? this->name : "localhost";
++			loc = malloc(strlen(host) + strlen(this->path) + 2);
+ 			if (!loc) {
+ 				char *estr = strerror_r(errno, buf, MAX_ERR_BUF);
+ 				error(ap->logopt, "malloc: %s", estr);
+ 				goto forced_fail;
+ 			}
+-			strcpy(loc, this->name);
++			strcpy(loc, host);
+ 		}
+ 		strcat(loc, ":");
+ 		strcat(loc, this->path);
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-null-map-entry-order-handling.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-null-map-entry-order-handling.patch
new file mode 100644
index 0000000..610afaa
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-null-map-entry-order-handling.patch
@@ -0,0 +1,81 @@
+autofs-5.0.7 - fix null map entry order handling
+
+From: Ian Kent <ikent@redhat.com>
+
+If a null map entry appears after a corresponding indirect map entry
+autofs doesn't handle it properly.
+
+Since it appears after the map entry it should'nt affect it but autofs
+doesn't account for this case and assumes the map entry is already
+mounted and tries to shut it down causing attempted access to facilities
+that don't exist.
+---
+
+ CHANGELOG    |    1 +
+ lib/master.c |   32 +++++++++++++++++++++++++++++---
+ 2 files changed, 30 insertions(+), 3 deletions(-)
+
+
+diff --git a/CHANGELOG b/CHANGELOG
+index 7b8d185..79cf673 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -7,6 +7,7 @@
+ - fix typo in automount(8).
+ - dont wait forever to restart.
+ - add timeout option description to man page.
++- fix null map entry order handling.
+ 
+ 25/07/2012 autofs-5.0.7
+ =======================
+diff --git a/lib/master.c b/lib/master.c
+index 904b13d..a0e62f2 100644
+--- a/lib/master.c
++++ b/lib/master.c
+@@ -1179,9 +1179,35 @@ int master_mount_mounts(struct master *master, time_t age, int readall)
+ 
+ 		cache_readlock(nc);
+ 		ne = cache_lookup_distinct(nc, this->path);
+-		if (ne && this->age > ne->age) {
++		/*
++		 * If this path matched a nulled entry the master map entry
++		 * must be an indirect mount so the master map entry line
++		 * number may be obtained from this->maps.
++		 */
++		if (ne) {
++			int lineno = ne->age;
+ 			cache_unlock(nc);
+-			st_add_task(ap, ST_SHUTDOWN_PENDING);
++
++			/* null entry appears after map entry */
++			if (this->maps->master_line < lineno) {
++				warn(ap->logopt,
++				     "ignoring null entry that appears after "
++				     "existing entry for %s", this->path);
++				goto cont;
++			}
++			if (ap->state != ST_INIT) {
++				st_add_task(ap, ST_SHUTDOWN_PENDING);
++				continue;
++			}
++			/*
++			 * The map entry hasn't been started yet and we've
++			 * seen a preceeding null map entry for it so just
++			 * delete it from the master map entry list so it
++			 * doesn't get in the road.
++			 */
++			list_del_init(&this->list);
++			master_free_mapent_sources(ap->entry, 1);
++			master_free_mapent(ap->entry);
+ 			continue;
+ 		}
+ 		nested = cache_partial_match(nc, this->path);
+@@ -1194,7 +1220,7 @@ int master_mount_mounts(struct master *master, time_t age, int readall)
+ 				cache_delete(nc, nested->key);
+ 		}
+ 		cache_unlock(nc);
+-
++cont:
+ 		st_mutex_lock();
+ 
+ 		state_pipe = this->ap->state_pipe[1];
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-parse-buffer-initialization.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-parse-buffer-initialization.patch
new file mode 100644
index 0000000..22bd5da
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-parse-buffer-initialization.patch
@@ -0,0 +1,51 @@
+autofs-5.0.7 - fix parse buffer initialization
+
+From: Ian Kent <ikent@redhat.com>
+
+When parsing a master map entry, if the mount point path is longer than
+the following map string the lexical analyzer buffer may not have a null
+terminator where it is expected. If the map name string also contains a
+string that is the same as a map type at the end the map name the map
+name is not constructed correctly because of this lack of a string
+terminator in the buffer.
+---
+
+ CHANGELOG        |    1 +
+ lib/master_tok.l |    4 +++-
+ 2 files changed, 4 insertions(+), 1 deletions(-)
+
+
+diff --git a/CHANGELOG b/CHANGELOG
+index 34c70fa..276d6ba 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -3,6 +3,7 @@
+ - fix nobind sun escaped map entries.
+ - fix use cache entry after free in lookup_prune_one_cache().
+ - fix ipv6 proximity calculation.
++- fix parse buffer initialization.
+ 
+ 25/07/2012 autofs-5.0.7
+ =======================
+diff --git a/lib/master_tok.l b/lib/master_tok.l
+index 0d6edb7..30abb15 100644
+--- a/lib/master_tok.l
++++ b/lib/master_tok.l
+@@ -74,7 +74,8 @@ int my_yyinput(char *, int);
+ #define unput(c) (*(char *) --line = c)
+ #endif
+ 
+-char buff[1024];
++#define BUFF_LEN	1024
++char buff[BUFF_LEN];
+ char *bptr;
+ char *optr = buff;
+ unsigned int tlen;
+@@ -174,6 +175,7 @@ OPTNTOUT	(-n{OPTWS}|-n{OPTWS}={OPTWS}|--negative-timeout{OPTWS}|--negative-timeo
+ 		*bptr = '\0';
+ 		strcpy(master_lval.strtype, buff);
+ 		bptr = buff;
++		memset(buff, 0, BUFF_LEN);
+ 		return(PATH);
+ 	}
+ 
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-typo-in-automount-8.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-typo-in-automount-8.patch
new file mode 100644
index 0000000..6d88ce0
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-typo-in-automount-8.patch
@@ -0,0 +1,37 @@
+autofs-5.0.7 - fix typo in automount(8)
+
+From: Ian Kent <ikent@redhat.com>
+
+
+---
+
+ CHANGELOG       |    1 +
+ man/automount.8 |    2 +-
+ 2 files changed, 2 insertions(+), 1 deletions(-)
+
+
+diff --git a/CHANGELOG b/CHANGELOG
+index 276d6ba..6051723 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -4,6 +4,7 @@
+ - fix use cache entry after free in lookup_prune_one_cache().
+ - fix ipv6 proximity calculation.
+ - fix parse buffer initialization.
++- fix typo in automount(8).
+ 
+ 25/07/2012 autofs-5.0.7
+ =======================
+diff --git a/man/automount.8 b/man/automount.8
+index 0186984..dddebce 100644
+--- a/man/automount.8
++++ b/man/automount.8
+@@ -51,7 +51,7 @@ are over-ridden macro definitions of the same name specified in
+ mount entries.
+ .TP
+ .I "\-f, \-\-foreground"
+-Run the daemon in the forground and log to stderr instead of syslog."
++Run the daemon in the foreground and log to stderr instead of syslog."
+ .TP
+ .I "\-r, \-\-random-multimount-selection"
+ Enables the use of ramdom selection when choosing a host from a
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-use-cache-entry-after-free-mistake.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-use-cache-entry-after-free-mistake.patch
new file mode 100644
index 0000000..a469c16
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-fix-use-cache-entry-after-free-mistake.patch
@@ -0,0 +1,49 @@
+autofs-5.0.7 - fix use cache entry after free mistake
+
+From: Ian Kent <ikent@redhat.com>
+
+Fix an obvious use after free mistake in lookup_prune_one_cache().
+---
+
+ CHANGELOG       |    1 +
+ daemon/lookup.c |    7 +++++--
+ 2 files changed, 6 insertions(+), 2 deletions(-)
+
+
+diff --git a/CHANGELOG b/CHANGELOG
+index faf4c80..dc38580 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -1,6 +1,7 @@
+ ??/??/2012 autofs-5.0.8
+ =======================
+ - fix nobind sun escaped map entries.
++- fix use cache entry after free in lookup_prune_one_cache().
+ 
+ 25/07/2012 autofs-5.0.7
+ =======================
+diff --git a/daemon/lookup.c b/daemon/lookup.c
+index 7909536..e3d9536 100644
+--- a/daemon/lookup.c
++++ b/daemon/lookup.c
+@@ -1103,15 +1103,18 @@ void lookup_prune_one_cache(struct autofs_point *ap, struct mapent_cache *mc, ti
+ 		if (valid)
+ 			cache_delete(mc, key);
+ 		else if (!is_mounted(_PROC_MOUNTS, path, MNTS_AUTOFS)) {
++			dev_t devid = ap->dev;
+ 			status = CHE_FAIL;
++			if (ap->type == LKP_DIRECT)
++				devid = this->dev;
+ 			if (this->ioctlfd == -1)
+ 				status = cache_delete(mc, key);
+ 			if (status != CHE_FAIL) {
+ 				if (ap->type == LKP_INDIRECT) {
+ 					if (ap->flags & MOUNT_FLAG_GHOST)
+-						rmdir_path(ap, path, ap->dev);
++						rmdir_path(ap, path, devid);
+ 				} else
+-					rmdir_path(ap, path, this->dev);
++					rmdir_path(ap, path, devid);
+ 			}
+ 		}
+ 		cache_unlock(mc);
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-handle-new-location-of-systemd.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-handle-new-location-of-systemd.patch
new file mode 100644
index 0000000..1c26794
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-handle-new-location-of-systemd.patch
@@ -0,0 +1,57 @@
+autofs-5.0.7 - Handle new location of systemd
+
+From: Frederic Crozat <fcrozat@suse.com>
+
+Some distributions are moving systemd unit files from /lib to
+/usr/lib, so we need to test both directories.
+
+edit: imk
+It occurs to me I've forgotten to check for the 64 bit variants
+of the directories, so add them as well.
+end edit: imk
+---
+
+ CHANGELOG  |    1 +
+ aclocal.m4 |    2 +-
+ configure  |    2 +-
+ 3 files changed, 3 insertions(+), 2 deletions(-)
+
+
+diff --git a/CHANGELOG b/CHANGELOG
+index 3bdf8a4..8f6bb3a 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -14,6 +14,7 @@
+ - allow non root user to check status.
+ - fix recursive mount deadlock.
+ - increase file map read buffer size.
++- handle new location of systemd.
+ 
+ 25/07/2012 autofs-5.0.7
+ =======================
+diff --git a/aclocal.m4 b/aclocal.m4
+index 1798c8b..47bca0c 100644
+--- a/aclocal.m4
++++ b/aclocal.m4
+@@ -234,7 +234,7 @@ AC_DEFUN([AF_WITH_SYSTEMD],
+ [if test "$withval" = yes; then
+   if test -z "$systemddir"; then
+     AC_MSG_CHECKING([location of the systemd unit files directory])
+-    for systemd_d in /lib/systemd/system; do
++    for systemd_d in /usr/lib/systemd/system /usr/lib64/systemd/system /lib/systemd/system /lib64/systemd/system; do
+       if test -z "$systemddir"; then
+         if test -d "$systemd_d"; then
+           systemddir="$systemd_d"
+diff --git a/configure b/configure
+index ba3bba6..3722a46 100755
+--- a/configure
++++ b/configure
+@@ -2157,7 +2157,7 @@ if test "${with_systemd+set}" = set; then :
+   if test -z "$systemddir"; then
+     { $as_echo "$as_me:${as_lineno-$LINENO}: checking location of the systemd unit files directory" >&5
+ $as_echo_n "checking location of the systemd unit files directory... " >&6; }
+-    for systemd_d in /lib/systemd/system; do
++    for systemd_d in /usr/lib/systemd/system /usr/lib64/systemd/system /lib/systemd/system /lib64/systemd/system; do
+       if test -z "$systemddir"; then
+         if test -d "$systemd_d"; then
+           systemddir="$systemd_d"
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-include-usage-in-usage-message.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-include-usage-in-usage-message.patch
new file mode 100644
index 0000000..1c8a565
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-include-usage-in-usage-message.patch
@@ -0,0 +1,25 @@
+autofs-5.0.7 - include usage in usage message
+
+From: Ian Kent <ikent@redhat.com>
+
+Since usage is a case entry we should also nclude it in the usage
+message.
+---
+
+ redhat/autofs.init.in |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+
+diff --git a/redhat/autofs.init.in b/redhat/autofs.init.in
+index 8e355da..ec6d5d6 100644
+--- a/redhat/autofs.init.in
++++ b/redhat/autofs.init.in
+@@ -155,7 +155,7 @@ function reload() {
+ }
+ 
+ function usage_message() {
+-	echo $"Usage: $0 {start|forcestart|stop|status|restart|force-reload|forcerestart|reload|condrestart|try-restart}"
++	echo $"Usage: $0 {start|forcestart|stop|status|restart|force-reload|forcerestart|reload|condrestart|try-restart|usage}"
+ }
+ 
+ RETVAL=0
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-make-description-of-default-MOUNT_WAIT-setting-clear.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-make-description-of-default-MOUNT_WAIT-setting-clear.patch
new file mode 100644
index 0000000..a3dd3fb
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-5.0.7-make-description-of-default-MOUNT_WAIT-setting-clear.patch
@@ -0,0 +1,57 @@
+autofs-5.0.7 - make description of default MOUNT_WAIT setting clear
+
+From: Ian Kent <ikent@redhat.com>
+
+
+---
+
+ CHANGELOG                      |    1 +
+ redhat/autofs.sysconfig.in     |    5 +++--
+ samples/autofs.conf.default.in |    5 +++--
+ 3 files changed, 7 insertions(+), 4 deletions(-)
+
+
+diff --git a/CHANGELOG b/CHANGELOG
+index 79cf673..961e340 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -8,6 +8,7 @@
+ - dont wait forever to restart.
+ - add timeout option description to man page.
+ - fix null map entry order handling.
++- make description of default MOUNT_WAIT setting clear.
+ 
+ 25/07/2012 autofs-5.0.7
+ =======================
+diff --git a/redhat/autofs.sysconfig.in b/redhat/autofs.sysconfig.in
+index 36b924d..a8992c4 100644
+--- a/redhat/autofs.sysconfig.in
++++ b/redhat/autofs.sysconfig.in
+@@ -18,8 +18,9 @@ TIMEOUT=300
+ # 	       Setting this timeout can cause problems when
+ # 	       mount would otherwise wait for a server that
+ # 	       is temporarily unavailable, such as when it's
+-# 	       restarting. The defailt of waiting for mount(8)
+-# 	       usually results in a wait of around 3 minutes.
++# 	       restarting. The default setting (-1) of waiting
++# 	       for mount(8) usually results in a wait of around
++# 	       3 minutes.
+ #
+ #MOUNT_WAIT=-1
+ #
+diff --git a/samples/autofs.conf.default.in b/samples/autofs.conf.default.in
+index ac2f63b..1da89cf 100644
+--- a/samples/autofs.conf.default.in
++++ b/samples/autofs.conf.default.in
+@@ -18,8 +18,9 @@ TIMEOUT=300
+ # 	       Setting this timeout can cause problems when
+ # 	       mount would otherwise wait for a server that
+ # 	       is temporarily unavailable, such as when it's
+-# 	       restarting. The defailt of waiting for mount(8)
+-# 	       usually results in a wait of around 3 minutes.
++# 	       restarting. The default setting (-1) of waiting
++# 	       for mount(8) usually results in a wait of around
++# 	       3 minutes.
+ #
+ #MOUNT_WAIT=-1
+ #
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-additional-distros.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-additional-distros.patch
new file mode 100644
index 0000000..6a35843
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/autofs-additional-distros.patch
@@ -0,0 +1,12 @@
+--- autofs-4.1.4/samples/rc.autofs.in~	2005-04-11 06:30:54.000000000 -0500
++++ autofs-4.1.4/samples/rc.autofs.in	2007-04-07 13:18:44.000000000 -0500
+@@ -43,6 +43,9 @@
+ 	system=debian
+ elif [ -f /etc/redhat-release ]; then
+ 	system=redhat
++elif [ -f /etc/issue ] && grep -q "^SlugOS\|Yocto" /etc/issue ; then
++	# SlugOS and Yocto behave like Debian, at least for autofs purposes.
++	system=debian
+ else
+ 	echo "$0: Unknown system, please port and contact autofs@linux.kernel.org" 1>&2
+ 	exit 1
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/cross.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/cross.patch
new file mode 100644
index 0000000..8f1af62
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/cross.patch
@@ -0,0 +1,44 @@
+Index: autofs-5.0.7/aclocal.m4
+===================================================================
+--- autofs-5.0.7.orig/aclocal.m4	2012-10-28 04:45:07.000000000 -0700
++++ autofs-5.0.7/aclocal.m4	2012-10-28 10:47:53.263996910 -0700
+@@ -7,6 +7,8 @@
+ AC_DEFUN(AF_PATH_INCLUDE,
+ [AC_PATH_PROGS($1,$2,$3,$4)
+ if test -n "$$1"; then
++  AH_TEMPLATE([HAVE_$1], [Have $2])
++  AH_TEMPLATE([PATH_$1], [Have $2])
+   AC_DEFINE(HAVE_$1,1,[define if you have $1])
+   AC_DEFINE_UNQUOTED(PATH_$1, "$$1", [define if you have $1])
+   HAVE_$1=1
+Index: autofs-5.0.7/configure.in
+===================================================================
+--- autofs-5.0.7.orig/configure.in	2012-10-28 04:45:06.000000000 -0700
++++ autofs-5.0.7/configure.in	2012-10-28 10:50:07.580000628 -0700
+@@ -301,13 +301,15 @@
+ cat > pietest.c <<EOF
+ int main(void) { return 0; }
+ EOF
++AF_tmp_ldflags="$LDFLAGS"
++AF_tmp_cflags="$CFLAGS"
+ CFLAGS=-fPIE
+ LDFLAGS=-pie
+ DAEMON_CFLAGS=
+ DAEMON_LDFLAGS=
+ AC_MSG_CHECKING([whether gcc -fPIE works])
+-AC_RUN_IFELSE([AC_LANG_PROGRAM([[]], [[int main(void) {return 0;}]])],
+-	      [gcc_supports_pie=yes], [gcc_supports_pie=no], [gcc_supports_pie=no])
++AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[int main(void) {return 0;}]])],
++	       [gcc_supports_pie=yes], [gcc_supports_pie=no], [gcc_supports_pie=no])
+ AC_MSG_RESULT([$gcc_supports_pie])
+ if test $gcc_supports_pie = yes ; then
+ 	DAEMON_CFLAGS="-fPIE"
+@@ -316,6 +318,8 @@
+ rm -f pietest.c
+ AC_SUBST(DAEMON_CFLAGS)
+ AC_SUBST(DAEMON_LDFLAGS)
++CFLAGS="${AF_tmp_cflags}"
++LDFLAGS="${AF_tmp_ldflags}"
+ 
+ #
+ # Enable ability to access value in external env variable
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/libtirpc-name-clash-backout.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/libtirpc-name-clash-backout.patch
new file mode 100644
index 0000000..1047240
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/libtirpc-name-clash-backout.patch
@@ -0,0 +1,21 @@
+Index: autofs-5.0.7/lib/rpc_subs.c
+===================================================================
+--- autofs-5.0.7.orig/lib/rpc_subs.c	2012-07-24 23:05:26.000000000 -0700
++++ autofs-5.0.7/lib/rpc_subs.c	2012-10-28 14:47:49.008382116 -0700
+@@ -34,16 +34,6 @@
+ #include <pthread.h>
+ #include <poll.h>
+ 
+-#ifdef WITH_LIBTIRPC
+-#undef auth_destroy
+-#define auth_destroy(auth)                                              \
+-                do {                                                    \
+-                        int refs;                                       \
+-                        if ((refs = auth_put((auth))) == 0)             \
+-                                ((*((auth)->ah_ops->ah_destroy))(auth));\
+-                } while (0)
+-#endif
+-
+ #include "mount.h"
+ #include "rpc_subs.h"
+ #include "automount.h"
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/libtirpc.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/libtirpc.patch
new file mode 100644
index 0000000..04f52c6
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/libtirpc.patch
@@ -0,0 +1,26 @@
+Index: autofs-5.0.7/aclocal.m4
+===================================================================
+--- autofs-5.0.7.orig/aclocal.m4	2012-10-28 13:17:45.504237027 -0700
++++ autofs-5.0.7/aclocal.m4	2012-10-28 13:20:50.108242739 -0700
+@@ -403,7 +403,7 @@
+ # save current flags
+ af_check_libtirpc_save_cflags="$CFLAGS"
+ af_check_libtirpc_save_ldflags="$LDFLAGS"
+-CFLAGS="$CFLAGS -I/usr/include/tirpc"
++CFLAGS="$CFLAGS -I=/usr/include/tirpc"
+ LDFLAGS="$LDFLAGS -ltirpc"
+ 
+ AC_TRY_LINK(
+Index: autofs-5.0.7/Makefile.rules
+===================================================================
+--- autofs-5.0.7.orig/Makefile.rules	2012-10-28 13:17:45.308237022 -0700
++++ autofs-5.0.7/Makefile.rules	2012-10-28 13:21:25.720242803 -0700
+@@ -48,7 +48,7 @@
+ LDFLAGS += -lpthread
+ 
+ ifdef TIRPCLIB
+-CFLAGS += -I/usr/include/tirpc
++CFLAGS += -I=/usr/include/tirpc
+ LDFLAGS += $(TIRPCLIB)
+ endif
+ 
diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/no-bash.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/no-bash.patch
new file mode 100644
index 0000000..cf03635
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/no-bash.patch
@@ -0,0 +1,20 @@
+Index: autofs-5.0.7/samples/auto.net
+===================================================================
+--- autofs-5.0.7.orig/samples/auto.net	2012-07-24 23:05:26.000000000 -0700
++++ autofs-5.0.7/samples/auto.net	2012-10-28 10:44:25.035991715 -0700
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ 
+ # This file must be executable to work! chmod 755!
+ 
+Index: autofs-5.0.7/samples/auto.smb
+===================================================================
+--- autofs-5.0.7.orig/samples/auto.smb	2012-07-24 23:05:26.000000000 -0700
++++ autofs-5.0.7/samples/auto.smb	2012-10-28 10:44:25.035991715 -0700
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ 
+ # This file must be executable to work! chmod 755!
+ 
diff --git a/meta-networking/recipes-daemons/autofs/autofs_5.0.7.bb b/meta-networking/recipes-daemons/autofs/autofs_5.0.7.bb
new file mode 100644
index 0000000..5013e5e
--- /dev/null
+++ b/meta-networking/recipes-daemons/autofs/autofs_5.0.7.bb
@@ -0,0 +1,71 @@
+DESCRIPTION = "Kernel based automounter for linux."
+SECTION = "base"
+LICENSE = "GPL-2.0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3"
+
+DEPENDS += "openldap libtirpc flex-native bison-native"
+
+inherit autotools systemd
+
+SRC_URI = "${KERNELORG_MIRROR}/linux/daemons/autofs/v5/autofs-${PV}.tar.bz2 \
+           file://autofs-5.0.7-fix-nobind-sun-escaped-map-entries.patch \
+           file://autofs-5.0.7-fix-use-cache-entry-after-free-mistake.patch \
+           file://autofs-5.0.7-fix-ipv6-proximity-calculation.patch \
+           file://autofs-5.0.7-fix-parse-buffer-initialization.patch \
+           file://autofs-5.0.7-fix-typo-in-automount-8.patch \
+           file://autofs-5.0.7-include-usage-in-usage-message.patch \
+           file://autofs-5.0.7-dont-wait-forever-to-restart.patch \
+           file://autofs-5.0.7-add-timeout-option-description-to-man-page.patch \
+           file://autofs-5.0.7-fix-null-map-entry-order-handling.patch \
+           file://autofs-5.0.7-make-description-of-default-MOUNT_WAIT-setting-clear.patch \
+           file://autofs-5.0.7-configure-in-allow-cross-compilation.patch \
+           file://autofs-5.0.7-README-update-mailing-list-subscription-info.patch \
+           file://autofs-5.0.7-allow-non-root-user-to-check-status.patch \
+           file://autofs-5.0.7-configure-allow-cross-compilation-update.patch \
+           file://autofs-5.0.6-fix-recursive-mount-deadlock.patch \
+           file://autofs-5.0.6-increase-file-map-read-buffer-size.patch \
+           file://autofs-5.0.7-handle-new-location-of-systemd.patch \
+           file://Makefile.rules-cross.patch \
+           file://no-bash.patch \
+           file://cross.patch \
+           file://libtirpc.patch \
+           file://libtirpc-name-clash-backout.patch \
+          "
+
+SRC_URI[md5sum] = "bc46838dece83c02d800ff144ed9f431"
+SRC_URI[sha256sum] = "08c4304d8076dc80c14df559bc5fd821b67ef3457b245f61068bd053d8f94ccc"
+
+inherit update-rc.d
+
+INITSCRIPT_NAME = "autofs"
+INITSCRIPT_PARAMS = "defaults"
+
+SYSTEMD_PACKAGES = "${PN}-systemd"
+SYSTEMD_SERVICE = "autofs.service"
+
+# FIXME: modules/Makefile has crappy rules that don't obey LDFLAGS
+CFLAGS += "${LDFLAGS}"
+
+EXTRA_OEMAKE = "DONTSTRIP=1"
+EXTRA_OECONF += "--with-systemd --disable-mount-locking \
+                --enable-ignore-busy --with-openldap=no \
+                --with-sasl=no --with-libtirpc=yes \
+                --with-path=${STAGING_BINDIR_NATIVE} \
+                "
+CACHED_CONFIGUREVARS = "ac_cv_path_RANLIB=${RANLIB} \
+                        ac_cv_path_RPCGEN=rpcgen \
+                       "
+
+do_configure_prepend () {
+        if [ ! -e acinclude.m4 ]; then
+                cp aclocal.m4 acinclude.m4
+        fi
+}
+
+#do_install () {
+#        install -d ${D}${mandir}/man5 ${D}${mandir}/man8 \
+#                   ${D}${sbindir}
+#        oe_runmake 'INSTALLROOT=${D}' install
+#}
+
+INSANE_SKIP_${PN} = "dev-so"
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-networking][PATCH V2 04/25] nis: Import recipes from OE classic
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
  2013-01-06  9:12 ` [meta-networking][PATCH V2 02/25] ebtables: Fix segfault by linking with no-as-needed Khem Raj
  2013-01-06  9:12 ` [meta-networking][PATCH V2 03/25] autofs: Add recipes for 5.0.7 Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:12 ` [meta-networking][PATCH V2 05/25] ndisc6: Forward port recipe " Khem Raj
                   ` (20 subsequent siblings)
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Update to latest versions while at it

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../recipes-support/nis/files/libdl.patch          |   12 +++
 .../recipes-support/nis/files/no-selinux.patch     |   16 ++++
 .../recipes-support/nis/files/ypbind-yocto.init    |   99 ++++++++++++++++++++
 meta-networking/recipes-support/nis/nis.inc        |   31 ++++++
 .../recipes-support/nis/yp-tools_2.12.bb           |   17 ++++
 .../recipes-support/nis/ypbind-mt_1.36.bb          |   39 ++++++++
 6 files changed, 214 insertions(+)
 create mode 100644 meta-networking/recipes-support/nis/files/libdl.patch
 create mode 100644 meta-networking/recipes-support/nis/files/no-selinux.patch
 create mode 100644 meta-networking/recipes-support/nis/files/ypbind-yocto.init
 create mode 100644 meta-networking/recipes-support/nis/nis.inc
 create mode 100644 meta-networking/recipes-support/nis/yp-tools_2.12.bb
 create mode 100644 meta-networking/recipes-support/nis/ypbind-mt_1.36.bb

diff --git a/meta-networking/recipes-support/nis/files/libdl.patch b/meta-networking/recipes-support/nis/files/libdl.patch
new file mode 100644
index 0000000..605af31
--- /dev/null
+++ b/meta-networking/recipes-support/nis/files/libdl.patch
@@ -0,0 +1,12 @@
+--- pwdutils-2.6/configure.in.orig	2005-04-19 20:22:36.603052192 -0700
++++ pwdutils-2.6/configure.in	2005-04-19 21:09:45.308023672 -0700
+@@ -178,6 +178,9 @@
+     AC_CHECK_LIB(ldap, main, LDAP_LIBS="-lldap $LDAP_LIBS" found_ldap_lib=yes,,$LDAP_LIBS)
+   fi
+ 
++  dnl this always needs dl
++  AC_CHECK_LIB(dl, dlopen, LDAP_LIBS="$LDAP_LIBS -ldl")
++
+   if test -z "$found_ldap_lib" -a \( $with_ldap_lib = auto -o $with_ldap_lib = netscape5 \); then
+     AC_CHECK_LIB(ldap50, main, LDAP_LIBS="-lldap50 -lssldap50 -lssl3 -lnss3 -lnspr4 -lprldap50 -lplc4 -lplds4" found_ldap_lib=yes need_pthread=true,, -lpthread)
+   fi
diff --git a/meta-networking/recipes-support/nis/files/no-selinux.patch b/meta-networking/recipes-support/nis/files/no-selinux.patch
new file mode 100644
index 0000000..71da3e3
--- /dev/null
+++ b/meta-networking/recipes-support/nis/files/no-selinux.patch
@@ -0,0 +1,16 @@
+--- pwdutils-2.6/lib/copy_xattr.c.orig	2005-04-16 17:15:52.916660880 -0700
++++ pwdutils-2.6/lib/copy_xattr.c	2005-04-16 17:18:10.345768480 -0700
+@@ -127,8 +127,11 @@
+ 
+ 	  if (lsetxattr (to, name, value, size, 0) != 0)
+ 	    {
+-	      if (strcmp (name, "security.selinux") == 0 &&
+-		  is_selinux_enabled() == 0)
++	      if (strcmp (name, "security.selinux") == 0
++#if defined(WITH_SELINUX)
++				  && is_selinux_enabled() == 0
++#endif
++				  )
+ 		fprintf (stderr,
+ 			 _("SELinux not enabled, ignore attribute %s for `%s'.\n"),
+ 			 name, to);
diff --git a/meta-networking/recipes-support/nis/files/ypbind-yocto.init b/meta-networking/recipes-support/nis/files/ypbind-yocto.init
new file mode 100644
index 0000000..5f50a53
--- /dev/null
+++ b/meta-networking/recipes-support/nis/files/ypbind-yocto.init
@@ -0,0 +1,99 @@
+#! /bin/sh
+# Copyright (c) 2004 Author: Thorsten Kukuk <kukuk@suse.de>
+#
+# /etc/init.d/ypbind
+#
+#   and symbolic its link
+#
+# /usr/sbin/rcypbind
+#
+# System startup script for the ypbind daemon
+#
+### BEGIN INIT INFO
+# Provides: ypbind
+# Required-Start: $remote_fs $portmap
+# Should-Start: ypserv slpd
+# Required-Stop: portmap
+# Default-Start: 3 5
+# Default-Stop: 0 1 2 6
+# Short-Description: Start ypbind (necessary for a NIS client)
+# Description: ypbind finds the server for NIS domains and maintains
+#	the NIS binding information.
+### END INIT INFO
+
+YPBIND_BIN=/usr/sbin/ypbind
+pidfile=/var/run/ypbind.pid
+
+[ -f /etc/default/ypbind ] && . /etc/default/ypbind
+
+case "$1" in
+    start)
+	echo -n "Starting ypbind"
+	## If the domainname is not set, skip starting of ypbind
+	## and return with "program not configured"
+        /bin/ypdomainname &> /dev/null
+        if [ $? -ne 0 -o -z "`/bin/ypdomainname 2>/dev/null`" ]; then
+           if [ -f /etc/defaultdomain ]; then
+             XDOMAINNAME=`cat /etc/defaultdomain`
+             /bin/ypdomainname "$XDOMAINNAME"
+	   fi
+           /bin/ypdomainname &> /dev/null
+           if [ $? -ne 0 -o -z "`/bin/ypdomainname 2>/dev/null`" ]; then
+	     # Tell the user this has skipped
+	     echo -n " . . . . . . . . . . No domainname set"
+             # service is not configured
+	     exit 1
+           fi
+        fi
+
+	## If we don't have a /etc/yp.conf file, skip starting of
+        ## ypbind and return with "program not configured"
+        ## if you add the -broadcast Option later, comment this out.
+	if [ ! -f /etc/yp.conf -a "$YPBIND_BROADCAST" != "yes" ] ; then
+	  # Tell the user this has skipped
+	  echo -n " . . . . . . . . . . ${attn}/etc/yp.conf not found${norm}"
+          # service is not configured
+	  exit 1
+        fi
+
+	# evaluate the OPTIONS for ypbind-mt
+	OPTIONS=""
+	test "$YPBIND_LOCAL_ONLY" = "yes" && OPTIONS="-local-only $OPTIONS"
+	test "$YPBIND_BROADCAST" = "yes" && OPTIONS="-broadcast $OPTIONS"
+	test "$YPBIND_BROKEN_SERVER" = "yes" && OPTIONS="-broken-server $OPTIONS"
+
+	start-stop-daemon --start --quiet --pidfile $pidfile --exec $YPBIND_BIN -- $YPBIND_OPTIONS $OPTIONS
+        if [ $? -eq 0 ]; then
+            notfound=1
+            for i in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15; do
+                ypwhich &>/dev/null && { notfound=0 ; break; };
+                echo -n " ."
+                sleep 1;
+            done
+            if [ $notfound -eq 1 ]; then
+                echo -n " ${warn}No NIS server found${norm}";
+	    fi
+        else
+            exit 1
+        fi
+	;;
+    stop)
+	echo -n "Shutting down ypbind"
+	start-stop-daemon --stop --quiet --pidfile $pidfile
+	# Remove static data, else glibc will continue to use NIS
+        rm -f /var/yp/binding/* /var/run/ypbind.pid
+	;;
+    restart)
+	$0 stop
+	sleep 1
+	$0 start
+	;;
+    reload | force-reload)
+	echo -n "Reload service ypbind"
+	start-stop-daemon --stop --quiet --signal 1 --pidfile $pidfile
+	;;
+    *)
+	echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload|probe}"
+	exit 1
+	;;
+esac
diff --git a/meta-networking/recipes-support/nis/nis.inc b/meta-networking/recipes-support/nis/nis.inc
new file mode 100644
index 0000000..f9f5bd1
--- /dev/null
+++ b/meta-networking/recipes-support/nis/nis.inc
@@ -0,0 +1,31 @@
+# This include file contains global definitions for the
+# various NIS packages.
+#
+# These packages will only function correctly with glibc -
+# the rpcsvc functionality is not present in uclibc
+DESCRIPTION = "NIS Server and Tools"
+HOMEPAGE = "http://www.linux-nis.org/nis/"
+SECTION = "console/network"
+LICENSE = "GPL-2.0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
+
+inherit autotools gettext
+
+# install is broken because src/Makefile heroically adds '-s'
+# to the install flags - passing -s to the build /usr/bin/install!
+# install-strip gets it right but installs ypbind -m <default>,
+# not -m 555.  In an OE build this is not, so far as I can see,
+# a security problem (and this fix to the build problem is *much*
+# easier and more maintainable.)
+do_install() {
+	oe_runmake 'DESTDIR=${D}' install-strip
+}
+
+# An attempt to build on uclibc will fail, causing annoyance,
+# so force the package to be skipped here (this will cause a
+# 'nothing provides' error)
+python () {
+    os = bb.data.getVar("TARGET_OS", d, 1)
+    if os == "linux-uclibc":
+        raise bb.parse.SkipPackage("NIS functionality requires rpcsvc/yp.h, uClibC does not provide this")
+}
diff --git a/meta-networking/recipes-support/nis/yp-tools_2.12.bb b/meta-networking/recipes-support/nis/yp-tools_2.12.bb
new file mode 100644
index 0000000..18a52fc
--- /dev/null
+++ b/meta-networking/recipes-support/nis/yp-tools_2.12.bb
@@ -0,0 +1,17 @@
+# This package builds tools to manage NIS
+# The source package is utils/net/NIS/yp-tools
+#
+PR = "r0"
+DESCRIPTION="\
+Network Information Service tools.  \
+This package contains ypcat, ypmatch, ypset, \
+ypwhich, yppasswd, domainname, nisdomainname \
+and ypdomainname."
+
+require nis.inc
+SRC_URI = "http://www.linux-nis.org/download/yp-tools/${P}.tar.bz2"
+
+SRC_URI[md5sum] = "ce1e06d86caa285fa8cd76fdf103f51e"
+SRC_URI[sha256sum] = "6ae8321666eea7837da343eea90ea30273fb74943ad111d5a4befd2afb252063"
+
+CACHED_CONFIGUREVARS += "ac_cv_prog_STRIP=/bin/true"
diff --git a/meta-networking/recipes-support/nis/ypbind-mt_1.36.bb b/meta-networking/recipes-support/nis/ypbind-mt_1.36.bb
new file mode 100644
index 0000000..96ef19b
--- /dev/null
+++ b/meta-networking/recipes-support/nis/ypbind-mt_1.36.bb
@@ -0,0 +1,39 @@
+# This package builds the NIS ypbind daemon
+# The source package is utils/net/NIS/ypbind-mt
+#
+PR = "r0"
+DESCRIPTION="\
+Multithreaded NIS bind service (ypbind-mt).  \
+ypbind-mt is a complete new implementation of a NIS \
+binding daemon for Linux. It has the following \
+features.  Supports ypbind protocol V1 and V2.  \
+Uses threads for better response.  Supports multiple \
+domain bindings.  Supports /var/yp/binding/* file \
+for Linux libc 4/5 and glibc 2.x.  Supports a list \
+of known secure NIS server (/etc/yp.conf) Binds to \
+the server which answered as first."
+HOMEPAGE="http://www.linux-nis.org/nis/ypbind-mt/index.html"
+
+require nis.inc
+
+SRC_URI = "http://www.linux-nis.org/download/ypbind-mt/${P}.tar.bz2"
+SRC_URI[md5sum] = "135834db97d78ff6d79fdee2810b4056"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=082c9a0886c7c3db1bc862b5b62ffe08"
+SRC_URI[sha256sum] = "0eff76c1849f4b38ea1a60280d8397c4240369c641fe5402ce57edf1a90958c7"
+
+# ypbind-mt now provides all the functionality of ypbind
+# and is used in place of it.
+PROVIDES += "ypbind"
+
+CACHED_CONFIGUREVARS = "ac_cv_prog_STRIP=/bin/true"
+SRC_URI += "file://ypbind-yocto.init"
+
+do_install_append () {
+    install -d ${D}${sysconfdir}/init.d
+    install -d ${D}${sysconfdir}/rcS.d
+
+    install -m 0755 ${WORKDIR}/ypbind-yocto.init ${D}${sysconfdir}/init.d/ypbind
+
+    ln -s ../init.d/ypbind ${D}${sysconfdir}/rcS.d/S44ypbind
+}
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-networking][PATCH V2 05/25] ndisc6: Forward port recipe from OE classic
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (2 preceding siblings ...)
  2013-01-06  9:12 ` [meta-networking][PATCH V2 04/25] nis: Import recipes from OE classic Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:12 ` [meta-oe][PATCH V2 06/25] net-snmp: Use ${PN} instead of hardcoding net-snmp Khem Raj
                   ` (19 subsequent siblings)
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../recipes-support/ndisc6/ndisc6_1.0.2.bb         |   62 ++++++++++++++++++++
 1 file changed, 62 insertions(+)
 create mode 100644 meta-networking/recipes-support/ndisc6/ndisc6_1.0.2.bb

diff --git a/meta-networking/recipes-support/ndisc6/ndisc6_1.0.2.bb b/meta-networking/recipes-support/ndisc6/ndisc6_1.0.2.bb
new file mode 100644
index 0000000..3920c1a
--- /dev/null
+++ b/meta-networking/recipes-support/ndisc6/ndisc6_1.0.2.bb
@@ -0,0 +1,62 @@
+SECTION = "console/network"
+DESCRIPTION = "This package includes some useful diagnostics tools for \
+IPv6 networks, including ndisc6, rdisc6, tcptraceroute6 and traceroute6."
+SECTION = "console/network"
+HOMEPAGE = "http://www.remlab.net/ndisc6/"
+LICENSE = "GPL-2.0"
+
+# The tcptraceroute6 and tracert6 commands depend on rltraceroute6 to
+# perform the actual trace operation.
+RDEPENDS_${PN}-tcptraceroute6 = "${PN}-rltraceroute6"
+RDEPENDS_${PN}-tracert6 = "${PN}-rltraceroute6"
+
+SRC_URI = "http://www.remlab.net/files/ndisc6/ndisc6-${PV}.tar.bz2 \
+          "
+SRC_URI[md5sum] = "50cb4c19606cf6ff2b7388e71832f579"
+SRC_URI[sha256sum] = "6acec8a0cb9efa3ac98456f46c3016aeec0598b0c7557c95242b5228ad62ca7a"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
+
+inherit autotools gettext
+
+# Split into seperate packages since we normal don't want them all
+# The main package is left empty and therefore not created.
+PACKAGES += "${PN}-ndisc6 ${PN}-tcpspray6 ${PN}-rdisc6 \
+	     ${PN}-tcptraceroute6 ${PN}-rltraceroute6 \
+             ${PN}-tracert6 ${PN}-rdnssd ${PN}-misc"
+FILES_${PN}			= ""
+FILES_${PN}-ndisc6		= "${bindir}/ndisc6"
+FILES_${PN}-tcpspray6 		= "${bindir}/tcpspray6"
+FILES_${PN}-rdisc6		= "${bindir}/rdisc6"
+FILES_${PN}-tcptraceroute6	= "${bindir}/tcptraceroute6"
+FILES_${PN}-rltraceroute6	= "${bindir}/rltraceroute6"
+FILES_${PN}-tracert6		= "${bindir}/tracert6"
+FILES_${PN}-rdnssd		= "${sbindir}/rdnssd ${sysconfdir}/rdnssd"
+FILES_${PN}-misc                = "${bindir}/dnssort ${bindir}/name2addr ${bindir}/tcpspray ${bindir}/addr2name"
+
+DESCRIPTION_${PN}-ndisc6	= "ICMPv6 Neighbor Discovery tool. \
+Performs IPv6 neighbor discovery in userland. Replaces arping from the \
+IPv4 world."
+DESCRIPTION_${PN}-rdisc6	= "ICMPv6 Router Discovery tool. \
+Queries IPv6 routers on the network for advertised prefixes. Can be used \
+to detect rogue IPv6 routers, monitor legitimate IPv6 routers."
+DESCRITPION_${PN}-tcpspray6	= "Performs bandwidth measurements of TCP \
+sessions between the local system and a remote echo server in either IPv6 \
+or IPv4."
+
+DESCRITPION_${PN}-rdnssd       = "Daemon to autoconfigure the list of DNS \
+servers through slateless IPv6 autoconfiguration."
+
+do_install_append () {
+	rm -rf ${D}${localstatedir}
+}
+# Enable SUID bit for applications that need it
+pkg_postinst_${PN}-rltraceroute6 () {
+	chmod 4555 ${bindir}/rltraceroute6
+}
+pkg_postinst_${PN}-ndisc6 () {
+	chmod 4555 ${bindir}/ndisc6
+}
+pkg_postinst_${PN}-rdisc6 () {
+	chmod 4555 ${bindir}/rdisc6
+}
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-oe][PATCH V2 06/25] net-snmp: Use ${PN} instead of hardcoding net-snmp
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (3 preceding siblings ...)
  2013-01-06  9:12 ` [meta-networking][PATCH V2 05/25] ndisc6: Forward port recipe " Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:12 ` [meta-oe][PATCH V2 07/25] jansson_2.3.1.bb: Fix multilib use BPN in SRC_URI instead of PN Khem Raj
                   ` (18 subsequent siblings)
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

This shows up when doing multilib builds where
PN != BPN and warnings about non existent systemd packages are
popping up.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-oe/recipes-extended/net-snmp/net-snmp.inc |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/meta-oe/recipes-extended/net-snmp/net-snmp.inc b/meta-oe/recipes-extended/net-snmp/net-snmp.inc
index c6f613d..eb355ab 100644
--- a/meta-oe/recipes-extended/net-snmp/net-snmp.inc
+++ b/meta-oe/recipes-extended/net-snmp/net-snmp.inc
@@ -38,8 +38,8 @@ do_install_append() {
 		-i ${STAGING_BINDIR}/net-snmp-config
 }
 
-PACKAGES = "net-snmp-dbg net-snmp-doc net-snmp-dev net-snmp-staticdev net-snmp-static net-snmp-libs \
-            net-snmp-mibs net-snmp-server net-snmp-client net-snmp-server-snmpd net-snmp-server-snmptrapd"
+PACKAGES = "${PN}-dbg ${PN}-doc ${PN}-dev ${PN}-staticdev ${PN}-static ${PN}-libs \
+            ${PN}-mibs ${PN}-server ${PN}-client ${PN}-server-snmpd ${PN}-server-snmptrapd"
 
 ALLOW_EMPTY_${PN}-server = "1"
 FILES_${PN}-libs = "${libdir}/lib*${SOLIBS}"
@@ -59,7 +59,7 @@ INITSCRIPT_PARAMS_${PN}-server = "defaults"
 
 LEAD_SONAME = "libnetsnmp.so"
 
-pkg_postrm_net-snmp-server() {
+pkg_postrm_${PN}-server() {
 	if test "x$D" != "x"; then
 		OPT="-r $D "
 	else
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-oe][PATCH V2 07/25] jansson_2.3.1.bb: Fix multilib use BPN in SRC_URI instead of PN
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (4 preceding siblings ...)
  2013-01-06  9:12 ` [meta-oe][PATCH V2 06/25] net-snmp: Use ${PN} instead of hardcoding net-snmp Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:12 ` [meta-oe][PATCH V2 08/25] liblockfile: Upgrade 1.06 -> 1.09 Khem Raj
                   ` (17 subsequent siblings)
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-oe/recipes-extended/jansson/jansson_2.3.1.bb |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta-oe/recipes-extended/jansson/jansson_2.3.1.bb b/meta-oe/recipes-extended/jansson/jansson_2.3.1.bb
index 85aade4..8c7a11e 100644
--- a/meta-oe/recipes-extended/jansson/jansson_2.3.1.bb
+++ b/meta-oe/recipes-extended/jansson/jansson_2.3.1.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "http://www.digip.org/jansson/"
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=6946b728e700de875e60ebb453cc3a20"
 
-SRC_URI = "http://www.digip.org/jansson/releases/${PN}-${PV}.tar.gz"
+SRC_URI = "http://www.digip.org/jansson/releases/${BPN}-${PV}.tar.gz"
 
 SRC_URI[md5sum] = "28848fbc02d7657d930f97ce74f80d93"
 SRC_URI[sha256sum] = "5f2ebf63580c73cc115634861b5da1c919499dde37d2e73b16e28b0c8ddc3921"
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-oe][PATCH V2 08/25] liblockfile: Upgrade 1.06 -> 1.09
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (5 preceding siblings ...)
  2013-01-06  9:12 ` [meta-oe][PATCH V2 07/25] jansson_2.3.1.bb: Fix multilib use BPN in SRC_URI instead of PN Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:12 ` [meta-oe][PATCH V2 09/25] atftp: Upgrade to latest from git Khem Raj
                   ` (16 subsequent siblings)
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../configure.patch                                |    0
 .../glibc-2.4.patch                                |    0
 .../install.patch                                  |    0
 .../ldflags.patch                                  |    0
 .../liblockfile/liblockfile_1.06.bb                |   21 -------------------
 .../liblockfile/liblockfile_1.09.bb                |   22 ++++++++++++++++++++
 6 files changed, 22 insertions(+), 21 deletions(-)
 rename meta-oe/recipes-extended/liblockfile/{liblockfile-1.06 => liblockfile-1.09}/configure.patch (100%)
 rename meta-oe/recipes-extended/liblockfile/{liblockfile-1.06 => liblockfile-1.09}/glibc-2.4.patch (100%)
 rename meta-oe/recipes-extended/liblockfile/{liblockfile-1.06 => liblockfile-1.09}/install.patch (100%)
 rename meta-oe/recipes-extended/liblockfile/{liblockfile-1.06 => liblockfile-1.09}/ldflags.patch (100%)
 delete mode 100644 meta-oe/recipes-extended/liblockfile/liblockfile_1.06.bb
 create mode 100644 meta-oe/recipes-extended/liblockfile/liblockfile_1.09.bb

diff --git a/meta-oe/recipes-extended/liblockfile/liblockfile-1.06/configure.patch b/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/configure.patch
similarity index 100%
rename from meta-oe/recipes-extended/liblockfile/liblockfile-1.06/configure.patch
rename to meta-oe/recipes-extended/liblockfile/liblockfile-1.09/configure.patch
diff --git a/meta-oe/recipes-extended/liblockfile/liblockfile-1.06/glibc-2.4.patch b/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/glibc-2.4.patch
similarity index 100%
rename from meta-oe/recipes-extended/liblockfile/liblockfile-1.06/glibc-2.4.patch
rename to meta-oe/recipes-extended/liblockfile/liblockfile-1.09/glibc-2.4.patch
diff --git a/meta-oe/recipes-extended/liblockfile/liblockfile-1.06/install.patch b/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/install.patch
similarity index 100%
rename from meta-oe/recipes-extended/liblockfile/liblockfile-1.06/install.patch
rename to meta-oe/recipes-extended/liblockfile/liblockfile-1.09/install.patch
diff --git a/meta-oe/recipes-extended/liblockfile/liblockfile-1.06/ldflags.patch b/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/ldflags.patch
similarity index 100%
rename from meta-oe/recipes-extended/liblockfile/liblockfile-1.06/ldflags.patch
rename to meta-oe/recipes-extended/liblockfile/liblockfile-1.09/ldflags.patch
diff --git a/meta-oe/recipes-extended/liblockfile/liblockfile_1.06.bb b/meta-oe/recipes-extended/liblockfile/liblockfile_1.06.bb
deleted file mode 100644
index 971eff1..0000000
--- a/meta-oe/recipes-extended/liblockfile/liblockfile_1.06.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-DESCRIPTION = "File locking library."
-SECTION = "libs"
-LICENSE = "LGPLv2+ & GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=35127b30003a121544b5d13a2ac868b6"
-
-SRC_URI = "http://snapshot.debian.org/archive/debian/20050312T000000Z/pool/main/libl/liblockfile/liblockfile_${PV}.tar.gz \
-	   file://install.patch \
-	   file://configure.patch \
-	   file://ldflags.patch \
-	   file://glibc-2.4.patch"
-
-inherit autotools
-
-EXTRA_OECONF = "--enable-shared --enable-static"
-
-do_install () {
-	oe_runmake 'ROOT=${D}' INSTGRP='' install
-}
-
-SRC_URI[md5sum] = "2de88389da013488bfd31356523070c0"
-SRC_URI[sha256sum] = "14f9690328318d11f9ba13a9356a2c008bdd169b7a817f38cb7f9eb32cf7240e"
diff --git a/meta-oe/recipes-extended/liblockfile/liblockfile_1.09.bb b/meta-oe/recipes-extended/liblockfile/liblockfile_1.09.bb
new file mode 100644
index 0000000..c72e28d
--- /dev/null
+++ b/meta-oe/recipes-extended/liblockfile/liblockfile_1.09.bb
@@ -0,0 +1,22 @@
+DESCRIPTION = "File locking library."
+SECTION = "libs"
+LICENSE = "LGPLv2+ & GPLv2+"
+LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=ac284a60d48eaa4bc811cddc377fa341"
+
+SRC_URI = "${DEBIAN_MIRROR}/main/libl/liblockfile/liblockfile_1.09.orig.tar.gz \
+	   file://install.patch \
+	   file://configure.patch \
+	   file://ldflags.patch \
+          "
+
+SRC_URI[md5sum] = "2aa269e4405ee8235ff17d1b357c6ae8"
+SRC_URI[sha256sum] = "16979eba05396365e1d6af7100431ae9d32f9bc063930d1de66298a0695f1b7f"
+
+inherit autotools
+
+EXTRA_OECONF = "--enable-shared --enable-static"
+
+do_install () {
+	oe_runmake 'ROOT=${D}' INSTGRP='' install
+}
+
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-oe][PATCH V2 09/25] atftp: Upgrade to latest from git
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (6 preceding siblings ...)
  2013-01-06  9:12 ` [meta-oe][PATCH V2 08/25] liblockfile: Upgrade 1.06 -> 1.09 Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:36   ` Martin Jansa
  2013-01-06  9:12 ` [meta-oe][PATCH V2 10/25] tcpdump: Upgrade from 4.1.1 -> 4.3.0 Khem Raj
                   ` (15 subsequent siblings)
  23 siblings, 1 reply; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Add patches to let atftp serve huge ramdisks >500M in size

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../atftp/{atftp_0.7.bb => atftp_git.bb}           |   18 +--
 ...tpd-0.7_circumvent_tftp_size_restrictions.patch |  158 ++++++++++++++++++++
 .../atftpd-0.7_unprotected_assignments_crash.patch |  145 ++++++++++++++++++
 3 files changed, 311 insertions(+), 10 deletions(-)
 rename meta-oe/recipes-extended/atftp/{atftp_0.7.bb => atftp_git.bb} (59%)
 create mode 100644 meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch
 create mode 100644 meta-oe/recipes-extended/atftp/files/atftpd-0.7_unprotected_assignments_crash.patch

diff --git a/meta-oe/recipes-extended/atftp/atftp_0.7.bb b/meta-oe/recipes-extended/atftp/atftp_git.bb
similarity index 59%
rename from meta-oe/recipes-extended/atftp/atftp_0.7.bb
rename to meta-oe/recipes-extended/atftp/atftp_git.bb
index ff1e11d..774dd68 100644
--- a/meta-oe/recipes-extended/atftp/atftp_0.7.bb
+++ b/meta-oe/recipes-extended/atftp/atftp_git.bb
@@ -3,13 +3,16 @@ SECTION = "network"
 HOMEPAGE = "http://packages.debian.org/atftp"
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=94d55d512a9ba36caa9b7df079bae19f"
-PR = "r4"
+PV = "0.7.1+git${SRCPV}"
 
-SRC_URI = "${DEBIAN_MIRROR}/main/a/atftp/atftp_${PV}.dfsg.orig.tar.gz;name=archive \
-           ${DEBIAN_MIRROR}/main/a/atftp/atftp_${PV}.dfsg-11.diff.gz;name=patch \
-           file://atftpd.init"
+SRCREV = "be3291a18c069ae23a124ffdc56d64a5ff0bbec7"
 
-S = "${WORKDIR}/atftp-${PV}.dfsg"
+SRC_URI = "git://atftp.git.sourceforge.net/gitroot/atftp/atftp;protocol=git \
+           file://atftpd-0.7_circumvent_tftp_size_restrictions.patch \
+           file://atftpd-0.7_unprotected_assignments_crash.patch \
+           file://atftpd.init \
+          "
+S = "${WORKDIR}/git"
 
 inherit autotools update-rc.d useradd
 
@@ -35,8 +38,3 @@ PACKAGES =+ "atftpd"
 FILES_${PN} = "${bindir}/*"
 
 FILES_${PN}d = "${sbindir}/* ${sysconfdir}/init.d/* /srv/tftp"
-
-SRC_URI[archive.md5sum] = "aa269044a6f992eca78fee2f6119643c"
-SRC_URI[archive.sha256sum] = "18815f5b67290fac087c6b9da28dfa5e0feb722096f5c5de52e59b46026da559"
-SRC_URI[patch.md5sum] = "1636f199bf32c754a7bf34a5c647d138"
-SRC_URI[patch.sha256sum] = "0df33f6c09c2b2de58a84d7bb757844fc9538cd4d6c8d9c463da5270ebc2e41d"
diff --git a/meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch b/meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch
new file mode 100644
index 0000000..9aeb351
--- /dev/null
+++ b/meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch
@@ -0,0 +1,158 @@
+Fate #303031: Circumvent TFTP size restrictions in atftpd
+The size of a single image file that can be transferred with TFTP is limited to
+2^(2*8) *BLOCKSIZE (as per RFC 1350 there are only two bytes for the block
+counter). This is problematic for one of our customers who needs to transfer
+100+ MB Windows images using a TFTP client (NT bootloader) which has a
+hardwared BLOCKSIZE setting of 1432).
+
+block rollover
+http://www.compuphase.com/tftp.htm
+
+Index: git/tftp_def.h
+===================================================================
+--- git.orig/tftp_def.h	2012-11-19 16:28:50.221027144 -0800
++++ git/tftp_def.h	2012-11-20 17:40:54.391206979 -0800
+@@ -32,6 +32,7 @@
+ #define TIMEOUT       5         /* Client timeout */
+ #define S_TIMEOUT     5         /* Server timout. */
+ #define NB_OF_RETRY   5
++#define MAXBLOCKS   1000000      /* maximum number of blocks in a download */
+ 
+ /* definition to use tftp_options structure */
+ #define OPT_FILENAME  0
+Index: git/tftp_file.c
+===================================================================
+--- git.orig/tftp_file.c	2012-11-19 16:28:50.221027144 -0800
++++ git/tftp_file.c	2012-11-19 16:28:51.201027167 -0800
+@@ -622,8 +622,8 @@
+      int state = S_SEND_REQ;    /* current state in the state machine */
+      int timeout_state = state; /* what state should we go on when timeout */
+      int result;
+-     int block_number = 0;
+-     int last_block = -1;
++     long block_number = 0;
++     long last_block = -1;
+      int data_size;             /* size of data received */
+      int sockfd = data->sockfd; /* just to simplify calls */
+      struct sockaddr_storage sa; /* a copy of data.sa_peer */
+@@ -637,8 +637,8 @@
+      int convert = 0;           /* if true, do netascii convertion */
+      char string[MAXLEN];
+ 
+-     int prev_block_number = 0; /* needed to support netascii convertion */
+-     int prev_file_pos = 0;
++     long prev_block_number = 0; /* needed to support netascii convertion */
++     long prev_file_pos = 0;
+      int temp = 0;
+ 
+      data->file_size = 0;
+@@ -745,7 +745,7 @@
+                               data_size, data->data_buffer);
+                data->file_size += data_size;
+                if (data->trace)
+-                    fprintf(stderr, "sent DATA <block: %d, size: %d>\n",
++                    fprintf(stderr, "sent DATA <block: %ld, size: %d>\n",
+                             block_number + 1, data_size - 4);
+                state = S_WAIT_PACKET;
+                break;
+@@ -785,7 +785,7 @@
+                     }
+                     block_number = ntohs(tftphdr->th_block);
+                     if (data->trace)
+-                         fprintf(stderr, "received ACK <block: %d>\n",
++                         fprintf(stderr, "received ACK <block: %ld>\n",
+                                  block_number);
+                     if ((last_block != -1) && (block_number > last_block))
+                     {
+Index: git/tftp_io.c
+===================================================================
+--- git.orig/tftp_io.c	2012-11-19 16:28:50.221027144 -0800
++++ git/tftp_io.c	2012-11-19 16:28:51.201027167 -0800
+@@ -350,8 +350,8 @@
+ /*
+  * Read from file and do netascii conversion if needed
+  */
+-int tftp_file_read(FILE *fp, char *data_buffer, int data_buffer_size, int block_number,
+-                   int convert, int *prev_block_number, int *prev_file_pos, int *temp)
++int tftp_file_read(FILE *fp, char *data_buffer, int data_buffer_size, long block_number,
++                   int convert, long *prev_block_number, long *prev_file_pos, int *temp)
+ {
+      int i;
+      int c;
+Index: git/tftp_io.h
+===================================================================
+--- git.orig/tftp_io.h	2012-11-19 16:28:50.221027144 -0800
++++ git/tftp_io.h	2012-11-19 16:28:51.201027167 -0800
+@@ -52,8 +52,8 @@
+ int tftp_get_packet(int sock1, int sock2, int *sock, struct sockaddr_storage *sa,
+                     struct sockaddr_storage *from, struct sockaddr_storage *to,
+                     int timeout, int *size, char *data);
+-int tftp_file_read(FILE *fp, char *buffer, int buffer_size, int block_number, int convert,
+-                   int *prev_block_number, int *prev_file_pos, int *temp);
++int tftp_file_read(FILE *fp, char *buffer, int buffer_size, long block_number, int convert,
++                   long *prev_block_number, long *prev_file_pos, int *temp);
+ int tftp_file_write(FILE *fp, char *data_buffer, int data_buffer_size, int block_number,
+                     int data_size, int convert, int *prev_block_number, int *temp);
+ #endif
+Index: git/tftpd_file.c
+===================================================================
+--- git.orig/tftpd_file.c	2012-11-19 16:28:50.225027144 -0800
++++ git/tftpd_file.c	2012-11-19 16:28:51.201027167 -0800
+@@ -407,8 +407,9 @@
+      int state = S_BEGIN;
+      int timeout_state = state;
+      int result;
+-     int block_number = 0;
+-     int last_block = -1;
++     long block_number = 0;
++     long last_block = -1;
++     int block_loops = 0;
+      int data_size;
+      struct sockaddr_storage *sa = &data->client_info->client;
+      struct sockaddr_storage from;
+@@ -431,8 +432,8 @@
+      struct client_info *client_old = NULL;
+      struct tftp_opt options[OPT_NUMBER];
+ 
+-     int prev_block_number = 0; /* needed to support netascii convertion */
+-     int prev_file_pos = 0;
++     long prev_block_number = 0; /* needed to support netascii convertion */
++     long prev_file_pos = 0;
+      int temp = 0;
+ 
+      /* look for mode option */
+@@ -565,11 +566,12 @@
+           logger(LOG_INFO, "blksize option -> %d", result);
+      }
+ 
+-     /* Verify that the file can be sent in 2^16 block of BLKSIZE octets */
+-     if ((file_stat.st_size / (data->data_buffer_size - 4)) > 65535)
++     /* Verify that the file can be sent in MAXBLOCKS blocks of BLKSIZE octets */
++     if ((file_stat.st_size / (data->data_buffer_size - 4)) > MAXBLOCKS)
+      {
+           tftp_send_error(sockfd, sa, EUNDEF, data->data_buffer, data->data_buffer_size);
+-          logger(LOG_NOTICE, "Requested file to big, increase BLKSIZE");
++          logger(LOG_NOTICE, "Requested file too big, increase BLKSIZE");
++          logger(LOG_NOTICE, "Only %d blocks of %d bytes can be served.", MAXBLOCKS, data->data_buffer_size);
+           if (data->trace)
+                logger(LOG_DEBUG, "sent ERROR <code: %d, msg: %s>", EUNDEF,
+                       tftp_errmsg[EUNDEF]);
+@@ -880,10 +882,15 @@
+                     }
+                     /* The ACK is from the current client */
+                     number_of_timeout = 0;
+-                    block_number = ntohs(tftphdr->th_block);
++                    block_number = (block_loops * 65536) + ntohs(tftphdr->th_block);
+                     if (data->trace)
+-                         logger(LOG_DEBUG, "received ACK <block: %d>",
+-                                block_number);
++                    {
++                         logger(LOG_DEBUG, "received ACK <block: %d>", block_number);
++                    }
++                    if (ntohs(tftphdr->th_block) == 65535)
++                    {
++                         block_loops++;
++                    };
+                     if ((last_block != -1) && (block_number > last_block))
+                     {
+                          state = S_END;
diff --git a/meta-oe/recipes-extended/atftp/files/atftpd-0.7_unprotected_assignments_crash.patch b/meta-oe/recipes-extended/atftp/files/atftpd-0.7_unprotected_assignments_crash.patch
new file mode 100644
index 0000000..6faf5f9
--- /dev/null
+++ b/meta-oe/recipes-extended/atftp/files/atftpd-0.7_unprotected_assignments_crash.patch
@@ -0,0 +1,145 @@
+Index: git/tftpd_list.c
+===================================================================
+--- git.orig/tftpd_list.c	2012-10-24 21:48:47.000000000 -0700
++++ git/tftpd_list.c	2012-10-24 21:52:04.266205076 -0700
+@@ -49,11 +49,11 @@
+  */
+ int tftpd_list_add(struct thread_data *new)
+ {
+-     struct thread_data *current = thread_data;
++     struct thread_data *current;
+      int ret;
+ 
+      pthread_mutex_lock(&thread_list_mutex);
+-
++     current = thread_data;
+      number_of_thread++;
+      
+      ret = number_of_thread;
+@@ -81,11 +81,13 @@
+  */
+ int tftpd_list_remove(struct thread_data *old)
+ {
+-     struct thread_data *current = thread_data;
++     struct thread_data *current;
+      int ret;
+ 
+      pthread_mutex_lock(&thread_list_mutex);
+ 
++     current = thread_data;
++
+      number_of_thread--;
+      ret = number_of_thread;
+     
+@@ -137,23 +139,26 @@
+                                              struct thread_data *data,
+                                              struct client_info *client)
+ {
+-     struct thread_data *current = thread_data; /* head of the list */
+-     struct tftp_opt *tftp_options = data->tftp_options;
++     struct thread_data *current; /* head of the list */
++     struct tftp_opt *tftp_options;
+      struct client_info *tmp;
+      char options[MAXLEN];
+      char string[MAXLEN];
+      char *index;
+      int len;
+ 
++     /* lock the whole list before walking it */
++     pthread_mutex_lock(&thread_list_mutex);
++
+      *thread = NULL;
+ 
++     current = thread_data;
++     tftp_options = data->tftp_options;
++
+      opt_request_to_string(tftp_options, options, MAXLEN);
+      index = strstr(options, "multicast");
+      len = (int)index - (int)options;
+ 
+-     /* lock the whole list before walking it */
+-     pthread_mutex_lock(&thread_list_mutex);
+-
+      while (current)
+      {
+           if (current != data)
+@@ -214,9 +219,10 @@
+ void tftpd_clientlist_remove(struct thread_data *thread,
+                              struct client_info *client)
+ {
+-     struct client_info *tmp = thread->client_info;
++     struct client_info *tmp;
+ 
+      pthread_mutex_lock(&thread->client_mutex);
++     tmp = thread->client_info;
+      while ((tmp->next != client) && (tmp->next != NULL))
+           tmp = tmp->next;
+      if (tmp->next == NULL)
+@@ -231,9 +237,11 @@
+ void tftpd_clientlist_free(struct thread_data *thread)
+ {
+      struct client_info *tmp;
+-     struct client_info *head = thread->client_info;
++     struct client_info *head;
+ 
+      pthread_mutex_lock(&thread->client_mutex);
++     head = thread->client_info;
++
+      while (head)
+      {
+           tmp = head;
+@@ -250,9 +258,10 @@
+                           struct client_info *client,
+                           struct sockaddr_storage *sock)
+ {
+-     struct client_info *head = thread->client_info;
++     struct client_info *head;
+ 
+      pthread_mutex_lock(&thread->client_mutex);
++     head = thread->client_info;
+ 
+      if (client)
+      {
+@@ -334,10 +343,10 @@
+ 
+ void tftpd_list_kill_threads(void)
+ {
+-     struct thread_data *current = thread_data; /* head of list */
++     struct thread_data *current; /* head of list */
+ 
+      pthread_mutex_lock(&thread_list_mutex);
+-
++     current = thread_data;
+ 
+      while (current != NULL)
+      {
+Index: git/tftpd_mcast.c
+===================================================================
+--- git.orig/tftpd_mcast.c	2012-10-24 21:48:47.000000000 -0700
++++ git/tftpd_mcast.c	2012-10-24 21:49:11.570201582 -0700
+@@ -51,9 +51,11 @@
+  */
+ int tftpd_mcast_get_tid(char **addr, short *port)
+ {
+-     struct tid *current = tid_list;
++     struct tid *current;
+ 
+      pthread_mutex_lock(&mcast_tid_list);
++     current = tid_list;
++
+      /* walk the list for a free tid */
+      while (current != NULL)
+      {
+@@ -74,9 +76,11 @@
+ 
+ int tftpd_mcast_free_tid(char *addr, short port)
+ {
+-     struct tid *current = tid_list;
++     struct tid *current;
+ 
+      pthread_mutex_lock(&mcast_tid_list);
++     current = tid_list;
++
+      while (current != NULL)
+      {
+ 	  if ((current->used == 1) && (current->port == port) &&
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-oe][PATCH V2 10/25] tcpdump: Upgrade from 4.1.1 -> 4.3.0
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (7 preceding siblings ...)
  2013-01-06  9:12 ` [meta-oe][PATCH V2 09/25] atftp: Upgrade to latest from git Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:12 ` [meta-oe][PATCH V2 11/25] cppunit: Upgrade recipes from 1.12.1 -> 1.13.1 Khem Raj
                   ` (14 subsequent siblings)
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../0001-minimal-IEEE802.15.4-allowed.patch        |    0
 .../configure.patch                                |    0
 .../ipv6-cross.patch                               |    0
 .../tcpdump_configure_no_-O2.patch                 |    0
 .../tcpdump/{tcpdump_4.1.1.bb => tcpdump_4.3.0.bb} |   32 +++++++++++---------
 5 files changed, 17 insertions(+), 15 deletions(-)
 rename meta-oe/recipes-support/tcpdump/{tcpdump-4.1.1 => tcpdump-4.3.0}/0001-minimal-IEEE802.15.4-allowed.patch (100%)
 rename meta-oe/recipes-support/tcpdump/{tcpdump-4.1.1 => tcpdump-4.3.0}/configure.patch (100%)
 rename meta-oe/recipes-support/tcpdump/{tcpdump-4.1.1 => tcpdump-4.3.0}/ipv6-cross.patch (100%)
 rename meta-oe/recipes-support/tcpdump/{tcpdump-4.1.1 => tcpdump-4.3.0}/tcpdump_configure_no_-O2.patch (100%)
 rename meta-oe/recipes-support/tcpdump/{tcpdump_4.1.1.bb => tcpdump_4.3.0.bb} (55%)

diff --git a/meta-oe/recipes-support/tcpdump/tcpdump-4.1.1/0001-minimal-IEEE802.15.4-allowed.patch b/meta-oe/recipes-support/tcpdump/tcpdump-4.3.0/0001-minimal-IEEE802.15.4-allowed.patch
similarity index 100%
rename from meta-oe/recipes-support/tcpdump/tcpdump-4.1.1/0001-minimal-IEEE802.15.4-allowed.patch
rename to meta-oe/recipes-support/tcpdump/tcpdump-4.3.0/0001-minimal-IEEE802.15.4-allowed.patch
diff --git a/meta-oe/recipes-support/tcpdump/tcpdump-4.1.1/configure.patch b/meta-oe/recipes-support/tcpdump/tcpdump-4.3.0/configure.patch
similarity index 100%
rename from meta-oe/recipes-support/tcpdump/tcpdump-4.1.1/configure.patch
rename to meta-oe/recipes-support/tcpdump/tcpdump-4.3.0/configure.patch
diff --git a/meta-oe/recipes-support/tcpdump/tcpdump-4.1.1/ipv6-cross.patch b/meta-oe/recipes-support/tcpdump/tcpdump-4.3.0/ipv6-cross.patch
similarity index 100%
rename from meta-oe/recipes-support/tcpdump/tcpdump-4.1.1/ipv6-cross.patch
rename to meta-oe/recipes-support/tcpdump/tcpdump-4.3.0/ipv6-cross.patch
diff --git a/meta-oe/recipes-support/tcpdump/tcpdump-4.1.1/tcpdump_configure_no_-O2.patch b/meta-oe/recipes-support/tcpdump/tcpdump-4.3.0/tcpdump_configure_no_-O2.patch
similarity index 100%
rename from meta-oe/recipes-support/tcpdump/tcpdump-4.1.1/tcpdump_configure_no_-O2.patch
rename to meta-oe/recipes-support/tcpdump/tcpdump-4.3.0/tcpdump_configure_no_-O2.patch
diff --git a/meta-oe/recipes-support/tcpdump/tcpdump_4.1.1.bb b/meta-oe/recipes-support/tcpdump/tcpdump_4.3.0.bb
similarity index 55%
rename from meta-oe/recipes-support/tcpdump/tcpdump_4.1.1.bb
rename to meta-oe/recipes-support/tcpdump/tcpdump_4.3.0.bb
index 46b19a1..d3ca24f 100644
--- a/meta-oe/recipes-support/tcpdump/tcpdump_4.1.1.bb
+++ b/meta-oe/recipes-support/tcpdump/tcpdump_4.3.0.bb
@@ -4,7 +4,6 @@ LICENSE = "BSD"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=1d4b0366557951c84a94fabe3529f867"
 SECTION = "console/network"
 DEPENDS = "libpcap"
-PR = "r2"
 
 SRC_URI = " \
 	http://www.tcpdump.org/release/tcpdump-${PV}.tar.gz \
@@ -13,29 +12,32 @@ SRC_URI = " \
 	file://ipv6-cross.patch \
 	file://configure.patch \
 "
+SRC_URI[md5sum] = "a3fe4d30ac85ff5467c889ff46b7e1e8"
+SRC_URI[sha256sum] = "efd08b610210d39977ec3175fa82dad9fbd33587930081be2a905a712dba4286"
 
 inherit autotools
-# ac_cv_linux_vers=${ac_cv_linux_vers=2}
+CACHED_CONFIGUREVARS = "ac_cv_linux_vers=${ac_cv_linux_vers=2}"
 
-EXTRA_OECONF = "--without-crypto \
+EXTRA_OECONF = "--without-crypto --disable-rpath \
 		${@base_contains('DISTRO_FEATURES', 'ipv6', '--enable-ipv6', '--disable-ipv6', d)}"
 
-do_configure() {
+EXTRA_AUTORECONF += " -I m4"
+
+do_configure_prepend() {
+	mkdir -p ${S}/m4
+	if [ -f aclocal.m4 ]; then
+		mv aclocal.m4 ${S}/m4
+	fi
 	# AC_CHECK_LIB(dlpi.. was looking to host /lib
-	sed -i 's:-L/lib:-L${STAGING_LIBDIR}:g' ./configure.in
-        
-	gnu-configize
-	autoconf
-	oe_runconf
-	sed -i 's:/usr/lib:${STAGING_LIBDIR}:' ./Makefile
-	sed -i 's:/usr/include:${STAGING_INCDIR}:' ./Makefile
+	sed -i 's:-L/lib::g' ./configure.in
+}
+do_configure_append() {
+	sed -i 's:-L/usr/lib::' ./Makefile
+	sed -i 's:-Wl,-rpath,${STAGING_LIBDIR}::' ./Makefile
+	sed -i 's:-I/usr/include::' ./Makefile
 }
 
 do_install_append() {
 	# tcpdump 4.0.0 installs a copy to /usr/sbin/tcpdump.4.0.0
 	rm -f ${D}${sbindir}/tcpdump.${PV}
 }
-
-SRC_URI[md5sum] = "d0dd58bbd6cd36795e05c6f1f74420b0"
-SRC_URI[sha256sum] = "e6cd4bbd61ec7adbb61ba8352c4b4734f67b8caaa845d88cb826bc0b9f1e7f0a"
-
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-oe][PATCH V2 11/25] cppunit: Upgrade recipes from 1.12.1 -> 1.13.1
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (8 preceding siblings ...)
  2013-01-06  9:12 ` [meta-oe][PATCH V2 10/25] tcpdump: Upgrade from 4.1.1 -> 4.3.0 Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:12 ` [meta-oe][PATCH V2 12/25] luajit: Add recipes Khem Raj
                   ` (13 subsequent siblings)
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-oe/recipes-devtools/cppunit/cppunit_1.12.1.bb |   16 ----------------
 meta-oe/recipes-devtools/cppunit/cppunit_1.13.1.bb |   11 +++++++++++
 2 files changed, 11 insertions(+), 16 deletions(-)
 delete mode 100644 meta-oe/recipes-devtools/cppunit/cppunit_1.12.1.bb
 create mode 100644 meta-oe/recipes-devtools/cppunit/cppunit_1.13.1.bb

diff --git a/meta-oe/recipes-devtools/cppunit/cppunit_1.12.1.bb b/meta-oe/recipes-devtools/cppunit/cppunit_1.12.1.bb
deleted file mode 100644
index 6487a3a..0000000
--- a/meta-oe/recipes-devtools/cppunit/cppunit_1.12.1.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-DESCRIPTION = "CppUnit is a C++ unit testing framework"
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/cppunit/cppunit-${PV}.tar.gz"
-SRC_URI[md5sum] = "bd30e9cf5523cdfc019b94f5e1d7fd19"
-SRC_URI[sha256sum] = "ac28a04c8e6c9217d910b0ae7122832d28d9917fa668bcc9e0b8b09acb4ea44a"
-
-inherit autotools binconfig
-
-# Fix a linker ordering problem, we want -ldl *after* -lstdc++
-do_configure_append() {
-	for i in $(find ${S} -name "Makefile") ; do
-		sed -i -e 's:-lm:-lm -ldl:g' $i
-	done
-}
diff --git a/meta-oe/recipes-devtools/cppunit/cppunit_1.13.1.bb b/meta-oe/recipes-devtools/cppunit/cppunit_1.13.1.bb
new file mode 100644
index 0000000..3e525fe
--- /dev/null
+++ b/meta-oe/recipes-devtools/cppunit/cppunit_1.13.1.bb
@@ -0,0 +1,11 @@
+DESCRIPTION = "CppUnit is the C++ port of the famous JUnit framework for unit testing. Test output is in XML for automatic testing and GUI based for supervised tests. "
+HOMEPAGE = "http://www.freedesktop.org/wiki/Software/cppunit"
+LICENSE = "LGPL-2.1"
+SECTION = "libs"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
+SRC_URI = "http://dev-www.libreoffice.org/src/cppunit-${PV}.tar.gz"
+SRC_URI[md5sum] = "fa9aa839145cdf860bf596532bb8af97"
+SRC_URI[sha256sum] = "d5b9f3ffc9f1634d75b20b54f48c02e0817bca6afa1d5160b244889d6bff8e0f"
+
+inherit autotools
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-oe][PATCH V2 12/25] luajit: Add recipes
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (9 preceding siblings ...)
  2013-01-06  9:12 ` [meta-oe][PATCH V2 11/25] cppunit: Upgrade recipes from 1.12.1 -> 1.13.1 Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:12 ` [meta-oe][PATCH V2 13/25] concurrencykit: Add recipe for latest from git Khem Raj
                   ` (12 subsequent siblings)
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

LuaJIT is for JIT'ting LUA code

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../disable_lj_vm_foldarith_for_spe.patch          |   13 +++++
 meta-oe/recipes-devtools/luajit/luajit_2.0.0.bb    |   53 ++++++++++++++++++++
 2 files changed, 66 insertions(+)
 create mode 100644 meta-oe/recipes-devtools/luajit/luajit-2.0.0/disable_lj_vm_foldarith_for_spe.patch
 create mode 100644 meta-oe/recipes-devtools/luajit/luajit_2.0.0.bb

diff --git a/meta-oe/recipes-devtools/luajit/luajit-2.0.0/disable_lj_vm_foldarith_for_spe.patch b/meta-oe/recipes-devtools/luajit/luajit-2.0.0/disable_lj_vm_foldarith_for_spe.patch
new file mode 100644
index 0000000..c96fc77
--- /dev/null
+++ b/meta-oe/recipes-devtools/luajit/luajit-2.0.0/disable_lj_vm_foldarith_for_spe.patch
@@ -0,0 +1,13 @@
+Index: LuaJIT-2.0.0/src/lj_vmmath.c
+===================================================================
+--- LuaJIT-2.0.0.orig/src/lj_vmmath.c	2012-11-08 02:10:00.000000000 -0800
++++ LuaJIT-2.0.0/src/lj_vmmath.c	2012-11-19 22:15:28.613527136 -0800
+@@ -22,7 +22,7 @@
+ LJ_FUNCA double lj_vm_tanh(double x) { return tanh(x); }
+ #endif
+ 
+-#if !LJ_TARGET_X86ORX64
++#if !(LJ_TARGET_X86ORX64 || LJ_TARGET_PPCSPE)
+ double lj_vm_foldarith(double x, double y, int op)
+ {
+   switch (op) {
diff --git a/meta-oe/recipes-devtools/luajit/luajit_2.0.0.bb b/meta-oe/recipes-devtools/luajit/luajit_2.0.0.bb
new file mode 100644
index 0000000..ac769cf
--- /dev/null
+++ b/meta-oe/recipes-devtools/luajit/luajit_2.0.0.bb
@@ -0,0 +1,53 @@
+DESCRIPTION = " a Just-In-Time Compiler for Lua"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=9511885992e4900014e3b13ca6372b7d"
+HOMEPAGE = "http://luajit.org"
+
+DEPENDS += "lua5.1"
+PR = "r0"
+SRC_URI = "http://luajit.org/download/LuaJIT-${PV}.tar.gz \
+           file://disable_lj_vm_foldarith_for_spe.patch \
+          "
+SRC_URI[md5sum] = "97a2b87cc0490784f54b64cfb3b8f5ad"
+SRC_URI[sha256sum] = "deaed645c4a093c5fb250c30c9933c9131ee05c94b13262d58f6e0b60b338c15"
+
+S = "${WORKDIR}/LuaJIT-${PV}"
+
+inherit pkgconfig binconfig
+
+do_configure_prepend() {
+	sed -i -e s:/usr/local:${prefix}:g ${S}/Makefile
+	sed -i -e s:/lib:${base_libdir}:g ${S}/Makefile
+}
+
+EXTRA_OEMAKE = 'CROSS=${HOST_PREFIX}'
+EXTRA_OEMAKE_append_powerpc = ' HOST_CC="${BUILD_CC} -m32"'
+EXTRA_OEMAKE_append_x86-64 = ' HOST_CC="${BUILD_CC}"'
+EXTRA_OEMAKE_append_i586 = ' HOST_CC="${BUILD_CC} -m32"'
+EXTRA_OEMAKE_append_powerpc64 = ' HOST_CC="${BUILD_CC}"'
+EXTRA_OEMAKE_append_arm = ' HOST_CC="${BUILD_CC} -m32"'
+EXTRA_OEMAKE_append_mips64 = ' HOST_CC="${BUILD_CC} -m32"'
+
+do_compile () {
+	oe_runmake
+}
+
+do_install () {
+	oe_runmake 'DESTDIR=${D}' install
+	rmdir ${D}${datadir}/lua/5.1 \
+	      ${D}${datadir}/lua \
+	      ${D}${libdir}/lua/5.1 \
+	      ${D}${libdir}/lua
+}
+
+PACKAGES += 'luajit-common'
+
+FILES_${PN} += "${libdir}/libluajit-5.1.so.2 \
+		${libdir}/libluajit-5.1.so.2.0.0 \
+	       "
+FILES_${PN}-dev += "${libdir}/libluajit-5.1.a \
+		    ${libdir}/libluajit-5.1.so \
+                    ${libdir}/pkgconfig/luajit.pc \
+                   "
+FILES_luajit-common = "${datadir}/${BPN}-${PV}"
+
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-oe][PATCH V2 13/25] concurrencykit: Add recipe for latest from git
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (10 preceding siblings ...)
  2013-01-06  9:12 ` [meta-oe][PATCH V2 12/25] luajit: Add recipes Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-07 18:15   ` Martin Jansa
  2013-01-06  9:12 ` [meta-oe][PATCH V2 14/25] tcsh: Add recipes for package Khem Raj
                   ` (11 subsequent siblings)
  23 siblings, 1 reply; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Provides concurrency primitives

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../concurrencykit/concurrencykit/cross.patch      |   69 ++++++++++++++++++++
 .../concurrencykit/concurrencykit_git.bb           |   38 +++++++++++
 2 files changed, 107 insertions(+)
 create mode 100644 meta-oe/recipes-devtools/concurrencykit/concurrencykit/cross.patch
 create mode 100644 meta-oe/recipes-devtools/concurrencykit/concurrencykit_git.bb

diff --git a/meta-oe/recipes-devtools/concurrencykit/concurrencykit/cross.patch b/meta-oe/recipes-devtools/concurrencykit/concurrencykit/cross.patch
new file mode 100644
index 0000000..38504fe
--- /dev/null
+++ b/meta-oe/recipes-devtools/concurrencykit/concurrencykit/cross.patch
@@ -0,0 +1,69 @@
+Index: git/configure
+===================================================================
+--- git.orig/configure	2012-11-19 21:07:51.917429465 -0800
++++ git/configure	2012-11-19 21:13:19.337437278 -0800
+@@ -275,8 +275,11 @@
+ assert "$SYSTEM" "$SYSTEM" "unsupported"
+ 
+ CORES=${CORES:-${DCORES}}
+-printf "Detecting machine architecture..."
+-PLATFORM=`uname -m 2> /dev/null`
++if test -z "$PLATFORM"; then
++	printf "Detecting machine architecture..."
++	PLATFORM=`uname -m 2> /dev/null`
++fi
++
+ case $PLATFORM in
+ 	"macppc"|"Power Macintosh"|"powerpc")
+ 		MM="${MM:-"CK_MD_RMO"}"
+@@ -439,14 +442,18 @@
+ 	GZIP_SUFFIX=".gz"
+ fi
+ 
+-printf "Finding suitable compiler........"
+-CC=`pathsearch "${CC:-cc}"`
+-if test -z "$CC" -o ! -x "$CC"; then
+-	CC=`pathsearch "${CC:-gcc}"`
++if test -z "$CC"; then
++	printf "Finding suitable compiler........"
++	CC=`pathsearch "${CC:-cc}"`
++	if test -z "$CC" -o ! -x "$CC"; then
++		CC=`pathsearch "${CC:-gcc}"`
++	fi
+ fi
+ assert "$CC" "not found"
+ 
+-cat << EOF > .1.c
++if test -z "$COMPILER"; then
++
++	cat << EOF > .1.c
+ #include <stdio.h>
+ int main(void) {
+ #if defined(__GNUC__) && (__GNUC__ >= 4)
+@@ -460,16 +467,16 @@
+ #endif
+ }
+ EOF
+-
+-$CC -o .1 .1.c
+-COMPILER=`./.1`
+-r=$?
+-rm -f .1.c .1
+-
+-if test "$r" -ne 0; then
+-	assert "" "update compiler"
+-else
+-	echo "success [$CC]"
++	$CC -o .1 .1.c
++	COMPILER=`./.1`
++	r=$?
++	rm -f .1.c .1
++
++	if test "$r" -ne 0; then
++		assert "" "update compiler"
++	else
++		echo "success [$CC]"
++	fi
+ fi
+ 
+ if test "$COMPILER" = "suncc"; then
diff --git a/meta-oe/recipes-devtools/concurrencykit/concurrencykit_git.bb b/meta-oe/recipes-devtools/concurrencykit/concurrencykit_git.bb
new file mode 100644
index 0000000..463e7e4
--- /dev/null
+++ b/meta-oe/recipes-devtools/concurrencykit/concurrencykit_git.bb
@@ -0,0 +1,38 @@
+DESCRIPTION = "Concurrency Kit provides a plethora of concurrency primitives, \
+safe memory reclamation mechanisms and non-blocking data structures \
+designed to aid in the design and implementation of high performance \
+concurrent systems."
+
+LICENSE = "BSD & Apache-2.0"
+HOMEPAGE = "http://concurrencykit.org"
+SECTION = "base"
+
+SRCREV = "900d203aa9e41288545368ea40da0bee89f7907f"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=f12611e65e064515ce264249b2bdea98"
+SRC_URI = "git://git.concurrencykit.org/ck.git;protocol=git \
+           file://cross.patch \
+          "
+
+S = "${WORKDIR}/git"
+
+inherit autotools
+
+PLAT_powerpc64 = "ppc64"
+PLAT ?= "${HOST_ARCH}"
+
+do_configure () {
+	export PLATFORM=${PLAT}
+	export COMPILER='gcc'
+	${S}/configure \
+	--prefix=${prefix} \
+	--includedir=${includedir} \
+	--libdir=${libdir} \
+}
+
+do_compile () {
+	oe_runmake
+}
+
+do_install () {
+	oe_runmake 'DESTDIR=${D}' install
+}
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-oe][PATCH V2 14/25] tcsh: Add recipes for package
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (11 preceding siblings ...)
  2013-01-06  9:12 ` [meta-oe][PATCH V2 13/25] concurrencykit: Add recipe for latest from git Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:12 ` [meta-oe][PATCH V2 15/25] dmidecode: Forward port from OE-Classic Khem Raj
                   ` (10 subsequent siblings)
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../recipes-extended/tcsh/files/01_build.1.patch   |   16 ++++++
 .../recipes-extended/tcsh/files/01_build.2.patch   |   13 +++++
 .../recipes-extended/tcsh/files/01_build.3.patch   |   13 +++++
 meta-oe/recipes-extended/tcsh/files/07_nls.patch   |   14 ++++++
 .../tcsh/files/12_unknown_lscolors.patch           |   24 +++++++++
 .../recipes-extended/tcsh/files/15_no-strip.patch  |   14 ++++++
 .../tcsh/files/cross-compile.patch                 |   12 +++++
 .../tcsh/files/disable-broken-test.patch           |   14 ++++++
 .../tcsh/files/disable-lexical.at-31.patch         |   30 +++++++++++
 .../tcsh/files/disable-test-nice.patch             |   23 +++++++++
 .../tcsh/files/disable-test-notty.patch            |   30 +++++++++++
 .../tcsh/files/fix-make-catalogs.patch             |   27 ++++++++++
 .../tcsh/files/tcsh-6.17.02-multibyte.patch        |   16 ++++++
 meta-oe/recipes-extended/tcsh/tcsh_6.17.02.bb      |   53 ++++++++++++++++++++
 14 files changed, 299 insertions(+)
 create mode 100644 meta-oe/recipes-extended/tcsh/files/01_build.1.patch
 create mode 100644 meta-oe/recipes-extended/tcsh/files/01_build.2.patch
 create mode 100644 meta-oe/recipes-extended/tcsh/files/01_build.3.patch
 create mode 100644 meta-oe/recipes-extended/tcsh/files/07_nls.patch
 create mode 100644 meta-oe/recipes-extended/tcsh/files/12_unknown_lscolors.patch
 create mode 100644 meta-oe/recipes-extended/tcsh/files/15_no-strip.patch
 create mode 100644 meta-oe/recipes-extended/tcsh/files/cross-compile.patch
 create mode 100644 meta-oe/recipes-extended/tcsh/files/disable-broken-test.patch
 create mode 100644 meta-oe/recipes-extended/tcsh/files/disable-lexical.at-31.patch
 create mode 100644 meta-oe/recipes-extended/tcsh/files/disable-test-nice.patch
 create mode 100644 meta-oe/recipes-extended/tcsh/files/disable-test-notty.patch
 create mode 100644 meta-oe/recipes-extended/tcsh/files/fix-make-catalogs.patch
 create mode 100644 meta-oe/recipes-extended/tcsh/files/tcsh-6.17.02-multibyte.patch
 create mode 100644 meta-oe/recipes-extended/tcsh/tcsh_6.17.02.bb

diff --git a/meta-oe/recipes-extended/tcsh/files/01_build.1.patch b/meta-oe/recipes-extended/tcsh/files/01_build.1.patch
new file mode 100644
index 0000000..b9f41ad
--- /dev/null
+++ b/meta-oe/recipes-extended/tcsh/files/01_build.1.patch
@@ -0,0 +1,16 @@
+Author: Franz Pletz <fpletz@franz-pletz.org>
+Description: Original comment: Fix build
+Not sure why we have this patch. Let's keep it for compatibility.
+--- a/pathnames.h
++++ b/pathnames.h
+@@ -92,6 +92,10 @@
+ # define _PATH_TCSHELL		"/local/bin/tcsh"	/* use ram disk */
+ #endif /* _MINIX && !_PATH_TCSHELL */
+ 
++#ifndef _PATH_TCSHELL
++# define _PATH_TCSHELL		"/bin/tcsh"		/* Debian */
++#endif /* !_PATH_TCSHELL */
++
+ #if defined(__EMX__) && !defined(_PATH_DEVNULL)
+ # define _PATH_DEVNULL		"nul"
+ #endif /* __EMX__ && !_PATH_DEVNULL */
diff --git a/meta-oe/recipes-extended/tcsh/files/01_build.2.patch b/meta-oe/recipes-extended/tcsh/files/01_build.2.patch
new file mode 100644
index 0000000..ff27531
--- /dev/null
+++ b/meta-oe/recipes-extended/tcsh/files/01_build.2.patch
@@ -0,0 +1,13 @@
+Author: Franz Pletz <fpletz@franz-pletz.org>
+Description: Update manpage.
+--- a/tcsh.man
++++ b/tcsh.man
+@@ -578,7 +578,7 @@ Repeating \fIdabbrev-expand\fR without a
+ changes to the next previous word etc., skipping identical matches
+ much like \fIhistory-search-backward\fR does.
+ .TP 8
+-.B delete-char \fR(not bound)
++.B delete-char \fR(bound to `Del' if using the standard \fI/etc/csh.cshrc\fR)
+ Deletes the character under the cursor.
+ See also \fIdelete-char-or-list-or-eof\fR.
+ .TP 8
diff --git a/meta-oe/recipes-extended/tcsh/files/01_build.3.patch b/meta-oe/recipes-extended/tcsh/files/01_build.3.patch
new file mode 100644
index 0000000..d36c177
--- /dev/null
+++ b/meta-oe/recipes-extended/tcsh/files/01_build.3.patch
@@ -0,0 +1,13 @@
+Author: Franz Pletz <fpletz@franz-pletz.org>
+Description: Enable NODOT
+--- a/config_f.h
++++ b/config_f.h
+@@ -98,7 +98,7 @@
+ /*
+  * NODOT	Don't put "." in the default path, for security reasons
+  */
+-#undef NODOT
++#define NODOT
+ 
+ /*
+  * AUTOLOGOUT	tries to determine if it should set autologout depending
diff --git a/meta-oe/recipes-extended/tcsh/files/07_nls.patch b/meta-oe/recipes-extended/tcsh/files/07_nls.patch
new file mode 100644
index 0000000..fe7845f
--- /dev/null
+++ b/meta-oe/recipes-extended/tcsh/files/07_nls.patch
@@ -0,0 +1,14 @@
+Author: Franz Pletz <fpletz@franz-pletz.org>
+Description: Fixes NLS build bug
+
+--- a/nls/Makefile.in
++++ b/nls/Makefile.in
+@@ -2,7 +2,7 @@
+ 
+ LOCALES=	C et finnish french german greek italian ja pl russian \
+ 		spanish ukrainian
+-GENCAT=		gencat
++GENCAT=		gencat --new
+ INSTALL=	ginstall
+ 
+ datarootdir=@datarootdir@
diff --git a/meta-oe/recipes-extended/tcsh/files/12_unknown_lscolors.patch b/meta-oe/recipes-extended/tcsh/files/12_unknown_lscolors.patch
new file mode 100644
index 0000000..faa59cc
--- /dev/null
+++ b/meta-oe/recipes-extended/tcsh/files/12_unknown_lscolors.patch
@@ -0,0 +1,24 @@
+Author: Franz Pletz <fpletz@franz-pletz.org>
+Description: Don't die on unknown LS_COLORS values
+Removing the patch causes a segfault when dircolors is set by coreutils' dircolors.
+Debian-Bug: #592089
+
+--- a/tw.color.c
++++ b/tw.color.c
+@@ -239,13 +239,10 @@ parseLS_COLORS(const Char *value)
+ 		    if ((Char)variables[i].variable[0] == (v[0] & CHAR) &&
+ 			(Char)variables[i].variable[1] == (v[1] & CHAR))
+ 			break;
+-		if (i < nvariables) {
+-		    v += 3;
++		v += 3;
++		if (i < nvariables)
+ 		    getstring(&c, &v, &variables[i].color, ':');
+-		    continue;
+-		}
+-		else
+-		    stderror(ERR_BADCOLORVAR, v[0], v[1]);
++		continue;
+ 	    }
+ 	    break;
+ 	}
diff --git a/meta-oe/recipes-extended/tcsh/files/15_no-strip.patch b/meta-oe/recipes-extended/tcsh/files/15_no-strip.patch
new file mode 100644
index 0000000..cbc9f65
--- /dev/null
+++ b/meta-oe/recipes-extended/tcsh/files/15_no-strip.patch
@@ -0,0 +1,14 @@
+Author: Lucas Nussbaum <lucas@debian.org>
+Description: do not strip binary
+ Stripping should be handled by dh_strip instead, so DEB_BUILD_OPTIONS=nostrip works.
+ Closes: #438109, #411607
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -596,7 +596,6 @@ install: tcsh$(EXEEXT)
+ 	-mkdir -p ${DESTBIN}
+ 	-mv -f ${DESTBIN}/tcsh$(EXEEXT)  ${DESTBIN}/tcsh.old
+ 	cp tcsh$(EXEEXT) ${DESTBIN}/tcsh$(EXEEXT)
+-	-strip ${DESTBIN}/tcsh$(EXEEXT)
+ 	chmod 755 ${DESTBIN}/tcsh$(EXEEXT)
+ 
+ install.man: tcsh.man
diff --git a/meta-oe/recipes-extended/tcsh/files/cross-compile.patch b/meta-oe/recipes-extended/tcsh/files/cross-compile.patch
new file mode 100644
index 0000000..06dcfda
--- /dev/null
+++ b/meta-oe/recipes-extended/tcsh/files/cross-compile.patch
@@ -0,0 +1,12 @@
+diff -git a/Makefile.in b/Makefile.in
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -446,7 +446,7 @@
+ 
+ gethost:  gethost.c sh.err.h tc.const.h sh.h
+ 	rm -f gethost
+-	${CC} -o gethost ${LDFLAGS} ${CFLAGS} ${CPPFLAGS} ${DFLAGS} $(srcdir)/gethost.c ${LIBES} ${EXTRALIBS}
++	${BUILD_CC} -o gethost ${BUILD_LDFLAGS} ${BUILD_CFLAGS} ${BUILD_CPPFLAGS} ${DFLAGS} $(srcdir)/gethost.c ${LIBES} ${EXTRALIBS}
+ 
+ tc.defs.c:	gethost host.defs
+ 	@rm -f $@.tmp
diff --git a/meta-oe/recipes-extended/tcsh/files/disable-broken-test.patch b/meta-oe/recipes-extended/tcsh/files/disable-broken-test.patch
new file mode 100644
index 0000000..0bda0ba
--- /dev/null
+++ b/meta-oe/recipes-extended/tcsh/files/disable-broken-test.patch
@@ -0,0 +1,14 @@
+Author: Lucas Nussbaum <lucas@debian.org>
+Description: disable syntactically incorrect test
+--- a/tests/lexical.at
++++ b/tests/lexical.at
+@@ -172,9 +172,6 @@
+ AT_DATA([nohist.csh],
+ [echo ! space !	tab != "!(" newline !
+ ])
+-AT_CHECK([tcsh -f nohist.csh], ,
+-[[! space ! tab != !( newline !
+-]])
+ 
+ AT_CLEANUP
+ 
diff --git a/meta-oe/recipes-extended/tcsh/files/disable-lexical.at-31.patch b/meta-oe/recipes-extended/tcsh/files/disable-lexical.at-31.patch
new file mode 100644
index 0000000..98a9b2e
--- /dev/null
+++ b/meta-oe/recipes-extended/tcsh/files/disable-lexical.at-31.patch
@@ -0,0 +1,30 @@
+--- a/tests/lexical.at
++++ b/tests/lexical.at
+@@ -27,27 +27,6 @@ AT_CHECK([tcsh -f oneword.csh], ,
+ 
+ AT_CLEANUP
+ 
+-
+-AT_SETUP([Comments])
+-
+-AT_CHECK([echo 'echo OK@%:@comment' | tcsh -f], , [OK
+-])
+-
+-AT_CHECK([tcsh -f -c 'echo @%:@no comment'], ,
+-[@%:@no comment
+-])
+-
+-AT_DATA([comment2.csh],
+-[[echo testing...@%:@\
+-OK
+-]])
+-AT_CHECK([tcsh -f comment2.csh], ,
+-[testing... OK
+-])
+-
+-AT_CLEANUP
+-
+-
+ AT_SETUP([Escaping special characters])
+ 
+ AT_DATA([nosplit.csh],
diff --git a/meta-oe/recipes-extended/tcsh/files/disable-test-nice.patch b/meta-oe/recipes-extended/tcsh/files/disable-test-nice.patch
new file mode 100644
index 0000000..79f918c
--- /dev/null
+++ b/meta-oe/recipes-extended/tcsh/files/disable-test-nice.patch
@@ -0,0 +1,23 @@
+Author: Lucas Nussbaum <lucas@debian.org>
+Description: disable test that fails on the buildd with
+  "setpriority: Permission denied".
+--- a/tests/commands.at
++++ b/tests/commands.at
+@@ -888,17 +888,6 @@ TCSH_UNTESTED([migrate])
+ TCSH_UNTESTED([newgrp])
+ 
+ 
+-AT_SETUP([nice])
+-
+-# Nothing really tested
+-AT_CHECK([tcsh -f -c 'nice set var=1; echo $?var'], ,
+-[0
+-])
+-
+-
+-AT_CLEANUP
+-
+-
+ AT_SETUP([nohup])
+ 
+ AT_DATA([nohup.csh],
diff --git a/meta-oe/recipes-extended/tcsh/files/disable-test-notty.patch b/meta-oe/recipes-extended/tcsh/files/disable-test-notty.patch
new file mode 100644
index 0000000..69f0564
--- /dev/null
+++ b/meta-oe/recipes-extended/tcsh/files/disable-test-notty.patch
@@ -0,0 +1,30 @@
+From: Lucas Nussbaum <lucas@debian.org>
+Description: Those tests fail when running the testsuite without a tty. Disabling them.
+
+--- a/tests/commands.at
++++ b/tests/commands.at
+@@ -1203,11 +1203,6 @@ AT_SETUP([source])
+ AT_DATA([script.csh],
+ [[set var=$1
+ ]])
+-AT_CHECK([[tcsh -f -c 'source -h script.csh foo; history' \
+-	   | sed 's/	[^	]*	/ TIME /']], ,
+-[     1 TIME source -h script.csh foo ; history
+-     2 TIME set var=$1
+-])
+ 
+ AT_CHECK([tcsh -f -c 'source -h script.csh foo; echo $var'], 1, [],
+ [var: Undefined variable.
+--- a/tests/variables.at
++++ b/tests/variables.at
+@@ -319,10 +319,6 @@ AT_CLEANUP
+ 
+ AT_SETUP([$ edit])
+ 
+-AT_CHECK([TERM=something tcsh -f -c 'echo $?edit'], ,
+-[1
+-])
+-
+ AT_CHECK([TERM=dumb tcsh -f -c 'echo $?edit'], ,
+ [0
+ ])
diff --git a/meta-oe/recipes-extended/tcsh/files/fix-make-catalogs.patch b/meta-oe/recipes-extended/tcsh/files/fix-make-catalogs.patch
new file mode 100644
index 0000000..43001f1
--- /dev/null
+++ b/meta-oe/recipes-extended/tcsh/files/fix-make-catalogs.patch
@@ -0,0 +1,27 @@
+Author: christos <christos>
+Date:   Thu May 13 18:39:02 2010 +0000
+
+    add a rule to make catalogs and propagate ${MAKE} instead of hard-coding make.
+
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -687,7 +687,7 @@ shar:
+ 	rm -rf tcsh-${VERSION}
+ 
+ catalogs:
+-	@(cd nls; make catalogs)
++	@(cd nls; ${MAKE})
+ 
+ tcsh-${VERSION}.tar.Z:
+ 	rm -rf tcsh-${VERSION} 
+--- a/nls/Makefile.in
++++ b/nls/Makefile.in
+@@ -18,7 +18,7 @@ install:	$(INSTALLED)
+ 	$(INSTALL) $< $@
+ 
+ %.cat:
+-	$(GENCAT) $@ $(@:%.cat=%)/*set*
++	cat $(@:%.cat=%)/charset $(@:%.cat=%)/set* | $(GENCAT) $@ 
+ 
+ clean:
+ 	$(RM) $(CATALOGS)
diff --git a/meta-oe/recipes-extended/tcsh/files/tcsh-6.17.02-multibyte.patch b/meta-oe/recipes-extended/tcsh/files/tcsh-6.17.02-multibyte.patch
new file mode 100644
index 0000000..7f3e926
--- /dev/null
+++ b/meta-oe/recipes-extended/tcsh/files/tcsh-6.17.02-multibyte.patch
@@ -0,0 +1,16 @@
+Author:  Jean-Luc Leger <reiga@dspnet.fr.eu.org>
+Description: fix broken globbing expansion
+Debian-Bug: #603545
+--- a/tc.str.c
++++ b/tc.str.c
+@@ -104,8 +104,9 @@ rt_mbtowc(Char *pwc, const char *s, size_t n)
+ 
+     memset (&mb, 0, sizeof mb);
+     ret = mbrtowc(&tmp, s, n, &mb);
+-    if (ret > 0) {
++    if (ret >= 0)
+ 	*pwc = tmp;
++    if (ret > 0) {
+ #ifdef UTF16_STRINGS
+ 	if (tmp >= 0xd800 && tmp <= 0xdbff) {
+ 	    /* UTF-16 surrogate pair.  Fetch second half and compute
diff --git a/meta-oe/recipes-extended/tcsh/tcsh_6.17.02.bb b/meta-oe/recipes-extended/tcsh/tcsh_6.17.02.bb
new file mode 100644
index 0000000..c4c78f4
--- /dev/null
+++ b/meta-oe/recipes-extended/tcsh/tcsh_6.17.02.bb
@@ -0,0 +1,53 @@
+DESCRIPTION = "TENEX C Shell, an enhanced version of Berkeley csh \
+ The TENEX C Shell is an enhanced version of the Berkeley Unix C shell. \
+ It includes all features of 4.4BSD C shell, plus a command-line editor, \
+ programmable word completion, spelling correction and more."
+
+HOMEPAGE = "http://www.tcsh.org/"
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://Copyright;md5=1cf29be62df2be1a3763118b25b4c780"
+SECTION = "base"
+
+SRC_URI = " \
+	${DEBIAN_MIRROR}/main/t/tcsh/tcsh_6.17.02.orig.tar.gz;name=tarball \
+	${DEBIAN_MIRROR}/main/t/tcsh/tcsh_6.17.02-4.diff.gz;name=diffs \
+	file://01_build.1.patch \
+	file://01_build.2.patch \
+	file://01_build.3.patch \
+	file://07_nls.patch \
+	file://15_no-strip.patch \
+	file://disable-test-notty.patch \
+	file://disable-test-nice.patch \
+	file://fix-make-catalogs.patch \
+	file://disable-lexical.at-31.patch \
+	file://12_unknown_lscolors.patch \
+	file://tcsh-6.17.02-multibyte.patch \
+	file://disable-broken-test.patch \
+	file://cross-compile.patch \
+"
+
+inherit autotools
+
+do_install_append () {
+	oe_runmake install.man DESTDIR=${D}
+
+	install -d ${D}${base_bindir}
+	ln -s /usr/bin/tcsh ${D}${base_bindir}/tcsh
+
+	install -d ${D}${sysconfdir}/csh/login.d
+	install -m 0644 ${S}/debian/csh.cshrc ${S}/debian/csh.login ${S}/debian/csh.logout ${S}/complete.tcsh ${D}${sysconfdir}
+	install -D -m 0644 ${S}/csh-mode.el ${D}${datadir}/emacs/site-lisp/csh-mode.el
+}
+
+FILES_${PN} += "${datadir}/emacs/site-lisp/csh-mode.el"
+
+
+pkg_postinst_${PN} () {
+#!/bin/sh -e
+echo /usr/bin/tcsh >> $D/etc/shells
+}
+
+SRC_URI[tarball.md5sum] = "ad6e89ddb654972b4c2a8bad06778625"
+SRC_URI[tarball.sha256sum] = "8c675729810eb49102b68e09be4f3f592dfa0be2c238f0d0a58e5c1147da7dd8"
+SRC_URI[diffs.md5sum] = "735286c36a83a043015b30871c7ab6b6"
+SRC_URI[diffs.sha256sum] = "61c0b0f7ebbc07544551f56b66c6e78def702c2197307e960898182b340ffe67"
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-oe][PATCH V2 15/25] dmidecode: Forward port from OE-Classic
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (12 preceding siblings ...)
  2013-01-06  9:12 ` [meta-oe][PATCH V2 14/25] tcsh: Add recipes for package Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:12 ` [meta-oe][PATCH V2 16/25] libuio: Add recipe for version 0.2.1 Khem Raj
                   ` (9 subsequent siblings)
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

at SHA 16f464bd8cff6b6a27d9bfe691f7adc875d01ac2

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../recipes-extended/dmidecode/dmidecode_2.10.bb   |   21 ++++++++++++++++++++
 1 file changed, 21 insertions(+)
 create mode 100644 meta-oe/recipes-extended/dmidecode/dmidecode_2.10.bb

diff --git a/meta-oe/recipes-extended/dmidecode/dmidecode_2.10.bb b/meta-oe/recipes-extended/dmidecode/dmidecode_2.10.bb
new file mode 100644
index 0000000..ae06de9
--- /dev/null
+++ b/meta-oe/recipes-extended/dmidecode/dmidecode_2.10.bb
@@ -0,0 +1,21 @@
+DESCRIPTION = "DMI (Desktop Management Interface) table related utilities"
+SECTION = "console/utils"
+HOMEPAGE = "http://www.nongnu.org/dmidecode/"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=393a5ca445f6965873eca0259a17f833"
+LICENSE = "GPLv2"
+PR = "r2"
+
+SRC_URI = "http://savannah.nongnu.org/download/dmidecode/${P}.tar.bz2"
+
+COMPATIBLE_HOST = "(i.86|x86_64).*-linux"
+
+do_compile() {
+	oe_runmake
+}
+
+do_install() {
+	oe_runmake DESTDIR="${D}" install
+}
+
+SRC_URI[md5sum] = "3c9c4d55a40b78600f3b43bfa64616f9"
+SRC_URI[sha256sum] = "4d74a3e93353320317a424816f9a045df06d9ed4b5b80881e16fdfcc74c9e2c0"
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-oe][PATCH V2 16/25] libuio: Add recipe for version 0.2.1
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (13 preceding siblings ...)
  2013-01-06  9:12 ` [meta-oe][PATCH V2 15/25] dmidecode: Forward port from OE-Classic Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:12 ` [meta-oe][PATCH V2 17/25] uml-utilities: Forward port recipe from OE classic Khem Raj
                   ` (8 subsequent siblings)
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-oe/recipes-extended/libuio/libuio_0.2.1.bb |   17 +++++++++++++++++
 1 file changed, 17 insertions(+)
 create mode 100644 meta-oe/recipes-extended/libuio/libuio_0.2.1.bb

diff --git a/meta-oe/recipes-extended/libuio/libuio_0.2.1.bb b/meta-oe/recipes-extended/libuio/libuio_0.2.1.bb
new file mode 100644
index 0000000..c16bbd3
--- /dev/null
+++ b/meta-oe/recipes-extended/libuio/libuio_0.2.1.bb
@@ -0,0 +1,17 @@
+DESCRIPTION = "Libuio - helper library for UIO subsystem."
+SECTION = "base"
+LICENSE = "GPL-2.0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=393a5ca445f6965873eca0259a17f833"
+
+SRC_URI = "git://libuio.git.sourceforge.net/gitroot/libuio/libuio"
+
+inherit autotools
+
+SRCREV = "e1e0e4fa28838b3115e215c9553905fe630ca145"
+
+S = "${WORKDIR}/git"
+
+PACKAGES += "${PN}-tools"
+
+FILES_${PN} = "${libdir}"
+FILES_${PN}-tools = "${bindir}"
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-oe][PATCH V2 17/25] uml-utilities: Forward port recipe from OE classic
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (14 preceding siblings ...)
  2013-01-06  9:12 ` [meta-oe][PATCH V2 16/25] libuio: Add recipe for version 0.2.1 Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:12 ` [meta-systemd][PATCH V2 18/25] systemd: Fix build when base_libdir is not /lib Khem Raj
                   ` (7 subsequent siblings)
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Imported at SHA e12cf65f2fd58135039d73b9290ebee763161416

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../uml-utilities-20040406/fix-ldflags.patch       |   16 ++++
 .../uml-utilities-20040406/unstrip.patch           |   84 ++++++++++++++++++++
 .../uml-utilities/uml-utilities_20040406.bb        |   26 ++++++
 3 files changed, 126 insertions(+)
 create mode 100644 meta-oe/recipes-extended/uml-utilities/uml-utilities-20040406/fix-ldflags.patch
 create mode 100644 meta-oe/recipes-extended/uml-utilities/uml-utilities-20040406/unstrip.patch
 create mode 100644 meta-oe/recipes-extended/uml-utilities/uml-utilities_20040406.bb

diff --git a/meta-oe/recipes-extended/uml-utilities/uml-utilities-20040406/fix-ldflags.patch b/meta-oe/recipes-extended/uml-utilities/uml-utilities-20040406/fix-ldflags.patch
new file mode 100644
index 0000000..05cc537
--- /dev/null
+++ b/meta-oe/recipes-extended/uml-utilities/uml-utilities-20040406/fix-ldflags.patch
@@ -0,0 +1,16 @@
+
+#
+# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher
+#
+
+--- tools/mconsole/Makefile~fix-ldflags	2003-02-08 05:10:08.000000000 +0100
++++ tools/mconsole/Makefile	2004-04-01 15:37:37.000000000 +0200
+@@ -7,7 +7,7 @@
+ all : $(BIN)
+ 
+ $(BIN) : $(OBJS)
+-	$(CC) $(CFLAGS) -o $(BIN) $(OBJS) -lreadline -lncurses
++	$(CC) $(CFLAGS) -o $(BIN) $(OBJS) $(LDFLAGS) -lreadline -lncurses
+ 
+ clean : 
+ 	rm -f $(BIN) $(OBJS) *~
diff --git a/meta-oe/recipes-extended/uml-utilities/uml-utilities-20040406/unstrip.patch b/meta-oe/recipes-extended/uml-utilities/uml-utilities-20040406/unstrip.patch
new file mode 100644
index 0000000..868001d
--- /dev/null
+++ b/meta-oe/recipes-extended/uml-utilities/uml-utilities-20040406/unstrip.patch
@@ -0,0 +1,84 @@
+Dont strip during install let the packaging handle it
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Index: tools/jailtest/Makefile
+===================================================================
+--- tools.orig/jailtest/Makefile	2003-02-07 20:10:27.000000000 -0800
++++ tools/jailtest/Makefile	2012-09-05 12:13:56.061615854 -0700
+@@ -14,4 +14,4 @@
+ 
+ install : $(BIN)
+ 	install -d $(DESTDIR)$(BIN_DIR)
+-	install -s $(BIN) $(DESTDIR)$(BIN_DIR)
++	install $(BIN) $(DESTDIR)$(BIN_DIR)
+Index: tools/mconsole/Makefile
+===================================================================
+--- tools.orig/mconsole/Makefile	2012-09-05 12:05:09.869607043 -0700
++++ tools/mconsole/Makefile	2012-09-05 12:14:07.725607469 -0700
+@@ -14,4 +14,4 @@
+ 
+ install : $(BIN)
+ 	install -d $(DESTDIR)$(BIN_DIR)
+-	install -s $(BIN) $(DESTDIR)$(BIN_DIR)
++	install $(BIN) $(DESTDIR)$(BIN_DIR)
+Index: tools/moo/Makefile
+===================================================================
+--- tools.orig/moo/Makefile	2003-06-26 09:27:00.000000000 -0700
++++ tools/moo/Makefile	2012-09-05 12:14:20.981604580 -0700
+@@ -22,4 +22,4 @@
+ 
+ install : $(BIN)
+ 	install -d $(DESTDIR)$(BIN_DIR)
+-	install -s $(BIN) $(DESTDIR)$(BIN_DIR)
++	install $(BIN) $(DESTDIR)$(BIN_DIR)
+Index: tools/port-helper/Makefile
+===================================================================
+--- tools.orig/port-helper/Makefile	2003-02-07 20:05:31.000000000 -0800
++++ tools/port-helper/Makefile	2012-09-05 12:14:39.429609678 -0700
+@@ -14,4 +14,4 @@
+ 
+ install : $(BIN)
+ 	install -d $(DESTDIR)$(LIB_DIR)
+-	install -s $(BIN) $(DESTDIR)$(LIB_DIR)
++	install $(BIN) $(DESTDIR)$(LIB_DIR)
+Index: tools/tunctl/Makefile
+===================================================================
+--- tools.orig/tunctl/Makefile	2003-02-07 20:05:04.000000000 -0800
++++ tools/tunctl/Makefile	2012-09-05 12:14:49.985606470 -0700
+@@ -14,4 +14,4 @@
+ 
+ install : $(BIN)
+ 	install -d $(DESTDIR)$(BIN_DIR)
+-	install -s $(BIN) $(DESTDIR)$(BIN_DIR)
++	install $(BIN) $(DESTDIR)$(BIN_DIR)
+Index: tools/uml_net/Makefile
+===================================================================
+--- tools.orig/uml_net/Makefile	2003-02-07 20:04:55.000000000 -0800
++++ tools/uml_net/Makefile	2012-09-05 12:15:00.961607290 -0700
+@@ -21,4 +21,4 @@
+ 
+ install : $(BIN)
+ 	install -d $(DESTDIR)$(BIN_DIR)
+-	install -s -m 04755 $(BIN) $(DESTDIR)$(BIN_DIR)
++	install -m 04755 $(BIN) $(DESTDIR)$(BIN_DIR)
+Index: tools/uml_router/Makefile
+===================================================================
+--- tools.orig/uml_router/Makefile	2003-02-07 20:04:39.000000000 -0800
++++ tools/uml_router/Makefile	2012-09-05 12:15:10.649607571 -0700
+@@ -20,4 +20,4 @@
+ 
+ install : $(BIN)
+ 	install -d $(DESTDIR)$(BIN_DIR)
+-	install -s $(BIN) $(DESTDIR)$(BIN_DIR)
++	install $(BIN) $(DESTDIR)$(BIN_DIR)
+Index: tools/watchdog/Makefile
+===================================================================
+--- tools.orig/watchdog/Makefile	2003-02-07 20:04:25.000000000 -0800
++++ tools/watchdog/Makefile	2012-09-05 12:15:35.561612203 -0700
+@@ -14,4 +14,4 @@
+ 
+ install : $(BIN)
+ 	install -d $(DESTDIR)$(BIN_DIR)
+-	install -s $(BIN) $(DESTDIR)$(BIN_DIR)
++	install $(BIN) $(DESTDIR)$(BIN_DIR)
diff --git a/meta-oe/recipes-extended/uml-utilities/uml-utilities_20040406.bb b/meta-oe/recipes-extended/uml-utilities/uml-utilities_20040406.bb
new file mode 100644
index 0000000..80b3c9a
--- /dev/null
+++ b/meta-oe/recipes-extended/uml-utilities/uml-utilities_20040406.bb
@@ -0,0 +1,26 @@
+SECTION = "console/utils"
+DESCRIPTION = "Utilities for User-Mode-Linux"
+LICENSE = "GPL-2.0"
+DEPENDS = "zlib ncurses readline"
+LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3"
+SRC_URI = "http://downloads.sourceforge.net/project/user-mode-linux/tools/1/uml_utilities_${PV}.tar.bz2  \
+           file://fix-ldflags.patch \
+           file://unstrip.patch \
+          "
+SRC_URI[md5sum] = "2c1ccd9efacbfb39e42d482b89b2550a"
+SRC_URI[sha256sum] = "4f179b1db021ef15ac7e9b2eed57c525db127a754c574f591c367460cded9f41"
+
+PR = "r1"
+
+S = "${WORKDIR}/tools"
+
+do_compile() {
+	oe_runmake
+}
+
+do_install() {
+	oe_runmake install DESTDIR=${D}
+}
+
+FILES_${PN} += "${libdir}"
+FILES_${PN}-dbg += "${libdir}/uml/.debug"
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-systemd][PATCH V2 18/25] systemd: Fix build when base_libdir is not /lib
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (15 preceding siblings ...)
  2013-01-06  9:12 ` [meta-oe][PATCH V2 17/25] uml-utilities: Forward port recipe from OE classic Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-09 10:18   ` Martin Jansa
  2013-01-06  9:12 ` [meta-systemd][PATCH V2 19/25] systemd.bbclass: Fixes for living along with multilib Khem Raj
                   ` (6 subsequent siblings)
  23 siblings, 1 reply; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

we were carrying a wrong patch to fix rootlibdir
to adapt systemd to OE's notion of base_libdir
but thats not right and the units dont get initialised
properly when we have base_libdir which is not /lib

This patch fixes the use of base_libdir where
it should have been catering to notions of systemd/udev
for putting unit files and init scripts in /lib
and not in base_libdir

It also ignores the lib32-* packages so that systemd
build works for multilib enabled systems.

Adapt to nativesdk renaming

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-systemd/classes/systemd.bbclass             |    7 +-
 meta-systemd/recipes-core/systemd/systemd_git.bb |   77 ++++++++++++----------
 2 files changed, 45 insertions(+), 39 deletions(-)

diff --git a/meta-systemd/classes/systemd.bbclass b/meta-systemd/classes/systemd.bbclass
index f26c6d1..9582492 100644
--- a/meta-systemd/classes/systemd.bbclass
+++ b/meta-systemd/classes/systemd.bbclass
@@ -70,7 +70,8 @@ def systemd_after_parse(d):
     bpn = d.getVar('BPN', 1)
     if bpn + "-native" != d.getVar('PN', 1) and \
             bpn + "-cross" != d.getVar('PN', 1) and \
-            bpn + "-nativesdk" != d.getVar('PN', 1):
+            not d.getVar('MLPREFIX', 1) and \
+            "nativesdk-" + bpn != d.getVar('PN', 1):
         systemd_check_vars()
         for pkg_systemd in d.getVar('SYSTEMD_PACKAGES', 1).split():
             systemd_create_package(pkg_systemd)
@@ -158,8 +159,8 @@ python populate_packages_prepend () {
     def systemd_check_services():
         base_libdir = d.getVar('base_libdir', 1)
         searchpaths = '/etc/systemd/system/' + ' '
-        searchpaths += d.getVar('base_libdir', 1) + '/systemd/system/' + ' '
-        searchpaths += d.getVar('libdir', 1) + '/systemd/system/' + ' '
+        searchpaths += '/lib/systemd/system/' + ' '
+        searchpaths += '/usr/lib/systemd/system/' + ' '
         systemd_packages = d.getVar('SYSTEMD_PACKAGES', 1)
         has_exactly_one_service = len(systemd_packages.split()) == 1
         if has_exactly_one_service:
diff --git a/meta-systemd/recipes-core/systemd/systemd_git.bb b/meta-systemd/recipes-core/systemd/systemd_git.bb
index 7fa7ac6..5722d35 100644
--- a/meta-systemd/recipes-core/systemd/systemd_git.bb
+++ b/meta-systemd/recipes-core/systemd/systemd_git.bb
@@ -90,6 +90,7 @@ do_configure_prepend() {
 
 do_install() {
 	autotools_do_install
+	install -d ${D}${base_sbindir}
 	# provided by a seperate recipe
 	rm ${D}${systemd_unitdir}/system/serial-getty* -f
 
@@ -98,7 +99,10 @@ do_install() {
 
 	# create dir for journal
 	install -d ${D}${localstatedir}/log/journal
-
+	# udevd is needed in initramfs which was provided by udev in OE-Core
+	# so we need to provide that otherwise it pulls in both systemd and
+	# udev
+	ln -s ${systemd_unitdir}/systemd-udevd ${D}${base_sbindir}/udevd
 	# create machine-id
 	# 20:12 < mezcalero> koen: you have three options: a) run systemd-machine-id-setup at install time, b) have / read-only and an empty file there (for stateless) and c) boot with / writable
 	touch ${D}${sysconfdir}/machine-id
@@ -159,24 +163,24 @@ FILES_${PN} = " ${base_bindir}/* \
                 ${sysconfdir}/init.d/README \
                 ${systemd_unitdir}/* \
                 ${systemd_unitdir}/system/* \
-                ${base_libdir}/udev/rules.d/99-systemd.rules \
+                /lib/udev/rules.d/99-systemd.rules \
                 ${base_libdir}/security/*.so \
                 /cgroup \
                 ${bindir}/systemd* \
                 ${bindir}/localectl \
                 ${bindir}/hostnamectl \
                 ${bindir}/timedatectl \
-                ${libdir}/tmpfiles.d/*.conf \
-                ${libdir}/systemd \
-                ${libdir}/binfmt.d \
-                ${libdir}/modules-load.d \
-                ${libdir}/sysctl.d \
+                ${exec_prefix}/lib/tmpfiles.d/*.conf \
+                ${exec_prefix}/lib/systemd \
+                ${exec_prefix}/lib/binfmt.d \
+                ${exec_prefix}/lib/modules-load.d \
+                ${exec_prefix}/lib/sysctl.d \
                 ${localstatedir} \
                 ${libexecdir} \
-                ${base_libdir}/udev/rules.d/70-uaccess.rules \
-                ${base_libdir}/udev/rules.d/71-seat.rules \
-                ${base_libdir}/udev/rules.d/73-seat-late.rules \
-                ${base_libdir}/udev/rules.d/99-systemd.rules \
+                /lib/udev/rules.d/70-uaccess.rules \
+                /lib/udev/rules.d/71-seat.rules \
+                /lib/udev/rules.d/73-seat-late.rules \
+                /lib/udev/rules.d/99-systemd.rules \
                "
 FILES_${PN}-dbg += "${systemd_unitdir}/.debug ${systemd_unitdir}/*/.debug ${base_libdir}/security/.debug/ ${PYTHON_SITEPACKAGES_DIR}/systemd/.debug/"
 FILES_${PN}-dev += "${base_libdir}/security/*.la ${datadir}/dbus-1/interfaces/ ${sysconfdir}/rpm/macros.systemd ${PYTHON_SITEPACKAGES_DIR}/systemd/*.la"
@@ -200,42 +204,43 @@ RRECOMMENDS_${PN} += "systemd-serialgetty \
 
 PACKAGES =+ "udev-dbg udev udev-consolekit udev-utils udev-systemd"
 
-FILES_udev-dbg += "${base_libdir}/udev/.debug"
+FILES_udev-dbg += "/lib/udev/.debug"
 
 RDEPENDS_udev += "udev-utils"
 RPROVIDES_udev = "hotplug"
 
-FILES_udev += "${base_libdir}/udev/udevd \
-               ${base_libdir}/systemd/systemd-udevd \
-               ${base_libdir}/udev/accelerometer \
-               ${base_libdir}/udev/ata_id \
-               ${base_libdir}/udev/cdrom_id \
-               ${base_libdir}/udev/collect \
-               ${base_libdir}/udev/findkeyboards \
-               ${base_libdir}/udev/keyboard-force-release.sh \
-               ${base_libdir}/udev/keymap \
-               ${base_libdir}/udev/mtd_probe \
-               ${base_libdir}/udev/scsi_id \
-               ${base_libdir}/udev/v4l_id \
-               ${base_libdir}/udev/keymaps \
-               ${base_libdir}/udev/rules.d/4*.rules \
-               ${base_libdir}/udev/rules.d/5*.rules \
-               ${base_libdir}/udev/rules.d/6*.rules \
-               ${base_libdir}/udev/rules.d/70-power-switch.rules \
-               ${base_libdir}/udev/rules.d/75*.rules \
-               ${base_libdir}/udev/rules.d/78*.rules \
-               ${base_libdir}/udev/rules.d/8*.rules \
-               ${base_libdir}/udev/rules.d/95*.rules \
-               ${base_libdir}/udev/hwdb.d \
+FILES_udev += "${base_sbindir}/udevd \
+               /lib/udev/udevd \
+               /lib/systemd/systemd-udevd \
+               /lib/udev/accelerometer \
+               /lib/udev/ata_id \
+               /lib/udev/cdrom_id \
+               /lib/udev/collect \
+               /lib/udev/findkeyboards \
+               /lib/udev/keyboard-force-release.sh \
+               /lib/udev/keymap \
+               /lib/udev/mtd_probe \
+               /lib/udev/scsi_id \
+               /lib/udev/v4l_id \
+               /lib/udev/keymaps \
+               /lib/udev/rules.d/4*.rules \
+               /lib/udev/rules.d/5*.rules \
+               /lib/udev/rules.d/6*.rules \
+               /lib/udev/rules.d/70-power-switch.rules \
+               /lib/udev/rules.d/75*.rules \
+               /lib/udev/rules.d/78*.rules \
+               /lib/udev/rules.d/8*.rules \
+               /lib/udev/rules.d/95*.rules \
+               /lib/udev/hwdb.d \
                ${sysconfdir}/udev \
               "
 
-FILES_udev-consolekit += "${libdir}/ConsoleKit"
+FILES_udev-consolekit += "/lib/ConsoleKit"
 RDEPENDS_udev-consolekit += "${@base_contains('DISTRO_FEATURES', 'x11', 'consolekit', '', d)}"
 
 FILES_udev-utils = "${bindir}/udevadm"
 
-FILES_udev-systemd = "${base_libdir}/systemd/system/*udev* ${base_libdir}/systemd/system/*.wants/*udev*"
+FILES_udev-systemd = "${systemd_unitdir}/system/*udev* ${systemd_unitdir}/system/*.wants/*udev*"
 RDEPENDS_udev-systemd = "udev"
 
 # TODO:
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-systemd][PATCH V2 19/25] systemd.bbclass: Fixes for living along with multilib
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (16 preceding siblings ...)
  2013-01-06  9:12 ` [meta-systemd][PATCH V2 18/25] systemd: Fix build when base_libdir is not /lib Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:12 ` [meta-systemd][PATCH V2 20/25] at: Add systemd unit file Khem Raj
                   ` (5 subsequent siblings)
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

This essentially fixes two problems
1. We were ignoring systemd for multilibs now we dont
2. We were replacing '-systemd' string in PN which is
a problem whenre -systemd appears more than once
e.g. lib32-systemd-units-system it was removing both
essentially we should only chop the end of PN if it
ends with '-systemd'

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-systemd/classes/systemd.bbclass |    7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/meta-systemd/classes/systemd.bbclass b/meta-systemd/classes/systemd.bbclass
index 9582492..16ac1fb 100644
--- a/meta-systemd/classes/systemd.bbclass
+++ b/meta-systemd/classes/systemd.bbclass
@@ -53,7 +53,9 @@ def systemd_after_parse(d):
                         "\n\n%s: %s in SYSTEMD_PACKAGES does not match <existing-package>-systemd or ${PN}" % \
                         (bb_filename, pkg_systemd)
             else:
-                pkg_systemd_base = pkg_systemd.replace('-systemd', '')
+                pkg_systemd_base = pkg_systemd
+                if pkg_systemd_base.endswith('-systemd'):
+                    pkg_systemd_base = pkg_systemd[:-8]
                 if pkg_systemd_base not in packages:
                     raise bb.build.FuncFailed, \
                         "\n\n%s: %s in SYSTEMD_PACKAGES does not match <existing-package>-systemd or ${PN}" % \
@@ -68,9 +70,10 @@ def systemd_after_parse(d):
 
 
     bpn = d.getVar('BPN', 1)
+    ml = d.getVar('MLPREFIX', 1) or ""
     if bpn + "-native" != d.getVar('PN', 1) and \
             bpn + "-cross" != d.getVar('PN', 1) and \
-            not d.getVar('MLPREFIX', 1) and \
+            ml + bpn == d.getVar('PN', 1) and \
             "nativesdk-" + bpn != d.getVar('PN', 1):
         systemd_check_vars()
         for pkg_systemd in d.getVar('SYSTEMD_PACKAGES', 1).split():
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-systemd][PATCH V2 20/25] at: Add systemd unit file
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (17 preceding siblings ...)
  2013-01-06  9:12 ` [meta-systemd][PATCH V2 19/25] systemd.bbclass: Fixes for living along with multilib Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:12 ` [meta-systemd][PATCH V2 21/25] dhcp: Add systemd unit file for dhclient Khem Raj
                   ` (4 subsequent siblings)
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../meta-oe/recipes-extended/at/at/atd.service     |    9 +++++++++
 .../meta-oe/recipes-extended/at/at_3.1.13.bbappend |   12 ++++++++++++
 2 files changed, 21 insertions(+)
 create mode 100644 meta-systemd/meta-oe/recipes-extended/at/at/atd.service
 create mode 100644 meta-systemd/meta-oe/recipes-extended/at/at_3.1.13.bbappend

diff --git a/meta-systemd/meta-oe/recipes-extended/at/at/atd.service b/meta-systemd/meta-oe/recipes-extended/at/at/atd.service
new file mode 100644
index 0000000..64a9015
--- /dev/null
+++ b/meta-systemd/meta-oe/recipes-extended/at/at/atd.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Job spooling tools
+After=syslog.target
+
+[Service]
+ExecStart=/usr/sbin/atd -f
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-systemd/meta-oe/recipes-extended/at/at_3.1.13.bbappend b/meta-systemd/meta-oe/recipes-extended/at/at_3.1.13.bbappend
new file mode 100644
index 0000000..d80cfff
--- /dev/null
+++ b/meta-systemd/meta-oe/recipes-extended/at/at_3.1.13.bbappend
@@ -0,0 +1,12 @@
+inherit systemd
+
+PRINC := "${@int(PRINC) + 1}"
+
+# look for files in the layer first
+FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+
+SRC_URI += "file://atd.service"
+
+SYSTEMD_PACKAGES = "${PN}-systemd"
+SYSTEMD_SERVICE = "atd.service"
+
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-systemd][PATCH V2 21/25] dhcp: Add systemd unit file for dhclient
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (18 preceding siblings ...)
  2013-01-06  9:12 ` [meta-systemd][PATCH V2 20/25] at: Add systemd unit file Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:12 ` [meta-systemd][PATCH V2 22/25] nis: Add support for systemd launch of NIS services Khem Raj
                   ` (3 subsequent siblings)
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../dhcp/dhcp/dhclient.service                     |   13 +++++++++++++
 .../dhcp/dhcp_4.2.4-P2.bbappend                    |    7 +++++--
 2 files changed, 18 insertions(+), 2 deletions(-)
 create mode 100644 meta-systemd/oe-core/recipes-connectivity/dhcp/dhcp/dhclient.service

diff --git a/meta-systemd/oe-core/recipes-connectivity/dhcp/dhcp/dhclient.service b/meta-systemd/oe-core/recipes-connectivity/dhcp/dhcp/dhclient.service
new file mode 100644
index 0000000..76d64d5
--- /dev/null
+++ b/meta-systemd/oe-core/recipes-connectivity/dhcp/dhcp/dhclient.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Dynamic Host Configuration Protocol (DHCP)
+After=syslog.target network.target
+
+[Service]
+Type=forking
+PIDFile=/var/run/dhclient.pid
+EnvironmentFile=-/etc/default/dhcp-client
+ExecStart=/sbin/dhclient -cf /etc/dhcp/dhclient.conf -q $INTERFACES -lf /var/lib/dhcp/dhclient.leases
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/meta-systemd/oe-core/recipes-connectivity/dhcp/dhcp_4.2.4-P2.bbappend b/meta-systemd/oe-core/recipes-connectivity/dhcp/dhcp_4.2.4-P2.bbappend
index a18fda8..fde2426 100644
--- a/meta-systemd/oe-core/recipes-connectivity/dhcp/dhcp_4.2.4-P2.bbappend
+++ b/meta-systemd/oe-core/recipes-connectivity/dhcp/dhcp_4.2.4-P2.bbappend
@@ -5,9 +5,12 @@ inherit systemd
 
 PRINC := "${@int(PRINC) + 1}"
 
-SYSTEMD_PACKAGES = "dhcp-server-systemd dhcp-relay-systemd"
+SYSTEMD_PACKAGES = "dhcp-server-systemd dhcp-relay-systemd dhcp-client-systemd"
 SYSTEMD_SERVICE_dhcp-server-systemd = "dhcpd.service"
 SYSTEMD_SERVICE_dhcp-relay-systemd = "dhcrelay.service"
+SYSTEMD_SERVICE_dhcp-client-systemd = "dhclient.service"
 
 SRC_URI += "file://dhcpd.service \
-            file://dhcrelay.service"
+            file://dhclient.service \
+            file://dhcrelay.service \
+           "
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-systemd][PATCH V2 22/25] nis: Add support for systemd launch of NIS services
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (19 preceding siblings ...)
  2013-01-06  9:12 ` [meta-systemd][PATCH V2 21/25] dhcp: Add systemd unit file for dhclient Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:12 ` [meta-systemd][PATCH V2 23/25] rpcbind: Add systemd service unit file Khem Raj
                   ` (2 subsequent siblings)
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../recipes-support/nis/files/domainname.service   |   12 ++++++++++++
 .../recipes-support/nis/files/ypbind.service       |   14 ++++++++++++++
 .../recipes-support/nis/yp-tools_2.12.bbappend     |   12 ++++++++++++
 .../recipes-support/nis/ypbind-mt_1.36.bbappend    |   12 ++++++++++++
 4 files changed, 50 insertions(+)
 create mode 100644 meta-systemd/meta-networking/recipes-support/nis/files/domainname.service
 create mode 100644 meta-systemd/meta-networking/recipes-support/nis/files/ypbind.service
 create mode 100644 meta-systemd/meta-networking/recipes-support/nis/yp-tools_2.12.bbappend
 create mode 100644 meta-systemd/meta-networking/recipes-support/nis/ypbind-mt_1.36.bbappend

diff --git a/meta-systemd/meta-networking/recipes-support/nis/files/domainname.service b/meta-systemd/meta-networking/recipes-support/nis/files/domainname.service
new file mode 100644
index 0000000..21aa92c
--- /dev/null
+++ b/meta-systemd/meta-networking/recipes-support/nis/files/domainname.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=NIS Domainname
+
+[Service]
+Type=oneshot
+EnvironmentFile=/etc/nisdomainname
+ExecStart=/usr/bin/domainname $NISDOMAINNAME
+RemainAfterExit=true
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/meta-systemd/meta-networking/recipes-support/nis/files/ypbind.service b/meta-systemd/meta-networking/recipes-support/nis/files/ypbind.service
new file mode 100644
index 0000000..1f8df42
--- /dev/null
+++ b/meta-systemd/meta-networking/recipes-support/nis/files/ypbind.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=YP Bind
+Requires=domainname.service
+After=domainname.service network.target
+Before=systemd-user-sessions.service
+
+[Service]
+Type=forking
+PIDFile=/var/run/ypbind.pid
+ExecStart=/usr/sbin/ypbind
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/meta-systemd/meta-networking/recipes-support/nis/yp-tools_2.12.bbappend b/meta-systemd/meta-networking/recipes-support/nis/yp-tools_2.12.bbappend
new file mode 100644
index 0000000..041ca83
--- /dev/null
+++ b/meta-systemd/meta-networking/recipes-support/nis/yp-tools_2.12.bbappend
@@ -0,0 +1,12 @@
+inherit systemd
+
+PRINC := "${@int(PRINC) + 1}"
+
+# look for files in the layer first
+FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
+
+SRC_URI += "file://domainname.service"
+
+SYSTEMD_PACKAGES = "${PN}-systemd"
+SYSTEMD_SERVICE = "domainname.service"
+
diff --git a/meta-systemd/meta-networking/recipes-support/nis/ypbind-mt_1.36.bbappend b/meta-systemd/meta-networking/recipes-support/nis/ypbind-mt_1.36.bbappend
new file mode 100644
index 0000000..14dbaac
--- /dev/null
+++ b/meta-systemd/meta-networking/recipes-support/nis/ypbind-mt_1.36.bbappend
@@ -0,0 +1,12 @@
+inherit systemd
+
+PRINC := "${@int(PRINC) + 1}"
+
+# look for files in the layer first
+FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
+
+SRC_URI += "file://ypbind.service"
+
+SYSTEMD_PACKAGES = "${PN}-systemd"
+SYSTEMD_SERVICE = "ypbind.service"
+
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-systemd][PATCH V2 23/25] rpcbind: Add systemd service unit file
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (20 preceding siblings ...)
  2013-01-06  9:12 ` [meta-systemd][PATCH V2 22/25] nis: Add support for systemd launch of NIS services Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:12 ` [meta-systemd][PATCH V2 24/25] dhclient.service: Rearrange the cmdline for dhclient Khem Raj
  2013-01-06  9:12 ` [meta-systemd][PATCH V2 25/25] meta-systemd/atftpd: Adjust bbappend to match to recipe upgrade Khem Raj
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../rpcbind/rpcbind/rpcbind.service                |   13 +++++++++++++
 .../rpcbind/rpcbind_0.2.0.bbappend                 |   12 ++++++++++++
 2 files changed, 25 insertions(+)
 create mode 100644 meta-systemd/meta-oe/recipes-extended/rpcbind/rpcbind/rpcbind.service
 create mode 100644 meta-systemd/meta-oe/recipes-extended/rpcbind/rpcbind_0.2.0.bbappend

diff --git a/meta-systemd/meta-oe/recipes-extended/rpcbind/rpcbind/rpcbind.service b/meta-systemd/meta-oe/recipes-extended/rpcbind/rpcbind/rpcbind.service
new file mode 100644
index 0000000..a028ace
--- /dev/null
+++ b/meta-systemd/meta-oe/recipes-extended/rpcbind/rpcbind/rpcbind.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=RPC Bind
+After=network.target
+Wants=rpcbind.target
+Before=rpcbind.target
+
+[Service]
+Type=forking
+ExecStart=/usr/sbin/rpcbind
+Restart=always
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-systemd/meta-oe/recipes-extended/rpcbind/rpcbind_0.2.0.bbappend b/meta-systemd/meta-oe/recipes-extended/rpcbind/rpcbind_0.2.0.bbappend
new file mode 100644
index 0000000..0fa7f97
--- /dev/null
+++ b/meta-systemd/meta-oe/recipes-extended/rpcbind/rpcbind_0.2.0.bbappend
@@ -0,0 +1,12 @@
+inherit systemd
+
+PRINC := "${@int(PRINC) + 1}"
+
+# look for files in the layer first
+FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+
+SRC_URI += "file://rpcbind.service"
+
+SYSTEMD_PACKAGES = "${PN}-systemd"
+SYSTEMD_SERVICE = "rpcbind.service"
+
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-systemd][PATCH V2 24/25] dhclient.service: Rearrange the cmdline for dhclient
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (21 preceding siblings ...)
  2013-01-06  9:12 ` [meta-systemd][PATCH V2 23/25] rpcbind: Add systemd service unit file Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  2013-01-06  9:12 ` [meta-systemd][PATCH V2 25/25] meta-systemd/atftpd: Adjust bbappend to match to recipe upgrade Khem Raj
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../dhcp/dhcp/dhclient.service                     |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta-systemd/oe-core/recipes-connectivity/dhcp/dhcp/dhclient.service b/meta-systemd/oe-core/recipes-connectivity/dhcp/dhcp/dhclient.service
index 76d64d5..c9620cf 100644
--- a/meta-systemd/oe-core/recipes-connectivity/dhcp/dhcp/dhclient.service
+++ b/meta-systemd/oe-core/recipes-connectivity/dhcp/dhcp/dhclient.service
@@ -6,7 +6,7 @@ After=syslog.target network.target
 Type=forking
 PIDFile=/var/run/dhclient.pid
 EnvironmentFile=-/etc/default/dhcp-client
-ExecStart=/sbin/dhclient -cf /etc/dhcp/dhclient.conf -q $INTERFACES -lf /var/lib/dhcp/dhclient.leases
+ExecStart=/sbin/dhclient -cf /etc/dhcp/dhclient.conf -q -lf /var/lib/dhcp/dhclient.leases $INTERFACES
 
 [Install]
 WantedBy=multi-user.target
-- 
1.7.9.5




^ permalink raw reply related	[flat|nested] 40+ messages in thread

* [meta-systemd][PATCH V2 25/25] meta-systemd/atftpd: Adjust bbappend to match to recipe upgrade
  2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
                   ` (22 preceding siblings ...)
  2013-01-06  9:12 ` [meta-systemd][PATCH V2 24/25] dhclient.service: Rearrange the cmdline for dhclient Khem Raj
@ 2013-01-06  9:12 ` Khem Raj
  23 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-06  9:12 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../{atftp_0.7.bbappend => atftp_git.bbappend}     |    0
 1 file changed, 0 insertions(+), 0 deletions(-)
 rename meta-systemd/meta-oe/recipes-extended/atftp/{atftp_0.7.bbappend => atftp_git.bbappend} (100%)

diff --git a/meta-systemd/meta-oe/recipes-extended/atftp/atftp_0.7.bbappend b/meta-systemd/meta-oe/recipes-extended/atftp/atftp_git.bbappend
similarity index 100%
rename from meta-systemd/meta-oe/recipes-extended/atftp/atftp_0.7.bbappend
rename to meta-systemd/meta-oe/recipes-extended/atftp/atftp_git.bbappend
-- 
1.7.9.5




^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [meta-oe][PATCH V2 09/25] atftp: Upgrade to latest from git
  2013-01-06  9:12 ` [meta-oe][PATCH V2 09/25] atftp: Upgrade to latest from git Khem Raj
@ 2013-01-06  9:36   ` Martin Jansa
  2013-01-07  1:23     ` Khem Raj
  0 siblings, 1 reply; 40+ messages in thread
From: Martin Jansa @ 2013-01-06  9:36 UTC (permalink / raw)
  To: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 16346 bytes --]

On Sun, Jan 06, 2013 at 01:12:32AM -0800, Khem Raj wrote:
> Add patches to let atftp serve huge ramdisks >500M in size

I don't see this patch
http://patchwork.openembedded.org/patch/41955/
in V2, can you update status on patchwork to indicate which patches are
superseeded by V2 and which are still valid?

Thanks

> 
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  .../atftp/{atftp_0.7.bb => atftp_git.bb}           |   18 +--
>  ...tpd-0.7_circumvent_tftp_size_restrictions.patch |  158 ++++++++++++++++++++
>  .../atftpd-0.7_unprotected_assignments_crash.patch |  145 ++++++++++++++++++
>  3 files changed, 311 insertions(+), 10 deletions(-)
>  rename meta-oe/recipes-extended/atftp/{atftp_0.7.bb => atftp_git.bb} (59%)
>  create mode 100644 meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch
>  create mode 100644 meta-oe/recipes-extended/atftp/files/atftpd-0.7_unprotected_assignments_crash.patch
> 
> diff --git a/meta-oe/recipes-extended/atftp/atftp_0.7.bb b/meta-oe/recipes-extended/atftp/atftp_git.bb
> similarity index 59%
> rename from meta-oe/recipes-extended/atftp/atftp_0.7.bb
> rename to meta-oe/recipes-extended/atftp/atftp_git.bb
> index ff1e11d..774dd68 100644
> --- a/meta-oe/recipes-extended/atftp/atftp_0.7.bb
> +++ b/meta-oe/recipes-extended/atftp/atftp_git.bb
> @@ -3,13 +3,16 @@ SECTION = "network"
>  HOMEPAGE = "http://packages.debian.org/atftp"
>  LICENSE = "GPLv2"
>  LIC_FILES_CHKSUM = "file://LICENSE;md5=94d55d512a9ba36caa9b7df079bae19f"
> -PR = "r4"
> +PV = "0.7.1+git${SRCPV}"
>  
> -SRC_URI = "${DEBIAN_MIRROR}/main/a/atftp/atftp_${PV}.dfsg.orig.tar.gz;name=archive \
> -           ${DEBIAN_MIRROR}/main/a/atftp/atftp_${PV}.dfsg-11.diff.gz;name=patch \
> -           file://atftpd.init"
> +SRCREV = "be3291a18c069ae23a124ffdc56d64a5ff0bbec7"
>  
> -S = "${WORKDIR}/atftp-${PV}.dfsg"
> +SRC_URI = "git://atftp.git.sourceforge.net/gitroot/atftp/atftp;protocol=git \
> +           file://atftpd-0.7_circumvent_tftp_size_restrictions.patch \
> +           file://atftpd-0.7_unprotected_assignments_crash.patch \
> +           file://atftpd.init \
> +          "
> +S = "${WORKDIR}/git"
>  
>  inherit autotools update-rc.d useradd
>  
> @@ -35,8 +38,3 @@ PACKAGES =+ "atftpd"
>  FILES_${PN} = "${bindir}/*"
>  
>  FILES_${PN}d = "${sbindir}/* ${sysconfdir}/init.d/* /srv/tftp"
> -
> -SRC_URI[archive.md5sum] = "aa269044a6f992eca78fee2f6119643c"
> -SRC_URI[archive.sha256sum] = "18815f5b67290fac087c6b9da28dfa5e0feb722096f5c5de52e59b46026da559"
> -SRC_URI[patch.md5sum] = "1636f199bf32c754a7bf34a5c647d138"
> -SRC_URI[patch.sha256sum] = "0df33f6c09c2b2de58a84d7bb757844fc9538cd4d6c8d9c463da5270ebc2e41d"
> diff --git a/meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch b/meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch
> new file mode 100644
> index 0000000..9aeb351
> --- /dev/null
> +++ b/meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch
> @@ -0,0 +1,158 @@
> +Fate #303031: Circumvent TFTP size restrictions in atftpd
> +The size of a single image file that can be transferred with TFTP is limited to
> +2^(2*8) *BLOCKSIZE (as per RFC 1350 there are only two bytes for the block
> +counter). This is problematic for one of our customers who needs to transfer
> +100+ MB Windows images using a TFTP client (NT bootloader) which has a
> +hardwared BLOCKSIZE setting of 1432).
> +
> +block rollover
> +http://www.compuphase.com/tftp.htm
> +
> +Index: git/tftp_def.h
> +===================================================================
> +--- git.orig/tftp_def.h	2012-11-19 16:28:50.221027144 -0800
> ++++ git/tftp_def.h	2012-11-20 17:40:54.391206979 -0800
> +@@ -32,6 +32,7 @@
> + #define TIMEOUT       5         /* Client timeout */
> + #define S_TIMEOUT     5         /* Server timout. */
> + #define NB_OF_RETRY   5
> ++#define MAXBLOCKS   1000000      /* maximum number of blocks in a download */
> + 
> + /* definition to use tftp_options structure */
> + #define OPT_FILENAME  0
> +Index: git/tftp_file.c
> +===================================================================
> +--- git.orig/tftp_file.c	2012-11-19 16:28:50.221027144 -0800
> ++++ git/tftp_file.c	2012-11-19 16:28:51.201027167 -0800
> +@@ -622,8 +622,8 @@
> +      int state = S_SEND_REQ;    /* current state in the state machine */
> +      int timeout_state = state; /* what state should we go on when timeout */
> +      int result;
> +-     int block_number = 0;
> +-     int last_block = -1;
> ++     long block_number = 0;
> ++     long last_block = -1;
> +      int data_size;             /* size of data received */
> +      int sockfd = data->sockfd; /* just to simplify calls */
> +      struct sockaddr_storage sa; /* a copy of data.sa_peer */
> +@@ -637,8 +637,8 @@
> +      int convert = 0;           /* if true, do netascii convertion */
> +      char string[MAXLEN];
> + 
> +-     int prev_block_number = 0; /* needed to support netascii convertion */
> +-     int prev_file_pos = 0;
> ++     long prev_block_number = 0; /* needed to support netascii convertion */
> ++     long prev_file_pos = 0;
> +      int temp = 0;
> + 
> +      data->file_size = 0;
> +@@ -745,7 +745,7 @@
> +                               data_size, data->data_buffer);
> +                data->file_size += data_size;
> +                if (data->trace)
> +-                    fprintf(stderr, "sent DATA <block: %d, size: %d>\n",
> ++                    fprintf(stderr, "sent DATA <block: %ld, size: %d>\n",
> +                             block_number + 1, data_size - 4);
> +                state = S_WAIT_PACKET;
> +                break;
> +@@ -785,7 +785,7 @@
> +                     }
> +                     block_number = ntohs(tftphdr->th_block);
> +                     if (data->trace)
> +-                         fprintf(stderr, "received ACK <block: %d>\n",
> ++                         fprintf(stderr, "received ACK <block: %ld>\n",
> +                                  block_number);
> +                     if ((last_block != -1) && (block_number > last_block))
> +                     {
> +Index: git/tftp_io.c
> +===================================================================
> +--- git.orig/tftp_io.c	2012-11-19 16:28:50.221027144 -0800
> ++++ git/tftp_io.c	2012-11-19 16:28:51.201027167 -0800
> +@@ -350,8 +350,8 @@
> + /*
> +  * Read from file and do netascii conversion if needed
> +  */
> +-int tftp_file_read(FILE *fp, char *data_buffer, int data_buffer_size, int block_number,
> +-                   int convert, int *prev_block_number, int *prev_file_pos, int *temp)
> ++int tftp_file_read(FILE *fp, char *data_buffer, int data_buffer_size, long block_number,
> ++                   int convert, long *prev_block_number, long *prev_file_pos, int *temp)
> + {
> +      int i;
> +      int c;
> +Index: git/tftp_io.h
> +===================================================================
> +--- git.orig/tftp_io.h	2012-11-19 16:28:50.221027144 -0800
> ++++ git/tftp_io.h	2012-11-19 16:28:51.201027167 -0800
> +@@ -52,8 +52,8 @@
> + int tftp_get_packet(int sock1, int sock2, int *sock, struct sockaddr_storage *sa,
> +                     struct sockaddr_storage *from, struct sockaddr_storage *to,
> +                     int timeout, int *size, char *data);
> +-int tftp_file_read(FILE *fp, char *buffer, int buffer_size, int block_number, int convert,
> +-                   int *prev_block_number, int *prev_file_pos, int *temp);
> ++int tftp_file_read(FILE *fp, char *buffer, int buffer_size, long block_number, int convert,
> ++                   long *prev_block_number, long *prev_file_pos, int *temp);
> + int tftp_file_write(FILE *fp, char *data_buffer, int data_buffer_size, int block_number,
> +                     int data_size, int convert, int *prev_block_number, int *temp);
> + #endif
> +Index: git/tftpd_file.c
> +===================================================================
> +--- git.orig/tftpd_file.c	2012-11-19 16:28:50.225027144 -0800
> ++++ git/tftpd_file.c	2012-11-19 16:28:51.201027167 -0800
> +@@ -407,8 +407,9 @@
> +      int state = S_BEGIN;
> +      int timeout_state = state;
> +      int result;
> +-     int block_number = 0;
> +-     int last_block = -1;
> ++     long block_number = 0;
> ++     long last_block = -1;
> ++     int block_loops = 0;
> +      int data_size;
> +      struct sockaddr_storage *sa = &data->client_info->client;
> +      struct sockaddr_storage from;
> +@@ -431,8 +432,8 @@
> +      struct client_info *client_old = NULL;
> +      struct tftp_opt options[OPT_NUMBER];
> + 
> +-     int prev_block_number = 0; /* needed to support netascii convertion */
> +-     int prev_file_pos = 0;
> ++     long prev_block_number = 0; /* needed to support netascii convertion */
> ++     long prev_file_pos = 0;
> +      int temp = 0;
> + 
> +      /* look for mode option */
> +@@ -565,11 +566,12 @@
> +           logger(LOG_INFO, "blksize option -> %d", result);
> +      }
> + 
> +-     /* Verify that the file can be sent in 2^16 block of BLKSIZE octets */
> +-     if ((file_stat.st_size / (data->data_buffer_size - 4)) > 65535)
> ++     /* Verify that the file can be sent in MAXBLOCKS blocks of BLKSIZE octets */
> ++     if ((file_stat.st_size / (data->data_buffer_size - 4)) > MAXBLOCKS)
> +      {
> +           tftp_send_error(sockfd, sa, EUNDEF, data->data_buffer, data->data_buffer_size);
> +-          logger(LOG_NOTICE, "Requested file to big, increase BLKSIZE");
> ++          logger(LOG_NOTICE, "Requested file too big, increase BLKSIZE");
> ++          logger(LOG_NOTICE, "Only %d blocks of %d bytes can be served.", MAXBLOCKS, data->data_buffer_size);
> +           if (data->trace)
> +                logger(LOG_DEBUG, "sent ERROR <code: %d, msg: %s>", EUNDEF,
> +                       tftp_errmsg[EUNDEF]);
> +@@ -880,10 +882,15 @@
> +                     }
> +                     /* The ACK is from the current client */
> +                     number_of_timeout = 0;
> +-                    block_number = ntohs(tftphdr->th_block);
> ++                    block_number = (block_loops * 65536) + ntohs(tftphdr->th_block);
> +                     if (data->trace)
> +-                         logger(LOG_DEBUG, "received ACK <block: %d>",
> +-                                block_number);
> ++                    {
> ++                         logger(LOG_DEBUG, "received ACK <block: %d>", block_number);
> ++                    }
> ++                    if (ntohs(tftphdr->th_block) == 65535)
> ++                    {
> ++                         block_loops++;
> ++                    };
> +                     if ((last_block != -1) && (block_number > last_block))
> +                     {
> +                          state = S_END;
> diff --git a/meta-oe/recipes-extended/atftp/files/atftpd-0.7_unprotected_assignments_crash.patch b/meta-oe/recipes-extended/atftp/files/atftpd-0.7_unprotected_assignments_crash.patch
> new file mode 100644
> index 0000000..6faf5f9
> --- /dev/null
> +++ b/meta-oe/recipes-extended/atftp/files/atftpd-0.7_unprotected_assignments_crash.patch
> @@ -0,0 +1,145 @@
> +Index: git/tftpd_list.c
> +===================================================================
> +--- git.orig/tftpd_list.c	2012-10-24 21:48:47.000000000 -0700
> ++++ git/tftpd_list.c	2012-10-24 21:52:04.266205076 -0700
> +@@ -49,11 +49,11 @@
> +  */
> + int tftpd_list_add(struct thread_data *new)
> + {
> +-     struct thread_data *current = thread_data;
> ++     struct thread_data *current;
> +      int ret;
> + 
> +      pthread_mutex_lock(&thread_list_mutex);
> +-
> ++     current = thread_data;
> +      number_of_thread++;
> +      
> +      ret = number_of_thread;
> +@@ -81,11 +81,13 @@
> +  */
> + int tftpd_list_remove(struct thread_data *old)
> + {
> +-     struct thread_data *current = thread_data;
> ++     struct thread_data *current;
> +      int ret;
> + 
> +      pthread_mutex_lock(&thread_list_mutex);
> + 
> ++     current = thread_data;
> ++
> +      number_of_thread--;
> +      ret = number_of_thread;
> +     
> +@@ -137,23 +139,26 @@
> +                                              struct thread_data *data,
> +                                              struct client_info *client)
> + {
> +-     struct thread_data *current = thread_data; /* head of the list */
> +-     struct tftp_opt *tftp_options = data->tftp_options;
> ++     struct thread_data *current; /* head of the list */
> ++     struct tftp_opt *tftp_options;
> +      struct client_info *tmp;
> +      char options[MAXLEN];
> +      char string[MAXLEN];
> +      char *index;
> +      int len;
> + 
> ++     /* lock the whole list before walking it */
> ++     pthread_mutex_lock(&thread_list_mutex);
> ++
> +      *thread = NULL;
> + 
> ++     current = thread_data;
> ++     tftp_options = data->tftp_options;
> ++
> +      opt_request_to_string(tftp_options, options, MAXLEN);
> +      index = strstr(options, "multicast");
> +      len = (int)index - (int)options;
> + 
> +-     /* lock the whole list before walking it */
> +-     pthread_mutex_lock(&thread_list_mutex);
> +-
> +      while (current)
> +      {
> +           if (current != data)
> +@@ -214,9 +219,10 @@
> + void tftpd_clientlist_remove(struct thread_data *thread,
> +                              struct client_info *client)
> + {
> +-     struct client_info *tmp = thread->client_info;
> ++     struct client_info *tmp;
> + 
> +      pthread_mutex_lock(&thread->client_mutex);
> ++     tmp = thread->client_info;
> +      while ((tmp->next != client) && (tmp->next != NULL))
> +           tmp = tmp->next;
> +      if (tmp->next == NULL)
> +@@ -231,9 +237,11 @@
> + void tftpd_clientlist_free(struct thread_data *thread)
> + {
> +      struct client_info *tmp;
> +-     struct client_info *head = thread->client_info;
> ++     struct client_info *head;
> + 
> +      pthread_mutex_lock(&thread->client_mutex);
> ++     head = thread->client_info;
> ++
> +      while (head)
> +      {
> +           tmp = head;
> +@@ -250,9 +258,10 @@
> +                           struct client_info *client,
> +                           struct sockaddr_storage *sock)
> + {
> +-     struct client_info *head = thread->client_info;
> ++     struct client_info *head;
> + 
> +      pthread_mutex_lock(&thread->client_mutex);
> ++     head = thread->client_info;
> + 
> +      if (client)
> +      {
> +@@ -334,10 +343,10 @@
> + 
> + void tftpd_list_kill_threads(void)
> + {
> +-     struct thread_data *current = thread_data; /* head of list */
> ++     struct thread_data *current; /* head of list */
> + 
> +      pthread_mutex_lock(&thread_list_mutex);
> +-
> ++     current = thread_data;
> + 
> +      while (current != NULL)
> +      {
> +Index: git/tftpd_mcast.c
> +===================================================================
> +--- git.orig/tftpd_mcast.c	2012-10-24 21:48:47.000000000 -0700
> ++++ git/tftpd_mcast.c	2012-10-24 21:49:11.570201582 -0700
> +@@ -51,9 +51,11 @@
> +  */
> + int tftpd_mcast_get_tid(char **addr, short *port)
> + {
> +-     struct tid *current = tid_list;
> ++     struct tid *current;
> + 
> +      pthread_mutex_lock(&mcast_tid_list);
> ++     current = tid_list;
> ++
> +      /* walk the list for a free tid */
> +      while (current != NULL)
> +      {
> +@@ -74,9 +76,11 @@
> + 
> + int tftpd_mcast_free_tid(char *addr, short port)
> + {
> +-     struct tid *current = tid_list;
> ++     struct tid *current;
> + 
> +      pthread_mutex_lock(&mcast_tid_list);
> ++     current = tid_list;
> ++
> +      while (current != NULL)
> +      {
> + 	  if ((current->used == 1) && (current->port == port) &&
> -- 
> 1.7.9.5
> 
> 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [meta-oe][PATCH V2 09/25] atftp: Upgrade to latest from git
  2013-01-06  9:36   ` Martin Jansa
@ 2013-01-07  1:23     ` Khem Raj
  2013-01-07 15:36       ` Joe MacDonald
  0 siblings, 1 reply; 40+ messages in thread
From: Khem Raj @ 2013-01-07  1:23 UTC (permalink / raw)
  To: openembedded-devel

On Sun, Jan 6, 2013 at 1:36 AM, Martin Jansa <martin.jansa@gmail.com> wrote:
> On Sun, Jan 06, 2013 at 01:12:32AM -0800, Khem Raj wrote:
>> Add patches to let atftp serve huge ramdisks >500M in size
>
> I don't see this patch
> http://patchwork.openembedded.org/patch/41955/
> in V2, can you update status on patchwork to indicate which patches are
> superseeded by V2 and which are still valid?
>

I would suggest to actually drop all V1 patches since I have
reshuffled them quite a bit and take all V2 fresh
I have also pushed this latest series into contrib repo

http://git.openembedded.org/meta-openembedded-contrib/log/?h=kraj/updates


> Thanks
>
>>
>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
>> ---
>>  .../atftp/{atftp_0.7.bb => atftp_git.bb}           |   18 +--
>>  ...tpd-0.7_circumvent_tftp_size_restrictions.patch |  158 ++++++++++++++++++++
>>  .../atftpd-0.7_unprotected_assignments_crash.patch |  145 ++++++++++++++++++
>>  3 files changed, 311 insertions(+), 10 deletions(-)
>>  rename meta-oe/recipes-extended/atftp/{atftp_0.7.bb => atftp_git.bb} (59%)
>>  create mode 100644 meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch
>>  create mode 100644 meta-oe/recipes-extended/atftp/files/atftpd-0.7_unprotected_assignments_crash.patch
>>
>> diff --git a/meta-oe/recipes-extended/atftp/atftp_0.7.bb b/meta-oe/recipes-extended/atftp/atftp_git.bb
>> similarity index 59%
>> rename from meta-oe/recipes-extended/atftp/atftp_0.7.bb
>> rename to meta-oe/recipes-extended/atftp/atftp_git.bb
>> index ff1e11d..774dd68 100644
>> --- a/meta-oe/recipes-extended/atftp/atftp_0.7.bb
>> +++ b/meta-oe/recipes-extended/atftp/atftp_git.bb
>> @@ -3,13 +3,16 @@ SECTION = "network"
>>  HOMEPAGE = "http://packages.debian.org/atftp"
>>  LICENSE = "GPLv2"
>>  LIC_FILES_CHKSUM = "file://LICENSE;md5=94d55d512a9ba36caa9b7df079bae19f"
>> -PR = "r4"
>> +PV = "0.7.1+git${SRCPV}"
>>
>> -SRC_URI = "${DEBIAN_MIRROR}/main/a/atftp/atftp_${PV}.dfsg.orig.tar.gz;name=archive \
>> -           ${DEBIAN_MIRROR}/main/a/atftp/atftp_${PV}.dfsg-11.diff.gz;name=patch \
>> -           file://atftpd.init"
>> +SRCREV = "be3291a18c069ae23a124ffdc56d64a5ff0bbec7"
>>
>> -S = "${WORKDIR}/atftp-${PV}.dfsg"
>> +SRC_URI = "git://atftp.git.sourceforge.net/gitroot/atftp/atftp;protocol=git \
>> +           file://atftpd-0.7_circumvent_tftp_size_restrictions.patch \
>> +           file://atftpd-0.7_unprotected_assignments_crash.patch \
>> +           file://atftpd.init \
>> +          "
>> +S = "${WORKDIR}/git"
>>
>>  inherit autotools update-rc.d useradd
>>
>> @@ -35,8 +38,3 @@ PACKAGES =+ "atftpd"
>>  FILES_${PN} = "${bindir}/*"
>>
>>  FILES_${PN}d = "${sbindir}/* ${sysconfdir}/init.d/* /srv/tftp"
>> -
>> -SRC_URI[archive.md5sum] = "aa269044a6f992eca78fee2f6119643c"
>> -SRC_URI[archive.sha256sum] = "18815f5b67290fac087c6b9da28dfa5e0feb722096f5c5de52e59b46026da559"
>> -SRC_URI[patch.md5sum] = "1636f199bf32c754a7bf34a5c647d138"
>> -SRC_URI[patch.sha256sum] = "0df33f6c09c2b2de58a84d7bb757844fc9538cd4d6c8d9c463da5270ebc2e41d"
>> diff --git a/meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch b/meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch
>> new file mode 100644
>> index 0000000..9aeb351
>> --- /dev/null
>> +++ b/meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch
>> @@ -0,0 +1,158 @@
>> +Fate #303031: Circumvent TFTP size restrictions in atftpd
>> +The size of a single image file that can be transferred with TFTP is limited to
>> +2^(2*8) *BLOCKSIZE (as per RFC 1350 there are only two bytes for the block
>> +counter). This is problematic for one of our customers who needs to transfer
>> +100+ MB Windows images using a TFTP client (NT bootloader) which has a
>> +hardwared BLOCKSIZE setting of 1432).
>> +
>> +block rollover
>> +http://www.compuphase.com/tftp.htm
>> +
>> +Index: git/tftp_def.h
>> +===================================================================
>> +--- git.orig/tftp_def.h      2012-11-19 16:28:50.221027144 -0800
>> ++++ git/tftp_def.h   2012-11-20 17:40:54.391206979 -0800
>> +@@ -32,6 +32,7 @@
>> + #define TIMEOUT       5         /* Client timeout */
>> + #define S_TIMEOUT     5         /* Server timout. */
>> + #define NB_OF_RETRY   5
>> ++#define MAXBLOCKS   1000000      /* maximum number of blocks in a download */
>> +
>> + /* definition to use tftp_options structure */
>> + #define OPT_FILENAME  0
>> +Index: git/tftp_file.c
>> +===================================================================
>> +--- git.orig/tftp_file.c     2012-11-19 16:28:50.221027144 -0800
>> ++++ git/tftp_file.c  2012-11-19 16:28:51.201027167 -0800
>> +@@ -622,8 +622,8 @@
>> +      int state = S_SEND_REQ;    /* current state in the state machine */
>> +      int timeout_state = state; /* what state should we go on when timeout */
>> +      int result;
>> +-     int block_number = 0;
>> +-     int last_block = -1;
>> ++     long block_number = 0;
>> ++     long last_block = -1;
>> +      int data_size;             /* size of data received */
>> +      int sockfd = data->sockfd; /* just to simplify calls */
>> +      struct sockaddr_storage sa; /* a copy of data.sa_peer */
>> +@@ -637,8 +637,8 @@
>> +      int convert = 0;           /* if true, do netascii convertion */
>> +      char string[MAXLEN];
>> +
>> +-     int prev_block_number = 0; /* needed to support netascii convertion */
>> +-     int prev_file_pos = 0;
>> ++     long prev_block_number = 0; /* needed to support netascii convertion */
>> ++     long prev_file_pos = 0;
>> +      int temp = 0;
>> +
>> +      data->file_size = 0;
>> +@@ -745,7 +745,7 @@
>> +                               data_size, data->data_buffer);
>> +                data->file_size += data_size;
>> +                if (data->trace)
>> +-                    fprintf(stderr, "sent DATA <block: %d, size: %d>\n",
>> ++                    fprintf(stderr, "sent DATA <block: %ld, size: %d>\n",
>> +                             block_number + 1, data_size - 4);
>> +                state = S_WAIT_PACKET;
>> +                break;
>> +@@ -785,7 +785,7 @@
>> +                     }
>> +                     block_number = ntohs(tftphdr->th_block);
>> +                     if (data->trace)
>> +-                         fprintf(stderr, "received ACK <block: %d>\n",
>> ++                         fprintf(stderr, "received ACK <block: %ld>\n",
>> +                                  block_number);
>> +                     if ((last_block != -1) && (block_number > last_block))
>> +                     {
>> +Index: git/tftp_io.c
>> +===================================================================
>> +--- git.orig/tftp_io.c       2012-11-19 16:28:50.221027144 -0800
>> ++++ git/tftp_io.c    2012-11-19 16:28:51.201027167 -0800
>> +@@ -350,8 +350,8 @@
>> + /*
>> +  * Read from file and do netascii conversion if needed
>> +  */
>> +-int tftp_file_read(FILE *fp, char *data_buffer, int data_buffer_size, int block_number,
>> +-                   int convert, int *prev_block_number, int *prev_file_pos, int *temp)
>> ++int tftp_file_read(FILE *fp, char *data_buffer, int data_buffer_size, long block_number,
>> ++                   int convert, long *prev_block_number, long *prev_file_pos, int *temp)
>> + {
>> +      int i;
>> +      int c;
>> +Index: git/tftp_io.h
>> +===================================================================
>> +--- git.orig/tftp_io.h       2012-11-19 16:28:50.221027144 -0800
>> ++++ git/tftp_io.h    2012-11-19 16:28:51.201027167 -0800
>> +@@ -52,8 +52,8 @@
>> + int tftp_get_packet(int sock1, int sock2, int *sock, struct sockaddr_storage *sa,
>> +                     struct sockaddr_storage *from, struct sockaddr_storage *to,
>> +                     int timeout, int *size, char *data);
>> +-int tftp_file_read(FILE *fp, char *buffer, int buffer_size, int block_number, int convert,
>> +-                   int *prev_block_number, int *prev_file_pos, int *temp);
>> ++int tftp_file_read(FILE *fp, char *buffer, int buffer_size, long block_number, int convert,
>> ++                   long *prev_block_number, long *prev_file_pos, int *temp);
>> + int tftp_file_write(FILE *fp, char *data_buffer, int data_buffer_size, int block_number,
>> +                     int data_size, int convert, int *prev_block_number, int *temp);
>> + #endif
>> +Index: git/tftpd_file.c
>> +===================================================================
>> +--- git.orig/tftpd_file.c    2012-11-19 16:28:50.225027144 -0800
>> ++++ git/tftpd_file.c 2012-11-19 16:28:51.201027167 -0800
>> +@@ -407,8 +407,9 @@
>> +      int state = S_BEGIN;
>> +      int timeout_state = state;
>> +      int result;
>> +-     int block_number = 0;
>> +-     int last_block = -1;
>> ++     long block_number = 0;
>> ++     long last_block = -1;
>> ++     int block_loops = 0;
>> +      int data_size;
>> +      struct sockaddr_storage *sa = &data->client_info->client;
>> +      struct sockaddr_storage from;
>> +@@ -431,8 +432,8 @@
>> +      struct client_info *client_old = NULL;
>> +      struct tftp_opt options[OPT_NUMBER];
>> +
>> +-     int prev_block_number = 0; /* needed to support netascii convertion */
>> +-     int prev_file_pos = 0;
>> ++     long prev_block_number = 0; /* needed to support netascii convertion */
>> ++     long prev_file_pos = 0;
>> +      int temp = 0;
>> +
>> +      /* look for mode option */
>> +@@ -565,11 +566,12 @@
>> +           logger(LOG_INFO, "blksize option -> %d", result);
>> +      }
>> +
>> +-     /* Verify that the file can be sent in 2^16 block of BLKSIZE octets */
>> +-     if ((file_stat.st_size / (data->data_buffer_size - 4)) > 65535)
>> ++     /* Verify that the file can be sent in MAXBLOCKS blocks of BLKSIZE octets */
>> ++     if ((file_stat.st_size / (data->data_buffer_size - 4)) > MAXBLOCKS)
>> +      {
>> +           tftp_send_error(sockfd, sa, EUNDEF, data->data_buffer, data->data_buffer_size);
>> +-          logger(LOG_NOTICE, "Requested file to big, increase BLKSIZE");
>> ++          logger(LOG_NOTICE, "Requested file too big, increase BLKSIZE");
>> ++          logger(LOG_NOTICE, "Only %d blocks of %d bytes can be served.", MAXBLOCKS, data->data_buffer_size);
>> +           if (data->trace)
>> +                logger(LOG_DEBUG, "sent ERROR <code: %d, msg: %s>", EUNDEF,
>> +                       tftp_errmsg[EUNDEF]);
>> +@@ -880,10 +882,15 @@
>> +                     }
>> +                     /* The ACK is from the current client */
>> +                     number_of_timeout = 0;
>> +-                    block_number = ntohs(tftphdr->th_block);
>> ++                    block_number = (block_loops * 65536) + ntohs(tftphdr->th_block);
>> +                     if (data->trace)
>> +-                         logger(LOG_DEBUG, "received ACK <block: %d>",
>> +-                                block_number);
>> ++                    {
>> ++                         logger(LOG_DEBUG, "received ACK <block: %d>", block_number);
>> ++                    }
>> ++                    if (ntohs(tftphdr->th_block) == 65535)
>> ++                    {
>> ++                         block_loops++;
>> ++                    };
>> +                     if ((last_block != -1) && (block_number > last_block))
>> +                     {
>> +                          state = S_END;
>> diff --git a/meta-oe/recipes-extended/atftp/files/atftpd-0.7_unprotected_assignments_crash.patch b/meta-oe/recipes-extended/atftp/files/atftpd-0.7_unprotected_assignments_crash.patch
>> new file mode 100644
>> index 0000000..6faf5f9
>> --- /dev/null
>> +++ b/meta-oe/recipes-extended/atftp/files/atftpd-0.7_unprotected_assignments_crash.patch
>> @@ -0,0 +1,145 @@
>> +Index: git/tftpd_list.c
>> +===================================================================
>> +--- git.orig/tftpd_list.c    2012-10-24 21:48:47.000000000 -0700
>> ++++ git/tftpd_list.c 2012-10-24 21:52:04.266205076 -0700
>> +@@ -49,11 +49,11 @@
>> +  */
>> + int tftpd_list_add(struct thread_data *new)
>> + {
>> +-     struct thread_data *current = thread_data;
>> ++     struct thread_data *current;
>> +      int ret;
>> +
>> +      pthread_mutex_lock(&thread_list_mutex);
>> +-
>> ++     current = thread_data;
>> +      number_of_thread++;
>> +
>> +      ret = number_of_thread;
>> +@@ -81,11 +81,13 @@
>> +  */
>> + int tftpd_list_remove(struct thread_data *old)
>> + {
>> +-     struct thread_data *current = thread_data;
>> ++     struct thread_data *current;
>> +      int ret;
>> +
>> +      pthread_mutex_lock(&thread_list_mutex);
>> +
>> ++     current = thread_data;
>> ++
>> +      number_of_thread--;
>> +      ret = number_of_thread;
>> +
>> +@@ -137,23 +139,26 @@
>> +                                              struct thread_data *data,
>> +                                              struct client_info *client)
>> + {
>> +-     struct thread_data *current = thread_data; /* head of the list */
>> +-     struct tftp_opt *tftp_options = data->tftp_options;
>> ++     struct thread_data *current; /* head of the list */
>> ++     struct tftp_opt *tftp_options;
>> +      struct client_info *tmp;
>> +      char options[MAXLEN];
>> +      char string[MAXLEN];
>> +      char *index;
>> +      int len;
>> +
>> ++     /* lock the whole list before walking it */
>> ++     pthread_mutex_lock(&thread_list_mutex);
>> ++
>> +      *thread = NULL;
>> +
>> ++     current = thread_data;
>> ++     tftp_options = data->tftp_options;
>> ++
>> +      opt_request_to_string(tftp_options, options, MAXLEN);
>> +      index = strstr(options, "multicast");
>> +      len = (int)index - (int)options;
>> +
>> +-     /* lock the whole list before walking it */
>> +-     pthread_mutex_lock(&thread_list_mutex);
>> +-
>> +      while (current)
>> +      {
>> +           if (current != data)
>> +@@ -214,9 +219,10 @@
>> + void tftpd_clientlist_remove(struct thread_data *thread,
>> +                              struct client_info *client)
>> + {
>> +-     struct client_info *tmp = thread->client_info;
>> ++     struct client_info *tmp;
>> +
>> +      pthread_mutex_lock(&thread->client_mutex);
>> ++     tmp = thread->client_info;
>> +      while ((tmp->next != client) && (tmp->next != NULL))
>> +           tmp = tmp->next;
>> +      if (tmp->next == NULL)
>> +@@ -231,9 +237,11 @@
>> + void tftpd_clientlist_free(struct thread_data *thread)
>> + {
>> +      struct client_info *tmp;
>> +-     struct client_info *head = thread->client_info;
>> ++     struct client_info *head;
>> +
>> +      pthread_mutex_lock(&thread->client_mutex);
>> ++     head = thread->client_info;
>> ++
>> +      while (head)
>> +      {
>> +           tmp = head;
>> +@@ -250,9 +258,10 @@
>> +                           struct client_info *client,
>> +                           struct sockaddr_storage *sock)
>> + {
>> +-     struct client_info *head = thread->client_info;
>> ++     struct client_info *head;
>> +
>> +      pthread_mutex_lock(&thread->client_mutex);
>> ++     head = thread->client_info;
>> +
>> +      if (client)
>> +      {
>> +@@ -334,10 +343,10 @@
>> +
>> + void tftpd_list_kill_threads(void)
>> + {
>> +-     struct thread_data *current = thread_data; /* head of list */
>> ++     struct thread_data *current; /* head of list */
>> +
>> +      pthread_mutex_lock(&thread_list_mutex);
>> +-
>> ++     current = thread_data;
>> +
>> +      while (current != NULL)
>> +      {
>> +Index: git/tftpd_mcast.c
>> +===================================================================
>> +--- git.orig/tftpd_mcast.c   2012-10-24 21:48:47.000000000 -0700
>> ++++ git/tftpd_mcast.c        2012-10-24 21:49:11.570201582 -0700
>> +@@ -51,9 +51,11 @@
>> +  */
>> + int tftpd_mcast_get_tid(char **addr, short *port)
>> + {
>> +-     struct tid *current = tid_list;
>> ++     struct tid *current;
>> +
>> +      pthread_mutex_lock(&mcast_tid_list);
>> ++     current = tid_list;
>> ++
>> +      /* walk the list for a free tid */
>> +      while (current != NULL)
>> +      {
>> +@@ -74,9 +76,11 @@
>> +
>> + int tftpd_mcast_free_tid(char *addr, short port)
>> + {
>> +-     struct tid *current = tid_list;
>> ++     struct tid *current;
>> +
>> +      pthread_mutex_lock(&mcast_tid_list);
>> ++     current = tid_list;
>> ++
>> +      while (current != NULL)
>> +      {
>> +       if ((current->used == 1) && (current->port == port) &&
>> --
>> 1.7.9.5
>>
>>
>> _______________________________________________
>> Openembedded-devel mailing list
>> Openembedded-devel@lists.openembedded.org
>> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
>
> --
> Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com
>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
>



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [meta-oe][PATCH V2 09/25] atftp: Upgrade to latest from git
  2013-01-07  1:23     ` Khem Raj
@ 2013-01-07 15:36       ` Joe MacDonald
  2013-01-07 16:01         ` Khem Raj
  0 siblings, 1 reply; 40+ messages in thread
From: Joe MacDonald @ 2013-01-07 15:36 UTC (permalink / raw)
  To: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 18773 bytes --]

Hi Khem,

[Re: [oe] [meta-oe][PATCH V2 09/25] atftp: Upgrade to latest from git] On 13.01.06 (Sun 17:23) Khem Raj wrote:

> On Sun, Jan 6, 2013 at 1:36 AM, Martin Jansa <martin.jansa@gmail.com> wrote:
> > On Sun, Jan 06, 2013 at 01:12:32AM -0800, Khem Raj wrote:
> >> Add patches to let atftp serve huge ramdisks >500M in size
> >
> > I don't see this patch
> > http://patchwork.openembedded.org/patch/41955/
> > in V2, can you update status on patchwork to indicate which patches are
> > superseeded by V2 and which are still valid?
> >
> 
> I would suggest to actually drop all V1 patches since I have
> reshuffled them quite a bit and take all V2 fresh
> I have also pushed this latest series into contrib repo
> 
> http://git.openembedded.org/meta-openembedded-contrib/log/?h=kraj/updates

I'm looking at that now.  The only comment / request I have right now is
about atftp.  It was on my list of stuff to update and move into
meta-networking.  If there's no objection it that, would you mind moving
it there at the same time?  I'd been planning to have it in
meta-networking/recipes-daemons.

Thanks,
-J.

> 
> 
> > Thanks
> >
> >>
> >> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> >> ---
> >>  .../atftp/{atftp_0.7.bb => atftp_git.bb}           |   18 +--
> >>  ...tpd-0.7_circumvent_tftp_size_restrictions.patch |  158 ++++++++++++++++++++
> >>  .../atftpd-0.7_unprotected_assignments_crash.patch |  145 ++++++++++++++++++
> >>  3 files changed, 311 insertions(+), 10 deletions(-)
> >>  rename meta-oe/recipes-extended/atftp/{atftp_0.7.bb => atftp_git.bb} (59%)
> >>  create mode 100644 meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch
> >>  create mode 100644 meta-oe/recipes-extended/atftp/files/atftpd-0.7_unprotected_assignments_crash.patch
> >>
> >> diff --git a/meta-oe/recipes-extended/atftp/atftp_0.7.bb b/meta-oe/recipes-extended/atftp/atftp_git.bb
> >> similarity index 59%
> >> rename from meta-oe/recipes-extended/atftp/atftp_0.7.bb
> >> rename to meta-oe/recipes-extended/atftp/atftp_git.bb
> >> index ff1e11d..774dd68 100644
> >> --- a/meta-oe/recipes-extended/atftp/atftp_0.7.bb
> >> +++ b/meta-oe/recipes-extended/atftp/atftp_git.bb
> >> @@ -3,13 +3,16 @@ SECTION = "network"
> >>  HOMEPAGE = "http://packages.debian.org/atftp"
> >>  LICENSE = "GPLv2"
> >>  LIC_FILES_CHKSUM = "file://LICENSE;md5=94d55d512a9ba36caa9b7df079bae19f"
> >> -PR = "r4"
> >> +PV = "0.7.1+git${SRCPV}"
> >>
> >> -SRC_URI = "${DEBIAN_MIRROR}/main/a/atftp/atftp_${PV}.dfsg.orig.tar.gz;name=archive \
> >> -           ${DEBIAN_MIRROR}/main/a/atftp/atftp_${PV}.dfsg-11.diff.gz;name=patch \
> >> -           file://atftpd.init"
> >> +SRCREV = "be3291a18c069ae23a124ffdc56d64a5ff0bbec7"
> >>
> >> -S = "${WORKDIR}/atftp-${PV}.dfsg"
> >> +SRC_URI = "git://atftp.git.sourceforge.net/gitroot/atftp/atftp;protocol=git \
> >> +           file://atftpd-0.7_circumvent_tftp_size_restrictions.patch \
> >> +           file://atftpd-0.7_unprotected_assignments_crash.patch \
> >> +           file://atftpd.init \
> >> +          "
> >> +S = "${WORKDIR}/git"
> >>
> >>  inherit autotools update-rc.d useradd
> >>
> >> @@ -35,8 +38,3 @@ PACKAGES =+ "atftpd"
> >>  FILES_${PN} = "${bindir}/*"
> >>
> >>  FILES_${PN}d = "${sbindir}/* ${sysconfdir}/init.d/* /srv/tftp"
> >> -
> >> -SRC_URI[archive.md5sum] = "aa269044a6f992eca78fee2f6119643c"
> >> -SRC_URI[archive.sha256sum] = "18815f5b67290fac087c6b9da28dfa5e0feb722096f5c5de52e59b46026da559"
> >> -SRC_URI[patch.md5sum] = "1636f199bf32c754a7bf34a5c647d138"
> >> -SRC_URI[patch.sha256sum] = "0df33f6c09c2b2de58a84d7bb757844fc9538cd4d6c8d9c463da5270ebc2e41d"
> >> diff --git a/meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch b/meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch
> >> new file mode 100644
> >> index 0000000..9aeb351
> >> --- /dev/null
> >> +++ b/meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch
> >> @@ -0,0 +1,158 @@
> >> +Fate #303031: Circumvent TFTP size restrictions in atftpd
> >> +The size of a single image file that can be transferred with TFTP is limited to
> >> +2^(2*8) *BLOCKSIZE (as per RFC 1350 there are only two bytes for the block
> >> +counter). This is problematic for one of our customers who needs to transfer
> >> +100+ MB Windows images using a TFTP client (NT bootloader) which has a
> >> +hardwared BLOCKSIZE setting of 1432).
> >> +
> >> +block rollover
> >> +http://www.compuphase.com/tftp.htm
> >> +
> >> +Index: git/tftp_def.h
> >> +===================================================================
> >> +--- git.orig/tftp_def.h      2012-11-19 16:28:50.221027144 -0800
> >> ++++ git/tftp_def.h   2012-11-20 17:40:54.391206979 -0800
> >> +@@ -32,6 +32,7 @@
> >> + #define TIMEOUT       5         /* Client timeout */
> >> + #define S_TIMEOUT     5         /* Server timout. */
> >> + #define NB_OF_RETRY   5
> >> ++#define MAXBLOCKS   1000000      /* maximum number of blocks in a download */
> >> +
> >> + /* definition to use tftp_options structure */
> >> + #define OPT_FILENAME  0
> >> +Index: git/tftp_file.c
> >> +===================================================================
> >> +--- git.orig/tftp_file.c     2012-11-19 16:28:50.221027144 -0800
> >> ++++ git/tftp_file.c  2012-11-19 16:28:51.201027167 -0800
> >> +@@ -622,8 +622,8 @@
> >> +      int state = S_SEND_REQ;    /* current state in the state machine */
> >> +      int timeout_state = state; /* what state should we go on when timeout */
> >> +      int result;
> >> +-     int block_number = 0;
> >> +-     int last_block = -1;
> >> ++     long block_number = 0;
> >> ++     long last_block = -1;
> >> +      int data_size;             /* size of data received */
> >> +      int sockfd = data->sockfd; /* just to simplify calls */
> >> +      struct sockaddr_storage sa; /* a copy of data.sa_peer */
> >> +@@ -637,8 +637,8 @@
> >> +      int convert = 0;           /* if true, do netascii convertion */
> >> +      char string[MAXLEN];
> >> +
> >> +-     int prev_block_number = 0; /* needed to support netascii convertion */
> >> +-     int prev_file_pos = 0;
> >> ++     long prev_block_number = 0; /* needed to support netascii convertion */
> >> ++     long prev_file_pos = 0;
> >> +      int temp = 0;
> >> +
> >> +      data->file_size = 0;
> >> +@@ -745,7 +745,7 @@
> >> +                               data_size, data->data_buffer);
> >> +                data->file_size += data_size;
> >> +                if (data->trace)
> >> +-                    fprintf(stderr, "sent DATA <block: %d, size: %d>\n",
> >> ++                    fprintf(stderr, "sent DATA <block: %ld, size: %d>\n",
> >> +                             block_number + 1, data_size - 4);
> >> +                state = S_WAIT_PACKET;
> >> +                break;
> >> +@@ -785,7 +785,7 @@
> >> +                     }
> >> +                     block_number = ntohs(tftphdr->th_block);
> >> +                     if (data->trace)
> >> +-                         fprintf(stderr, "received ACK <block: %d>\n",
> >> ++                         fprintf(stderr, "received ACK <block: %ld>\n",
> >> +                                  block_number);
> >> +                     if ((last_block != -1) && (block_number > last_block))
> >> +                     {
> >> +Index: git/tftp_io.c
> >> +===================================================================
> >> +--- git.orig/tftp_io.c       2012-11-19 16:28:50.221027144 -0800
> >> ++++ git/tftp_io.c    2012-11-19 16:28:51.201027167 -0800
> >> +@@ -350,8 +350,8 @@
> >> + /*
> >> +  * Read from file and do netascii conversion if needed
> >> +  */
> >> +-int tftp_file_read(FILE *fp, char *data_buffer, int data_buffer_size, int block_number,
> >> +-                   int convert, int *prev_block_number, int *prev_file_pos, int *temp)
> >> ++int tftp_file_read(FILE *fp, char *data_buffer, int data_buffer_size, long block_number,
> >> ++                   int convert, long *prev_block_number, long *prev_file_pos, int *temp)
> >> + {
> >> +      int i;
> >> +      int c;
> >> +Index: git/tftp_io.h
> >> +===================================================================
> >> +--- git.orig/tftp_io.h       2012-11-19 16:28:50.221027144 -0800
> >> ++++ git/tftp_io.h    2012-11-19 16:28:51.201027167 -0800
> >> +@@ -52,8 +52,8 @@
> >> + int tftp_get_packet(int sock1, int sock2, int *sock, struct sockaddr_storage *sa,
> >> +                     struct sockaddr_storage *from, struct sockaddr_storage *to,
> >> +                     int timeout, int *size, char *data);
> >> +-int tftp_file_read(FILE *fp, char *buffer, int buffer_size, int block_number, int convert,
> >> +-                   int *prev_block_number, int *prev_file_pos, int *temp);
> >> ++int tftp_file_read(FILE *fp, char *buffer, int buffer_size, long block_number, int convert,
> >> ++                   long *prev_block_number, long *prev_file_pos, int *temp);
> >> + int tftp_file_write(FILE *fp, char *data_buffer, int data_buffer_size, int block_number,
> >> +                     int data_size, int convert, int *prev_block_number, int *temp);
> >> + #endif
> >> +Index: git/tftpd_file.c
> >> +===================================================================
> >> +--- git.orig/tftpd_file.c    2012-11-19 16:28:50.225027144 -0800
> >> ++++ git/tftpd_file.c 2012-11-19 16:28:51.201027167 -0800
> >> +@@ -407,8 +407,9 @@
> >> +      int state = S_BEGIN;
> >> +      int timeout_state = state;
> >> +      int result;
> >> +-     int block_number = 0;
> >> +-     int last_block = -1;
> >> ++     long block_number = 0;
> >> ++     long last_block = -1;
> >> ++     int block_loops = 0;
> >> +      int data_size;
> >> +      struct sockaddr_storage *sa = &data->client_info->client;
> >> +      struct sockaddr_storage from;
> >> +@@ -431,8 +432,8 @@
> >> +      struct client_info *client_old = NULL;
> >> +      struct tftp_opt options[OPT_NUMBER];
> >> +
> >> +-     int prev_block_number = 0; /* needed to support netascii convertion */
> >> +-     int prev_file_pos = 0;
> >> ++     long prev_block_number = 0; /* needed to support netascii convertion */
> >> ++     long prev_file_pos = 0;
> >> +      int temp = 0;
> >> +
> >> +      /* look for mode option */
> >> +@@ -565,11 +566,12 @@
> >> +           logger(LOG_INFO, "blksize option -> %d", result);
> >> +      }
> >> +
> >> +-     /* Verify that the file can be sent in 2^16 block of BLKSIZE octets */
> >> +-     if ((file_stat.st_size / (data->data_buffer_size - 4)) > 65535)
> >> ++     /* Verify that the file can be sent in MAXBLOCKS blocks of BLKSIZE octets */
> >> ++     if ((file_stat.st_size / (data->data_buffer_size - 4)) > MAXBLOCKS)
> >> +      {
> >> +           tftp_send_error(sockfd, sa, EUNDEF, data->data_buffer, data->data_buffer_size);
> >> +-          logger(LOG_NOTICE, "Requested file to big, increase BLKSIZE");
> >> ++          logger(LOG_NOTICE, "Requested file too big, increase BLKSIZE");
> >> ++          logger(LOG_NOTICE, "Only %d blocks of %d bytes can be served.", MAXBLOCKS, data->data_buffer_size);
> >> +           if (data->trace)
> >> +                logger(LOG_DEBUG, "sent ERROR <code: %d, msg: %s>", EUNDEF,
> >> +                       tftp_errmsg[EUNDEF]);
> >> +@@ -880,10 +882,15 @@
> >> +                     }
> >> +                     /* The ACK is from the current client */
> >> +                     number_of_timeout = 0;
> >> +-                    block_number = ntohs(tftphdr->th_block);
> >> ++                    block_number = (block_loops * 65536) + ntohs(tftphdr->th_block);
> >> +                     if (data->trace)
> >> +-                         logger(LOG_DEBUG, "received ACK <block: %d>",
> >> +-                                block_number);
> >> ++                    {
> >> ++                         logger(LOG_DEBUG, "received ACK <block: %d>", block_number);
> >> ++                    }
> >> ++                    if (ntohs(tftphdr->th_block) == 65535)
> >> ++                    {
> >> ++                         block_loops++;
> >> ++                    };
> >> +                     if ((last_block != -1) && (block_number > last_block))
> >> +                     {
> >> +                          state = S_END;
> >> diff --git a/meta-oe/recipes-extended/atftp/files/atftpd-0.7_unprotected_assignments_crash.patch b/meta-oe/recipes-extended/atftp/files/atftpd-0.7_unprotected_assignments_crash.patch
> >> new file mode 100644
> >> index 0000000..6faf5f9
> >> --- /dev/null
> >> +++ b/meta-oe/recipes-extended/atftp/files/atftpd-0.7_unprotected_assignments_crash.patch
> >> @@ -0,0 +1,145 @@
> >> +Index: git/tftpd_list.c
> >> +===================================================================
> >> +--- git.orig/tftpd_list.c    2012-10-24 21:48:47.000000000 -0700
> >> ++++ git/tftpd_list.c 2012-10-24 21:52:04.266205076 -0700
> >> +@@ -49,11 +49,11 @@
> >> +  */
> >> + int tftpd_list_add(struct thread_data *new)
> >> + {
> >> +-     struct thread_data *current = thread_data;
> >> ++     struct thread_data *current;
> >> +      int ret;
> >> +
> >> +      pthread_mutex_lock(&thread_list_mutex);
> >> +-
> >> ++     current = thread_data;
> >> +      number_of_thread++;
> >> +
> >> +      ret = number_of_thread;
> >> +@@ -81,11 +81,13 @@
> >> +  */
> >> + int tftpd_list_remove(struct thread_data *old)
> >> + {
> >> +-     struct thread_data *current = thread_data;
> >> ++     struct thread_data *current;
> >> +      int ret;
> >> +
> >> +      pthread_mutex_lock(&thread_list_mutex);
> >> +
> >> ++     current = thread_data;
> >> ++
> >> +      number_of_thread--;
> >> +      ret = number_of_thread;
> >> +
> >> +@@ -137,23 +139,26 @@
> >> +                                              struct thread_data *data,
> >> +                                              struct client_info *client)
> >> + {
> >> +-     struct thread_data *current = thread_data; /* head of the list */
> >> +-     struct tftp_opt *tftp_options = data->tftp_options;
> >> ++     struct thread_data *current; /* head of the list */
> >> ++     struct tftp_opt *tftp_options;
> >> +      struct client_info *tmp;
> >> +      char options[MAXLEN];
> >> +      char string[MAXLEN];
> >> +      char *index;
> >> +      int len;
> >> +
> >> ++     /* lock the whole list before walking it */
> >> ++     pthread_mutex_lock(&thread_list_mutex);
> >> ++
> >> +      *thread = NULL;
> >> +
> >> ++     current = thread_data;
> >> ++     tftp_options = data->tftp_options;
> >> ++
> >> +      opt_request_to_string(tftp_options, options, MAXLEN);
> >> +      index = strstr(options, "multicast");
> >> +      len = (int)index - (int)options;
> >> +
> >> +-     /* lock the whole list before walking it */
> >> +-     pthread_mutex_lock(&thread_list_mutex);
> >> +-
> >> +      while (current)
> >> +      {
> >> +           if (current != data)
> >> +@@ -214,9 +219,10 @@
> >> + void tftpd_clientlist_remove(struct thread_data *thread,
> >> +                              struct client_info *client)
> >> + {
> >> +-     struct client_info *tmp = thread->client_info;
> >> ++     struct client_info *tmp;
> >> +
> >> +      pthread_mutex_lock(&thread->client_mutex);
> >> ++     tmp = thread->client_info;
> >> +      while ((tmp->next != client) && (tmp->next != NULL))
> >> +           tmp = tmp->next;
> >> +      if (tmp->next == NULL)
> >> +@@ -231,9 +237,11 @@
> >> + void tftpd_clientlist_free(struct thread_data *thread)
> >> + {
> >> +      struct client_info *tmp;
> >> +-     struct client_info *head = thread->client_info;
> >> ++     struct client_info *head;
> >> +
> >> +      pthread_mutex_lock(&thread->client_mutex);
> >> ++     head = thread->client_info;
> >> ++
> >> +      while (head)
> >> +      {
> >> +           tmp = head;
> >> +@@ -250,9 +258,10 @@
> >> +                           struct client_info *client,
> >> +                           struct sockaddr_storage *sock)
> >> + {
> >> +-     struct client_info *head = thread->client_info;
> >> ++     struct client_info *head;
> >> +
> >> +      pthread_mutex_lock(&thread->client_mutex);
> >> ++     head = thread->client_info;
> >> +
> >> +      if (client)
> >> +      {
> >> +@@ -334,10 +343,10 @@
> >> +
> >> + void tftpd_list_kill_threads(void)
> >> + {
> >> +-     struct thread_data *current = thread_data; /* head of list */
> >> ++     struct thread_data *current; /* head of list */
> >> +
> >> +      pthread_mutex_lock(&thread_list_mutex);
> >> +-
> >> ++     current = thread_data;
> >> +
> >> +      while (current != NULL)
> >> +      {
> >> +Index: git/tftpd_mcast.c
> >> +===================================================================
> >> +--- git.orig/tftpd_mcast.c   2012-10-24 21:48:47.000000000 -0700
> >> ++++ git/tftpd_mcast.c        2012-10-24 21:49:11.570201582 -0700
> >> +@@ -51,9 +51,11 @@
> >> +  */
> >> + int tftpd_mcast_get_tid(char **addr, short *port)
> >> + {
> >> +-     struct tid *current = tid_list;
> >> ++     struct tid *current;
> >> +
> >> +      pthread_mutex_lock(&mcast_tid_list);
> >> ++     current = tid_list;
> >> ++
> >> +      /* walk the list for a free tid */
> >> +      while (current != NULL)
> >> +      {
> >> +@@ -74,9 +76,11 @@
> >> +
> >> + int tftpd_mcast_free_tid(char *addr, short port)
> >> + {
> >> +-     struct tid *current = tid_list;
> >> ++     struct tid *current;
> >> +
> >> +      pthread_mutex_lock(&mcast_tid_list);
> >> ++     current = tid_list;
> >> ++
> >> +      while (current != NULL)
> >> +      {
> >> +       if ((current->used == 1) && (current->port == port) &&
> >> --
> >> 1.7.9.5
> >>
> >>
> >> _______________________________________________
> >> Openembedded-devel mailing list
> >> Openembedded-devel@lists.openembedded.org
> >> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
> >
> > --
> > Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com
> >
> > _______________________________________________
> > Openembedded-devel mailing list
> > Openembedded-devel@lists.openembedded.org
> > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
> >
> 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel

-- 
-Joe MacDonald.
:wq

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [meta-networking][PATCH V2 03/25] autofs: Add recipes for 5.0.7
  2013-01-06  9:12 ` [meta-networking][PATCH V2 03/25] autofs: Add recipes for 5.0.7 Khem Raj
@ 2013-01-07 15:58   ` Joe MacDonald
  2013-01-07 22:48     ` Khem Raj
  0 siblings, 1 reply; 40+ messages in thread
From: Joe MacDonald @ 2013-01-07 15:58 UTC (permalink / raw)
  To: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 5233 bytes --]

Two simple questions on this.  Therefore, aggressive snipping.

[[oe] [meta-networking][PATCH V2 03/25] autofs: Add recipes for 5.0.7] On 13.01.06 (Sun 01:12) Khem Raj wrote:

[...]

> diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/libtirpc.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/libtirpc.patch
> new file mode 100644
> index 0000000..04f52c6
> --- /dev/null
> +++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/libtirpc.patch
> @@ -0,0 +1,26 @@
> +Index: autofs-5.0.7/aclocal.m4
> +===================================================================
> +--- autofs-5.0.7.orig/aclocal.m4	2012-10-28 13:17:45.504237027 -0700
> ++++ autofs-5.0.7/aclocal.m4	2012-10-28 13:20:50.108242739 -0700
> +@@ -403,7 +403,7 @@
> + # save current flags
> + af_check_libtirpc_save_cflags="$CFLAGS"
> + af_check_libtirpc_save_ldflags="$LDFLAGS"
> +-CFLAGS="$CFLAGS -I/usr/include/tirpc"
> ++CFLAGS="$CFLAGS -I=/usr/include/tirpc"
> + LDFLAGS="$LDFLAGS -ltirpc"
> + 
> + AC_TRY_LINK(
> +Index: autofs-5.0.7/Makefile.rules
> +===================================================================
> +--- autofs-5.0.7.orig/Makefile.rules	2012-10-28 13:17:45.308237022 -0700
> ++++ autofs-5.0.7/Makefile.rules	2012-10-28 13:21:25.720242803 -0700
> +@@ -48,7 +48,7 @@
> + LDFLAGS += -lpthread
> + 
> + ifdef TIRPCLIB
> +-CFLAGS += -I/usr/include/tirpc
> ++CFLAGS += -I=/usr/include/tirpc
> + LDFLAGS += $(TIRPCLIB)
> + endif
> + 

Are these required?  If they're not, they're probably benign, but I
thought the -I=<path> was an rpmbuildism that wasn't specifically
required here.

[...]

> diff --git a/meta-networking/recipes-daemons/autofs/autofs_5.0.7.bb b/meta-networking/recipes-daemons/autofs/autofs_5.0.7.bb
> new file mode 100644
> index 0000000..5013e5e
> --- /dev/null
> +++ b/meta-networking/recipes-daemons/autofs/autofs_5.0.7.bb
> @@ -0,0 +1,71 @@
> +DESCRIPTION = "Kernel based automounter for linux."
> +SECTION = "base"
> +LICENSE = "GPL-2.0"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3"
> +
> +DEPENDS += "openldap libtirpc flex-native bison-native"
> +
> +inherit autotools systemd
> +
> +SRC_URI = "${KERNELORG_MIRROR}/linux/daemons/autofs/v5/autofs-${PV}.tar.bz2 \
> +           file://autofs-5.0.7-fix-nobind-sun-escaped-map-entries.patch \
> +           file://autofs-5.0.7-fix-use-cache-entry-after-free-mistake.patch \
> +           file://autofs-5.0.7-fix-ipv6-proximity-calculation.patch \
> +           file://autofs-5.0.7-fix-parse-buffer-initialization.patch \
> +           file://autofs-5.0.7-fix-typo-in-automount-8.patch \
> +           file://autofs-5.0.7-include-usage-in-usage-message.patch \
> +           file://autofs-5.0.7-dont-wait-forever-to-restart.patch \
> +           file://autofs-5.0.7-add-timeout-option-description-to-man-page.patch \
> +           file://autofs-5.0.7-fix-null-map-entry-order-handling.patch \
> +           file://autofs-5.0.7-make-description-of-default-MOUNT_WAIT-setting-clear.patch \
> +           file://autofs-5.0.7-configure-in-allow-cross-compilation.patch \
> +           file://autofs-5.0.7-README-update-mailing-list-subscription-info.patch \
> +           file://autofs-5.0.7-allow-non-root-user-to-check-status.patch \
> +           file://autofs-5.0.7-configure-allow-cross-compilation-update.patch \
> +           file://autofs-5.0.6-fix-recursive-mount-deadlock.patch \
> +           file://autofs-5.0.6-increase-file-map-read-buffer-size.patch \
> +           file://autofs-5.0.7-handle-new-location-of-systemd.patch \
> +           file://Makefile.rules-cross.patch \
> +           file://no-bash.patch \
> +           file://cross.patch \
> +           file://libtirpc.patch \
> +           file://libtirpc-name-clash-backout.patch \
> +          "
> +
> +SRC_URI[md5sum] = "bc46838dece83c02d800ff144ed9f431"
> +SRC_URI[sha256sum] = "08c4304d8076dc80c14df559bc5fd821b67ef3457b245f61068bd053d8f94ccc"
> +
> +inherit update-rc.d
> +
> +INITSCRIPT_NAME = "autofs"
> +INITSCRIPT_PARAMS = "defaults"
> +
> +SYSTEMD_PACKAGES = "${PN}-systemd"
> +SYSTEMD_SERVICE = "autofs.service"
> +
> +# FIXME: modules/Makefile has crappy rules that don't obey LDFLAGS
> +CFLAGS += "${LDFLAGS}"
> +
> +EXTRA_OEMAKE = "DONTSTRIP=1"
> +EXTRA_OECONF += "--with-systemd --disable-mount-locking \
> +                --enable-ignore-busy --with-openldap=no \
> +                --with-sasl=no --with-libtirpc=yes \
> +                --with-path=${STAGING_BINDIR_NATIVE} \
> +                "
> +CACHED_CONFIGUREVARS = "ac_cv_path_RANLIB=${RANLIB} \
> +                        ac_cv_path_RPCGEN=rpcgen \
> +                       "
> +
> +do_configure_prepend () {
> +        if [ ! -e acinclude.m4 ]; then
> +                cp aclocal.m4 acinclude.m4
> +        fi
> +}
> +
> +#do_install () {
> +#        install -d ${D}${mandir}/man5 ${D}${mandir}/man8 \
> +#                   ${D}${sbindir}
> +#        oe_runmake 'INSTALLROOT=${D}' install
> +#}

If do_install() is dead, any harm in removing it from the recipe
entirely?

> +
> +INSANE_SKIP_${PN} = "dev-so"
-- 
-Joe MacDonald.
:wq

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [meta-oe][PATCH V2 09/25] atftp: Upgrade to latest from git
  2013-01-07 15:36       ` Joe MacDonald
@ 2013-01-07 16:01         ` Khem Raj
  2013-01-07 16:04           ` Joe MacDonald
  0 siblings, 1 reply; 40+ messages in thread
From: Khem Raj @ 2013-01-07 16:01 UTC (permalink / raw)
  To: openembedded-devel

On Monday, January 7, 2013, Joe MacDonald wrote:

> Hi Khem,
>
> [Re: [oe] [meta-oe][PATCH V2 09/25] atftp: Upgrade to latest from git] On
> 13.01.06 (Sun 17:23) Khem Raj wrote:
>
> > On Sun, Jan 6, 2013 at 1:36 AM, Martin Jansa <martin.jansa@gmail.com<javascript:;>>
> wrote:
> > > On Sun, Jan 06, 2013 at 01:12:32AM -0800, Khem Raj wrote:
> > >> Add patches to let atftp serve huge ramdisks >500M in size
> > >
> > > I don't see this patch
> > > http://patchwork.openembedded.org/patch/41955/
> > > in V2, can you update status on patchwork to indicate which patches are
> > > superseeded by V2 and which are still valid?
> > >
> >
> > I would suggest to actually drop all V1 patches since I have
> > reshuffled them quite a bit and take all V2 fresh
> > I have also pushed this latest series into contrib repo
> >
> >
> http://git.openembedded.org/meta-openembedded-contrib/log/?h=kraj/updates
>
> I'm looking at that now.  The only comment / request I have right now is
> about atftp.  It was on my list of stuff to update and move into
> meta-networking.  If there's no objection it that, would you mind moving
> it there at the same time?  I'd been planning to have it in
> meta-networking/recipes-daemons.


Yes that's ok but I trout of doing the move as a separate step which does
not have other changes
For ease of surfing the history in future. It's not only atftpd but there
are move recipes that need to
Move into this layer


>
> Thanks,
> -J.
>
> >
> >
> > > Thanks
> > >
> > >>
> > >> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > >> ---
> > >>  .../atftp/{atftp_0.7.bb => atftp_git.bb}           |   18 +--
> > >>  ...tpd-0.7_circumvent_tftp_size_restrictions.patch |  158
> ++++++++++++++++++++
> > >>  .../atftpd-0.7_unprotected_assignments_crash.patch |  145
> ++++++++++++++++++
> > >>  3 files changed, 311 insertions(+), 10 deletions(-)
> > >>  rename meta-oe/recipes-extended/atftp/{atftp_0.7.bb => atftp_git.bb}
> (59%)
> > >>  create mode 100644
> meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch
> > >>  create mode 100644
> meta-oe/recipes-extended/atftp/files/atftpd-0.7_unprotected_assignments_crash.patch
> > >>
> > >> diff --git a/meta-oe/recipes-extended/atftp/atftp_0.7.bbb/meta-oe/recipes-extended/atftp/
> atftp_git.bb
> > >> similarity index 59%
> > >> rename from meta-oe/recipes-extended/atftp/atftp_0.7.bb
> > >> rename to meta-oe/recipes-extended/atftp/atftp_git.bb
> > >> index ff1e11d..774dd68 100644
> > >> --- a/meta-oe/recipes-extended/atftp/atftp_0.7.bb
> > >> +++ b/meta-oe/recipes-extended/atftp/atftp_git.bb
> > >> @@ -3,13 +3,16 @@ SECTION = "network"
> > >>  HOMEPAGE = "http://packages.debian.org/atftp"
> > >>  LICENSE = "GPLv2"
> > >>  LIC_FILES_CHKSUM =
> "file://LICENSE;md5=94d55d512a9ba36caa9b7df079bae19f"
> > >> -PR = "r4"
> > >> +PV = "0.7.1+git${SRCPV}"
> > >>
> > >> -SRC_URI =
> "${DEBIAN_MIRROR}/main/a/atftp/atftp_${PV}.dfsg.orig.tar.gz;name=archive \
> > >> -
> ${DEBIAN_MIRROR}/main/a/atftp/atftp_${PV}.dfsg-11.diff.gz;name=patch \
> > >> -           file://atftpd.init"
> > >> +SRCREV = "be3291a18c069ae23a124ffdc56d64a5ff0bbec7"
> > >>
> > >> -S = "${WORKDIR}/atftp-${PV}.dfsg"
> > >> +SRC_URI = "git://
> atftp.git.sourceforge.net/gitroot/atftp/atftp;protocol=git \
> > >> +           file://atftpd-0.7_circumvent_tftp_size_restrictions.patch
> \
> > >> +           file://atftpd-0.7_unprotected_assignments_crash.patch \
> > >> +           file://atftpd.init \
> > >> +          "
> > >> +S = "${WORKDIR}/git"
> > >>
> > >>  inherit autotools update-rc.d useradd
> > >>
> > >> @@ -35,8 +38,3 @@ PACKAGES =+ "atftpd"
> > >>  FILES_${PN} = "${bindir}/*"
> > >>
> > >>  FILES_${PN}d = "${sbindir}/* ${sysconfdir}/init.d/* /srv/tftp"
> > >> -
> > >> -SRC_URI[archive.md5sum] = "aa269044a6f992eca78fee2f6119643c"
> > >> -SRC_URI[archive.sha256sum] =
> "18815f5b67290fac087c6b9da28dfa5e0feb722096f5c5de52e59b46026da559"
> > >> -SRC_URI[patch.md5sum] = "1636f199bf32c754a7bf34a5c647d138"
> > >> -SRC_URI[patch.sha256sum] =
> "0df33f6c09c2b2de58a84d7bb757844fc9538cd4d6c8d9c463da5270ebc2e41d"
> > >> diff --git
> a/meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch
> b/meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch
> > >> new file mode 100644
> > >> index 0000000..9aeb351
> > >> --- /dev/null
> -Joe MacDonald.
> :wq
>


^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [meta-oe][PATCH V2 09/25] atftp: Upgrade to latest from git
  2013-01-07 16:01         ` Khem Raj
@ 2013-01-07 16:04           ` Joe MacDonald
  0 siblings, 0 replies; 40+ messages in thread
From: Joe MacDonald @ 2013-01-07 16:04 UTC (permalink / raw)
  To: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 5155 bytes --]

[Re: [oe] [meta-oe][PATCH V2 09/25] atftp: Upgrade to latest from git] On 13.01.07 (Mon 08:01) Khem Raj wrote:

> On Monday, January 7, 2013, Joe MacDonald wrote:
> 
> > Hi Khem,
> >
> > [Re: [oe] [meta-oe][PATCH V2 09/25] atftp: Upgrade to latest from git] On
> > 13.01.06 (Sun 17:23) Khem Raj wrote:
> >
> > > On Sun, Jan 6, 2013 at 1:36 AM, Martin Jansa <martin.jansa@gmail.com<javascript:;>>
> > wrote:
> > > > On Sun, Jan 06, 2013 at 01:12:32AM -0800, Khem Raj wrote:
> > > >> Add patches to let atftp serve huge ramdisks >500M in size
> > > >
> > > > I don't see this patch
> > > > http://patchwork.openembedded.org/patch/41955/
> > > > in V2, can you update status on patchwork to indicate which patches are
> > > > superseeded by V2 and which are still valid?
> > > >
> > >
> > > I would suggest to actually drop all V1 patches since I have
> > > reshuffled them quite a bit and take all V2 fresh
> > > I have also pushed this latest series into contrib repo
> > >
> > >
> > http://git.openembedded.org/meta-openembedded-contrib/log/?h=kraj/updates
> >
> > I'm looking at that now.  The only comment / request I have right now is
> > about atftp.  It was on my list of stuff to update and move into
> > meta-networking.  If there's no objection it that, would you mind moving
> > it there at the same time?  I'd been planning to have it in
> > meta-networking/recipes-daemons.
> 
> 
> Yes that's ok but I trout of doing the move as a separate step which does
> not have other changes
> For ease of surfing the history in future. It's not only atftpd but there
> are move recipes that need to
> Move into this layer

Okay, that seems reasonable to me.

-J.

> 
> 
> >
> > Thanks,
> > -J.
> >
> > >
> > >
> > > > Thanks
> > > >
> > > >>
> > > >> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > > >> ---
> > > >>  .../atftp/{atftp_0.7.bb => atftp_git.bb}           |   18 +--
> > > >>  ...tpd-0.7_circumvent_tftp_size_restrictions.patch |  158
> > ++++++++++++++++++++
> > > >>  .../atftpd-0.7_unprotected_assignments_crash.patch |  145
> > ++++++++++++++++++
> > > >>  3 files changed, 311 insertions(+), 10 deletions(-)
> > > >>  rename meta-oe/recipes-extended/atftp/{atftp_0.7.bb => atftp_git.bb}
> > (59%)
> > > >>  create mode 100644
> > meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch
> > > >>  create mode 100644
> > meta-oe/recipes-extended/atftp/files/atftpd-0.7_unprotected_assignments_crash.patch
> > > >>
> > > >> diff --git a/meta-oe/recipes-extended/atftp/atftp_0.7.bbb/meta-oe/recipes-extended/atftp/
> > atftp_git.bb
> > > >> similarity index 59%
> > > >> rename from meta-oe/recipes-extended/atftp/atftp_0.7.bb
> > > >> rename to meta-oe/recipes-extended/atftp/atftp_git.bb
> > > >> index ff1e11d..774dd68 100644
> > > >> --- a/meta-oe/recipes-extended/atftp/atftp_0.7.bb
> > > >> +++ b/meta-oe/recipes-extended/atftp/atftp_git.bb
> > > >> @@ -3,13 +3,16 @@ SECTION = "network"
> > > >>  HOMEPAGE = "http://packages.debian.org/atftp"
> > > >>  LICENSE = "GPLv2"
> > > >>  LIC_FILES_CHKSUM =
> > "file://LICENSE;md5=94d55d512a9ba36caa9b7df079bae19f"
> > > >> -PR = "r4"
> > > >> +PV = "0.7.1+git${SRCPV}"
> > > >>
> > > >> -SRC_URI =
> > "${DEBIAN_MIRROR}/main/a/atftp/atftp_${PV}.dfsg.orig.tar.gz;name=archive \
> > > >> -
> > ${DEBIAN_MIRROR}/main/a/atftp/atftp_${PV}.dfsg-11.diff.gz;name=patch \
> > > >> -           file://atftpd.init"
> > > >> +SRCREV = "be3291a18c069ae23a124ffdc56d64a5ff0bbec7"
> > > >>
> > > >> -S = "${WORKDIR}/atftp-${PV}.dfsg"
> > > >> +SRC_URI = "git://
> > atftp.git.sourceforge.net/gitroot/atftp/atftp;protocol=git \
> > > >> +           file://atftpd-0.7_circumvent_tftp_size_restrictions.patch
> > \
> > > >> +           file://atftpd-0.7_unprotected_assignments_crash.patch \
> > > >> +           file://atftpd.init \
> > > >> +          "
> > > >> +S = "${WORKDIR}/git"
> > > >>
> > > >>  inherit autotools update-rc.d useradd
> > > >>
> > > >> @@ -35,8 +38,3 @@ PACKAGES =+ "atftpd"
> > > >>  FILES_${PN} = "${bindir}/*"
> > > >>
> > > >>  FILES_${PN}d = "${sbindir}/* ${sysconfdir}/init.d/* /srv/tftp"
> > > >> -
> > > >> -SRC_URI[archive.md5sum] = "aa269044a6f992eca78fee2f6119643c"
> > > >> -SRC_URI[archive.sha256sum] =
> > "18815f5b67290fac087c6b9da28dfa5e0feb722096f5c5de52e59b46026da559"
> > > >> -SRC_URI[patch.md5sum] = "1636f199bf32c754a7bf34a5c647d138"
> > > >> -SRC_URI[patch.sha256sum] =
> > "0df33f6c09c2b2de58a84d7bb757844fc9538cd4d6c8d9c463da5270ebc2e41d"
> > > >> diff --git
> > a/meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch
> > b/meta-oe/recipes-extended/atftp/files/atftpd-0.7_circumvent_tftp_size_restrictions.patch
> > > >> new file mode 100644
> > > >> index 0000000..9aeb351
> > > >> --- /dev/null
> > -Joe MacDonald.
> > :wq
> >
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel

-- 
-Joe MacDonald.
:wq

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [meta-oe][PATCH V2 13/25] concurrencykit: Add recipe for latest from git
  2013-01-06  9:12 ` [meta-oe][PATCH V2 13/25] concurrencykit: Add recipe for latest from git Khem Raj
@ 2013-01-07 18:15   ` Martin Jansa
  2013-01-07 21:58     ` Khem Raj
  0 siblings, 1 reply; 40+ messages in thread
From: Martin Jansa @ 2013-01-07 18:15 UTC (permalink / raw)
  To: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 5633 bytes --]

On Sun, Jan 06, 2013 at 01:12:36AM -0800, Khem Raj wrote:
> Provides concurrency primitives
> 
> Signed-off-by: Khem Raj <raj.khem@gmail.com>

Fails to build for qemuarm:

ERROR: Function failed: do_configure (see /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/concurrencykit/git-r0/temp/log.do_configure.30852 for further information)
ERROR: Logfile of failure stored in: /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/concurrencykit/git-r0/temp/log.do_configure.30852
Log data follows:
| DEBUG: Executing python function sysroot_cleansstate
| DEBUG: Python function sysroot_cleansstate finished
| DEBUG: SITE files ['endian-little', 'bit-32', 'arm-common', 'common-linux', 'common-glibc', 'arm-linux', 'arm-linux-gnueabi', 'common']
| DEBUG: Executing shell function autotools_preconfigure
| DEBUG: Shell function autotools_preconfigure finished
| DEBUG: Executing shell function do_configure
| Detecting operating system.......success [linux]
| failed  [unsupported]
| ERROR: Function failed: do_configure (see /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/concurrencykit/git-r0/temp/log.do_configure.30852 for further information)
NOTE: recipe concurrencykit-git-r0: task do_configure: Failed
ERROR: Task 8089 (/home/jenkins/oe/shr-core-branches/shr-core/meta-openembedded/meta-oe/recipes-devtools/concurrencykit/concurrencykit_git.bb, do_configure) failed with exit code '1'

> ---
>  .../concurrencykit/concurrencykit/cross.patch      |   69 ++++++++++++++++++++
>  .../concurrencykit/concurrencykit_git.bb           |   38 +++++++++++
>  2 files changed, 107 insertions(+)
>  create mode 100644 meta-oe/recipes-devtools/concurrencykit/concurrencykit/cross.patch
>  create mode 100644 meta-oe/recipes-devtools/concurrencykit/concurrencykit_git.bb
> 
> diff --git a/meta-oe/recipes-devtools/concurrencykit/concurrencykit/cross.patch b/meta-oe/recipes-devtools/concurrencykit/concurrencykit/cross.patch
> new file mode 100644
> index 0000000..38504fe
> --- /dev/null
> +++ b/meta-oe/recipes-devtools/concurrencykit/concurrencykit/cross.patch
> @@ -0,0 +1,69 @@
> +Index: git/configure
> +===================================================================
> +--- git.orig/configure	2012-11-19 21:07:51.917429465 -0800
> ++++ git/configure	2012-11-19 21:13:19.337437278 -0800
> +@@ -275,8 +275,11 @@
> + assert "$SYSTEM" "$SYSTEM" "unsupported"
> + 
> + CORES=${CORES:-${DCORES}}
> +-printf "Detecting machine architecture..."
> +-PLATFORM=`uname -m 2> /dev/null`
> ++if test -z "$PLATFORM"; then
> ++	printf "Detecting machine architecture..."
> ++	PLATFORM=`uname -m 2> /dev/null`
> ++fi
> ++
> + case $PLATFORM in
> + 	"macppc"|"Power Macintosh"|"powerpc")
> + 		MM="${MM:-"CK_MD_RMO"}"
> +@@ -439,14 +442,18 @@
> + 	GZIP_SUFFIX=".gz"
> + fi
> + 
> +-printf "Finding suitable compiler........"
> +-CC=`pathsearch "${CC:-cc}"`
> +-if test -z "$CC" -o ! -x "$CC"; then
> +-	CC=`pathsearch "${CC:-gcc}"`
> ++if test -z "$CC"; then
> ++	printf "Finding suitable compiler........"
> ++	CC=`pathsearch "${CC:-cc}"`
> ++	if test -z "$CC" -o ! -x "$CC"; then
> ++		CC=`pathsearch "${CC:-gcc}"`
> ++	fi
> + fi
> + assert "$CC" "not found"
> + 
> +-cat << EOF > .1.c
> ++if test -z "$COMPILER"; then
> ++
> ++	cat << EOF > .1.c
> + #include <stdio.h>
> + int main(void) {
> + #if defined(__GNUC__) && (__GNUC__ >= 4)
> +@@ -460,16 +467,16 @@
> + #endif
> + }
> + EOF
> +-
> +-$CC -o .1 .1.c
> +-COMPILER=`./.1`
> +-r=$?
> +-rm -f .1.c .1
> +-
> +-if test "$r" -ne 0; then
> +-	assert "" "update compiler"
> +-else
> +-	echo "success [$CC]"
> ++	$CC -o .1 .1.c
> ++	COMPILER=`./.1`
> ++	r=$?
> ++	rm -f .1.c .1
> ++
> ++	if test "$r" -ne 0; then
> ++		assert "" "update compiler"
> ++	else
> ++		echo "success [$CC]"
> ++	fi
> + fi
> + 
> + if test "$COMPILER" = "suncc"; then
> diff --git a/meta-oe/recipes-devtools/concurrencykit/concurrencykit_git.bb b/meta-oe/recipes-devtools/concurrencykit/concurrencykit_git.bb
> new file mode 100644
> index 0000000..463e7e4
> --- /dev/null
> +++ b/meta-oe/recipes-devtools/concurrencykit/concurrencykit_git.bb
> @@ -0,0 +1,38 @@
> +DESCRIPTION = "Concurrency Kit provides a plethora of concurrency primitives, \
> +safe memory reclamation mechanisms and non-blocking data structures \
> +designed to aid in the design and implementation of high performance \
> +concurrent systems."
> +
> +LICENSE = "BSD & Apache-2.0"
> +HOMEPAGE = "http://concurrencykit.org"
> +SECTION = "base"
> +
> +SRCREV = "900d203aa9e41288545368ea40da0bee89f7907f"
> +LIC_FILES_CHKSUM = "file://LICENSE;md5=f12611e65e064515ce264249b2bdea98"
> +SRC_URI = "git://git.concurrencykit.org/ck.git;protocol=git \
> +           file://cross.patch \
> +          "
> +
> +S = "${WORKDIR}/git"
> +
> +inherit autotools
> +
> +PLAT_powerpc64 = "ppc64"
> +PLAT ?= "${HOST_ARCH}"
> +
> +do_configure () {
> +	export PLATFORM=${PLAT}
> +	export COMPILER='gcc'
> +	${S}/configure \
> +	--prefix=${prefix} \
> +	--includedir=${includedir} \
> +	--libdir=${libdir} \
> +}
> +
> +do_compile () {
> +	oe_runmake
> +}
> +
> +do_install () {
> +	oe_runmake 'DESTDIR=${D}' install
> +}
> -- 
> 1.7.9.5
> 
> 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [meta-oe][PATCH V2 13/25] concurrencykit: Add recipe for latest from git
  2013-01-07 18:15   ` Martin Jansa
@ 2013-01-07 21:58     ` Khem Raj
  2013-01-08 17:33       ` Khem Raj
  0 siblings, 1 reply; 40+ messages in thread
From: Khem Raj @ 2013-01-07 21:58 UTC (permalink / raw)
  To: openembedded-devel

On Mon, Jan 7, 2013 at 10:15 AM, Martin Jansa <martin.jansa@gmail.com> wrote:
>
> | Detecting operating system.......success [linux]
> | failed  [unsupported]

it indeed is unsupported for anything other than ppc,ppc64,i386,x86_64
as far as OE is concerned atm
I will add proper supported host regexp for this in V3 and push it to the tree



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [meta-networking][PATCH V2 03/25] autofs: Add recipes for 5.0.7
  2013-01-07 15:58   ` Joe MacDonald
@ 2013-01-07 22:48     ` Khem Raj
  2013-01-08 17:33       ` Khem Raj
  0 siblings, 1 reply; 40+ messages in thread
From: Khem Raj @ 2013-01-07 22:48 UTC (permalink / raw)
  To: openembedded-devel

On Mon, Jan 7, 2013 at 7:58 AM, Joe MacDonald
<Joe.MacDonald@windriver.com> wrote:
> Two simple questions on this.  Therefore, aggressive snipping.
>
> [[oe] [meta-networking][PATCH V2 03/25] autofs: Add recipes for 5.0.7] On 13.01.06 (Sun 01:12) Khem Raj wrote:
>
> [...]
>
>> diff --git a/meta-networking/recipes-daemons/autofs/autofs-5.0.7/libtirpc.patch b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/libtirpc.patch
>> new file mode 100644
>> index 0000000..04f52c6
>> --- /dev/null
>> +++ b/meta-networking/recipes-daemons/autofs/autofs-5.0.7/libtirpc.patch
>> @@ -0,0 +1,26 @@
>> +Index: autofs-5.0.7/aclocal.m4
>> +===================================================================
>> +--- autofs-5.0.7.orig/aclocal.m4     2012-10-28 13:17:45.504237027 -0700
>> ++++ autofs-5.0.7/aclocal.m4  2012-10-28 13:20:50.108242739 -0700
>> +@@ -403,7 +403,7 @@
>> + # save current flags
>> + af_check_libtirpc_save_cflags="$CFLAGS"
>> + af_check_libtirpc_save_ldflags="$LDFLAGS"
>> +-CFLAGS="$CFLAGS -I/usr/include/tirpc"
>> ++CFLAGS="$CFLAGS -I=/usr/include/tirpc"
>> + LDFLAGS="$LDFLAGS -ltirpc"
>> +
>> + AC_TRY_LINK(
>> +Index: autofs-5.0.7/Makefile.rules
>> +===================================================================
>> +--- autofs-5.0.7.orig/Makefile.rules 2012-10-28 13:17:45.308237022 -0700
>> ++++ autofs-5.0.7/Makefile.rules      2012-10-28 13:21:25.720242803 -0700
>> +@@ -48,7 +48,7 @@
>> + LDFLAGS += -lpthread
>> +
>> + ifdef TIRPCLIB
>> +-CFLAGS += -I/usr/include/tirpc
>> ++CFLAGS += -I=/usr/include/tirpc
>> + LDFLAGS += $(TIRPCLIB)
>> + endif
>> +
>
> Are these required?  If they're not, they're probably benign, but I
> thought the -I=<path> was an rpmbuildism that wasn't specifically
> required here.

yes they are needed. The difference between -I <path> and -I=<path> is that
compiler will append sysroot to -I=<path> whereas -I <patch> will look into
your host includes.

>
> [...]
>
>> diff --git a/meta-networking/recipes-daemons/autofs/autofs_5.0.7.bb b/meta-networking/recipes-daemons/autofs/autofs_5.0.7.bb
>> new file mode 100644
>> index 0000000..5013e5e
>> --- /dev/null
>> +++ b/meta-networking/recipes-daemons/autofs/autofs_5.0.7.bb
>> @@ -0,0 +1,71 @@
>> +DESCRIPTION = "Kernel based automounter for linux."
>> +SECTION = "base"
>> +LICENSE = "GPL-2.0"
>> +LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3"
>> +
>> +DEPENDS += "openldap libtirpc flex-native bison-native"
>> +
>> +inherit autotools systemd
>> +
>> +SRC_URI = "${KERNELORG_MIRROR}/linux/daemons/autofs/v5/autofs-${PV}.tar.bz2 \
>> +           file://autofs-5.0.7-fix-nobind-sun-escaped-map-entries.patch \
>> +           file://autofs-5.0.7-fix-use-cache-entry-after-free-mistake.patch \
>> +           file://autofs-5.0.7-fix-ipv6-proximity-calculation.patch \
>> +           file://autofs-5.0.7-fix-parse-buffer-initialization.patch \
>> +           file://autofs-5.0.7-fix-typo-in-automount-8.patch \
>> +           file://autofs-5.0.7-include-usage-in-usage-message.patch \
>> +           file://autofs-5.0.7-dont-wait-forever-to-restart.patch \
>> +           file://autofs-5.0.7-add-timeout-option-description-to-man-page.patch \
>> +           file://autofs-5.0.7-fix-null-map-entry-order-handling.patch \
>> +           file://autofs-5.0.7-make-description-of-default-MOUNT_WAIT-setting-clear.patch \
>> +           file://autofs-5.0.7-configure-in-allow-cross-compilation.patch \
>> +           file://autofs-5.0.7-README-update-mailing-list-subscription-info.patch \
>> +           file://autofs-5.0.7-allow-non-root-user-to-check-status.patch \
>> +           file://autofs-5.0.7-configure-allow-cross-compilation-update.patch \
>> +           file://autofs-5.0.6-fix-recursive-mount-deadlock.patch \
>> +           file://autofs-5.0.6-increase-file-map-read-buffer-size.patch \
>> +           file://autofs-5.0.7-handle-new-location-of-systemd.patch \
>> +           file://Makefile.rules-cross.patch \
>> +           file://no-bash.patch \
>> +           file://cross.patch \
>> +           file://libtirpc.patch \
>> +           file://libtirpc-name-clash-backout.patch \
>> +          "
>> +
>> +SRC_URI[md5sum] = "bc46838dece83c02d800ff144ed9f431"
>> +SRC_URI[sha256sum] = "08c4304d8076dc80c14df559bc5fd821b67ef3457b245f61068bd053d8f94ccc"
>> +
>> +inherit update-rc.d
>> +
>> +INITSCRIPT_NAME = "autofs"
>> +INITSCRIPT_PARAMS = "defaults"
>> +
>> +SYSTEMD_PACKAGES = "${PN}-systemd"
>> +SYSTEMD_SERVICE = "autofs.service"
>> +
>> +# FIXME: modules/Makefile has crappy rules that don't obey LDFLAGS
>> +CFLAGS += "${LDFLAGS}"
>> +
>> +EXTRA_OEMAKE = "DONTSTRIP=1"
>> +EXTRA_OECONF += "--with-systemd --disable-mount-locking \
>> +                --enable-ignore-busy --with-openldap=no \
>> +                --with-sasl=no --with-libtirpc=yes \
>> +                --with-path=${STAGING_BINDIR_NATIVE} \
>> +                "
>> +CACHED_CONFIGUREVARS = "ac_cv_path_RANLIB=${RANLIB} \
>> +                        ac_cv_path_RPCGEN=rpcgen \
>> +                       "
>> +
>> +do_configure_prepend () {
>> +        if [ ! -e acinclude.m4 ]; then
>> +                cp aclocal.m4 acinclude.m4
>> +        fi
>> +}
>> +
>> +#do_install () {
>> +#        install -d ${D}${mandir}/man5 ${D}${mandir}/man8 \
>> +#                   ${D}${sbindir}
>> +#        oe_runmake 'INSTALLROOT=${D}' install
>> +#}
>
> If do_install() is dead, any harm in removing it from the recipe
> entirely?

Fair enough. I will remove it in V3 and push it to branch

>
>> +
>> +INSANE_SKIP_${PN} = "dev-so"
> --
> -Joe MacDonald.
> :wq
>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
>



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [meta-oe][PATCH V2 13/25] concurrencykit: Add recipe for latest from git
  2013-01-07 21:58     ` Khem Raj
@ 2013-01-08 17:33       ` Khem Raj
  0 siblings, 0 replies; 40+ messages in thread
From: Khem Raj @ 2013-01-08 17:33 UTC (permalink / raw)
  To: openembedded-devel

On Mon, Jan 7, 2013 at 1:58 PM, Khem Raj <raj.khem@gmail.com> wrote:
> On Mon, Jan 7, 2013 at 10:15 AM, Martin Jansa <martin.jansa@gmail.com> wrote:
>>
>> | Detecting operating system.......success [linux]
>> | failed  [unsupported]
>
> it indeed is unsupported for anything other than ppc,ppc64,i386,x86_64
> as far as OE is concerned atm
> I will add proper supported host regexp for this in V3 and push it to the tree

I have now pushed a V3 with proper compatible host regexp into the pull branch



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [meta-networking][PATCH V2 03/25] autofs: Add recipes for 5.0.7
  2013-01-07 22:48     ` Khem Raj
@ 2013-01-08 17:33       ` Khem Raj
  2013-01-08 19:03         ` Joe MacDonald
  0 siblings, 1 reply; 40+ messages in thread
From: Khem Raj @ 2013-01-08 17:33 UTC (permalink / raw)
  To: openembedded-devel

On Mon, Jan 7, 2013 at 2:48 PM, Khem Raj <raj.khem@gmail.com> wrote:
> Fair enough. I will remove it in V3 and push it to branch

I have now pushed a V3 into the pull branch where the commented do_install
is removed.



^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [meta-networking][PATCH V2 03/25] autofs: Add recipes for 5.0.7
  2013-01-08 17:33       ` Khem Raj
@ 2013-01-08 19:03         ` Joe MacDonald
  2013-01-08 22:19           ` Martin Jansa
  0 siblings, 1 reply; 40+ messages in thread
From: Joe MacDonald @ 2013-01-08 19:03 UTC (permalink / raw)
  To: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 424 bytes --]

[Re: [oe] [meta-networking][PATCH V2 03/25] autofs: Add recipes for 5.0.7] On 13.01.08 (Tue 09:33) Khem Raj wrote:

> On Mon, Jan 7, 2013 at 2:48 PM, Khem Raj <raj.khem@gmail.com> wrote:
> > Fair enough. I will remove it in V3 and push it to branch
> 
> I have now pushed a V3 into the pull branch where the commented do_install
> is removed.

The meta-networking bits look good to me.

-- 
-Joe MacDonald.
:wq

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [meta-networking][PATCH V2 03/25] autofs: Add recipes for 5.0.7
  2013-01-08 19:03         ` Joe MacDonald
@ 2013-01-08 22:19           ` Martin Jansa
  2013-01-08 22:22             ` Joe MacDonald
  0 siblings, 1 reply; 40+ messages in thread
From: Martin Jansa @ 2013-01-08 22:19 UTC (permalink / raw)
  To: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 616 bytes --]

On Tue, Jan 08, 2013 at 02:03:01PM -0500, Joe MacDonald wrote:
> [Re: [oe] [meta-networking][PATCH V2 03/25] autofs: Add recipes for 5.0.7] On 13.01.08 (Tue 09:33) Khem Raj wrote:
> 
> > On Mon, Jan 7, 2013 at 2:48 PM, Khem Raj <raj.khem@gmail.com> wrote:
> > > Fair enough. I will remove it in V3 and push it to branch
> > 
> > I have now pushed a V3 into the pull branch where the commented do_install
> > is removed.
> 
> The meta-networking bits look good to me.

Will you merge them, or should I merge whole branch together?

Cheers,

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [meta-networking][PATCH V2 03/25] autofs: Add recipes for 5.0.7
  2013-01-08 22:19           ` Martin Jansa
@ 2013-01-08 22:22             ` Joe MacDonald
  0 siblings, 0 replies; 40+ messages in thread
From: Joe MacDonald @ 2013-01-08 22:22 UTC (permalink / raw)
  To: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 887 bytes --]

[Re: [oe] [meta-networking][PATCH V2 03/25] autofs: Add recipes for 5.0.7] On 13.01.08 (Tue 23:19) Martin Jansa wrote:

> On Tue, Jan 08, 2013 at 02:03:01PM -0500, Joe MacDonald wrote:
> > [Re: [oe] [meta-networking][PATCH V2 03/25] autofs: Add recipes for 5.0.7] On 13.01.08 (Tue 09:33) Khem Raj wrote:
> > 
> > > On Mon, Jan 7, 2013 at 2:48 PM, Khem Raj <raj.khem@gmail.com> wrote:
> > > > Fair enough. I will remove it in V3 and push it to branch
> > > 
> > > I have now pushed a V3 into the pull branch where the commented do_install
> > > is removed.
> > 
> > The meta-networking bits look good to me.
> 
> Will you merge them, or should I merge whole branch together?

It's probably cleaner if one person does the merge, so if you don't mind
and you're going to handle the others, I'm happy to have you take point,
Martin.

Thanks.

-- 
-Joe MacDonald.
:wq

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]

^ permalink raw reply	[flat|nested] 40+ messages in thread

* Re: [meta-systemd][PATCH V2 18/25] systemd: Fix build when base_libdir is not /lib
  2013-01-06  9:12 ` [meta-systemd][PATCH V2 18/25] systemd: Fix build when base_libdir is not /lib Khem Raj
@ 2013-01-09 10:18   ` Martin Jansa
  0 siblings, 0 replies; 40+ messages in thread
From: Martin Jansa @ 2013-01-09 10:18 UTC (permalink / raw)
  To: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 9060 bytes --]

On Sun, Jan 06, 2013 at 01:12:41AM -0800, Khem Raj wrote:
> we were carrying a wrong patch to fix rootlibdir
> to adapt systemd to OE's notion of base_libdir
> but thats not right and the units dont get initialised
> properly when we have base_libdir which is not /lib
> 
> This patch fixes the use of base_libdir where
> it should have been catering to notions of systemd/udev
> for putting unit files and init scripts in /lib
> and not in base_libdir
> 
> It also ignores the lib32-* packages so that systemd
> build works for multilib enabled systems.
> 
> Adapt to nativesdk renaming

Whole V3 merged today, bitbake world has some new build issues but none
of them is caused by those changes.

Thanks khem!

Please double check that your systemd changes are also merged to oe-core
at some point (I don't think "[OE-core] [PATCH 00/21][RFC v3] systemd
Integration" have them all now).

Cheers,

> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  meta-systemd/classes/systemd.bbclass             |    7 +-
>  meta-systemd/recipes-core/systemd/systemd_git.bb |   77 ++++++++++++----------
>  2 files changed, 45 insertions(+), 39 deletions(-)
> 
> diff --git a/meta-systemd/classes/systemd.bbclass b/meta-systemd/classes/systemd.bbclass
> index f26c6d1..9582492 100644
> --- a/meta-systemd/classes/systemd.bbclass
> +++ b/meta-systemd/classes/systemd.bbclass
> @@ -70,7 +70,8 @@ def systemd_after_parse(d):
>      bpn = d.getVar('BPN', 1)
>      if bpn + "-native" != d.getVar('PN', 1) and \
>              bpn + "-cross" != d.getVar('PN', 1) and \
> -            bpn + "-nativesdk" != d.getVar('PN', 1):
> +            not d.getVar('MLPREFIX', 1) and \
> +            "nativesdk-" + bpn != d.getVar('PN', 1):
>          systemd_check_vars()
>          for pkg_systemd in d.getVar('SYSTEMD_PACKAGES', 1).split():
>              systemd_create_package(pkg_systemd)
> @@ -158,8 +159,8 @@ python populate_packages_prepend () {
>      def systemd_check_services():
>          base_libdir = d.getVar('base_libdir', 1)
>          searchpaths = '/etc/systemd/system/' + ' '
> -        searchpaths += d.getVar('base_libdir', 1) + '/systemd/system/' + ' '
> -        searchpaths += d.getVar('libdir', 1) + '/systemd/system/' + ' '
> +        searchpaths += '/lib/systemd/system/' + ' '
> +        searchpaths += '/usr/lib/systemd/system/' + ' '
>          systemd_packages = d.getVar('SYSTEMD_PACKAGES', 1)
>          has_exactly_one_service = len(systemd_packages.split()) == 1
>          if has_exactly_one_service:
> diff --git a/meta-systemd/recipes-core/systemd/systemd_git.bb b/meta-systemd/recipes-core/systemd/systemd_git.bb
> index 7fa7ac6..5722d35 100644
> --- a/meta-systemd/recipes-core/systemd/systemd_git.bb
> +++ b/meta-systemd/recipes-core/systemd/systemd_git.bb
> @@ -90,6 +90,7 @@ do_configure_prepend() {
>  
>  do_install() {
>  	autotools_do_install
> +	install -d ${D}${base_sbindir}
>  	# provided by a seperate recipe
>  	rm ${D}${systemd_unitdir}/system/serial-getty* -f
>  
> @@ -98,7 +99,10 @@ do_install() {
>  
>  	# create dir for journal
>  	install -d ${D}${localstatedir}/log/journal
> -
> +	# udevd is needed in initramfs which was provided by udev in OE-Core
> +	# so we need to provide that otherwise it pulls in both systemd and
> +	# udev
> +	ln -s ${systemd_unitdir}/systemd-udevd ${D}${base_sbindir}/udevd
>  	# create machine-id
>  	# 20:12 < mezcalero> koen: you have three options: a) run systemd-machine-id-setup at install time, b) have / read-only and an empty file there (for stateless) and c) boot with / writable
>  	touch ${D}${sysconfdir}/machine-id
> @@ -159,24 +163,24 @@ FILES_${PN} = " ${base_bindir}/* \
>                  ${sysconfdir}/init.d/README \
>                  ${systemd_unitdir}/* \
>                  ${systemd_unitdir}/system/* \
> -                ${base_libdir}/udev/rules.d/99-systemd.rules \
> +                /lib/udev/rules.d/99-systemd.rules \
>                  ${base_libdir}/security/*.so \
>                  /cgroup \
>                  ${bindir}/systemd* \
>                  ${bindir}/localectl \
>                  ${bindir}/hostnamectl \
>                  ${bindir}/timedatectl \
> -                ${libdir}/tmpfiles.d/*.conf \
> -                ${libdir}/systemd \
> -                ${libdir}/binfmt.d \
> -                ${libdir}/modules-load.d \
> -                ${libdir}/sysctl.d \
> +                ${exec_prefix}/lib/tmpfiles.d/*.conf \
> +                ${exec_prefix}/lib/systemd \
> +                ${exec_prefix}/lib/binfmt.d \
> +                ${exec_prefix}/lib/modules-load.d \
> +                ${exec_prefix}/lib/sysctl.d \
>                  ${localstatedir} \
>                  ${libexecdir} \
> -                ${base_libdir}/udev/rules.d/70-uaccess.rules \
> -                ${base_libdir}/udev/rules.d/71-seat.rules \
> -                ${base_libdir}/udev/rules.d/73-seat-late.rules \
> -                ${base_libdir}/udev/rules.d/99-systemd.rules \
> +                /lib/udev/rules.d/70-uaccess.rules \
> +                /lib/udev/rules.d/71-seat.rules \
> +                /lib/udev/rules.d/73-seat-late.rules \
> +                /lib/udev/rules.d/99-systemd.rules \
>                 "
>  FILES_${PN}-dbg += "${systemd_unitdir}/.debug ${systemd_unitdir}/*/.debug ${base_libdir}/security/.debug/ ${PYTHON_SITEPACKAGES_DIR}/systemd/.debug/"
>  FILES_${PN}-dev += "${base_libdir}/security/*.la ${datadir}/dbus-1/interfaces/ ${sysconfdir}/rpm/macros.systemd ${PYTHON_SITEPACKAGES_DIR}/systemd/*.la"
> @@ -200,42 +204,43 @@ RRECOMMENDS_${PN} += "systemd-serialgetty \
>  
>  PACKAGES =+ "udev-dbg udev udev-consolekit udev-utils udev-systemd"
>  
> -FILES_udev-dbg += "${base_libdir}/udev/.debug"
> +FILES_udev-dbg += "/lib/udev/.debug"
>  
>  RDEPENDS_udev += "udev-utils"
>  RPROVIDES_udev = "hotplug"
>  
> -FILES_udev += "${base_libdir}/udev/udevd \
> -               ${base_libdir}/systemd/systemd-udevd \
> -               ${base_libdir}/udev/accelerometer \
> -               ${base_libdir}/udev/ata_id \
> -               ${base_libdir}/udev/cdrom_id \
> -               ${base_libdir}/udev/collect \
> -               ${base_libdir}/udev/findkeyboards \
> -               ${base_libdir}/udev/keyboard-force-release.sh \
> -               ${base_libdir}/udev/keymap \
> -               ${base_libdir}/udev/mtd_probe \
> -               ${base_libdir}/udev/scsi_id \
> -               ${base_libdir}/udev/v4l_id \
> -               ${base_libdir}/udev/keymaps \
> -               ${base_libdir}/udev/rules.d/4*.rules \
> -               ${base_libdir}/udev/rules.d/5*.rules \
> -               ${base_libdir}/udev/rules.d/6*.rules \
> -               ${base_libdir}/udev/rules.d/70-power-switch.rules \
> -               ${base_libdir}/udev/rules.d/75*.rules \
> -               ${base_libdir}/udev/rules.d/78*.rules \
> -               ${base_libdir}/udev/rules.d/8*.rules \
> -               ${base_libdir}/udev/rules.d/95*.rules \
> -               ${base_libdir}/udev/hwdb.d \
> +FILES_udev += "${base_sbindir}/udevd \
> +               /lib/udev/udevd \
> +               /lib/systemd/systemd-udevd \
> +               /lib/udev/accelerometer \
> +               /lib/udev/ata_id \
> +               /lib/udev/cdrom_id \
> +               /lib/udev/collect \
> +               /lib/udev/findkeyboards \
> +               /lib/udev/keyboard-force-release.sh \
> +               /lib/udev/keymap \
> +               /lib/udev/mtd_probe \
> +               /lib/udev/scsi_id \
> +               /lib/udev/v4l_id \
> +               /lib/udev/keymaps \
> +               /lib/udev/rules.d/4*.rules \
> +               /lib/udev/rules.d/5*.rules \
> +               /lib/udev/rules.d/6*.rules \
> +               /lib/udev/rules.d/70-power-switch.rules \
> +               /lib/udev/rules.d/75*.rules \
> +               /lib/udev/rules.d/78*.rules \
> +               /lib/udev/rules.d/8*.rules \
> +               /lib/udev/rules.d/95*.rules \
> +               /lib/udev/hwdb.d \
>                 ${sysconfdir}/udev \
>                "
>  
> -FILES_udev-consolekit += "${libdir}/ConsoleKit"
> +FILES_udev-consolekit += "/lib/ConsoleKit"
>  RDEPENDS_udev-consolekit += "${@base_contains('DISTRO_FEATURES', 'x11', 'consolekit', '', d)}"
>  
>  FILES_udev-utils = "${bindir}/udevadm"
>  
> -FILES_udev-systemd = "${base_libdir}/systemd/system/*udev* ${base_libdir}/systemd/system/*.wants/*udev*"
> +FILES_udev-systemd = "${systemd_unitdir}/system/*udev* ${systemd_unitdir}/system/*.wants/*udev*"
>  RDEPENDS_udev-systemd = "udev"
>  
>  # TODO:
> -- 
> 1.7.9.5
> 
> 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]

^ permalink raw reply	[flat|nested] 40+ messages in thread

end of thread, other threads:[~2013-01-09 10:33 UTC | newest]

Thread overview: 40+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-01-06  9:12 [meta-networking][PATCH V2 01/25] arptables: Import recipe from OE-Classic and update to latest Khem Raj
2013-01-06  9:12 ` [meta-networking][PATCH V2 02/25] ebtables: Fix segfault by linking with no-as-needed Khem Raj
2013-01-06  9:12 ` [meta-networking][PATCH V2 03/25] autofs: Add recipes for 5.0.7 Khem Raj
2013-01-07 15:58   ` Joe MacDonald
2013-01-07 22:48     ` Khem Raj
2013-01-08 17:33       ` Khem Raj
2013-01-08 19:03         ` Joe MacDonald
2013-01-08 22:19           ` Martin Jansa
2013-01-08 22:22             ` Joe MacDonald
2013-01-06  9:12 ` [meta-networking][PATCH V2 04/25] nis: Import recipes from OE classic Khem Raj
2013-01-06  9:12 ` [meta-networking][PATCH V2 05/25] ndisc6: Forward port recipe " Khem Raj
2013-01-06  9:12 ` [meta-oe][PATCH V2 06/25] net-snmp: Use ${PN} instead of hardcoding net-snmp Khem Raj
2013-01-06  9:12 ` [meta-oe][PATCH V2 07/25] jansson_2.3.1.bb: Fix multilib use BPN in SRC_URI instead of PN Khem Raj
2013-01-06  9:12 ` [meta-oe][PATCH V2 08/25] liblockfile: Upgrade 1.06 -> 1.09 Khem Raj
2013-01-06  9:12 ` [meta-oe][PATCH V2 09/25] atftp: Upgrade to latest from git Khem Raj
2013-01-06  9:36   ` Martin Jansa
2013-01-07  1:23     ` Khem Raj
2013-01-07 15:36       ` Joe MacDonald
2013-01-07 16:01         ` Khem Raj
2013-01-07 16:04           ` Joe MacDonald
2013-01-06  9:12 ` [meta-oe][PATCH V2 10/25] tcpdump: Upgrade from 4.1.1 -> 4.3.0 Khem Raj
2013-01-06  9:12 ` [meta-oe][PATCH V2 11/25] cppunit: Upgrade recipes from 1.12.1 -> 1.13.1 Khem Raj
2013-01-06  9:12 ` [meta-oe][PATCH V2 12/25] luajit: Add recipes Khem Raj
2013-01-06  9:12 ` [meta-oe][PATCH V2 13/25] concurrencykit: Add recipe for latest from git Khem Raj
2013-01-07 18:15   ` Martin Jansa
2013-01-07 21:58     ` Khem Raj
2013-01-08 17:33       ` Khem Raj
2013-01-06  9:12 ` [meta-oe][PATCH V2 14/25] tcsh: Add recipes for package Khem Raj
2013-01-06  9:12 ` [meta-oe][PATCH V2 15/25] dmidecode: Forward port from OE-Classic Khem Raj
2013-01-06  9:12 ` [meta-oe][PATCH V2 16/25] libuio: Add recipe for version 0.2.1 Khem Raj
2013-01-06  9:12 ` [meta-oe][PATCH V2 17/25] uml-utilities: Forward port recipe from OE classic Khem Raj
2013-01-06  9:12 ` [meta-systemd][PATCH V2 18/25] systemd: Fix build when base_libdir is not /lib Khem Raj
2013-01-09 10:18   ` Martin Jansa
2013-01-06  9:12 ` [meta-systemd][PATCH V2 19/25] systemd.bbclass: Fixes for living along with multilib Khem Raj
2013-01-06  9:12 ` [meta-systemd][PATCH V2 20/25] at: Add systemd unit file Khem Raj
2013-01-06  9:12 ` [meta-systemd][PATCH V2 21/25] dhcp: Add systemd unit file for dhclient Khem Raj
2013-01-06  9:12 ` [meta-systemd][PATCH V2 22/25] nis: Add support for systemd launch of NIS services Khem Raj
2013-01-06  9:12 ` [meta-systemd][PATCH V2 23/25] rpcbind: Add systemd service unit file Khem Raj
2013-01-06  9:12 ` [meta-systemd][PATCH V2 24/25] dhclient.service: Rearrange the cmdline for dhclient Khem Raj
2013-01-06  9:12 ` [meta-systemd][PATCH V2 25/25] meta-systemd/atftpd: Adjust bbappend to match to recipe upgrade Khem Raj

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.