diff -u ifenslave-2.6-1.1.0/debian/pre-up ifenslave-2.6-1.1.0/debian/pre-up --- ifenslave-2.6-1.1.0/debian/pre-up +++ ifenslave-2.6-1.1.0/debian/pre-up @@ -89,7 +89,10 @@ sysfs "$IF_BOND_XMIT_HASH_POLICY" xmit_hash_policy sysfs "$IF_BOND_LACP_RATE" lacp_rate sysfs_add "$IF_BOND_ARP_IP_TARGET" arp_ip_target +} +setup_slaves() +{ # The first slave in bond-primary found in current slaves becomes the primary. # If no slave in bond-primary is found, then primary does not change. for slave in $IF_BOND_PRIMARY ; do @@ -128,2 +131,3 @@ -enslave_slaves setup_master +enslave_slaves +setup_slaves diff -u ifenslave-2.6-1.1.0/debian/ifenslave-2.6.preinst ifenslave-2.6-1.1.0/debian/ifenslave-2.6.preinst --- ifenslave-2.6-1.1.0/debian/ifenslave-2.6.preinst +++ ifenslave-2.6-1.1.0/debian/ifenslave-2.6.preinst @@ -1,11 +1,25 @@ #!/bin/sh -e -if [ -f /etc/network/if-up.d/ifenslave -a ! -e /etc/network/if-pre-up.d/ifenslave ]; then - mv /etc/network/if-up.d/ifenslave /etc/network/if-pre-up.d/ifenslave -fi +prep_mv_conffile() { + local PKGNAME="$1" + local CONFFILE="$2" -if [ -f /etc/network/if-down.d/ifenslave -a ! -e /etc/network/if-post-down.d/ifenslave ]; then - mv /etc/network/if-down.d/ifenslave /etc/network/if-post-down.d/ifenslave -fi + [ -e "$CONFFILE" ] || return 0 + + local md5sum="$(md5sum $CONFFILE | sed -e 's/ .*//')" + local old_md5sum="$(dpkg-query -W -f='${Conffiles}' $PKGNAME | \ + sed -n -e "\' $CONFFILE ' { s/ obsolete$//; s/.* //; p }")" + if [ "$md5sum" = "$old_md5sum" ]; then + rm -f "$CONFFILE" + fi +} + +case "$1" in +install|upgrade) + if dpkg --compare-versions "$2" le "1.1.0-6"; then + prep_mv_conffile ifenslave "/etc/network/if-up.d/wireless-tools" + prep_mv_conffile ifenslave "/etc/network/if-down.d/wireless-tools" + fi +esac #DEBHELPER# diff -u ifenslave-2.6-1.1.0/debian/ifenslave-2.6.postinst ifenslave-2.6-1.1.0/debian/ifenslave-2.6.postinst --- ifenslave-2.6-1.1.0/debian/ifenslave-2.6.postinst +++ ifenslave-2.6-1.1.0/debian/ifenslave-2.6.postinst @@ -5,2 +5,21 @@ +mv_conffile() { + local OLDCONFFILE="$1" + local NEWCONFFILE="$2" + + [ -e "$OLDCONFFILE" ] || return 0 + + echo "Preserving user changes to $NEWCONFFILE ..." + mv -f "$NEWCONFFILE" "$NEWCONFFILE".dpkg-new + mv -f "$OLDCONFFILE" "$NEWCONFFILE" +} + +case "$1" in +configure) + if dpkg --compare-versions "$2" le "1.1.0-6"; then + mv_conffile "/etc/network/if-up.d/ifenslave" "/etc/network/if-pre-up.d/ifenslave" + mv_conffile "/etc/network/if-down.d/ifenslave" "/etc/network/if-post-down.d/ifenslave" + fi +esac + #DEBHELPER# diff -u ifenslave-2.6-1.1.0/debian/changelog ifenslave-2.6-1.1.0/debian/changelog --- ifenslave-2.6-1.1.0/debian/changelog +++ ifenslave-2.6-1.1.0/debian/changelog @@ -1,3 +1,10 @@ +ifenslave-2.6 (1.1.0-14ubuntu2.2) lucid-proposed; urgency=low + + * Backport patches from 1.1.0.15 to fix dpkg trigger error and to + fix interface bonding (LP: #482419) + + -- Bhavani Shankar Wed, 14 Jul 2010 15:01:54 +0530 + ifenslave-2.6 (1.1.0-14ubuntu2.1) lucid-proposed; urgency=low * Adjust README.Debian to be consistent with the examples, not advising