Bug#658384: memstat: FTBFS on hurd-i386

2012-02-04 Thread Jeremie Koenig
Hi Tanguy,

On Sat, Feb 04, 2012 at 10:58:43AM +0100, Tanguy LE CARROUR wrote:
 I'll try to see what's wrong, but any advice is welcome.

The problem is due to lstat() always returning a null size on Linux for
/proc/*/exe, so the approach described in readlink(2) cannot be applied.
You will need a reallocation loop similar to what you did for get_line().

-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#640290: xdelta: FTBFS on hurd-i386

2011-09-03 Thread Jeremie Koenig
Package: xdelta
Version: 1.1.3-9
Severity: important
Tags: patch
User: debian-h...@lists.debian.org
Usertags: hurd

Hi,

The xdelta package currently fails to build from source on the Hurd due
to test/xdeltatest.c using MAXPATHLEN. The patch below fixes this issue.

Thanks,
---
 test/xdeltatest.c |4 
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/test/xdeltatest.c b/test/xdeltatest.c
index afb278a..34416a0 100644
--- a/test/xdeltatest.c
+++ b/test/xdeltatest.c
@@ -46,6 +46,10 @@
 #include stdio.h
 #include zlib.h
 
+#ifndef MAXPATHLEN
+# define MAXPATHLEN 4096
+#endif
+
 #include xdelta.h
 
 //
-- 
1.7.5.4




-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#592684: debian-installer-utils: please don't check for /sys on Hurd

2010-08-22 Thread Jeremie Koenig
On Thu, Aug 12, 2010 at 11:49:22AM +0200, Jeremie Koenig wrote:
 On Thu, Aug 12, 2010 at 09:43:06AM +0200, Petter Reinholdtsen wrote:
  [Jeremie Koenig]
   - if [ ! -d /target/sys ]; then
   + if [ ! -d /target/sys ]  [ $(udpkg --print-os) != hurd ]; then
  
  Would it be better to look for 'sysfs' in /proc/filesystems to avoid
  hardcoding OS names there?
 
 Unfortunately, neither Hurd nor kFreeBSD have a /proc/filesystems file.
 Also, the /sys filesystem is named linsysfs on kFreeBSD.
 
 An alternative would be to check for, say, /sys/devices in the installer
 itself. Does this sound reasonable?

I have used the attached patch successfully for some time.

-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org
Index: debian-installer-utils/debian/changelog
===
--- debian-installer-utils/debian/changelog	(revision 64475)
+++ debian-installer-utils/debian/changelog	(working copy)
@@ -4,6 +4,10 @@
   * Only detect /dev/cd0 as a CD-ROM drive on GNU/kFreeBSD, to prevent
 multiple /etc/fstab entries.
 
+  [ Jeremie Koenig ]
+  * in-target: Check for /target/sys only if /sys/devices exists, to avoid
+enforcing it on systems without a sysfs (ie. Hurd). Closes: #592684.
+
  -- Aurelien Jarno aure...@debian.org  Sun, 22 Aug 2010 22:42:25 +0200
 
 debian-installer-utils (1.78) unstable; urgency=low
Index: debian-installer-utils/chroot-setup.sh
===
--- debian-installer-utils/chroot-setup.sh	(revision 64475)
+++ debian-installer-utils/chroot-setup.sh	(working copy)
@@ -10,7 +10,7 @@
 	   [ ! -d /target/proc ]; then
 		return 1
 	fi
-	if [ ! -d /target/sys ]; then
+	if [ -d /sys/devices ]  [ ! -d /target/sys ]; then
 		return 1
 	fi
 


Bug#592684: debian-installer-utils: please don't check for /sys on Hurd

2010-08-22 Thread Jeremie Koenig
On Mon, Aug 23, 2010 at 12:18:43AM +0200, Samuel Thibault wrote:
 Hello,
 
 Jeremie Koenig, le Thu 12 Aug 2010 11:49:22 +0200, a écrit :
  An alternative would be to check for, say, /sys/devices in the installer
  itself. Does this sound reasonable?
 
 So?
 
 Aurelien, could you confirm whether kFreeBSD's installer has a
 /sys/devices?

For the record:

aurel32 jkoenig: ok, will look. Note that /sys is not mounted during
the installation on kfreebsd (haven't looked at it right now)

-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#593865: busybox: please include CONFIG_FEATURE_INITRD on Hurd

2010-08-21 Thread Jeremie Koenig
Package: busybox
Version: 1.17.1-2
Tags: patch

Hi,

On the Hurd d-i, we need to run busybox init as linuxrc because it's
not started as pid 1. The applet in question is activated by the
CONFIG_FEATURE_INITRD option.

The attached patch adds this option in the config/os/hurd overrides.

Thanks,
-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org
--- busybox-1.17.1.orig/debian/config/os/hurd	2010-08-03 04:34:13.0 +
+++ busybox-1.17.1/debian/config/os/hurd	2010-08-12 09:27:03.0 +
@@ -1,5 +1,6 @@
 CONFIG_PLATFORM_LINUX=n
 CONFIG_INIT_TERMINAL_TYPE=mach
+CONFIG_FEATURE_INITRD=y
 CONFIG_MOUNT=n
 CONFIG_UMOUNT=n
 CONFIG_SWAPONOFF=n


Bug#593212: rootskel: please add Hurd support

2010-08-16 Thread Jeremie Koenig
Package: rootskel
Version: 1.86
Tags: patch
Usertags: gsoc2010

Hi,

The rootskel udeb has been failing to build from source on Hurd for
some time...

The attached patch adds Hurd versions of the system-dependant files, and
makes other fixes which produce a functional, up-to-date rootskel udeb
on Hurd.

If you apply this, please remember to fill-in the bug number in the
changelog, create the empty src/etc/fstab-hurd, and set execute
permissions on src/sbin/reopen-console-hurd.

Thanks,
-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org
Index: debian/changelog
===
--- debian/changelog	(revision 64309)
+++ debian/changelog	(working copy)
@@ -1,3 +1,17 @@
+rootskel (1.87) UNRELEASED; urgency=low
+
+  * Fix lib/debian-installer.d/S40term-hurd.
+  * Provide a -hurd version for some files: (closes: #please fill-in)
+- lib/debian-installer/detect-console
+- lib/debian-installer/exit (skips umount, which is not available yet)
+- etc/fstab (empty)
+- etc/inittab (copied the Linux one)
+- sbin/reopen-console (not much guesswork yet)
+  * Skip the creation of /etc/mtab on Hurd (our /proc/mounts is itself a
+symlink to mtab).
+
+ -- Jeremie Koenig j...@jk.fr.eu.org  Thu, 12 Aug 2010 07:09:26 +
+
 rootskel (1.86) unstable; urgency=low
 
   [ Jeremie Koenig ]
Index: src/lib/debian-installer.d/S40term-hurd
===
--- src/lib/debian-installer.d/S40term-hurd	(revision 64309)
+++ src/lib/debian-installer.d/S40term-hurd	(working copy)
@@ -1,6 +1,6 @@
-+# Enable UTF-8 locale if it is available
-+if [ $TERM = hurd ]  [ -d /usr/lib/locale/C.UTF-8 ]; then
-+	TERM_UTF8=yes
-+	: /var/lib/UTF-8
-+	export LANG=C.UTF-8
-+fi
+# Enable UTF-8 locale if it is available
+if [ $TERM = hurd ]  [ -d /usr/lib/locale/C.UTF-8 ]; then
+	TERM_UTF8=yes
+	: /var/lib/UTF-8
+	export LANG=C.UTF-8
+fi
Index: src/lib/debian-installer/detect-console-hurd
===
--- src/lib/debian-installer/detect-console-hurd	(revision 0)
+++ src/lib/debian-installer/detect-console-hurd	(revision 0)
@@ -0,0 +1,18 @@
+if [ -z $TERM_TYPE ]; then
+	case $(tty) in
+		/dev/tty[0-9]*)
+			TERM_TYPE=virtual
+			;;
+		/dev/console)
+			TERM_TYPE=serial #unsure (mach console)
+			;;
+		/dev/com*)
+			TERM_TYPE=serial
+			;;
+		/dev/tty[pq]*)
+			TERM_TYPE=pts
+			;;
+	esac
+fi
+
+export TERM_TYPE
Index: src/lib/debian-installer/exit-hurd
===
--- src/lib/debian-installer/exit-hurd	(revision 0)
+++ src/lib/debian-installer/exit-hurd	(revision 0)
@@ -0,0 +1,21 @@
+#!/bin/sh
+
+/lib/debian-installer/exit-command
+CMDN=$?
+
+case $CMDN in
+20) CMD=reboot;;
+21) CMD=halt;;
+22) CMD=poweroff;;
+*) echo got weird return code $CMDN;;
+esac
+
+#/bin/umount -a -r
+/sbin/swapoff -a
+
+$CMD
+
+# if possible, give init a chance to kill main-menu
+if type sleep /dev/null 21; then
+	sleep 10 || true
+fi
Index: src/etc/fstab-hurd
===
Index: src/etc/inittab-hurd
===
--- src/etc/inittab-hurd	(revision 0)
+++ src/etc/inittab-hurd	(revision 0)
@@ -0,0 +1,21 @@
+# /etc/inittab
+# busybox init configuration for debian-installer
+
+# main rc script
+::sysinit:/sbin/reopen-console /sbin/debian-installer-startup
+
+# main setup program
+::respawn:/sbin/reopen-console /sbin/debian-installer
+
+# convenience shells
+tty2::askfirst:-/bin/sh
+tty3::askfirst:-/bin/sh
+
+# logging
+tty4::respawn:/usr/bin/tail -f /var/log/syslog
+
+# Stuff to do before rebooting
+::ctrlaltdel:/sbin/shutdown  /dev/null 21
+
+# re-exec init on receipt of SIGHUP/SIGUSR1
+::restart:/sbin/init
Index: src/etc/Makefile
===
--- src/etc/Makefile	(revision 64309)
+++ src/etc/Makefile	(working copy)
@@ -14,7 +14,10 @@
 	passwd \
 	profile
 
+# On Hurd, /proc/mounts won't exist or will be a symlink to /etc/mtab itself.
 install-local:: $(outdir)
+ifeq ($(DEB_HOST_ARCH_OS),hurd)
 	ln -fs /proc/mounts $(outdir)/mtab
+endif
 
 include ../../Makefile.inc
Index: src/sbin/reopen-console-hurd
===
--- src/sbin/reopen-console-hurd	(revision 0)
+++ src/sbin/reopen-console-hurd	(revision 0)
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+# In order to give proper access to the tty, we need to locate the device
+# corresponding to the console we are actually using.
+
+console=
+if ! [ -f /var/run/console-device ]; then
+	tty  /var/run/console-device
+fi
+
+# Some other session may have it as ctty. Steal it from them
+exec /sbin/steal-ctty $(cat /var/run/console-device) $@

Property changes on: src/sbin/reopen-console-hurd
___
Added: svn:executable
   + *



Bug#592684: debian-installer-utils: please don't check for /sys on Hurd

2010-08-12 Thread Jeremie Koenig
On Thu, Aug 12, 2010 at 09:43:06AM +0200, Petter Reinholdtsen wrote:
 [Jeremie Koenig]
  -   if [ ! -d /target/sys ]; then
  +   if [ ! -d /target/sys ]  [ $(udpkg --print-os) != hurd ]; then
 
 Would it be better to look for 'sysfs' in /proc/filesystems to avoid
 hardcoding OS names there?

Unfortunately, neither Hurd nor kFreeBSD have a /proc/filesystems file.
Also, the /sys filesystem is named linsysfs on kFreeBSD.

An alternative would be to check for, say, /sys/devices in the installer
itself. Does this sound reasonable?

-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#592671: partman-target: /target/etc/fstab is not created on Hurd

2010-08-11 Thread Jeremie Koenig
Package: partman-target
Version: 68
Tags: patch
Usertags: gsoc2010

Hello,

The following pieces are missing to have /target/etc/fstab created on Hurd:
  - finish.d/create_fstab_header has no 'hurd' case;
  - the default mount style must be 'traditional' on Hurd, since there
is no volume id support at the moment.

The attached patch adds them. The default value for partman/mount_style
is changed by debian/rules at build time, using an approach similar to
what partman-base does for partman/default_filesystem.

NB: if you commit this patch, remember to substitute the bug number in
debian/changelog.

Thanks,
-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org
Index: partman-target/debian/changelog
===
--- partman-target/debian/changelog	(revision 64302)
+++ partman-target/debian/changelog	(working copy)
@@ -1,10 +1,17 @@
 partman-target (69) UNRELEASED; urgency=low
 
+  [ Colin Watson ]
   * Use 'dh $@ --options' rather than 'dh --options $@', for
 forward-compatibility with debhelper v8.
 
- -- Colin Watson cjwat...@debian.org  Tue, 13 Jul 2010 10:53:29 +0100
+  [ Jeremie Koenig ]
+  * Hurd support (closes: #please fill-in):
+- finish.d/create_fstab_header: add a hurd case;
+- debian/rules: set as OS-dependant default for partman/mount_style,
+  using the same method as partman-base for partman/default_filesystem.
 
+ -- Jeremie Koenig j...@jk.fr.eu.org  Wed, 11 Aug 2010 20:02:47 +
+
 partman-target (68) unstable; urgency=low
 
   [ Updated translations ]
Index: partman-target/debian/rules
===
--- partman-target/debian/rules	(revision 64302)
+++ partman-target/debian/rules	(working copy)
@@ -1,3 +1,20 @@
 #! /usr/bin/make -f
 %:
 	dh $@ --with d-i
+
+ARCH_OS=$(shell dpkg-architecture -qDEB_HOST_ARCH_OS)
+
+ifeq ($(ARCH_OS),linux)
+DEFAULT_STYLE=uuid
+endif
+ifeq ($(ARCH_OS),kfreebsd)
+DEFAULT_STYLE=uuid
+endif
+ifeq ($(ARCH_OS),hurd)
+DEFAULT_STYLE=traditional
+endif
+
+override_dh_installdebconf:
+	dh_installdebconf
+	sed -i '/^Template: partman\/mount_style/,/^$$/s/^Default: .*/Default: $(DEFAULT_STYLE)/' \
+		debian/partman-target/DEBIAN/templates
Index: partman-target/finish.d/create_fstab_header
===
--- partman-target/finish.d/create_fstab_header	(revision 64302)
+++ partman-target/finish.d/create_fstab_header	(working copy)
@@ -28,5 +28,13 @@
 		printf %-15s %-15s %-7s %-15s %-7s %s\n sys /sys linsysfs rw 0 0  /target/etc/fstab
 		printf %-15s %-15s %-7s %-15s %-7s %s\n fdesc /dev/fd fdescfs rw 0 0  /target/etc/fstab
 	;;
+
+	hurd)
+		cat /target/etc/fstab EOF
+# /etc/fstab: static file system information.
+#
+EOF
+		printf %-15s %-15s %-7s %-15s %-7s %s\n '# file system' 'mount point' 'type' 'options' 'dump' 'pass'  /target/etc/fstab
+	;;
 esac
 


Bug#586870: partman-base: use a system-specific default filesystem

2010-08-11 Thread Jeremie Koenig
Hi,

On Wed, Aug 04, 2010 at 08:42:02PM +0200, Aurelien Jarno wrote:
 On Sun, Aug 01, 2010 at 04:30:17PM +0200, Samuel Thibault wrote:
  Jeremie Koenig, le Wed 23 Jun 2010 06:53:23 +0200, a écrit :
   [complicated run-time patch for default filesystem selection]
 
  So, what do people think about it?  BSD people, too?
 
 Do we really need to do that at runtime? There is already a code snippet
 doing that a build time in debian/rules (look for DEFAULT_FS), wouldn't
 it be better to update it for Hurd?

Oh, right. New patch attached.

Thanks,
-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org
Index: partman-base/debian/changelog
===
--- partman-base/debian/changelog	(revision 64063)
+++ partman-base/debian/changelog	(working copy)
@@ -1,10 +1,14 @@
 partman-base (143) UNRELEASED; urgency=low
 
+  [ Colin Watson ]
   * Use 'dh $@ --options' rather than 'dh --options $@', for
 forward-compatibility with debhelper v8.
 
- -- Colin Watson cjwat...@debian.org  Tue, 13 Jul 2010 10:31:10 +0100
+  [ Jeremie Koenig ]
+  * debian/rules: add a case for Hurd's DEFAULT_FS (closes: #586870).
 
+ -- Jeremie Koenig j...@jk.fr.eu.org  Wed, 11 Aug 2010 19:54:23 +
+
 partman-base (142) unstable; urgency=low
 
   [ Colin Watson ]
Index: partman-base/debian/rules
===
--- partman-base/debian/rules	(revision 64302)
+++ partman-base/debian/rules	(working copy)
@@ -10,6 +10,9 @@
 ifeq ($(ARCH_OS),kfreebsd)
 DEFAULT_FS=ufs
 endif
+ifeq ($(ARCH_OS),hurd)
+DEFAULT_FS=ext2
+endif
 
 PROVIDES=made-filesystems, mounted-partitions, partitioned-harddrives, created-fstab
 


Bug#592684: debian-installer-utils: please don't check for /sys on Hurd

2010-08-11 Thread Jeremie Koenig
Package: debian-installer-utils
Version: 1.77
Tags: patch
Usertags: gsoc2010

Hi,

The chroot_setup shell function provided by chroot-setup.sh aborts with
an error when /target/sys does not exist. However, on Hurd there is no
such thing as /sys.

The attached patch disables the test in question on Hurd.

Thanks,
-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org
Index: debian-installer-utils/debian/changelog
===
--- debian-installer-utils/debian/changelog	(revision 64302)
+++ debian-installer-utils/debian/changelog	(working copy)
@@ -1,10 +1,14 @@
 debian-installer-utils (1.78) UNRELEASED; urgency=low
 
+  [ Otavio Salvador ]
   * When running in live-installer di-utils-reboot ought to quit
 installer if not rebooting/halting the machine. Closes: #589453.
 
- -- Otavio Salvador ota...@ossystems.com.br  Wed, 28 Jul 2010 04:07:41 -0300
+  [ Jeremie Koenig ]
+  * in-target: Don't require /sys on hurd. Closes: #please fill-in.
 
+ -- Jeremie Koenig j...@jk.fr.eu.org  Wed, 11 Aug 2010 20:35:54 +
+
 debian-installer-utils (1.77) unstable; urgency=low
 
   [ Updated translations ]
Index: debian-installer-utils/chroot-setup.sh
===
--- debian-installer-utils/chroot-setup.sh	(revision 64302)
+++ debian-installer-utils/chroot-setup.sh	(working copy)
@@ -10,7 +10,7 @@
 	   [ ! -d /target/proc ]; then
 		return 1
 	fi
-	if [ ! -d /target/sys ]; then
+	if [ ! -d /target/sys ]  [ $(udpkg --print-os) != hurd ]; then
 		return 1
 	fi
 


Bug#592690: localechooser: the Hurd console has display level 3 capability

2010-08-11 Thread Jeremie Koenig
Package: localechooser
Version: 2.27
Tags: patch
Usertags: gsoc2010

Hello,

The Hurd console supports all the display level 3 languages, thanks to
its neat dynamic VGA font support. The attached patch enables using this
functionnality by setting level 3 for it in localechooser.

Thanks,
-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org
Index: localechooser/debian/changelog
===
--- localechooser/debian/changelog	(revision 64302)
+++ localechooser/debian/changelog	(working copy)
@@ -1,11 +1,15 @@
 localechooser (2.28) UNRELEASED; urgency=low
 
+  [ Christian Perrier ]
   * Add commented entry for Serbian (Latin)
   * Re-activate Serbian and name it Serbian (Cyrillic)
   * Activate Telugu
 
- -- Christian Perrier bubu...@debian.org  Thu, 15 Jul 2010 07:08:43 +0200
+  [ Jeremie Koenig ]
+  * Set display level 3 for the Hurd console (closes: #please fill-in)
 
+ -- Jeremie Koenig j...@jk.fr.eu.org  Fri, 23 Jul 2010 06:21:49 +
+
 localechooser (2.27) unstable; urgency=low
 
   * Activate Persian language
Index: localechooser/localechooser
===
--- localechooser/localechooser	(revision 64302)
+++ localechooser/localechooser	(working copy)
@@ -67,6 +67,10 @@
 		else
 			level=1
 		fi
+		# The hurd text-mode console has decent charset support
+		if [ $TERM = hurd ]; then
+			level=3
+		fi
 		# ASCII only if we are on serial console, dumb or cons25 terminal
 		# Both variables should already be set at init time
 		if [ $TERM_TYPE = serial ] || [ $TERM = dumb ] || [ $TERM = cons25 ]; then


Bug#589987: bogl: FTBFS on non-linux ports

2010-07-22 Thread Jeremie Koenig
usertags 589987 gsoc2010
thanks

On Thu, Jul 22, 2010 at 08:24:37PM +0200, Samuel Thibault wrote:
 bogl FTBFS on non-linux. This would look normal at first, but d-i uses
 reduce-font from libbogl-dev to save room on d-i images. This patch
 makes bogl at least build libbogl-dev shipping mergebdf and reduce-font
 on non-linux ports.

Hi,

I'd like to confirm that Samuel's patch works great, with the exception
of libbogl-dev depending on libbogl0, which is unavailable on non-Linux
(updated patch attached).

Thanks,
-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org
diff -ruN bogl-0.1.18/Makefile bogl-0.1.18.non-linux/Makefile
--- bogl-0.1.18/Makefile	2010-06-22 00:07:25.0 +
+++ bogl-0.1.18.non-linux/Makefile	2010-07-22 21:10:03.0 +
@@ -9,6 +9,7 @@
 ALLCFLAGS = $(CFLAGS) $(WARNCFLAGS) $(FBCFLAGS)
 
 architecture := $(shell dpkg-architecture -qDEB_BUILD_ARCH_CPU)
+os := $(shell dpkg-architecture -qDEB_BUILD_ARCH_OS)
 
 LIBOBJECTS = $(LIBBOGLOBJECTS) $(LIBBOMLOBJECTS) $(LIBBOWLOBJECTS)	\
 	$(LIBRSRCOBJECTS)
@@ -18,9 +19,12 @@
 LIBRSRCOBJECTS = helvB10.o helvB12.o helvR10.o timBI18.o tux75.o
 
 SOURCES_DEP = arrow.c bdftobogl.c bogl-cfb.c bogl-cfb.h bogl-cfb8.c	\
-bogl-cfb8.h bogl-font.c bogl-font.h bogl-pcfb.c bogl-pcfb.h		\
-bogl-tcfb.c bogl-tcfb.h bogl-test.c bogl.c bogl.h boglP.h boml.c	\
-boml.h bowl-boxes.c bowl.c bowl.h pngtobogl.c
+bogl-cfb8.h bogl-font.c bogl-font.h \
+bogl-test.c bogl.h boglP.h boml.c	\
+boml.h bowl.c bowl.h pngtobogl.c
+
+ifeq ($(os),linux)
+	SOURCES_DEP += bogl-pcfb.c bogl-pcfb.h bogl-tcfb.c bogl-tcfb.h bowl-boxes.c bogl.c
 
 ifeq (,)
 	FBCFLAGS += -DBOGL_CFB_FB=1
@@ -32,13 +36,18 @@
 	LIBBOGLOBJECTS += bogl-vga16.o
 	SOURCES_DEP += bogl-vga16.c bogl-vga16.h
 endif
+endif
 
 OBJECTS = $(LIBOBJECTS) bowl-boxes.o
 
 GENERATED = helvB10.c helvB12.c helvR10.c timBI18.c tux75.c
 
 #		 libutf8/libutf8_plug.so unifont-reduced.bgf
-all:depend $(SHARED_LIB) $(LIB) bterm bdftobogl reduce-font
+all:depend
+ifeq ($(os),linux)
+all: $(SHARED_LIB) $(LIB) bterm bdftobogl pngtobogl
+endif
+all: reduce-font
 
 %.lo: %.c
 	$(CC) $(ALLCFLAGS) -o $@ -fPIC -c $
@@ -109,12 +118,16 @@
 endif
 
 install: all
-	install -d $(DESTDIR)/usr/lib $(DESTDIR)/usr/include/bogl $(DESTDIR)/usr/bin
+	install -d $(DESTDIR)/usr/bin
+ifeq ($(os),linux)
+	install -d $(DESTDIR)/usr/lib $(DESTDIR)/usr/include/bogl
 	install -m644 $(SHARED_LIB) $(DESTDIR)/usr/lib/$(SHARED_LIB)
 	ln -s $(SHARED_LIB) $(DESTDIR)/usr/lib/$(DEVLINK)
 	ln -s $(SHARED_LIB) $(DESTDIR)/usr/lib/$(SONAME)
 	install -m644 $(LIB) $(DESTDIR)/usr/lib/$(LIB)
 	install -m644 *.h $(DESTDIR)/usr/include/bogl
-	install -m755 bdftobogl mergebdf bterm pngtobogl reduce-font $(DESTDIR)/usr/bin
+	install -m755 bdftobogl bterm pngtobogl $(DESTDIR)/usr/bin
 	install -d $(DESTDIR)/usr/share/terminfo
 	tic -o$(DESTDIR)/usr/share/terminfo bterm.ti
+endif
+	install -m755 mergebdf reduce-font $(DESTDIR)/usr/bin
diff -ruN bogl-0.1.18/debian/control bogl-0.1.18.non-linux/debian/control
--- bogl-0.1.18/debian/control	2010-06-22 00:15:11.0 +
+++ bogl-0.1.18.non-linux/debian/control	2010-07-22 21:10:18.0 +
@@ -8,7 +8,7 @@
 Package: libbogl-dev
 Section: libdevel
 Architecture: any
-Depends: libbogl0 (= ${binary:Version}), libc6-dev, ${shlibs:Depends}, ${misc:Depends}
+Depends: libbogl0 (= ${binary:Version}) [linux-any], libc6-dev, ${shlibs:Depends}, ${misc:Depends}
 Description: Ben's Own Graphics Library - development files
  Ben's Own Graphics Library is a small framebuffer library,
  including basic widgets, support for text in multiple
@@ -19,7 +19,7 @@
 
 Package: libbogl0
 Section: libs
-Architecture: any
+Architecture: linux-any
 Depends: ${shlibs:Depends}, ${misc:Depends}
 Description: Ben's Own Graphics Library - shared library
  Ben's Own Graphics Library is a small framebuffer library,
@@ -30,7 +30,7 @@
 
 Package: bogl-bterm
 Section: utils
-Architecture: any
+Architecture: linux-any
 Depends: ${shlibs:Depends}, ${misc:Depends}
 Description: Ben's Own Graphics Library - graphical terminal
  Ben's Own Graphics Library is a small framebuffer library,
@@ -42,7 +42,7 @@
 Package: bogl-bterm-udeb
 XC-Package-Type: udeb
 Section: debian-installer
-Architecture: any
+Architecture: linux-any
 Priority: extra
 Depends: ${shlibs:Depends}
 Description: Ben's Own Graphics Library - graphical terminal
diff -ruN bogl-0.1.18/debian/libbogl-dev.files.hurd-i386 bogl-0.1.18.non-linux/debian/libbogl-dev.files.hurd-i386
--- bogl-0.1.18/debian/libbogl-dev.files.hurd-i386	1970-01-01 00:00:00.0 +
+++ bogl-0.1.18.non-linux/debian/libbogl-dev.files.hurd-i386	2010-07-22 21:10:03.0 +
@@ -0,0 +1,2 @@
+usr/bin/mergebdf
+usr/bin/reduce-font
diff -ruN bogl-0.1.18/debian/libbogl-dev.files.kfreebsd-amd64 bogl-0.1.18.non-linux/debian/libbogl-dev.files.kfreebsd-amd64
--- bogl-0.1.18/debian/libbogl-dev.files.kfreebsd-amd64	1970-01-01 00:00:00.0 +
+++ bogl-0.1.18.non-linux/debian/libbogl-dev.files.kfreebsd

Bug#588776: base-installer: please don't rely on /proc/mounts, which is not available on Hurd

2010-07-12 Thread Jeremie Koenig
Package: base-installer
Version: 1.108
Tags: patch
Usertags: gsoc2010

Hello,

bootstrap-base starts by checking that something is mounted on /target,
using /proc/mounts. On Hurd, /proc/mounts does not exist, and
bootstrap-base fails as a result.

The attached patch short-circuits the /target check when /proc/mounts
does not exist.

-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org
Index: base-installer/debian/changelog
===
--- base-installer/debian/changelog	(revision 63843)
+++ base-installer/debian/changelog	(working copy)
@@ -1,3 +1,9 @@
+base-installer (1.109) UNRELEASED; urgency=low
+
+  * Don't check /proc/mounts if it does not exist (ie. on Hurd).
+
+ -- Jeremie Koenig j...@jk.fr.eu.org  Sun, 11 Jul 2010 22:36:14 +
+
 base-installer (1.108) unstable; urgency=low
 
   [ Martin Michlmayr ]
Index: base-installer/library.sh
===
--- base-installer/library.sh	(revision 63843)
+++ base-installer/library.sh	(working copy)
@@ -86,7 +86,8 @@
 check_target () {
 	# Make sure something is mounted on the target.
 	# Partconf causes the latter format.
-	if ! grep -q '/target ' /proc/mounts  \
+	if [ -e /proc/mounts ]  \
+	   ! grep -q '/target ' /proc/mounts  \
 	   ! grep -q '/target/ ' /proc/mounts; then
 		exit_error base-installer/no_target_mounted
 	fi


Bug#588761: netcfg: please include Hurd support

2010-07-11 Thread Jeremie Koenig
Package: netcfg
Version: 1.54
Tags: patch
Usertags: gsoc2010

NB: Please don't care -- I'll ask Samuel Thibault (my GSoC mentor) to
commit most of my changes, including those, and ask debian-boot to
review the more intrusive ones later, in one run. Of course I welcome
any kind of comments nonetheless.

Anyway, the attached patch makes netcfg-static work on Hurd.

Thanks,
-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org
Index: netcfg/debian/changelog
===
--- netcfg/debian/changelog	(revision 63843)
+++ netcfg/debian/changelog	(working copy)
@@ -1,3 +1,10 @@
+netcfg (1.55) UNRELEASED; urgency=low
+
+  * More fixes for Hurd support, including network device detection
+(closes: please fill-in).
+
+ -- Jeremie Koenig j...@jk.fr.eu.org  Sun, 11 Jul 2010 22:51:56 +
+
 netcfg (1.54) unstable; urgency=low
 
   [ Samuel Thibault ]
Index: netcfg/static.c
===
--- netcfg/static.c	(revision 63843)
+++ netcfg/static.c	(working copy)
@@ -274,20 +274,22 @@
 char ptr1[INET_ADDRSTRLEN];
 
 #ifdef __GNU__
-di_exec_shell_log(settrans /servers/socket/2 -fg);
 snprintf(buf, sizeof(buf),
  settrans -fgap /servers/socket/2 /hurd/pfinet --interface=%s --address=%s,
  interface, inet_ntop (AF_INET, ipaddress, ptr1, sizeof (ptr1)));
 di_snprintfcat(buf, sizeof(buf),  --netmask=%s,
inet_ntop (AF_INET, netmask, ptr1, sizeof (ptr1)));
-buf[sizeof(buf) - 1] = '\0';
 
 if (gateway.s_addr)
-snprintf(buf, sizeof(buf),  --gateway=%s,
- inet_ntop (AF_INET, gateway, ptr1, sizeof (ptr1)));
+di_snprintfcat(buf, sizeof(buf),  --gateway=%s,
+   inet_ntop (AF_INET, gateway, ptr1, sizeof (ptr1)));
 
-rv |= di_exec_shell_log(buf);
+buf[sizeof(buf) - 1] = '\0';
 
+/* NB: unfortunately we cannot use di_exec_shell_log() here, as the active
+ * translator would capture its pipe and make it hang forever. */
+rv |= di_exec_shell(buf);
+
 #elif defined(__FreeBSD_kernel__)
 deconfigure_network();
 
Index: netcfg/netcfg-common.c
===
--- netcfg/netcfg-common.c	(revision 63843)
+++ netcfg/netcfg-common.c	(working copy)
@@ -229,8 +229,52 @@
 return strcmp(*ia, *ib);
 }
 
+#ifdef __GNU__
+#include mach.h
+#include device/device.h
+#include hurd.h
+/* Unfortunately, getifaddrs() does not work on Hurd, so we try possible names
+ * for network interfaces and check whether they exists by attempting to open
+ * the kernel device. */
 int get_all_ifs (int all, char*** ptr)
 {
+static const char *const fmt[] = { eth%d, wl%d, NULL };
+
+mach_port_t device_master;
+device_t device;
+int err;
+char **list;
+int num, i, j;
+char name[5 + 3 * sizeof (int)];
+
+err = get_privileged_ports (0, device_master);
+if (err)
+	return 0;
+
+num = 0;
+list = malloc(sizeof *list);
+for (i = 0; fmt[i]; i++)
+	for (j = 0; 1; j++) {
+	sprintf (name, fmt[i], j);
+	err = device_open (device_master, D_READ, name, device);
+	if (err != 0)
+		break;
+
+	device_close (device);
+	mach_port_deallocate (mach_task_self (), device);
+
+	list = realloc (list, (num + 2) * sizeof *list);
+	list[num++] = strdup(name);
+	}
+list[num] = NULL;
+
+mach_port_deallocate (mach_task_self (), device_master);
+*ptr = list;
+return num;
+}
+#else
+int get_all_ifs (int all, char*** ptr)
+{
 struct ifaddrs *ifap, *ifa;
 char ibuf[512];
 char** list = NULL;
@@ -279,6 +323,7 @@
 
 return len;
 }
+#endif
 
 #ifdef __linux__
 short find_in_stab(const char* iface)


Bug#588677: procps: FTBFS on hurd-i386

2010-07-10 Thread Jeremie Koenig
Package: procps
Version: 1:3.2.8-9
Severity: important
Tags: patch
User: debian-h...@lists.debian.org
Usertags: hurd

Hi,

The current version of procps fails to build from source on hurd-i386.

This is caused by debian/patches/vmstat_part_format.patch, which uses
the PATH_MAX constant.

I'm not sure what the preferred form of submission is for such things,
but the attached patch to the patch fixes this problem.

Thanks,
-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org
--- debian/patches/vmstat_part_format.patch.orig	2010-07-11 03:59:28.0 +
+++ debian/patches/vmstat_part_format.patch	2010-07-11 04:01:23.0 +
@@ -1,15 +1,17 @@
 Author: Daniel Novotny
 Description: The contents of /proc/diskstats have changed since 2.6.25
 Bug-Redhat: https://bugzilla.redhat.com/show_bug.cgi?id=485243
 a/proc/sysinfo.c
-+++ b/proc/sysinfo.c
+Index: procps-3.2.8/proc/sysinfo.c
+===
+--- procps-3.2.8.orig/proc/sysinfo.c	2010-07-11 03:52:58.0 +
 procps-3.2.8/proc/sysinfo.c	2010-07-11 04:01:18.0 +
 @@ -796,6 +796,18 @@
  }
  
  /
-+static int is_disk(char *dev)
++static int is_disk(const char dev[16])
 +{
-+  char syspath[PATH_MAX];
++  char syspath[32];
 +  char *slash;
 +
 +  while ((slash = strchr(dev, '/')))
@@ -26,7 +28,7 @@
int cPartition = 0;
int fields;
unsigned dummy;
-+  char devname[PATH_MAX];
++  char devname[16];
  
*disks = NULL;
*partitions = NULL;
@@ -53,8 +55,10 @@
  //part_major,
  //part_minor,
  (*partitions)[cPartition].partition_name,
 a/proc/sysinfo.h
-+++ b/proc/sysinfo.h
+Index: procps-3.2.8/proc/sysinfo.h
+===
+--- procps-3.2.8.orig/proc/sysinfo.h	2010-07-11 03:52:58.0 +
 procps-3.2.8/proc/sysinfo.h	2010-07-11 03:55:39.0 +
 @@ -113,7 +113,7 @@
  	unsigned   parent_disk;  // index into a struct disk_stat array
  	unsigned   reads;
@@ -64,8 +68,10 @@
  }partition_stat;
  
  extern unsigned int getpartitions_num(struct disk_stat *disks, int ndisks);
 a/vmstat.c
-+++ b/vmstat.c
+Index: procps-3.2.8/vmstat.c
+===
+--- procps-3.2.8.orig/vmstat.c	2010-07-11 03:55:38.0 +
 procps-3.2.8/vmstat.c	2010-07-11 03:55:39.0 +
 @@ -286,7 +286,7 @@
  struct disk_stat *disks;
  struct partition_stat *partitions, *current_partition=NULL;


Bug#586870: partman-base: use a system-specific default filesystem

2010-06-22 Thread Jeremie Koenig
Package: partman-base
Version: 141
Severity: normal
Usertags: gsoc2010
Tags: patch

Hello,

Currently the default filesystem is ext3 on all systems. However, Hurd
only supports ext2 and kFreeBSD requires ufs as its root filesystem.
The attached patch sets a system-specific default, provided none has
been preseeded.

An alternative approach would be to load a system-specific pre-preseed
file at the beginning of the installation, though I'm not sure what
other configuration items would need system-specific defaults.

My suggestion would be to use my patch as a first step and review the
situation when/if more system-specific defaults prove to be necessary.

Any thoughts? (or irrepressible urges to commit my patch? :-)

Thanks,
-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org
Index: partman-base/debian/changelog
===
--- partman-base/debian/changelog	(revision 63538)
+++ partman-base/debian/changelog	(working copy)
@@ -1,9 +1,14 @@
 partman-base (142) UNRELEASED; urgency=low
 
+  [ Colin Watson ]
   * Add ALIGNMENT_OFFSET to partman-command.
 
- -- Colin Watson cjwat...@debian.org  Sat, 08 May 2010 15:20:19 +0200
+  [ Jeremie Koenig ]
+  * Set a system-specific value for partman/default_filesystem if none has been
+preseeded.
 
+ -- Jeremie Koenig j...@jk.fr.eu.org  Wed, 16 Jun 2010 18:08:50 +0200
+
 partman-base (141) unstable; urgency=low
 
   * parted 2.1 changed the semantics of ped_disk_clobber: it now zeroes out
Index: partman-base/init.d/default_filesystem
===
--- partman-base/init.d/default_filesystem	(revision 0)
+++ partman-base/init.d/default_filesystem	(revision 0)
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+. /usr/share/debconf/confmodule
+
+db_fget partman/default_filesystem seen
+if [ $RET != false ]; then
+	exit 0
+fi
+
+case $(udpkg --print-os) in
+kfreebsd)
+	db_set partman/default_filesystem ufs
+	;;
+hurd)
+	db_set partman/default_filesystem ext2
+	;;
+esac
+
+db_fset partman/default_filesystem seen true
+

Property changes on: partman-base/init.d/default_filesystem
___
Added: svn:executable
   + *

Index: partman-base/init.d/_numbers
===
--- partman-base/init.d/_numbers	(revision 63538)
+++ partman-base/init.d/_numbers	(working copy)
@@ -1,5 +1,6 @@
 01 early_command
 10 umount_target
+20 default_filesystem
 30 parted
 35 dump
 70 update_partitions


Bug#586871: partman-basicfilesystems: please include Hurd support

2010-06-22 Thread Jeremie Koenig
Package: partman-basicfilesystems
Version: 63
Severity: normal
Usertags: gsoc2010
Tags: patch

Hello,

partman-basicfilesystems needs a few special cases to work properly
on Hurd, namely:
  - no kernel modules are needed for ext2 and vfat;
  - only 4k blocks, 128 bytes inodes are supported by ext2fs;
  - the errors=remount-ro option is not supported.

See the attached patch.

Thanks,
-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org
Index: partman-basicfilesystems/debian/changelog
===
--- partman-basicfilesystems/debian/changelog	(revision 63538)
+++ partman-basicfilesystems/debian/changelog	(working copy)
@@ -7,8 +7,14 @@
   * Remove no longer needed Lintian override for missing Standards-
 Version field.
 
- -- Colin Watson cjwat...@debian.org  Thu, 27 Aug 2009 10:58:41 +0100
+  [ Jeremie Koenig ]
+  * Hurd support (closes: please fill in):
+- disable errors=remount-ro, which is not supported;
+- force 4k blocks and 128 bytes inodes on mkfs.ext2;
+- mark ext2 and vfat as available and skip tests for kernel modules.
 
+ -- Jeremie Koenig j...@jk.fr.eu.org  Wed, 23 Jun 2010 07:00:23 +0200
+
 partman-basicfilesystems (63) unstable; urgency=low
 
   [ Christian Perrier ]
Index: partman-basicfilesystems/commit.d/format_basicfilesystems
===
--- partman-basicfilesystems/commit.d/format_basicfilesystems	(revision 63538)
+++ partman-basicfilesystems/commit.d/format_basicfilesystems	(working copy)
@@ -48,7 +48,14 @@
 			db_subst $template DEVICE $(humandev $(cat device))
 			case $filesystem in
 			ext2)
-if [ ! -f $id/usage ]; then
+options=''
+if [ -f $id/usage ]; then
+	options=$options -T $(cat $id/usage)
+fi
+if [ $(udpkg --print-os) = hurd ]; then
+	options=$options -b 4096 -I 128 -o hurd
+fi
+if [ -z $options ]; then
 	name_progress_bar $template
 	open_dialog CREATE_FILE_SYSTEM $id $filesystem
 	read_line status
@@ -61,12 +68,8 @@
 	db_progress START 0 3 partman/text/formatting
 	db_progress INFO $template
 	db_progress SET 1
-	usage=''
-	if [ -f $id/usage ]; then
-		usage=-T $(cat $id/usage)
-	fi
 	if log-output -t partman --pass-stdout \
-	   mkfs.ext2 $device $usage /dev/null; then
+	   mkfs.ext2 $device $options /dev/null; then
 		sync
 		status=OK
 	else
Index: partman-basicfilesystems/fstab.d/basic
===
--- partman-basicfilesystems/fstab.d/basic	(revision 63538)
+++ partman-basicfilesystems/fstab.d/basic	(working copy)
@@ -39,7 +39,9 @@
 			fi
 			options=$(get_mountoptions $dev $id)
 			if [ $mountpoint = / ]; then
-if [ $options = defaults ]; then
+if [ $(udpkg --print-os) = hurd ]; then
+	: # remount-ro not supported
+elif [ $options = defaults ]; then
 	options=errors=remount-ro
 else
 	options=${options},errors=remount-ro
Index: partman-basicfilesystems/init.d/kernelmodules_basicfilesystems
===
--- partman-basicfilesystems/init.d/kernelmodules_basicfilesystems	(revision 63538)
+++ partman-basicfilesystems/init.d/kernelmodules_basicfilesystems	(working copy)
@@ -2,6 +2,13 @@
 
 mkdir -p /var/lib/partman
 
+# On Hurd they are always available
+if [ $(udpkg --print-os) = hurd ]; then
+	/var/lib/partman/ext2
+	/var/lib/partman/vfat
+	exit 0
+fi
+
 cat /proc/modules |
 while read module_name x; do
 	if [ $module_name = ext2 ]; then


Bug#586687: debian-installer: build scripts can use outdated packages

2010-06-21 Thread Jeremie Koenig
Package: debian-installer
Severity: normal
Tags: patch
Usertags: gsoc2010

Hello,

(my earlier email to debian-boot did not attract any comment, I'm
resubmitting this as a bug so as to document and keep track of it)

The get-packages script from installer/build/util/ uses sort | tail -1
to get the most recent version of a given udeb from apt.udeb/cache.
This may cause images to be built with outdated udebs.

The attached patch makes it use 'dpkg --compare-versions' instead.

Thanks,
-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org
Index: debian/changelog
===
--- debian/changelog	(revision 63446)
+++ debian/changelog	(working copy)
@@ -69,8 +69,11 @@
   [ Otavio Salvador ]
   * Move hppa, ia64, powerpc and s390 to linux 2.6.32 (ABI 5).
 
- -- Christian Perrier bubu...@debian.org  Sun, 14 Feb 2010 17:06:27 +0100
+  [ Jeremie Koenig ]
+  * util/get-packages: fix selection of the most recent packages.
 
+ -- Jeremie Koenig j...@jk.fr.eu.org  Thu, 17 Jun 2010 17:01:14 +0200
+
 debian-installer (20100211) unstable; urgency=low
 
   [ Frans Pop ]
Index: build/util/get-packages
===
--- build/util/get-packages	(revision 63446)
+++ build/util/get-packages	(working copy)
@@ -186,7 +186,13 @@
 
 lnpkg() {
 	local pkg=$1; local dir=$2 debdir=$3
-	local L=`find $dir -name ${pkg}_* 2/dev/null | sort | tail -n 1`
+	local L LV l lv
+	for l in `find $dir -name ${pkg}_* 2/dev/null`; do
+		lv=${l%_*}; lv=${lv##*_};
+		if dpkg --compare-versions $lv gt $LV; then
+			L=$l LV=$lv
+		fi
+	done
 	if [ -e $L ]; then
 		ln -f $L $debdir/$pkg.$TYPE
 	fi


Bug#586696: libparted0debian1: wrong path for hurd partitions

2010-06-21 Thread Jeremie Koenig
Package: libparted0debian1
Version: 2.2-7
Severity: normal
Usertags: gsoc2010
Tags: patch

Hello,

The current libparted has the wrong format string for partition paths on
Hurd, and comes up with (for instance) /dev/hd01 instead of /dev/hd0s1.

As a consequence, partman (from debian-installer) fails to create the
filesystem and mount the partition.

The attached patch fixes this.

Thanks,
-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org
Index: parted-2.2/libparted/arch/gnu.c
===
--- parted-2.2.orig/libparted/arch/gnu.c	2010-06-21 18:29:55.0 +0200
+++ parted-2.2/libparted/arch/gnu.c	2010-06-21 18:30:05.0 +0200
@@ -845,7 +845,7 @@
 	result = (char*) ped_malloc (result_len);
 	if (!result)
 		return NULL;
-	snprintf (result, result_len, %s%d, dev_path, part-num);
+	snprintf (result, result_len, %ss%d, dev_path, part-num);
 	return result;
 }
 


Bug#533448: mispipe executes the commands with superfluous file descriptors left open

2009-06-17 Thread Jeremie Koenig
Package: moreutils
Version: 0.35
Severity: minor
Tags: patch

Hello, thanks alot for moreutils (and all the stuff you wrote that we
use on a daily basis...)

When mispipe executes its commands, with the the pipe duplicated as the
standard input (resp. output), the original file descriptor for it is
left open until after the command terminates.

This will cause the following commands to hang:

  $ sudo mispipe '/etc/init.d/cron restart' 'logger -s'
  logger: Restarting periodic command scheduler: cron.
  *hangs*

  $ sudo mispipe 'cat /dev/zero' '/etc/init.d/cron restart'
  Restarting periodic command scheduler: cron.
  *hangs*

What happens here is that the spawned cron daemon will inherit the pipe
as file descriptor 3 or 4 and keep it open, preventing 'cat /dev/null'
or 'logger -s' from terminating:

  $ sudo lsof -n | egrep 687643
  mispipe4718root0r FIFO  0,6 0t0 687643 pipe
  mispipe4718root3r FIFO  0,6 0t0 687643 pipe
  logger 4720root0r FIFO  0,6 0t0 687643 pipe
  logger 4720root3r FIFO  0,6 0t0 687643 pipe
  cron   4735root4w FIFO  0,6 0t0 687643 pipe

The attached patch makes mispipe close the original file descriptor
after it has been duplicated, but before the command is executed.
I could also use FD_CLOEXEC or a command-line switch if you think this
behaviour would cause problems in other circumstances.

Regards,

-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org
--- mispipe.c.orig	2009-06-17 17:23:17.0 +0200
+++ mispipe.c	2009-06-17 17:30:04.0 +0200
@@ -107,15 +107,15 @@
 	/* Make the reading end of the pipe the new standard input. */
 	if (dup2(filedes[0], 0) == -1)
 		error_with_errno(Failed (in child) redefining standard input);
+	/* Close the original file descriptor for it */
+	if (close(filedes[0]))
+		error_with_errno(Failed (in child) closing filedes[0]);
 	/* Close the other end of the pipe. */
 	if (close(filedes[1]))
 		error_with_errno(Failed (in child) closing filedes[1]);
 	/* Do the second command, and throw away the exit status. */
 	system(cmd);
-	/* Close all the file descriptors. */
-	if (close(filedes[0]))
-		error_with_errno(Failed (in child) closing filedes[0]
-			 (while cleaning up));
+	/* Close the standard input. */
 	if (close(0))
 		error_with_errno(Failed (in child) closing standard output 
 			 (while cleaning up));
@@ -151,15 +151,15 @@
 	/* Make the writing end of the pipe the new standard output. */
 	if (dup2(filedes[1], 1) == -1)
 		error_with_errno(Failed redefining standard output);
+	/* Close the original file descriptor for it. */
+	if (close(filedes[1]))
+		error_with_errno(Failed closing filedes[1]);
 	/* Close the other end of the pipe. */
 	if (close(filedes[0]))
 		error_with_errno(Failed closing filedes[0]);
 	/* Do the first command, and (crucially) get the status. */
 	status_big = system(argv[1]);
 
-	/* Close the pipe standard output. */
-	if (close(filedes[1]))
-		error_with_errno(Failed closing filedes[1] (while cleaning up));
 	/* Close standard output. */
 	if (close(1))
 		error_with_errno(Failed closing standard output (while cleaning up));


Bug#511407: bing: segfaults on IPv6 addresses

2009-01-10 Thread Jeremie Koenig
Package: bing
Version: 1.1.3-1
Tags: patch, ipv6

Hello,

Bing assumes that gethostbyname() returns IPv4 addresses.

With options inet6 in /etc/resolv.conf, or on IPv6-only hosts, this is
no longer true and bing will segfault trying to fit a 128 bits address
in a 32 bits buffer.

The attached patch updates bing to use the modern getaddrinfo/getnameinfo
resolver interfaces, which will ensure only AF_INET addresses are
returned.

Thanks for maintaining bing,
 
-- 
Jeremie Koenig j...@jk.fr.eu.org
http://jk.fr.eu.org
diff -ru bing-1.1.3.orig/bing.c bing-1.1.3/bing.c
--- bing-1.1.3.orig/bing.c	2009-01-10 00:21:34.0 +0100
+++ bing-1.1.3/bing.c	2009-01-10 16:21:30.0 +0100
@@ -325,7 +325,6 @@
 struct hoststats {
 	/* Host info */
 	char *hostname;
-	struct sockaddr_in whereto;
 	struct sockaddr_in *to;
 	struct timestats *ts;
 };
@@ -368,31 +367,19 @@
 	struct hoststats *hs;
 	char *target;
 {
-	struct hostent *hp;
+	struct addrinfo hints, *ai;
+	int r;
 
-	hs-to = hs-whereto;
-
-	memset((char *)hs-to, 0, sizeof(struct sockaddr_in));
-	hs-to-sin_family = AF_INET;
-	hs-to-sin_addr.s_addr = inet_addr(target);
-	if (hs-to-sin_addr.s_addr != (u_int)-1)
-		hs-hostname = strdup(target);
-	else {
-		hp = gethostbyname(target);
-		if (!hp) {
-			(void)fprintf(stderr,
-			bing: unknown host %s\n, target);
-			exit(1);
-		}
-		hs-to-sin_family = hp-h_addrtype;
-		memcpy((caddr_t)hs-to-sin_addr, hp-h_addr, hp-h_length);
-		hs-hostname = strdup(hp-h_name);
-		if(!hs-hostname) {
-			(void)fprintf(stderr,
-bing: unable to allocate memory\n);
-			exit(1);
-		}
+	memset(hints, 0, sizeof hints);
+	hints.ai_family = AF_INET;
+	hints.ai_flags = AI_CANONNAME;
+	if((r = getaddrinfo(target, NULL, hints, ai))) {
+		fprintf(stderr, bing: couldn't resolve %s: %s\n,
+target, gai_strerror(r));
+		exit(1);
 	}
+	hs-to = (struct sockaddr_in *) ai-ai_addr;
+	hs-hostname = ai-ai_canonname;
 }
 
 void randomfill(bp, len, seed)
@@ -683,18 +670,22 @@
 pr_addr(l)
 	u_long l;
 {
-	struct hostent *hp;
 	static char buf[MAXHOSTNAMELEN+19];
+	struct sockaddr_in sa;
+	int r;
 
-	if ((options  F_NUMERIC) ||
-	!(hp = gethostbyaddr((char *)l, 4, AF_INET)))
-	(void)snprintf(snfargs(buf, sizeof(buf), %s), 
-			   inet_ntoa(*(struct in_addr *)l));
-	else
-	(void)snprintf(snfargs(buf, sizeof(buf), %s (%s)),
-			   hp-h_name,
-			   inet_ntoa(*(struct in_addr *)l));
-	return(buf);
+	sa.sin_family = AF_INET;
+	sa.sin_port = 0;
+	memcpy(sa.sin_addr, l, sizeof l);
+
+	r = getnameinfo((struct sockaddr *) sa, sizeof sa, buf, sizeof buf,
+			NULL, 0, (options  F_NUMERIC) ? NI_NUMERICHOST : 0);
+	if(r) {
+		fprintf(stderr, bing: getaddrinfo: %s\n, gai_strerror(r));
+		exit(1);
+	}
+
+	return buf;
 }
 
 /*


Bug#102640: this xcircuit bug is triggered by Num Lock

2008-04-17 Thread Jeremie Koenig
Hello,

Xcircuit's pull down menus not working happens only with Num Lock
activated. Switching it off make them work again.

-- 
Jeremie Koenig [EMAIL PROTECTED]



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#437927: thttpd: CGI output to stderr is transmitted to the client

2007-08-14 Thread Jeremie Koenig
Package: thttpd
Version: 2.23beta1-5
Severity: normal

Hello,

When running CGI scripts, thttpd sends their error output to the client.

It could be handy for a CGI developper to have its error included in the
generated page, but on the other hand, this can cause problems with some
CGI scripts. For instance, in some cases, ikiwiki outputs an error
message containing a blank line before it sends its headers to stdout,
which confuses the client.
(see http://ikiwiki.info/bugs/CGI_problem_with_some_webservers/)

Maybe thttpd can redirect script error output to /dev/null by default,
rather than sending it to the client, in order to avoid such problems?

-- 
Jeremie Koenig [EMAIL PROTECTED]


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#437932: mini-httpd: CGI output to stderr is transmitted to the client

2007-08-14 Thread Jeremie Koenig
Package: mini-httpd
Version: 1.19-3
Severity: normal

Hello,

When running CGI scripts, mini-httpd sends their error output to the
client.

It could be handy for a CGI developper to have its error included in the
generated page, but on the other hand, this can cause problems with some
CGI scripts. For instance, in some cases, ikiwiki outputs an error
message containing a blank line before it sends its headers to stdout,
which confuses the client.
(see http://ikiwiki.info/bugs/CGI_problem_with_some_webservers/)

Maybe mini-httpd can redirect script error output to /dev/null by default,
rather than sending it to the client, in order to avoid such problems?

-- 
Jeremie Koenig [EMAIL PROTECTED]


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#408873: llgal: fails when directory names contain shell meta characters

2007-01-28 Thread Jeremie Koenig
Package: llgal
Version: 0.13.9-1
Severity: normal
Tags: patch

Hello,

I get the following error when llgal tries to proceed a directory with
shell metacharacters:
--
  Entering subdirectory 'camping (presque) sauvage'...
Listing entries in . :100.00%
Preparing entries:100.00%
Found 196 entries in directory photos/vince/camping (presque) sauvage/
sh: -c: line 0: syntax error near unexpected token `('
sh: -c: line 0: `rm -f photos/vince/camping (presque) sauvage/slide_*.html'
Failed to remove existing webpages.
--

This is caused by the following piece of code (llgal.in, line 1587):
--
# remove old webpages
system (rm -f 
$self-{destination_dir}$opts-{slide_filenameprefix}*.$opts-{www_extension}) 
;
die Failed to remove existing webpages.\n if $? ;
--

I also noticed two similar problems with the generation of thumbnails
and scaled images (llgal.in, lines 597 and 690):
--
# scale down
my $cmdline = $opts-{thumbnail_create_command} ;
$cmdline =~ s/IN/\$real_filename\/g ;
$cmdline =~ s/OUT/\$real_thumb_filename\/g ;
($status, @output) = Llgal::Utils::system_with_output ( create '$filename' 
thumbnail , $cmdline ) ;
--
If an image is called ';rm -rf /;.jpg', something bad is going to
happen :-P

I've fixed these problem with the attached patch.

Note that in the case of thumbnail/scaled image creation, my patch
changes the meaning of the {thumbnail,scaled}_create_command
configuration option, which is no longer processed by the shell, so you
may want to escape some characters in filenames instead, or warn the
user of the change if any shell metas are found in these commands.

Hope this helps, and thanks for your work on llgal!

-- System Information:
Debian Release: 4.0
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-3-686
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)

Versions of packages llgal depends on:
ii  imagemagick 7:6.2.4.5.dfsg1-0.13 Image manipulation programs
ii  libimage-size-perl  3.01-1   determine the size of images in se
ii  liblocale-gettext-p 1.05-1   Using libc functions for internati
ii  liburi-perl 1.35-2   Manipulates and accesses URI strin
ii  perl5.8.8-7  Larry Wall's Practical Extraction 

Versions of packages llgal recommends:
pn  libimage-exiftool-perlnone (no description available)

-- no debconf information
diff -ru llgal-0.13.9/llgal.in llgal-0.13.9.jk/llgal.in
--- llgal-0.13.9/llgal.in	2006-11-16 22:13:53.0 +0100
+++ llgal-0.13.9.jk/llgal.in	2007-01-28 15:32:43.0 +0100
@@ -595,10 +595,12 @@
 		$real_thumb_filename = $real_filename ;
 	} else {
 		# scale down
-		my $cmdline = $opts-{thumbnail_create_command} ;
-		$cmdline =~ s/IN/\$real_filename\/g ;
-		$cmdline =~ s/OUT/\$real_thumb_filename\/g ;
-		($status, @output) = Llgal::Utils::system_with_output ( create '$filename' thumbnail, $cmdline ) ;
+		my @cmdline = map {
+			s/IN/$real_filename/g ;
+			s/OUT/$real_thumb_filename/g ;
+			$_ ;
+		} split (' ', $opts-{thumbnail_create_command}) ;
+		($status, @output) = Llgal::Utils::system_with_output ( create '$filename' thumbnail, @cmdline ) ;
 		if ($status == -1) {
 		$messages-warning (@output) ;
 		$messages-abort_percentage ;
@@ -688,10 +690,12 @@
 		$real_scaled_filename = $real_filename ;
 		} else {
 		# scale down
-		my $cmdline = $opts-{scaled_create_command} ;
-		$cmdline =~ s/IN/\$real_filename\/g ;
-		$cmdline =~ s/OUT/\$real_scaled_filename\/g ;
-		($status, @output) = Llgal::Utils::system_with_output ( create '$filename' scaled image, $cmdline ) ;
+		my @cmdline = map {
+			s/IN/$real_filename/g ;
+			s/OUT/$real_scaled_filename/g ;
+			$_ ;
+		} split (' ', $opts-{scaled_create_command}) ;
+		($status, @output) = Llgal::Utils::system_with_output ( create '$filename' scaled image, @cmdline ) ;
 		if ($status == -1) {
 			$messages-warning (@output) ;
 			$messages-abort_percentage ;
@@ -1585,9 +1589,14 @@
 my @entries = @{$gallery-{entries}} ;
 
 # remove old webpages
-system (rm -f $self-{destination_dir}$opts-{slide_filenameprefix}*.$opts-{www_extension}) ;
-die Failed to remove existing webpages.\n
-	if $? ;
+opendir DIR, $self-{destination_dir} ? $self-{destination_dir} : ./ ; # destination is empty for './'
+while ($_ = readdir DIR ) {
+	if (/^$opts-{slide_filenameprefix}.*\.$opts-{www_extension}$/) {
+	unlink $self-{destination_dir}$_
+		or die Failed to remove existing webpage '$_' ($!).\n ;
+	}
+}
+closedir DIR ;
 
 # find the slidetemplate
 my $slidetemplate = (Llgal::Templates::find_template_file ($self, $opts, $opts-{slidetemplate_filename}, 1))


Bug#408873: llgal: fails when directory names contain shell meta characters

2007-01-28 Thread Jeremie Koenig
On Sun, Jan 28, 2007 at 11:26:49PM +0100, Brice Goglin wrote:
 Jeremie Koenig wrote:
[...]
  I also noticed two similar problems with the generation of thumbnails
  and scaled images (llgal.in, lines 597 and 690):
[...]
 This case is supposed to be protected by double-quotes. Did you actually
 see a problem occur there? Or did you just find a possible problem by
 looking at the code?

I found it looking at the code, but the double quotes won't protect
double quotes, dollar signs or backquotes within filenames from being
interpreted by the shell. Here is an example:

[EMAIL PROTECTED]:~/test$ ls -l
total 532
-rw-r--r-- 1 jk jk 535037 2007-01-28 23:34 ;echo Hello, World.;.jpg
-rw-r--r-- 1 jk jk705 2007-01-28 23:40 index.html
-rw-r--r-- 1 jk jk  0 2007-01-28 23:47 typescript
[EMAIL PROTECTED]:~/test$ llgal
Listing entries in . :100.00%
Preparing entries:100.00%
!! Failed to create ';echo Hello, World.;.jpg' thumbnail.
!! convert: missing an image filename `'.
!! Hello, World.
!! sh: .jpg .llgal/thumb_;echo Hello, World.;.jpg: Aucun fichier ou répertoire 
de ce type
Found 0 entries in current directory
Using '/usr/share/llgal/slidetemplate.html' as HTML slide template.
Creating individual slides:100.00%
Using '/usr/share/llgal/indextemplate.html' as HTML index template.
Creating the index.html file:100.00%
Found llgal.css in .llgal/, using it.

  +   my @cmdline = map {
  +   s/IN/$real_filename/g ;
  +   s/OUT/$real_thumb_filename/g ;
  +   $_ ;
  +   } split (' ', $opts-{thumbnail_create_command}) ;

 I don't think this split will work if the image filename contains
 spaces.

llgal with the patch applied processes the above proof-of-concept
directory all right. Note that only $opts-{thumbnail_create_command} is
passed through split, the image filenames are substituted once this is
done, within the resulting list. Then 'exec' within 'system_with_output'
uses each element as a disctinct argument, and does the syscall
directly (ie., without using a shell).

Apart from the slight interface change this implies, the patch should be
okay (the fixed llgal is processing my collection successfully right
now, which has all kinds of unhealthily named files :-).

Maybe drop a note in the manpage documenting the fact that llgal no
longer uses /bin/sh to run the given thumbnail_create_command, but I
wouldn't expect many people (or anyone) to be relying on this anyway.




Bug#222121: Let's get ptrtd into Debian!

2007-01-10 Thread Jeremie Koenig
reopen 222121 !
thanks

I've been working on packaging ptrtd, then started to let it rot due to
lack of time and motivation. My package is basically working however,
and I'm using it again, so I will polish it in the next few weeks, make
it available for testing and look for a sponsor. I'll keep [EMAIL PROTECTED]
informed of my progress.



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#379878: reading files fails with wild name offset on big-endian architectures

2006-07-25 Thread Jeremie Koenig
Package: rsrce
Version: 0.2.1
Severity: serious
Tags: pending

There's a problem with the way htons() is used by the code for parsing
resource forks in resource.c, which causes a failure when reading files
on big-endian architectures. This bug has been reported and a patch
has been provided by Piotr Krysiuk.

This bug is fixed in the debootloaders subversion repository at
svn://svn.debian.org/debootloaders/trunk/rsrce

-- 
Jeremie Koenig [EMAIL PROTECTED]


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#340533: exporting resources as binary

2005-12-20 Thread Jeremie Koenig
On Wed, Nov 23, 2005 at 11:36:28PM +, Piotras wrote:
 Hi!
 
 The export command fails silently when trying to export binary resources
 [...]
 Reported problems are caused by incorrect logic in tr_lookup function.
 The type compare is done for each entry of translator table, while
 original intention was likely to skip this condition for entries with empty
 string in type field. Attached patch fixes this and solves reported problems.

Hello Piotr, sorry for the delay!

I'm glad to see someone is actually running rsrce :-) I hope you find it
useful. Thank you for the report, the first one I get as a maintainer,
and a very good one indeed!

I'll include your patch in the next upload of rsrce; feel free to
suggest other improvements if you're missing something, I'll try to take
the opportunity to work on polishing rsrce a bit.

Bye,

-- 
Jeremie Koenig [EMAIL PROTECTED]


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#323182: a bit more about miboot's legal status

2005-08-22 Thread Jeremie Koenig
On Mon, Aug 22, 2005 at 07:55:42AM +0200, Sven Luther wrote:
- miboot itself uses free-as-in-beer libraries from Apple, which are
  shipped together with the source code, so we would have to ask
  miboot's author to add an exception for them to its licensing terms,
  which he hadn't done yet, though comments in the source distribution
  seemed to indicate he's aware of the problem.
 
 This doesn't make miboot free, and is not really an issue, since the boot
 sector is not linked, i belive, but only agregated into the same media. Same
 as your bios is not linked to lilo.

I understand this, but was speaking about a different problem. IIRC
miBoot itself uses a non-free library from Apple, in addition to being
loaded by a non-free bootloader.

 mkvmlinuz is different, it uses the already existing zImage.coff format, which
 was in use before quik, yaboot or bootx where around.

My understanding was that oldworld OpenFirmware were broken wrt loading
such images (I can't remember where I got this impresstion, though.)

Is there a way to load such an image from an old OpenFirmware?

Also, does anyone expect quik to be loadable from a floppy? (ie would
that work with those old broken OF's?)

At the time I looked into the quik side, it seemed the only thing it
missed was the ability to deduce the floppy device name from its
configuration in order to be installable on a floppy, but I don't know
wether this omission was deliberate or not.

-- 
Jeremie Koenig [EMAIL PROTECTED]


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#323182: a bit more about miboot's legal status

2005-08-22 Thread Jeremie Koenig
On Mon, Aug 22, 2005 at 11:50:37AM +0200, Sven Luther wrote:
  I understand this, but was speaking about a different problem. IIRC
  miBoot itself uses a non-free library from Apple, in addition to being
  loaded by a non-free bootloader.
 
 Ah, which one ? I thought it only used codewarrior 4 to build, and then used
 probably the runtime, not sure. What is this library you are speaking about ?

I had a quick look, and found this text is at the top of the copy of the
GPL in the Sources directory of BootX 1.2.2:

| NOTE: The included pieces called MoreFiles, MoreCFMPatches and
| other More in the lib directory are pieces of Apple's
| MoreFiles and MoreIsBetter packages.  Those are freely distributed
| source packages containing various pre-made tools, by Apple.  The
| licence on those package is quite light and probably conflicts with
| the GPL. They are _NOT_ covered by BootX GPL, BootX licence covers
| only the directories others than lib.

However, after checking, it seems these libraries are practically not
used to build miBoot, with the exception of the inclusion of one of
their headers from common/elf_loader_defs.h (the code in the common/
subdir is used both by miBoot and BootX.)

The header file in question, Optimization.h (attached, piped through
tr '\r' '\n') is a rather trivial file, and I doubt there's any problem
here. In the worst case it would take a minor change and a rebuild to
get a 100% clean miBoot binary.

-- 
Jeremie Koenig [EMAIL PROTECTED]
/*
**	Apple Macintosh Developer Technical Support
**
**	DirectoryCopy: #defines that let you make MoreFiles code more efficient.
**
**	by Jim Luther, Apple Developer Technical Support Emeritus
**
**	File:		Optimization.h
**
**	Copyright © 1992-1998 Apple Computer, Inc.
**	All rights reserved.
**
**	You may incorporate this sample code into your applications without
**	restriction, though the sample code has been provided AS IS and the
**	responsibility for its operation is 100% yours.  However, what you are
**	not permitted to do is to redistribute the source as DSC Sample Code
**	after having made changes. If you're going to re-distribute the source,
**	we require that you make it clear in the source that the code was
**	descended from Apple Sample Code, but that you've made changes.
**
**	The Optimization changes to MoreFiles source and header files, along with
**	this file and OptimizationEnd.h, let you optimize the code produced
**	by MoreFiles in several ways.
**
**	1 -- MoreFiles contains extra code so that many routines can run under
**	Mac OS systems back to System 6. If your program requires a specific
**	version of Mac OS and your program checks for that version before
**	calling MoreFiles routines, then you can remove a lot of compatibility
**	code by defining one of the following to 1:
**
**		__MACOSSEVENFIVEONEORLATER	// assume Mac OS 7.5.1 or later
**		__MACOSSEVENFIVEORLATER		// assume Mac OS 7.5 or later
**		__MACOSSEVENORLATER			// assume Mac OS 7.0 or later
**
**	By default, all compatibility code is ON.
**
**	2 -- You may disable Pascal calling conventions in all MoreFiles routines
**	except for system callbacks that require Pascal calling conventions.
**	This will make C programs both smaller and faster.
**	Just define __WANTPASCALELIMINATION to be 1 to turn this optimization on
**	when building MoreFiles for use from C programs (you'll need to keep
**	Pascal calling conventions when linking MoreFiles routines with Pascal
**	programs).
**
**	3 -- If Metrowerks compiler is used, #pragma internal on may help produce
**	better code. However, this option can also cause problems if you're
**	trying to build MoreFiles as a shared library, so it is by default not used.
**	Just define __USEPRAGMAINTERNAL to be 1 to turn this optimization on.
**
**	Original changes supplied by Fabrizio Oddone
**
**	File:	Optimization.h
*/


#ifndef __MACOSSEVENFIVEONEORLATER
	#define __MACOSSEVENFIVEONEORLATER 0
#endif

#ifndef __MACOSSEVENFIVEORLATER
	#define __MACOSSEVENFIVEORLATER __MACOSSEVENFIVEONEORLATER
#endif

#ifndef __MACOSSEVENORLATER
	#if GENERATINGCFM
		#define __MACOSSEVENORLATER 1
	#else
		#define __MACOSSEVENORLATER __MACOSSEVENFIVEORLATER
	#endif
#endif


#ifndef	__WANTPASCALELIMINATION
	#define	__WANTPASCALELIMINATION	0
#endif

#if	__WANTPASCALELIMINATION
	#define pascal	
#endif


#ifndef __USEPRAGMAINTERNAL
	#define	__USEPRAGMAINTERNAL	0
#endif

#if	__USEPRAGMAINTERNAL
	#if defined(__MWERKS__)
		#pragma internal on
	#endif
#endif



Bug#323182: a bit more about miboot's legal status

2005-08-21 Thread Jeremie Koenig
Hello all,

On Mon, Aug 15, 2005 at 09:02:06PM +0200, Sven Luther wrote:
 The boot.img are the miboot floppies for oldworld pmacs. These are saddly not
 useable in sarge, because miboot is non-free (due to the one boot block which
 is coming directly from apple and has a couple tens of m68k assembly
 instructions nobody could be bothered to reverse-enginneer).

I seem to recall this wasn't the only legal problem:
  - since miboot requires a non-free compiler to build (and changing
that would be quite difficult,) it couldn't be part of Debian proper;
  - miboot itself uses free-as-in-beer libraries from Apple, which are
shipped together with the source code, so we would have to ask
miboot's author to add an exception for them to its licensing terms,
which he hadn't done yet, though comments in the source distribution
seemed to indicate he's aware of the problem.
(all IIRC, would need some checking)

I had some hope when mkvmlinuz, which claims to work for oldworld macs,
was added to Debian, however I never managed to make it work.

To the OP: you may want to try woody on your machine, whose installer
works reasonably well, and upgrade to sarge from there. You may need to
tweak the boot floppy to add or remove video=ofonly from the kernel
command-line, if you encounter problems when booting the image.

I know this email is very late. I haven't been able to put any work into
the oldworld stuff for a very long time, and resumed my occasional
reading of debian-boot only recently. I'd like to take this opportunity
to say I'm feeling a bit sorry for leaving this work unfinished. While
it's quite clear it won't happen in the next few months, I hope (once
more) I will eventually be able to change that.

Sven (or anyone else), in the meantime, I'd be happy to test stuff for
you (please request via direct e-mail.) And that crappy old machine is
yours if you want to do some work on it (but I'd say playing nethack
would be a more constructive way of wasting your time :-)

And to everyone here: d-i is a piece of fine art, thanks for your work !

-- 
Jeremie Koenig [EMAIL PROTECTED]


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#303579: hostname: fails to work on IPv6-only hosts

2005-08-20 Thread Jeremie Koenig
On Sat, Aug 20, 2005 at 01:46:35PM -0500, Graham Wilson wrote:
 On Sat, Apr 16, 2005 at 02:39:52AM +0200, Jeremie Koenig wrote:
  This new patch fixes this, and relies on the resolver configuration to
  choose the address family used by gethostbyname, which is better imho,
  and doesn't make use of the gethostbyname2, which is a GNU extension.
 
 Is this patch your most preferred solution to the problem?

-4/-6 options could be added to hostname later, but I think hostname
should rely on the resolver configuration for its default behavior
anyway, so this patch would be a good starting point in any case.

I'm running hostname with this patch applied for some time, and haven't
had any problem so far. I abandoned the inet6 option some time ago,
however, since many programs are broken, assuming gethostbyname would
return IPv4 addresses only, and I got tired at some point.

-- 
Jeremie Koenig [EMAIL PROTECTED]


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#322352: pdns and pdns-doc both contain /usr/share/doc-base/pdns (sarge security update version)

2005-08-16 Thread Jeremie Koenig
Hello,

I've not tested anything but I may have found the cause for this
problem. Freshly extracted, the source package contains some cruft which
gets removed upon running debian/rules clean. Specifically,

pdns-2.9.17/debian/CVS
pdns-2.9.17/debian/CVS/Root
pdns-2.9.17/debian/CVS/Repository
pdns-2.9.17/debian/CVS/Entries
pdns-2.9.17/debian/.cvsignore
pdns-2.9.17/debian/doc-base
pdns-2.9.17/debian/pdns-doc.postinst
pdns-2.9.17/debian/pdns-doc.prerm
pdns-2.9.17/debian/pdns.conffiles
pdns-2.9.17/debian/pdns.postinst
pdns-2.9.17/debian/pdns.postrm
pdns-2.9.17/debian/pdns.prerm
pdns-2.9.17/debian/shlibs.local

Note the presence of debian/doc-base.
Hope this helps, thanks for packaging pdns !

-- 
Jeremie Koenig [EMAIL PROTECTED]


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#130902: patch for chimera2 png segfault

2005-08-08 Thread Jeremie Koenig
Hello,

The attached patch fixes the random segfaults from chimera when loading
PNG files. The libpng interface used by image/png.c was deprecated, I
updated it to the newer one.

I've been able to display http://www.debian.org/ other pages correctly,
while they previously crashed chimera2.

Thanks for packaging chimera, it's a great browser !

-- 
Jeremie Koenig [EMAIL PROTECTED]
diff -ru chimera2-2.0a19/debian/substvars chimera2-2.0a19.jk/debian/substvars
--- chimera2-2.0a19/debian/substvars2005-08-09 00:18:08.293491385 +0200
+++ chimera2-2.0a19.jk/debian/substvars 2005-08-09 00:13:40.221457000 +0200
@@ -1 +1 @@
-shlibs:Depends=libc6 (= 2.2.1-2), libjpeg62, libpng2, libxaw7 (= 4.0.1-1), 
xlibs (= 4.0.1-11), zlib1g (= 1:1.1.3)
+shlibs:Depends=libc6 (= 2.3.2.ds1-21), libice6 | xlibs ( 4.1.0), libjpeg62, 
libpng12-0 (= 1.2.8rel), libsm6 | xlibs ( 4.1.0), libx11-6 | xlibs ( 
4.1.0), libxaw7 ( 4.1.0), libxext6 | xlibs ( 4.1.0), libxmu6 | xlibs ( 
4.1.0), libxpm4 | xlibs ( 4.1.0), libxt6 | xlibs ( 4.1.0), zlib1g (= 
1:1.2.1)
Seulement dans chimera2-2.0a19.jk/image: .png.c.swo
Seulement dans chimera2-2.0a19.jk/image: .png.c.swp
diff -ru chimera2-2.0a19/image/png.c chimera2-2.0a19.jk/image/png.c
--- chimera2-2.0a19/image/png.c 1999-03-29 04:23:46.0 +0200
+++ chimera2-2.0a19.jk/image/png.c  2005-08-09 00:27:54.250138526 +0200
@@ -60,33 +60,49 @@
 int orig_depth = 0;
 pngState *png = (pngState *) png_get_progressive_ptr(state);
 
-if (info-bit_depth  8  (PNG_COLOR_TYPE_RGB == info-color_type ||
-PNG_COLOR_TYPE_RGB_ALPHA == info-color_type))
+png_byte   bit_depth = png_get_bit_depth(state, info),
+   color_type = png_get_color_type(state, info);
+png_uint_32 width = png_get_image_width(state, info),
+   height = png_get_image_height(state, info),
+   valid_tRNS = png_get_valid(state, info, PNG_INFO_tRNS),
+   valid_gAMA = png_get_valid(state, info, PNG_INFO_gAMA);
+png_colorp palette;
+png_color_16p trans_values;
+png_bytep trans;
+int num_palette, num_trans;
+double gamma;
+
+png_get_PLTE(state, info, palette, num_palette);
+png_get_tRNS(state, info, trans, num_trans, trans_values);
+png_get_gAMA(state, info, gamma);
+
+if (bit_depth  8  (PNG_COLOR_TYPE_RGB == color_type ||
+PNG_COLOR_TYPE_RGB_ALPHA == color_type))
 png_set_expand(state);
 
 /* I wish the frame's background colour was available here */
-if (info-color_type  PNG_COLOR_MASK_ALPHA) {
+if (color_type  PNG_COLOR_MASK_ALPHA) {
 png_color_16 bg;
 int gflag = PNG_BACKGROUND_GAMMA_SCREEN;
 double gval = 1.0;
 int expand = 0;
 
 bg.red = bg.green = bg.blue = bg.gray = 0;
-if (PNG_COLOR_TYPE_PALETTE == info-color_type)
+if (PNG_COLOR_TYPE_PALETTE == color_type)
 png_set_expand(state);
 
 png_set_background(state, bg, gflag, expand, gval);
 }
 
-if (info-bit_depth  8  (info-bit_depth  1 ||
-PNG_COLOR_TYPE_GRAY != info-color_type)) {
-if (PNG_COLOR_TYPE_GRAY == info-color_type)
-orig_depth = info-bit_depth;
+if (bit_depth  8  (bit_depth  1 ||
+PNG_COLOR_TYPE_GRAY != color_type)) {
+if (PNG_COLOR_TYPE_GRAY == color_type)
+orig_depth = bit_depth;
 png_set_packing(state);
 }
  
 /* tell libpng to strip 16 bit depth files down to 8 bits */
-if (info-bit_depth  8)
+if (bit_depth  8)
 png_set_strip_16(state);
 
 png_set_interlace_handling(state);
@@ -95,18 +111,18 @@
 png_read_update_info(state, info);
 
 /* allocate the memory to hold the image using the fields of png_info. */
-if (PNG_COLOR_TYPE_GRAY == info-color_type  1 == info-bit_depth) {
-png-image = newBitImage(info-width, info-height);
+if (PNG_COLOR_TYPE_GRAY == color_type  1 == bit_depth) {
+png-image = newBitImage(width, height);
if (!png-image) {
png-done = image_error;
return;
}
 
 png_set_invert_mono(state);
-} else if (PNG_COLOR_TYPE_PALETTE == info-color_type) {
+} else if (PNG_COLOR_TYPE_PALETTE == color_type) {
 int i;
 
-png-image = newRGBImage(info-width, info-height, info-bit_depth);
+png-image = newRGBImage(width, height, bit_depth);
if (!png-image) {
png-done = image_error;
return;
@@ -115,28 +131,28 @@
 png-image-rgb.red = png-cmap[0];
 png-image-rgb.green = png-cmap[1];
 png-image-rgb.blue = png-cmap[2];
-for (i = 0; i  info-num_palette; ++i) {
-png-image-rgb.red[i] = info-palette[i].red  8;
-png-image-rgb.green[i] = info-palette[i].green  8;
-png-image-rgb.blue[i] = info-palette[i].blue  8;
+for (i = 0; i  num_palette; ++i) {
+png-image-rgb.red[i] = palette[i].red  8;
+png-image-rgb.green[i

Bug#130902: patch for chimera2 png segfault

2005-08-08 Thread Jeremie Koenig
tags 130902 +patch
thanks

Okay, now here is a cleaner patch which also updates the libpng build
dependency to libpng12-dev. Also note that your debian/rules clean
target should remove debian/substvars.

Sorry for the noise, I hope I got everything right this time...

-- 
Jeremie Koenig [EMAIL PROTECTED]
diff -ru chimera2-2.0a19.org/debian/control chimera2-2.0a19/debian/control
--- chimera2-2.0a19.org/debian/control  2005-08-09 01:12:18.032769000 +0200
+++ chimera2-2.0a19/debian/control  2005-08-09 01:15:13.665747610 +0200
@@ -3,7 +3,7 @@
 Priority: optional
 Maintainer: Mark Baker [EMAIL PROTECTED]
 Standards-Version: 3.1.0
-Build-Depends: libjpeg62-dev, libpng2-dev, xutils, zlib1g-dev, xlibs-dev, 
libxaw7-dev
+Build-Depends: libjpeg62-dev, libpng12-dev, xutils, zlib1g-dev, xlibs-dev, 
libxaw7-dev
 
 Package: chimera2
 Architecture: any
diff -ru chimera2-2.0a19.org/image/png.c chimera2-2.0a19/image/png.c
--- chimera2-2.0a19.org/image/png.c 1999-03-29 04:23:46.0 +0200
+++ chimera2-2.0a19/image/png.c 2005-08-09 01:13:58.646902427 +0200
@@ -60,33 +60,49 @@
 int orig_depth = 0;
 pngState *png = (pngState *) png_get_progressive_ptr(state);
 
-if (info-bit_depth  8  (PNG_COLOR_TYPE_RGB == info-color_type ||
-PNG_COLOR_TYPE_RGB_ALPHA == info-color_type))
+png_byte   bit_depth = png_get_bit_depth(state, info),
+   color_type = png_get_color_type(state, info);
+png_uint_32 width = png_get_image_width(state, info),
+   height = png_get_image_height(state, info),
+   valid_tRNS = png_get_valid(state, info, PNG_INFO_tRNS),
+   valid_gAMA = png_get_valid(state, info, PNG_INFO_gAMA);
+png_colorp palette;
+png_color_16p trans_values;
+png_bytep trans;
+int num_palette, num_trans;
+double gamma;
+
+png_get_PLTE(state, info, palette, num_palette);
+png_get_tRNS(state, info, trans, num_trans, trans_values);
+png_get_gAMA(state, info, gamma);
+
+if (bit_depth  8  (PNG_COLOR_TYPE_RGB == color_type ||
+PNG_COLOR_TYPE_RGB_ALPHA == color_type))
 png_set_expand(state);
 
 /* I wish the frame's background colour was available here */
-if (info-color_type  PNG_COLOR_MASK_ALPHA) {
+if (color_type  PNG_COLOR_MASK_ALPHA) {
 png_color_16 bg;
 int gflag = PNG_BACKGROUND_GAMMA_SCREEN;
 double gval = 1.0;
 int expand = 0;
 
 bg.red = bg.green = bg.blue = bg.gray = 0;
-if (PNG_COLOR_TYPE_PALETTE == info-color_type)
+if (PNG_COLOR_TYPE_PALETTE == color_type)
 png_set_expand(state);
 
 png_set_background(state, bg, gflag, expand, gval);
 }
 
-if (info-bit_depth  8  (info-bit_depth  1 ||
-PNG_COLOR_TYPE_GRAY != info-color_type)) {
-if (PNG_COLOR_TYPE_GRAY == info-color_type)
-orig_depth = info-bit_depth;
+if (bit_depth  8  (bit_depth  1 ||
+PNG_COLOR_TYPE_GRAY != color_type)) {
+if (PNG_COLOR_TYPE_GRAY == color_type)
+orig_depth = bit_depth;
 png_set_packing(state);
 }
  
 /* tell libpng to strip 16 bit depth files down to 8 bits */
-if (info-bit_depth  8)
+if (bit_depth  8)
 png_set_strip_16(state);
 
 png_set_interlace_handling(state);
@@ -95,18 +111,18 @@
 png_read_update_info(state, info);
 
 /* allocate the memory to hold the image using the fields of png_info. */
-if (PNG_COLOR_TYPE_GRAY == info-color_type  1 == info-bit_depth) {
-png-image = newBitImage(info-width, info-height);
+if (PNG_COLOR_TYPE_GRAY == color_type  1 == bit_depth) {
+png-image = newBitImage(width, height);
if (!png-image) {
png-done = image_error;
return;
}
 
 png_set_invert_mono(state);
-} else if (PNG_COLOR_TYPE_PALETTE == info-color_type) {
+} else if (PNG_COLOR_TYPE_PALETTE == color_type) {
 int i;
 
-png-image = newRGBImage(info-width, info-height, info-bit_depth);
+png-image = newRGBImage(width, height, bit_depth);
if (!png-image) {
png-done = image_error;
return;
@@ -115,28 +131,28 @@
 png-image-rgb.red = png-cmap[0];
 png-image-rgb.green = png-cmap[1];
 png-image-rgb.blue = png-cmap[2];
-for (i = 0; i  info-num_palette; ++i) {
-png-image-rgb.red[i] = info-palette[i].red  8;
-png-image-rgb.green[i] = info-palette[i].green  8;
-png-image-rgb.blue[i] = info-palette[i].blue  8;
+for (i = 0; i  num_palette; ++i) {
+png-image-rgb.red[i] = palette[i].red  8;
+png-image-rgb.green[i] = palette[i].green  8;
+png-image-rgb.blue[i] = palette[i].blue  8;
 }
-png-image-rgb.used = info-num_palette;
-if (info-valid  PNG_INFO_tRNS) {
+png-image-rgb.used = num_palette;
+if (valid_tRNS) {
 int val, i;
 
 val = 0

Bug#314609: libkrb53: allow whitespace before comments in /etc/krb5.conf

2005-06-17 Thread Jeremie Koenig
Package: libkrb53
Version: 1.3.6-2
Severity: wishlist
Tags: patch

Hello,

I've been hit by a bad surprise with ssh-krb5 using libkrb53 on an
otherwise heimdal installation. Heimdal does allow for leading
whitespace before the '#' sign introducing a comment in /etc/krb5.conf,
and MIT kerberos doesn't.

So I put some whitespace into my krb5.conf. Later I installed ssh-krb5,
which use MIT heimdal libraries and failed silently to authenticate via
gssapi because of this, and it took me time and effort to understand
what was going on. The fact that the particular debug message wasn't
working properly in ssh-krb5 didn't help.

So, I propose for comment leading whitespace to be allowed with MIT
Kerberos as well as Heimdal, and attach a patch which does this.

-- 
Jeremie Koenig [EMAIL PROTECTED]
diff -ru krb5-1.3.6.old/src/util/profile/prof_parse.c 
krb5-1.3.6/src/util/profile/prof_parse.c
--- krb5-1.3.6.old/src/util/profile/prof_parse.c2003-12-16 
02:02:42.0 +0100
+++ krb5-1.3.6/src/util/profile/prof_parse.c2005-06-17 00:57:33.0 
+0200
@@ -89,10 +89,10 @@

if (*line == 0)
return 0;
-   if (line[0] == ';' || line[0] == '#')
-   return 0;
-   strip_line(line);
cp = skip_over_blanks(line);
+   if (cp[0] == ';' || cp[0] == '#')
+   return 0;
+   strip_line(cp);
ch = *cp;
if (ch == 0)
return 0;


Bug#314365: string2key and its manpage are not in the same package

2005-06-15 Thread Jeremie Koenig
Package: heimdal
Version: 0.6.3-10
Severity: minor

Hello, I noticed the string2key command is in heimdal-clients and its
manpage is in -servers.

Since -clients doesn't depends on -servers, I guess this is a bug.

-- 
Jeremie Koenig [EMAIL PROTECTED]


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#305869: pdns: French debconf templates translation update

2005-04-23 Thread Jeremie Koenig
Hello,

Sorry for nitpicking, but I think there is an inaccuracy in the last two
strings. Each DNS query has a recursion desired flag, which requests
that the DNS server completes the whole query on the behalf of the
client, instead of redirecting it to the knowledgeable DNS servers only.

The question in question is about choosing for what networks the flag
should be honored.


My suggestions:

 msgstr Liste des sous-réseaux pouvant être interrogés :

Liste des sous-réseaux autorisés à effectuer des requêtes récursives :

 Veuillez indiquer la liste des sous-réseaux, séparés par des points-
 virgules, qu'il est autorisé de parcourir. Des valeurs autorisées sont 

s/qu'il est ... parcourir/autorisés à effectuer des requêtes récursives/


Thanks for your work,

-- 
Jeremie Koenig [EMAIL PROTECTED]



Bug#303579: hostname: fails to work on IPv6-only hosts

2005-04-15 Thread Jeremie Koenig
On Thu, Apr 07, 2005 at 05:30:26PM +0200, I wrote:
 Here is a patch which makes hostname try an IPv6 lookup in case the IPv4
 one fails. This is needed to make hostname work on IPv6-only hosts.

It seems defining 'option inet6' (which I just discovered) in
/etc/resolv.conf fixes part of the problem, and allows hostname to find
the FQDN and aliases using IPv6 lookups. However, IPv6 are mistakenly
displayed as IPv4 ones.

This new patch fixes this, and relies on the resolver configuration to
choose the address family used by gethostbyname, which is better imho,
and doesn't make use of the gethostbyname2, which is a GNU extension.

A note is also added to the manual page in the hope that it will point
people configuring IPv6-only hosts and wondering why hostname -f fails
in the right direction.

Hope this helps,

-- 
Jeremie Koenig [EMAIL PROTECTED]
diff -ru hostname-2.13.orig/hostname.c hostname-2.13/hostname.c
--- hostname-2.13.orig/hostname.c   2003-12-18 03:11:33.0 +0100
+++ hostname-2.13/hostname.c2005-04-16 01:08:58.0 +0200
@@ -123,6 +123,8 @@
register char *p,**alias;
struct in_addr **ip;
int flag = 0;   
+   char abuf[INET6_ADDRSTRLEN];
+
if (opt_v)
fprintf(stderr,NLS_CATGETS(catfd, hostnameSet, 
hostname_verb_res, Resolving `%s' ...\n),hname);
if (!(hp = gethostbyname(hname))) {
@@ -143,7 +145,7 @@
ip=(struct in_addr **)hp-h_addr_list;
while(ip[0])
fprintf(stderr,NLS_CATGETS(catfd, hostnameSet, 
hostname_verb_ipn, Result: h_addr_list=`%s'\n),
-   inet_ntoa(**ip++));
+   inet_ntop(hp-h_addrtype, *ip++, abuf, 
sizeof(abuf)));
}
 
if (!(p = strchr(hp-h_name, '.'))  (c == 'd')) return;
@@ -162,7 +164,8 @@
while (hp-h_addr_list[0]) {
if(flag)
printf( );
-   printf(%s , inet_ntoa(*(struct in_addr *) * 
hp-h_addr_list++));
+   printf(%s, inet_ntop(hp-h_addrtype,
+   *hp-h_addr_list++, abuf,sizeof(abuf)));
flag = 1;
}
printf(\n);
diff -ru hostname-2.13.orig/man/en_US.88591/hostname.1 
hostname-2.13/man/en_US.88591/hostname.1
--- hostname-2.13.orig/man/en_US.88591/hostname.1   2003-12-18 
03:11:33.0 +0100
+++ hostname-2.13/man/en_US.88591/hostname.12005-04-16 01:52:09.906995408 
+0200
@@ -130,7 +130,7 @@
 Print a usage message and exit.
 .TP
 .I \-i, \-\-ip-address
-Display the IP address(es) of the host.
+Display the network address(es) of the host.
 .TP
 .I \-s, \-\-short
 Display the short host name. This is the host name cut at the first dot.
@@ -145,6 +145,16 @@
 Display the NIS domain name. If a parameter is given (or 
 .B \-\-file name
 ) then root can also set a new NIS domain.
+.SH NOTES
+The address families
+.B hostname
+tries when looking up the FQDN, aliases and network addresses of the
+host are determined by the configuration of your resolver.
+For instance, on GNU Libc systems, the resolver can be instructed to
+try IPv6 lookups first by using the
+.B inet6
+option in
+.BR /etc/resolv.conf .
 .SH FILES
 .B /etc/hosts
 .SH AUTHORS


Bug#303910: pdns-backend-ldap: debian patch breaks zone transfer

2005-04-13 Thread Jeremie Koenig
On Sat, Apr 09, 2005 at 06:35:34PM +0200, sprite wrote:
  By the way, the patch seems quite dirty and untested overall, there are
  typos (in-add.arpa), some lines only add spaces between parenthesis,
  etc.  I'm in the process of rewriting it in a more clean way and will
  submit the result here when I'm done with this.

Sorry, I didn't do my homework correctly, and didn't notice the patch was
similar to http://www.linuxnetworks.de/pdnsldap/ldapbackend_2.9.17.diff.
However this one hasn't got the bugs :-)

  Could you give me a list of what features the patch is supposed to add?
  Some lines are unclear to me in what they're trying to achieve.

It seems my brain has stripped away the '## DP:' comments as well...

After overwriting the debian patch with the one mentioned above, and
rebuilding the pdns packages from sources, everything works fine.

-- 
Jeremie Koenig [EMAIL PROTECTED]


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#303579: hostname: fails to work on IPv6-only hosts

2005-04-07 Thread Jeremie Koenig
Package: hostname
Version: 2.13
Severity: minor
Tags: patch

Hello,

Here is a patch which makes hostname try an IPv6 lookup in case the IPv4
one fails. This is needed to make hostname work on IPv6-only hosts.

This is a quick minimal non-instrusive half-fix only. I'd like to
implement the following behaviour if you and/or upstream are instereted:
- by default, use both IPv4 and IPv6 for finding addresses/aliases;
- allow the user to restrict operation to a given address space by
  using some command-line flags (such as -4/-6).  This would allow
  scripts to trust hostname to give them IPv4 or IPv6 addresses
  only.

What do you think ?

-- 
Jeremie Koenig [EMAIL PROTECTED]
diff -ru hostname-2.13.orig/hostname.c hostname-2.13/hostname.c
--- hostname-2.13.orig/hostname.c   2003-12-18 03:11:33.0 +0100
+++ hostname-2.13/hostname.c2005-04-07 16:08:24.0 +0200
@@ -123,9 +123,13 @@
register char *p,**alias;
struct in_addr **ip;
int flag = 0;   
+   char abuf[INET6_ADDRSTRLEN];
+
if (opt_v)
fprintf(stderr,NLS_CATGETS(catfd, hostnameSet, 
hostname_verb_res, Resolving `%s' ...\n),hname);
-   if (!(hp = gethostbyname(hname))) {
+
+   if (!(hp = gethostbyname(hname))  !(hp = gethostbyname2(hname,
+   AF_INET6))) {
herror(program_name);
NLS_CATCLOSE(catfd)
exit(1);
@@ -143,7 +147,7 @@
ip=(struct in_addr **)hp-h_addr_list;
while(ip[0])
fprintf(stderr,NLS_CATGETS(catfd, hostnameSet, 
hostname_verb_ipn, Result: h_addr_list=`%s'\n),
-   inet_ntoa(**ip++));
+   inet_ntop(hp-h_addrtype, *ip++, abuf, 
sizeof(abuf)));
}
 
if (!(p = strchr(hp-h_name, '.'))  (c == 'd')) return;
@@ -162,7 +166,8 @@
while (hp-h_addr_list[0]) {
if(flag)
printf( );
-   printf(%s , inet_ntoa(*(struct in_addr *) * 
hp-h_addr_list++));
+   printf(%s, inet_ntop(hp-h_addrtype,
+   *hp-h_addr_list++, abuf,sizeof(abuf)));
flag = 1;
}
printf(\n);


Bug#303685: pdns-backend-ldap: please include dnsdomain2.schema

2005-04-07 Thread Jeremie Koenig
Package: pdns-backend-ldap
Version: 2.9.17-9
Severity: wishlist

Although the PowerDNS LDAP backend can be used with the standard
dnsdomain schema, Norbert Sendetzky distributes an enhanced version on
his webpage at http://www.linuxnetworks.de/pdnsldap/ with support for
recent resource records such as  or SRV.

Maybe it would be worthwhile to include in the pdns-backend-ldap Debian
package in /etc/ldap/schema ?

-- 
Jeremie Koenig [EMAIL PROTECTED]


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#303314: totd: doesn't create the /var/run/totd directory when absent

2005-04-05 Thread Jeremie Koenig
Package: totd
Version: 1.4-3
Severity: minor

I have a tmpfs mounted on /var/run and totd failed to start because of
the missing /var/run/totd directory. It was quite easy to work around,
however, by changing the value for the 'pidfile' configuration option.

I'd like to suggest a default of /var/run/totd.pid for this option
anyway, as totd needs only one file in /var/run (I think), and it would
solve this minor inconvenience.

-- 
Jeremie Koenig [EMAIL PROTECTED]


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]