From crazy at frugalware.org Sat Mar 1 00:48:42 2008
From: crazy at frugalware.org (crazy)
Date: Sat Mar 1 00:48:44 2008
Subject: [Frugalware-git] frugalware-current: qt4-4.3.4-1-i686
Message-ID: <20080229234842.5A5C2119050E@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=5252f96dcd1f90b5259bad9a46d755fbbefc37f1
commit 5252f96dcd1f90b5259bad9a46d755fbbefc37f1
Author: crazy
Date: Sat Mar 1 00:31:51 2008 +0100
qt4-4.3.4-1-i686
* Version bump
diff --git a/source/xlib-extra/qt4/FrugalBuild b/source/xlib-extra/qt4/FrugalBuild
index 4401569..6df416a 100644
--- a/source/xlib-extra/qt4/FrugalBuild
+++ b/source/xlib-extra/qt4/FrugalBuild
@@ -3,8 +3,8 @@
pkgname=qt4
origname=qt
-pkgver=4.3.3
-pkgrel=3
+pkgver=4.3.4
+pkgrel=1
pkgmore=x11-opensource-src
## Dummy package is empty ..
pkgdesc="The QT4 GUI toolkit."
@@ -31,7 +31,7 @@ source=(ftp://ftp.trolltech.com/qt/source/$origname-$pkgmore-$pkgver.tar.gz \
frugalware.patch \
Trolltech.conf \
apply_patches)
-sha1sums=('77d00e2438efa793f6c16c54b64c8ba440ee3228' \
+sha1sums=('639f6469d5aa07c51c2aa6795f8e3de3aab8cd25' \
'a0fa3976fc9e28cd1b9debf913f4e1a3cf850df9' \
'70413a58f1d4b7260ab407482675b8028cea4e47' \
'957376dd30fdf1bbc2ff5545f2f808f90d44c4dc' \
@@ -120,6 +120,7 @@ build()
Fpatchall
Fsed "DUMMY" "${CFLAGS} -fno-strict-aliasing -Wno-deprecated" mkspecs/common/g++.conf
mv $Fsrcdir/{patches,apply_patches} $Fsrcdir/$origname-$pkgmore-$pkgver || Fdie
+ rm -rf $Fsrcdir/$origname-$pkgmore-$pkgver/patches/{0206*,0204*} || Fdie
chmod +x apply_patches || Fdie
./apply_patches || Fdie
./configure \
@@ -155,7 +156,7 @@ build()
-plugin-sql-odbc \
-qdbus -glib \
-no-separate-debug-info \
- -optimized-qmake \
+ -no-optimized-qmake \
-fast \
-reduce-relocations || return 1
@@ -256,7 +257,7 @@ build()
Fln linux-g++ /usr/share/$pkgname/mkspecs/default
## License etc
- for l in *TXT changes-* *.GPL *.QPL README INSTALL
+ for l in *TXT changes-* GPL* *.GPL* *.QPL INSTALL README
do
Fdocrel $l
done
From crazy at frugalware.org Sat Mar 1 03:46:13 2008
From: crazy at frugalware.org (crazy)
Date: Sat Mar 1 03:46:15 2008
Subject: [Frugalware-git] playground: qt4-4.4.0-0playround2-i686
Message-ID: <20080301024613.7647C119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=playground.git;a=commitdiff;h=4aebd2e5acc4f029b766848c7921a08f465e2738
commit 4aebd2e5acc4f029b766848c7921a08f465e2738
Author: crazy
Date: Sat Mar 1 03:26:59 2008 +0100
qt4-4.4.0-0playround2-i686
* newer snapshot
* updated trunk/qt-copy patches also
diff --git a/source/xlib-extra/qt4/FrugalBuild b/source/xlib-extra/qt4/FrugalBuild
index b93aff6..4466e1f 100644
--- a/source/xlib-extra/qt4/FrugalBuild
+++ b/source/xlib-extra/qt4/FrugalBuild
@@ -4,7 +4,7 @@
pkgname=qt4
origname=qt
pkgver=4.4.0
-pkgrel=0playround1
+pkgrel=0playround2
pkgmore=x11-opensource-src
## Dummy package is empty ..
pkgdesc="The QT4 GUI toolkit."
@@ -21,8 +21,8 @@ groups=('xlib-extra')
archs=('i686' 'x86_64')
options=('scriptlet' 'nodocs')
up2date="lynx -dump ftp://ftp.trolltech.com/qt/source/|grep 'qt-x11-opensource-src'|grep -v rc[1-9]|grep -v beta|sort -n -r|head -n 1|sed 's/.*-\(.*\).t.*/\1/'"
-source=(ftp://ftp.trolltech.com/qt/snapshots/qt-x11-opensource-src-4.4.0-snapshot-20080224.tar.bz2 \
- http://ftp.frugalware.org/pub/other/people/crazy/source/kde4/patches-778836.tar.bz2 \
+source=(ftp://ftp.trolltech.com/qt/snapshots/qt-x11-opensource-src-4.4.0-snapshot-20080229.tar.bz2 \
+ http://ftp.frugalware.org/pub/other/people/crazy/source/kde4/patches-780789.tar.bz2 \
uitools-shared.patch \
assistant4.desktop \
assistant4-compat.desktop \
@@ -34,8 +34,8 @@ source=(ftp://ftp.trolltech.com/qt/snapshots/qt-x11-opensource-src-4.4.0-snapsho
frugalware.patch \
Trolltech.conf \
apply_patches)
-sha1sums=('ccd89b82822a6e8142a5fdf618d6b8610ee080cb' \
- 'ccd747c1bdc5e65278b46ceaab62756af005b08a' \
+sha1sums=('2b97189610cce693e3f59b5c5bd2d759b377c37c' \
+ '68d80cf22283911ecf7c4536352a9364625b31a9' \
'a65d9b29f2eb4c7323d33e04ccc24e7f8934aa17' \
'70413a58f1d4b7260ab407482675b8028cea4e47' \
'ae0a66ad4fafbaa009635a9ae286949d895046e3' \
@@ -146,7 +146,7 @@ build()
}
cd $Fsrcdir || Fdie
- mv $origname-$pkgmore-$pkgver-snapshot-20080224 $origname-$pkgmore-$pkgver || Fdie
+ mv $origname-$pkgmore-$pkgver-snapshot-20080229 $origname-$pkgmore-$pkgver || Fdie
cd $origname-$pkgmore-$pkgver || Fdie
Fpatchall
Fsed "DUMMY" "${CFLAGS} -fno-strict-aliasing -Wno-deprecated" mkspecs/common/g++.conf
@@ -181,7 +181,7 @@ build()
## Here we go
Fmessage "Running make.."
- make || Fdie
+ make || Fdie
## -qtestlib
do_split "src/testlib" libqttest
From crazy at frugalware.org Sat Mar 1 05:12:19 2008
From: crazy at frugalware.org (crazy)
Date: Sat Mar 1 05:12:22 2008
Subject: [Frugalware-git] playground: kdelibs-4.00.99-0playground4-i686
Message-ID: <20080301041219.DC8DE1190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=playground.git;a=commitdiff;h=37bffc80507e82a27ffa04aaa5cad7bde5618ec9
commit 37bffc80507e82a27ffa04aaa5cad7bde5618ec9
Author: crazy
Date: Sat Mar 1 05:06:05 2008 +0100
kdelibs-4.00.99-0playground4-i686
* newer snapshot
diff --git a/source/kde4/kdelibs/FrugalBuild b/source/kde4/kdelibs/FrugalBuild
index 53f341a..30f97b4 100644
--- a/source/kde4/kdelibs/FrugalBuild
+++ b/source/kde4/kdelibs/FrugalBuild
@@ -2,9 +2,9 @@
# Maintainer: crazy
pkgname=kdelibs
-kdesvn=778813
+kdesvn=780793
pkgver=4.00.99
-pkgrel=0playground3
+pkgrel=0playground4
pkgdesc="KDE4 Core Libraries."
depends=('libkde' 'libqtnetwork>=4.4.0' 'qt4-qdbus' 'bzip2' 'libsm' 'libxfixes' 'gamin' 'xfsprogs-attr' 'fontconfig' 'libqtuitools>=4.4.0' \
'pcre' 'libqttest>=4.4.0' 'libxslt' 'heimdal' 'libqtsql>=4.4.0' 'libqtdesigner>=4.4.0' 'openexr' 'jasper' 'shared-mime-info')
@@ -19,7 +19,7 @@ options=('nomirror')
Finclude kde4
source=(http://192.168.0.2/.KDE4/$pkgname-${pkgver}_${kdesvn}.tar.bz2 fw-fonts.patch)
_F_cd_path="$pkgname-${pkgver}_${kdesvn}"
-sha1sums=('3241101b464167cb9966a76e7f0580b6b295e10e' \
+sha1sums=('7e936ee6c68c72c5e0123c2f4efd06150536be92' \
'7fde528360a1243e11edef700d0d8ead099e720a')
## TODO: groups!!!
From crazy at frugalware.org Sat Mar 1 05:30:59 2008
From: crazy at frugalware.org (crazy)
Date: Sat Mar 1 05:31:04 2008
Subject: [Frugalware-git] playground: kdepimlibs-4.00.99-0playground4-i686
Message-ID: <20080301043059.327D81190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=playground.git;a=commitdiff;h=55701a81df96a3dc422dd91818ac9f2fe4c35c50
commit 55701a81df96a3dc422dd91818ac9f2fe4c35c50
Author: crazy
Date: Sat Mar 1 05:28:56 2008 +0100
kdepimlibs-4.00.99-0playground4-i686
* newer snapshot
diff --git a/source/kde4/kdepimlibs/FrugalBuild b/source/kde4/kdepimlibs/FrugalBuild
index ce2c31f..f8cbc53 100644
--- a/source/kde4/kdepimlibs/FrugalBuild
+++ b/source/kde4/kdepimlibs/FrugalBuild
@@ -2,9 +2,9 @@
# Maintainer: crazy
pkgname=kdepimlibs
-kdesvn=778820
+kdesvn=780662
pkgver=4.00.99
-pkgrel=0playground3
+pkgrel=0playground4
pkgdesc="Personal Information Management (PIM) libraries for KDE4."
depends=('libice' 'libxext' 'libqtgui>=4.4.0' 'libxfixes' 'libxrender' 'libkde>=4.00.99' \
'gamin' 'xfsprogs-attr' 'libldap' 'libqtnetwork>=4.4.0' 'qt4-qdbus>=4.4.0' \
@@ -16,6 +16,6 @@ options=('nomirror')
Finclude kde4
source=(http://192.168.0.2/.KDE4/$pkgname-${pkgver}_${kdesvn}.tar.bz2)
_F_cd_path="$pkgname-${pkgver}_${kdesvn}"
-sha1sums=('2d7e8fc7dd5ea8745ea67a62b9dc81c89c04f52c')
+sha1sums=('8f9d2c18713b06e1c75c10ad902f7c11f0e1b651')
# optimization OK
From crazy at frugalware.org Sat Mar 1 06:06:35 2008
From: crazy at frugalware.org (crazy)
Date: Sat Mar 1 06:06:42 2008
Subject: [Frugalware-git]
playground: kdebase-runtime-4.00.99-0playground4-i686
Message-ID: <20080301050635.CB30E1190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=playground.git;a=commitdiff;h=98b7bc7676f2057883b657a542108e6da58e3494
commit 98b7bc7676f2057883b657a542108e6da58e3494
Author: crazy
Date: Sat Mar 1 05:47:53 2008 +0100
kdebase-runtime-4.00.99-0playground4-i686
* newer snapshot
diff --git a/source/kde4/kdebase-runtime/FrugalBuild b/source/kde4/kdebase-runtime/FrugalBuild
index ab712e7..7b1f856 100644
--- a/source/kde4/kdebase-runtime/FrugalBuild
+++ b/source/kde4/kdebase-runtime/FrugalBuild
@@ -2,9 +2,9 @@
# Maintainer: crazy
pkgname=kdebase-runtime
-kdesvn=778516
+kdesvn=780770
pkgver=4.00.99
-pkgrel=0playground3
+pkgrel=0playground4
pkgdesc="Programs needed at runtime by other KDE4 applications"
depends=('libkde>=4.00.99' 'gamin' 'xfsprogs-attr' 'libxrender' 'libice' 'libxext' 'libxfixes' 'libqtnetwork>=4.4.0' \
'bzip2' 'qt4-qdbus>=4.4.0' 'libqtgui>=4.4.0' 'pcre' 'libqtsql>=4.4.0' 'xine-lib' 'libsmbclient' 'openexr' 'clucene')
@@ -15,7 +15,7 @@ options=('nomirror')
Finclude kde4
source=(http://192.168.0.2/.KDE4/$pkgname-${pkgver}_${kdesvn}.tar.bz2)
_F_cd_path="$pkgname-${pkgver}_${kdesvn}"
-sha1sums=('9f6e39a12e74af517e762746ccb9ab08fe7d2056')
+sha1sums=('1cbef0a971a9f7e50edb32bf1a0386a6d5db6333')
subpkgs=("kdebase-icons")
From crazy at frugalware.org Sat Mar 1 06:36:46 2008
From: crazy at frugalware.org (crazy)
Date: Sat Mar 1 06:36:48 2008
Subject: [Frugalware-git]
playground: kdebase-workspace-4.00.99-0playground4-i686
Message-ID: <20080301053646.D80EC1190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=playground.git;a=commitdiff;h=d0c7ab02e5a2a3509311445a33b85aae6d20da41
commit d0c7ab02e5a2a3509311445a33b85aae6d20da41
Author: crazy
Date: Sat Mar 1 06:31:09 2008 +0100
kdebase-workspace-4.00.99-0playground4-i686
* newer snapshot
diff --git a/source/kde4/kdebase-workspace/FrugalBuild b/source/kde4/kdebase-workspace/FrugalBuild
index c80ee1b..7325381 100644
--- a/source/kde4/kdebase-workspace/FrugalBuild
+++ b/source/kde4/kdebase-workspace/FrugalBuild
@@ -2,13 +2,14 @@
# Maintainer: crazy
pkgname=kdebase-workspace
-kdesvn=778873
+kdesvn=780798
pkgver=4.00.99
-pkgrel=0playground3
+pkgrel=0playground4
pkgdesc="Programs specific for the KDE4 desktop."
depends=('libkde>=4.00.99' 'libqt3support>=4.4.0' 'libqtsvg>=4.4.0' 'libsm' 'libxft' 'libxpm' 'libxcursor' 'strigi' 'xfsprogs-acl' \
'libxtst' 'libpng' 'libxrandr' 'libxinerama' 'libqtuitools>=4.4.0' 'libxxf86vm' 'libdrm' 'libxres' 'lmsensors' 'libxklavier' \
- 'libxscrnsaver' 'qimageblitz' 'libstrigiqtdbusclient' 'libqtscript>=4.4.0' 'libcaptury' 'libusb' 'libxxf86misc' 'strigi-qt4-gui' 'pciutils')
+ 'libxscrnsaver' 'qimageblitz' 'libstrigiqtdbusclient' 'libqtscript>=4.4.0' 'libcaptury' 'libusb' 'libxxf86misc' 'strigi-qt4-gui' \
+ 'pciutils' 'libxcomposite' 'bluez-libs' 'libxdamage' 'libxrender' 'libxfixes')
makedepends=('xorg-server>=1.4.0.90-4' 'libqtsql>=4.4.0' 'libqtopengl>=4.4.0' 'qt4-designer')
rodepends=('kde-frugalware>=0.9.0' 'xorg-server>=1.4.0.90-4' 'xsetroot' 'dbus-x11' 'xmessage' 'xrandr>=1.2.2' 'xset' 'xprop' 'xrdb' "$pkgname-libs=$pkgver")
groups=('kde4' 'kde4-minimal')
@@ -19,7 +20,7 @@ Finclude kde4
source=(http://192.168.0.2/.KDE4/$pkgname-${pkgver}_${kdesvn}.tar.bz2 \
default-wallpaper.patch fw-fonts.patch)
_F_cd_path="$pkgname-${pkgver}_${kdesvn}"
-sha1sums=('cbc163f550fb8a0636f4ee6141870c9d3f5a571e' \
+sha1sums=('6afd24eb013744dd76233e305aede16df1c4bc51' \
'7a05287ff50b79918669e45ab056bfe4ebc711d5' \
'2585f5e90c18eb091f1ccf98604a5b4c1dce740f')
From priyank at frugalware.org Sat Mar 1 07:47:24 2008
From: priyank at frugalware.org (Priyank)
Date: Sat Mar 1 07:47:26 2008
Subject: [Frugalware-git] frugalware-current: hal-0.5.10-4-i686
Message-ID: <20080301064724.D298F1190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=c7bfd14ddfbeb6a5a3257053da655fc614fb3e3e
commit c7bfd14ddfbeb6a5a3257053da655fc614fb3e3e
Author: Priyank
Date: Sat Mar 1 12:14:36 2008 +0530
hal-0.5.10-4-i686
* Added suspend_hibernate.patch so that hal can make use of the raw kernel interface for suspend and hibernation
required for Gnome/Xfce to work.
* ok with crazy ;D
diff --git a/source/apps/hal/FrugalBuild b/source/apps/hal/FrugalBuild
index 0a39d1d..8d4650b 100644
--- a/source/apps/hal/FrugalBuild
+++ b/source/apps/hal/FrugalBuild
@@ -4,7 +4,7 @@
pkgname=hal
pkgver=0.5.10
-pkgrel=3
+pkgrel=4
pkgdesc="Hardware Abstraction Layer"
url="http://www.freedesktop.org/wiki/Software/hal"
depends=('dbus-glib>=0.74' 'udev>=100' 'glib2' 'libcap' 'dbus>=1.1.2' \
@@ -23,6 +23,7 @@ source=(http://hal.freedesktop.org/releases/$pkgname-$pkgver.tar.gz \
hal.conf.in.patch \
hal-device-manager.desktop \
ntfs-3g.patch \
+ suspend_hibernate.patch \
hal-performance_pci.ids_v5.diff)
sha1sums=('8d67499df61590c11fd3203004d69e8a45abb8fa' \
'ab629a3ea7df51df48abad30731590b8e86e908f' \
@@ -30,6 +31,7 @@ sha1sums=('8d67499df61590c11fd3203004d69e8a45abb8fa' \
'be12d1327ca93e1830c5784f395e904b107f1947' \
'0c4968cbb842bdae350901728d81eed9895445fa' \
'2273e77c0c3c52aca31294b2b1a829937d0a3c18' \
+ '2fab4fd75f1359b0838748dfae4d749eb26b64b9' \
'654235977c83f76433f9737f37b8a18f04136b35')
diff --git a/source/apps/hal/suspend_hibernate.patch b/source/apps/hal/suspend_hibernate.patch
new file mode 100644
index 0000000..272f93e
--- /dev/null
+++ b/source/apps/hal/suspend_hibernate.patch
@@ -0,0 +1,28 @@
+diff -Naur hal-0.5.10/tools/linux/hal-system-power-hibernate-linux hal-0.5.10.new/tools/linux/hal-system-power-hibernate-linux
+--- hal-0.5.10/tools/linux/hal-system-power-hibernate-linux 2007-07-26 23:30:28.000000000 +0530
++++ hal-0.5.10.new/tools/linux/hal-system-power-hibernate-linux 2008-03-01 11:56:55.000000000 +0530
+@@ -26,6 +26,10 @@
+ if [ -x /usr/sbin/pm-hibernate ] ; then
+ /usr/sbin/pm-hibernate $QUIRKS
+ RET=$?
++elif [ -w "/sys/power/state" ] ; then
++ # use the raw kernel interface
++ echo "disk" > /sys/power/state
++ RET=$?
+ else
+ unsupported
+ fi
+diff -Naur hal-0.5.10/tools/linux/hal-system-power-suspend-linux hal-0.5.10.new/tools/linux/hal-system-power-suspend-linux
+--- hal-0.5.10/tools/linux/hal-system-power-suspend-linux 2007-07-26 23:30:28.000000000 +0530
++++ hal-0.5.10.new/tools/linux/hal-system-power-suspend-linux 2008-03-01 11:57:03.000000000 +0530
+@@ -39,6 +39,10 @@
+ if [ -x "/usr/sbin/pm-suspend" ] ; then
+ /usr/sbin/pm-suspend $QUIRKS
+ RET=$?
++elif [ -w "/sys/power/state" ] ; then
++ # use the raw kernel interface
++ echo "mem" > /sys/power/state
++ RET=$?
+ else
+ # TODO: add support
+ unsupported
From priyank at frugalware.org Sat Mar 1 07:47:24 2008
From: priyank at frugalware.org (Priyank)
Date: Sat Mar 1 07:47:27 2008
Subject: [Frugalware-git] frugalware-current: pm-utils-0.99.4-2-i686
Message-ID: <20080301064724.EDCA6119050F@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=4fc3ef4e1d0dfdd520d34973ce833f49344858df
commit 4fc3ef4e1d0dfdd520d34973ce833f49344858df
Author: Priyank
Date: Sat Mar 1 12:16:33 2008 +0530
pm-utils-0.99.4-2-i686
* nobuild for now
diff --git a/source/apps/pm-utils/FrugalBuild b/source/apps/pm-utils/FrugalBuild
index eb362b1..016b2a8 100644
--- a/source/apps/pm-utils/FrugalBuild
+++ b/source/apps/pm-utils/FrugalBuild
@@ -9,6 +9,7 @@ url="http://pm-utils.freedesktop.org/wiki/"
depends=('glibc')
groups=('apps')
archs=('i686' 'x86_64')
+options=('nobuild')
up2date="lynx -dump $url | grep tar.gz | Flasttar"
source=(http://cvs.fedoraproject.org/repo/pkgs/$pkgname/$pkgname-$pkgver.tar.gz/a88503876f63c96b55784be91b6458d2/$pkgname-$pkgver.tar.gz \
$pkgname-0.99.3-cfg.patch)
From priyank at frugalware.org Sat Mar 1 08:24:48 2008
From: priyank at frugalware.org (Priyank)
Date: Sat Mar 1 08:24:50 2008
Subject: [Frugalware-git] gfpm: gfpm-repomanager: added support for deleting
repositories
Message-ID: <20080301072448.BAD141190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=7a56406fac9fcd9bc88cb1191ed957b5f825f6be
commit 7a56406fac9fcd9bc88cb1191ed957b5f825f6be
Author: Priyank
Date: Sat Mar 1 12:54:06 2008 +0530
gfpm-repomanager: added support for deleting repositories
diff --git a/src/gfpm-repomanager.c b/src/gfpm-repomanager.c
index f9af481..340c506 100644
--- a/src/gfpm-repomanager.c
+++ b/src/gfpm-repomanager.c
@@ -67,9 +67,14 @@ static void gfpm_servmgr_edit_server (gfpm_server_entry_t *s);
static gfpm_repo_t * gfpm_repomgr_get_repo_input (void);
static gfpm_server_entry_t * gfpm_servmgr_get_server_input (void);
+/* some important functions */
+static void gfpm_repomgr_populate_repolist (void);
+static void gfpm_repomgr_populate_repotvw (void);
+
/* signal callbacks */
static void cb_gfpm_repomgr_btnadd_clicked (GtkButton *button, gpointer data);
static void cb_gfpm_repomgr_btnedit_clicked (GtkButton *button, gpointer data);
+static void cb_gfpm_repomgr_btndel_clicked (GtkButton *button, gpointer data);
static void cb_gfpm_servmgr_btndel_clicked (GtkButton *button, gpointer data);
static void cb_gfpm_servmgr_btnedit_clicked (GtkButton *button, gpointer data);
static void cb_gfpm_servmgr_btnadd_clicked (GtkButton *button, gpointer data);
@@ -159,8 +164,9 @@ gfpm_repomanager_init (void)
/* connect important signals */
/* repository manager signals */
- g_signal_connect (G_OBJECT(gfpm_repomgr_btnedit), "clicked", G_CALLBACK(cb_gfpm_repomgr_btnedit_clicked), NULL);
g_signal_connect (G_OBJECT(gfpm_repomgr_btnadd), "clicked", G_CALLBACK(cb_gfpm_repomgr_btnadd_clicked), NULL);
+ g_signal_connect (G_OBJECT(gfpm_repomgr_btnedit), "clicked", G_CALLBACK(cb_gfpm_repomgr_btnedit_clicked), NULL);
+ g_signal_connect (G_OBJECT(gfpm_repomgr_btndel), "clicked", G_CALLBACK(cb_gfpm_repomgr_btndel_clicked), NULL);
/* server manager signals */
g_signal_connect (G_OBJECT(gfpm_servmgr_btndel), "clicked", G_CALLBACK(cb_gfpm_servmgr_btndel_clicked), NULL);
@@ -259,6 +265,7 @@ gfpm_write_config_file (void)
GList *rlist = NULL;
gfpm_repo_t *repo = NULL;
GList *header = NULL;
+ GList *del_link = NULL;
fp = fopen (CONF_FILE, "w");
if (fp == NULL)
@@ -281,12 +288,26 @@ gfpm_write_config_file (void)
GList *footer = NULL;
repo = rlist->data;
/* write the repository entry */
- if (repo->enabled)
- fprintf (fp, "Include = %s/%s\n", REPO_PATH, repo->name);
+ if (repo->delete == FALSE)
+ {
+ if (repo->enabled)
+ fprintf (fp, "Include = %s/%s\n", REPO_PATH, repo->name);
+ else
+ fprintf (fp, "#Include = %s/%s\n", REPO_PATH, repo->name);
+ gfpm_write_servers_to_file (repo->name);
+ }
else
- fprintf (fp, "#Include = %s/%s\n", REPO_PATH, repo->name);
+ {
+ /* this repo has to be deleted. so, delete it's servers file too. */
+ gchar *rpfile = NULL;
+ rpfile = g_strdup_printf ("%s/%s", REPO_PATH, repo->name);
+ /* remove only if it exists */
+ if (g_file_test(rpfile, G_FILE_TEST_EXISTS))
+ g_remove (rpfile);
+ g_free (rpfile);
+ del_link = repo;
+ }
- gfpm_write_servers_to_file (repo->name);
/* write the footer */
footer = repo->footer;
if (footer == NULL)
@@ -466,6 +487,29 @@ gfpm_repomgr_get_repo_input (void)
return ret;
}
+static void
+gfpm_repomgr_delete_repo (const char *repo)
+{
+ GList *rlist = NULL;
+ gfpm_repo_t *r = NULL;
+
+ rlist = repolist->list;
+ while (rlist != NULL)
+ {
+ r = rlist->data;
+ if (!strcmp(r->name, repo))
+ {
+ r->delete = TRUE;
+ break;
+ }
+ rlist = g_list_next (rlist);
+ }
+ gfpm_write_config_file ();
+ gfpm_repomgr_populate_repotvw ();
+
+ return;
+}
+
static GList *
gfpm_repomgr_get_servers_from_repofile (const char *conf_file)
{
@@ -636,6 +680,7 @@ gfpm_repomgr_populate_repolist (void)
repolist->list = g_list_append (repolist->list, (gpointer)repo_r);
n++;
}
+ repo_r->delete = FALSE;
}
repolist->n = n;
@@ -1067,6 +1112,26 @@ cb_gfpm_repomgr_btnedit_clicked (GtkButton *button, gpointer data)
}
static void
+cb_gfpm_repomgr_btndel_clicked (GtkButton *button, gpointer data)
+{
+ GtkTreeSelection *selection = NULL;
+ GtkTreeModel *model;
+ GtkTreeIter iter;
+ gchar *repo = NULL;
+
+ selection = gtk_tree_view_get_selection (GTK_TREE_VIEW(gfpm_repomgr_treeview));
+ if (gtk_tree_selection_get_selected(selection, &model, &iter))
+ {
+ gtk_tree_model_get (model, &iter, 2, &repo, -1);
+ if (gfpm_question(_("Confirmation"), _("Are you sure you want to delete this repository ?")) == GTK_RESPONSE_YES)
+ gfpm_repomgr_delete_repo (repo);
+ g_free (repo);
+ }
+
+ return;
+}
+
+static void
cb_gfpm_servmgr_btnadd_clicked (GtkButton *button, gpointer data)
{
gfpm_server_entry_t *s = NULL;
diff --git a/src/gfpm-repomanager.h b/src/gfpm-repomanager.h
index 3d97033..d33f284 100644
--- a/src/gfpm-repomanager.h
+++ b/src/gfpm-repomanager.h
@@ -15,6 +15,7 @@
typedef struct __gfpm_repo_t {
gboolean enabled;
+ gboolean delete;
GList *header;
char name[REPONAME_MAX_SIZE+1];
GList *servers;
From priyank at frugalware.org Sat Mar 1 08:28:56 2008
From: priyank at frugalware.org (Priyank)
Date: Sat Mar 1 08:28:58 2008
Subject: [Frugalware-git] gfpm: gfpm-db: gfpm_db_populate_repolist(): don't
die with a gerror() here. let the caller handle it
Message-ID: <20080301072856.A550A1190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=52c722e8cb78a8d8a094fe3d14f0b2cadc73768b
commit 52c722e8cb78a8d8a094fe3d14f0b2cadc73768b
Author: Priyank
Date: Sat Mar 1 12:58:27 2008 +0530
gfpm-db: gfpm_db_populate_repolist(): don't die with a gerror() here. let the caller handle it
diff --git a/src/gfpm-db.c b/src/gfpm-db.c
index ef5d052..cfa30ca 100644
--- a/src/gfpm-db.c
+++ b/src/gfpm-db.c
@@ -95,7 +95,6 @@ gfpm_db_populate_repolist (void)
/* get the list of usable repositories */
if (pacman_parse_config (CFG_FILE, _db_callback, "") == -1)
{
- g_error ("error parsing config file");
return 1;
}
diff --git a/src/gfpm-interface.c b/src/gfpm-interface.c
index e28c110..85faef3 100644
--- a/src/gfpm-interface.c
+++ b/src/gfpm-interface.c
@@ -274,6 +274,10 @@ gfpm_interface_init (void)
gfpm_populate_repos_combobox (GTK_COMBO_BOX(gfpm_search_combo));
gtk_combo_box_set_active (GTK_COMBO_BOX(gfpm_search_combo), active);
}
+ else
+ {
+ gfpm_error ("Error parsing repository information from configuration file.");
+ }
/* search */
g_signal_connect (G_OBJECT(glade_xml_get_widget(xml, "search_entry1")), "key-release-event", G_CALLBACK(cb_gfpm_search_keypress), NULL);
From priyank at frugalware.org Sat Mar 1 08:58:11 2008
From: priyank at frugalware.org (Priyank)
Date: Sat Mar 1 08:58:13 2008
Subject: [Frugalware-git] gfpm: gfpm-db: gfpm_db_populate_repolist(): free
the existing repolist if it's not NULL.
Message-ID: <20080301075811.2227E1190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=616b27d9dba33ca8ca52cda93460172131de8f55
commit 616b27d9dba33ca8ca52cda93460172131de8f55
Author: Priyank
Date: Sat Mar 1 13:27:40 2008 +0530
gfpm-db: gfpm_db_populate_repolist(): free the existing repolist if it's not NULL.
diff --git a/src/gfpm-db.c b/src/gfpm-db.c
index cfa30ca..c7e580d 100644
--- a/src/gfpm-db.c
+++ b/src/gfpm-db.c
@@ -92,6 +92,12 @@ _db_callback (char *section, PM_DB *db)
int
gfpm_db_populate_repolist (void)
{
+ if (dblist != NULL)
+ {
+ g_list_free (dblist);
+ dblist = NULL;
+ }
+
/* get the list of usable repositories */
if (pacman_parse_config (CFG_FILE, _db_callback, "") == -1)
{
From priyank at frugalware.org Sat Mar 1 08:59:53 2008
From: priyank at frugalware.org (Priyank)
Date: Sat Mar 1 08:59:55 2008
Subject: [Frugalware-git] gfpm: gfpm-interface: re-populate the repo combos
when repos are enabled/disabled by the user through repo manager
Message-ID: <20080301075953.E04B01190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=926e0cf8988466507c373904a07eb9720484293e
commit 926e0cf8988466507c373904a07eb9720484293e
Author: Priyank
Date: Sat Mar 1 13:29:23 2008 +0530
gfpm-interface: re-populate the repo combos when repos are enabled/disabled by the user through repo manager
diff --git a/src/gfpm-interface.c b/src/gfpm-interface.c
index 85faef3..a24f443 100644
--- a/src/gfpm-interface.c
+++ b/src/gfpm-interface.c
@@ -63,6 +63,10 @@ gchar *current_group = NULL;
GtkWidget *gfpm_mw;
GtkWidget *gfpm_pkgs_tvw = NULL;
+/* init flag */
+/* indicates that the repos were initied atleast once */
+gboolean init = FALSE;
+
static GtkWidget *gfpm_statusbar = NULL;
static GtkWidget *gfpm_groups_tvw = NULL;
static GtkWidget *gfpm_info_tvw = NULL;
@@ -79,6 +83,7 @@ static GtkWidget *gfpm_apply_inst_depcheck;
static GtkWidget *gfpm_apply_inst_dwocheck;
static GtkWidget *gfpm_apply_rem_depcheck;
static GtkWidget *gfpm_search_combo;
+static GtkWidget *gfpm_repos_combo;
static guint gfpm_populate_repos_combobox (GtkComboBox *combo);
static void cb_gfpm_repos_combo_changed (GtkComboBox *combo, gpointer data);
@@ -110,12 +115,26 @@ gfpm_populate_repos_combobox (GtkComboBox *combo)
gint c_index = 0;
gboolean found = FALSE;
- store = gtk_list_store_new (1, G_TYPE_STRING);
- gtk_combo_box_set_model (GTK_COMBO_BOX(combo), GTK_TREE_MODEL(store));
- renderer = gtk_cell_renderer_text_new ();
- gtk_cell_layout_pack_start (GTK_CELL_LAYOUT(combo), renderer, TRUE);
- gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT(combo), renderer, "text", 0, NULL);
+ if (init == FALSE)
+ {
+ g_print ("im here\n");
+ store = gtk_list_store_new (1, G_TYPE_STRING);
+ gtk_combo_box_set_model (GTK_COMBO_BOX(combo), GTK_TREE_MODEL(store));
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_cell_layout_pack_start (GTK_CELL_LAYOUT(combo), renderer, TRUE);
+ gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT(combo), renderer, "text", 0, NULL);
+ g_print ("im here\n");
+ }
+ else
+ {
+ store = GTK_LIST_STORE (gtk_combo_box_get_model(combo));
+ if (store != NULL)
+ {
+ gtk_list_store_clear (store);
+ }
+ }
+
rlist = gfpm_db_get_repolist ();
for (;rlist != NULL;rlist=rlist->next)
{
@@ -140,6 +159,26 @@ gfpm_populate_repos_combobox (GtkComboBox *combo)
return c_index;
}
+void
+gfpm_interface_setup_repo_combos (void)
+{
+ if (gfpm_db_populate_repolist() == 0)
+ {
+ guint active;
+ active = gfpm_populate_repos_combobox (GTK_COMBO_BOX(gfpm_repos_combo));
+ g_signal_connect (G_OBJECT(gfpm_repos_combo), "changed", G_CALLBACK(cb_gfpm_repos_combo_changed), NULL);
+ gtk_combo_box_set_active (GTK_COMBO_BOX(gfpm_repos_combo), active);
+ gfpm_populate_repos_combobox (GTK_COMBO_BOX(gfpm_search_combo));
+ gtk_combo_box_set_active (GTK_COMBO_BOX(gfpm_search_combo), active);
+ }
+ else
+ {
+ gfpm_error (_("Error"), _("Error parsing repository information from configuration file."));
+ }
+
+ return;
+}
+
GtkWidget *
gfpm_get_widget (const char *wname)
{
@@ -150,7 +189,6 @@ void
gfpm_interface_init (void)
{
GtkWidget *gfpm_splash;
- GtkWidget *widget;
GtkListStore *store;
GtkCellRenderer *renderer;
GtkTreeSelection *selection;
@@ -181,6 +219,7 @@ gfpm_interface_init (void)
gfpm_apply_rem_depcheck = gfpm_get_widget ("applyremdepcheck");
gfpm_apply_inst_dwocheck = gfpm_get_widget ("applyinstdwcheck");
gfpm_search_combo = gfpm_get_widget ("search_repocombo");
+ gfpm_repos_combo = gfpm_get_widget ("combobox_repos");
/* Setup groups treeview */
store = gtk_list_store_new (1, G_TYPE_STRING);
@@ -264,20 +303,8 @@ gfpm_interface_init (void)
g_object_set (gfpm_info_tvw, "hover-selection", TRUE, NULL);
/* Setup repository combobox */
- widget = gfpm_get_widget ("combobox_repos");
- if (gfpm_db_populate_repolist() == 0)
- {
- guint active;
- active = gfpm_populate_repos_combobox (GTK_COMBO_BOX(widget));
- g_signal_connect (G_OBJECT(widget), "changed", G_CALLBACK(cb_gfpm_repos_combo_changed), NULL);
- gtk_combo_box_set_active (GTK_COMBO_BOX(widget), active);
- gfpm_populate_repos_combobox (GTK_COMBO_BOX(gfpm_search_combo));
- gtk_combo_box_set_active (GTK_COMBO_BOX(gfpm_search_combo), active);
- }
- else
- {
- gfpm_error ("Error parsing repository information from configuration file.");
- }
+ gfpm_interface_setup_repo_combos ();
+ if (!init) init = TRUE;
/* search */
g_signal_connect (G_OBJECT(glade_xml_get_widget(xml, "search_entry1")), "key-release-event", G_CALLBACK(cb_gfpm_search_keypress), NULL);
diff --git a/src/gfpm-interface.h b/src/gfpm-interface.h
index e2adb2d..7f6e88f 100644
--- a/src/gfpm-interface.h
+++ b/src/gfpm-interface.h
@@ -18,6 +18,7 @@ void gfpm_load_info_tvw (const char *);
void gfpm_load_files_txtvw (const char *, gboolean);
void gfpm_load_changelog_txtvw (const char *, gboolean);
void gfpm_interface_init (void);
+void gfpm_interface_setup_repo_combos (void);
void cb_gfpm_apply_btn_clicked (GtkButton *, gpointer);
#endif
diff --git a/src/gfpm-repomanager.c b/src/gfpm-repomanager.c
index 340c506..9b21b9a 100644
--- a/src/gfpm-repomanager.c
+++ b/src/gfpm-repomanager.c
@@ -1063,6 +1063,9 @@ cb_gfpm_repo_enable_toggled (GtkCellRendererToggle *toggle, gchar *path_str, gpo
/* write config file */
gfpm_write_config_file ();
+
+ /* repopulate repository information and setup combos */
+ gfpm_interface_setup_repo_combos ();
g_free (sel);
gtk_tree_path_free (path);
From janny at frugalware.org Sat Mar 1 14:02:40 2008
From: janny at frugalware.org (janny)
Date: Sat Mar 1 14:02:44 2008
Subject: [Frugalware-git] fwlive: kernel-fwlive-2.6.24-3-i686
Message-ID: <20080301130240.4D6291190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=5d0b1461fb2743485ee53b71e1769ecf0fffcece
commit 5d0b1461fb2743485ee53b71e1769ecf0fffcece
Author: janny
Date: Sat Mar 1 13:48:36 2008 +0100
kernel-fwlive-2.6.24-3-i686
* release and version bump
* actualize patch set
* add was left out sqlzma2k-3.3.patch
diff --git a/source/base-extra/kernel-fwlive/FrugalBuild b/source/base-extra/kernel-fwlive/FrugalBuild
index d922009..5282a45 100644
--- a/source/base-extra/kernel-fwlive/FrugalBuild
+++ b/source/base-extra/kernel-fwlive/FrugalBuild
@@ -1,15 +1,16 @@
-# Compiling Time: 11.75 SBU
+# Compiling Time: 18.95 SBU
# Maintainer: Janny
pkgver=2.6.24
-pkgrel=2
-_F_kernelver_stable=1
+pkgrel=3
+_F_kernel_stable=3
_F_kernel_name="-fwlive"
_F_kernel_uname="-fw$pkgrel"
-_F_kernel_patches=(CVE-2008-0600.patch \
+_F_kernel_patches=(revert-NET_Add-if_addrlabel.h-to_sanitized_headers.patch \
http://frugalware.org/~janny/patchs/kernel/${pkgver}/splice-2.6.23.patch \
http://frugalware.org/~janny/patchs/kernel/${pkgver}/sec_perm-2.6.24.patch \
- http://frugalware.org/~janny/patchs/kernel/${pkgver}/squashfs3.3-patch)
+ http://frugalware.org/~janny/patchs/kernel/${pkgver}/squashfs3.3-patch \
+ http://frugalware.org/~janny/patchs/kernel/${pkgver}/sqlzma2k-3.3.patch)
Finclude kernel
groups=('base-extra')
diff --git a/source/base-extra/kernel-fwlive/config.i686 b/source/base-extra/kernel-fwlive/config.i686
index 0f8033d..4552175 100644
--- a/source/base-extra/kernel-fwlive/config.i686
+++ b/source/base-extra/kernel-fwlive/config.i686
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.24
-# Mon Jan 21 15:11:36 2008
+# Sat Mar 1 09:37:23 2008
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
@@ -51,7 +51,7 @@ CONFIG_EXPERIMENTAL=y
CONFIG_LOCK_KERNEL=y
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_LOCALVERSION=""
-# CONFIG_LOCALVERSION_AUTO is not set
+CONFIG_LOCALVERSION_AUTO=y
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_SYSVIPC_SYSCTL=y
@@ -61,24 +61,27 @@ CONFIG_BSD_PROCESS_ACCT=y
# CONFIG_TASKSTATS is not set
# CONFIG_USER_NS is not set
# CONFIG_PID_NS is not set
-# CONFIG_AUDIT is not set
+CONFIG_AUDIT=y
+CONFIG_AUDITSYSCALL=y
+CONFIG_AUDIT_TREE=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
-CONFIG_LOG_BUF_SHIFT=15
+CONFIG_LOG_BUF_SHIFT=17
# CONFIG_CGROUPS is not set
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_FAIR_USER_SCHED=y
# CONFIG_FAIR_CGROUP_SCHED is not set
# CONFIG_SYSFS_DEPRECATED is not set
-# CONFIG_RELAY is not set
+CONFIG_RELAY=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
-# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
+CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_SYSCTL=y
# CONFIG_EMBEDDED is not set
CONFIG_UID16=y
CONFIG_SYSCTL_SYSCALL=y
CONFIG_KALLSYMS=y
+# CONFIG_KALLSYMS_ALL is not set
# CONFIG_KALLSYMS_EXTRA_PASS is not set
CONFIG_HOTPLUG=y
CONFIG_PRINTK=y
@@ -103,15 +106,15 @@ CONFIG_BASE_SMALL=0
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
# CONFIG_MODULE_FORCE_UNLOAD is not set
-# CONFIG_MODVERSIONS is not set
+CONFIG_MODVERSIONS=y
# CONFIG_MODULE_SRCVERSION_ALL is not set
CONFIG_KMOD=y
CONFIG_STOP_MACHINE=y
CONFIG_BLOCK=y
CONFIG_LBD=y
-# CONFIG_BLK_DEV_IO_TRACE is not set
+CONFIG_BLK_DEV_IO_TRACE=y
CONFIG_LSF=y
-# CONFIG_BLK_DEV_BSG is not set
+CONFIG_BLK_DEV_BSG=y
#
# IO Schedulers
@@ -125,13 +128,14 @@ CONFIG_IOSCHED_CFQ=y
CONFIG_DEFAULT_CFQ=y
# CONFIG_DEFAULT_NOOP is not set
CONFIG_DEFAULT_IOSCHED="cfq"
+CONFIG_PREEMPT_NOTIFIERS=y
#
# Processor type and features
#
-# CONFIG_TICK_ONESHOT is not set
-# CONFIG_NO_HZ is not set
-# CONFIG_HIGH_RES_TIMERS is not set
+CONFIG_TICK_ONESHOT=y
+CONFIG_NO_HZ=y
+CONFIG_HIGH_RES_TIMERS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_SMP=y
CONFIG_X86_PC=y
@@ -147,11 +151,11 @@ CONFIG_X86_PC=y
CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
# CONFIG_PARAVIRT_GUEST is not set
# CONFIG_M386 is not set
-CONFIG_M486=y
+# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not set
-# CONFIG_M686 is not set
+CONFIG_M686=y
# CONFIG_MPENTIUMII is not set
# CONFIG_MPENTIUMIII is not set
# CONFIG_MPENTIUMM is not set
@@ -177,28 +181,29 @@ CONFIG_X86_CMPXCHG=y
CONFIG_X86_L1_CACHE_SHIFT=7
CONFIG_X86_XADD=y
CONFIG_X86_PPRO_FENCE=y
-CONFIG_X86_F00F_BUG=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
-CONFIG_X86_ALIGNMENT_16=y
+CONFIG_X86_GOOD_APIC=y
CONFIG_X86_INTEL_USERCOPY=y
+CONFIG_X86_USE_PPRO_CHECKSUM=y
+CONFIG_X86_TSC=y
+CONFIG_X86_CMOV=y
CONFIG_X86_MINIMUM_CPU_FAMILY=4
CONFIG_HPET_TIMER=y
-CONFIG_HPET_EMULATE_RTC=y
-CONFIG_NR_CPUS=32
+CONFIG_NR_CPUS=8
CONFIG_SCHED_SMT=y
CONFIG_SCHED_MC=y
-CONFIG_PREEMPT_NONE=y
+# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_VOLUNTARY is not set
-# CONFIG_PREEMPT is not set
+CONFIG_PREEMPT=y
CONFIG_PREEMPT_BKL=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_MCE=y
CONFIG_X86_MCE_NONFATAL=m
-# CONFIG_X86_MCE_P4THERMAL is not set
+CONFIG_X86_MCE_P4THERMAL=y
CONFIG_VM86=y
CONFIG_TOSHIBA=m
CONFIG_I8K=m
@@ -229,24 +234,24 @@ CONFIG_ZONE_DMA_FLAG=1
CONFIG_BOUNCE=y
CONFIG_NR_QUICK=1
CONFIG_VIRT_TO_BUS=y
-CONFIG_HIGHPTE=y
+# CONFIG_HIGHPTE is not set
# CONFIG_MATH_EMULATION is not set
CONFIG_MTRR=y
# CONFIG_EFI is not set
-CONFIG_IRQBALANCE=y
+# CONFIG_IRQBALANCE is not set
CONFIG_SECCOMP=y
# CONFIG_HZ_100 is not set
-CONFIG_HZ_250=y
+# CONFIG_HZ_250 is not set
# CONFIG_HZ_300 is not set
-# CONFIG_HZ_1000 is not set
-CONFIG_HZ=250
-# CONFIG_KEXEC is not set
+CONFIG_HZ_1000=y
+CONFIG_HZ=1000
+CONFIG_KEXEC=y
# CONFIG_CRASH_DUMP is not set
CONFIG_PHYSICAL_START=0x100000
# CONFIG_RELOCATABLE is not set
CONFIG_PHYSICAL_ALIGN=0x100000
CONFIG_HOTPLUG_CPU=y
-CONFIG_COMPAT_VDSO=y
+# CONFIG_COMPAT_VDSO is not set
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
#
@@ -268,16 +273,16 @@ CONFIG_ACPI_PROCFS=y
CONFIG_ACPI_PROCFS_POWER=y
CONFIG_ACPI_SYSFS_POWER=y
CONFIG_ACPI_PROC_EVENT=y
-CONFIG_ACPI_AC=y
-CONFIG_ACPI_BATTERY=y
-CONFIG_ACPI_BUTTON=y
+CONFIG_ACPI_AC=m
+CONFIG_ACPI_BATTERY=m
+CONFIG_ACPI_BUTTON=m
CONFIG_ACPI_VIDEO=m
-CONFIG_ACPI_FAN=y
-CONFIG_ACPI_DOCK=y
-# CONFIG_ACPI_BAY is not set
-CONFIG_ACPI_PROCESSOR=y
+CONFIG_ACPI_FAN=m
+CONFIG_ACPI_DOCK=m
+CONFIG_ACPI_BAY=m
+CONFIG_ACPI_PROCESSOR=m
CONFIG_ACPI_HOTPLUG_CPU=y
-CONFIG_ACPI_THERMAL=y
+CONFIG_ACPI_THERMAL=m
CONFIG_ACPI_ASUS=m
CONFIG_ACPI_TOSHIBA=m
CONFIG_ACPI_BLACKLIST_YEAR=0
@@ -286,15 +291,15 @@ CONFIG_ACPI_EC=y
CONFIG_ACPI_POWER=y
CONFIG_ACPI_SYSTEM=y
CONFIG_X86_PM_TIMER=y
-CONFIG_ACPI_CONTAINER=y
-# CONFIG_ACPI_SBS is not set
-CONFIG_APM=y
+CONFIG_ACPI_CONTAINER=m
+CONFIG_ACPI_SBS=m
+CONFIG_APM=m
# CONFIG_APM_IGNORE_USER_SUSPEND is not set
# CONFIG_APM_DO_ENABLE is not set
# CONFIG_APM_CPU_IDLE is not set
# CONFIG_APM_DISPLAY_BLANK is not set
# CONFIG_APM_ALLOW_INTS is not set
-# CONFIG_APM_REAL_MODE_POWER_OFF is not set
+CONFIG_APM_REAL_MODE_POWER_OFF=y
#
# CPU Frequency scaling
@@ -303,7 +308,7 @@ CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=m
# CONFIG_CPU_FREQ_DEBUG is not set
CONFIG_CPU_FREQ_STAT=m
-CONFIG_CPU_FREQ_STAT_DETAILS=y
+# CONFIG_CPU_FREQ_STAT_DETAILS is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
@@ -332,14 +337,14 @@ CONFIG_X86_P4_CLOCKMOD=m
CONFIG_X86_CPUFREQ_NFORCE2=m
CONFIG_X86_LONGRUN=m
CONFIG_X86_LONGHAUL=m
-# CONFIG_X86_E_POWERSAVER is not set
+CONFIG_X86_E_POWERSAVER=m
#
# shared options
#
# CONFIG_X86_ACPI_CPUFREQ_PROC_INTF is not set
CONFIG_X86_SPEEDSTEP_LIB=m
-CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK=y
+# CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK is not set
# CONFIG_CPU_IDLE is not set
#
@@ -348,31 +353,35 @@ CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK=y
CONFIG_PCI=y
# CONFIG_PCI_GOBIOS is not set
# CONFIG_PCI_GOMMCONFIG is not set
-# CONFIG_PCI_GODIRECT is not set
-CONFIG_PCI_GOANY=y
-CONFIG_PCI_BIOS=y
+CONFIG_PCI_GODIRECT=y
+# CONFIG_PCI_GOANY is not set
CONFIG_PCI_DIRECT=y
-CONFIG_PCI_MMCONFIG=y
CONFIG_PCI_DOMAINS=y
CONFIG_PCIEPORTBUS=y
CONFIG_HOTPLUG_PCI_PCIE=m
CONFIG_PCIEAER=y
CONFIG_ARCH_SUPPORTS_MSI=y
-# CONFIG_PCI_MSI is not set
+CONFIG_PCI_MSI=y
CONFIG_PCI_LEGACY=y
+# CONFIG_PCI_DEBUG is not set
CONFIG_HT_IRQ=y
CONFIG_ISA_DMA_API=y
CONFIG_ISA=y
-# CONFIG_EISA is not set
-# CONFIG_MCA is not set
-CONFIG_SCx200=m
-CONFIG_SCx200HR_TIMER=m
+CONFIG_EISA=y
+# CONFIG_EISA_VLB_PRIMING is not set
+CONFIG_EISA_PCI_EISA=y
+CONFIG_EISA_VIRTUAL_ROOT=y
+CONFIG_EISA_NAMES=y
+CONFIG_MCA=y
+CONFIG_MCA_LEGACY=y
+CONFIG_MCA_PROC_FS=y
+# CONFIG_SCx200 is not set
CONFIG_K8_NB=y
-CONFIG_PCCARD=m
+CONFIG_PCCARD=y
# CONFIG_PCMCIA_DEBUG is not set
-CONFIG_PCMCIA=m
+CONFIG_PCMCIA=y
CONFIG_PCMCIA_LOAD_CIS=y
-CONFIG_PCMCIA_IOCTL=y
+# CONFIG_PCMCIA_IOCTL is not set
CONFIG_CARDBUS=y
#
@@ -392,9 +401,6 @@ CONFIG_PCMCIA_PROBE=y
CONFIG_PCCARD_NONSTATIC=m
CONFIG_HOTPLUG_PCI=y
CONFIG_HOTPLUG_PCI_FAKE=m
-CONFIG_HOTPLUG_PCI_COMPAQ=m
-# CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM is not set
-# CONFIG_HOTPLUG_PCI_IBM is not set
CONFIG_HOTPLUG_PCI_ACPI=m
CONFIG_HOTPLUG_PCI_ACPI_IBM=m
# CONFIG_HOTPLUG_PCI_CPCI is not set
@@ -433,7 +439,10 @@ CONFIG_IP_FIB_HASH=y
CONFIG_IP_MULTIPLE_TABLES=y
CONFIG_IP_ROUTE_MULTIPATH=y
CONFIG_IP_ROUTE_VERBOSE=y
-# CONFIG_IP_PNP is not set
+CONFIG_IP_PNP=y
+CONFIG_IP_PNP_DHCP=y
+CONFIG_IP_PNP_BOOTP=y
+CONFIG_IP_PNP_RARP=y
CONFIG_NET_IPIP=m
CONFIG_NET_IPGRE=m
CONFIG_NET_IPGRE_BROADCAST=y
@@ -451,50 +460,39 @@ CONFIG_INET_XFRM_MODE_TRANSPORT=m
CONFIG_INET_XFRM_MODE_TUNNEL=m
CONFIG_INET_XFRM_MODE_BEET=m
CONFIG_INET_LRO=m
-CONFIG_INET_DIAG=m
-CONFIG_INET_TCP_DIAG=m
-# CONFIG_TCP_CONG_ADVANCED is not set
-CONFIG_TCP_CONG_CUBIC=y
-CONFIG_DEFAULT_TCP_CONG="cubic"
+CONFIG_INET_DIAG=y
+CONFIG_INET_TCP_DIAG=y
+CONFIG_TCP_CONG_ADVANCED=y
+CONFIG_TCP_CONG_BIC=y
+CONFIG_TCP_CONG_CUBIC=m
+CONFIG_TCP_CONG_WESTWOOD=m
+CONFIG_TCP_CONG_HTCP=m
+CONFIG_TCP_CONG_HSTCP=m
+CONFIG_TCP_CONG_HYBLA=m
+CONFIG_TCP_CONG_VEGAS=m
+CONFIG_TCP_CONG_SCALABLE=m
+# CONFIG_TCP_CONG_LP is not set
+# CONFIG_TCP_CONG_VENO is not set
+CONFIG_TCP_CONG_YEAH=m
+CONFIG_TCP_CONG_ILLINOIS=m
+CONFIG_DEFAULT_BIC=y
+# CONFIG_DEFAULT_CUBIC is not set
+# CONFIG_DEFAULT_HTCP is not set
+# CONFIG_DEFAULT_VEGAS is not set
+# CONFIG_DEFAULT_WESTWOOD is not set
+# CONFIG_DEFAULT_RENO is not set
+CONFIG_DEFAULT_TCP_CONG="bic"
# CONFIG_TCP_MD5SIG is not set
-CONFIG_IP_VS=m
-# CONFIG_IP_VS_DEBUG is not set
-CONFIG_IP_VS_TAB_BITS=12
-
-#
-# IPVS transport protocol load balancing support
-#
-CONFIG_IP_VS_PROTO_TCP=y
-CONFIG_IP_VS_PROTO_UDP=y
-CONFIG_IP_VS_PROTO_ESP=y
-CONFIG_IP_VS_PROTO_AH=y
-
-#
-# IPVS scheduler
-#
-CONFIG_IP_VS_RR=m
-CONFIG_IP_VS_WRR=m
-CONFIG_IP_VS_LC=m
-CONFIG_IP_VS_WLC=m
-CONFIG_IP_VS_LBLC=m
-CONFIG_IP_VS_LBLCR=m
-CONFIG_IP_VS_DH=m
-CONFIG_IP_VS_SH=m
-CONFIG_IP_VS_SED=m
-CONFIG_IP_VS_NQ=m
-
-#
-# IPVS application helper
-#
-CONFIG_IP_VS_FTP=m
+# CONFIG_IP_VS is not set
CONFIG_IPV6=m
CONFIG_IPV6_PRIVACY=y
-# CONFIG_IPV6_ROUTER_PREF is not set
-# CONFIG_IPV6_OPTIMISTIC_DAD is not set
+CONFIG_IPV6_ROUTER_PREF=y
+CONFIG_IPV6_ROUTE_INFO=y
+CONFIG_IPV6_OPTIMISTIC_DAD=y
CONFIG_INET6_AH=m
CONFIG_INET6_ESP=m
CONFIG_INET6_IPCOMP=m
-# CONFIG_IPV6_MIP6 is not set
+CONFIG_IPV6_MIP6=m
CONFIG_INET6_XFRM_TUNNEL=m
CONFIG_INET6_TUNNEL=m
CONFIG_INET6_XFRM_MODE_TRANSPORT=m
@@ -503,9 +501,10 @@ CONFIG_INET6_XFRM_MODE_BEET=m
CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
CONFIG_IPV6_SIT=m
CONFIG_IPV6_TUNNEL=m
-# CONFIG_IPV6_MULTIPLE_TABLES is not set
-# CONFIG_NETLABEL is not set
-# CONFIG_NETWORK_SECMARK is not set
+CONFIG_IPV6_MULTIPLE_TABLES=y
+# CONFIG_IPV6_SUBTREES is not set
+CONFIG_NETLABEL=y
+CONFIG_NETWORK_SECMARK=y
CONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not set
CONFIG_BRIDGE_NETFILTER=y
@@ -518,8 +517,9 @@ CONFIG_NETFILTER_NETLINK_QUEUE=m
CONFIG_NETFILTER_NETLINK_LOG=m
CONFIG_NF_CONNTRACK_ENABLED=m
CONFIG_NF_CONNTRACK=m
-# CONFIG_NF_CT_ACCT is not set
-# CONFIG_NF_CONNTRACK_MARK is not set
+CONFIG_NF_CT_ACCT=y
+CONFIG_NF_CONNTRACK_MARK=y
+# CONFIG_NF_CONNTRACK_SECMARK is not set
# CONFIG_NF_CONNTRACK_EVENTS is not set
CONFIG_NF_CT_PROTO_GRE=m
CONFIG_NF_CT_PROTO_SCTP=m
@@ -530,24 +530,25 @@ CONFIG_NF_CONNTRACK_H323=m
CONFIG_NF_CONNTRACK_IRC=m
CONFIG_NF_CONNTRACK_NETBIOS_NS=m
CONFIG_NF_CONNTRACK_PPTP=m
-# CONFIG_NF_CONNTRACK_SANE is not set
+CONFIG_NF_CONNTRACK_SANE=m
CONFIG_NF_CONNTRACK_SIP=m
CONFIG_NF_CONNTRACK_TFTP=m
CONFIG_NF_CT_NETLINK=m
CONFIG_NETFILTER_XTABLES=m
CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
-# CONFIG_NETFILTER_XT_TARGET_CONNMARK is not set
+CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
CONFIG_NETFILTER_XT_TARGET_DSCP=m
CONFIG_NETFILTER_XT_TARGET_MARK=m
CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
CONFIG_NETFILTER_XT_TARGET_NFLOG=m
CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
CONFIG_NETFILTER_XT_TARGET_TRACE=m
-# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set
+CONFIG_NETFILTER_XT_TARGET_SECMARK=m
+CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
CONFIG_NETFILTER_XT_MATCH_COMMENT=m
-# CONFIG_NETFILTER_XT_MATCH_CONNBYTES is not set
+CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
-# CONFIG_NETFILTER_XT_MATCH_CONNMARK is not set
+CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
CONFIG_NETFILTER_XT_MATCH_DCCP=m
CONFIG_NETFILTER_XT_MATCH_DSCP=m
@@ -610,7 +611,7 @@ CONFIG_IP_NF_MANGLE=m
CONFIG_IP_NF_TARGET_TOS=m
CONFIG_IP_NF_TARGET_ECN=m
CONFIG_IP_NF_TARGET_TTL=m
-# CONFIG_IP_NF_TARGET_CLUSTERIP is not set
+CONFIG_IP_NF_TARGET_CLUSTERIP=m
CONFIG_IP_NF_RAW=m
CONFIG_IP_NF_ARPTABLES=m
CONFIG_IP_NF_ARPFILTER=m
@@ -629,7 +630,7 @@ CONFIG_IP6_NF_MATCH_HL=m
CONFIG_IP6_NF_MATCH_OWNER=m
CONFIG_IP6_NF_MATCH_IPV6HEADER=m
CONFIG_IP6_NF_MATCH_AH=m
-# CONFIG_IP6_NF_MATCH_MH is not set
+CONFIG_IP6_NF_MATCH_MH=m
CONFIG_IP6_NF_MATCH_EUI64=m
CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_LOG=m
@@ -639,6 +640,11 @@ CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_RAW=m
#
+# DECnet: Netfilter Configuration
+#
+CONFIG_DECNET_NF_GRABULATOR=m
+
+#
# Bridge: Netfilter Configuration
#
CONFIG_BRIDGE_NF_EBTABLES=m
@@ -660,7 +666,7 @@ CONFIG_BRIDGE_EBT_MARK_T=m
CONFIG_BRIDGE_EBT_REDIRECT=m
CONFIG_BRIDGE_EBT_SNAT=m
CONFIG_BRIDGE_EBT_LOG=m
-CONFIG_BRIDGE_EBT_ULOG=m
+# CONFIG_BRIDGE_EBT_ULOG is not set
# CONFIG_IP_DCCP is not set
CONFIG_IP_SCTP=m
# CONFIG_SCTP_DBG_MSG is not set
@@ -678,7 +684,8 @@ CONFIG_ATM_BR2684=m
# CONFIG_ATM_BR2684_IPFILTER is not set
CONFIG_BRIDGE=m
CONFIG_VLAN_8021Q=m
-# CONFIG_DECNET is not set
+CONFIG_DECNET=m
+# CONFIG_DECNET_ROUTER is not set
CONFIG_LLC=y
CONFIG_LLC2=m
CONFIG_IPX=m
@@ -692,9 +699,11 @@ CONFIG_COPS_TANGENT=y
CONFIG_IPDDP=m
CONFIG_IPDDP_ENCAP=y
CONFIG_IPDDP_DECAP=y
-# CONFIG_X25 is not set
-# CONFIG_LAPB is not set
-# CONFIG_ECONET is not set
+CONFIG_X25=m
+CONFIG_LAPB=m
+CONFIG_ECONET=m
+CONFIG_ECONET_AUNUDP=y
+CONFIG_ECONET_NATIVE=y
CONFIG_WAN_ROUTER=m
CONFIG_NET_SCHED=y
@@ -730,9 +739,15 @@ CONFIG_NET_CLS_U32=m
CONFIG_CLS_U32_MARK=y
CONFIG_NET_CLS_RSVP=m
CONFIG_NET_CLS_RSVP6=m
-# CONFIG_NET_EMATCH is not set
+CONFIG_NET_EMATCH=y
+CONFIG_NET_EMATCH_STACK=32
+CONFIG_NET_EMATCH_CMP=m
+CONFIG_NET_EMATCH_NBYTE=m
+CONFIG_NET_EMATCH_U32=m
+CONFIG_NET_EMATCH_META=m
+CONFIG_NET_EMATCH_TEXT=m
CONFIG_NET_CLS_ACT=y
-CONFIG_NET_ACT_POLICE=y
+CONFIG_NET_ACT_POLICE=m
CONFIG_NET_ACT_GACT=m
CONFIG_GACT_PROB=y
CONFIG_NET_ACT_MIRRED=m
@@ -740,8 +755,8 @@ CONFIG_NET_ACT_IPT=m
CONFIG_NET_ACT_NAT=m
CONFIG_NET_ACT_PEDIT=m
# CONFIG_NET_ACT_SIMP is not set
-CONFIG_NET_CLS_POLICE=y
-# CONFIG_NET_CLS_IND is not set
+# CONFIG_NET_CLS_POLICE is not set
+CONFIG_NET_CLS_IND=y
CONFIG_NET_SCH_FIFO=y
#
@@ -754,7 +769,7 @@ CONFIG_HAMRADIO=y
# Packet Radio protocols
#
CONFIG_AX25=m
-# CONFIG_AX25_DAMA_SLAVE is not set
+CONFIG_AX25_DAMA_SLAVE=y
CONFIG_NETROM=m
CONFIG_ROSE=m
@@ -880,6 +895,7 @@ CONFIG_WIRELESS_EXT=y
CONFIG_MAC80211=m
CONFIG_MAC80211_RCSIMPLE=y
CONFIG_MAC80211_LEDS=y
+# CONFIG_MAC80211_DEBUGFS is not set
# CONFIG_MAC80211_DEBUG is not set
CONFIG_IEEE80211=m
# CONFIG_IEEE80211_DEBUG is not set
@@ -906,9 +922,139 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_FW_LOADER=y
+# CONFIG_DEBUG_DRIVER is not set
+# CONFIG_DEBUG_DEVRES is not set
# CONFIG_SYS_HYPERVISOR is not set
CONFIG_CONNECTOR=m
-# CONFIG_MTD is not set
+CONFIG_MTD=m
+# CONFIG_MTD_DEBUG is not set
+CONFIG_MTD_CONCAT=m
+CONFIG_MTD_PARTITIONS=y
+CONFIG_MTD_REDBOOT_PARTS=m
+CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1
+# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set
+# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set
+
+#
+# User Modules And Translation Layers
+#
+CONFIG_MTD_CHAR=m
+CONFIG_MTD_BLKDEVS=m
+CONFIG_MTD_BLOCK=m
+CONFIG_MTD_BLOCK_RO=m
+CONFIG_FTL=m
+CONFIG_NFTL=m
+CONFIG_NFTL_RW=y
+CONFIG_INFTL=m
+CONFIG_RFD_FTL=m
+CONFIG_SSFDC=m
+CONFIG_MTD_OOPS=m
+
+#
+# RAM/ROM/Flash chip drivers
+#
+CONFIG_MTD_CFI=m
+CONFIG_MTD_JEDECPROBE=m
+CONFIG_MTD_GEN_PROBE=m
+# CONFIG_MTD_CFI_ADV_OPTIONS is not set
+CONFIG_MTD_MAP_BANK_WIDTH_1=y
+CONFIG_MTD_MAP_BANK_WIDTH_2=y
+CONFIG_MTD_MAP_BANK_WIDTH_4=y
+# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
+# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
+# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
+CONFIG_MTD_CFI_I1=y
+CONFIG_MTD_CFI_I2=y
+# CONFIG_MTD_CFI_I4 is not set
+# CONFIG_MTD_CFI_I8 is not set
+CONFIG_MTD_CFI_INTELEXT=m
+CONFIG_MTD_CFI_AMDSTD=m
+CONFIG_MTD_CFI_STAA=m
+CONFIG_MTD_CFI_UTIL=m
+CONFIG_MTD_RAM=m
+CONFIG_MTD_ROM=m
+CONFIG_MTD_ABSENT=m
+
+#
+# Mapping drivers for chip access
+#
+CONFIG_MTD_COMPLEX_MAPPINGS=y
+CONFIG_MTD_PHYSMAP=m
+CONFIG_MTD_PHYSMAP_START=0x8000000
+CONFIG_MTD_PHYSMAP_LEN=0x4000000
+CONFIG_MTD_PHYSMAP_BANKWIDTH=2
+CONFIG_MTD_PNC2000=m
+CONFIG_MTD_SC520CDP=m
+CONFIG_MTD_NETSC520=m
+CONFIG_MTD_TS5500=m
+CONFIG_MTD_SBC_GXX=m
+CONFIG_MTD_AMD76XROM=m
+CONFIG_MTD_ICHXROM=m
+CONFIG_MTD_ESB2ROM=m
+CONFIG_MTD_CK804XROM=m
+CONFIG_MTD_SCB2_FLASH=m
+CONFIG_MTD_NETtel=m
+CONFIG_MTD_DILNETPC=m
+CONFIG_MTD_DILNETPC_BOOTSIZE=0x80000
+CONFIG_MTD_L440GX=m
+CONFIG_MTD_PCI=m
+CONFIG_MTD_INTEL_VR_NOR=m
+CONFIG_MTD_PLATRAM=m
+
+#
+# Self-contained MTD device drivers
+#
+CONFIG_MTD_PMC551=m
+CONFIG_MTD_PMC551_BUGFIX=y
+# CONFIG_MTD_PMC551_DEBUG is not set
+CONFIG_MTD_DATAFLASH=m
+CONFIG_MTD_M25P80=m
+CONFIG_MTD_SLRAM=m
+CONFIG_MTD_PHRAM=m
+CONFIG_MTD_MTDRAM=m
+CONFIG_MTDRAM_TOTAL_SIZE=4096
+CONFIG_MTDRAM_ERASE_SIZE=128
+CONFIG_MTD_BLOCK2MTD=m
+
+#
+# Disk-On-Chip Device Drivers
+#
+# CONFIG_MTD_DOC2000 is not set
+# CONFIG_MTD_DOC2001 is not set
+CONFIG_MTD_DOC2001PLUS=m
+CONFIG_MTD_DOCPROBE=m
+CONFIG_MTD_DOCECC=m
+# CONFIG_MTD_DOCPROBE_ADVANCED is not set
+CONFIG_MTD_DOCPROBE_ADDRESS=0
+CONFIG_MTD_NAND=m
+CONFIG_MTD_NAND_VERIFY_WRITE=y
+# CONFIG_MTD_NAND_ECC_SMC is not set
+# CONFIG_MTD_NAND_MUSEUM_IDS is not set
+CONFIG_MTD_NAND_IDS=m
+# CONFIG_MTD_NAND_DISKONCHIP is not set
+CONFIG_MTD_NAND_CAFE=m
+CONFIG_MTD_NAND_CS553X=m
+CONFIG_MTD_NAND_NANDSIM=m
+CONFIG_MTD_NAND_PLATFORM=m
+CONFIG_MTD_ALAUDA=m
+CONFIG_MTD_ONENAND=m
+CONFIG_MTD_ONENAND_VERIFY_WRITE=y
+CONFIG_MTD_ONENAND_OTP=y
+# CONFIG_MTD_ONENAND_2X_PROGRAM is not set
+CONFIG_MTD_ONENAND_SIM=m
+
+#
+# UBI - Unsorted block images
+#
+CONFIG_MTD_UBI=m
+CONFIG_MTD_UBI_WL_THRESHOLD=4096
+CONFIG_MTD_UBI_BEB_RESERVE=1
+# CONFIG_MTD_UBI_GLUEBI is not set
+
+#
+# UBI debugging options
+#
+# CONFIG_MTD_UBI_DEBUG is not set
CONFIG_PARPORT=m
CONFIG_PARPORT_PC=m
CONFIG_PARPORT_SERIAL=m
@@ -926,7 +1072,8 @@ CONFIG_PNP=y
# Protocols
#
CONFIG_ISAPNP=y
-# CONFIG_PNPBIOS is not set
+CONFIG_PNPBIOS=y
+CONFIG_PNPBIOS_PROC_FS=y
CONFIG_PNPACPI=y
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_FD=y
@@ -967,10 +1114,10 @@ CONFIG_CISS_SCSI_TAPE=y
CONFIG_BLK_DEV_DAC960=y
CONFIG_BLK_DEV_UMEM=m
# CONFIG_BLK_DEV_COW_COMMON is not set
-CONFIG_BLK_DEV_LOOP=y
+CONFIG_BLK_DEV_LOOP=m
CONFIG_BLK_DEV_CRYPTOLOOP=m
CONFIG_BLK_DEV_NBD=m
-CONFIG_BLK_DEV_SX8=y
+CONFIG_BLK_DEV_SX8=m
# CONFIG_BLK_DEV_UB is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
@@ -978,7 +1125,7 @@ CONFIG_BLK_DEV_RAM_SIZE=16384
CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
CONFIG_CDROM_PKTCDVD=m
CONFIG_CDROM_PKTCDVD_BUFFERS=8
-# CONFIG_CDROM_PKTCDVD_WCACHE is not set
+CONFIG_CDROM_PKTCDVD_WCACHE=y
CONFIG_ATA_OVER_ETH=m
CONFIG_MISC_DEVICES=y
CONFIG_IBM_ASM=m
@@ -987,10 +1134,11 @@ CONFIG_EEPROM_93CX6=m
CONFIG_SGI_IOC4=m
CONFIG_TIFM_CORE=m
CONFIG_TIFM_7XX1=m
-# CONFIG_ASUS_LAPTOP is not set
+CONFIG_ASUS_LAPTOP=m
CONFIG_FUJITSU_LAPTOP=m
CONFIG_MSI_LAPTOP=m
-# CONFIG_SONY_LAPTOP is not set
+CONFIG_SONY_LAPTOP=m
+CONFIG_SONYPI_COMPAT=y
CONFIG_THINKPAD_ACPI=m
# CONFIG_THINKPAD_ACPI_DEBUG is not set
CONFIG_THINKPAD_ACPI_BAY=y
@@ -1003,13 +1151,13 @@ CONFIG_BLK_DEV_IDE=y
# CONFIG_BLK_DEV_IDE_SATA is not set
# CONFIG_BLK_DEV_HD_IDE is not set
CONFIG_BLK_DEV_IDEDISK=y
-# CONFIG_IDEDISK_MULTI_MODE is not set
+CONFIG_IDEDISK_MULTI_MODE=y
CONFIG_BLK_DEV_IDECS=m
-# CONFIG_BLK_DEV_DELKIN is not set
+CONFIG_BLK_DEV_DELKIN=m
CONFIG_BLK_DEV_IDECD=y
CONFIG_BLK_DEV_IDETAPE=m
-CONFIG_BLK_DEV_IDEFLOPPY=y
-CONFIG_BLK_DEV_IDESCSI=m
+CONFIG_BLK_DEV_IDEFLOPPY=m
+# CONFIG_BLK_DEV_IDESCSI is not set
# CONFIG_BLK_DEV_IDEACPI is not set
# CONFIG_IDE_TASK_IOCTL is not set
CONFIG_IDE_PROC_FS=y
@@ -1017,10 +1165,11 @@ CONFIG_IDE_PROC_FS=y
#
# IDE chipset support/bugfixes
#
-CONFIG_IDE_GENERIC=y
-CONFIG_BLK_DEV_PLATFORM=m
-# CONFIG_BLK_DEV_CMD640 is not set
-CONFIG_BLK_DEV_IDEPNP=y
+CONFIG_IDE_GENERIC=m
+# CONFIG_BLK_DEV_PLATFORM is not set
+CONFIG_BLK_DEV_CMD640=y
+CONFIG_BLK_DEV_CMD640_ENHANCED=y
+# CONFIG_BLK_DEV_IDEPNP is not set
#
# PCI IDE chipsets support
@@ -1029,8 +1178,8 @@ CONFIG_BLK_DEV_IDEPCI=y
CONFIG_IDEPCI_SHARE_IRQ=y
CONFIG_IDEPCI_PCIBUS_ORDER=y
# CONFIG_BLK_DEV_OFFBOARD is not set
-CONFIG_BLK_DEV_GENERIC=y
-# CONFIG_BLK_DEV_OPTI621 is not set
+# CONFIG_BLK_DEV_GENERIC is not set
+CONFIG_BLK_DEV_OPTI621=y
CONFIG_BLK_DEV_RZ1000=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
CONFIG_BLK_DEV_AEC62XX=y
@@ -1043,16 +1192,16 @@ CONFIG_BLK_DEV_TRIFLEX=y
CONFIG_BLK_DEV_CY82C693=y
CONFIG_BLK_DEV_CS5520=y
CONFIG_BLK_DEV_CS5530=y
-CONFIG_BLK_DEV_CS5535=y
+CONFIG_BLK_DEV_CS5535=m
CONFIG_BLK_DEV_HPT34X=y
# CONFIG_HPT34X_AUTODMA is not set
CONFIG_BLK_DEV_HPT366=y
CONFIG_BLK_DEV_JMICRON=y
CONFIG_BLK_DEV_SC1200=y
-CONFIG_BLK_DEV_PIIX=y
-# CONFIG_BLK_DEV_IT8213 is not set
+# CONFIG_BLK_DEV_PIIX is not set
+CONFIG_BLK_DEV_IT8213=y
CONFIG_BLK_DEV_IT821X=y
-# CONFIG_BLK_DEV_NS87415 is not set
+CONFIG_BLK_DEV_NS87415=m
CONFIG_BLK_DEV_PDC202XX_OLD=y
CONFIG_PDC202XX_BURST=y
CONFIG_BLK_DEV_PDC202XX_NEW=y
@@ -1060,9 +1209,9 @@ CONFIG_BLK_DEV_SVWKS=y
CONFIG_BLK_DEV_SIIMAGE=y
CONFIG_BLK_DEV_SIS5513=y
CONFIG_BLK_DEV_SLC90E66=y
-CONFIG_BLK_DEV_TRM290=m
+CONFIG_BLK_DEV_TRM290=y
CONFIG_BLK_DEV_VIA82CXXX=y
-# CONFIG_BLK_DEV_TC86C001 is not set
+CONFIG_BLK_DEV_TC86C001=y
# CONFIG_IDE_ARM is not set
#
@@ -1088,7 +1237,7 @@ CONFIG_IDE_ARCH_OBSOLETE_INIT=y
CONFIG_RAID_ATTRS=m
CONFIG_SCSI=y
CONFIG_SCSI_DMA=y
-CONFIG_SCSI_TGT=y
+CONFIG_SCSI_TGT=m
CONFIG_SCSI_NETLINK=y
CONFIG_SCSI_PROC_FS=y
@@ -1096,7 +1245,7 @@ CONFIG_SCSI_PROC_FS=y
# SCSI support type (disk, tape, CD-ROM)
#
CONFIG_BLK_DEV_SD=y
-CONFIG_CHR_DEV_ST=y
+CONFIG_CHR_DEV_ST=m
CONFIG_CHR_DEV_OSST=m
CONFIG_BLK_DEV_SR=y
CONFIG_BLK_DEV_SR_VENDOR=y
@@ -1106,34 +1255,35 @@ CONFIG_CHR_DEV_SCH=m
#
# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
#
-# CONFIG_SCSI_MULTI_LUN is not set
+CONFIG_SCSI_MULTI_LUN=y
# CONFIG_SCSI_CONSTANTS is not set
# CONFIG_SCSI_LOGGING is not set
-# CONFIG_SCSI_SCAN_ASYNC is not set
+CONFIG_SCSI_SCAN_ASYNC=y
CONFIG_SCSI_WAIT_SCAN=m
#
# SCSI Transports
#
CONFIG_SCSI_SPI_ATTRS=y
-CONFIG_SCSI_FC_ATTRS=y
+CONFIG_SCSI_FC_ATTRS=m
CONFIG_SCSI_FC_TGT_ATTRS=y
-CONFIG_SCSI_ISCSI_ATTRS=y
-CONFIG_SCSI_SAS_ATTRS=y
-CONFIG_SCSI_SAS_LIBSAS=y
-# CONFIG_SCSI_SAS_ATA is not set
-# CONFIG_SCSI_SAS_LIBSAS_DEBUG is not set
+CONFIG_SCSI_ISCSI_ATTRS=m
+CONFIG_SCSI_SAS_ATTRS=m
+CONFIG_SCSI_SAS_LIBSAS=m
+CONFIG_SCSI_SAS_ATA=y
+CONFIG_SCSI_SAS_LIBSAS_DEBUG=y
CONFIG_SCSI_SRP_ATTRS=m
CONFIG_SCSI_SRP_TGT_ATTRS=y
CONFIG_SCSI_LOWLEVEL=y
-CONFIG_ISCSI_TCP=y
-CONFIG_BLK_DEV_3W_XXXX_RAID=y
-CONFIG_SCSI_3W_9XXX=y
-CONFIG_SCSI_7000FASST=y
-CONFIG_SCSI_ACARD=y
-CONFIG_SCSI_AHA152X=y
-CONFIG_SCSI_AHA1542=y
-CONFIG_SCSI_AACRAID=y
+CONFIG_ISCSI_TCP=m
+CONFIG_BLK_DEV_3W_XXXX_RAID=m
+CONFIG_SCSI_3W_9XXX=m
+CONFIG_SCSI_7000FASST=m
+CONFIG_SCSI_ACARD=m
+CONFIG_SCSI_AHA152X=m
+CONFIG_SCSI_AHA1542=m
+CONFIG_SCSI_AHA1740=m
+CONFIG_SCSI_AACRAID=m
CONFIG_SCSI_AIC7XXX=y
CONFIG_AIC7XXX_CMDS_PER_DEVICE=4
CONFIG_AIC7XXX_RESET_DELAY_MS=15000
@@ -1141,75 +1291,85 @@ CONFIG_AIC7XXX_RESET_DELAY_MS=15000
CONFIG_AIC7XXX_DEBUG_MASK=0
# CONFIG_AIC7XXX_REG_PRETTY_PRINT is not set
CONFIG_SCSI_AIC7XXX_OLD=m
-CONFIG_SCSI_AIC79XX=y
+CONFIG_SCSI_AIC79XX=m
CONFIG_AIC79XX_CMDS_PER_DEVICE=4
CONFIG_AIC79XX_RESET_DELAY_MS=15000
# CONFIG_AIC79XX_DEBUG_ENABLE is not set
CONFIG_AIC79XX_DEBUG_MASK=0
# CONFIG_AIC79XX_REG_PRETTY_PRINT is not set
-CONFIG_SCSI_AIC94XX=y
+CONFIG_SCSI_AIC94XX=m
# CONFIG_AIC94XX_DEBUG is not set
-CONFIG_SCSI_DPT_I2O=y
+CONFIG_SCSI_DPT_I2O=m
CONFIG_SCSI_ADVANSYS=m
-CONFIG_SCSI_IN2000=y
+CONFIG_SCSI_IN2000=m
CONFIG_SCSI_ARCMSR=m
-# CONFIG_SCSI_ARCMSR_AER is not set
+CONFIG_SCSI_ARCMSR_AER=y
CONFIG_MEGARAID_NEWGEN=y
-CONFIG_MEGARAID_MM=y
-CONFIG_MEGARAID_MAILBOX=y
-CONFIG_MEGARAID_LEGACY=y
-CONFIG_MEGARAID_SAS=y
-CONFIG_SCSI_HPTIOP=y
+CONFIG_MEGARAID_MM=m
+CONFIG_MEGARAID_MAILBOX=m
+CONFIG_MEGARAID_LEGACY=m
+CONFIG_MEGARAID_SAS=m
+CONFIG_SCSI_HPTIOP=m
CONFIG_SCSI_BUSLOGIC=y
# CONFIG_SCSI_OMIT_FLASHPOINT is not set
-CONFIG_SCSI_DMX3191D=y
-CONFIG_SCSI_DTC3280=y
-CONFIG_SCSI_EATA=y
+CONFIG_SCSI_DMX3191D=m
+CONFIG_SCSI_DTC3280=m
+CONFIG_SCSI_EATA=m
# CONFIG_SCSI_EATA_TAGGED_QUEUE is not set
# CONFIG_SCSI_EATA_LINKED_COMMANDS is not set
CONFIG_SCSI_EATA_MAX_TAGS=16
-CONFIG_SCSI_FUTURE_DOMAIN=y
-CONFIG_SCSI_GDTH=y
+CONFIG_SCSI_FUTURE_DOMAIN=m
+CONFIG_SCSI_FD_MCS=m
+CONFIG_SCSI_GDTH=m
CONFIG_SCSI_GENERIC_NCR5380=m
-CONFIG_SCSI_GENERIC_NCR5380_MMIO=y
+CONFIG_SCSI_GENERIC_NCR5380_MMIO=m
CONFIG_SCSI_GENERIC_NCR53C400=y
+CONFIG_SCSI_IBMMCA=m
+CONFIG_IBMMCA_SCSI_ORDER_STANDARD=y
+CONFIG_IBMMCA_SCSI_DEV_RESET=y
CONFIG_SCSI_IPS=y
-CONFIG_SCSI_INITIO=y
-CONFIG_SCSI_INIA100=y
+CONFIG_SCSI_INITIO=m
+CONFIG_SCSI_INIA100=m
CONFIG_SCSI_PPA=m
CONFIG_SCSI_IMM=m
# CONFIG_SCSI_IZIP_EPP16 is not set
# CONFIG_SCSI_IZIP_SLOW_CTR is not set
CONFIG_SCSI_NCR53C406A=m
-CONFIG_SCSI_STEX=m
-CONFIG_SCSI_SYM53C8XX_2=y
+CONFIG_SCSI_NCR_D700=m
+CONFIG_SCSI_STEX=y
+CONFIG_SCSI_SYM53C8XX_2=m
CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
CONFIG_SCSI_SYM53C8XX_MMIO=y
-CONFIG_SCSI_IPR=y
+CONFIG_SCSI_IPR=m
# CONFIG_SCSI_IPR_TRACE is not set
# CONFIG_SCSI_IPR_DUMP is not set
+CONFIG_SCSI_NCR_Q720=m
+CONFIG_SCSI_NCR53C8XX_DEFAULT_TAGS=8
+CONFIG_SCSI_NCR53C8XX_MAX_TAGS=32
+CONFIG_SCSI_NCR53C8XX_SYNC=20
CONFIG_SCSI_PAS16=m
-CONFIG_SCSI_PSI240I=y
-CONFIG_SCSI_QLOGIC_FAS=y
-CONFIG_SCSI_QLOGIC_1280=y
-CONFIG_SCSI_QLA_FC=y
-CONFIG_SCSI_QLA_ISCSI=y
-CONFIG_SCSI_LPFC=y
-CONFIG_SCSI_SEAGATE=y
-CONFIG_SCSI_SYM53C416=y
-CONFIG_SCSI_DC395x=y
-CONFIG_SCSI_DC390T=y
-CONFIG_SCSI_T128=y
+CONFIG_SCSI_PSI240I=m
+CONFIG_SCSI_QLOGIC_FAS=m
+CONFIG_SCSI_QLOGIC_1280=m
+CONFIG_SCSI_QLA_FC=m
+CONFIG_SCSI_QLA_ISCSI=m
+CONFIG_SCSI_LPFC=m
+CONFIG_SCSI_SEAGATE=m
+CONFIG_SCSI_SIM710=m
+CONFIG_SCSI_SYM53C416=m
+CONFIG_SCSI_DC395x=m
+CONFIG_SCSI_DC390T=m
+CONFIG_SCSI_T128=m
CONFIG_SCSI_U14_34F=m
# CONFIG_SCSI_U14_34F_TAGGED_QUEUE is not set
# CONFIG_SCSI_U14_34F_LINKED_COMMANDS is not set
CONFIG_SCSI_U14_34F_MAX_TAGS=8
CONFIG_SCSI_ULTRASTOR=m
-CONFIG_SCSI_NSP32=y
+CONFIG_SCSI_NSP32=m
CONFIG_SCSI_DEBUG=m
-CONFIG_SCSI_SRP=y
+CONFIG_SCSI_SRP=m
CONFIG_SCSI_LOWLEVEL_PCMCIA=y
CONFIG_PCMCIA_AHA152X=m
CONFIG_PCMCIA_FDOMAIN=m
@@ -1220,12 +1380,12 @@ CONFIG_ATA=y
# CONFIG_ATA_NONSTANDARD is not set
CONFIG_ATA_ACPI=y
CONFIG_SATA_AHCI=y
-CONFIG_SATA_SVW=y
+CONFIG_SATA_SVW=m
CONFIG_ATA_PIIX=y
-CONFIG_SATA_MV=y
+CONFIG_SATA_MV=m
CONFIG_SATA_NV=y
-CONFIG_PDC_ADMA=y
-CONFIG_SATA_QSTOR=y
+CONFIG_PDC_ADMA=m
+CONFIG_SATA_QSTOR=m
CONFIG_SATA_PROMISE=y
CONFIG_SATA_SX4=y
CONFIG_SATA_SIL=y
@@ -1234,7 +1394,7 @@ CONFIG_SATA_SIS=y
CONFIG_SATA_ULI=y
CONFIG_SATA_VIA=y
CONFIG_SATA_VITESSE=y
-# CONFIG_SATA_INIC162X is not set
+CONFIG_SATA_INIC162X=m
CONFIG_PATA_ACPI=m
CONFIG_PATA_ALI=m
CONFIG_PATA_AMD=m
@@ -1256,8 +1416,8 @@ CONFIG_PATA_HPT3X3=m
CONFIG_PATA_HPT3X3_DMA=y
CONFIG_PATA_ISAPNP=m
CONFIG_PATA_IT821X=m
-# CONFIG_PATA_IT8213 is not set
-CONFIG_PATA_JMICRON=m
+CONFIG_PATA_IT8213=m
+CONFIG_PATA_JMICRON=y
CONFIG_PATA_LEGACY=m
CONFIG_PATA_TRIFLEX=m
CONFIG_PATA_MARVELL=m
@@ -1283,30 +1443,27 @@ CONFIG_PATA_WINBOND=m
CONFIG_PATA_WINBOND_VLB=m
CONFIG_MD=y
CONFIG_BLK_DEV_MD=y
-CONFIG_MD_LINEAR=y
+CONFIG_MD_LINEAR=m
CONFIG_MD_RAID0=y
CONFIG_MD_RAID1=y
-CONFIG_MD_RAID10=y
-CONFIG_MD_RAID456=y
+CONFIG_MD_RAID10=m
+CONFIG_MD_RAID456=m
CONFIG_MD_RAID5_RESHAPE=y
-CONFIG_MD_MULTIPATH=y
+CONFIG_MD_MULTIPATH=m
CONFIG_MD_FAULTY=m
-CONFIG_BLK_DEV_DM=y
+CONFIG_BLK_DEV_DM=m
# CONFIG_DM_DEBUG is not set
-CONFIG_DM_CRYPT=y
-CONFIG_DM_SNAPSHOT=y
-CONFIG_DM_MIRROR=y
-CONFIG_DM_ZERO=m
-CONFIG_DM_MULTIPATH=m
-CONFIG_DM_MULTIPATH_EMC=m
-CONFIG_DM_MULTIPATH_RDAC=m
-CONFIG_DM_MULTIPATH_HP=m
-CONFIG_DM_DELAY=m
-CONFIG_DM_UEVENT=y
+CONFIG_DM_CRYPT=m
+# CONFIG_DM_SNAPSHOT is not set
+# CONFIG_DM_MIRROR is not set
+# CONFIG_DM_ZERO is not set
+# CONFIG_DM_MULTIPATH is not set
+# CONFIG_DM_DELAY is not set
+# CONFIG_DM_UEVENT is not set
CONFIG_FUSION=y
-CONFIG_FUSION_SPI=y
-CONFIG_FUSION_FC=y
-CONFIG_FUSION_SAS=y
+CONFIG_FUSION_SPI=m
+CONFIG_FUSION_FC=m
+CONFIG_FUSION_SAS=m
CONFIG_FUSION_MAX_SGE=128
CONFIG_FUSION_CTL=m
CONFIG_FUSION_LAN=m
@@ -1328,31 +1485,31 @@ CONFIG_IEEE1394=y
#
# Controllers
#
-CONFIG_IEEE1394_PCILYNX=y
-CONFIG_IEEE1394_OHCI1394=y
+CONFIG_IEEE1394_PCILYNX=m
+CONFIG_IEEE1394_OHCI1394=m
#
# Protocols
#
CONFIG_IEEE1394_VIDEO1394=m
-CONFIG_IEEE1394_SBP2=y
+CONFIG_IEEE1394_SBP2=m
# CONFIG_IEEE1394_SBP2_PHYS_DMA is not set
CONFIG_IEEE1394_ETH1394_ROM_ENTRY=y
CONFIG_IEEE1394_ETH1394=m
CONFIG_IEEE1394_DV1394=m
CONFIG_IEEE1394_RAWIO=m
-CONFIG_I2O=y
+CONFIG_I2O=m
CONFIG_I2O_LCT_NOTIFY_ON_CHANGES=y
CONFIG_I2O_EXT_ADAPTEC=y
-CONFIG_I2O_CONFIG=y
-# CONFIG_I2O_CONFIG_OLD_IOCTL is not set
-CONFIG_I2O_BUS=y
-CONFIG_I2O_BLOCK=y
-CONFIG_I2O_SCSI=y
-CONFIG_I2O_PROC=y
+CONFIG_I2O_CONFIG=m
+CONFIG_I2O_CONFIG_OLD_IOCTL=y
+CONFIG_I2O_BUS=m
+CONFIG_I2O_BLOCK=m
+CONFIG_I2O_SCSI=m
+CONFIG_I2O_PROC=m
# CONFIG_MACINTOSH_DRIVERS is not set
CONFIG_NETDEVICES=y
-# CONFIG_NETDEVICES_MULTIQUEUE is not set
+CONFIG_NETDEVICES_MULTIQUEUE=y
CONFIG_IFB=m
CONFIG_DUMMY=m
CONFIG_BONDING=m
@@ -1404,12 +1561,16 @@ CONFIG_ELPLUS=m
CONFIG_EL16=m
CONFIG_EL3=m
CONFIG_3C515=m
+CONFIG_ELMC=m
+CONFIG_ELMC_II=m
CONFIG_VORTEX=m
CONFIG_TYPHOON=m
CONFIG_LANCE=m
CONFIG_NET_VENDOR_SMC=y
CONFIG_WD80x3=m
+CONFIG_ULTRAMCA=m
CONFIG_ULTRA=m
+CONFIG_ULTRA32=m
CONFIG_SMC9194=m
CONFIG_NET_VENDOR_RACAL=y
CONFIG_NI52=m
@@ -1435,18 +1596,20 @@ CONFIG_EEXPRESS=m
CONFIG_EEXPRESS_PRO=m
CONFIG_HPLAN_PLUS=m
CONFIG_HPLAN=m
-CONFIG_LP486E=m
+# CONFIG_LP486E is not set
CONFIG_ETH16I=m
CONFIG_NE2000=m
CONFIG_ZNET=m
CONFIG_SEEQ8005=m
+CONFIG_NE2_MCA=m
+CONFIG_IBMLANA=m
# CONFIG_IBM_NEW_EMAC_ZMII is not set
# CONFIG_IBM_NEW_EMAC_RGMII is not set
# CONFIG_IBM_NEW_EMAC_TAH is not set
# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
CONFIG_NET_PCI=y
CONFIG_PCNET32=m
-CONFIG_PCNET32_NAPI=y
+# CONFIG_PCNET32_NAPI is not set
CONFIG_AMD8111_ETH=m
# CONFIG_AMD8111E_NAPI is not set
CONFIG_ADAPTEC_STARFIRE=m
@@ -1458,13 +1621,16 @@ CONFIG_B44_PCI_AUTOSELECT=y
CONFIG_B44_PCICORE_AUTOSELECT=y
CONFIG_B44_PCI=y
CONFIG_FORCEDETH=m
-CONFIG_FORCEDETH_NAPI=y
+# CONFIG_FORCEDETH_NAPI is not set
CONFIG_CS89x0=m
CONFIG_EEPRO100=m
CONFIG_E100=m
+CONFIG_LNE390=m
CONFIG_FEALNX=m
CONFIG_NATSEMI=m
CONFIG_NE2K_PCI=m
+CONFIG_NE3210=m
+CONFIG_ES3210=m
CONFIG_8139CP=m
CONFIG_8139TOO=m
CONFIG_8139TOO_PIO=y
@@ -1478,8 +1644,8 @@ CONFIG_SUNDANCE=m
CONFIG_TLAN=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
-CONFIG_VIA_RHINE_NAPI=y
-# CONFIG_SC92031 is not set
+# CONFIG_VIA_RHINE_NAPI is not set
+CONFIG_SC92031=m
CONFIG_NET_POCKET=y
CONFIG_ATP=m
CONFIG_DE600=m
@@ -1498,26 +1664,28 @@ CONFIG_HAMACHI=m
CONFIG_YELLOWFIN=m
CONFIG_R8169=m
# CONFIG_R8169_NAPI is not set
-CONFIG_R8169_VLAN=y
+# CONFIG_R8169_VLAN is not set
CONFIG_SIS190=m
CONFIG_SKGE=m
+# CONFIG_SKGE_DEBUG is not set
CONFIG_SKY2=m
+# CONFIG_SKY2_DEBUG is not set
CONFIG_SK98LIN=m
CONFIG_VIA_VELOCITY=m
CONFIG_TIGON3=m
CONFIG_BNX2=m
CONFIG_QLA3XXX=m
-# CONFIG_ATL1 is not set
+CONFIG_ATL1=m
CONFIG_NETDEV_10000=y
CONFIG_CHELSIO_T1=m
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T1_NAPI=y
-# CONFIG_CHELSIO_T3 is not set
+CONFIG_CHELSIO_T3=m
CONFIG_IXGBE=m
CONFIG_IXGB=m
CONFIG_IXGB_NAPI=y
CONFIG_S2IO=m
-# CONFIG_S2IO_NAPI is not set
+CONFIG_S2IO_NAPI=y
CONFIG_MYRI10GE=m
CONFIG_NETXEN_NIC=m
CONFIG_NIU=m
@@ -1534,12 +1702,18 @@ CONFIG_TMSPCI=m
CONFIG_SKISA=m
CONFIG_PROTEON=m
CONFIG_ABYSS=m
+CONFIG_MADGEMC=m
CONFIG_SMCTR=m
#
# Wireless LAN
#
-# CONFIG_WLAN_PRE80211 is not set
+CONFIG_WLAN_PRE80211=y
+CONFIG_STRIP=m
+CONFIG_ARLAN=m
+CONFIG_WAVELAN=m
+CONFIG_PCMCIA_WAVELAN=m
+CONFIG_PCMCIA_NETWAVE=m
CONFIG_WLAN_80211=y
CONFIG_PCMCIA_RAYCS=m
CONFIG_IPW2100=m
@@ -1547,8 +1721,8 @@ CONFIG_IPW2100_MONITOR=y
# CONFIG_IPW2100_DEBUG is not set
CONFIG_IPW2200=m
CONFIG_IPW2200_MONITOR=y
-CONFIG_IPW2200_RADIOTAP=y
-CONFIG_IPW2200_PROMISCUOUS=y
+# CONFIG_IPW2200_RADIOTAP is not set
+# CONFIG_IPW2200_PROMISCUOUS is not set
CONFIG_IPW2200_QOS=y
# CONFIG_IPW2200_DEBUG is not set
CONFIG_LIBERTAS=m
@@ -1577,15 +1751,14 @@ CONFIG_P54_COMMON=m
CONFIG_P54_USB=m
CONFIG_P54_PCI=m
CONFIG_IWLWIFI=y
-# CONFIG_IWLWIFI_DEBUG is not set
+CONFIG_IWLWIFI_DEBUG=y
CONFIG_IWLWIFI_SENSITIVITY=y
CONFIG_IWLWIFI_SPECTRUM_MEASUREMENT=y
CONFIG_IWLWIFI_QOS=y
CONFIG_IWL4965=m
CONFIG_IWL3945=m
CONFIG_HOSTAP=m
-CONFIG_HOSTAP_FIRMWARE=y
-CONFIG_HOSTAP_FIRMWARE_NVRAM=y
+# CONFIG_HOSTAP_FIRMWARE is not set
CONFIG_HOSTAP_PLX=m
CONFIG_HOSTAP_PCI=m
CONFIG_HOSTAP_CS=m
@@ -1611,7 +1784,7 @@ CONFIG_B43_DMA_AND_PIO_MODE=y
CONFIG_B43LEGACY=m
CONFIG_B43LEGACY_PCI_AUTOSELECT=y
CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y
-# CONFIG_B43LEGACY_DEBUG is not set
+CONFIG_B43LEGACY_DEBUG=y
CONFIG_B43LEGACY_DMA=y
CONFIG_B43LEGACY_PIO=y
CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y
@@ -1645,7 +1818,7 @@ CONFIG_USB_RTL8150=m
CONFIG_USB_USBNET=m
CONFIG_USB_NET_AX8817X=m
CONFIG_USB_NET_CDCETHER=m
-# CONFIG_USB_NET_DM9601 is not set
+CONFIG_USB_NET_DM9601=m
CONFIG_USB_NET_GL620A=m
CONFIG_USB_NET_NET1080=m
CONFIG_USB_NET_PLUSB=m
@@ -1657,7 +1830,7 @@ CONFIG_USB_AN2720=y
CONFIG_USB_BELKIN=y
CONFIG_USB_ARMLINUX=y
# CONFIG_USB_EPSON2888 is not set
-# CONFIG_USB_KC2190 is not set
+CONFIG_USB_KC2190=y
CONFIG_USB_NET_ZAURUS=m
CONFIG_NET_PCMCIA=y
CONFIG_PCMCIA_3C589=m
@@ -1681,14 +1854,11 @@ CONFIG_HDLC_RAW_ETH=m
CONFIG_HDLC_CISCO=m
CONFIG_HDLC_FR=m
CONFIG_HDLC_PPP=m
-
-#
-# X.25/LAPB support is disabled
-#
+CONFIG_HDLC_X25=m
CONFIG_PCI200SYN=m
CONFIG_WANXL=m
CONFIG_PC300=m
-# CONFIG_PC300_MLPPP is not set
+CONFIG_PC300_MLPPP=y
#
# Cyclades-PC300 MLPPP support is disabled.
@@ -1697,7 +1867,7 @@ CONFIG_PC300=m
#
# Refer to the file README.mlppp, provided by PC300 package.
#
-# CONFIG_PC300TOO is not set
+CONFIG_PC300TOO=m
CONFIG_N2=m
CONFIG_C101=m
CONFIG_FARSYNC=m
@@ -1710,10 +1880,12 @@ CONFIG_SDLA=m
CONFIG_WAN_ROUTER_DRIVERS=m
CONFIG_CYCLADES_SYNC=m
CONFIG_CYCLOMX_X25=y
+CONFIG_LAPBETHER=m
+CONFIG_X25_ASY=m
CONFIG_SBNI=m
# CONFIG_SBNI_MULTILINE is not set
CONFIG_ATM_DRIVERS=y
-CONFIG_ATM_DUMMY=m
+# CONFIG_ATM_DUMMY is not set
CONFIG_ATM_TCP=m
CONFIG_ATM_LANAI=m
CONFIG_ATM_ENI=m
@@ -1768,115 +1940,17 @@ CONFIG_SHAPER=m
CONFIG_NETCONSOLE=m
CONFIG_NETCONSOLE_DYNAMIC=y
CONFIG_NETPOLL=y
-# CONFIG_NETPOLL_TRAP is not set
+CONFIG_NETPOLL_TRAP=y
CONFIG_NET_POLL_CONTROLLER=y
CONFIG_ISDN=m
-CONFIG_ISDN_I4L=m
-CONFIG_ISDN_PPP=y
-CONFIG_ISDN_PPP_VJ=y
-CONFIG_ISDN_MPP=y
-CONFIG_IPPP_FILTER=y
-CONFIG_ISDN_PPP_BSDCOMP=m
-CONFIG_ISDN_AUDIO=y
-CONFIG_ISDN_TTY_FAX=y
-
-#
-# ISDN feature submodules
-#
-CONFIG_ISDN_DIVERSION=m
-
-#
-# ISDN4Linux hardware drivers
-#
-
-#
-# Passive cards
-#
-CONFIG_ISDN_DRV_HISAX=m
-
-#
-# D-channel protocol features
-#
-CONFIG_HISAX_EURO=y
-CONFIG_DE_AOC=y
-CONFIG_HISAX_NO_SENDCOMPLETE=y
-CONFIG_HISAX_NO_LLC=y
-CONFIG_HISAX_NO_KEYPAD=y
-CONFIG_HISAX_1TR6=y
-CONFIG_HISAX_NI1=y
-CONFIG_HISAX_MAX_CARDS=8
-
-#
-# HiSax supported cards
-#
-CONFIG_HISAX_16_0=y
-CONFIG_HISAX_16_3=y
-CONFIG_HISAX_TELESPCI=y
-CONFIG_HISAX_S0BOX=y
-CONFIG_HISAX_AVM_A1=y
-CONFIG_HISAX_FRITZPCI=y
-CONFIG_HISAX_AVM_A1_PCMCIA=y
-CONFIG_HISAX_ELSA=y
-CONFIG_HISAX_IX1MICROR2=y
-CONFIG_HISAX_DIEHLDIVA=y
-CONFIG_HISAX_ASUSCOM=y
-CONFIG_HISAX_TELEINT=y
-CONFIG_HISAX_HFCS=y
-CONFIG_HISAX_SEDLBAUER=y
-CONFIG_HISAX_SPORTSTER=y
-CONFIG_HISAX_MIC=y
-CONFIG_HISAX_NETJET=y
-CONFIG_HISAX_NETJET_U=y
-CONFIG_HISAX_NICCY=y
-CONFIG_HISAX_ISURF=y
-CONFIG_HISAX_HSTSAPHIR=y
-CONFIG_HISAX_BKM_A4T=y
-CONFIG_HISAX_SCT_QUADRO=y
-CONFIG_HISAX_GAZEL=y
-CONFIG_HISAX_HFC_PCI=y
-CONFIG_HISAX_W6692=y
-CONFIG_HISAX_HFC_SX=y
-CONFIG_HISAX_ENTERNOW_PCI=y
-# CONFIG_HISAX_DEBUG is not set
-
-#
-# HiSax PCMCIA card service modules
-#
-CONFIG_HISAX_SEDLBAUER_CS=m
-CONFIG_HISAX_ELSA_CS=m
-CONFIG_HISAX_AVM_A1_CS=m
-CONFIG_HISAX_TELES_CS=m
-
-#
-# HiSax sub driver modules
-#
-CONFIG_HISAX_ST5481=m
-CONFIG_HISAX_HFCUSB=m
-CONFIG_HISAX_HFC4S8S=m
-CONFIG_HISAX_FRITZ_PCIPNP=m
-CONFIG_HISAX_HDLC=y
-
-#
-# Active cards
-#
-CONFIG_ISDN_DRV_ICN=m
-CONFIG_ISDN_DRV_PCBIT=m
-CONFIG_ISDN_DRV_SC=m
-CONFIG_ISDN_DRV_ACT2000=m
-CONFIG_ISDN_DRV_GIGASET=m
-CONFIG_GIGASET_BASE=m
-CONFIG_GIGASET_M105=m
-# CONFIG_GIGASET_M101 is not set
-# CONFIG_GIGASET_DEBUG is not set
-# CONFIG_GIGASET_UNDOCREQ is not set
+# CONFIG_ISDN_I4L is not set
CONFIG_ISDN_CAPI=m
CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y
-CONFIG_CAPI_TRACE=y
+# CONFIG_CAPI_TRACE is not set
CONFIG_ISDN_CAPI_MIDDLEWARE=y
CONFIG_ISDN_CAPI_CAPI20=m
CONFIG_ISDN_CAPI_CAPIFS_BOOL=y
CONFIG_ISDN_CAPI_CAPIFS=m
-CONFIG_ISDN_CAPI_CAPIDRV=m
#
# CAPI hardware drivers
@@ -1924,19 +1998,19 @@ CONFIG_INPUT_EVDEV=m
#
CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ATKBD=y
-# CONFIG_KEYBOARD_SUNKBD is not set
-# CONFIG_KEYBOARD_LKKBD is not set
-# CONFIG_KEYBOARD_XTKBD is not set
-# CONFIG_KEYBOARD_NEWTON is not set
+CONFIG_KEYBOARD_SUNKBD=m
+CONFIG_KEYBOARD_LKKBD=m
+CONFIG_KEYBOARD_XTKBD=m
+CONFIG_KEYBOARD_NEWTON=m
CONFIG_KEYBOARD_STOWAWAY=m
CONFIG_INPUT_MOUSE=y
-CONFIG_MOUSE_PS2=m
+CONFIG_MOUSE_PS2=y
CONFIG_MOUSE_PS2_ALPS=y
CONFIG_MOUSE_PS2_LOGIPS2PP=y
CONFIG_MOUSE_PS2_SYNAPTICS=y
CONFIG_MOUSE_PS2_LIFEBOOK=y
CONFIG_MOUSE_PS2_TRACKPOINT=y
-CONFIG_MOUSE_PS2_TOUCHKIT=y
+# CONFIG_MOUSE_PS2_TOUCHKIT is not set
CONFIG_MOUSE_SERIAL=m
CONFIG_MOUSE_APPLETOUCH=m
CONFIG_MOUSE_INPORT=m
@@ -1968,7 +2042,7 @@ CONFIG_JOYSTICK_TWIDJOY=m
CONFIG_JOYSTICK_DB9=m
CONFIG_JOYSTICK_GAMECON=m
CONFIG_JOYSTICK_TURBOGRAFX=m
-CONFIG_JOYSTICK_JOYDUMP=m
+# CONFIG_JOYSTICK_JOYDUMP is not set
CONFIG_JOYSTICK_XPAD=m
CONFIG_JOYSTICK_XPAD_FF=y
CONFIG_JOYSTICK_XPAD_LEDS=y
@@ -1979,6 +2053,7 @@ CONFIG_TABLET_USB_GTCO=m
CONFIG_TABLET_USB_KBTAB=m
CONFIG_TABLET_USB_WACOM=m
CONFIG_INPUT_TOUCHSCREEN=y
+CONFIG_TOUCHSCREEN_ADS7846=m
CONFIG_TOUCHSCREEN_FUJITSU=m
CONFIG_TOUCHSCREEN_GUNZE=m
CONFIG_TOUCHSCREEN_ELO=m
@@ -2003,7 +2078,7 @@ CONFIG_TOUCHSCREEN_USB_GOTOP=y
CONFIG_INPUT_MISC=y
CONFIG_INPUT_PCSPKR=m
CONFIG_INPUT_WISTRON_BTNS=m
-# CONFIG_INPUT_ATLAS_BTNS is not set
+CONFIG_INPUT_ATLAS_BTNS=m
CONFIG_INPUT_ATI_REMOTE=m
CONFIG_INPUT_ATI_REMOTE2=m
CONFIG_INPUT_KEYSPAN_REMOTE=m
@@ -2021,7 +2096,7 @@ CONFIG_SERIO_CT82C710=m
CONFIG_SERIO_PARKBD=m
CONFIG_SERIO_PCIPS2=m
CONFIG_SERIO_LIBPS2=y
-CONFIG_SERIO_RAW=m
+# CONFIG_SERIO_RAW is not set
CONFIG_GAMEPORT=m
CONFIG_GAMEPORT_NS558=m
CONFIG_GAMEPORT_L4=m
@@ -2034,7 +2109,7 @@ CONFIG_GAMEPORT_FM801=m
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
-CONFIG_VT_HW_CONSOLE_BINDING=y
+# CONFIG_VT_HW_CONSOLE_BINDING is not set
CONFIG_SERIAL_NONSTANDARD=y
CONFIG_COMPUTONE=m
CONFIG_ROCKETPORT=m
@@ -2051,7 +2126,7 @@ CONFIG_SYNCLINKMP=m
CONFIG_SYNCLINK_GT=m
CONFIG_N_HDLC=m
CONFIG_SPECIALIX=m
-# CONFIG_SPECIALIX_RTSCTS is not set
+CONFIG_SPECIALIX_RTSCTS=y
CONFIG_SX=m
CONFIG_RIO=m
# CONFIG_RIO_OLDPCI is not set
@@ -2078,6 +2153,7 @@ CONFIG_SERIAL_8250_HUB6=m
CONFIG_SERIAL_8250_SHARE_IRQ=y
CONFIG_SERIAL_8250_DETECT_IRQ=y
CONFIG_SERIAL_8250_RSA=y
+CONFIG_SERIAL_8250_MCA=m
#
# Non-8250 serial port support
@@ -2103,7 +2179,9 @@ CONFIG_HW_RANDOM_AMD=m
CONFIG_HW_RANDOM_GEODE=m
CONFIG_HW_RANDOM_VIA=m
CONFIG_NVRAM=m
-CONFIG_RTC=y
+CONFIG_RTC=m
+CONFIG_GEN_RTC=y
+CONFIG_GEN_RTC_X=y
CONFIG_DTLK=m
CONFIG_R3964=m
CONFIG_APPLICOM=m
@@ -2116,28 +2194,29 @@ CONFIG_SYNCLINK_CS=m
CONFIG_CARDMAN_4000=m
CONFIG_CARDMAN_4040=m
CONFIG_MWAVE=m
-CONFIG_SCx200_GPIO=m
CONFIG_PC8736x_GPIO=m
CONFIG_NSC_GPIO=m
CONFIG_CS5535_GPIO=m
# CONFIG_RAW_DRIVER is not set
-# CONFIG_HPET is not set
+CONFIG_HPET=y
+# CONFIG_HPET_RTC_IRQ is not set
+CONFIG_HPET_MMAP=y
CONFIG_HANGCHECK_TIMER=m
CONFIG_TCG_TPM=m
-# CONFIG_TCG_TIS is not set
-# CONFIG_TCG_NSC is not set
+CONFIG_TCG_TIS=m
+CONFIG_TCG_NSC=m
CONFIG_TCG_ATMEL=m
-# CONFIG_TCG_INFINEON is not set
+CONFIG_TCG_INFINEON=m
CONFIG_TELCLOCK=m
CONFIG_DEVPORT=y
-CONFIG_I2C=y
+CONFIG_I2C=m
CONFIG_I2C_BOARDINFO=y
CONFIG_I2C_CHARDEV=m
#
# I2C Algorithms
#
-CONFIG_I2C_ALGOBIT=y
+CONFIG_I2C_ALGOBIT=m
CONFIG_I2C_ALGOPCF=m
CONFIG_I2C_ALGOPCA=m
@@ -2160,15 +2239,12 @@ CONFIG_I2C_PARPORT_LIGHT=m
CONFIG_I2C_PROSAVAGE=m
CONFIG_I2C_SAVAGE4=m
CONFIG_I2C_SIMTEC=m
-CONFIG_SCx200_I2C=m
-CONFIG_SCx200_I2C_SCL=12
-CONFIG_SCx200_I2C_SDA=13
CONFIG_SCx200_ACB=m
CONFIG_I2C_SIS5595=m
CONFIG_I2C_SIS630=m
CONFIG_I2C_SIS96X=m
CONFIG_I2C_TAOS_EVM=m
-CONFIG_I2C_STUB=m
+# CONFIG_I2C_STUB is not set
CONFIG_I2C_TINY_USB=m
CONFIG_I2C_VIA=m
CONFIG_I2C_VIAPRO=m
@@ -2195,8 +2271,23 @@ CONFIG_SENSORS_TSL2550=m
#
# SPI support
#
-# CONFIG_SPI is not set
-# CONFIG_SPI_MASTER is not set
+CONFIG_SPI=y
+# CONFIG_SPI_DEBUG is not set
+CONFIG_SPI_MASTER=y
+
+#
+# SPI Master Controller Drivers
+#
+CONFIG_SPI_BITBANG=m
+# CONFIG_SPI_BUTTERFLY is not set
+CONFIG_SPI_LM70_LLP=m
+
+#
+# SPI Protocol Masters
+#
+CONFIG_SPI_AT25=m
+CONFIG_SPI_SPIDEV=m
+CONFIG_SPI_TLE62X0=m
CONFIG_W1=m
CONFIG_W1_CON=y
@@ -2213,13 +2304,13 @@ CONFIG_W1_MASTER_DS2482=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_DS2433=m
-CONFIG_W1_SLAVE_DS2433_CRC=y
+# CONFIG_W1_SLAVE_DS2433_CRC is not set
CONFIG_W1_SLAVE_DS2760=m
CONFIG_POWER_SUPPLY=y
# CONFIG_POWER_SUPPLY_DEBUG is not set
-# CONFIG_PDA_POWER is not set
+CONFIG_PDA_POWER=m
CONFIG_BATTERY_DS2760=m
-CONFIG_HWMON=m
+CONFIG_HWMON=y
CONFIG_HWMON_VID=m
CONFIG_SENSORS_ABITUGURU=m
CONFIG_SENSORS_ABITUGURU3=m
@@ -2227,7 +2318,7 @@ CONFIG_SENSORS_AD7418=m
CONFIG_SENSORS_ADM1021=m
CONFIG_SENSORS_ADM1025=m
CONFIG_SENSORS_ADM1026=m
-# CONFIG_SENSORS_ADM1029 is not set
+CONFIG_SENSORS_ADM1029=m
CONFIG_SENSORS_ADM1031=m
CONFIG_SENSORS_ADM9240=m
CONFIG_SENSORS_ADT7470=m
@@ -2248,6 +2339,7 @@ CONFIG_SENSORS_CORETEMP=m
CONFIG_SENSORS_IBMPEX=m
CONFIG_SENSORS_IT87=m
CONFIG_SENSORS_LM63=m
+CONFIG_SENSORS_LM70=m
CONFIG_SENSORS_LM75=m
CONFIG_SENSORS_LM77=m
CONFIG_SENSORS_LM78=m
@@ -2302,7 +2394,6 @@ CONFIG_ITCO_WDT=m
CONFIG_ITCO_VENDOR_SUPPORT=y
CONFIG_IT8712F_WDT=m
CONFIG_SC1200_WDT=m
-CONFIG_SCx200_WDT=m
CONFIG_PC87413_WDT=m
CONFIG_60XX_WDT=m
CONFIG_SBC8360_WDT=m
@@ -2322,7 +2413,7 @@ CONFIG_SBC_EPX_C3_WATCHDOG=m
CONFIG_PCWATCHDOG=m
CONFIG_MIXCOMWD=m
CONFIG_WDT=m
-# CONFIG_WDT_501 is not set
+CONFIG_WDT_501=y
#
# PCI-based Watchdog Cards
@@ -2352,7 +2443,7 @@ CONFIG_SSB_DRIVER_PCICORE=y
#
# Multifunction device drivers
#
-# CONFIG_MFD_SM501 is not set
+CONFIG_MFD_SM501=m
#
# Multimedia devices
@@ -2363,15 +2454,7 @@ CONFIG_VIDEO_V4L1_COMPAT=y
CONFIG_VIDEO_V4L2=y
CONFIG_VIDEO_CAPTURE_DRIVERS=y
# CONFIG_VIDEO_ADV_DEBUG is not set
-# CONFIG_VIDEO_HELPER_CHIPS_AUTO is not set
-
-#
-# Encoders/decoders and other helper chips
-#
-
-#
-# Audio decoders
-#
+CONFIG_VIDEO_HELPER_CHIPS_AUTO=y
CONFIG_VIDEO_TVAUDIO=m
CONFIG_VIDEO_TDA7432=m
CONFIG_VIDEO_TDA9840=m
@@ -2380,49 +2463,25 @@ CONFIG_VIDEO_TEA6415C=m
CONFIG_VIDEO_TEA6420=m
CONFIG_VIDEO_MSP3400=m
CONFIG_VIDEO_CS53L32A=m
-CONFIG_VIDEO_TLV320AIC23B=m
CONFIG_VIDEO_WM8775=m
CONFIG_VIDEO_WM8739=m
CONFIG_VIDEO_VP27SMPX=m
-
-#
-# Video decoders
-#
CONFIG_VIDEO_BT819=m
CONFIG_VIDEO_BT856=m
-CONFIG_VIDEO_BT866=m
CONFIG_VIDEO_KS0127=m
CONFIG_VIDEO_OV7670=m
-CONFIG_VIDEO_TCM825X=m
CONFIG_VIDEO_SAA7110=m
CONFIG_VIDEO_SAA7111=m
CONFIG_VIDEO_SAA7114=m
CONFIG_VIDEO_SAA711X=m
-CONFIG_VIDEO_SAA7191=m
CONFIG_VIDEO_TVP5150=m
CONFIG_VIDEO_VPX3220=m
-
-#
-# Video and audio decoders
-#
CONFIG_VIDEO_CX25840=m
-
-#
-# MPEG video encoders
-#
CONFIG_VIDEO_CX2341X=m
-
-#
-# Video encoders
-#
CONFIG_VIDEO_SAA7127=m
CONFIG_VIDEO_SAA7185=m
CONFIG_VIDEO_ADV7170=m
CONFIG_VIDEO_ADV7175=m
-
-#
-# Video improvement chips
-#
CONFIG_VIDEO_UPD64031A=m
CONFIG_VIDEO_UPD64083=m
CONFIG_VIDEO_VIVI=m
@@ -2449,15 +2508,16 @@ CONFIG_VIDEO_ZORAN_DC30=m
CONFIG_VIDEO_ZORAN_LML33=m
CONFIG_VIDEO_ZORAN_LML33R10=m
CONFIG_VIDEO_ZORAN_AVS6EYES=m
+CONFIG_VIDEO_MEYE=m
CONFIG_VIDEO_SAA7134=m
-# CONFIG_VIDEO_SAA7134_ALSA is not set
+CONFIG_VIDEO_SAA7134_ALSA=m
CONFIG_VIDEO_SAA7134_DVB=m
CONFIG_VIDEO_MXB=m
CONFIG_VIDEO_DPC=m
CONFIG_VIDEO_HEXIUM_ORION=m
CONFIG_VIDEO_HEXIUM_GEMINI=m
CONFIG_VIDEO_CX88=m
-# CONFIG_VIDEO_CX88_ALSA is not set
+CONFIG_VIDEO_CX88_ALSA=m
CONFIG_VIDEO_CX88_BLACKBIRD=m
CONFIG_VIDEO_CX88_DVB=m
CONFIG_VIDEO_CX88_VP3054=m
@@ -2469,8 +2529,7 @@ CONFIG_V4L_USB_DRIVERS=y
CONFIG_VIDEO_PVRUSB2=m
CONFIG_VIDEO_PVRUSB2_29XXX=y
CONFIG_VIDEO_PVRUSB2_24XXX=y
-CONFIG_VIDEO_PVRUSB2_SYSFS=y
-# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set
+# CONFIG_VIDEO_PVRUSB2_SYSFS is not set
CONFIG_VIDEO_EM28XX=m
CONFIG_VIDEO_USBVISION=m
CONFIG_VIDEO_USBVIDEO=m
@@ -2507,7 +2566,7 @@ CONFIG_RADIO_TYPHOON_PROC_FS=y
CONFIG_RADIO_ZOLTRIX=m
CONFIG_USB_DSBR=m
CONFIG_DVB_CORE=m
-# CONFIG_DVB_CORE_ATTACH is not set
+CONFIG_DVB_CORE_ATTACH=y
CONFIG_DVB_CAPTURE_DRIVERS=y
#
@@ -2517,7 +2576,7 @@ CONFIG_DVB_AV7110=m
CONFIG_DVB_AV7110_OSD=y
CONFIG_DVB_BUDGET=m
CONFIG_DVB_BUDGET_CI=m
-# CONFIG_DVB_BUDGET_AV is not set
+CONFIG_DVB_BUDGET_AV=m
CONFIG_DVB_BUDGET_PATCH=m
#
@@ -2532,9 +2591,9 @@ CONFIG_DVB_USB_DIBUSB_MC=m
CONFIG_DVB_USB_DIB0700=m
CONFIG_DVB_USB_UMT_010=m
CONFIG_DVB_USB_CXUSB=m
-# CONFIG_DVB_USB_M920X is not set
-# CONFIG_DVB_USB_GL861 is not set
-# CONFIG_DVB_USB_AU6610 is not set
+CONFIG_DVB_USB_M920X=m
+CONFIG_DVB_USB_GL861=m
+CONFIG_DVB_USB_AU6610=m
CONFIG_DVB_USB_DIGITV=m
CONFIG_DVB_USB_VP7045=m
CONFIG_DVB_USB_VP702X=m
@@ -2548,11 +2607,7 @@ CONFIG_DVB_USB_AF9005_REMOTE=m
CONFIG_DVB_TTUSB_BUDGET=m
CONFIG_DVB_TTUSB_DEC=m
CONFIG_DVB_CINERGYT2=m
-CONFIG_DVB_CINERGYT2_TUNING=y
-CONFIG_DVB_CINERGYT2_STREAM_URB_COUNT=32
-CONFIG_DVB_CINERGYT2_STREAM_BUF_SIZE=512
-CONFIG_DVB_CINERGYT2_QUERY_INTERVAL=250
-# CONFIG_DVB_CINERGYT2_ENABLE_RC_INPUT_DEVICE is not set
+# CONFIG_DVB_CINERGYT2_TUNING is not set
#
# Supported FlexCopII (B2C2) Adapters
@@ -2579,7 +2634,7 @@ CONFIG_DVB_PLUTO2=m
#
# Customise DVB Frontends
#
-CONFIG_DVB_FE_CUSTOMISE=y
+# CONFIG_DVB_FE_CUSTOMISE is not set
#
# DVB-S (satellite) frontends
@@ -2691,8 +2746,8 @@ CONFIG_DRM_MGA=m
CONFIG_DRM_SIS=m
CONFIG_DRM_VIA=m
CONFIG_DRM_SAVAGE=m
-CONFIG_VGASTATE=m
-CONFIG_VIDEO_OUTPUT_CONTROL=m
+CONFIG_VGASTATE=y
+CONFIG_VIDEO_OUTPUT_CONTROL=y
CONFIG_FB=y
CONFIG_FIRMWARE_EDID=y
CONFIG_FB_DDC=m
@@ -2714,40 +2769,32 @@ CONFIG_FB_TILEBLITTING=y
#
# Frame buffer hardware drivers
#
-CONFIG_FB_CIRRUS=m
-CONFIG_FB_PM2=m
-# CONFIG_FB_PM2_FIFO_DISCONNECT is not set
-CONFIG_FB_CYBER2000=m
-CONFIG_FB_ARC=m
+# CONFIG_FB_CIRRUS is not set
+# CONFIG_FB_PM2 is not set
+# CONFIG_FB_CYBER2000 is not set
+# CONFIG_FB_ARC is not set
# CONFIG_FB_ASILIANT is not set
# CONFIG_FB_IMSTT is not set
-CONFIG_FB_VGA16=m
+CONFIG_FB_VGA16=y
CONFIG_FB_UVESA=m
CONFIG_FB_VESA=y
# CONFIG_FB_EFI is not set
-CONFIG_FB_HECUBA=m
-CONFIG_FB_HGA=m
-# CONFIG_FB_HGA_ACCEL is not set
-CONFIG_FB_S1D13XXX=m
-CONFIG_FB_NVIDIA=m
-CONFIG_FB_NVIDIA_I2C=y
-# CONFIG_FB_NVIDIA_DEBUG is not set
-CONFIG_FB_NVIDIA_BACKLIGHT=y
-CONFIG_FB_RIVA=m
-CONFIG_FB_RIVA_I2C=y
-# CONFIG_FB_RIVA_DEBUG is not set
-CONFIG_FB_RIVA_BACKLIGHT=y
+# CONFIG_FB_HECUBA is not set
+# CONFIG_FB_HGA is not set
+# CONFIG_FB_S1D13XXX is not set
+# CONFIG_FB_NVIDIA is not set
+# CONFIG_FB_RIVA is not set
CONFIG_FB_I810=m
CONFIG_FB_I810_GTF=y
-CONFIG_FB_I810_I2C=y
+# CONFIG_FB_I810_I2C is not set
CONFIG_FB_LE80578=m
CONFIG_FB_CARILLO_RANCH=m
CONFIG_FB_INTEL=m
# CONFIG_FB_INTEL_DEBUG is not set
CONFIG_FB_INTEL_I2C=y
CONFIG_FB_MATROX=m
-CONFIG_FB_MATROX_MILLENIUM=y
-CONFIG_FB_MATROX_MYSTIQUE=y
+# CONFIG_FB_MATROX_MILLENIUM is not set
+# CONFIG_FB_MATROX_MYSTIQUE is not set
CONFIG_FB_MATROX_G=y
CONFIG_FB_MATROX_I2C=m
CONFIG_FB_MATROX_MAVEN=m
@@ -2759,39 +2806,32 @@ CONFIG_FB_RADEON_BACKLIGHT=y
CONFIG_FB_ATY128=m
CONFIG_FB_ATY128_BACKLIGHT=y
CONFIG_FB_ATY=m
-CONFIG_FB_ATY_CT=y
-CONFIG_FB_ATY_GENERIC_LCD=y
-CONFIG_FB_ATY_GX=y
+# CONFIG_FB_ATY_CT is not set
+# CONFIG_FB_ATY_GX is not set
CONFIG_FB_ATY_BACKLIGHT=y
-# CONFIG_FB_S3 is not set
-CONFIG_FB_SAVAGE=m
-CONFIG_FB_SAVAGE_I2C=y
-CONFIG_FB_SAVAGE_ACCEL=y
+CONFIG_FB_S3=m
+# CONFIG_FB_SAVAGE is not set
CONFIG_FB_SIS=m
CONFIG_FB_SIS_300=y
CONFIG_FB_SIS_315=y
-CONFIG_FB_NEOMAGIC=m
-CONFIG_FB_KYRO=m
-CONFIG_FB_3DFX=m
-# CONFIG_FB_3DFX_ACCEL is not set
-CONFIG_FB_VOODOO1=m
-CONFIG_FB_VT8623=m
-CONFIG_FB_CYBLA=m
-CONFIG_FB_TRIDENT=m
-# CONFIG_FB_TRIDENT_ACCEL is not set
-CONFIG_FB_ARK=m
-CONFIG_FB_PM3=m
-CONFIG_FB_GEODE=y
-CONFIG_FB_GEODE_LX=m
-CONFIG_FB_GEODE_GX=m
-# CONFIG_FB_GEODE_GX_SET_FBSIZE is not set
-CONFIG_FB_GEODE_GX1=m
+# CONFIG_FB_NEOMAGIC is not set
+# CONFIG_FB_KYRO is not set
+# CONFIG_FB_3DFX is not set
+# CONFIG_FB_VOODOO1 is not set
+# CONFIG_FB_VT8623 is not set
+# CONFIG_FB_CYBLA is not set
+# CONFIG_FB_TRIDENT is not set
+# CONFIG_FB_ARK is not set
+# CONFIG_FB_PM3 is not set
+# CONFIG_FB_GEODE is not set
+CONFIG_FB_SM501=m
# CONFIG_FB_VIRTUAL is not set
CONFIG_BACKLIGHT_LCD_SUPPORT=y
CONFIG_LCD_CLASS_DEVICE=m
+CONFIG_LCD_LTV350QV=m
CONFIG_BACKLIGHT_CLASS_DEVICE=y
CONFIG_BACKLIGHT_CORGI=m
-# CONFIG_BACKLIGHT_PROGEAR is not set
+CONFIG_BACKLIGHT_PROGEAR=m
CONFIG_BACKLIGHT_CARILLO_RANCH=m
#
@@ -2814,7 +2854,7 @@ CONFIG_MDA_CONSOLE=m
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
-# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
+CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
CONFIG_FONTS=y
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
@@ -2827,28 +2867,28 @@ CONFIG_FONT_8x16=y
# CONFIG_FONT_SUN12x22 is not set
# CONFIG_FONT_10x18 is not set
CONFIG_LOGO=y
-# CONFIG_LOGO_LINUX_MONO is not set
-# CONFIG_LOGO_LINUX_VGA16 is not set
+CONFIG_LOGO_LINUX_MONO=y
+CONFIG_LOGO_LINUX_VGA16=y
CONFIG_LOGO_LINUX_CLUT224=y
#
# Sound
#
-CONFIG_SOUND=m
+CONFIG_SOUND=y
#
# Advanced Linux Sound Architecture
#
-CONFIG_SND=m
-CONFIG_SND_TIMER=m
-CONFIG_SND_PCM=m
+CONFIG_SND=y
+CONFIG_SND_TIMER=y
+CONFIG_SND_PCM=y
CONFIG_SND_HWDEP=m
CONFIG_SND_RAWMIDI=m
CONFIG_SND_SEQUENCER=m
CONFIG_SND_SEQ_DUMMY=m
CONFIG_SND_OSSEMUL=y
-CONFIG_SND_MIXER_OSS=m
-CONFIG_SND_PCM_OSS=m
+CONFIG_SND_MIXER_OSS=y
+CONFIG_SND_PCM_OSS=y
CONFIG_SND_PCM_OSS_PLUGINS=y
CONFIG_SND_SEQUENCER_OSS=y
CONFIG_SND_RTCTIMER=m
@@ -2873,7 +2913,7 @@ CONFIG_SND_MTPAV=m
CONFIG_SND_MTS64=m
CONFIG_SND_SERIAL_U16550=m
CONFIG_SND_MPU401=m
-# CONFIG_SND_PORTMAN2X4 is not set
+CONFIG_SND_PORTMAN2X4=m
CONFIG_SND_AD1848_LIB=m
CONFIG_SND_CS4231_LIB=m
CONFIG_SND_SB_COMMON=m
@@ -2912,11 +2952,11 @@ CONFIG_SND_SB8=m
CONFIG_SND_SB16=m
CONFIG_SND_SBAWE=m
CONFIG_SND_SB16_CSP=y
-CONFIG_SND_SB16_CSP_FIRMWARE_IN_KERNEL=y
+# CONFIG_SND_SB16_CSP_FIRMWARE_IN_KERNEL is not set
CONFIG_SND_SGALAXY=m
CONFIG_SND_SSCAPE=m
CONFIG_SND_WAVEFRONT=m
-CONFIG_SND_WAVEFRONT_FIRMWARE_IN_KERNEL=y
+# CONFIG_SND_WAVEFRONT_FIRMWARE_IN_KERNEL is not set
#
# PCI devices
@@ -2980,9 +3020,9 @@ CONFIG_SND_ICE1724=m
CONFIG_SND_INTEL8X0=m
CONFIG_SND_INTEL8X0M=m
CONFIG_SND_KORG1212=m
-CONFIG_SND_KORG1212_FIRMWARE_IN_KERNEL=y
+# CONFIG_SND_KORG1212_FIRMWARE_IN_KERNEL is not set
CONFIG_SND_MAESTRO3=m
-CONFIG_SND_MAESTRO3_FIRMWARE_IN_KERNEL=y
+# CONFIG_SND_MAESTRO3_FIRMWARE_IN_KERNEL is not set
CONFIG_SND_MIXART=m
CONFIG_SND_NM256=m
CONFIG_SND_PCXHR=m
@@ -2996,17 +3036,21 @@ CONFIG_SND_VIA82XX=m
CONFIG_SND_VIA82XX_MODEM=m
CONFIG_SND_VX222=m
CONFIG_SND_YMFPCI=m
-CONFIG_SND_YMFPCI_FIRMWARE_IN_KERNEL=y
+# CONFIG_SND_YMFPCI_FIRMWARE_IN_KERNEL is not set
CONFIG_SND_AC97_POWER_SAVE=y
CONFIG_SND_AC97_POWER_SAVE_DEFAULT=0
#
+# SPI devices
+#
+
+#
# USB devices
#
CONFIG_SND_USB_AUDIO=m
CONFIG_SND_USB_USX2Y=m
CONFIG_SND_USB_CAIAQ=m
-# CONFIG_SND_USB_CAIAQ_INPUT is not set
+CONFIG_SND_USB_CAIAQ_INPUT=y
#
# PCMCIA devices
@@ -3031,18 +3075,18 @@ CONFIG_AC97_BUS=m
CONFIG_HID_SUPPORT=y
CONFIG_HID=y
# CONFIG_HID_DEBUG is not set
-# CONFIG_HIDRAW is not set
+CONFIG_HIDRAW=y
#
# USB Input Devices
#
CONFIG_USB_HID=y
-CONFIG_USB_HIDINPUT_POWERBOOK=y
+# CONFIG_USB_HIDINPUT_POWERBOOK is not set
CONFIG_HID_FF=y
CONFIG_HID_PID=y
CONFIG_LOGITECH_FF=y
-# CONFIG_PANTHERLORD_FF is not set
-CONFIG_THRUSTMASTER_FF=y
+CONFIG_PANTHERLORD_FF=y
+# CONFIG_THRUSTMASTER_FF is not set
CONFIG_ZEROPLUS_FF=y
CONFIG_USB_HIDDEV=y
CONFIG_USB_SUPPORT=y
@@ -3056,27 +3100,28 @@ CONFIG_USB=y
# Miscellaneous USB options
#
CONFIG_USB_DEVICEFS=y
-CONFIG_USB_DEVICE_CLASS=y
-# CONFIG_USB_DYNAMIC_MINORS is not set
-# CONFIG_USB_SUSPEND is not set
+# CONFIG_USB_DEVICE_CLASS is not set
+CONFIG_USB_DYNAMIC_MINORS=y
+CONFIG_USB_SUSPEND=y
# CONFIG_USB_PERSIST is not set
# CONFIG_USB_OTG is not set
#
# USB Host Controller Drivers
#
-CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_EHCI_HCD=m
CONFIG_USB_EHCI_SPLIT_ISO=y
CONFIG_USB_EHCI_ROOT_HUB_TT=y
-CONFIG_USB_EHCI_TT_NEWSCHED=y
-CONFIG_USB_ISP116X_HCD=y
-CONFIG_USB_OHCI_HCD=y
+# CONFIG_USB_EHCI_TT_NEWSCHED is not set
+CONFIG_USB_ISP116X_HCD=m
+CONFIG_USB_OHCI_HCD=m
+# CONFIG_USB_OHCI_HCD_SSB is not set
# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
CONFIG_USB_OHCI_LITTLE_ENDIAN=y
-CONFIG_USB_UHCI_HCD=y
+CONFIG_USB_UHCI_HCD=m
CONFIG_USB_U132_HCD=m
-CONFIG_USB_SL811_HCD=y
+CONFIG_USB_SL811_HCD=m
CONFIG_USB_SL811_CS=m
CONFIG_USB_R8A66597_HCD=m
@@ -3093,7 +3138,7 @@ CONFIG_USB_PRINTER=m
#
# may also be needed; see USB_STORAGE Help for more information
#
-CONFIG_USB_STORAGE=y
+CONFIG_USB_STORAGE=m
# CONFIG_USB_STORAGE_DEBUG is not set
CONFIG_USB_STORAGE_DATAFAB=y
CONFIG_USB_STORAGE_FREECOM=y
@@ -3112,7 +3157,7 @@ CONFIG_USB_STORAGE_KARMA=y
#
CONFIG_USB_MDC800=m
CONFIG_USB_MICROTEK=m
-CONFIG_USB_MON=y
+# CONFIG_USB_MON is not set
#
# USB port drivers
@@ -3174,7 +3219,7 @@ CONFIG_USB_SERIAL_CYBERJACK=m
CONFIG_USB_SERIAL_XIRCOM=m
CONFIG_USB_SERIAL_OPTION=m
CONFIG_USB_SERIAL_OMNINET=m
-CONFIG_USB_SERIAL_DEBUG=m
+# CONFIG_USB_SERIAL_DEBUG is not set
CONFIG_USB_EZUSB=y
#
@@ -3187,7 +3232,7 @@ CONFIG_USB_AUERSWALD=m
CONFIG_USB_RIO500=m
CONFIG_USB_LEGOTOWER=m
CONFIG_USB_LCD=m
-# CONFIG_USB_BERRY_CHARGE is not set
+CONFIG_USB_BERRY_CHARGE=m
CONFIG_USB_LED=m
CONFIG_USB_CYPRESS_CY7C63=m
CONFIG_USB_CYTHERM=m
@@ -3199,10 +3244,10 @@ CONFIG_USB_IDMOUSE=m
CONFIG_USB_FTDI_ELAN=m
CONFIG_USB_APPLEDISPLAY=m
CONFIG_USB_SISUSBVGA=m
-CONFIG_USB_SISUSBVGA_CON=y
+# CONFIG_USB_SISUSBVGA_CON is not set
CONFIG_USB_LD=m
CONFIG_USB_TRANCEVIBRATOR=m
-# CONFIG_USB_IOWARRIOR is not set
+CONFIG_USB_IOWARRIOR=m
CONFIG_USB_TEST=m
#
@@ -3217,7 +3262,33 @@ CONFIG_USB_XUSBATM=m
#
# USB Gadget Support
#
-# CONFIG_USB_GADGET is not set
+CONFIG_USB_GADGET=m
+# CONFIG_USB_GADGET_DEBUG is not set
+# CONFIG_USB_GADGET_DEBUG_FILES is not set
+# CONFIG_USB_GADGET_DEBUG_FS is not set
+CONFIG_USB_GADGET_SELECTED=y
+# CONFIG_USB_GADGET_AMD5536UDC is not set
+# CONFIG_USB_GADGET_ATMEL_USBA is not set
+# CONFIG_USB_GADGET_FSL_USB2 is not set
+CONFIG_USB_GADGET_NET2280=y
+CONFIG_USB_NET2280=m
+# CONFIG_USB_GADGET_PXA2XX is not set
+# CONFIG_USB_GADGET_M66592 is not set
+# CONFIG_USB_GADGET_GOKU is not set
+# CONFIG_USB_GADGET_LH7A40X is not set
+# CONFIG_USB_GADGET_OMAP is not set
+# CONFIG_USB_GADGET_S3C2410 is not set
+# CONFIG_USB_GADGET_AT91 is not set
+# CONFIG_USB_GADGET_DUMMY_HCD is not set
+CONFIG_USB_GADGET_DUALSPEED=y
+# CONFIG_USB_ZERO is not set
+CONFIG_USB_ETH=m
+# CONFIG_USB_ETH_RNDIS is not set
+# CONFIG_USB_GADGETFS is not set
+CONFIG_USB_FILE_STORAGE=m
+# CONFIG_USB_FILE_STORAGE_TEST is not set
+CONFIG_USB_G_SERIAL=m
+# CONFIG_USB_MIDI_GADGET is not set
CONFIG_MMC=m
# CONFIG_MMC_DEBUG is not set
# CONFIG_MMC_UNSAFE_RESUME is not set
@@ -3242,8 +3313,6 @@ CONFIG_LEDS_CLASS=m
#
# LED drivers
#
-CONFIG_LEDS_NET48XX=m
-CONFIG_LEDS_WRAP=m
#
# LED Triggers
@@ -3261,16 +3330,21 @@ CONFIG_INFINIBAND_MTHCA=m
CONFIG_INFINIBAND_MTHCA_DEBUG=y
CONFIG_INFINIBAND_AMSO1100=m
# CONFIG_INFINIBAND_AMSO1100_DEBUG is not set
+CONFIG_INFINIBAND_CXGB3=m
+# CONFIG_INFINIBAND_CXGB3_DEBUG is not set
CONFIG_MLX4_INFINIBAND=m
CONFIG_INFINIBAND_IPOIB=m
-# CONFIG_INFINIBAND_IPOIB_CM is not set
+CONFIG_INFINIBAND_IPOIB_CM=y
CONFIG_INFINIBAND_IPOIB_DEBUG=y
# CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set
CONFIG_INFINIBAND_SRP=m
CONFIG_INFINIBAND_ISER=m
# CONFIG_EDAC is not set
-CONFIG_RTC_LIB=m
-CONFIG_RTC_CLASS=m
+CONFIG_RTC_LIB=y
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_HCTOSYS=y
+CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
+# CONFIG_RTC_DEBUG is not set
#
# RTC interfaces
@@ -3299,11 +3373,13 @@ CONFIG_RTC_DRV_M41T80_WDT=y
#
# SPI RTC drivers
#
+CONFIG_RTC_DRV_RS5C348=m
+CONFIG_RTC_DRV_MAX6902=m
#
# Platform RTC drivers
#
-# CONFIG_RTC_DRV_CMOS is not set
+CONFIG_RTC_DRV_CMOS=m
CONFIG_RTC_DRV_DS1553=m
CONFIG_RTC_DRV_STK17TA8=m
CONFIG_RTC_DRV_DS1742=m
@@ -3314,11 +3390,29 @@ CONFIG_RTC_DRV_V3020=m
#
# on-CPU RTC drivers
#
-# CONFIG_DMADEVICES is not set
+CONFIG_DMADEVICES=y
+
+#
+# DMA Devices
+#
+CONFIG_INTEL_IOATDMA=m
+CONFIG_DMA_ENGINE=y
+
+#
+# DMA Clients
+#
+CONFIG_NET_DMA=y
+CONFIG_DCA=m
CONFIG_AUXDISPLAY=y
-# CONFIG_KS0108 is not set
+CONFIG_KS0108=m
+CONFIG_KS0108_PORT=0x378
+CONFIG_KS0108_DELAY=2
+CONFIG_CFAG12864B=m
+CONFIG_CFAG12864B_RATE=20
CONFIG_VIRTUALIZATION=y
-# CONFIG_KVM is not set
+CONFIG_KVM=m
+CONFIG_KVM_INTEL=m
+CONFIG_KVM_AMD=m
# CONFIG_LGUEST is not set
#
@@ -3339,18 +3433,22 @@ CONFIG_DMIID=y
# File systems
#
CONFIG_EXT2_FS=y
-# CONFIG_EXT2_FS_XATTR is not set
+CONFIG_EXT2_FS_XATTR=y
+CONFIG_EXT2_FS_POSIX_ACL=y
+CONFIG_EXT2_FS_SECURITY=y
# CONFIG_EXT2_FS_XIP is not set
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_EXT3_FS_SECURITY=y
-CONFIG_EXT4DEV_FS=y
+CONFIG_EXT4DEV_FS=m
CONFIG_EXT4DEV_FS_XATTR=y
CONFIG_EXT4DEV_FS_POSIX_ACL=y
CONFIG_EXT4DEV_FS_SECURITY=y
CONFIG_JBD=y
-CONFIG_JBD2=y
+CONFIG_JBD_DEBUG=y
+CONFIG_JBD2=m
+CONFIG_JBD2_DEBUG=y
CONFIG_FS_MBCACHE=y
CONFIG_REISERFS_FS=y
# CONFIG_REISERFS_CHECK is not set
@@ -3358,24 +3456,24 @@ CONFIG_REISERFS_FS=y
CONFIG_REISERFS_FS_XATTR=y
CONFIG_REISERFS_FS_POSIX_ACL=y
CONFIG_REISERFS_FS_SECURITY=y
-CONFIG_JFS_FS=y
+CONFIG_JFS_FS=m
CONFIG_JFS_POSIX_ACL=y
CONFIG_JFS_SECURITY=y
# CONFIG_JFS_DEBUG is not set
-# CONFIG_JFS_STATISTICS is not set
+CONFIG_JFS_STATISTICS=y
CONFIG_FS_POSIX_ACL=y
CONFIG_XFS_FS=y
CONFIG_XFS_QUOTA=y
CONFIG_XFS_SECURITY=y
CONFIG_XFS_POSIX_ACL=y
-# CONFIG_XFS_RT is not set
-CONFIG_GFS2_FS=y
+CONFIG_XFS_RT=y
+CONFIG_GFS2_FS=m
CONFIG_GFS2_FS_LOCKING_NOLOCK=m
CONFIG_GFS2_FS_LOCKING_DLM=m
-CONFIG_OCFS2_FS=y
+CONFIG_OCFS2_FS=m
CONFIG_OCFS2_DEBUG_MASKLOG=y
# CONFIG_OCFS2_DEBUG_FS is not set
-CONFIG_MINIX_FS=y
+# CONFIG_MINIX_FS is not set
CONFIG_ROMFS_FS=m
CONFIG_INOTIFY=y
CONFIG_INOTIFY_USER=y
@@ -3389,28 +3487,27 @@ CONFIG_DNOTIFY=y
CONFIG_AUTOFS_FS=m
CONFIG_AUTOFS4_FS=m
CONFIG_FUSE_FS=m
-CONFIG_GENERIC_ACL=y
#
# CD-ROM/DVD Filesystems
#
-CONFIG_ISO9660_FS=y
+CONFIG_ISO9660_FS=m
CONFIG_JOLIET=y
CONFIG_ZISOFS=y
-CONFIG_UDF_FS=y
+CONFIG_UDF_FS=m
CONFIG_UDF_NLS=y
#
# DOS/FAT/NT Filesystems
#
-CONFIG_FAT_FS=y
+CONFIG_FAT_FS=m
# CONFIG_MSDOS_FS is not set
-CONFIG_VFAT_FS=y
+CONFIG_VFAT_FS=m
CONFIG_FAT_DEFAULT_CODEPAGE=437
-CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
-CONFIG_NTFS_FS=y
+CONFIG_FAT_DEFAULT_IOCHARSET="utf8"
+CONFIG_NTFS_FS=m
# CONFIG_NTFS_DEBUG is not set
-# CONFIG_NTFS_RW is not set
+CONFIG_NTFS_RW=y
#
# Pseudo filesystems
@@ -3420,10 +3517,10 @@ CONFIG_PROC_KCORE=y
CONFIG_PROC_SYSCTL=y
CONFIG_SYSFS=y
CONFIG_TMPFS=y
-CONFIG_TMPFS_POSIX_ACL=y
+# CONFIG_TMPFS_POSIX_ACL is not set
# CONFIG_HUGETLBFS is not set
# CONFIG_HUGETLB_PAGE is not set
-CONFIG_CONFIGFS_FS=y
+CONFIG_CONFIGFS_FS=m
#
# Miscellaneous filesystems
@@ -3438,9 +3535,22 @@ CONFIG_BEFS_FS=m
# CONFIG_BEFS_DEBUG is not set
CONFIG_BFS_FS=m
CONFIG_EFS_FS=m
+CONFIG_JFFS2_FS=m
+CONFIG_JFFS2_FS_DEBUG=0
+CONFIG_JFFS2_FS_WRITEBUFFER=y
+# CONFIG_JFFS2_FS_WBUF_VERIFY is not set
+# CONFIG_JFFS2_SUMMARY is not set
+# CONFIG_JFFS2_FS_XATTR is not set
+CONFIG_JFFS2_COMPRESSION_OPTIONS=y
+CONFIG_JFFS2_ZLIB=y
+CONFIG_JFFS2_LZO=y
+CONFIG_JFFS2_RTIME=y
+CONFIG_JFFS2_RUBIN=y
+# CONFIG_JFFS2_CMODE_NONE is not set
+CONFIG_JFFS2_CMODE_PRIORITY=y
+# CONFIG_JFFS2_CMODE_SIZE is not set
+# CONFIG_JFFS2_CMODE_FAVOURLZO is not set
CONFIG_CRAMFS=m
-CONFIG_SQUASHFS=n
-CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
CONFIG_VXFS_FS=m
CONFIG_HPFS_FS=m
CONFIG_QNX4FS_FS=m
@@ -3449,31 +3559,31 @@ CONFIG_UFS_FS=m
# CONFIG_UFS_FS_WRITE is not set
# CONFIG_UFS_DEBUG is not set
CONFIG_NETWORK_FILESYSTEMS=y
-CONFIG_NFS_FS=y
+CONFIG_NFS_FS=m
CONFIG_NFS_V3=y
# CONFIG_NFS_V3_ACL is not set
-# CONFIG_NFS_V4 is not set
-# CONFIG_NFS_DIRECTIO is not set
+CONFIG_NFS_V4=y
+CONFIG_NFS_DIRECTIO=y
CONFIG_NFSD=m
CONFIG_NFSD_V3=y
# CONFIG_NFSD_V3_ACL is not set
CONFIG_NFSD_V4=y
CONFIG_NFSD_TCP=y
-CONFIG_LOCKD=y
+CONFIG_LOCKD=m
CONFIG_LOCKD_V4=y
CONFIG_EXPORTFS=m
CONFIG_NFS_COMMON=y
-CONFIG_SUNRPC=y
+CONFIG_SUNRPC=m
CONFIG_SUNRPC_GSS=m
CONFIG_SUNRPC_XPRT_RDMA=m
# CONFIG_SUNRPC_BIND34 is not set
CONFIG_RPCSEC_GSS_KRB5=m
-CONFIG_RPCSEC_GSS_SPKM3=m
+# CONFIG_RPCSEC_GSS_SPKM3 is not set
CONFIG_SMB_FS=m
# CONFIG_SMB_NLS_DEFAULT is not set
CONFIG_CIFS=m
# CONFIG_CIFS_STATS is not set
-CONFIG_CIFS_WEAK_PW_HASH=y
+# CONFIG_CIFS_WEAK_PW_HASH is not set
# CONFIG_CIFS_XATTR is not set
# CONFIG_CIFS_DEBUG2 is not set
# CONFIG_CIFS_EXPERIMENTAL is not set
@@ -3490,7 +3600,7 @@ CONFIG_CODA_FS=m
# CONFIG_CODA_FS_OLD_API is not set
CONFIG_AFS_FS=m
# CONFIG_AFS_DEBUG is not set
-CONFIG_9P_FS=m
+# CONFIG_9P_FS is not set
#
# Partition Types
@@ -3506,16 +3616,17 @@ CONFIG_BSD_DISKLABEL=y
# CONFIG_MINIX_SUBPARTITION is not set
CONFIG_SOLARIS_X86_PARTITION=y
# CONFIG_UNIXWARE_DISKLABEL is not set
-# CONFIG_LDM_PARTITION is not set
+CONFIG_LDM_PARTITION=y
+# CONFIG_LDM_DEBUG is not set
# CONFIG_SGI_PARTITION is not set
# CONFIG_ULTRIX_PARTITION is not set
# CONFIG_SUN_PARTITION is not set
-CONFIG_KARMA_PARTITION=y
+# CONFIG_KARMA_PARTITION is not set
# CONFIG_EFI_PARTITION is not set
# CONFIG_SYSV68_PARTITION is not set
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="iso8859-1"
-CONFIG_NLS_CODEPAGE_437=y
+CONFIG_NLS_CODEPAGE_437=m
CONFIG_NLS_CODEPAGE_737=m
CONFIG_NLS_CODEPAGE_775=m
CONFIG_NLS_CODEPAGE_850=m
@@ -3539,7 +3650,7 @@ CONFIG_NLS_ISO8859_8=m
CONFIG_NLS_CODEPAGE_1250=m
CONFIG_NLS_CODEPAGE_1251=m
CONFIG_NLS_ASCII=m
-CONFIG_NLS_ISO8859_1=y
+CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_ISO8859_2=m
CONFIG_NLS_ISO8859_3=m
CONFIG_NLS_ISO8859_4=m
@@ -3552,13 +3663,10 @@ CONFIG_NLS_ISO8859_14=m
CONFIG_NLS_ISO8859_15=m
CONFIG_NLS_KOI8_R=m
CONFIG_NLS_KOI8_U=m
-CONFIG_NLS_UTF8=y
+CONFIG_NLS_UTF8=m
CONFIG_DLM=m
# CONFIG_DLM_DEBUG is not set
-CONFIG_INSTRUMENTATION=y
-# CONFIG_PROFILING is not set
-# CONFIG_KPROBES is not set
-# CONFIG_MARKERS is not set
+# CONFIG_INSTRUMENTATION is not set
#
# Kernel hacking
@@ -3567,15 +3675,49 @@ CONFIG_TRACE_IRQFLAGS_SUPPORT=y
# CONFIG_PRINTK_TIME is not set
CONFIG_ENABLE_WARN_DEPRECATED=y
CONFIG_ENABLE_MUST_CHECK=y
-CONFIG_MAGIC_SYSRQ=y
+# CONFIG_MAGIC_SYSRQ is not set
CONFIG_UNUSED_SYMBOLS=y
-# CONFIG_DEBUG_FS is not set
-CONFIG_HEADERS_CHECK=y
-# CONFIG_DEBUG_KERNEL is not set
+CONFIG_DEBUG_FS=y
+# CONFIG_HEADERS_CHECK is not set
+CONFIG_DEBUG_KERNEL=y
+# CONFIG_DEBUG_SHIRQ is not set
+# CONFIG_DETECT_SOFTLOCKUP is not set
+# CONFIG_SCHED_DEBUG is not set
+# CONFIG_SCHEDSTATS is not set
+CONFIG_TIMER_STATS=y
# CONFIG_SLUB_DEBUG_ON is not set
+# CONFIG_DEBUG_PREEMPT is not set
+# CONFIG_DEBUG_RT_MUTEXES is not set
+# CONFIG_RT_MUTEX_TESTER is not set
+# CONFIG_DEBUG_SPINLOCK is not set
+# CONFIG_DEBUG_MUTEXES is not set
+# CONFIG_DEBUG_LOCK_ALLOC is not set
+# CONFIG_PROVE_LOCKING is not set
+# CONFIG_LOCK_STAT is not set
+# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
+# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
+# CONFIG_DEBUG_KOBJECT is not set
+# CONFIG_DEBUG_HIGHMEM is not set
CONFIG_DEBUG_BUGVERBOSE=y
+# CONFIG_DEBUG_INFO is not set
+# CONFIG_DEBUG_VM is not set
+# CONFIG_DEBUG_LIST is not set
+# CONFIG_DEBUG_SG is not set
+# CONFIG_FRAME_POINTER is not set
+CONFIG_FORCED_INLINING=y
+# CONFIG_BOOT_PRINTK_DELAY is not set
+# CONFIG_RCU_TORTURE_TEST is not set
+# CONFIG_FAULT_INJECTION is not set
# CONFIG_SAMPLES is not set
CONFIG_EARLY_PRINTK=y
+# CONFIG_DEBUG_STACKOVERFLOW is not set
+# CONFIG_DEBUG_STACK_USAGE is not set
+
+#
+# Page alloc debug is incompatible with Software Suspend on i386
+#
+# CONFIG_DEBUG_RODATA is not set
+# CONFIG_4KSTACKS is not set
CONFIG_X86_FIND_SMP_CONFIG=y
CONFIG_X86_MPPARSE=y
CONFIG_DOUBLEFAULT=y
@@ -3584,22 +3726,23 @@ CONFIG_DOUBLEFAULT=y
# Security options
#
CONFIG_KEYS=y
-# CONFIG_KEYS_DEBUG_PROC_KEYS is not set
+CONFIG_KEYS_DEBUG_PROC_KEYS=y
CONFIG_SECURITY=y
CONFIG_SECURITY_NETWORK=y
# CONFIG_SECURITY_NETWORK_XFRM is not set
CONFIG_SECURITY_CAPABILITIES=y
-CONFIG_SECURITY_FILE_CAPABILITIES=y
+# CONFIG_SECURITY_FILE_CAPABILITIES is not set
# CONFIG_SECURITY_ROOTPLUG is not set
-CONFIG_XOR_BLOCKS=y
-CONFIG_ASYNC_CORE=y
-CONFIG_ASYNC_MEMCPY=y
-CONFIG_ASYNC_XOR=y
+# CONFIG_SECURITY_SELINUX is not set
+CONFIG_XOR_BLOCKS=m
+CONFIG_ASYNC_CORE=m
+CONFIG_ASYNC_MEMCPY=m
+CONFIG_ASYNC_XOR=m
CONFIG_CRYPTO=y
CONFIG_CRYPTO_ALGAPI=y
CONFIG_CRYPTO_ABLKCIPHER=m
CONFIG_CRYPTO_AEAD=m
-CONFIG_CRYPTO_BLKCIPHER=y
+CONFIG_CRYPTO_BLKCIPHER=m
CONFIG_CRYPTO_HASH=y
CONFIG_CRYPTO_MANAGER=y
CONFIG_CRYPTO_HMAC=y
@@ -3614,7 +3757,7 @@ CONFIG_CRYPTO_WP512=m
CONFIG_CRYPTO_TGR192=m
CONFIG_CRYPTO_GF128MUL=m
CONFIG_CRYPTO_ECB=m
-CONFIG_CRYPTO_CBC=y
+CONFIG_CRYPTO_CBC=m
CONFIG_CRYPTO_PCBC=m
CONFIG_CRYPTO_LRW=m
CONFIG_CRYPTO_XTS=m
@@ -3637,7 +3780,7 @@ CONFIG_CRYPTO_ANUBIS=m
CONFIG_CRYPTO_SEED=m
CONFIG_CRYPTO_DEFLATE=m
CONFIG_CRYPTO_MICHAEL_MIC=m
-CONFIG_CRYPTO_CRC32C=y
+CONFIG_CRYPTO_CRC32C=m
CONFIG_CRYPTO_CAMELLIA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_AUTHENC=m
@@ -3652,13 +3795,19 @@ CONFIG_CRYPTO_DEV_GEODE=m
#
CONFIG_BITREVERSE=y
CONFIG_CRC_CCITT=m
-CONFIG_CRC16=y
+CONFIG_CRC16=m
CONFIG_CRC_ITU_T=m
CONFIG_CRC32=y
CONFIG_CRC7=m
-CONFIG_LIBCRC32C=y
-CONFIG_ZLIB_INFLATE=y
+CONFIG_LIBCRC32C=m
+CONFIG_AUDIT_GENERIC=y
+CONFIG_ZLIB_INFLATE=m
CONFIG_ZLIB_DEFLATE=m
+CONFIG_LZO_COMPRESS=m
+CONFIG_LZO_DECOMPRESS=m
+CONFIG_GENERIC_ALLOCATOR=y
+CONFIG_REED_SOLOMON=m
+CONFIG_REED_SOLOMON_DEC16=y
CONFIG_TEXTSEARCH=y
CONFIG_TEXTSEARCH_KMP=m
CONFIG_TEXTSEARCH_BM=m
@@ -3668,3 +3817,5 @@ CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAS_DMA=y
CONFIG_CHECK_SIGNATURE=y
+
+CONFIG_SQUASHFS=n
diff --git a/source/base-extra/kernel-fwlive/config.x86_64 b/source/base-extra/kernel-fwlive/config.x86_64
index 57c6af7..3880398 100644
--- a/source/base-extra/kernel-fwlive/config.x86_64
+++ b/source/base-extra/kernel-fwlive/config.x86_64
@@ -1,9 +1,8 @@
#
# Automatically generated make config: don't edit
-# Linux kernel version: 2.6.24
-# Mon Jan 21 15:11:36 2008
+# Linux kernel version: 2.6.24.3
+# Wed Feb 27 14:31:08 2008
#
-# CONFIG_64BIT is not set
CONFIG_64BIT=y
# CONFIG_X86_32 is not set
CONFIG_X86_64=y
@@ -18,31 +17,27 @@ CONFIG_STACKTRACE_SUPPORT=y
CONFIG_SEMAPHORE_SLEEPERS=y
CONFIG_MMU=y
CONFIG_ZONE_DMA=y
-CONFIG_QUICKLIST=y
+# CONFIG_QUICKLIST is not set
CONFIG_GENERIC_ISA_DMA=y
CONFIG_GENERIC_IOMAP=y
CONFIG_GENERIC_BUG=y
CONFIG_GENERIC_HWEIGHT=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y
CONFIG_DMI=y
-# CONFIG_RWSEM_GENERIC_SPINLOCK is not set
-CONFIG_RWSEM_XCHGADD_ALGORITHM=y
+CONFIG_RWSEM_GENERIC_SPINLOCK=y
+# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set
# CONFIG_ARCH_HAS_ILOG2_U32 is not set
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
CONFIG_GENERIC_CALIBRATE_DELAY=y
-# CONFIG_GENERIC_TIME_VSYSCALL is not set
+CONFIG_GENERIC_TIME_VSYSCALL=y
CONFIG_ARCH_SUPPORTS_OPROFILE=y
-# CONFIG_ZONE_DMA32 is not set
+CONFIG_ZONE_DMA32=y
CONFIG_ARCH_POPULATES_NODE_MAP=y
-# CONFIG_AUDIT_ARCH is not set
+CONFIG_AUDIT_ARCH=y
CONFIG_GENERIC_HARDIRQS=y
CONFIG_GENERIC_IRQ_PROBE=y
CONFIG_GENERIC_PENDING_IRQ=y
-CONFIG_X86_SMP=y
-CONFIG_X86_HT=y
-CONFIG_X86_BIOS_REBOOT=y
-CONFIG_X86_TRAMPOLINE=y
-CONFIG_KTIME_SCALAR=y
+# CONFIG_KTIME_SCALAR is not set
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
#
@@ -52,7 +47,7 @@ CONFIG_EXPERIMENTAL=y
CONFIG_LOCK_KERNEL=y
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_LOCALVERSION=""
-# CONFIG_LOCALVERSION_AUTO is not set
+CONFIG_LOCALVERSION_AUTO=y
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_SYSVIPC_SYSCTL=y
@@ -62,24 +57,27 @@ CONFIG_BSD_PROCESS_ACCT=y
# CONFIG_TASKSTATS is not set
# CONFIG_USER_NS is not set
# CONFIG_PID_NS is not set
-# CONFIG_AUDIT is not set
+CONFIG_AUDIT=y
+CONFIG_AUDITSYSCALL=y
+CONFIG_AUDIT_TREE=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
-CONFIG_LOG_BUF_SHIFT=15
+CONFIG_LOG_BUF_SHIFT=17
# CONFIG_CGROUPS is not set
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_FAIR_USER_SCHED=y
# CONFIG_FAIR_CGROUP_SCHED is not set
# CONFIG_SYSFS_DEPRECATED is not set
-# CONFIG_RELAY is not set
+CONFIG_RELAY=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
-# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
+CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_SYSCTL=y
# CONFIG_EMBEDDED is not set
CONFIG_UID16=y
CONFIG_SYSCTL_SYSCALL=y
CONFIG_KALLSYMS=y
+# CONFIG_KALLSYMS_ALL is not set
# CONFIG_KALLSYMS_EXTRA_PASS is not set
CONFIG_HOTPLUG=y
CONFIG_PRINTK=y
@@ -104,15 +102,14 @@ CONFIG_BASE_SMALL=0
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
# CONFIG_MODULE_FORCE_UNLOAD is not set
-# CONFIG_MODVERSIONS is not set
+CONFIG_MODVERSIONS=y
# CONFIG_MODULE_SRCVERSION_ALL is not set
CONFIG_KMOD=y
CONFIG_STOP_MACHINE=y
CONFIG_BLOCK=y
-CONFIG_LBD=y
-# CONFIG_BLK_DEV_IO_TRACE is not set
-CONFIG_LSF=y
-# CONFIG_BLK_DEV_BSG is not set
+CONFIG_BLK_DEV_IO_TRACE=y
+CONFIG_BLK_DEV_BSG=y
+CONFIG_BLOCK_COMPAT=y
#
# IO Schedulers
@@ -126,13 +123,14 @@ CONFIG_IOSCHED_CFQ=y
CONFIG_DEFAULT_CFQ=y
# CONFIG_DEFAULT_NOOP is not set
CONFIG_DEFAULT_IOSCHED="cfq"
+CONFIG_PREEMPT_NOTIFIERS=y
#
# Processor type and features
#
-# CONFIG_TICK_ONESHOT is not set
-# CONFIG_NO_HZ is not set
-# CONFIG_HIGH_RES_TIMERS is not set
+CONFIG_TICK_ONESHOT=y
+CONFIG_NO_HZ=y
+CONFIG_HIGH_RES_TIMERS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_SMP=y
CONFIG_X86_PC=y
@@ -145,10 +143,8 @@ CONFIG_X86_PC=y
# CONFIG_X86_GENERICARCH is not set
# CONFIG_X86_ES7000 is not set
# CONFIG_X86_VSMP is not set
-CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
-# CONFIG_PARAVIRT_GUEST is not set
# CONFIG_M386 is not set
-CONFIG_M486=y
+# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not set
@@ -159,7 +155,7 @@ CONFIG_M486=y
# CONFIG_MPENTIUM4 is not set
# CONFIG_MK6 is not set
# CONFIG_MK7 is not set
-# CONFIG_MK8 is not set
+CONFIG_MK8=y
# CONFIG_MCRUSOE is not set
# CONFIG_MEFFICEON is not set
# CONFIG_MWINCHIPC6 is not set
@@ -173,86 +169,71 @@ CONFIG_M486=y
# CONFIG_MPSC is not set
# CONFIG_MCORE2 is not set
# CONFIG_GENERIC_CPU is not set
-CONFIG_X86_GENERIC=y
+CONFIG_X86_L1_CACHE_BYTES=64
+CONFIG_X86_INTERNODE_CACHE_BYTES=64
CONFIG_X86_CMPXCHG=y
-CONFIG_X86_L1_CACHE_SHIFT=7
-CONFIG_X86_XADD=y
-CONFIG_X86_PPRO_FENCE=y
-CONFIG_X86_F00F_BUG=y
-CONFIG_X86_WP_WORKS_OK=y
-CONFIG_X86_INVLPG=y
-CONFIG_X86_BSWAP=y
-CONFIG_X86_POPAD_OK=y
-CONFIG_X86_ALIGNMENT_16=y
+CONFIG_X86_L1_CACHE_SHIFT=6
+CONFIG_X86_GOOD_APIC=y
CONFIG_X86_INTEL_USERCOPY=y
-CONFIG_X86_MINIMUM_CPU_FAMILY=4
+CONFIG_X86_USE_PPRO_CHECKSUM=y
+CONFIG_X86_TSC=y
+CONFIG_X86_MINIMUM_CPU_FAMILY=64
CONFIG_HPET_TIMER=y
-CONFIG_HPET_EMULATE_RTC=y
-CONFIG_NR_CPUS=32
+CONFIG_GART_IOMMU=y
+# CONFIG_CALGARY_IOMMU is not set
+CONFIG_SWIOTLB=y
+CONFIG_NR_CPUS=8
CONFIG_SCHED_SMT=y
CONFIG_SCHED_MC=y
-CONFIG_PREEMPT_NONE=y
+# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_VOLUNTARY is not set
-# CONFIG_PREEMPT is not set
+CONFIG_PREEMPT=y
CONFIG_PREEMPT_BKL=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_MCE=y
-CONFIG_X86_MCE_NONFATAL=m
-# CONFIG_X86_MCE_P4THERMAL is not set
-CONFIG_VM86=y
-CONFIG_TOSHIBA=m
-CONFIG_I8K=m
-CONFIG_X86_REBOOTFIXUPS=y
+# CONFIG_X86_MCE_INTEL is not set
+CONFIG_X86_MCE_AMD=y
CONFIG_MICROCODE=m
CONFIG_MICROCODE_OLD_INTERFACE=y
CONFIG_X86_MSR=m
CONFIG_X86_CPUID=m
-# CONFIG_NOHIGHMEM is not set
-CONFIG_HIGHMEM4G=y
-# CONFIG_HIGHMEM64G is not set
-CONFIG_PAGE_OFFSET=0xC0000000
-CONFIG_HIGHMEM=y
+# CONFIG_NUMA is not set
CONFIG_ARCH_FLATMEM_ENABLE=y
CONFIG_ARCH_SPARSEMEM_ENABLE=y
-CONFIG_ARCH_SELECT_MEMORY_MODEL=y
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_FLATMEM_MANUAL=y
# CONFIG_DISCONTIGMEM_MANUAL is not set
# CONFIG_SPARSEMEM_MANUAL is not set
CONFIG_FLATMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y
-CONFIG_SPARSEMEM_STATIC=y
-# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
+# CONFIG_SPARSEMEM_STATIC is not set
+CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
CONFIG_SPLIT_PTLOCK_CPUS=4
-# CONFIG_RESOURCES_64BIT is not set
+CONFIG_RESOURCES_64BIT=y
CONFIG_ZONE_DMA_FLAG=1
CONFIG_BOUNCE=y
-CONFIG_NR_QUICK=1
CONFIG_VIRT_TO_BUS=y
-CONFIG_HIGHPTE=y
-# CONFIG_MATH_EMULATION is not set
CONFIG_MTRR=y
-# CONFIG_EFI is not set
-CONFIG_IRQBALANCE=y
CONFIG_SECCOMP=y
+# CONFIG_CC_STACKPROTECTOR is not set
# CONFIG_HZ_100 is not set
-CONFIG_HZ_250=y
+# CONFIG_HZ_250 is not set
# CONFIG_HZ_300 is not set
-# CONFIG_HZ_1000 is not set
-CONFIG_HZ=250
-# CONFIG_KEXEC is not set
+CONFIG_HZ_1000=y
+CONFIG_HZ=1000
+CONFIG_KEXEC=y
# CONFIG_CRASH_DUMP is not set
-CONFIG_PHYSICAL_START=0x100000
+CONFIG_PHYSICAL_START=0x200000
# CONFIG_RELOCATABLE is not set
-CONFIG_PHYSICAL_ALIGN=0x100000
+CONFIG_PHYSICAL_ALIGN=0x200000
CONFIG_HOTPLUG_CPU=y
-CONFIG_COMPAT_VDSO=y
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
#
# Power management options
#
+CONFIG_ARCH_HIBERNATION_HEADER=y
CONFIG_PM=y
CONFIG_PM_LEGACY=y
# CONFIG_PM_DEBUG is not set
@@ -269,16 +250,16 @@ CONFIG_ACPI_PROCFS=y
CONFIG_ACPI_PROCFS_POWER=y
CONFIG_ACPI_SYSFS_POWER=y
CONFIG_ACPI_PROC_EVENT=y
-CONFIG_ACPI_AC=y
-CONFIG_ACPI_BATTERY=y
-CONFIG_ACPI_BUTTON=y
+CONFIG_ACPI_AC=m
+CONFIG_ACPI_BATTERY=m
+CONFIG_ACPI_BUTTON=m
CONFIG_ACPI_VIDEO=m
-CONFIG_ACPI_FAN=y
-CONFIG_ACPI_DOCK=y
-# CONFIG_ACPI_BAY is not set
-CONFIG_ACPI_PROCESSOR=y
+CONFIG_ACPI_FAN=m
+CONFIG_ACPI_DOCK=m
+CONFIG_ACPI_BAY=m
+CONFIG_ACPI_PROCESSOR=m
CONFIG_ACPI_HOTPLUG_CPU=y
-CONFIG_ACPI_THERMAL=y
+CONFIG_ACPI_THERMAL=m
CONFIG_ACPI_ASUS=m
CONFIG_ACPI_TOSHIBA=m
CONFIG_ACPI_BLACKLIST_YEAR=0
@@ -287,15 +268,8 @@ CONFIG_ACPI_EC=y
CONFIG_ACPI_POWER=y
CONFIG_ACPI_SYSTEM=y
CONFIG_X86_PM_TIMER=y
-CONFIG_ACPI_CONTAINER=y
-# CONFIG_ACPI_SBS is not set
-CONFIG_APM=y
-# CONFIG_APM_IGNORE_USER_SUSPEND is not set
-# CONFIG_APM_DO_ENABLE is not set
-# CONFIG_APM_CPU_IDLE is not set
-# CONFIG_APM_DISPLAY_BLANK is not set
-# CONFIG_APM_ALLOW_INTS is not set
-# CONFIG_APM_REAL_MODE_POWER_OFF is not set
+CONFIG_ACPI_CONTAINER=m
+CONFIG_ACPI_SBS=m
#
# CPU Frequency scaling
@@ -304,7 +278,7 @@ CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=m
# CONFIG_CPU_FREQ_DEBUG is not set
CONFIG_CPU_FREQ_STAT=m
-CONFIG_CPU_FREQ_STAT_DETAILS=y
+# CONFIG_CPU_FREQ_STAT_DETAILS is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
@@ -319,61 +293,41 @@ CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
# CPUFreq processor drivers
#
CONFIG_X86_ACPI_CPUFREQ=m
-CONFIG_X86_POWERNOW_K6=m
-CONFIG_X86_POWERNOW_K7=m
-CONFIG_X86_POWERNOW_K7_ACPI=y
CONFIG_X86_POWERNOW_K8=m
CONFIG_X86_POWERNOW_K8_ACPI=y
-CONFIG_X86_GX_SUSPMOD=m
CONFIG_X86_SPEEDSTEP_CENTRINO=m
-CONFIG_X86_SPEEDSTEP_CENTRINO_TABLE=y
-CONFIG_X86_SPEEDSTEP_ICH=m
-CONFIG_X86_SPEEDSTEP_SMI=m
CONFIG_X86_P4_CLOCKMOD=m
-CONFIG_X86_CPUFREQ_NFORCE2=m
-CONFIG_X86_LONGRUN=m
-CONFIG_X86_LONGHAUL=m
-# CONFIG_X86_E_POWERSAVER is not set
#
# shared options
#
# CONFIG_X86_ACPI_CPUFREQ_PROC_INTF is not set
CONFIG_X86_SPEEDSTEP_LIB=m
-CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK=y
# CONFIG_CPU_IDLE is not set
#
# Bus options (PCI etc.)
#
CONFIG_PCI=y
-# CONFIG_PCI_GOBIOS is not set
-# CONFIG_PCI_GOMMCONFIG is not set
-# CONFIG_PCI_GODIRECT is not set
-CONFIG_PCI_GOANY=y
-CONFIG_PCI_BIOS=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_MMCONFIG=y
CONFIG_PCI_DOMAINS=y
+# CONFIG_DMAR is not set
CONFIG_PCIEPORTBUS=y
CONFIG_HOTPLUG_PCI_PCIE=m
CONFIG_PCIEAER=y
CONFIG_ARCH_SUPPORTS_MSI=y
-# CONFIG_PCI_MSI is not set
+CONFIG_PCI_MSI=y
CONFIG_PCI_LEGACY=y
+# CONFIG_PCI_DEBUG is not set
CONFIG_HT_IRQ=y
CONFIG_ISA_DMA_API=y
-CONFIG_ISA=y
-# CONFIG_EISA is not set
-# CONFIG_MCA is not set
-CONFIG_SCx200=m
-CONFIG_SCx200HR_TIMER=m
CONFIG_K8_NB=y
-CONFIG_PCCARD=m
+CONFIG_PCCARD=y
# CONFIG_PCMCIA_DEBUG is not set
-CONFIG_PCMCIA=m
+CONFIG_PCMCIA=y
CONFIG_PCMCIA_LOAD_CIS=y
-CONFIG_PCMCIA_IOCTL=y
+# CONFIG_PCMCIA_IOCTL is not set
CONFIG_CARDBUS=y
#
@@ -387,15 +341,9 @@ CONFIG_YENTA_ENE_TUNE=y
CONFIG_YENTA_TOSHIBA=y
CONFIG_PD6729=m
CONFIG_I82092=m
-CONFIG_I82365=m
-CONFIG_TCIC=m
-CONFIG_PCMCIA_PROBE=y
CONFIG_PCCARD_NONSTATIC=m
CONFIG_HOTPLUG_PCI=y
CONFIG_HOTPLUG_PCI_FAKE=m
-CONFIG_HOTPLUG_PCI_COMPAQ=m
-# CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM is not set
-# CONFIG_HOTPLUG_PCI_IBM is not set
CONFIG_HOTPLUG_PCI_ACPI=m
CONFIG_HOTPLUG_PCI_ACPI_IBM=m
# CONFIG_HOTPLUG_PCI_CPCI is not set
@@ -405,8 +353,12 @@ CONFIG_HOTPLUG_PCI_SHPC=m
# Executable file formats / Emulations
#
CONFIG_BINFMT_ELF=y
-CONFIG_BINFMT_AOUT=m
CONFIG_BINFMT_MISC=m
+CONFIG_IA32_EMULATION=y
+CONFIG_IA32_AOUT=y
+CONFIG_COMPAT=y
+CONFIG_COMPAT_FOR_U64_ALIGNMENT=y
+CONFIG_SYSVIPC_COMPAT=y
#
# Networking
@@ -434,7 +386,10 @@ CONFIG_IP_FIB_HASH=y
CONFIG_IP_MULTIPLE_TABLES=y
CONFIG_IP_ROUTE_MULTIPATH=y
CONFIG_IP_ROUTE_VERBOSE=y
-# CONFIG_IP_PNP is not set
+CONFIG_IP_PNP=y
+CONFIG_IP_PNP_DHCP=y
+CONFIG_IP_PNP_BOOTP=y
+CONFIG_IP_PNP_RARP=y
CONFIG_NET_IPIP=m
CONFIG_NET_IPGRE=m
CONFIG_NET_IPGRE_BROADCAST=y
@@ -452,50 +407,39 @@ CONFIG_INET_XFRM_MODE_TRANSPORT=m
CONFIG_INET_XFRM_MODE_TUNNEL=m
CONFIG_INET_XFRM_MODE_BEET=m
CONFIG_INET_LRO=m
-CONFIG_INET_DIAG=m
-CONFIG_INET_TCP_DIAG=m
-# CONFIG_TCP_CONG_ADVANCED is not set
-CONFIG_TCP_CONG_CUBIC=y
-CONFIG_DEFAULT_TCP_CONG="cubic"
+CONFIG_INET_DIAG=y
+CONFIG_INET_TCP_DIAG=y
+CONFIG_TCP_CONG_ADVANCED=y
+CONFIG_TCP_CONG_BIC=y
+CONFIG_TCP_CONG_CUBIC=m
+CONFIG_TCP_CONG_WESTWOOD=m
+CONFIG_TCP_CONG_HTCP=m
+CONFIG_TCP_CONG_HSTCP=m
+CONFIG_TCP_CONG_HYBLA=m
+CONFIG_TCP_CONG_VEGAS=m
+CONFIG_TCP_CONG_SCALABLE=m
+# CONFIG_TCP_CONG_LP is not set
+# CONFIG_TCP_CONG_VENO is not set
+CONFIG_TCP_CONG_YEAH=m
+CONFIG_TCP_CONG_ILLINOIS=m
+CONFIG_DEFAULT_BIC=y
+# CONFIG_DEFAULT_CUBIC is not set
+# CONFIG_DEFAULT_HTCP is not set
+# CONFIG_DEFAULT_VEGAS is not set
+# CONFIG_DEFAULT_WESTWOOD is not set
+# CONFIG_DEFAULT_RENO is not set
+CONFIG_DEFAULT_TCP_CONG="bic"
# CONFIG_TCP_MD5SIG is not set
-CONFIG_IP_VS=m
-# CONFIG_IP_VS_DEBUG is not set
-CONFIG_IP_VS_TAB_BITS=12
-
-#
-# IPVS transport protocol load balancing support
-#
-CONFIG_IP_VS_PROTO_TCP=y
-CONFIG_IP_VS_PROTO_UDP=y
-CONFIG_IP_VS_PROTO_ESP=y
-CONFIG_IP_VS_PROTO_AH=y
-
-#
-# IPVS scheduler
-#
-CONFIG_IP_VS_RR=m
-CONFIG_IP_VS_WRR=m
-CONFIG_IP_VS_LC=m
-CONFIG_IP_VS_WLC=m
-CONFIG_IP_VS_LBLC=m
-CONFIG_IP_VS_LBLCR=m
-CONFIG_IP_VS_DH=m
-CONFIG_IP_VS_SH=m
-CONFIG_IP_VS_SED=m
-CONFIG_IP_VS_NQ=m
-
-#
-# IPVS application helper
-#
-CONFIG_IP_VS_FTP=m
+# CONFIG_IP_VS is not set
CONFIG_IPV6=m
CONFIG_IPV6_PRIVACY=y
-# CONFIG_IPV6_ROUTER_PREF is not set
-# CONFIG_IPV6_OPTIMISTIC_DAD is not set
+CONFIG_IPV6_ROUTER_PREF=y
+CONFIG_IPV6_ROUTE_INFO=y
+CONFIG_IPV6_OPTIMISTIC_DAD=y
CONFIG_INET6_AH=m
CONFIG_INET6_ESP=m
CONFIG_INET6_IPCOMP=m
-# CONFIG_IPV6_MIP6 is not set
+CONFIG_IPV6_MIP6=m
CONFIG_INET6_XFRM_TUNNEL=m
CONFIG_INET6_TUNNEL=m
CONFIG_INET6_XFRM_MODE_TRANSPORT=m
@@ -504,9 +448,10 @@ CONFIG_INET6_XFRM_MODE_BEET=m
CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
CONFIG_IPV6_SIT=m
CONFIG_IPV6_TUNNEL=m
-# CONFIG_IPV6_MULTIPLE_TABLES is not set
-# CONFIG_NETLABEL is not set
-# CONFIG_NETWORK_SECMARK is not set
+CONFIG_IPV6_MULTIPLE_TABLES=y
+# CONFIG_IPV6_SUBTREES is not set
+CONFIG_NETLABEL=y
+CONFIG_NETWORK_SECMARK=y
CONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not set
CONFIG_BRIDGE_NETFILTER=y
@@ -519,8 +464,9 @@ CONFIG_NETFILTER_NETLINK_QUEUE=m
CONFIG_NETFILTER_NETLINK_LOG=m
CONFIG_NF_CONNTRACK_ENABLED=m
CONFIG_NF_CONNTRACK=m
-# CONFIG_NF_CT_ACCT is not set
-# CONFIG_NF_CONNTRACK_MARK is not set
+CONFIG_NF_CT_ACCT=y
+CONFIG_NF_CONNTRACK_MARK=y
+# CONFIG_NF_CONNTRACK_SECMARK is not set
# CONFIG_NF_CONNTRACK_EVENTS is not set
CONFIG_NF_CT_PROTO_GRE=m
CONFIG_NF_CT_PROTO_SCTP=m
@@ -531,24 +477,25 @@ CONFIG_NF_CONNTRACK_H323=m
CONFIG_NF_CONNTRACK_IRC=m
CONFIG_NF_CONNTRACK_NETBIOS_NS=m
CONFIG_NF_CONNTRACK_PPTP=m
-# CONFIG_NF_CONNTRACK_SANE is not set
+CONFIG_NF_CONNTRACK_SANE=m
CONFIG_NF_CONNTRACK_SIP=m
CONFIG_NF_CONNTRACK_TFTP=m
CONFIG_NF_CT_NETLINK=m
CONFIG_NETFILTER_XTABLES=m
CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
-# CONFIG_NETFILTER_XT_TARGET_CONNMARK is not set
+CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
CONFIG_NETFILTER_XT_TARGET_DSCP=m
CONFIG_NETFILTER_XT_TARGET_MARK=m
CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
CONFIG_NETFILTER_XT_TARGET_NFLOG=m
CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
CONFIG_NETFILTER_XT_TARGET_TRACE=m
-# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set
+CONFIG_NETFILTER_XT_TARGET_SECMARK=m
+CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
CONFIG_NETFILTER_XT_MATCH_COMMENT=m
-# CONFIG_NETFILTER_XT_MATCH_CONNBYTES is not set
+CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
-# CONFIG_NETFILTER_XT_MATCH_CONNMARK is not set
+CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
CONFIG_NETFILTER_XT_MATCH_DCCP=m
CONFIG_NETFILTER_XT_MATCH_DSCP=m
@@ -611,7 +558,7 @@ CONFIG_IP_NF_MANGLE=m
CONFIG_IP_NF_TARGET_TOS=m
CONFIG_IP_NF_TARGET_ECN=m
CONFIG_IP_NF_TARGET_TTL=m
-# CONFIG_IP_NF_TARGET_CLUSTERIP is not set
+CONFIG_IP_NF_TARGET_CLUSTERIP=m
CONFIG_IP_NF_RAW=m
CONFIG_IP_NF_ARPTABLES=m
CONFIG_IP_NF_ARPFILTER=m
@@ -630,7 +577,7 @@ CONFIG_IP6_NF_MATCH_HL=m
CONFIG_IP6_NF_MATCH_OWNER=m
CONFIG_IP6_NF_MATCH_IPV6HEADER=m
CONFIG_IP6_NF_MATCH_AH=m
-# CONFIG_IP6_NF_MATCH_MH is not set
+CONFIG_IP6_NF_MATCH_MH=m
CONFIG_IP6_NF_MATCH_EUI64=m
CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_LOG=m
@@ -640,6 +587,11 @@ CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_RAW=m
#
+# DECnet: Netfilter Configuration
+#
+CONFIG_DECNET_NF_GRABULATOR=m
+
+#
# Bridge: Netfilter Configuration
#
CONFIG_BRIDGE_NF_EBTABLES=m
@@ -661,7 +613,7 @@ CONFIG_BRIDGE_EBT_MARK_T=m
CONFIG_BRIDGE_EBT_REDIRECT=m
CONFIG_BRIDGE_EBT_SNAT=m
CONFIG_BRIDGE_EBT_LOG=m
-CONFIG_BRIDGE_EBT_ULOG=m
+# CONFIG_BRIDGE_EBT_ULOG is not set
# CONFIG_IP_DCCP is not set
CONFIG_IP_SCTP=m
# CONFIG_SCTP_DBG_MSG is not set
@@ -679,23 +631,22 @@ CONFIG_ATM_BR2684=m
# CONFIG_ATM_BR2684_IPFILTER is not set
CONFIG_BRIDGE=m
CONFIG_VLAN_8021Q=m
-# CONFIG_DECNET is not set
+CONFIG_DECNET=m
+# CONFIG_DECNET_ROUTER is not set
CONFIG_LLC=y
CONFIG_LLC2=m
CONFIG_IPX=m
# CONFIG_IPX_INTERN is not set
CONFIG_ATALK=m
CONFIG_DEV_APPLETALK=m
-CONFIG_LTPC=m
-CONFIG_COPS=m
-CONFIG_COPS_DAYNA=y
-CONFIG_COPS_TANGENT=y
CONFIG_IPDDP=m
CONFIG_IPDDP_ENCAP=y
CONFIG_IPDDP_DECAP=y
-# CONFIG_X25 is not set
-# CONFIG_LAPB is not set
-# CONFIG_ECONET is not set
+CONFIG_X25=m
+CONFIG_LAPB=m
+CONFIG_ECONET=m
+CONFIG_ECONET_AUNUDP=y
+CONFIG_ECONET_NATIVE=y
CONFIG_WAN_ROUTER=m
CONFIG_NET_SCHED=y
@@ -731,9 +682,15 @@ CONFIG_NET_CLS_U32=m
CONFIG_CLS_U32_MARK=y
CONFIG_NET_CLS_RSVP=m
CONFIG_NET_CLS_RSVP6=m
-# CONFIG_NET_EMATCH is not set
+CONFIG_NET_EMATCH=y
+CONFIG_NET_EMATCH_STACK=32
+CONFIG_NET_EMATCH_CMP=m
+CONFIG_NET_EMATCH_NBYTE=m
+CONFIG_NET_EMATCH_U32=m
+CONFIG_NET_EMATCH_META=m
+CONFIG_NET_EMATCH_TEXT=m
CONFIG_NET_CLS_ACT=y
-CONFIG_NET_ACT_POLICE=y
+CONFIG_NET_ACT_POLICE=m
CONFIG_NET_ACT_GACT=m
CONFIG_GACT_PROB=y
CONFIG_NET_ACT_MIRRED=m
@@ -741,8 +698,8 @@ CONFIG_NET_ACT_IPT=m
CONFIG_NET_ACT_NAT=m
CONFIG_NET_ACT_PEDIT=m
# CONFIG_NET_ACT_SIMP is not set
-CONFIG_NET_CLS_POLICE=y
-# CONFIG_NET_CLS_IND is not set
+# CONFIG_NET_CLS_POLICE is not set
+CONFIG_NET_CLS_IND=y
CONFIG_NET_SCH_FIFO=y
#
@@ -755,7 +712,7 @@ CONFIG_HAMRADIO=y
# Packet Radio protocols
#
CONFIG_AX25=m
-# CONFIG_AX25_DAMA_SLAVE is not set
+CONFIG_AX25_DAMA_SLAVE=y
CONFIG_NETROM=m
CONFIG_ROSE=m
@@ -765,13 +722,9 @@ CONFIG_ROSE=m
CONFIG_MKISS=m
CONFIG_6PACK=m
CONFIG_BPQETHER=m
-CONFIG_SCC=m
-CONFIG_SCC_DELAY=y
-CONFIG_SCC_TRXECHO=y
CONFIG_BAYCOM_SER_FDX=m
CONFIG_BAYCOM_SER_HDX=m
CONFIG_BAYCOM_PAR=m
-CONFIG_BAYCOM_EPP=m
CONFIG_YAM=m
CONFIG_IRDA=m
@@ -832,7 +785,6 @@ CONFIG_USB_IRDA=m
CONFIG_SIGMATEL_FIR=m
CONFIG_NSC_FIR=m
CONFIG_WINBOND_FIR=m
-CONFIG_TOSHIBA_FIR=m
CONFIG_SMC_IRCC_FIR=m
CONFIG_ALI_FIR=m
CONFIG_VLSI_FIR=m
@@ -881,6 +833,7 @@ CONFIG_WIRELESS_EXT=y
CONFIG_MAC80211=m
CONFIG_MAC80211_RCSIMPLE=y
CONFIG_MAC80211_LEDS=y
+# CONFIG_MAC80211_DEBUGFS is not set
# CONFIG_MAC80211_DEBUG is not set
CONFIG_IEEE80211=m
# CONFIG_IEEE80211_DEBUG is not set
@@ -907,9 +860,138 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_FW_LOADER=y
+# CONFIG_DEBUG_DRIVER is not set
+# CONFIG_DEBUG_DEVRES is not set
# CONFIG_SYS_HYPERVISOR is not set
CONFIG_CONNECTOR=m
-# CONFIG_MTD is not set
+CONFIG_MTD=m
+# CONFIG_MTD_DEBUG is not set
+CONFIG_MTD_CONCAT=m
+CONFIG_MTD_PARTITIONS=y
+CONFIG_MTD_REDBOOT_PARTS=m
+CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1
+# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set
+# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set
+
+#
+# User Modules And Translation Layers
+#
+CONFIG_MTD_CHAR=m
+CONFIG_MTD_BLKDEVS=m
+CONFIG_MTD_BLOCK=m
+CONFIG_MTD_BLOCK_RO=m
+CONFIG_FTL=m
+CONFIG_NFTL=m
+CONFIG_NFTL_RW=y
+CONFIG_INFTL=m
+CONFIG_RFD_FTL=m
+CONFIG_SSFDC=m
+CONFIG_MTD_OOPS=m
+
+#
+# RAM/ROM/Flash chip drivers
+#
+CONFIG_MTD_CFI=m
+CONFIG_MTD_JEDECPROBE=m
+CONFIG_MTD_GEN_PROBE=m
+# CONFIG_MTD_CFI_ADV_OPTIONS is not set
+CONFIG_MTD_MAP_BANK_WIDTH_1=y
+CONFIG_MTD_MAP_BANK_WIDTH_2=y
+CONFIG_MTD_MAP_BANK_WIDTH_4=y
+# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
+# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
+# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
+CONFIG_MTD_CFI_I1=y
+CONFIG_MTD_CFI_I2=y
+# CONFIG_MTD_CFI_I4 is not set
+# CONFIG_MTD_CFI_I8 is not set
+CONFIG_MTD_CFI_INTELEXT=m
+CONFIG_MTD_CFI_AMDSTD=m
+CONFIG_MTD_CFI_STAA=m
+CONFIG_MTD_CFI_UTIL=m
+CONFIG_MTD_RAM=m
+CONFIG_MTD_ROM=m
+CONFIG_MTD_ABSENT=m
+
+#
+# Mapping drivers for chip access
+#
+CONFIG_MTD_COMPLEX_MAPPINGS=y
+CONFIG_MTD_PHYSMAP=m
+CONFIG_MTD_PHYSMAP_START=0x8000000
+CONFIG_MTD_PHYSMAP_LEN=0x4000000
+CONFIG_MTD_PHYSMAP_BANKWIDTH=2
+CONFIG_MTD_PNC2000=m
+CONFIG_MTD_SC520CDP=m
+CONFIG_MTD_NETSC520=m
+CONFIG_MTD_TS5500=m
+CONFIG_MTD_SBC_GXX=m
+CONFIG_MTD_AMD76XROM=m
+CONFIG_MTD_ICHXROM=m
+CONFIG_MTD_ESB2ROM=m
+CONFIG_MTD_CK804XROM=m
+CONFIG_MTD_SCB2_FLASH=m
+CONFIG_MTD_NETtel=m
+CONFIG_MTD_DILNETPC=m
+CONFIG_MTD_DILNETPC_BOOTSIZE=0x80000
+CONFIG_MTD_L440GX=m
+CONFIG_MTD_PCI=m
+CONFIG_MTD_INTEL_VR_NOR=m
+CONFIG_MTD_PLATRAM=m
+
+#
+# Self-contained MTD device drivers
+#
+CONFIG_MTD_PMC551=m
+CONFIG_MTD_PMC551_BUGFIX=y
+# CONFIG_MTD_PMC551_DEBUG is not set
+CONFIG_MTD_DATAFLASH=m
+CONFIG_MTD_M25P80=m
+CONFIG_MTD_SLRAM=m
+CONFIG_MTD_PHRAM=m
+CONFIG_MTD_MTDRAM=m
+CONFIG_MTDRAM_TOTAL_SIZE=4096
+CONFIG_MTDRAM_ERASE_SIZE=128
+CONFIG_MTD_BLOCK2MTD=m
+
+#
+# Disk-On-Chip Device Drivers
+#
+# CONFIG_MTD_DOC2000 is not set
+# CONFIG_MTD_DOC2001 is not set
+CONFIG_MTD_DOC2001PLUS=m
+CONFIG_MTD_DOCPROBE=m
+CONFIG_MTD_DOCECC=m
+# CONFIG_MTD_DOCPROBE_ADVANCED is not set
+CONFIG_MTD_DOCPROBE_ADDRESS=0
+CONFIG_MTD_NAND=m
+CONFIG_MTD_NAND_VERIFY_WRITE=y
+# CONFIG_MTD_NAND_ECC_SMC is not set
+# CONFIG_MTD_NAND_MUSEUM_IDS is not set
+CONFIG_MTD_NAND_IDS=m
+# CONFIG_MTD_NAND_DISKONCHIP is not set
+CONFIG_MTD_NAND_CAFE=m
+CONFIG_MTD_NAND_NANDSIM=m
+CONFIG_MTD_NAND_PLATFORM=m
+CONFIG_MTD_ALAUDA=m
+CONFIG_MTD_ONENAND=m
+CONFIG_MTD_ONENAND_VERIFY_WRITE=y
+CONFIG_MTD_ONENAND_OTP=y
+# CONFIG_MTD_ONENAND_2X_PROGRAM is not set
+CONFIG_MTD_ONENAND_SIM=m
+
+#
+# UBI - Unsorted block images
+#
+CONFIG_MTD_UBI=m
+CONFIG_MTD_UBI_WL_THRESHOLD=4096
+CONFIG_MTD_UBI_BEB_RESERVE=1
+# CONFIG_MTD_UBI_GLUEBI is not set
+
+#
+# UBI debugging options
+#
+# CONFIG_MTD_UBI_DEBUG is not set
CONFIG_PARPORT=m
CONFIG_PARPORT_PC=m
CONFIG_PARPORT_SERIAL=m
@@ -926,12 +1008,9 @@ CONFIG_PNP=y
#
# Protocols
#
-CONFIG_ISAPNP=y
-# CONFIG_PNPBIOS is not set
CONFIG_PNPACPI=y
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_FD=y
-CONFIG_BLK_DEV_XD=m
CONFIG_PARIDE=m
#
@@ -948,7 +1027,6 @@ CONFIG_PARIDE_PG=m
#
CONFIG_PARIDE_ATEN=m
CONFIG_PARIDE_BPCK=m
-CONFIG_PARIDE_BPCK6=m
CONFIG_PARIDE_COMM=m
CONFIG_PARIDE_DSTR=m
CONFIG_PARIDE_FIT2=m
@@ -968,10 +1046,10 @@ CONFIG_CISS_SCSI_TAPE=y
CONFIG_BLK_DEV_DAC960=y
CONFIG_BLK_DEV_UMEM=m
# CONFIG_BLK_DEV_COW_COMMON is not set
-CONFIG_BLK_DEV_LOOP=y
+CONFIG_BLK_DEV_LOOP=m
CONFIG_BLK_DEV_CRYPTOLOOP=m
CONFIG_BLK_DEV_NBD=m
-CONFIG_BLK_DEV_SX8=y
+CONFIG_BLK_DEV_SX8=m
# CONFIG_BLK_DEV_UB is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
@@ -979,7 +1057,7 @@ CONFIG_BLK_DEV_RAM_SIZE=16384
CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
CONFIG_CDROM_PKTCDVD=m
CONFIG_CDROM_PKTCDVD_BUFFERS=8
-# CONFIG_CDROM_PKTCDVD_WCACHE is not set
+CONFIG_CDROM_PKTCDVD_WCACHE=y
CONFIG_ATA_OVER_ETH=m
CONFIG_MISC_DEVICES=y
CONFIG_IBM_ASM=m
@@ -988,10 +1066,11 @@ CONFIG_EEPROM_93CX6=m
CONFIG_SGI_IOC4=m
CONFIG_TIFM_CORE=m
CONFIG_TIFM_7XX1=m
-# CONFIG_ASUS_LAPTOP is not set
+CONFIG_ASUS_LAPTOP=m
CONFIG_FUJITSU_LAPTOP=m
CONFIG_MSI_LAPTOP=m
-# CONFIG_SONY_LAPTOP is not set
+CONFIG_SONY_LAPTOP=m
+CONFIG_SONYPI_COMPAT=y
CONFIG_THINKPAD_ACPI=m
# CONFIG_THINKPAD_ACPI_DEBUG is not set
CONFIG_THINKPAD_ACPI_BAY=y
@@ -1004,13 +1083,13 @@ CONFIG_BLK_DEV_IDE=y
# CONFIG_BLK_DEV_IDE_SATA is not set
# CONFIG_BLK_DEV_HD_IDE is not set
CONFIG_BLK_DEV_IDEDISK=y
-# CONFIG_IDEDISK_MULTI_MODE is not set
+CONFIG_IDEDISK_MULTI_MODE=y
CONFIG_BLK_DEV_IDECS=m
-# CONFIG_BLK_DEV_DELKIN is not set
+CONFIG_BLK_DEV_DELKIN=m
CONFIG_BLK_DEV_IDECD=y
CONFIG_BLK_DEV_IDETAPE=m
-CONFIG_BLK_DEV_IDEFLOPPY=y
-CONFIG_BLK_DEV_IDESCSI=m
+CONFIG_BLK_DEV_IDEFLOPPY=m
+# CONFIG_BLK_DEV_IDESCSI is not set
# CONFIG_BLK_DEV_IDEACPI is not set
# CONFIG_IDE_TASK_IOCTL is not set
CONFIG_IDE_PROC_FS=y
@@ -1018,10 +1097,11 @@ CONFIG_IDE_PROC_FS=y
#
# IDE chipset support/bugfixes
#
-CONFIG_IDE_GENERIC=y
-CONFIG_BLK_DEV_PLATFORM=m
-# CONFIG_BLK_DEV_CMD640 is not set
-CONFIG_BLK_DEV_IDEPNP=y
+CONFIG_IDE_GENERIC=m
+# CONFIG_BLK_DEV_PLATFORM is not set
+CONFIG_BLK_DEV_CMD640=y
+CONFIG_BLK_DEV_CMD640_ENHANCED=y
+# CONFIG_BLK_DEV_IDEPNP is not set
#
# PCI IDE chipsets support
@@ -1030,8 +1110,8 @@ CONFIG_BLK_DEV_IDEPCI=y
CONFIG_IDEPCI_SHARE_IRQ=y
CONFIG_IDEPCI_PCIBUS_ORDER=y
# CONFIG_BLK_DEV_OFFBOARD is not set
-CONFIG_BLK_DEV_GENERIC=y
-# CONFIG_BLK_DEV_OPTI621 is not set
+# CONFIG_BLK_DEV_GENERIC is not set
+CONFIG_BLK_DEV_OPTI621=y
CONFIG_BLK_DEV_RZ1000=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
CONFIG_BLK_DEV_AEC62XX=y
@@ -1044,16 +1124,15 @@ CONFIG_BLK_DEV_TRIFLEX=y
CONFIG_BLK_DEV_CY82C693=y
CONFIG_BLK_DEV_CS5520=y
CONFIG_BLK_DEV_CS5530=y
-CONFIG_BLK_DEV_CS5535=y
CONFIG_BLK_DEV_HPT34X=y
# CONFIG_HPT34X_AUTODMA is not set
CONFIG_BLK_DEV_HPT366=y
CONFIG_BLK_DEV_JMICRON=y
CONFIG_BLK_DEV_SC1200=y
-CONFIG_BLK_DEV_PIIX=y
-# CONFIG_BLK_DEV_IT8213 is not set
+# CONFIG_BLK_DEV_PIIX is not set
+CONFIG_BLK_DEV_IT8213=y
CONFIG_BLK_DEV_IT821X=y
-# CONFIG_BLK_DEV_NS87415 is not set
+CONFIG_BLK_DEV_NS87415=m
CONFIG_BLK_DEV_PDC202XX_OLD=y
CONFIG_PDC202XX_BURST=y
CONFIG_BLK_DEV_PDC202XX_NEW=y
@@ -1061,24 +1140,10 @@ CONFIG_BLK_DEV_SVWKS=y
CONFIG_BLK_DEV_SIIMAGE=y
CONFIG_BLK_DEV_SIS5513=y
CONFIG_BLK_DEV_SLC90E66=y
-CONFIG_BLK_DEV_TRM290=m
+CONFIG_BLK_DEV_TRM290=y
CONFIG_BLK_DEV_VIA82CXXX=y
-# CONFIG_BLK_DEV_TC86C001 is not set
+CONFIG_BLK_DEV_TC86C001=y
# CONFIG_IDE_ARM is not set
-
-#
-# Other IDE chipsets support
-#
-
-#
-# Note: most of these also require special kernel boot parameters
-#
-CONFIG_BLK_DEV_4DRIVES=y
-CONFIG_BLK_DEV_ALI14XX=m
-CONFIG_BLK_DEV_DTC2278=m
-CONFIG_BLK_DEV_HT6560B=m
-CONFIG_BLK_DEV_QD65XX=m
-CONFIG_BLK_DEV_UMC8672=m
CONFIG_BLK_DEV_IDEDMA=y
CONFIG_IDE_ARCH_OBSOLETE_INIT=y
# CONFIG_BLK_DEV_HD is not set
@@ -1089,7 +1154,7 @@ CONFIG_IDE_ARCH_OBSOLETE_INIT=y
CONFIG_RAID_ATTRS=m
CONFIG_SCSI=y
CONFIG_SCSI_DMA=y
-CONFIG_SCSI_TGT=y
+CONFIG_SCSI_TGT=m
CONFIG_SCSI_NETLINK=y
CONFIG_SCSI_PROC_FS=y
@@ -1097,7 +1162,7 @@ CONFIG_SCSI_PROC_FS=y
# SCSI support type (disk, tape, CD-ROM)
#
CONFIG_BLK_DEV_SD=y
-CONFIG_CHR_DEV_ST=y
+CONFIG_CHR_DEV_ST=m
CONFIG_CHR_DEV_OSST=m
CONFIG_BLK_DEV_SR=y
CONFIG_BLK_DEV_SR_VENDOR=y
@@ -1107,34 +1172,31 @@ CONFIG_CHR_DEV_SCH=m
#
# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
#
-# CONFIG_SCSI_MULTI_LUN is not set
+CONFIG_SCSI_MULTI_LUN=y
# CONFIG_SCSI_CONSTANTS is not set
# CONFIG_SCSI_LOGGING is not set
-# CONFIG_SCSI_SCAN_ASYNC is not set
+CONFIG_SCSI_SCAN_ASYNC=y
CONFIG_SCSI_WAIT_SCAN=m
#
# SCSI Transports
#
CONFIG_SCSI_SPI_ATTRS=y
-CONFIG_SCSI_FC_ATTRS=y
+CONFIG_SCSI_FC_ATTRS=m
CONFIG_SCSI_FC_TGT_ATTRS=y
-CONFIG_SCSI_ISCSI_ATTRS=y
-CONFIG_SCSI_SAS_ATTRS=y
-CONFIG_SCSI_SAS_LIBSAS=y
-# CONFIG_SCSI_SAS_ATA is not set
-# CONFIG_SCSI_SAS_LIBSAS_DEBUG is not set
+CONFIG_SCSI_ISCSI_ATTRS=m
+CONFIG_SCSI_SAS_ATTRS=m
+CONFIG_SCSI_SAS_LIBSAS=m
+CONFIG_SCSI_SAS_ATA=y
+CONFIG_SCSI_SAS_LIBSAS_DEBUG=y
CONFIG_SCSI_SRP_ATTRS=m
CONFIG_SCSI_SRP_TGT_ATTRS=y
CONFIG_SCSI_LOWLEVEL=y
-CONFIG_ISCSI_TCP=y
-CONFIG_BLK_DEV_3W_XXXX_RAID=y
-CONFIG_SCSI_3W_9XXX=y
-CONFIG_SCSI_7000FASST=y
-CONFIG_SCSI_ACARD=y
-CONFIG_SCSI_AHA152X=y
-CONFIG_SCSI_AHA1542=y
-CONFIG_SCSI_AACRAID=y
+CONFIG_ISCSI_TCP=m
+CONFIG_BLK_DEV_3W_XXXX_RAID=m
+CONFIG_SCSI_3W_9XXX=m
+CONFIG_SCSI_ACARD=m
+CONFIG_SCSI_AACRAID=m
CONFIG_SCSI_AIC7XXX=y
CONFIG_AIC7XXX_CMDS_PER_DEVICE=4
CONFIG_AIC7XXX_RESET_DELAY_MS=15000
@@ -1142,91 +1204,70 @@ CONFIG_AIC7XXX_RESET_DELAY_MS=15000
CONFIG_AIC7XXX_DEBUG_MASK=0
# CONFIG_AIC7XXX_REG_PRETTY_PRINT is not set
CONFIG_SCSI_AIC7XXX_OLD=m
-CONFIG_SCSI_AIC79XX=y
+CONFIG_SCSI_AIC79XX=m
CONFIG_AIC79XX_CMDS_PER_DEVICE=4
CONFIG_AIC79XX_RESET_DELAY_MS=15000
# CONFIG_AIC79XX_DEBUG_ENABLE is not set
CONFIG_AIC79XX_DEBUG_MASK=0
# CONFIG_AIC79XX_REG_PRETTY_PRINT is not set
-CONFIG_SCSI_AIC94XX=y
+CONFIG_SCSI_AIC94XX=m
# CONFIG_AIC94XX_DEBUG is not set
-CONFIG_SCSI_DPT_I2O=y
CONFIG_SCSI_ADVANSYS=m
-CONFIG_SCSI_IN2000=y
CONFIG_SCSI_ARCMSR=m
-# CONFIG_SCSI_ARCMSR_AER is not set
+CONFIG_SCSI_ARCMSR_AER=y
CONFIG_MEGARAID_NEWGEN=y
-CONFIG_MEGARAID_MM=y
-CONFIG_MEGARAID_MAILBOX=y
-CONFIG_MEGARAID_LEGACY=y
-CONFIG_MEGARAID_SAS=y
-CONFIG_SCSI_HPTIOP=y
+CONFIG_MEGARAID_MM=m
+CONFIG_MEGARAID_MAILBOX=m
+CONFIG_MEGARAID_LEGACY=m
+CONFIG_MEGARAID_SAS=m
+CONFIG_SCSI_HPTIOP=m
CONFIG_SCSI_BUSLOGIC=y
# CONFIG_SCSI_OMIT_FLASHPOINT is not set
-CONFIG_SCSI_DMX3191D=y
-CONFIG_SCSI_DTC3280=y
-CONFIG_SCSI_EATA=y
+CONFIG_SCSI_DMX3191D=m
+CONFIG_SCSI_EATA=m
# CONFIG_SCSI_EATA_TAGGED_QUEUE is not set
# CONFIG_SCSI_EATA_LINKED_COMMANDS is not set
CONFIG_SCSI_EATA_MAX_TAGS=16
-CONFIG_SCSI_FUTURE_DOMAIN=y
-CONFIG_SCSI_GDTH=y
-CONFIG_SCSI_GENERIC_NCR5380=m
-CONFIG_SCSI_GENERIC_NCR5380_MMIO=y
-CONFIG_SCSI_GENERIC_NCR53C400=y
+CONFIG_SCSI_FUTURE_DOMAIN=m
+CONFIG_SCSI_GDTH=m
CONFIG_SCSI_IPS=y
-CONFIG_SCSI_INITIO=y
-CONFIG_SCSI_INIA100=y
+CONFIG_SCSI_INITIO=m
+CONFIG_SCSI_INIA100=m
CONFIG_SCSI_PPA=m
CONFIG_SCSI_IMM=m
# CONFIG_SCSI_IZIP_EPP16 is not set
# CONFIG_SCSI_IZIP_SLOW_CTR is not set
-CONFIG_SCSI_NCR53C406A=m
-CONFIG_SCSI_STEX=m
-CONFIG_SCSI_SYM53C8XX_2=y
+CONFIG_SCSI_STEX=y
+CONFIG_SCSI_SYM53C8XX_2=m
CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
CONFIG_SCSI_SYM53C8XX_MMIO=y
-CONFIG_SCSI_IPR=y
+CONFIG_SCSI_IPR=m
# CONFIG_SCSI_IPR_TRACE is not set
# CONFIG_SCSI_IPR_DUMP is not set
-CONFIG_SCSI_PAS16=m
-CONFIG_SCSI_PSI240I=y
-CONFIG_SCSI_QLOGIC_FAS=y
-CONFIG_SCSI_QLOGIC_1280=y
-CONFIG_SCSI_QLA_FC=y
-CONFIG_SCSI_QLA_ISCSI=y
-CONFIG_SCSI_LPFC=y
-CONFIG_SCSI_SEAGATE=y
-CONFIG_SCSI_SYM53C416=y
-CONFIG_SCSI_DC395x=y
-CONFIG_SCSI_DC390T=y
-CONFIG_SCSI_T128=y
-CONFIG_SCSI_U14_34F=m
-# CONFIG_SCSI_U14_34F_TAGGED_QUEUE is not set
-# CONFIG_SCSI_U14_34F_LINKED_COMMANDS is not set
-CONFIG_SCSI_U14_34F_MAX_TAGS=8
-CONFIG_SCSI_ULTRASTOR=m
-CONFIG_SCSI_NSP32=y
+CONFIG_SCSI_QLOGIC_1280=m
+CONFIG_SCSI_QLA_FC=m
+CONFIG_SCSI_QLA_ISCSI=m
+CONFIG_SCSI_LPFC=m
+CONFIG_SCSI_DC395x=m
+CONFIG_SCSI_DC390T=m
CONFIG_SCSI_DEBUG=m
-CONFIG_SCSI_SRP=y
+CONFIG_SCSI_SRP=m
CONFIG_SCSI_LOWLEVEL_PCMCIA=y
-CONFIG_PCMCIA_AHA152X=m
CONFIG_PCMCIA_FDOMAIN=m
-CONFIG_PCMCIA_NINJA_SCSI=m
CONFIG_PCMCIA_QLOGIC=m
CONFIG_PCMCIA_SYM53C500=m
CONFIG_ATA=y
# CONFIG_ATA_NONSTANDARD is not set
CONFIG_ATA_ACPI=y
CONFIG_SATA_AHCI=y
-CONFIG_SATA_SVW=y
+CONFIG_SATA_SVW=m
CONFIG_ATA_PIIX=y
-CONFIG_SATA_MV=y
+CONFIG_SATA_MV=m
CONFIG_SATA_NV=y
-CONFIG_PDC_ADMA=y
-CONFIG_SATA_QSTOR=y
+CONFIG_PDC_ADMA=m
+CONFIG_SATA_QSTOR=m
CONFIG_SATA_PROMISE=y
CONFIG_SATA_SX4=y
CONFIG_SATA_SIL=y
@@ -1235,7 +1276,7 @@ CONFIG_SATA_SIS=y
CONFIG_SATA_ULI=y
CONFIG_SATA_VIA=y
CONFIG_SATA_VITESSE=y
-# CONFIG_SATA_INIC162X is not set
+CONFIG_SATA_INIC162X=m
CONFIG_PATA_ACPI=m
CONFIG_PATA_ALI=m
CONFIG_PATA_AMD=m
@@ -1245,8 +1286,6 @@ CONFIG_PATA_CMD640_PCI=m
CONFIG_PATA_CMD64X=m
CONFIG_PATA_CS5520=m
CONFIG_PATA_CS5530=m
-CONFIG_PATA_CS5535=m
-CONFIG_PATA_CS5536=m
CONFIG_PATA_CYPRESS=m
CONFIG_PATA_EFAR=m
CONFIG_ATA_GENERIC=m
@@ -1255,11 +1294,9 @@ CONFIG_PATA_HPT37X=m
CONFIG_PATA_HPT3X2N=m
CONFIG_PATA_HPT3X3=m
CONFIG_PATA_HPT3X3_DMA=y
-CONFIG_PATA_ISAPNP=m
CONFIG_PATA_IT821X=m
-# CONFIG_PATA_IT8213 is not set
-CONFIG_PATA_JMICRON=m
-CONFIG_PATA_LEGACY=m
+CONFIG_PATA_IT8213=m
+CONFIG_PATA_JMICRON=y
CONFIG_PATA_TRIFLEX=m
CONFIG_PATA_MARVELL=m
CONFIG_PATA_MPIIX=m
@@ -1271,7 +1308,6 @@ CONFIG_PATA_OPTI=m
CONFIG_PATA_OPTIDMA=m
CONFIG_PATA_PCMCIA=m
CONFIG_PATA_PDC_OLD=m
-CONFIG_PATA_QDI=m
CONFIG_PATA_RADISYS=m
CONFIG_PATA_RZ1000=m
CONFIG_PATA_SC1200=m
@@ -1281,33 +1317,29 @@ CONFIG_PATA_SIL680=m
CONFIG_PATA_SIS=y
CONFIG_PATA_VIA=m
CONFIG_PATA_WINBOND=m
-CONFIG_PATA_WINBOND_VLB=m
CONFIG_MD=y
CONFIG_BLK_DEV_MD=y
-CONFIG_MD_LINEAR=y
+CONFIG_MD_LINEAR=m
CONFIG_MD_RAID0=y
CONFIG_MD_RAID1=y
-CONFIG_MD_RAID10=y
-CONFIG_MD_RAID456=y
+CONFIG_MD_RAID10=m
+CONFIG_MD_RAID456=m
CONFIG_MD_RAID5_RESHAPE=y
-CONFIG_MD_MULTIPATH=y
+CONFIG_MD_MULTIPATH=m
CONFIG_MD_FAULTY=m
-CONFIG_BLK_DEV_DM=y
+CONFIG_BLK_DEV_DM=m
# CONFIG_DM_DEBUG is not set
-CONFIG_DM_CRYPT=y
-CONFIG_DM_SNAPSHOT=y
-CONFIG_DM_MIRROR=y
-CONFIG_DM_ZERO=m
-CONFIG_DM_MULTIPATH=m
-CONFIG_DM_MULTIPATH_EMC=m
-CONFIG_DM_MULTIPATH_RDAC=m
-CONFIG_DM_MULTIPATH_HP=m
-CONFIG_DM_DELAY=m
-CONFIG_DM_UEVENT=y
+CONFIG_DM_CRYPT=m
+# CONFIG_DM_SNAPSHOT is not set
+# CONFIG_DM_MIRROR is not set
+# CONFIG_DM_ZERO is not set
+# CONFIG_DM_MULTIPATH is not set
+# CONFIG_DM_DELAY is not set
+# CONFIG_DM_UEVENT is not set
CONFIG_FUSION=y
-CONFIG_FUSION_SPI=y
-CONFIG_FUSION_FC=y
-CONFIG_FUSION_SAS=y
+CONFIG_FUSION_SPI=m
+CONFIG_FUSION_FC=m
+CONFIG_FUSION_SAS=m
CONFIG_FUSION_MAX_SGE=128
CONFIG_FUSION_CTL=m
CONFIG_FUSION_LAN=m
@@ -1329,31 +1361,32 @@ CONFIG_IEEE1394=y
#
# Controllers
#
-CONFIG_IEEE1394_PCILYNX=y
-CONFIG_IEEE1394_OHCI1394=y
+CONFIG_IEEE1394_PCILYNX=m
+CONFIG_IEEE1394_OHCI1394=m
#
# Protocols
#
CONFIG_IEEE1394_VIDEO1394=m
-CONFIG_IEEE1394_SBP2=y
+CONFIG_IEEE1394_SBP2=m
# CONFIG_IEEE1394_SBP2_PHYS_DMA is not set
CONFIG_IEEE1394_ETH1394_ROM_ENTRY=y
CONFIG_IEEE1394_ETH1394=m
CONFIG_IEEE1394_DV1394=m
CONFIG_IEEE1394_RAWIO=m
-CONFIG_I2O=y
+CONFIG_I2O=m
CONFIG_I2O_LCT_NOTIFY_ON_CHANGES=y
CONFIG_I2O_EXT_ADAPTEC=y
-CONFIG_I2O_CONFIG=y
-# CONFIG_I2O_CONFIG_OLD_IOCTL is not set
-CONFIG_I2O_BUS=y
-CONFIG_I2O_BLOCK=y
-CONFIG_I2O_SCSI=y
-CONFIG_I2O_PROC=y
+CONFIG_I2O_EXT_ADAPTEC_DMA64=y
+CONFIG_I2O_CONFIG=m
+CONFIG_I2O_CONFIG_OLD_IOCTL=y
+CONFIG_I2O_BUS=m
+CONFIG_I2O_BLOCK=m
+CONFIG_I2O_SCSI=m
+CONFIG_I2O_PROC=m
# CONFIG_MACINTOSH_DRIVERS is not set
CONFIG_NETDEVICES=y
-# CONFIG_NETDEVICES_MULTIQUEUE is not set
+CONFIG_NETDEVICES_MULTIQUEUE=y
CONFIG_IFB=m
CONFIG_DUMMY=m
CONFIG_BONDING=m
@@ -1371,7 +1404,6 @@ CONFIG_ARCNET_COM90xx=m
CONFIG_ARCNET_COM90xxIO=m
CONFIG_ARCNET_RIM_I=m
CONFIG_ARCNET_COM20020=m
-CONFIG_ARCNET_COM20020_ISA=m
CONFIG_ARCNET_COM20020_PCI=m
CONFIG_PHYLIB=m
@@ -1399,22 +1431,8 @@ CONFIG_HAPPYMEAL=m
CONFIG_SUNGEM=m
CONFIG_CASSINI=m
CONFIG_NET_VENDOR_3COM=y
-CONFIG_EL1=m
-CONFIG_EL2=m
-CONFIG_ELPLUS=m
-CONFIG_EL16=m
-CONFIG_EL3=m
-CONFIG_3C515=m
CONFIG_VORTEX=m
CONFIG_TYPHOON=m
-CONFIG_LANCE=m
-CONFIG_NET_VENDOR_SMC=y
-CONFIG_WD80x3=m
-CONFIG_ULTRA=m
-CONFIG_SMC9194=m
-CONFIG_NET_VENDOR_RACAL=y
-CONFIG_NI52=m
-CONFIG_NI65=m
CONFIG_NET_TULIP=y
CONFIG_DE2104X=m
CONFIG_TULIP=m
@@ -1426,41 +1444,24 @@ CONFIG_WINBOND_840=m
CONFIG_DM9102=m
CONFIG_ULI526X=m
CONFIG_PCMCIA_XIRCOM=m
-CONFIG_AT1700=m
-CONFIG_DEPCA=m
CONFIG_HP100=m
-CONFIG_NET_ISA=y
-CONFIG_E2100=m
-CONFIG_EWRK3=m
-CONFIG_EEXPRESS=m
-CONFIG_EEXPRESS_PRO=m
-CONFIG_HPLAN_PLUS=m
-CONFIG_HPLAN=m
-CONFIG_LP486E=m
-CONFIG_ETH16I=m
-CONFIG_NE2000=m
-CONFIG_ZNET=m
-CONFIG_SEEQ8005=m
# CONFIG_IBM_NEW_EMAC_ZMII is not set
# CONFIG_IBM_NEW_EMAC_RGMII is not set
# CONFIG_IBM_NEW_EMAC_TAH is not set
# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
CONFIG_NET_PCI=y
CONFIG_PCNET32=m
-CONFIG_PCNET32_NAPI=y
+# CONFIG_PCNET32_NAPI is not set
CONFIG_AMD8111_ETH=m
# CONFIG_AMD8111E_NAPI is not set
CONFIG_ADAPTEC_STARFIRE=m
CONFIG_ADAPTEC_STARFIRE_NAPI=y
-CONFIG_AC3200=m
-CONFIG_APRICOT=m
CONFIG_B44=m
CONFIG_B44_PCI_AUTOSELECT=y
CONFIG_B44_PCICORE_AUTOSELECT=y
CONFIG_B44_PCI=y
CONFIG_FORCEDETH=m
-CONFIG_FORCEDETH_NAPI=y
-CONFIG_CS89x0=m
+# CONFIG_FORCEDETH_NAPI is not set
CONFIG_EEPRO100=m
CONFIG_E100=m
CONFIG_FEALNX=m
@@ -1476,11 +1477,10 @@ CONFIG_SIS900=m
CONFIG_EPIC100=m
CONFIG_SUNDANCE=m
# CONFIG_SUNDANCE_MMIO is not set
-CONFIG_TLAN=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
-CONFIG_VIA_RHINE_NAPI=y
-# CONFIG_SC92031 is not set
+# CONFIG_VIA_RHINE_NAPI is not set
+CONFIG_SC92031=m
CONFIG_NET_POCKET=y
CONFIG_ATP=m
CONFIG_DE600=m
@@ -1499,26 +1499,28 @@ CONFIG_HAMACHI=m
CONFIG_YELLOWFIN=m
CONFIG_R8169=m
# CONFIG_R8169_NAPI is not set
-CONFIG_R8169_VLAN=y
+# CONFIG_R8169_VLAN is not set
CONFIG_SIS190=m
CONFIG_SKGE=m
+# CONFIG_SKGE_DEBUG is not set
CONFIG_SKY2=m
+# CONFIG_SKY2_DEBUG is not set
CONFIG_SK98LIN=m
CONFIG_VIA_VELOCITY=m
CONFIG_TIGON3=m
CONFIG_BNX2=m
CONFIG_QLA3XXX=m
-# CONFIG_ATL1 is not set
+CONFIG_ATL1=m
CONFIG_NETDEV_10000=y
CONFIG_CHELSIO_T1=m
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T1_NAPI=y
-# CONFIG_CHELSIO_T3 is not set
+CONFIG_CHELSIO_T3=m
CONFIG_IXGBE=m
CONFIG_IXGB=m
CONFIG_IXGB_NAPI=y
CONFIG_S2IO=m
-# CONFIG_S2IO_NAPI is not set
+CONFIG_S2IO_NAPI=y
CONFIG_MYRI10GE=m
CONFIG_NETXEN_NIC=m
CONFIG_NIU=m
@@ -1526,21 +1528,19 @@ CONFIG_MLX4_CORE=m
CONFIG_MLX4_DEBUG=y
CONFIG_TEHUTI=m
CONFIG_TR=y
-CONFIG_IBMTR=m
CONFIG_IBMOL=m
-CONFIG_IBMLS=m
CONFIG_3C359=m
CONFIG_TMS380TR=m
CONFIG_TMSPCI=m
-CONFIG_SKISA=m
-CONFIG_PROTEON=m
CONFIG_ABYSS=m
-CONFIG_SMCTR=m
#
# Wireless LAN
#
-# CONFIG_WLAN_PRE80211 is not set
+CONFIG_WLAN_PRE80211=y
+CONFIG_STRIP=m
+CONFIG_PCMCIA_WAVELAN=m
+CONFIG_PCMCIA_NETWAVE=m
CONFIG_WLAN_80211=y
CONFIG_PCMCIA_RAYCS=m
CONFIG_IPW2100=m
@@ -1548,8 +1548,8 @@ CONFIG_IPW2100_MONITOR=y
# CONFIG_IPW2100_DEBUG is not set
CONFIG_IPW2200=m
CONFIG_IPW2200_MONITOR=y
-CONFIG_IPW2200_RADIOTAP=y
-CONFIG_IPW2200_PROMISCUOUS=y
+# CONFIG_IPW2200_RADIOTAP is not set
+# CONFIG_IPW2200_PROMISCUOUS is not set
CONFIG_IPW2200_QOS=y
# CONFIG_IPW2200_DEBUG is not set
CONFIG_LIBERTAS=m
@@ -1578,15 +1578,14 @@ CONFIG_P54_COMMON=m
CONFIG_P54_USB=m
CONFIG_P54_PCI=m
CONFIG_IWLWIFI=y
-# CONFIG_IWLWIFI_DEBUG is not set
+CONFIG_IWLWIFI_DEBUG=y
CONFIG_IWLWIFI_SENSITIVITY=y
CONFIG_IWLWIFI_SPECTRUM_MEASUREMENT=y
CONFIG_IWLWIFI_QOS=y
CONFIG_IWL4965=m
CONFIG_IWL3945=m
CONFIG_HOSTAP=m
-CONFIG_HOSTAP_FIRMWARE=y
-CONFIG_HOSTAP_FIRMWARE_NVRAM=y
+# CONFIG_HOSTAP_FIRMWARE is not set
CONFIG_HOSTAP_PLX=m
CONFIG_HOSTAP_PCI=m
CONFIG_HOSTAP_CS=m
@@ -1612,7 +1611,7 @@ CONFIG_B43_DMA_AND_PIO_MODE=y
CONFIG_B43LEGACY=m
CONFIG_B43LEGACY_PCI_AUTOSELECT=y
CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y
-# CONFIG_B43LEGACY_DEBUG is not set
+CONFIG_B43LEGACY_DEBUG=y
CONFIG_B43LEGACY_DMA=y
CONFIG_B43LEGACY_PIO=y
CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y
@@ -1646,7 +1645,7 @@ CONFIG_USB_RTL8150=m
CONFIG_USB_USBNET=m
CONFIG_USB_NET_AX8817X=m
CONFIG_USB_NET_CDCETHER=m
-# CONFIG_USB_NET_DM9601 is not set
+CONFIG_USB_NET_DM9601=m
CONFIG_USB_NET_GL620A=m
CONFIG_USB_NET_NET1080=m
CONFIG_USB_NET_PLUSB=m
@@ -1658,7 +1657,7 @@ CONFIG_USB_AN2720=y
CONFIG_USB_BELKIN=y
CONFIG_USB_ARMLINUX=y
# CONFIG_USB_EPSON2888 is not set
-# CONFIG_USB_KC2190 is not set
+CONFIG_USB_KC2190=y
CONFIG_USB_NET_ZAURUS=m
CONFIG_NET_PCMCIA=y
CONFIG_PCMCIA_3C589=m
@@ -1670,26 +1669,19 @@ CONFIG_PCMCIA_SMC91C92=m
CONFIG_PCMCIA_XIRC2PS=m
CONFIG_PCMCIA_AXNET=m
CONFIG_ARCNET_COM20020_CS=m
-CONFIG_PCMCIA_IBMTR=m
CONFIG_WAN=y
-CONFIG_HOSTESS_SV11=m
-CONFIG_COSA=m
CONFIG_LANMEDIA=m
-CONFIG_SEALEVEL_4021=m
CONFIG_HDLC=m
CONFIG_HDLC_RAW=m
CONFIG_HDLC_RAW_ETH=m
CONFIG_HDLC_CISCO=m
CONFIG_HDLC_FR=m
CONFIG_HDLC_PPP=m
-
-#
-# X.25/LAPB support is disabled
-#
+CONFIG_HDLC_X25=m
CONFIG_PCI200SYN=m
CONFIG_WANXL=m
CONFIG_PC300=m
-# CONFIG_PC300_MLPPP is not set
+CONFIG_PC300_MLPPP=y
#
# Cyclades-PC300 MLPPP support is disabled.
@@ -1698,23 +1690,22 @@ CONFIG_PC300=m
#
# Refer to the file README.mlppp, provided by PC300 package.
#
-# CONFIG_PC300TOO is not set
-CONFIG_N2=m
-CONFIG_C101=m
+CONFIG_PC300TOO=m
CONFIG_FARSYNC=m
CONFIG_DSCC4=m
# CONFIG_DSCC4_PCISYNC is not set
# CONFIG_DSCC4_PCI_RST is not set
CONFIG_DLCI=m
CONFIG_DLCI_MAX=8
-CONFIG_SDLA=m
CONFIG_WAN_ROUTER_DRIVERS=m
CONFIG_CYCLADES_SYNC=m
CONFIG_CYCLOMX_X25=y
+CONFIG_LAPBETHER=m
+CONFIG_X25_ASY=m
CONFIG_SBNI=m
# CONFIG_SBNI_MULTILINE is not set
CONFIG_ATM_DRIVERS=y
-CONFIG_ATM_DUMMY=m
+# CONFIG_ATM_DUMMY is not set
CONFIG_ATM_TCP=m
CONFIG_ATM_LANAI=m
CONFIG_ATM_ENI=m
@@ -1723,9 +1714,6 @@ CONFIG_ATM_ENI=m
CONFIG_ATM_FIRESTREAM=m
CONFIG_ATM_ZATM=m
# CONFIG_ATM_ZATM_DEBUG is not set
-CONFIG_ATM_NICSTAR=m
-# CONFIG_ATM_NICSTAR_USE_SUNI is not set
-# CONFIG_ATM_NICSTAR_USE_IDT77105 is not set
CONFIG_ATM_IDT77252=m
# CONFIG_ATM_IDT77252_DEBUG is not set
# CONFIG_ATM_IDT77252_RCV_ALL is not set
@@ -1734,8 +1722,6 @@ CONFIG_ATM_AMBASSADOR=m
# CONFIG_ATM_AMBASSADOR_DEBUG is not set
CONFIG_ATM_HORIZON=m
# CONFIG_ATM_HORIZON_DEBUG is not set
-CONFIG_ATM_IA=m
-# CONFIG_ATM_IA_DEBUG is not set
CONFIG_ATM_FORE200E_MAYBE=m
# CONFIG_ATM_FORE200E_PCA is not set
CONFIG_ATM_HE=m
@@ -1769,124 +1755,24 @@ CONFIG_SHAPER=m
CONFIG_NETCONSOLE=m
CONFIG_NETCONSOLE_DYNAMIC=y
CONFIG_NETPOLL=y
-# CONFIG_NETPOLL_TRAP is not set
+CONFIG_NETPOLL_TRAP=y
CONFIG_NET_POLL_CONTROLLER=y
CONFIG_ISDN=m
-CONFIG_ISDN_I4L=m
-CONFIG_ISDN_PPP=y
-CONFIG_ISDN_PPP_VJ=y
-CONFIG_ISDN_MPP=y
-CONFIG_IPPP_FILTER=y
-CONFIG_ISDN_PPP_BSDCOMP=m
-CONFIG_ISDN_AUDIO=y
-CONFIG_ISDN_TTY_FAX=y
-
-#
-# ISDN feature submodules
-#
-CONFIG_ISDN_DIVERSION=m
-
-#
-# ISDN4Linux hardware drivers
-#
-
-#
-# Passive cards
-#
-CONFIG_ISDN_DRV_HISAX=m
-
-#
-# D-channel protocol features
-#
-CONFIG_HISAX_EURO=y
-CONFIG_DE_AOC=y
-CONFIG_HISAX_NO_SENDCOMPLETE=y
-CONFIG_HISAX_NO_LLC=y
-CONFIG_HISAX_NO_KEYPAD=y
-CONFIG_HISAX_1TR6=y
-CONFIG_HISAX_NI1=y
-CONFIG_HISAX_MAX_CARDS=8
-
-#
-# HiSax supported cards
-#
-CONFIG_HISAX_16_0=y
-CONFIG_HISAX_16_3=y
-CONFIG_HISAX_TELESPCI=y
-CONFIG_HISAX_S0BOX=y
-CONFIG_HISAX_AVM_A1=y
-CONFIG_HISAX_FRITZPCI=y
-CONFIG_HISAX_AVM_A1_PCMCIA=y
-CONFIG_HISAX_ELSA=y
-CONFIG_HISAX_IX1MICROR2=y
-CONFIG_HISAX_DIEHLDIVA=y
-CONFIG_HISAX_ASUSCOM=y
-CONFIG_HISAX_TELEINT=y
-CONFIG_HISAX_HFCS=y
-CONFIG_HISAX_SEDLBAUER=y
-CONFIG_HISAX_SPORTSTER=y
-CONFIG_HISAX_MIC=y
-CONFIG_HISAX_NETJET=y
-CONFIG_HISAX_NETJET_U=y
-CONFIG_HISAX_NICCY=y
-CONFIG_HISAX_ISURF=y
-CONFIG_HISAX_HSTSAPHIR=y
-CONFIG_HISAX_BKM_A4T=y
-CONFIG_HISAX_SCT_QUADRO=y
-CONFIG_HISAX_GAZEL=y
-CONFIG_HISAX_HFC_PCI=y
-CONFIG_HISAX_W6692=y
-CONFIG_HISAX_HFC_SX=y
-CONFIG_HISAX_ENTERNOW_PCI=y
-# CONFIG_HISAX_DEBUG is not set
-
-#
-# HiSax PCMCIA card service modules
-#
-CONFIG_HISAX_SEDLBAUER_CS=m
-CONFIG_HISAX_ELSA_CS=m
-CONFIG_HISAX_AVM_A1_CS=m
-CONFIG_HISAX_TELES_CS=m
-
-#
-# HiSax sub driver modules
-#
-CONFIG_HISAX_ST5481=m
-CONFIG_HISAX_HFCUSB=m
-CONFIG_HISAX_HFC4S8S=m
-CONFIG_HISAX_FRITZ_PCIPNP=m
-CONFIG_HISAX_HDLC=y
-
-#
-# Active cards
-#
-CONFIG_ISDN_DRV_ICN=m
-CONFIG_ISDN_DRV_PCBIT=m
-CONFIG_ISDN_DRV_SC=m
-CONFIG_ISDN_DRV_ACT2000=m
-CONFIG_ISDN_DRV_GIGASET=m
-CONFIG_GIGASET_BASE=m
-CONFIG_GIGASET_M105=m
-# CONFIG_GIGASET_M101 is not set
-# CONFIG_GIGASET_DEBUG is not set
-# CONFIG_GIGASET_UNDOCREQ is not set
+# CONFIG_ISDN_I4L is not set
CONFIG_ISDN_CAPI=m
CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y
-CONFIG_CAPI_TRACE=y
+# CONFIG_CAPI_TRACE is not set
CONFIG_ISDN_CAPI_MIDDLEWARE=y
CONFIG_ISDN_CAPI_CAPI20=m
CONFIG_ISDN_CAPI_CAPIFS_BOOL=y
CONFIG_ISDN_CAPI_CAPIFS=m
-CONFIG_ISDN_CAPI_CAPIDRV=m
#
# CAPI hardware drivers
#
CONFIG_CAPI_AVM=y
-CONFIG_ISDN_DRV_AVMB1_B1ISA=m
CONFIG_ISDN_DRV_AVMB1_B1PCI=m
CONFIG_ISDN_DRV_AVMB1_B1PCIV4=y
-CONFIG_ISDN_DRV_AVMB1_T1ISA=m
CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m
CONFIG_ISDN_DRV_AVMB1_AVM_CS=m
CONFIG_ISDN_DRV_AVMB1_T1PCI=m
@@ -1925,25 +1811,21 @@ CONFIG_INPUT_EVDEV=m
#
CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ATKBD=y
-# CONFIG_KEYBOARD_SUNKBD is not set
-# CONFIG_KEYBOARD_LKKBD is not set
-# CONFIG_KEYBOARD_XTKBD is not set
-# CONFIG_KEYBOARD_NEWTON is not set
+CONFIG_KEYBOARD_SUNKBD=m
+CONFIG_KEYBOARD_LKKBD=m
+CONFIG_KEYBOARD_XTKBD=m
+CONFIG_KEYBOARD_NEWTON=m
CONFIG_KEYBOARD_STOWAWAY=m
CONFIG_INPUT_MOUSE=y
-CONFIG_MOUSE_PS2=m
+CONFIG_MOUSE_PS2=y
CONFIG_MOUSE_PS2_ALPS=y
CONFIG_MOUSE_PS2_LOGIPS2PP=y
CONFIG_MOUSE_PS2_SYNAPTICS=y
CONFIG_MOUSE_PS2_LIFEBOOK=y
CONFIG_MOUSE_PS2_TRACKPOINT=y
-CONFIG_MOUSE_PS2_TOUCHKIT=y
+# CONFIG_MOUSE_PS2_TOUCHKIT is not set
CONFIG_MOUSE_SERIAL=m
CONFIG_MOUSE_APPLETOUCH=m
-CONFIG_MOUSE_INPORT=m
-CONFIG_MOUSE_ATIXL=y
-CONFIG_MOUSE_LOGIBM=m
-CONFIG_MOUSE_PC110PAD=m
CONFIG_MOUSE_VSXXXAA=m
CONFIG_INPUT_JOYSTICK=y
CONFIG_JOYSTICK_ANALOG=m
@@ -1969,7 +1851,7 @@ CONFIG_JOYSTICK_TWIDJOY=m
CONFIG_JOYSTICK_DB9=m
CONFIG_JOYSTICK_GAMECON=m
CONFIG_JOYSTICK_TURBOGRAFX=m
-CONFIG_JOYSTICK_JOYDUMP=m
+# CONFIG_JOYSTICK_JOYDUMP is not set
CONFIG_JOYSTICK_XPAD=m
CONFIG_JOYSTICK_XPAD_FF=y
CONFIG_JOYSTICK_XPAD_LEDS=y
@@ -1980,6 +1862,7 @@ CONFIG_TABLET_USB_GTCO=m
CONFIG_TABLET_USB_KBTAB=m
CONFIG_TABLET_USB_WACOM=m
CONFIG_INPUT_TOUCHSCREEN=y
+CONFIG_TOUCHSCREEN_ADS7846=m
CONFIG_TOUCHSCREEN_FUJITSU=m
CONFIG_TOUCHSCREEN_GUNZE=m
CONFIG_TOUCHSCREEN_ELO=m
@@ -2003,8 +1886,7 @@ CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH=y
CONFIG_TOUCHSCREEN_USB_GOTOP=y
CONFIG_INPUT_MISC=y
CONFIG_INPUT_PCSPKR=m
-CONFIG_INPUT_WISTRON_BTNS=m
-# CONFIG_INPUT_ATLAS_BTNS is not set
+CONFIG_INPUT_ATLAS_BTNS=m
CONFIG_INPUT_ATI_REMOTE=m
CONFIG_INPUT_ATI_REMOTE2=m
CONFIG_INPUT_KEYSPAN_REMOTE=m
@@ -2022,7 +1904,7 @@ CONFIG_SERIO_CT82C710=m
CONFIG_SERIO_PARKBD=m
CONFIG_SERIO_PCIPS2=m
CONFIG_SERIO_LIBPS2=y
-CONFIG_SERIO_RAW=m
+# CONFIG_SERIO_RAW is not set
CONFIG_GAMEPORT=m
CONFIG_GAMEPORT_NS558=m
CONFIG_GAMEPORT_L4=m
@@ -2035,14 +1917,13 @@ CONFIG_GAMEPORT_FM801=m
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
-CONFIG_VT_HW_CONSOLE_BINDING=y
+# CONFIG_VT_HW_CONSOLE_BINDING is not set
CONFIG_SERIAL_NONSTANDARD=y
CONFIG_COMPUTONE=m
CONFIG_ROCKETPORT=m
CONFIG_CYCLADES=m
# CONFIG_CYZ_INTR is not set
CONFIG_DIGIEPCA=m
-CONFIG_ESPSERIAL=m
CONFIG_MOXA_INTELLIO=m
CONFIG_MOXA_SMARTIO=m
CONFIG_MOXA_SMARTIO_NEW=m
@@ -2052,7 +1933,7 @@ CONFIG_SYNCLINKMP=m
CONFIG_SYNCLINK_GT=m
CONFIG_N_HDLC=m
CONFIG_SPECIALIX=m
-# CONFIG_SPECIALIX_RTSCTS is not set
+CONFIG_SPECIALIX_RTSCTS=y
CONFIG_SX=m
CONFIG_RIO=m
# CONFIG_RIO_OLDPCI is not set
@@ -2071,11 +1952,6 @@ CONFIG_SERIAL_8250_NR_UARTS=4
CONFIG_SERIAL_8250_RUNTIME_UARTS=4
CONFIG_SERIAL_8250_EXTENDED=y
CONFIG_SERIAL_8250_MANY_PORTS=y
-CONFIG_SERIAL_8250_FOURPORT=m
-CONFIG_SERIAL_8250_ACCENT=m
-CONFIG_SERIAL_8250_BOCA=m
-CONFIG_SERIAL_8250_EXAR_ST16C554=m
-CONFIG_SERIAL_8250_HUB6=m
CONFIG_SERIAL_8250_SHARE_IRQ=y
CONFIG_SERIAL_8250_DETECT_IRQ=y
CONFIG_SERIAL_8250_RSA=y
@@ -2101,14 +1977,12 @@ CONFIG_IPMI_POWEROFF=m
CONFIG_HW_RANDOM=y
CONFIG_HW_RANDOM_INTEL=m
CONFIG_HW_RANDOM_AMD=m
-CONFIG_HW_RANDOM_GEODE=m
-CONFIG_HW_RANDOM_VIA=m
CONFIG_NVRAM=m
-CONFIG_RTC=y
-CONFIG_DTLK=m
+CONFIG_RTC=m
+CONFIG_GEN_RTC=y
+CONFIG_GEN_RTC_X=y
CONFIG_R3964=m
CONFIG_APPLICOM=m
-CONFIG_SONYPI=m
#
# PCMCIA character devices
@@ -2117,28 +1991,28 @@ CONFIG_SYNCLINK_CS=m
CONFIG_CARDMAN_4000=m
CONFIG_CARDMAN_4040=m
CONFIG_MWAVE=m
-CONFIG_SCx200_GPIO=m
CONFIG_PC8736x_GPIO=m
CONFIG_NSC_GPIO=m
-CONFIG_CS5535_GPIO=m
# CONFIG_RAW_DRIVER is not set
-# CONFIG_HPET is not set
+CONFIG_HPET=y
+# CONFIG_HPET_RTC_IRQ is not set
+CONFIG_HPET_MMAP=y
CONFIG_HANGCHECK_TIMER=m
CONFIG_TCG_TPM=m
-# CONFIG_TCG_TIS is not set
-# CONFIG_TCG_NSC is not set
+CONFIG_TCG_TIS=m
+CONFIG_TCG_NSC=m
CONFIG_TCG_ATMEL=m
-# CONFIG_TCG_INFINEON is not set
+CONFIG_TCG_INFINEON=m
CONFIG_TELCLOCK=m
CONFIG_DEVPORT=y
-CONFIG_I2C=y
+CONFIG_I2C=m
CONFIG_I2C_BOARDINFO=y
CONFIG_I2C_CHARDEV=m
#
# I2C Algorithms
#
-CONFIG_I2C_ALGOBIT=y
+CONFIG_I2C_ALGOBIT=m
CONFIG_I2C_ALGOPCF=m
CONFIG_I2C_ALGOPCA=m
@@ -2161,20 +2035,15 @@ CONFIG_I2C_PARPORT_LIGHT=m
CONFIG_I2C_PROSAVAGE=m
CONFIG_I2C_SAVAGE4=m
CONFIG_I2C_SIMTEC=m
-CONFIG_SCx200_I2C=m
-CONFIG_SCx200_I2C_SCL=12
-CONFIG_SCx200_I2C_SDA=13
-CONFIG_SCx200_ACB=m
CONFIG_I2C_SIS5595=m
CONFIG_I2C_SIS630=m
CONFIG_I2C_SIS96X=m
CONFIG_I2C_TAOS_EVM=m
-CONFIG_I2C_STUB=m
+# CONFIG_I2C_STUB is not set
CONFIG_I2C_TINY_USB=m
CONFIG_I2C_VIA=m
CONFIG_I2C_VIAPRO=m
CONFIG_I2C_VOODOO3=m
-CONFIG_I2C_PCA_ISA=m
#
# Miscellaneous I2C Chip support
@@ -2196,8 +2065,23 @@ CONFIG_SENSORS_TSL2550=m
#
# SPI support
#
-# CONFIG_SPI is not set
-# CONFIG_SPI_MASTER is not set
+CONFIG_SPI=y
+# CONFIG_SPI_DEBUG is not set
+CONFIG_SPI_MASTER=y
+
+#
+# SPI Master Controller Drivers
+#
+CONFIG_SPI_BITBANG=m
+# CONFIG_SPI_BUTTERFLY is not set
+CONFIG_SPI_LM70_LLP=m
+
+#
+# SPI Protocol Masters
+#
+CONFIG_SPI_AT25=m
+CONFIG_SPI_SPIDEV=m
+CONFIG_SPI_TLE62X0=m
CONFIG_W1=m
CONFIG_W1_CON=y
@@ -2214,13 +2098,13 @@ CONFIG_W1_MASTER_DS2482=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_DS2433=m
-CONFIG_W1_SLAVE_DS2433_CRC=y
+# CONFIG_W1_SLAVE_DS2433_CRC is not set
CONFIG_W1_SLAVE_DS2760=m
CONFIG_POWER_SUPPLY=y
# CONFIG_POWER_SUPPLY_DEBUG is not set
-# CONFIG_PDA_POWER is not set
+CONFIG_PDA_POWER=m
CONFIG_BATTERY_DS2760=m
-CONFIG_HWMON=m
+CONFIG_HWMON=y
CONFIG_HWMON_VID=m
CONFIG_SENSORS_ABITUGURU=m
CONFIG_SENSORS_ABITUGURU3=m
@@ -2228,7 +2112,7 @@ CONFIG_SENSORS_AD7418=m
CONFIG_SENSORS_ADM1021=m
CONFIG_SENSORS_ADM1025=m
CONFIG_SENSORS_ADM1026=m
-# CONFIG_SENSORS_ADM1029 is not set
+CONFIG_SENSORS_ADM1029=m
CONFIG_SENSORS_ADM1031=m
CONFIG_SENSORS_ADM9240=m
CONFIG_SENSORS_ADT7470=m
@@ -2249,6 +2133,7 @@ CONFIG_SENSORS_CORETEMP=m
CONFIG_SENSORS_IBMPEX=m
CONFIG_SENSORS_IT87=m
CONFIG_SENSORS_LM63=m
+CONFIG_SENSORS_LM70=m
CONFIG_SENSORS_LM75=m
CONFIG_SENSORS_LM77=m
CONFIG_SENSORS_LM78=m
@@ -2303,11 +2188,9 @@ CONFIG_ITCO_WDT=m
CONFIG_ITCO_VENDOR_SUPPORT=y
CONFIG_IT8712F_WDT=m
CONFIG_SC1200_WDT=m
-CONFIG_SCx200_WDT=m
CONFIG_PC87413_WDT=m
CONFIG_60XX_WDT=m
CONFIG_SBC8360_WDT=m
-CONFIG_SBC7240_WDT=m
CONFIG_CPU5_WDT=m
CONFIG_SMSC37B787_WDT=m
CONFIG_W83627HF_WDT=m
@@ -2318,14 +2201,6 @@ CONFIG_MACHZ_WDT=m
CONFIG_SBC_EPX_C3_WATCHDOG=m
#
-# ISA-based Watchdog Cards
-#
-CONFIG_PCWATCHDOG=m
-CONFIG_MIXCOMWD=m
-CONFIG_WDT=m
-# CONFIG_WDT_501 is not set
-
-#
# PCI-based Watchdog Cards
#
CONFIG_PCIPCWATCHDOG=m
@@ -2353,7 +2228,7 @@ CONFIG_SSB_DRIVER_PCICORE=y
#
# Multifunction device drivers
#
-# CONFIG_MFD_SM501 is not set
+CONFIG_MFD_SM501=m
#
# Multimedia devices
@@ -2364,15 +2239,7 @@ CONFIG_VIDEO_V4L1_COMPAT=y
CONFIG_VIDEO_V4L2=y
CONFIG_VIDEO_CAPTURE_DRIVERS=y
# CONFIG_VIDEO_ADV_DEBUG is not set
-# CONFIG_VIDEO_HELPER_CHIPS_AUTO is not set
-
-#
-# Encoders/decoders and other helper chips
-#
-
-#
-# Audio decoders
-#
+CONFIG_VIDEO_HELPER_CHIPS_AUTO=y
CONFIG_VIDEO_TVAUDIO=m
CONFIG_VIDEO_TDA7432=m
CONFIG_VIDEO_TDA9840=m
@@ -2381,56 +2248,31 @@ CONFIG_VIDEO_TEA6415C=m
CONFIG_VIDEO_TEA6420=m
CONFIG_VIDEO_MSP3400=m
CONFIG_VIDEO_CS53L32A=m
-CONFIG_VIDEO_TLV320AIC23B=m
CONFIG_VIDEO_WM8775=m
CONFIG_VIDEO_WM8739=m
CONFIG_VIDEO_VP27SMPX=m
-
-#
-# Video decoders
-#
CONFIG_VIDEO_BT819=m
CONFIG_VIDEO_BT856=m
-CONFIG_VIDEO_BT866=m
CONFIG_VIDEO_KS0127=m
CONFIG_VIDEO_OV7670=m
-CONFIG_VIDEO_TCM825X=m
CONFIG_VIDEO_SAA7110=m
CONFIG_VIDEO_SAA7111=m
CONFIG_VIDEO_SAA7114=m
CONFIG_VIDEO_SAA711X=m
-CONFIG_VIDEO_SAA7191=m
CONFIG_VIDEO_TVP5150=m
CONFIG_VIDEO_VPX3220=m
-
-#
-# Video and audio decoders
-#
CONFIG_VIDEO_CX25840=m
-
-#
-# MPEG video encoders
-#
CONFIG_VIDEO_CX2341X=m
-
-#
-# Video encoders
-#
CONFIG_VIDEO_SAA7127=m
CONFIG_VIDEO_SAA7185=m
CONFIG_VIDEO_ADV7170=m
CONFIG_VIDEO_ADV7175=m
-
-#
-# Video improvement chips
-#
CONFIG_VIDEO_UPD64031A=m
CONFIG_VIDEO_UPD64083=m
CONFIG_VIDEO_VIVI=m
CONFIG_VIDEO_BT848=m
CONFIG_VIDEO_BT848_DVB=y
CONFIG_VIDEO_SAA6588=m
-CONFIG_VIDEO_PMS=m
CONFIG_VIDEO_BWQCAM=m
CONFIG_VIDEO_CQCAM=m
CONFIG_VIDEO_W9966=m
@@ -2450,15 +2292,16 @@ CONFIG_VIDEO_ZORAN_DC30=m
CONFIG_VIDEO_ZORAN_LML33=m
CONFIG_VIDEO_ZORAN_LML33R10=m
CONFIG_VIDEO_ZORAN_AVS6EYES=m
+CONFIG_VIDEO_MEYE=m
CONFIG_VIDEO_SAA7134=m
-# CONFIG_VIDEO_SAA7134_ALSA is not set
+CONFIG_VIDEO_SAA7134_ALSA=m
CONFIG_VIDEO_SAA7134_DVB=m
CONFIG_VIDEO_MXB=m
CONFIG_VIDEO_DPC=m
CONFIG_VIDEO_HEXIUM_ORION=m
CONFIG_VIDEO_HEXIUM_GEMINI=m
CONFIG_VIDEO_CX88=m
-# CONFIG_VIDEO_CX88_ALSA is not set
+CONFIG_VIDEO_CX88_ALSA=m
CONFIG_VIDEO_CX88_BLACKBIRD=m
CONFIG_VIDEO_CX88_DVB=m
CONFIG_VIDEO_CX88_VP3054=m
@@ -2470,8 +2313,7 @@ CONFIG_V4L_USB_DRIVERS=y
CONFIG_VIDEO_PVRUSB2=m
CONFIG_VIDEO_PVRUSB2_29XXX=y
CONFIG_VIDEO_PVRUSB2_24XXX=y
-CONFIG_VIDEO_PVRUSB2_SYSFS=y
-# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set
+# CONFIG_VIDEO_PVRUSB2_SYSFS is not set
CONFIG_VIDEO_EM28XX=m
CONFIG_VIDEO_USBVISION=m
CONFIG_VIDEO_USBVIDEO=m
@@ -2491,24 +2333,12 @@ CONFIG_USB_PWC=m
# CONFIG_USB_PWC_DEBUG is not set
CONFIG_USB_ZR364XX=m
CONFIG_RADIO_ADAPTERS=y
-CONFIG_RADIO_CADET=m
-CONFIG_RADIO_RTRACK=m
-CONFIG_RADIO_RTRACK2=m
-CONFIG_RADIO_AZTECH=m
-CONFIG_RADIO_GEMTEK=m
CONFIG_RADIO_GEMTEK_PCI=m
CONFIG_RADIO_MAXIRADIO=m
CONFIG_RADIO_MAESTRO=m
-CONFIG_RADIO_SF16FMI=m
-CONFIG_RADIO_SF16FMR2=m
-CONFIG_RADIO_TERRATEC=m
-CONFIG_RADIO_TRUST=m
-CONFIG_RADIO_TYPHOON=m
-CONFIG_RADIO_TYPHOON_PROC_FS=y
-CONFIG_RADIO_ZOLTRIX=m
CONFIG_USB_DSBR=m
CONFIG_DVB_CORE=m
-# CONFIG_DVB_CORE_ATTACH is not set
+CONFIG_DVB_CORE_ATTACH=y
CONFIG_DVB_CAPTURE_DRIVERS=y
#
@@ -2518,7 +2348,7 @@ CONFIG_DVB_AV7110=m
CONFIG_DVB_AV7110_OSD=y
CONFIG_DVB_BUDGET=m
CONFIG_DVB_BUDGET_CI=m
-# CONFIG_DVB_BUDGET_AV is not set
+CONFIG_DVB_BUDGET_AV=m
CONFIG_DVB_BUDGET_PATCH=m
#
@@ -2533,9 +2363,9 @@ CONFIG_DVB_USB_DIBUSB_MC=m
CONFIG_DVB_USB_DIB0700=m
CONFIG_DVB_USB_UMT_010=m
CONFIG_DVB_USB_CXUSB=m
-# CONFIG_DVB_USB_M920X is not set
-# CONFIG_DVB_USB_GL861 is not set
-# CONFIG_DVB_USB_AU6610 is not set
+CONFIG_DVB_USB_M920X=m
+CONFIG_DVB_USB_GL861=m
+CONFIG_DVB_USB_AU6610=m
CONFIG_DVB_USB_DIGITV=m
CONFIG_DVB_USB_VP7045=m
CONFIG_DVB_USB_VP702X=m
@@ -2549,11 +2379,7 @@ CONFIG_DVB_USB_AF9005_REMOTE=m
CONFIG_DVB_TTUSB_BUDGET=m
CONFIG_DVB_TTUSB_DEC=m
CONFIG_DVB_CINERGYT2=m
-CONFIG_DVB_CINERGYT2_TUNING=y
-CONFIG_DVB_CINERGYT2_STREAM_URB_COUNT=32
-CONFIG_DVB_CINERGYT2_STREAM_BUF_SIZE=512
-CONFIG_DVB_CINERGYT2_QUERY_INTERVAL=250
-# CONFIG_DVB_CINERGYT2_ENABLE_RC_INPUT_DEVICE is not set
+# CONFIG_DVB_CINERGYT2_TUNING is not set
#
# Supported FlexCopII (B2C2) Adapters
@@ -2580,7 +2406,7 @@ CONFIG_DVB_PLUTO2=m
#
# Customise DVB Frontends
#
-CONFIG_DVB_FE_CUSTOMISE=y
+# CONFIG_DVB_FE_CUSTOMISE is not set
#
# DVB-S (satellite) frontends
@@ -2670,17 +2496,11 @@ CONFIG_USB_DABUSB=m
#
# Graphics support
#
-CONFIG_AGP=m
-CONFIG_AGP_ALI=m
-CONFIG_AGP_ATI=m
-CONFIG_AGP_AMD=m
-CONFIG_AGP_AMD64=m
+CONFIG_AGP=y
+CONFIG_AGP_AMD64=y
CONFIG_AGP_INTEL=m
-CONFIG_AGP_NVIDIA=m
CONFIG_AGP_SIS=m
-CONFIG_AGP_SWORKS=m
CONFIG_AGP_VIA=m
-CONFIG_AGP_EFFICEON=m
CONFIG_DRM=m
CONFIG_DRM_TDFX=m
CONFIG_DRM_R128=m
@@ -2692,8 +2512,8 @@ CONFIG_DRM_MGA=m
CONFIG_DRM_SIS=m
CONFIG_DRM_VIA=m
CONFIG_DRM_SAVAGE=m
-CONFIG_VGASTATE=m
-CONFIG_VIDEO_OUTPUT_CONTROL=m
+CONFIG_VGASTATE=y
+CONFIG_VIDEO_OUTPUT_CONTROL=y
CONFIG_FB=y
CONFIG_FIRMWARE_EDID=y
CONFIG_FB_DDC=m
@@ -2715,40 +2535,29 @@ CONFIG_FB_TILEBLITTING=y
#
# Frame buffer hardware drivers
#
-CONFIG_FB_CIRRUS=m
-CONFIG_FB_PM2=m
-# CONFIG_FB_PM2_FIFO_DISCONNECT is not set
-CONFIG_FB_CYBER2000=m
-CONFIG_FB_ARC=m
+# CONFIG_FB_CIRRUS is not set
+# CONFIG_FB_PM2 is not set
+# CONFIG_FB_CYBER2000 is not set
+# CONFIG_FB_ARC is not set
# CONFIG_FB_ASILIANT is not set
# CONFIG_FB_IMSTT is not set
-CONFIG_FB_VGA16=m
+CONFIG_FB_VGA16=y
CONFIG_FB_UVESA=m
CONFIG_FB_VESA=y
# CONFIG_FB_EFI is not set
-CONFIG_FB_HECUBA=m
-CONFIG_FB_HGA=m
-# CONFIG_FB_HGA_ACCEL is not set
-CONFIG_FB_S1D13XXX=m
-CONFIG_FB_NVIDIA=m
-CONFIG_FB_NVIDIA_I2C=y
-# CONFIG_FB_NVIDIA_DEBUG is not set
-CONFIG_FB_NVIDIA_BACKLIGHT=y
-CONFIG_FB_RIVA=m
-CONFIG_FB_RIVA_I2C=y
-# CONFIG_FB_RIVA_DEBUG is not set
-CONFIG_FB_RIVA_BACKLIGHT=y
-CONFIG_FB_I810=m
-CONFIG_FB_I810_GTF=y
-CONFIG_FB_I810_I2C=y
+# CONFIG_FB_HECUBA is not set
+# CONFIG_FB_HGA is not set
+# CONFIG_FB_S1D13XXX is not set
+# CONFIG_FB_NVIDIA is not set
+# CONFIG_FB_RIVA is not set
CONFIG_FB_LE80578=m
CONFIG_FB_CARILLO_RANCH=m
CONFIG_FB_INTEL=m
# CONFIG_FB_INTEL_DEBUG is not set
CONFIG_FB_INTEL_I2C=y
CONFIG_FB_MATROX=m
-CONFIG_FB_MATROX_MILLENIUM=y
-CONFIG_FB_MATROX_MYSTIQUE=y
+# CONFIG_FB_MATROX_MILLENIUM is not set
+# CONFIG_FB_MATROX_MYSTIQUE is not set
CONFIG_FB_MATROX_G=y
CONFIG_FB_MATROX_I2C=m
CONFIG_FB_MATROX_MAVEN=m
@@ -2760,39 +2569,31 @@ CONFIG_FB_RADEON_BACKLIGHT=y
CONFIG_FB_ATY128=m
CONFIG_FB_ATY128_BACKLIGHT=y
CONFIG_FB_ATY=m
-CONFIG_FB_ATY_CT=y
-CONFIG_FB_ATY_GENERIC_LCD=y
-CONFIG_FB_ATY_GX=y
+# CONFIG_FB_ATY_CT is not set
+# CONFIG_FB_ATY_GX is not set
CONFIG_FB_ATY_BACKLIGHT=y
-# CONFIG_FB_S3 is not set
-CONFIG_FB_SAVAGE=m
-CONFIG_FB_SAVAGE_I2C=y
-CONFIG_FB_SAVAGE_ACCEL=y
+CONFIG_FB_S3=m
+# CONFIG_FB_SAVAGE is not set
CONFIG_FB_SIS=m
CONFIG_FB_SIS_300=y
CONFIG_FB_SIS_315=y
-CONFIG_FB_NEOMAGIC=m
-CONFIG_FB_KYRO=m
-CONFIG_FB_3DFX=m
-# CONFIG_FB_3DFX_ACCEL is not set
-CONFIG_FB_VOODOO1=m
-CONFIG_FB_VT8623=m
-CONFIG_FB_CYBLA=m
-CONFIG_FB_TRIDENT=m
-# CONFIG_FB_TRIDENT_ACCEL is not set
-CONFIG_FB_ARK=m
-CONFIG_FB_PM3=m
-CONFIG_FB_GEODE=y
-CONFIG_FB_GEODE_LX=m
-CONFIG_FB_GEODE_GX=m
-# CONFIG_FB_GEODE_GX_SET_FBSIZE is not set
-CONFIG_FB_GEODE_GX1=m
+# CONFIG_FB_NEOMAGIC is not set
+# CONFIG_FB_KYRO is not set
+# CONFIG_FB_3DFX is not set
+# CONFIG_FB_VOODOO1 is not set
+# CONFIG_FB_VT8623 is not set
+# CONFIG_FB_TRIDENT is not set
+# CONFIG_FB_ARK is not set
+# CONFIG_FB_PM3 is not set
+# CONFIG_FB_GEODE is not set
+CONFIG_FB_SM501=m
# CONFIG_FB_VIRTUAL is not set
CONFIG_BACKLIGHT_LCD_SUPPORT=y
CONFIG_LCD_CLASS_DEVICE=m
+CONFIG_LCD_LTV350QV=m
CONFIG_BACKLIGHT_CLASS_DEVICE=y
CONFIG_BACKLIGHT_CORGI=m
-# CONFIG_BACKLIGHT_PROGEAR is not set
+CONFIG_BACKLIGHT_PROGEAR=m
CONFIG_BACKLIGHT_CARILLO_RANCH=m
#
@@ -2811,11 +2612,10 @@ CONFIG_VGA_CONSOLE=y
CONFIG_VGACON_SOFT_SCROLLBACK=y
CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64
CONFIG_VIDEO_SELECT=y
-CONFIG_MDA_CONSOLE=m
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
-CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
-# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
+# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set
+CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
CONFIG_FONTS=y
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
@@ -2827,29 +2627,26 @@ CONFIG_FONT_8x16=y
# CONFIG_FONT_SUN8x16 is not set
# CONFIG_FONT_SUN12x22 is not set
# CONFIG_FONT_10x18 is not set
-CONFIG_LOGO=y
-# CONFIG_LOGO_LINUX_MONO is not set
-# CONFIG_LOGO_LINUX_VGA16 is not set
-CONFIG_LOGO_LINUX_CLUT224=y
+# CONFIG_LOGO is not set
#
# Sound
#
-CONFIG_SOUND=m
+CONFIG_SOUND=y
#
# Advanced Linux Sound Architecture
#
-CONFIG_SND=m
-CONFIG_SND_TIMER=m
-CONFIG_SND_PCM=m
+CONFIG_SND=y
+CONFIG_SND_TIMER=y
+CONFIG_SND_PCM=y
CONFIG_SND_HWDEP=m
CONFIG_SND_RAWMIDI=m
CONFIG_SND_SEQUENCER=m
CONFIG_SND_SEQ_DUMMY=m
CONFIG_SND_OSSEMUL=y
-CONFIG_SND_MIXER_OSS=m
-CONFIG_SND_PCM_OSS=m
+CONFIG_SND_MIXER_OSS=y
+CONFIG_SND_PCM_OSS=y
CONFIG_SND_PCM_OSS_PLUGINS=y
CONFIG_SND_SEQUENCER_OSS=y
CONFIG_SND_RTCTIMER=m
@@ -2865,7 +2662,6 @@ CONFIG_SND_VERBOSE_PROCFS=y
#
CONFIG_SND_MPU401_UART=m
CONFIG_SND_OPL3_LIB=m
-CONFIG_SND_OPL4_LIB=m
CONFIG_SND_VX_LIB=m
CONFIG_SND_AC97_CODEC=m
CONFIG_SND_DUMMY=m
@@ -2874,52 +2670,11 @@ CONFIG_SND_MTPAV=m
CONFIG_SND_MTS64=m
CONFIG_SND_SERIAL_U16550=m
CONFIG_SND_MPU401=m
-# CONFIG_SND_PORTMAN2X4 is not set
-CONFIG_SND_AD1848_LIB=m
-CONFIG_SND_CS4231_LIB=m
+CONFIG_SND_PORTMAN2X4=m
CONFIG_SND_SB_COMMON=m
-CONFIG_SND_SB8_DSP=m
CONFIG_SND_SB16_DSP=m
#
-# ISA devices
-#
-CONFIG_SND_ADLIB=m
-CONFIG_SND_AD1816A=m
-CONFIG_SND_AD1848=m
-CONFIG_SND_ALS100=m
-CONFIG_SND_AZT2320=m
-CONFIG_SND_CMI8330=m
-CONFIG_SND_CS4231=m
-CONFIG_SND_CS4232=m
-CONFIG_SND_CS4236=m
-CONFIG_SND_DT019X=m
-CONFIG_SND_ES968=m
-CONFIG_SND_ES1688=m
-CONFIG_SND_ES18XX=m
-CONFIG_SND_SC6000=m
-CONFIG_SND_GUS_SYNTH=m
-CONFIG_SND_GUSCLASSIC=m
-CONFIG_SND_GUSEXTREME=m
-CONFIG_SND_GUSMAX=m
-CONFIG_SND_INTERWAVE=m
-CONFIG_SND_INTERWAVE_STB=m
-CONFIG_SND_OPL3SA2=m
-CONFIG_SND_OPTI92X_AD1848=m
-CONFIG_SND_OPTI92X_CS4231=m
-CONFIG_SND_OPTI93X=m
-CONFIG_SND_MIRO=m
-CONFIG_SND_SB8=m
-CONFIG_SND_SB16=m
-CONFIG_SND_SBAWE=m
-CONFIG_SND_SB16_CSP=y
-CONFIG_SND_SB16_CSP_FIRMWARE_IN_KERNEL=y
-CONFIG_SND_SGALAXY=m
-CONFIG_SND_SSCAPE=m
-CONFIG_SND_WAVEFRONT=m
-CONFIG_SND_WAVEFRONT_FIRMWARE_IN_KERNEL=y
-
-#
# PCI devices
#
CONFIG_SND_AD1889=m
@@ -2940,7 +2695,6 @@ CONFIG_SND_CS4281=m
CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
CONFIG_SND_CS5530=m
-CONFIG_SND_CS5535AUDIO=m
CONFIG_SND_DARLA20=m
CONFIG_SND_GINA20=m
CONFIG_SND_LAYLA20=m
@@ -2981,9 +2735,9 @@ CONFIG_SND_ICE1724=m
CONFIG_SND_INTEL8X0=m
CONFIG_SND_INTEL8X0M=m
CONFIG_SND_KORG1212=m
-CONFIG_SND_KORG1212_FIRMWARE_IN_KERNEL=y
+# CONFIG_SND_KORG1212_FIRMWARE_IN_KERNEL is not set
CONFIG_SND_MAESTRO3=m
-CONFIG_SND_MAESTRO3_FIRMWARE_IN_KERNEL=y
+# CONFIG_SND_MAESTRO3_FIRMWARE_IN_KERNEL is not set
CONFIG_SND_MIXART=m
CONFIG_SND_NM256=m
CONFIG_SND_PCXHR=m
@@ -2997,17 +2751,21 @@ CONFIG_SND_VIA82XX=m
CONFIG_SND_VIA82XX_MODEM=m
CONFIG_SND_VX222=m
CONFIG_SND_YMFPCI=m
-CONFIG_SND_YMFPCI_FIRMWARE_IN_KERNEL=y
+# CONFIG_SND_YMFPCI_FIRMWARE_IN_KERNEL is not set
CONFIG_SND_AC97_POWER_SAVE=y
CONFIG_SND_AC97_POWER_SAVE_DEFAULT=0
#
+# SPI devices
+#
+
+#
# USB devices
#
CONFIG_SND_USB_AUDIO=m
CONFIG_SND_USB_USX2Y=m
CONFIG_SND_USB_CAIAQ=m
-# CONFIG_SND_USB_CAIAQ_INPUT is not set
+CONFIG_SND_USB_CAIAQ_INPUT=y
#
# PCMCIA devices
@@ -3032,18 +2790,18 @@ CONFIG_AC97_BUS=m
CONFIG_HID_SUPPORT=y
CONFIG_HID=y
# CONFIG_HID_DEBUG is not set
-# CONFIG_HIDRAW is not set
+CONFIG_HIDRAW=y
#
# USB Input Devices
#
CONFIG_USB_HID=y
-CONFIG_USB_HIDINPUT_POWERBOOK=y
+# CONFIG_USB_HIDINPUT_POWERBOOK is not set
CONFIG_HID_FF=y
CONFIG_HID_PID=y
CONFIG_LOGITECH_FF=y
-# CONFIG_PANTHERLORD_FF is not set
-CONFIG_THRUSTMASTER_FF=y
+CONFIG_PANTHERLORD_FF=y
+# CONFIG_THRUSTMASTER_FF is not set
CONFIG_ZEROPLUS_FF=y
CONFIG_USB_HIDDEV=y
CONFIG_USB_SUPPORT=y
@@ -3057,27 +2815,28 @@ CONFIG_USB=y
# Miscellaneous USB options
#
CONFIG_USB_DEVICEFS=y
-CONFIG_USB_DEVICE_CLASS=y
-# CONFIG_USB_DYNAMIC_MINORS is not set
-# CONFIG_USB_SUSPEND is not set
+# CONFIG_USB_DEVICE_CLASS is not set
+CONFIG_USB_DYNAMIC_MINORS=y
+CONFIG_USB_SUSPEND=y
# CONFIG_USB_PERSIST is not set
# CONFIG_USB_OTG is not set
#
# USB Host Controller Drivers
#
-CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_EHCI_HCD=m
CONFIG_USB_EHCI_SPLIT_ISO=y
CONFIG_USB_EHCI_ROOT_HUB_TT=y
-CONFIG_USB_EHCI_TT_NEWSCHED=y
-CONFIG_USB_ISP116X_HCD=y
-CONFIG_USB_OHCI_HCD=y
+# CONFIG_USB_EHCI_TT_NEWSCHED is not set
+CONFIG_USB_ISP116X_HCD=m
+CONFIG_USB_OHCI_HCD=m
+# CONFIG_USB_OHCI_HCD_SSB is not set
# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
CONFIG_USB_OHCI_LITTLE_ENDIAN=y
-CONFIG_USB_UHCI_HCD=y
+CONFIG_USB_UHCI_HCD=m
CONFIG_USB_U132_HCD=m
-CONFIG_USB_SL811_HCD=y
+CONFIG_USB_SL811_HCD=m
CONFIG_USB_SL811_CS=m
CONFIG_USB_R8A66597_HCD=m
@@ -3094,7 +2853,7 @@ CONFIG_USB_PRINTER=m
#
# may also be needed; see USB_STORAGE Help for more information
#
-CONFIG_USB_STORAGE=y
+CONFIG_USB_STORAGE=m
# CONFIG_USB_STORAGE_DEBUG is not set
CONFIG_USB_STORAGE_DATAFAB=y
CONFIG_USB_STORAGE_FREECOM=y
@@ -3113,7 +2872,7 @@ CONFIG_USB_STORAGE_KARMA=y
#
CONFIG_USB_MDC800=m
CONFIG_USB_MICROTEK=m
-CONFIG_USB_MON=y
+# CONFIG_USB_MON is not set
#
# USB port drivers
@@ -3175,7 +2934,7 @@ CONFIG_USB_SERIAL_CYBERJACK=m
CONFIG_USB_SERIAL_XIRCOM=m
CONFIG_USB_SERIAL_OPTION=m
CONFIG_USB_SERIAL_OMNINET=m
-CONFIG_USB_SERIAL_DEBUG=m
+# CONFIG_USB_SERIAL_DEBUG is not set
CONFIG_USB_EZUSB=y
#
@@ -3188,7 +2947,7 @@ CONFIG_USB_AUERSWALD=m
CONFIG_USB_RIO500=m
CONFIG_USB_LEGOTOWER=m
CONFIG_USB_LCD=m
-# CONFIG_USB_BERRY_CHARGE is not set
+CONFIG_USB_BERRY_CHARGE=m
CONFIG_USB_LED=m
CONFIG_USB_CYPRESS_CY7C63=m
CONFIG_USB_CYTHERM=m
@@ -3200,10 +2959,10 @@ CONFIG_USB_IDMOUSE=m
CONFIG_USB_FTDI_ELAN=m
CONFIG_USB_APPLEDISPLAY=m
CONFIG_USB_SISUSBVGA=m
-CONFIG_USB_SISUSBVGA_CON=y
+# CONFIG_USB_SISUSBVGA_CON is not set
CONFIG_USB_LD=m
CONFIG_USB_TRANCEVIBRATOR=m
-# CONFIG_USB_IOWARRIOR is not set
+CONFIG_USB_IOWARRIOR=m
CONFIG_USB_TEST=m
#
@@ -3218,7 +2977,33 @@ CONFIG_USB_XUSBATM=m
#
# USB Gadget Support
#
-# CONFIG_USB_GADGET is not set
+CONFIG_USB_GADGET=m
+# CONFIG_USB_GADGET_DEBUG is not set
+# CONFIG_USB_GADGET_DEBUG_FILES is not set
+# CONFIG_USB_GADGET_DEBUG_FS is not set
+CONFIG_USB_GADGET_SELECTED=y
+# CONFIG_USB_GADGET_AMD5536UDC is not set
+# CONFIG_USB_GADGET_ATMEL_USBA is not set
+# CONFIG_USB_GADGET_FSL_USB2 is not set
+CONFIG_USB_GADGET_NET2280=y
+CONFIG_USB_NET2280=m
+# CONFIG_USB_GADGET_PXA2XX is not set
+# CONFIG_USB_GADGET_M66592 is not set
+# CONFIG_USB_GADGET_GOKU is not set
+# CONFIG_USB_GADGET_LH7A40X is not set
+# CONFIG_USB_GADGET_OMAP is not set
+# CONFIG_USB_GADGET_S3C2410 is not set
+# CONFIG_USB_GADGET_AT91 is not set
+# CONFIG_USB_GADGET_DUMMY_HCD is not set
+CONFIG_USB_GADGET_DUALSPEED=y
+# CONFIG_USB_ZERO is not set
+CONFIG_USB_ETH=m
+# CONFIG_USB_ETH_RNDIS is not set
+# CONFIG_USB_GADGETFS is not set
+CONFIG_USB_FILE_STORAGE=m
+# CONFIG_USB_FILE_STORAGE_TEST is not set
+CONFIG_USB_G_SERIAL=m
+# CONFIG_USB_MIDI_GADGET is not set
CONFIG_MMC=m
# CONFIG_MMC_DEBUG is not set
# CONFIG_MMC_UNSAFE_RESUME is not set
@@ -3237,14 +3022,13 @@ CONFIG_MMC_SDHCI=m
CONFIG_MMC_RICOH_MMC=m
CONFIG_MMC_WBSD=m
CONFIG_MMC_TIFM_SD=m
+CONFIG_MMC_SPI=m
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=m
#
# LED drivers
#
-CONFIG_LEDS_NET48XX=m
-CONFIG_LEDS_WRAP=m
#
# LED Triggers
@@ -3260,18 +3044,24 @@ CONFIG_INFINIBAND_USER_MEM=y
CONFIG_INFINIBAND_ADDR_TRANS=y
CONFIG_INFINIBAND_MTHCA=m
CONFIG_INFINIBAND_MTHCA_DEBUG=y
+CONFIG_INFINIBAND_IPATH=m
CONFIG_INFINIBAND_AMSO1100=m
# CONFIG_INFINIBAND_AMSO1100_DEBUG is not set
+CONFIG_INFINIBAND_CXGB3=m
+# CONFIG_INFINIBAND_CXGB3_DEBUG is not set
CONFIG_MLX4_INFINIBAND=m
CONFIG_INFINIBAND_IPOIB=m
-# CONFIG_INFINIBAND_IPOIB_CM is not set
+CONFIG_INFINIBAND_IPOIB_CM=y
CONFIG_INFINIBAND_IPOIB_DEBUG=y
# CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set
CONFIG_INFINIBAND_SRP=m
CONFIG_INFINIBAND_ISER=m
# CONFIG_EDAC is not set
-CONFIG_RTC_LIB=m
-CONFIG_RTC_CLASS=m
+CONFIG_RTC_LIB=y
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_HCTOSYS=y
+CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
+# CONFIG_RTC_DEBUG is not set
#
# RTC interfaces
@@ -3300,11 +3090,13 @@ CONFIG_RTC_DRV_M41T80_WDT=y
#
# SPI RTC drivers
#
+CONFIG_RTC_DRV_RS5C348=m
+CONFIG_RTC_DRV_MAX6902=m
#
# Platform RTC drivers
#
-# CONFIG_RTC_DRV_CMOS is not set
+CONFIG_RTC_DRV_CMOS=m
CONFIG_RTC_DRV_DS1553=m
CONFIG_RTC_DRV_STK17TA8=m
CONFIG_RTC_DRV_DS1742=m
@@ -3315,12 +3107,29 @@ CONFIG_RTC_DRV_V3020=m
#
# on-CPU RTC drivers
#
-# CONFIG_DMADEVICES is not set
+CONFIG_DMADEVICES=y
+
+#
+# DMA Devices
+#
+CONFIG_INTEL_IOATDMA=m
+CONFIG_DMA_ENGINE=y
+
+#
+# DMA Clients
+#
+CONFIG_NET_DMA=y
+CONFIG_DCA=m
CONFIG_AUXDISPLAY=y
-# CONFIG_KS0108 is not set
+CONFIG_KS0108=m
+CONFIG_KS0108_PORT=0x378
+CONFIG_KS0108_DELAY=2
+CONFIG_CFAG12864B=m
+CONFIG_CFAG12864B_RATE=20
CONFIG_VIRTUALIZATION=y
-# CONFIG_KVM is not set
-# CONFIG_LGUEST is not set
+CONFIG_KVM=m
+CONFIG_KVM_INTEL=m
+CONFIG_KVM_AMD=m
#
# Userspace I/O
@@ -3340,18 +3149,22 @@ CONFIG_DMIID=y
# File systems
#
CONFIG_EXT2_FS=y
-# CONFIG_EXT2_FS_XATTR is not set
+CONFIG_EXT2_FS_XATTR=y
+CONFIG_EXT2_FS_POSIX_ACL=y
+CONFIG_EXT2_FS_SECURITY=y
# CONFIG_EXT2_FS_XIP is not set
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_EXT3_FS_SECURITY=y
-CONFIG_EXT4DEV_FS=y
+CONFIG_EXT4DEV_FS=m
CONFIG_EXT4DEV_FS_XATTR=y
CONFIG_EXT4DEV_FS_POSIX_ACL=y
CONFIG_EXT4DEV_FS_SECURITY=y
CONFIG_JBD=y
-CONFIG_JBD2=y
+CONFIG_JBD_DEBUG=y
+CONFIG_JBD2=m
+CONFIG_JBD2_DEBUG=y
CONFIG_FS_MBCACHE=y
CONFIG_REISERFS_FS=y
# CONFIG_REISERFS_CHECK is not set
@@ -3359,24 +3172,24 @@ CONFIG_REISERFS_FS=y
CONFIG_REISERFS_FS_XATTR=y
CONFIG_REISERFS_FS_POSIX_ACL=y
CONFIG_REISERFS_FS_SECURITY=y
-CONFIG_JFS_FS=y
+CONFIG_JFS_FS=m
CONFIG_JFS_POSIX_ACL=y
CONFIG_JFS_SECURITY=y
# CONFIG_JFS_DEBUG is not set
-# CONFIG_JFS_STATISTICS is not set
+CONFIG_JFS_STATISTICS=y
CONFIG_FS_POSIX_ACL=y
CONFIG_XFS_FS=y
CONFIG_XFS_QUOTA=y
CONFIG_XFS_SECURITY=y
CONFIG_XFS_POSIX_ACL=y
-# CONFIG_XFS_RT is not set
-CONFIG_GFS2_FS=y
+CONFIG_XFS_RT=y
+CONFIG_GFS2_FS=m
CONFIG_GFS2_FS_LOCKING_NOLOCK=m
CONFIG_GFS2_FS_LOCKING_DLM=m
-CONFIG_OCFS2_FS=y
+CONFIG_OCFS2_FS=m
CONFIG_OCFS2_DEBUG_MASKLOG=y
# CONFIG_OCFS2_DEBUG_FS is not set
-CONFIG_MINIX_FS=y
+# CONFIG_MINIX_FS is not set
CONFIG_ROMFS_FS=m
CONFIG_INOTIFY=y
CONFIG_INOTIFY_USER=y
@@ -3390,28 +3203,27 @@ CONFIG_DNOTIFY=y
CONFIG_AUTOFS_FS=m
CONFIG_AUTOFS4_FS=m
CONFIG_FUSE_FS=m
-CONFIG_GENERIC_ACL=y
#
# CD-ROM/DVD Filesystems
#
-CONFIG_ISO9660_FS=y
+CONFIG_ISO9660_FS=m
CONFIG_JOLIET=y
CONFIG_ZISOFS=y
-CONFIG_UDF_FS=y
+CONFIG_UDF_FS=m
CONFIG_UDF_NLS=y
#
# DOS/FAT/NT Filesystems
#
-CONFIG_FAT_FS=y
+CONFIG_FAT_FS=m
# CONFIG_MSDOS_FS is not set
-CONFIG_VFAT_FS=y
+CONFIG_VFAT_FS=m
CONFIG_FAT_DEFAULT_CODEPAGE=437
-CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
-CONFIG_NTFS_FS=y
+CONFIG_FAT_DEFAULT_IOCHARSET="utf8"
+CONFIG_NTFS_FS=m
# CONFIG_NTFS_DEBUG is not set
-# CONFIG_NTFS_RW is not set
+CONFIG_NTFS_RW=y
#
# Pseudo filesystems
@@ -3421,10 +3233,10 @@ CONFIG_PROC_KCORE=y
CONFIG_PROC_SYSCTL=y
CONFIG_SYSFS=y
CONFIG_TMPFS=y
-CONFIG_TMPFS_POSIX_ACL=y
+# CONFIG_TMPFS_POSIX_ACL is not set
# CONFIG_HUGETLBFS is not set
# CONFIG_HUGETLB_PAGE is not set
-CONFIG_CONFIGFS_FS=y
+CONFIG_CONFIGFS_FS=m
#
# Miscellaneous filesystems
@@ -3439,9 +3251,22 @@ CONFIG_BEFS_FS=m
# CONFIG_BEFS_DEBUG is not set
CONFIG_BFS_FS=m
CONFIG_EFS_FS=m
+CONFIG_JFFS2_FS=m
+CONFIG_JFFS2_FS_DEBUG=0
+CONFIG_JFFS2_FS_WRITEBUFFER=y
+# CONFIG_JFFS2_FS_WBUF_VERIFY is not set
+# CONFIG_JFFS2_SUMMARY is not set
+# CONFIG_JFFS2_FS_XATTR is not set
+CONFIG_JFFS2_COMPRESSION_OPTIONS=y
+CONFIG_JFFS2_ZLIB=y
+CONFIG_JFFS2_LZO=y
+CONFIG_JFFS2_RTIME=y
+CONFIG_JFFS2_RUBIN=y
+# CONFIG_JFFS2_CMODE_NONE is not set
+CONFIG_JFFS2_CMODE_PRIORITY=y
+# CONFIG_JFFS2_CMODE_SIZE is not set
+# CONFIG_JFFS2_CMODE_FAVOURLZO is not set
CONFIG_CRAMFS=m
-CONFIG_SQUASHFS=n
-CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
CONFIG_VXFS_FS=m
CONFIG_HPFS_FS=m
CONFIG_QNX4FS_FS=m
@@ -3450,31 +3275,31 @@ CONFIG_UFS_FS=m
# CONFIG_UFS_FS_WRITE is not set
# CONFIG_UFS_DEBUG is not set
CONFIG_NETWORK_FILESYSTEMS=y
-CONFIG_NFS_FS=y
+CONFIG_NFS_FS=m
CONFIG_NFS_V3=y
# CONFIG_NFS_V3_ACL is not set
-# CONFIG_NFS_V4 is not set
-# CONFIG_NFS_DIRECTIO is not set
+CONFIG_NFS_V4=y
+CONFIG_NFS_DIRECTIO=y
CONFIG_NFSD=m
CONFIG_NFSD_V3=y
# CONFIG_NFSD_V3_ACL is not set
CONFIG_NFSD_V4=y
CONFIG_NFSD_TCP=y
-CONFIG_LOCKD=y
+CONFIG_LOCKD=m
CONFIG_LOCKD_V4=y
CONFIG_EXPORTFS=m
CONFIG_NFS_COMMON=y
-CONFIG_SUNRPC=y
+CONFIG_SUNRPC=m
CONFIG_SUNRPC_GSS=m
CONFIG_SUNRPC_XPRT_RDMA=m
# CONFIG_SUNRPC_BIND34 is not set
CONFIG_RPCSEC_GSS_KRB5=m
-CONFIG_RPCSEC_GSS_SPKM3=m
+# CONFIG_RPCSEC_GSS_SPKM3 is not set
CONFIG_SMB_FS=m
# CONFIG_SMB_NLS_DEFAULT is not set
CONFIG_CIFS=m
# CONFIG_CIFS_STATS is not set
-CONFIG_CIFS_WEAK_PW_HASH=y
+# CONFIG_CIFS_WEAK_PW_HASH is not set
# CONFIG_CIFS_XATTR is not set
# CONFIG_CIFS_DEBUG2 is not set
# CONFIG_CIFS_EXPERIMENTAL is not set
@@ -3491,7 +3316,7 @@ CONFIG_CODA_FS=m
# CONFIG_CODA_FS_OLD_API is not set
CONFIG_AFS_FS=m
# CONFIG_AFS_DEBUG is not set
-CONFIG_9P_FS=m
+# CONFIG_9P_FS is not set
#
# Partition Types
@@ -3507,16 +3332,17 @@ CONFIG_BSD_DISKLABEL=y
# CONFIG_MINIX_SUBPARTITION is not set
CONFIG_SOLARIS_X86_PARTITION=y
# CONFIG_UNIXWARE_DISKLABEL is not set
-# CONFIG_LDM_PARTITION is not set
+CONFIG_LDM_PARTITION=y
+# CONFIG_LDM_DEBUG is not set
# CONFIG_SGI_PARTITION is not set
# CONFIG_ULTRIX_PARTITION is not set
# CONFIG_SUN_PARTITION is not set
-CONFIG_KARMA_PARTITION=y
+# CONFIG_KARMA_PARTITION is not set
# CONFIG_EFI_PARTITION is not set
# CONFIG_SYSV68_PARTITION is not set
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="iso8859-1"
-CONFIG_NLS_CODEPAGE_437=y
+CONFIG_NLS_CODEPAGE_437=m
CONFIG_NLS_CODEPAGE_737=m
CONFIG_NLS_CODEPAGE_775=m
CONFIG_NLS_CODEPAGE_850=m
@@ -3540,7 +3366,7 @@ CONFIG_NLS_ISO8859_8=m
CONFIG_NLS_CODEPAGE_1250=m
CONFIG_NLS_CODEPAGE_1251=m
CONFIG_NLS_ASCII=m
-CONFIG_NLS_ISO8859_1=y
+CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_ISO8859_2=m
CONFIG_NLS_ISO8859_3=m
CONFIG_NLS_ISO8859_4=m
@@ -3553,13 +3379,10 @@ CONFIG_NLS_ISO8859_14=m
CONFIG_NLS_ISO8859_15=m
CONFIG_NLS_KOI8_R=m
CONFIG_NLS_KOI8_U=m
-CONFIG_NLS_UTF8=y
+CONFIG_NLS_UTF8=m
CONFIG_DLM=m
# CONFIG_DLM_DEBUG is not set
-CONFIG_INSTRUMENTATION=y
-# CONFIG_PROFILING is not set
-# CONFIG_KPROBES is not set
-# CONFIG_MARKERS is not set
+# CONFIG_INSTRUMENTATION is not set
#
# Kernel hacking
@@ -3568,39 +3391,66 @@ CONFIG_TRACE_IRQFLAGS_SUPPORT=y
# CONFIG_PRINTK_TIME is not set
CONFIG_ENABLE_WARN_DEPRECATED=y
CONFIG_ENABLE_MUST_CHECK=y
-CONFIG_MAGIC_SYSRQ=y
+# CONFIG_MAGIC_SYSRQ is not set
CONFIG_UNUSED_SYMBOLS=y
-# CONFIG_DEBUG_FS is not set
-CONFIG_HEADERS_CHECK=y
-# CONFIG_DEBUG_KERNEL is not set
+CONFIG_DEBUG_FS=y
+# CONFIG_HEADERS_CHECK is not set
+CONFIG_DEBUG_KERNEL=y
+# CONFIG_DEBUG_SHIRQ is not set
+# CONFIG_DETECT_SOFTLOCKUP is not set
+# CONFIG_SCHED_DEBUG is not set
+# CONFIG_SCHEDSTATS is not set
+CONFIG_TIMER_STATS=y
# CONFIG_SLUB_DEBUG_ON is not set
+# CONFIG_DEBUG_PREEMPT is not set
+# CONFIG_DEBUG_RT_MUTEXES is not set
+# CONFIG_RT_MUTEX_TESTER is not set
+# CONFIG_DEBUG_SPINLOCK is not set
+# CONFIG_DEBUG_MUTEXES is not set
+# CONFIG_DEBUG_LOCK_ALLOC is not set
+# CONFIG_PROVE_LOCKING is not set
+# CONFIG_LOCK_STAT is not set
+# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
+# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
+# CONFIG_DEBUG_KOBJECT is not set
CONFIG_DEBUG_BUGVERBOSE=y
+# CONFIG_DEBUG_INFO is not set
+# CONFIG_DEBUG_VM is not set
+# CONFIG_DEBUG_LIST is not set
+# CONFIG_DEBUG_SG is not set
+# CONFIG_FRAME_POINTER is not set
+CONFIG_FORCED_INLINING=y
+# CONFIG_BOOT_PRINTK_DELAY is not set
+# CONFIG_RCU_TORTURE_TEST is not set
+# CONFIG_FAULT_INJECTION is not set
# CONFIG_SAMPLES is not set
CONFIG_EARLY_PRINTK=y
-CONFIG_X86_FIND_SMP_CONFIG=y
-CONFIG_X86_MPPARSE=y
-CONFIG_DOUBLEFAULT=y
+# CONFIG_DEBUG_STACKOVERFLOW is not set
+# CONFIG_DEBUG_STACK_USAGE is not set
+# CONFIG_DEBUG_RODATA is not set
+# CONFIG_IOMMU_DEBUG is not set
#
# Security options
#
CONFIG_KEYS=y
-# CONFIG_KEYS_DEBUG_PROC_KEYS is not set
+CONFIG_KEYS_DEBUG_PROC_KEYS=y
CONFIG_SECURITY=y
CONFIG_SECURITY_NETWORK=y
# CONFIG_SECURITY_NETWORK_XFRM is not set
CONFIG_SECURITY_CAPABILITIES=y
-CONFIG_SECURITY_FILE_CAPABILITIES=y
+# CONFIG_SECURITY_FILE_CAPABILITIES is not set
# CONFIG_SECURITY_ROOTPLUG is not set
-CONFIG_XOR_BLOCKS=y
-CONFIG_ASYNC_CORE=y
-CONFIG_ASYNC_MEMCPY=y
-CONFIG_ASYNC_XOR=y
+# CONFIG_SECURITY_SELINUX is not set
+CONFIG_XOR_BLOCKS=m
+CONFIG_ASYNC_CORE=m
+CONFIG_ASYNC_MEMCPY=m
+CONFIG_ASYNC_XOR=m
CONFIG_CRYPTO=y
CONFIG_CRYPTO_ALGAPI=y
CONFIG_CRYPTO_ABLKCIPHER=m
CONFIG_CRYPTO_AEAD=m
-CONFIG_CRYPTO_BLKCIPHER=y
+CONFIG_CRYPTO_BLKCIPHER=m
CONFIG_CRYPTO_HASH=y
CONFIG_CRYPTO_MANAGER=y
CONFIG_CRYPTO_HMAC=y
@@ -3615,7 +3465,7 @@ CONFIG_CRYPTO_WP512=m
CONFIG_CRYPTO_TGR192=m
CONFIG_CRYPTO_GF128MUL=m
CONFIG_CRYPTO_ECB=m
-CONFIG_CRYPTO_CBC=y
+CONFIG_CRYPTO_CBC=m
CONFIG_CRYPTO_PCBC=m
CONFIG_CRYPTO_LRW=m
CONFIG_CRYPTO_XTS=m
@@ -3625,10 +3475,10 @@ CONFIG_CRYPTO_FCRYPT=m
CONFIG_CRYPTO_BLOWFISH=m
CONFIG_CRYPTO_TWOFISH=m
CONFIG_CRYPTO_TWOFISH_COMMON=m
-CONFIG_CRYPTO_TWOFISH_586=m
+CONFIG_CRYPTO_TWOFISH_X86_64=m
CONFIG_CRYPTO_SERPENT=m
CONFIG_CRYPTO_AES=m
-CONFIG_CRYPTO_AES_586=m
+CONFIG_CRYPTO_AES_X86_64=m
CONFIG_CRYPTO_CAST5=m
CONFIG_CRYPTO_CAST6=m
CONFIG_CRYPTO_TEA=m
@@ -3638,28 +3488,29 @@ CONFIG_CRYPTO_ANUBIS=m
CONFIG_CRYPTO_SEED=m
CONFIG_CRYPTO_DEFLATE=m
CONFIG_CRYPTO_MICHAEL_MIC=m
-CONFIG_CRYPTO_CRC32C=y
+CONFIG_CRYPTO_CRC32C=m
CONFIG_CRYPTO_CAMELLIA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_AUTHENC=m
CONFIG_CRYPTO_HW=y
-CONFIG_CRYPTO_DEV_PADLOCK=m
-CONFIG_CRYPTO_DEV_PADLOCK_AES=m
-CONFIG_CRYPTO_DEV_PADLOCK_SHA=m
-CONFIG_CRYPTO_DEV_GEODE=m
#
# Library routines
#
CONFIG_BITREVERSE=y
CONFIG_CRC_CCITT=m
-CONFIG_CRC16=y
+CONFIG_CRC16=m
CONFIG_CRC_ITU_T=m
CONFIG_CRC32=y
CONFIG_CRC7=m
-CONFIG_LIBCRC32C=y
-CONFIG_ZLIB_INFLATE=y
+CONFIG_LIBCRC32C=m
+CONFIG_ZLIB_INFLATE=m
CONFIG_ZLIB_DEFLATE=m
+CONFIG_LZO_COMPRESS=m
+CONFIG_LZO_DECOMPRESS=m
+CONFIG_GENERIC_ALLOCATOR=y
+CONFIG_REED_SOLOMON=m
+CONFIG_REED_SOLOMON_DEC16=y
CONFIG_TEXTSEARCH=y
CONFIG_TEXTSEARCH_KMP=m
CONFIG_TEXTSEARCH_BM=m
@@ -3669,3 +3520,5 @@ CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAS_DMA=y
CONFIG_CHECK_SIGNATURE=y
+
+CONFIG_SQUASHFS=n
From vmiklos at frugalware.org Sat Mar 1 14:43:51 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Sat Mar 1 14:43:54 2008
Subject: [Frugalware-git] homepage-ng: Newsletter issue 17
Message-ID: <20080301134351.B7C1A1190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=homepage-ng.git;a=commitdiff;h=b93e6ebe018bf918941d80000ae020e84600ed74
commit b93e6ebe018bf918941d80000ae020e84600ed74
Author: Russell Dickenson
Date: Sat Mar 1 22:34:46 2008 +1000
Newsletter issue 17
diff --git a/frugalware/weeklynews/issue17.html b/frugalware/weeklynews/issue17.html
new file mode 100755
index 0000000..397add4
--- /dev/null
+++ b/frugalware/weeklynews/issue17.html
@@ -0,0 +1,144 @@
+Table of Contents
+
+
+
+Welcome
+
+ The newsletter's aim is to keep you up to date with what's happened recently in the world of the Linux distribution 'Frugalware'.
+
+
+ Features of this issue include:
+
+ - Kalgan is nearly here!
+ - Memory donation - if I recall correctly :)
+ - Frugalware's developers are people too!
+ - Tip - Free some space on your hard drive
+
+
+
+
+Events
+
+ Here's a selection of events which have occurred since the previous newsletter:
+
+
+ -
+
Kalgan is nearly here!
+ Frugalware 0.8 - code-named "Kalgan" - is scheduled to be released on 11 March 2008. If you're "geek" enough you'll set up a cron job to download the ISO(s) as soon they are sync-ed to your prefered mirror.
+
+ -
+
Memory donation - if I recall correctly :)
+ Sebastien Mazzucco ('pizux') recently donated two lots of 512 MB RAM which will be used in the build servers. Many thanks to Sebastien for his kind donation. One of the build servers may be renamed in his honour. :)
+
+ -
+
Kalgan's going to look great (we hope)
+ Masta64 began work some time ago on artwork to be released with Frugalware 0.8 ("Kalgan"). His artwork is nearly finished and work is being done to include it in Kalgan. This includes adapting it to themes for Splashy, KDM, GDM, XFCE. There have been some technical problems but it's expected that these will be be fixed in preparation for Kalgan's release.
+
+ -
+
Czech translation
+ Martin Burda has begun translating various parts of Frugalware into the Czech language. He has completed work on Setup, GFpm, Frugalware Control Center and frugalwareutils. In a recent email message to the developers mailing list, he declared himself to be the "Creative maintainer and chief of Czech section" :-)
+
+ -
+
It may not be news to you but it was to me...
+ I recently discovered that as well as being a Frugalware developer, Michel Hermier ('hermier') is the maintainer of Kopete's IRC plugin. Kopete is the KDE instant messenger client.
+
+
+
+
+ Frugalware's developers are people too!
+ This is a new feature of the newsletter in which various Frugalware developers reveal a little about themselves. The aim is to show that "Frugalware's developers are people too!" I thank the developers for taking the time to answer the questions. There will be one interview per newsletter (until we run out of developers).
+
+ voroskoi
+ This issue's interview is with voroskoi, whose roles in the Frugalware development team include: security advisories and maintenance of e17. Please stand and hum the Hungarian national anthem while you read his interview.
+
+
+ - What's your name?
+ - My name is András Vöröskői, that's Andrew Redstone in English.
+ - What's your IRC nickname?
+ - That's voroskoi. I used to play Counter Strike, then I've used The UnderTaker, itL and Csingacsguk too :)
+ - In what country do you live?
+ - Kesztölc, Hungary. http://www.kesztolc.hu/ This is a small village next to Esztergom.
+ - In what country were you born?
+ - Miskolc, Hungary. http://www.miskolc.hu/
+ - What do you like the most about where you live?
+ - Well, I don't know where I actually live. I live in Miskolc usually because of the university, but I was on passive term this autumn, so I am at home these days. The two places are totally different, but I love them both. I have a lot of friends here and there too. And the pubs are also good enough :)
+ - What do you do for the Frugalware project?
+ - Nowadays almost nothing. I should maintain the stable tree with security fixes, but my real life ate up all my spare time. And of course I have a few packages to maintain in the current tree.
+ - What motivates you to work on Frugalware?
+ - I tried this distribution because it was Hungarian. I was a beginner linux user. Really. I've learnt a lot from the guys on #frugalware and it was fun. I also had a lot of free time those days :)
+ Now creating a new package is not that entertaining, but the quality of our packages is much higher. Frugalware has really good tools to work with, but we lack the manpower. Well, it's a problem in almost every distribution I think. So I started it because I was interested in it and I met some good guys here. I like "working" with them. And satisfied users make me very happy.
+ - What do you do when you're not working on Frugalware?
+ - Nothing useful :) I watch movies, go to pubs or concerts. Something.
+ I have been working in Tesco for four months because of the passive term, but I'll go back to university in February. I study mechanical engineering there. I used to learn IT too, but that was boring.
+ - What's the view from your front door?
+ - There is a mountain, called Pilis and the limestone mine. Looks good, really.
+
+
+
+
+ Tips and tricks
+ Disclaimer - Be aware that the hints & tips provided here have NOT been tested and so come with no warranty.
+
+ -
+
Free some space on your hard drive - by 'shrift' (edited by 'phayz')
+ To free some space, you can delete from your pacman cache those packages which have been replaced by a later version by typing this as root:
+ pacman -Sc
+ To remove ALL packages from pacman's cache, type this as root:
+ pacman -Scc
+
+
+ This section relies on your contributions! If have some tips and tricks that you would like to be shown in the newsletter, please post them on the forums in the Tips and Tricks section!
+
+
+
+Focus On Package(s)
+
+ HomeBank
+ First, let me tell you that the "HomeBank" package doesn't turn your home into a bank. :( It's a personal financial management application much like the proprietary Quicken and Microsoft's Money.
+ According to the web site - "HomeBank is free software. Use it to manage your personal accounts. It is designed to easy to use. Analyse your finances in detail using powerful filtering tools and graphs. ...If you are looking for an easy way manage your accounts then HomeBank should be the software of choice. Take some time to try it out, you won't regret it."
+ Try it out if you you find that you just don't know where all your money goes. Most of us find that we never seem to have quite enough money. Better management of the money you do have is likely to improve your future. If HomeBank doesn't meet your requirements, you might like to try some other open source personal financial management applications - e.g. GnuCash and KMymoney.
+
+
+
+Bug fixes
+
+
+ A list of bugs closed since the previous newsletter is available here.
+
+
+
+
+Security announcements
+
+ Remember - According to the normal support arrangements for Frugalware, when Frugalware 0.8 ("Kalgan") is released, support for the previous release will end. This means that no further security or bug fixes will be released for Frugalware 0.7 ("Sayshell").
+
+
+
+ Here is a list of security issues which have been discovered and fixed in the 0.7 release since the previous newsletter.
+
+
+
+ - FSA371 - openldap: A vulnerability has been reported in OpenLDAP, which can be exploited by malicious users to cause a DoS (Denial of Service). Please upgrade to openldap-2.3.39-1sayshell2.
+ - FSA370 - mplayer: Some vulnerabilities have been reported in MPlayer, which can be exploited by malicious people to compromise a user's system. Please upgrade to mplayer-1.0rc1-9sayshell1.
+
+
+
+
+About the newsletter
+ Author
+ The Frugalware newsletter is written by Russell Dickenson (AKA phayz). Credit for the Frugalware distribution goes to the development team.
+ Translations
+ The newsletter is currently translated into French and Danish. The French translation is provided by the French Frugalware community. The Danish translation is provided by the Danish Frugalware community. Thanks to all those involved in providing and hosting these translations.
+ Release
+ To allow time for review and corrections, each newsletter is written ahead of its release date. Therefore it may not mention events which occured in the few days before its release - e.g. security fixes. To be sure that you've got the very latest information on these topics, go to the appropriate page of the Frugalware web site.
+ Feedback
+ If you have feedback about the Frugalware newsletter - whether good or bad - please provide it via the forums. Your feedback is valuable because we want the newsletter to meet the needs of Frugalware's users.
From vmiklos at frugalware.org Sat Mar 1 14:43:51 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Sat Mar 1 14:43:55 2008
Subject: [Frugalware-git] homepage-ng: Newsletter issue 17
Message-ID: <20080301134351.CE8EB119050F@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=homepage-ng.git;a=commitdiff;h=4352cdd57abd826b46fe73b77ce9fb645cd2a0d4
commit 4352cdd57abd826b46fe73b77ce9fb645cd2a0d4
Author: Russell Dickenson
Date: Sat Mar 1 22:42:43 2008 +1000
Newsletter issue 17
diff --git a/frugalware/xml/news.xml b/frugalware/xml/news.xml
index 75d7282..110a391 100644
--- a/frugalware/xml/news.xml
+++ b/frugalware/xml/news.xml
@@ -17,6 +17,25 @@
+ 90
+ Frugalware Newsletter Issue 17
+ Sat Mar 1 16:30:13 CET 2008
+ phayz
+ 0
+
+ Features of this issue include:
+
+ - Kalgan is nearly here!
+ - Memory donation - if I recall correctly :)
+ - Frugalware's developers are people too!
+ - Tip - Free some space on your hard drive
+
+ You can read it here. We hope you like it!
+ ]]>
+
+
+
89
Frugalware Newsletter Issue 16
Sun Feb 17 16:30:13 CET 2008
From vmiklos at frugalware.org Sat Mar 1 14:57:41 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Sat Mar 1 14:57:43 2008
Subject: [Frugalware-git] setup: hotplug: remove two gettext calls
Message-ID: <20080301135741.C9EE61190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=setup.git;a=commitdiff;h=b67983c06d263eb0c88ec3dfca97bbf3d8e10b04
commit b67983c06d263eb0c88ec3dfca97bbf3d8e10b04
Author: Miklos Vajna
Date: Sat Mar 1 14:56:31 2008 +0100
hotplug: remove two gettext calls
it's no good translating them as they are before the language selection
diff --git a/src/plugins/hotplug.c b/src/plugins/hotplug.c
index c4b23bb..f2cb601 100644
--- a/src/plugins/hotplug.c
+++ b/src/plugins/hotplug.c
@@ -53,10 +53,10 @@ char *desc()
int run(GList **config)
{
- dialog_vars.backtitle=gen_backtitle(_("Detecting hardware"));
+ dialog_vars.backtitle=gen_backtitle("Detecting hardware");
dlg_put_backtitle();
dlg_clear();
- dialog_msgbox(_("Please wait"), _("Activating hardware detection..."),
+ dialog_msgbox("Please wait", "Activating hardware detection...",
0, 0, 0);
// TODO: this is ugly
fw_system("mount -t proc none /proc");
From crazy at frugalware.org Sat Mar 1 15:30:31 2008
From: crazy at frugalware.org (crazy)
Date: Sat Mar 1 15:30:34 2008
Subject: [Frugalware-git] playground: kdebase-4.00.99-0playground4-i686
Message-ID: <20080301143031.E2FE71190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=playground.git;a=commitdiff;h=e87c0038752c66110cdd3b787a251665e488a8b2
commit e87c0038752c66110cdd3b787a251665e488a8b2
Author: crazy
Date: Sat Mar 1 15:26:46 2008 +0100
kdebase-4.00.99-0playground4-i686
* newer snapshot
diff --git a/source/kde4/kdebase/FrugalBuild b/source/kde4/kdebase/FrugalBuild
index e44bf2a..dc4df9a 100644
--- a/source/kde4/kdebase/FrugalBuild
+++ b/source/kde4/kdebase/FrugalBuild
@@ -2,9 +2,9 @@
# Maintainer: crazy
pkgname=kdebase
-kdesvn=778423
+kdesvn=780739
pkgver=4.00.99
-pkgrel=0playground3
+pkgrel=0playground4
pkgdesc="Basic programs for KDE4"
depends=()
makedepends=('libraw1394' 'libusb' 'pciutils' 'pcre' 'libqtnetwork>=4.4.0' 'bzip2' 'qt4-qdbus>=4.4.0' \
@@ -17,7 +17,7 @@ _F_kde4_subpkgs=('dolphin' 'kfind' 'konsole' 'kwrite' 'kappfinder' 'konqueror-ns
Finclude kde4
source=(http://192.168.0.2/.KDE4/$pkgname-${pkgver}_${kdesvn}.tar.bz2)
_F_cd_path="$pkgname-${pkgver}_${kdesvn}"
-sha1sums=('b2ac236fcbd7fc795d2f5228757918789f3ad0ad')
+sha1sums=('649d449ea0219c13900ccb6c34f564783af1c8c6')
# TODO: rename to kdebase-apps
subpkgs=("${_F_kde4_subpkgs[@]}" 'libkonq')
From crazy at frugalware.org Sat Mar 1 15:32:58 2008
From: crazy at frugalware.org (crazy)
Date: Sat Mar 1 15:33:00 2008
Subject: [Frugalware-git]
playground: kdebase-workspace-4.00.99-0playground4-i686
Message-ID: <20080301143258.9A5E11190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=playground.git;a=commitdiff;h=8e77ca12176896296e0d15b3c92b7f40d7e1a341
commit 8e77ca12176896296e0d15b3c92b7f40d7e1a341
Author: crazy
Date: Sat Mar 1 15:32:29 2008 +0100
kdebase-workspace-4.00.99-0playground4-i686
* depends++
diff --git a/source/kde4/kdebase-workspace/FrugalBuild b/source/kde4/kdebase-workspace/FrugalBuild
index 7325381..c61340a 100644
--- a/source/kde4/kdebase-workspace/FrugalBuild
+++ b/source/kde4/kdebase-workspace/FrugalBuild
@@ -9,8 +9,8 @@ pkgdesc="Programs specific for the KDE4 desktop."
depends=('libkde>=4.00.99' 'libqt3support>=4.4.0' 'libqtsvg>=4.4.0' 'libsm' 'libxft' 'libxpm' 'libxcursor' 'strigi' 'xfsprogs-acl' \
'libxtst' 'libpng' 'libxrandr' 'libxinerama' 'libqtuitools>=4.4.0' 'libxxf86vm' 'libdrm' 'libxres' 'lmsensors' 'libxklavier' \
'libxscrnsaver' 'qimageblitz' 'libstrigiqtdbusclient' 'libqtscript>=4.4.0' 'libcaptury' 'libusb' 'libxxf86misc' 'strigi-qt4-gui' \
- 'pciutils' 'libxcomposite' 'bluez-libs' 'libxdamage' 'libxrender' 'libxfixes')
-makedepends=('xorg-server>=1.4.0.90-4' 'libqtsql>=4.4.0' 'libqtopengl>=4.4.0' 'qt4-designer')
+ 'pciutils' 'libxcomposite' 'bluez-libs')
+makedepends=('xorg-server>=1.4.0.90-4' 'libqtsql>=4.4.0' 'libqtopengl>=4.4.0' 'qt4-designer' 'libxdamage' 'libxrender' 'libxfixes')
rodepends=('kde-frugalware>=0.9.0' 'xorg-server>=1.4.0.90-4' 'xsetroot' 'dbus-x11' 'xmessage' 'xrandr>=1.2.2' 'xset' 'xprop' 'xrdb' "$pkgname-libs=$pkgver")
groups=('kde4' 'kde4-minimal')
archs=('i686')
From priyank at frugalware.org Sat Mar 1 15:36:30 2008
From: priyank at frugalware.org (Priyank)
Date: Sat Mar 1 15:36:31 2008
Subject: [Frugalware-git] frugalware-current: gdm-2.20.3-2-i686
Message-ID: <20080301143630.0B6031190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=5d0c7cf62517bbd776d2b4cb13a9aaba978620d0
commit 5d0c7cf62517bbd776d2b4cb13a9aaba978620d0
Author: Priyank
Date: Sat Mar 1 20:01:51 2008 +0530
gdm-2.20.3-2-i686
* Removed gdm-gksu.patch (merged with gdm-gksu_categories.patch)
* Added a patch to fix the Categories for gdmsetup.desktop so that it's displayed in the menu.
* Closes #2704
* Added missing _F_gnome_{iconcache,scrollkeeper,desktop}="y"
* Moved the gdmsetup.desktop to the right place
diff --git a/source/gnome/gdm/FrugalBuild b/source/gnome/gdm/FrugalBuild
index 5c29d5f..9a77091 100644
--- a/source/gnome/gdm/FrugalBuild
+++ b/source/gnome/gdm/FrugalBuild
@@ -3,7 +3,7 @@
pkgname=gdm
pkgver=2.20.3
-pkgrel=1
+pkgrel=2
pkgdesc="GNOME Display Manager"
url="http://www.gnome.org/"
backup=(etc/gdm/custom.conf)
@@ -13,16 +13,19 @@ rodepends=('xsm' 'sessreg' 'gksu' 'xmessage' 'gksu')
makedepends=('intltool' 'gnome-doc-utils')
groups=('gnome' 'gnome-minimal')
archs=('i686' 'x86_64')
-Finclude gnome
+_F_gnome_desktop="y"
+_F_gnome_iconcache="y"
+_F_gnome_scrollkeeper="y"
+Finclude gnome gnome-scriptlet
options=(${options[@]} 'force')
source=(${source[@]} $pkgname-2.20.1-gdmconf.patch \
- $pkgname-gksu.patch \
+ $pkgname-gksu_categories.patch \
fix_reboot_path.patch \
gdm-fix-the-build.patch \
http://ftp.frugalware.org/pub/other/artwork/gdm-theme/GDM-Frugalware-0.7.tar.bz2)
sha1sums=('de66323b890f2e65a33bb72c5937d1c95ee5bd89' \
'bc0209e8700b01e2369a66e93b2c86766ff988fd' \
- '05f42c18c0ce9fedfeda7de980d230b34a574f2c' \
+ '9665399f5ceaee25e5807f08c53456d5ac2a81fa' \
'b602b6805d1d4787e4404827abf3d6f346843317' \
'7c00f8c4501d13368f4a25cf34422108356f8761' \
'b13852bf7ce59df5d02f27b3603e274fba3e074d')
@@ -50,6 +53,12 @@ build() {
# Install our GDM theme.
mv $Fsrcdir/Frugalware $Fdestdir/usr/share/gdm/themes/Frugalware || Fdie
+
+ # Install the Login Window icon in the right place
+ Fmkdir /usr/share/applications
+ Fmv /usr/share/gdm/applications/gdmsetup.desktop /usr/share/applications/gdmsetup.desktop
+
+ Fbuild_gnome_scriptlet
}
# optimization OK
diff --git a/source/gnome/gdm/gdm-gksu.patch b/source/gnome/gdm/gdm-gksu.patch
deleted file mode 100644
index 22e6b4f..0000000
--- a/source/gnome/gdm/gdm-gksu.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff -Naur gdm-2.20.3/gui/gdmsetup.desktop.in.in gdm-2.20.3-p/gui/gdmsetup.desktop.in.in
---- gdm-2.20.3/gui/gdmsetup.desktop.in.in 2008-01-07 20:39:05.000000000 +0100
-+++ gdm-2.20.3-p/gui/gdmsetup.desktop.in.in 2008-01-23 19:03:42.000000000 +0100
-@@ -2,8 +2,8 @@
- Encoding=UTF-8
- _Name=Login Window
- _Comment=Configure GDM login window appearance and behavior
--TryExec=@sbindir@/gdmsetup
--Exec=@sbindir@/gdmsetup
-+TryExec=gksu @sbindir@/gdmsetup
-+Exec=gksu @sbindir@/gdmsetup
- Icon=gdmsetup
- StartupNotify=true
- Terminal=false
diff --git a/source/gnome/gdm/gdm-gksu_categories.patch b/source/gnome/gdm/gdm-gksu_categories.patch
new file mode 100644
index 0000000..c0b2938
--- /dev/null
+++ b/source/gnome/gdm/gdm-gksu_categories.patch
@@ -0,0 +1,19 @@
+diff -Naur gdm-2.20.3/gui/gdmsetup.desktop.in.in gdm-2.20.3.new/gui/gdmsetup.desktop.in.in
+--- gdm-2.20.3/gui/gdmsetup.desktop.in.in 2008-01-08 01:09:05.000000000 +0530
++++ gdm-2.20.3.new/gui/gdmsetup.desktop.in.in 2008-03-01 19:32:38.000000000 +0530
+@@ -2,13 +2,12 @@
+ Encoding=UTF-8
+ _Name=Login Window
+ _Comment=Configure GDM login window appearance and behavior
+-TryExec=@sbindir@/gdmsetup
+-Exec=@sbindir@/gdmsetup
++Exec=gksu @sbindir@/gdmsetup
+ Icon=gdmsetup
+ StartupNotify=true
+ Terminal=false
+ Type=Application
+-Categories=GNOME;GTK;Settings;System;
++Categories=Application;GTK;Settings;X-GNOME-SystemSettings;
+ X-GNOME-Bugzilla-Bugzilla=GNOME
+ X-GNOME-Bugzilla-Product=gdm
+ X-GNOME-Bugzilla-Component=general
From priyank at frugalware.org Sat Mar 1 15:50:32 2008
From: priyank at frugalware.org (Priyank)
Date: Sat Mar 1 15:50:35 2008
Subject: [Frugalware-git] gfpm: re-initialize libpacman before re-populating
dblist
Message-ID: <20080301145032.6F1FE1190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=fd4957dc4fc7fd20c7a735649d191306e282a44f
commit fd4957dc4fc7fd20c7a735649d191306e282a44f
Author: Priyank
Date: Sat Mar 1 20:19:53 2008 +0530
re-initialize libpacman before re-populating dblist
diff --git a/src/gfpm-db.c b/src/gfpm-db.c
index c7e580d..165d730 100644
--- a/src/gfpm-db.c
+++ b/src/gfpm-db.c
@@ -85,7 +85,6 @@ static void
_db_callback (char *section, PM_DB *db)
{
dblist = g_list_append (dblist, db);
-
return;
}
@@ -94,10 +93,13 @@ gfpm_db_populate_repolist (void)
{
if (dblist != NULL)
{
- g_list_free (dblist);
+ /* if the dblist is already populated, the repos are already registered.
+ Hence, to repopulate the dblist, we need to release and re-initialize
+ libpacman or else it won't work */
+ pacman_release ();
+ pacman_initialize ("/");
dblist = NULL;
}
-
/* get the list of usable repositories */
if (pacman_parse_config (CFG_FILE, _db_callback, "") == -1)
{
diff --git a/src/gfpm-interface.c b/src/gfpm-interface.c
index a24f443..125a40e 100644
--- a/src/gfpm-interface.c
+++ b/src/gfpm-interface.c
@@ -117,13 +117,11 @@ gfpm_populate_repos_combobox (GtkComboBox *combo)
if (init == FALSE)
{
- g_print ("im here\n");
store = gtk_list_store_new (1, G_TYPE_STRING);
gtk_combo_box_set_model (GTK_COMBO_BOX(combo), GTK_TREE_MODEL(store));
renderer = gtk_cell_renderer_text_new ();
gtk_cell_layout_pack_start (GTK_CELL_LAYOUT(combo), renderer, TRUE);
gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT(combo), renderer, "text", 0, NULL);
- g_print ("im here\n");
}
else
{
@@ -132,7 +130,6 @@ gfpm_populate_repos_combobox (GtkComboBox *combo)
{
gtk_list_store_clear (store);
}
-
}
rlist = gfpm_db_get_repolist ();
diff --git a/src/gfpm-repomanager.c b/src/gfpm-repomanager.c
index 9b21b9a..029c381 100644
--- a/src/gfpm-repomanager.c
+++ b/src/gfpm-repomanager.c
@@ -1127,7 +1127,9 @@ cb_gfpm_repomgr_btndel_clicked (GtkButton *button, gpointer data)
{
gtk_tree_model_get (model, &iter, 2, &repo, -1);
if (gfpm_question(_("Confirmation"), _("Are you sure you want to delete this repository ?")) == GTK_RESPONSE_YES)
+ {
gfpm_repomgr_delete_repo (repo);
+ }
g_free (repo);
}
From priyank at frugalware.org Sat Mar 1 15:51:13 2008
From: priyank at frugalware.org (Priyank)
Date: Sat Mar 1 15:51:15 2008
Subject: [Frugalware-git] gfpm: Bump version to 1.1.0 (Callisto)
Message-ID: <20080301145113.13B4D1190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=882adc798f17809df781fb6e7e440d923ab96a0c
commit 882adc798f17809df781fb6e7e440d923ab96a0c
Author: Priyank
Date: Sat Mar 1 20:20:35 2008 +0530
Bump version to 1.1.0 (Callisto)
diff --git a/configure.ac b/configure.ac
index ccd24ca..6225e54 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,8 +1,8 @@
ENV_CFLAGS=$CFLAGS
AC_PREREQ(2.59)
-AC_INIT([Gfpm], 1.0.5.1, [priyankmg@gmail.com], gfpm)
-AC_DEFINE_UNQUOTED([GFPM_RELEASE_NAME], ["Triton"], [Release codenames])
+AC_INIT([Gfpm], 1.1.0, [priyankmg@gmail.com], gfpm)
+AC_DEFINE_UNQUOTED([GFPM_RELEASE_NAME], ["Callisto"], [Release codenames])
AC_CONFIG_SRCDIR([src/gfpm.c])
AC_LANG(C)
AM_CONFIG_HEADER(config.h)
From crazy at frugalware.org Sat Mar 1 15:54:03 2008
From: crazy at frugalware.org (crazy)
Date: Sat Mar 1 15:54:04 2008
Subject: [Frugalware-git] playground: kdeadmin-4.00.99-0playground4-i686
Message-ID: <20080301145403.30AD61190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=playground.git;a=commitdiff;h=c4b7643cbf71ead8f61721adb1b4f36060ac5f94
commit c4b7643cbf71ead8f61721adb1b4f36060ac5f94
Author: crazy
Date: Sat Mar 1 15:51:05 2008 +0100
kdeadmin-4.00.99-0playground4-i686
* newer snapshot
diff --git a/source/kde4/kdeadmin/FrugalBuild b/source/kde4/kdeadmin/FrugalBuild
index d080e2f..95e7cec 100644
--- a/source/kde4/kdeadmin/FrugalBuild
+++ b/source/kde4/kdeadmin/FrugalBuild
@@ -2,9 +2,9 @@
# Maintainer: crazy
pkgname=kdeadmin
-kdesvn=778465
+kdesvn=780678
pkgver=4.00.99
-pkgrel=0playground3
+pkgrel=0playground4
pkgdesc="KDE Administration Programs"
depends=('libkde>=4.00.99' 'strigi' 'xfsprogs-acl' 'libqt3support>=4.4.0' 'libqtsvg>=4.4.0' 'libsm' 'libxft' 'libxpm' 'libxtst' \
'libxcursor' 'libstdc++' 'libpng' 'libxi' 'libxrandr' 'libxinerama' 'cyrus-sasl' 'kdepimlibs>=4.00.99')
@@ -16,7 +16,7 @@ _F_cmake_confopts="-DBUILD_kpackage:BOOL=OFF -DBUILD_knetworkconf:BOOL=OFF"
Finclude kde4
source=(http://192.168.0.2/.KDE4/$pkgname-${pkgver}_${kdesvn}.tar.bz2)
_F_cd_path="$pkgname-${pkgver}_${kdesvn}"
-sha1sums=('57bbff4742b966954d854cccdc391aa34a053841')
+sha1sums=('240147184c42cdea9b4375a8397d1b0694201c97')
## TODO: split
build()
From janny at frugalware.org Sat Mar 1 16:00:29 2008
From: janny at frugalware.org (janny)
Date: Sat Mar 1 16:00:40 2008
Subject: [Frugalware-git] fwlive: squashfs-3.3-3-i686
Message-ID: <20080301150029.1E8001190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=666c1173cd5f197be35112beba85b077c3a809a4
commit 666c1173cd5f197be35112beba85b077c3a809a4
Author: janny
Date: Sat Mar 1 15:59:37 2008 +0100
squashfs-3.3-3-i686
* release bump with new kernel
diff --git a/source/apps-extra/squashfs/FrugalBuild b/source/apps-extra/squashfs/FrugalBuild
index 7e82bd9..138b83d 100644
--- a/source/apps-extra/squashfs/FrugalBuild
+++ b/source/apps-extra/squashfs/FrugalBuild
@@ -2,52 +2,65 @@
# Maintainer: VMiklos
pkgname=squashfs
-pkgver=3.2_r2
-kver=2.6.22-1
-kdir=/lib/modules/${kver/-/-fw}/kernel/fs/squashfs
-pkgrel=5
+pkgver=3.3
+lzmaver=457
+kver=2.6.24-3
+kdir=/lib/modules/${kver/-/-fw}/kernel/fs/${pkgname}
+pkgrel=3
+url="http://www.squashfs-lzma.org"
pkgdesc="A highly compressed read-only filesystem for Linux."
depends=('zlib' "kernel-fwlive=$kver")
makedepends=("kernel-fwlive-source=$kver")
groups=('apps-extra')
archs=('i686' 'x86_64')
-#_F_kernel_name="-fwlive"
-Finclude sourceforge
up2date="lynx -dump http://sourceforge.net/project/showfiles.php?group_id=63835|grep squashfs[0-9]|sed 's/[^]]*][^]]*]squashfs\([^ ]*\) .*/\1/;s/-/_/g;q'"
-source=(${source/squashfs-/squashfs} \
- http://$_F_sourceforge_mirror.dl.sourceforge.net/sevenzip/lzma443.tar.bz2 \
- ftp://ftp.slax.org/source/slax/kernel/2.6.21.5/src-core/patches/squashfs/sqlzma.tar.bz2 \
- mksquashfs.quiet.patch)
+source=(${url}/dl/lzma${lzmaver}.tar.bz2 \
+ ${url}/dl/${pkgname}3.3.tar.gz \
+ ${url}/dl/sqlzma3.3-${lzmaver}.tar.bz2 \
+ http://frugalware.org/~janny/patchs/kernel/${kver/-*/}/${pkgname}-cvsfix.patch \
+ http://frugalware.org/~janny/patchs/kernel/${kver/-*/}/sqlzma1-449.patch \
+ http://frugalware.org/~janny/patchs/kernel/${kver/-*/}/sqlzma2u-3.3.patch \
+ http://frugalware.org/~janny/patchs/kernel/${kver/-*/}/mksquashfs.quiet.patch )
options=('scriptlet')
+sha1sums=('bd1b46ba42fe1ad7351a39c131e8b7657e909001' \
+ 'e610ee21fb910606615cd158eda3c650af8a61cc' \
+ 'adec846e3b3b57337ccddbc8aafab3da0b049753' \
+ '17da1cd356cd50a1c1cefb86670437abcdb83986' \
+ '4b89853ff744e02f970c667bc374ce4fa5400d08' \
+ '5620c20b72a039eae12fcc1ad6f28bc1b381c8a9' \
+ '11cbb2475fe34e94bc869ae33e52c343ee497977')
build()
{
- rm -rf lzma443
- mkdir -p lzma443 || Fdie
- tar -C lzma443 -xf lzma443.tar.bz2 || Fdie
- rm sqlzma2k-3.2-r2.patch
- patch -p0
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=29c5eaffeeaa571d44ccc56cc76766bcb4e1f985
commit 29c5eaffeeaa571d44ccc56cc76766bcb4e1f985
Author: Priyank
Date: Sat Mar 1 20:32:08 2008 +0530
updates for 1.1.0
diff --git a/NEWS b/NEWS
index 33bc293..6c4f7c7 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,19 @@
VERSION DESCRIPTION
---------------------------------------------------------------------------------------------------------
+1.1.0 Callisto (2008-03-01) - Added a Repository Manager which allows users to configure their package repositories.
+ Added a Log Viewer which displays the pacman-g2 system log.
+ Added a new splash screen (Thanks to masta64 for the artwork)
+ New and Redesigned package search
+ BUGFIX (#2812): Fixed tooltip for "Install from File" toolbar button
+ BUGFIX (#2813): Don't try to remove a NULL package
+ BUGFIX: Fixed a bug at startup where the default repository was not set to frugalware-current
+ or frugalware
+ BUGFIX: Fixed a segfault in the Search function. This occured only when the repository being searched
+ was same as the current active repo)
+ Minor enhancements in "Install From File" Dialog
+ Many more minor fixes
+ Translation updates: hu_HU, es_ES, da_DK, fr_FR, sv_SE
+ New Translation: cs_CZ
1.0.5.1 - Fix a bug where gfpm failed to optimize the package database as the location
of the pacman-g2 database changed to /var/lib/pacman-g2
1.0.5 - Gfpm should now parse /etc/pacman-g2.conf instead of /etc/pacman.conf
From vmiklos at frugalware.org Sat Mar 1 16:07:13 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Sat Mar 1 16:07:15 2008
Subject: [Frugalware-git] frugalware-current: kernel-source.install: respect
_F_kernel_uname
Message-ID: <20080301150713.F084A1190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=dceae2e57b8834ffc85ef188d6866af82f880b3e
commit dceae2e57b8834ffc85ef188d6866af82f880b3e
Author: Miklos Vajna
Date: Sat Mar 1 16:07:02 2008 +0100
kernel-source.install: respect _F_kernel_uname
diff --git a/source/include/kernel-source.install b/source/include/kernel-source.install
index 38f94f8..fba56c5 100644
--- a/source/include/kernel-source.install
+++ b/source/include/kernel-source.install
@@ -1,6 +1,7 @@
post_install()
{
ver=$_F_kernel_ver-$_F_kernel_rel
+ uname=$_F_kernel_uname
if [ "`vercmp 2.6.24 $_F_kernel_ver`" -le 0 ]; then
arch |grep -q 'i.86' && OLD_KARCH=i386 || OLD_KARCH=`arch`
@@ -9,11 +10,11 @@ post_install()
arch |grep -q 'i.86' && KARCH=i386 || KARCH=`arch`
fi
- if [ -e /usr/src/linux-${ver/-*}$_F_kernel_name-fw${ver#*-}/.config ]; then
- rm -f /usr/src/linux-${ver/-*}$_F_kernel_name-fw${ver#*-}/config
+ if [ -e /usr/src/linux-$_F_kernel_uname/.config ]; then
+ rm -f /usr/src/linux-$_F_kernel_uname/config
else
- mv /usr/src/linux-${ver/-*}$_F_kernel_name-fw${ver#*-}/config \
- /usr/src/linux-${ver/-*}$_F_kernel_name-fw${ver#*-}/.config
+ mv /usr/src/linux-$_F_kernel_uname/config \
+ /usr/src/linux-$_F_kernel_uname/.config
fi
# architecture specific tasks
cd /usr/src/linux
From hermier at frugalware.org Sat Mar 1 16:26:20 2008
From: hermier at frugalware.org (Michel Hermier)
Date: Sat Mar 1 16:26:23 2008
Subject: [Frugalware-git] homepage-ng: news_fr.xml
Message-ID: <20080301152620.7CDB11190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=homepage-ng.git;a=commitdiff;h=f354c206e42f260efe04bc6dc2220106484d174c
commit f354c206e42f260efe04bc6dc2220106484d174c
Author: Michel Hermier
Date: Sat Mar 1 16:25:34 2008 +0100
news_fr.xml
* Add newsletter 17 news.
diff --git a/frugalware/xml/news_fr.xml b/frugalware/xml/news_fr.xml
index 61ab9cd..6886588 100644
--- a/frugalware/xml/news_fr.xml
+++ b/frugalware/xml/news_fr.xml
@@ -17,6 +17,25 @@
+ 90
+ Lettre d'information Frugalware numéro 17
+ Sat Mar 1 16:30:13 CET 2008
+ phayz
+ 0
+
+ Dans ce numéro:
+
+ - Kalgan est presque là!
+ - Don de mémoire - si je me rapelle bien :)
+ - Les dévellopeurs de Frugalware sont des êtres humain aussi!
+ - Astuce - Libérez un peut d'espace sur vos disques dur
+
+ Vous pouvez la lire ici (anglais). Nous espérons que vous l'apprécierez!
+ ]]>
+
+
+
89
Lettre d'information Frugalware numéro 16
Sun Feb 17 16:30:13 CET 2008
From vmiklos at frugalware.org Sat Mar 1 16:26:27 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Sat Mar 1 16:26:29 2008
Subject: [Frugalware-git] homepage-ng: issue17: correct date
Message-ID: <20080301152627.3A2E21190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=homepage-ng.git;a=commitdiff;h=2d8298eebadbfc923c79fb6dd9a6e8e4360618af
commit 2d8298eebadbfc923c79fb6dd9a6e8e4360618af
Author: Miklos Vajna
Date: Sat Mar 1 16:26:17 2008 +0100
issue17: correct date
diff --git a/frugalware/xml/news.xml b/frugalware/xml/news.xml
index 110a391..3f7087c 100644
--- a/frugalware/xml/news.xml
+++ b/frugalware/xml/news.xml
@@ -19,7 +19,7 @@
90
Frugalware Newsletter Issue 17
- Sat Mar 1 16:30:13 CET 2008
+ Sat Mar 1 13:42:43 CET 2008
phayz
0
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=1d5ec432e821247a6b405c736f5f9a2111fb1fcd
commit 1d5ec432e821247a6b405c736f5f9a2111fb1fcd
Author: crazy
Date: Sat Mar 1 16:35:16 2008 +0100
aria2-0.12.1-1-i686
* Version bump to latest bug fix release
* of the 0.12* series , current one is 0.13* that is
* for 0.9 :)
diff --git a/source/network-extra/aria2/FrugalBuild b/source/network-extra/aria2/FrugalBuild
index 67fcece..e409299 100644
--- a/source/network-extra/aria2/FrugalBuild
+++ b/source/network-extra/aria2/FrugalBuild
@@ -2,7 +2,7 @@
# Maintainer: crazy
pkgname=aria2
-pkgver=0.12.0
+pkgver=0.12.1
pkgrel=1
pkgdesc="aria2 is an utility for downloading files."
depends=('openssl' 'libstdc++' 'cppunit' 'c-ares>=1.5.1')
@@ -13,7 +13,7 @@ archs=('i686' 'x86_64')
_F_sourceforge_prefix="$pkgname-"
_F_sourceforge_ext=".tar.bz2"
Finclude sourceforge
-sha1sums=('138380000be0e5df2e3ee4cbb39c0f872cdb195b')
+sha1sums=('882a22818db2bdb808c6336c20a48a32a8d89ecc')
build()
{
From crazy at frugalware.org Sat Mar 1 16:45:30 2008
From: crazy at frugalware.org (crazy)
Date: Sat Mar 1 16:45:36 2008
Subject: [Frugalware-git] frugalware-current: djvulibre-3.5.20_5-1-i686
Message-ID: <20080301154530.766A91190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=7d1596d1fb28985ca3885f33e040849fac3d40a0
commit 7d1596d1fb28985ca3885f33e040849fac3d40a0
Author: crazy
Date: Sat Mar 1 16:44:17 2008 +0100
djvulibre-3.5.20_5-1-i686
* Version bump to patchlevel '5'
diff --git a/source/xlib/djvulibre/FrugalBuild b/source/xlib/djvulibre/FrugalBuild
index b4d0a73..6cec9a2 100644
--- a/source/xlib/djvulibre/FrugalBuild
+++ b/source/xlib/djvulibre/FrugalBuild
@@ -2,7 +2,7 @@
# Maintainer: crazy
pkgname=djvulibre
-pkgver=3.5.20_2
+pkgver=3.5.20_5
pkgrel=1
pkgdesc="DjVu is a web-centric format for distributing documents and images."
depends=('libtiff' 'libjpeg')
@@ -58,7 +58,7 @@ build()
Fsplit djview usr/share/djvu/djview3
}
-sha1sums=('0a726b7f1793262372b3e0fe30f398b0c7d48985' \
+sha1sums=('225ace94e37323d2e3a1c081b28a5b419a68c2c2' \
'cc8bd12bc51a616a322819bb033c43dd489fff4e')
# optimization OK
From crazy at frugalware.org Sat Mar 1 16:50:02 2008
From: crazy at frugalware.org (crazy)
Date: Sat Mar 1 16:50:04 2008
Subject: [Frugalware-git] frugalware-current: libxext-1.0.4-1-i686
Message-ID: <20080301155002.151291190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=2e17bb38daec01032eb1d791e3f79a16e994696e
commit 2e17bb38daec01032eb1d791e3f79a16e994696e
Author: crazy
Date: Sat Mar 1 16:48:54 2008 +0100
libxext-1.0.4-1-i686
* Version bump
* bugfix release , mostly Coverity fixes
diff --git a/source/x11/libxext/FrugalBuild b/source/x11/libxext/FrugalBuild
index 5ff22a5..c297c36 100644
--- a/source/x11/libxext/FrugalBuild
+++ b/source/x11/libxext/FrugalBuild
@@ -3,7 +3,7 @@
pkgname=libxext
_F_xorg_name=libXext
-pkgver=1.0.3
+pkgver=1.0.4
pkgrel=1
pkgdesc="Misc X Extension Library"
url="http://xorg.freedesktop.org"
@@ -11,9 +11,8 @@ groups=('x11' 'xorg-core' 'xorg-libs')
archs=('i686' 'x86_64')
depends=('libx11>=1.1.3' 'xextproto')
makedepends=('pkgconfig' 'xproto>=7.0.11' 'inputproto>=1.4.2.1')
-_F_xorg_ind=1
Finclude xorg
-sha1sums=('341796c502d0076912b090f0ac6a764501800684')
+sha1sums=('dbadb6b71d303f75980ea66ef76096a9d17243c4')
# optimization OK
From crazy at frugalware.org Sat Mar 1 16:55:38 2008
From: crazy at frugalware.org (crazy)
Date: Sat Mar 1 16:55:40 2008
Subject: [Frugalware-git] frugalware-current: xterm-233-1-i686
Message-ID: <20080301155538.B407C1190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=b99e4ba6f4eb72f42e4d8e51421661f7073d5f95
commit b99e4ba6f4eb72f42e4d8e51421661f7073d5f95
Author: crazy
Date: Sat Mar 1 16:55:03 2008 +0100
xterm-233-1-i686
* Version bump
diff --git a/source/x11/xterm/FrugalBuild b/source/x11/xterm/FrugalBuild
index b12a62d..567cce2 100644
--- a/source/x11/xterm/FrugalBuild
+++ b/source/x11/xterm/FrugalBuild
@@ -2,7 +2,7 @@
# Maintainer: Christian Hamar alias krix
pkgname=xterm
-pkgver=232
+pkgver=233
pkgrel=1
pkgdesc="X terminal emulator"
url="http://dickey.his.com/xterm/"
@@ -42,5 +42,5 @@ build() {
Fbuild_gnome_scriptlet
}
-sha1sums=('b3085cebc41399c8ce20fe0ba373d5ea4fdcb847')
+sha1sums=('ca3f0ed80c4063920555e69e18c194a3da2f2119')
# optimization OK
From crazy at frugalware.org Sat Mar 1 16:58:43 2008
From: crazy at frugalware.org (crazy)
Date: Sat Mar 1 16:58:45 2008
Subject: [Frugalware-git]
frugalware-current: xf86-video-trident-1.2.4-1-i686
Message-ID: <20080301155843.C354B1190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=d0d89d7685ed8089515d766952780c137b02372f
commit d0d89d7685ed8089515d766952780c137b02372f
Author: crazy
Date: Sat Mar 1 16:58:03 2008 +0100
xf86-video-trident-1.2.4-1-i686
* Version bump
* finally fixed for newer xorg-server =)
diff --git a/source/x11/xf86-video-trident/FrugalBuild b/source/x11/xf86-video-trident/FrugalBuild
index e5f8151..50cd9ed 100644
--- a/source/x11/xf86-video-trident/FrugalBuild
+++ b/source/x11/xf86-video-trident/FrugalBuild
@@ -2,8 +2,8 @@
# Maintainer: Christian Hamar alias krix
pkgname=xf86-video-trident
-pkgver=1.2.3
-pkgrel=3
+pkgver=1.2.4
+pkgrel=1
pkgdesc="X.Org video driver for trident cards"
url="http://xorg.freedesktop.org"
groups=('x11' 'xorg-core' 'xorg-drivers')
@@ -12,5 +12,5 @@ depends=('xorg-server>=1.4.0.90')
makedepends=('randrproto' 'renderproto' 'xf86dgaproto' 'videoproto')
Finclude xorg
-sha1sums=('d75ca064bee6817209266fc85bbcfac671ed0642')
+sha1sums=('ee37fdd260e0ad6701c72fb5db423238a19f9bae')
# optimization OK
From janny at frugalware.org Sat Mar 1 17:15:47 2008
From: janny at frugalware.org (janny)
Date: Sat Mar 1 17:15:50 2008
Subject: [Frugalware-git] fwlive: aufs-20070228-1-i686
Message-ID: <20080301161547.362011190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=30c309375fbeea51bb881e30661706641a069abd
commit 30c309375fbeea51bb881e30661706641a069abd
Author: janny
Date: Sat Mar 1 17:14:51 2008 +0100
aufs-20070228-1-i686
* version bump
* new source
diff --git a/source/apps-extra/aufs/FrugalBuild b/source/apps-extra/aufs/FrugalBuild
index a20fb44..2d6e982 100644
--- a/source/apps-extra/aufs/FrugalBuild
+++ b/source/apps-extra/aufs/FrugalBuild
@@ -2,28 +2,32 @@
# Maintainer: Janny
pkgname=aufs
-pkgver=cvs20070715
-kver=2.6.22-1
+pkgver=20070228
+kver=2.6.24-3
pkgrel=1
pkgdesc="Aufs -- Another Unionfs"
depends=('zlib' "kernel-fwlive=$kver")
makedepends=("kernel-fwlive-source=$kver")
groups=('apps-extra')
archs=('i686' 'x86_64')
-#_F_kernel_name="-fwlive"
Finclude sourceforge
up2date=$pkgver
-source=(http://ftp.frugalware.org/pub/other/sources/aufs/$pkgname-$pkgver.tar.bz2)
+#source=(http://ftp.frugalware.org/pub/other/sources/aufs/$pkgname-$pkgver.tar.bz2)
+source=(http://frugalware.org/~janny/source_pkgs/aufs.tar.gz)
options=('force' 'scriptlet')
-sha1sums=('ce84034584a3a966a0041bf4cc6add7d0aaeac55')
+sha1sums=('8193a36eb28ab559ecda408456e585aad2a207ad')
build()
{
- Fcd
- cat local.mk | grep -v "^CONFIG_AUFS_DEBUG =" \
- | grep -v "^CONFIG_AUFS_COMPAT =" \
- | sed "s/#CONFIG_AUFS_KSIZE_PATCH/CONFIG_AUFS_KSIZE_PATCH/" \
- | sed "s/#CONFIG_AUFS_LHASH_PATCH/CONFIG_AUFS_LHASH_PATCH/" >Makefile
+ Fcd $pkgname
+ cat local.mk \
+ | grep -v "^CONFIG_AUFS_DEBUG =" \
+ | grep -v "^CONFIG_AUFS_BRANCH_MAX_127 =" \
+ | sed -r "s/KDIR = .*/KDIR = \/usr\/src\/linux-${kver/-/-fw}\//" \
+ | sed "s/CONFIG_AUFS_BRANCH_MAX_1023 =.*/CONFIG_AUFS_BRANCH_MAX_1023 = y/" \
+ | sed "s/CONFIG_AUFS_SPLICE_PATCH =.*/CONFIG_AUFS_SPLICE_PATCH = y/" \
+ | sed "s/CONFIG_AUFS_SEC_PERM_PATCH =.*/CONFIG_AUFS_SEC_PERM_PATCH = y/" \
+ | sed "s/CONFIG_AUFS_WORKAROUND_FUSE =.*/CONFIG_AUFS_WORKAROUND_FUSE = y/" >Makefile
make KDIR=/usr/src/linux
Ffilerel /lib/modules/${kver/-/-fw}/kernel/fs/aufs/aufs.ko
}
From crazy at frugalware.org Sat Mar 1 17:30:13 2008
From: crazy at frugalware.org (crazy)
Date: Sat Mar 1 17:30:14 2008
Subject: [Frugalware-git]
frugalware-current: libopensync-plugin-kdepim-0.22-1-i686
Message-ID: <20080301163013.6F5F6119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=95256af383e17182831c243cfeb796d940224239
commit 95256af383e17182831c243cfeb796d940224239
Author: crazy
Date: Sat Mar 1 17:29:13 2008 +0100
libopensync-plugin-kdepim-0.22-1-i686
* New package
* I forgot to push this one after kde3 updated =)
* Ok @ vmiklos
diff --git a/source/kde-extra/libopensync-plugin-kdepim/FrugalBuild b/source/kde-extra/libopensync-plugin-kdepim/FrugalBuild
new file mode 100644
index 0000000..de0310e
--- /dev/null
+++ b/source/kde-extra/libopensync-plugin-kdepim/FrugalBuild
@@ -0,0 +1,17 @@
+# Compiling Time: 0.17 SBU
+# Maintainer: crazy
+
+pkgname=libopensync-plugin-kdepim
+pkgver=0.22
+pkgrel=1
+pkgdesc="file-sync plugin for opensync"
+url="http://www.opensync.org"
+depends=('libopensync' 'kdepim>=3.5.9')
+groups=('kde-extra')
+archs=('i686' 'x86_64')
+options=('scriptlet')
+up2date="lynx -dump 'http://www.opensync.org/wiki/download'|grep -om1 'libopensync-plugin-kdepim-[0-9]\(.*\).tar.bz2$'|Flasttarbz2"
+source=($url/download/releases/$pkgver/$pkgname-$pkgver.tar.bz2)
+sha1sums=('591fa5ebdaa87bb75fe557156bb09d8bbffd2ebd')
+
+# optimization OK
From priyank at frugalware.org Sat Mar 1 17:44:49 2008
From: priyank at frugalware.org (Priyank)
Date: Sat Mar 1 17:44:51 2008
Subject: [Frugalware-git] frugalware-current: hardinfo-0.4.2.3-1-i686
Message-ID: <20080301164449.A4656119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=c66a570abdbd583167477631812e900d299ac682
commit c66a570abdbd583167477631812e900d299ac682
Author: Priyank
Date: Sat Mar 1 22:11:29 2008 +0530
hardinfo-0.4.2.3-1-i686
* Version bump
* Added a patch to fix broken CFLAGS
* Added gnutls to depends
* Closes #2826, #2441
* Added missing _F_gnome_desktop
* build cleanup. New maintainer.
diff --git a/source/gnome-extra/hardinfo/FrugalBuild b/source/gnome-extra/hardinfo/FrugalBuild
index f8ff2b1..eb59112 100644
--- a/source/gnome-extra/hardinfo/FrugalBuild
+++ b/source/gnome-extra/hardinfo/FrugalBuild
@@ -1,32 +1,21 @@
-# Compiling Time: 0.26 SBU
-# Maintainer: AlexExtreme
+# Compiling Time: 0.02 SBU
+# Maintainer: Priyank Gosalia
# Contributor: Devil505
pkgname=hardinfo
-pkgver=0.4.2.2
-pkgrel=2
+pkgver=0.4.2.3
+pkgrel=1
pkgdesc="A system information and benchmark tool."
_F_berlios_ext=".tar.bz2"
-Finclude berlios
-source=($source frugalware.patch backport_fixes.patch)
-options=('scriptlet')
-depends=('gtk+2' 'libsoup' 'pciutils')
+_F_gnome_desktop="y"
+Finclude berlios gnome-scriptlet
+source=($source frugalware.patch hardinfo-cflags.diff)
+options=('genscriptlet')
+depends=('gtk+2' 'libsoup' 'pciutils' 'gnutls')
groups=('gnome-extra')
archs=('i686' 'x86_64')
-sha1sums=('e3ec42cdb5ee03b002aa071d418f951579998408' \
+sha1sums=('b76e332dc4dd173a1afed3c3da292f85e9bbfe65' \
'18894bbc8fb42655660e700543adb04db5568308' \
- 'e5e6fcc602aede6f28fbdde0ea5456bc833601e6')
+ '383a03bdd663335f1f9639294c5f0e69a86511bc')
-build()
-{
- Fcd
- Fpatchall
- Fmake
- Fmakeinstall
- # 'workaround' bug #2441 for 0.7
- Fmv usr/bin/hardinfo usr/bin/hardinfo.bin
- echo '#!/bin/sh' >$Fdestdir/usr/bin/hardinfo
- echo 'G_SLICE=always-malloc /usr/bin/hardinfo.bin' \
- >$Fdestdir/usr/bin/hardinfo
- chmod 0755 $Fdestdir/usr/bin/hardinfo || Fdie
-}
+# optimization OK
diff --git a/source/gnome-extra/hardinfo/backport_fixes.patch b/source/gnome-extra/hardinfo/backport_fixes.patch
deleted file mode 100644
index 0613b5e..0000000
--- a/source/gnome-extra/hardinfo/backport_fixes.patch
+++ /dev/null
@@ -1,369 +0,0 @@
-Index: hardinfo2/hardinfo.h
-===================================================================
---- hardinfo2/hardinfo.h (Revision 149)
-+++ hardinfo2/hardinfo.h (Revision 160)
-@@ -98,7 +98,9 @@
-
- gchar *h_strdup_cprintf(const gchar *format, gchar *source, ...);
- gchar *h_strconcat(gchar *string1, ...);
-+void h_hash_table_remove_all (GHashTable *hash_table);
-
-+
- void module_entry_scan_all_except(ModuleEntry *entries, gint except_entry);
- void module_entry_scan_all(ModuleEntry *entries);
- void module_entry_reload(ShellModuleEntry *module_entry);
-Index: hardinfo2/configure
-===================================================================
---- hardinfo2/configure (Revision 149)
-+++ hardinfo2/configure (Revision 160)
-@@ -167,7 +167,7 @@
- # --------------------------------------------------------------------------
-
- if [ $SOUP -eq -1 ]; then
-- echo "Disabling libsoup support. (Network Manager won't be available.)"
-+ echo "Disabling libsoup support. (Network Updater won't be available.)"
- fi
-
- # --------------------------------------------------------------------------
-Index: hardinfo2/computer.h
-===================================================================
---- hardinfo2/computer.h (Revision 149)
-+++ hardinfo2/computer.h (Revision 160)
-@@ -34,6 +34,7 @@
- { DB_PREFIX "SuSE-release", "suse" },
- { DB_PREFIX "sun-release", "sun" },
- { DB_PREFIX "zenwalk-version", "zen" },
-+ { DB_PREFIX "puppyversion", "ppy" },
- /*
- * RedHat must be the *last* one to be checked, since
- * some distros (like Mandrake) includes a redhat-relase
-Index: hardinfo2/syncmanager.c
-===================================================================
---- hardinfo2/syncmanager.c (Revision 149)
-+++ hardinfo2/syncmanager.c (Revision 160)
-@@ -110,7 +110,7 @@
- {
- #ifndef HAS_LIBSOUP
- g_warning
-- ("HardInfo was compiled without libsoup support. (Network Manager requires it.)");
-+ ("HardInfo was compiled without libsoup support. (Network Updater requires it.)");
- #else /* !HAS_LIBSOUP */
- SyncDialog *sd = sync_dialog_new();
-
-Index: hardinfo2/util.c
-===================================================================
---- hardinfo2/util.c (Revision 149)
-+++ hardinfo2/util.c (Revision 160)
-@@ -1041,3 +1041,16 @@
-
- return concat;
- }
-+
-+static gboolean h_hash_table_remove_all_true(gpointer key, gpointer data, gpointer user_data)
-+{
-+ return TRUE;
-+}
-+
-+void
-+h_hash_table_remove_all(GHashTable *hash_table)
-+{
-+ g_hash_table_foreach_remove(hash_table,
-+ h_hash_table_remove_all_true,
-+ NULL);
-+}
-Index: hardinfo2/devices.c
-===================================================================
---- hardinfo2/devices.c (Revision 149)
-+++ hardinfo2/devices.c (Revision 160)
-@@ -23,6 +23,7 @@
- #include
- #include
- #include
-+#include
-
- #include
- #include
-@@ -346,8 +347,20 @@
-
- void hi_module_init(void)
- {
-- moreinfo =
-- g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free);
-+ if (!g_file_test("/usr/share/misc/pci.ids", G_FILE_TEST_EXISTS)) {
-+ static SyncEntry se[] = {
-+ {
-+ .fancy_name = "Update PCI ID listing",
-+ .name = "GetPCIIds",
-+ .save_to = "pci.ids",
-+ .get_data = NULL
-+ }
-+ };
-+
-+ sync_manager_add_entry(&se[0]);
-+ }
-+
-+ moreinfo = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free);
- __init_memory_labels();
- }
-
-Index: hardinfo2/arch/linux/common/sensors.h
-===================================================================
---- hardinfo2/arch/linux/common/sensors.h (Revision 149)
-+++ hardinfo2/arch/linux/common/sensors.h (Revision 160)
-@@ -254,7 +254,7 @@
-
- if ((tz = g_dir_open(path_tz, 0, NULL))) {
- const gchar *entry;
-- gchar *temp = "";
-+ gchar *temp = g_strdup("");
-
-
- while ((entry = g_dir_read_name(tz))) {
-Index: hardinfo2/arch/linux/common/storage.h
-===================================================================
---- hardinfo2/arch/linux/common/storage.h (Revision 149)
-+++ hardinfo2/arch/linux/common/storage.h (Revision 160)
-@@ -335,7 +335,7 @@
- g_hash_table_insert(moreinfo, devid, strhash);
-
- g_free(model);
-- model = "";
-+ model = g_strdup("");
- } else
- g_free(device);
-
-Index: hardinfo2/arch/linux/common/pci.h
-===================================================================
---- hardinfo2/arch/linux/common/pci.h (Revision 149)
-+++ hardinfo2/arch/linux/common/pci.h (Revision 160)
-@@ -21,16 +21,32 @@
- {
- FILE *lspci;
- gchar buffer[256], *buf, *strhash = NULL, *strdevice = NULL;
-- gchar *category = NULL, *name = NULL;
-- gint n = 0;
-+ gchar *category = NULL, *name = NULL, *icon;
-+ gint n = 0, x = 0;
-
-- if (!(lspci = popen(LSPCI, "r"))) {
-- goto pci_error;
-+ buf = g_build_filename(g_get_home_dir(), ".hardinfo", "pci.ids", NULL);
-+ if (!g_file_test(buf, G_FILE_TEST_EXISTS)) {
-+ DEBUG("using system-provided PCI IDs");
-+ g_free(buf);
-+ if (!(lspci = popen(LSPCI, "r"))) {
-+ goto pci_error;
-+ }
-+ } else {
-+ gchar *tmp;
-+
-+ tmp = g_strdup_printf("%s -i '%s'", LSPCI, buf);
-+ g_free(buf);
-+ buf = tmp;
-+
-+ DEBUG("using updated PCI IDs (from %s)", buf);
-+ if (!(lspci = popen(tmp, "r"))) {
-+ g_free(buf);
-+ goto pci_error;
-+ } else {
-+ g_free(buf);
-+ }
- }
-
-- gchar *icon;
--
-- int x = 0; /* unique Memory, Capability and I/O port */
- while (fgets(buffer, 256, lspci)) {
- buf = g_strstrip(buffer);
-
-Index: hardinfo2/arch/linux/common/alsa.h
-===================================================================
---- hardinfo2/arch/linux/common/alsa.h (Revision 149)
-+++ hardinfo2/arch/linux/common/alsa.h (Revision 160)
-@@ -20,16 +20,15 @@
- computer_get_alsacards(Computer * computer)
- {
- GSList *p;
-- gchar *tmp = "";
-+ gchar *tmp = g_strdup("");
- gint n = 0;
-
- if (computer->alsa) {
- for (p = computer->alsa->cards; p; p = p->next) {
- AlsaCard *ac = (AlsaCard *) p->data;
-
-- tmp =
-- g_strdup_printf("Audio Adapter#%d=%s\n%s", ++n,
-- ac->friendly_name, tmp);
-+ tmp = h_strdup_cprintf("Audio Adapter#%d=%s\n",
-+ tmp, ++n, ac->friendly_name);
- }
- }
-
-Index: hardinfo2/arch/linux/common/os.h
-===================================================================
---- hardinfo2/arch/linux/common/os.h (Revision 149)
-+++ hardinfo2/arch/linux/common/os.h (Revision 160)
-@@ -185,6 +185,15 @@
- os->distro = g_strdup(buf);
- }
- }
-+
-+ if (g_str_equal(distro_db[i].codename, "ppy")) {
-+ gchar *tmp;
-+
-+ tmp = g_strdup_printf("Puppy Linux %.2f", atof(os->distro) / 100.0);
-+ g_free(os->distro);
-+ os->distro = tmp;
-+ }
-+
- os->distrocode = g_strdup(distro_db[i].codename);
-
- break;
-Index: hardinfo2/shell.c
-===================================================================
---- hardinfo2/shell.c (Revision 149)
-+++ hardinfo2/shell.c (Revision 160)
-@@ -544,6 +544,8 @@
- shell->info = info_tree_new(FALSE);
- shell->moreinfo = info_tree_new(TRUE);
- shell->loadgraph = load_graph_new(75);
-+ update_tbl = g_hash_table_new_full(g_str_hash, g_str_equal,
-+ g_free, g_free);
-
- gtk_paned_pack1(GTK_PANED(shell->hpaned), shell->tree->scroll,
- SHELL_PACK_RESIZE, SHELL_PACK_SHRINK);
-@@ -585,8 +587,14 @@
-
- static gboolean update_field(gpointer data)
- {
-- ShellFieldUpdate *fu = (ShellFieldUpdate *) data;
-- GtkTreeIter *iter = g_hash_table_lookup(update_tbl, fu->field_name);
-+ ShellFieldUpdate *fu;
-+ GtkTreeIter *iter;
-+
-+ fu = (ShellFieldUpdate *) data;
-+ g_return_val_if_fail(fu != NULL, FALSE);
-+
-+ iter = g_hash_table_lookup(update_tbl, fu->field_name);
-+ g_return_val_if_fail(iter != NULL, FALSE);
-
- /* if the entry is still selected, update it */
- if (iter && fu->entry->selected && fu->entry->fieldfunc) {
-@@ -1002,9 +1010,8 @@
- module_selected_show_info(ShellModuleEntry * entry, gboolean reload)
- {
- GKeyFile *key_file = g_key_file_new();
-- gchar *key_data;
-- gchar **groups;
- GtkTreeStore *store;
-+ gchar *key_data, **groups;
- gint i;
- gsize ngroups;
-
-@@ -1016,16 +1023,9 @@
-
- /* recreate the iter hash table */
- if (!reload) {
-- if (update_tbl) {
-- g_hash_table_foreach_remove(update_tbl, (GHRFunc) gtk_true,
-- NULL);
-- } else {
-- update_tbl =
-- g_hash_table_new_full(g_str_hash, g_str_equal, g_free,
-- g_free);
-- }
-+ h_hash_table_remove_all(update_tbl);
- }
--
-+
- if (update_sfusrc) {
- GSList *sfusrc;
-
-@@ -1123,23 +1123,19 @@
- GtkTreeIter parent;
- ShellModuleEntry *entry;
- static ShellModuleEntry *current = NULL;
-- static gboolean updating = FALSE;
-
-- if (updating)
-- return;
--
-- updating = TRUE;
--
- /* Gets the currently selected item on the left-side TreeView; if there is no
- selection, silently return */
- if (!gtk_tree_selection_get_selected
-- (shelltree->selection, &model, &parent))
-+ (shelltree->selection, &model, &parent)) {
- return;
-+ }
-
- /* Mark the currently selected module as "unselected"; this is used to kill the
- update timeout. */
-- if (current)
-+ if (current) {
- current->selected = FALSE;
-+ }
-
- /* Get the current selection and shows its related info */
- gtk_tree_model_get(model, &parent, TREE_COL_DATA, &entry, -1);
-@@ -1190,7 +1186,6 @@
- }
-
- current = entry;
-- updating = FALSE;
- }
-
- static void info_selected(GtkTreeSelection * ts, gpointer data)
-Index: hardinfo2/report.c
-===================================================================
---- hardinfo2/report.c (Revision 149)
-+++ hardinfo2/report.c (Revision 160)
-@@ -366,7 +366,7 @@
- GTK_RESPONSE_ACCEPT, NULL);
-
- gtk_file_chooser_set_current_name(GTK_FILE_CHOOSER(dialog),
-- "hardinfo report");
-+ "hardinfo_report");
-
- file_chooser_add_filters(dialog, file_types);
- file_chooser_open_expander(dialog);
-Index: hardinfo2/iconcache.c
-===================================================================
---- hardinfo2/iconcache.c (Revision 149)
-+++ hardinfo2/iconcache.c (Revision 160)
-@@ -48,7 +48,9 @@
- g_free(path);
- }
-
-- g_object_ref(icon);
-+ if (icon) {
-+ g_object_ref(icon);
-+ }
-
- return icon;
- }
-@@ -81,7 +83,9 @@
- g_free(path);
- }
-
-- g_object_ref(icon);
-+ if (icon) {
-+ g_object_ref(icon);
-+ }
-
- return icon;
- }
-Index: hardinfo2/vendor.c
-===================================================================
---- hardinfo2/vendor.c (Revision 149)
-+++ hardinfo2/vendor.c (Revision 160)
-@@ -57,6 +57,7 @@
- {"Logitech", "Logitech International SA", "www.logitech.com"},
- {"FUJITSU", "Fujitsu", "www.fujitsu.com"},
- {"CDU", "Sony", "www.sony.com"},
-+ {"SanDisk", "SanDisk", "www.sandisk.com"},
- {NULL, NULL, NULL},
- };
-
diff --git a/source/gnome-extra/hardinfo/hardinfo-cflags.diff b/source/gnome-extra/hardinfo/hardinfo-cflags.diff
new file mode 100644
index 0000000..d137525
--- /dev/null
+++ b/source/gnome-extra/hardinfo/hardinfo-cflags.diff
@@ -0,0 +1,24 @@
+diff -Naur hardinfo-0.4.2.3/configure hardinfo-0.4.2.3.new/configure
+--- hardinfo-0.4.2.3/configure 2007-11-04 18:44:47.000000000 +0530
++++ hardinfo-0.4.2.3.new/configure 2008-03-01 21:43:52.000000000 +0530
+@@ -215,7 +215,7 @@
+ echo "SOUP_LIBS = ${SOUP_LIBS}" >> Makefile
+ echo "SOUP_CFLAGS = ${SOUP_FLAGS}" >> Makefile
+ echo "PACKAGE = `basename ${PWD}`" >> Makefile
+-echo "ARCHOPTS = " >> Makefile
++echo "ARCHOPTS = -march=${PROC} -O2 -pipe " >> Makefile
+ echo "LIBDIR = $LIBDIR" >> Makefile
+
+ cat Makefile.in >> Makefile
+diff -Naur hardinfo-0.4.2.3/Makefile.in hardinfo-0.4.2.3.new/Makefile.in
+--- hardinfo-0.4.2.3/Makefile.in 2007-11-04 18:44:47.000000000 +0530
++++ hardinfo-0.4.2.3.new/Makefile.in 2008-03-01 21:43:38.000000000 +0530
+@@ -1,7 +1,7 @@
+
+ CC = gcc $(ARCHOPTS) -g
+ CCSLOW = gcc -O0 -g
+-CFLAGS = -fPIC -pipe -Wall -g $(GTK_CFLAGS) $(GLADE_CFLAGS) $(SOUP_CFLAGS) -I.
++CFLAGS = -fPIC -Wall -g $(GTK_CFLAGS) $(GLADE_CFLAGS) $(SOUP_CFLAGS) -I.
+
+ # ----------------------------------------------------------------------------
+
From priyank at frugalware.org Sat Mar 1 18:18:09 2008
From: priyank at frugalware.org (Priyank)
Date: Sat Mar 1 18:18:12 2008
Subject: [Frugalware-git] frugalware-current: alacarte-0.11.4-1-i686
Message-ID: <20080301171809.BF437119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=d03283cfbe314a551c6fbfc4c672dafb6fc67a4e
commit d03283cfbe314a551c6fbfc4c672dafb6fc67a4e
Author: Priyank
Date: Sat Mar 1 22:46:40 2008 +0530
alacarte-0.11.4-1-i686
* Version bump
diff --git a/source/gnome/alacarte/FrugalBuild b/source/gnome/alacarte/FrugalBuild
index c2205da..59735d0 100644
--- a/source/gnome/alacarte/FrugalBuild
+++ b/source/gnome/alacarte/FrugalBuild
@@ -3,10 +3,10 @@
# Former Maintainer: AlexExtreme
pkgname=alacarte
-pkgver=0.11.3
-pkgrel=2
+pkgver=0.11.4
+pkgrel=1
pkgdesc="Menu editor for GNOME that lets you get things done, simply and quickly."
-depends=('pygtk>=2.12.0' 'pyxdg' 'gnome-menus>=2.20.0' 'gnome-python-desktop>=2.20.0')
+depends=('pygtk>=2.12.1' 'pyxdg' 'gnome-menus>=2.20.3' 'gnome-python-desktop>=2.20.0')
makedepends=('intltool')
groups=('gnome')
archs=('i686' 'x86_64')
@@ -14,4 +14,4 @@ _F_gnome_desktop="y"
_F_gnome_iconcache="y"
_F_gnome_devel="y"
Finclude gnome gnome-scriptlet
-sha1sums=('4e6e2e53dfe17f72b21bd65a3c2676452a151240')
+sha1sums=('9aa2294dd7d2429e1cd3ac66608b11c102a6d7e3')
From priyank at frugalware.org Sat Mar 1 18:25:23 2008
From: priyank at frugalware.org (Priyank)
Date: Sat Mar 1 18:25:26 2008
Subject: [Frugalware-git] frugalware-current: acidrip-0.14-5-i686
Message-ID: <20080301172523.C4F68119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=f54add3959dc9af09aa0d5d10b9224cf0f7fe7e9
commit f54add3959dc9af09aa0d5d10b9224cf0f7fe7e9
Author: Priyank
Date: Sat Mar 1 22:54:04 2008 +0530
acidrip-0.14-5-i686
* Added missing desktop icon entry. Closes #1974
* New maintainer
diff --git a/source/xapps-extra/acidrip/FrugalBuild b/source/xapps-extra/acidrip/FrugalBuild
index eeef209..b064963 100644
--- a/source/xapps-extra/acidrip/FrugalBuild
+++ b/source/xapps-extra/acidrip/FrugalBuild
@@ -1,15 +1,28 @@
# Compiling Time: 0.05 SBU
-# Maintainer: BMH1980
+# Maintainer: Priyank Gosalia
+# Contributor: BMH1980
pkgname=acidrip
pkgver=0.14
-pkgrel=4
-pkgdesc="AcidRip is a Gtk2::Perl application for ripping and encoding DVD's."
+pkgrel=5
+pkgdesc="AcidRip is a Gtk2::Perl application for ripping and encoding DVDs."
license="GPL2"
_F_sourceforge_broken_up2date=1
Finclude sourceforge
+_F_desktop_name="AcidRip"
+_F_desktop_icon="acidrip.png"
+_F_desktop_categories="GTK;AudioVideo;"
sha1sums=('5873c835c0d52edc2c1a799e9751980b6c7cc4f1')
groups=('xapps-extra')
archs=('i686' 'x86_64')
depends=('perl-gtk2' 'lsdvd' 'mplayer')
options=('scriptlet')
+
+build()
+{
+ Fbuild
+ Fmkdir /usr/share/pixmaps
+ Fcprrel AcidRip/logo.png /usr/share/pixmaps/acidrip.png
+ Fdesktop2
+}
+
From crazy at frugalware.org Sat Mar 1 18:29:51 2008
From: crazy at frugalware.org (crazy)
Date: Sat Mar 1 18:29:54 2008
Subject: [Frugalware-git] frugalware-current: xorg-server-1.4.0.90-5-i686
Message-ID: <20080301172951.CA3D4119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=1f49af7c84ab61f3fa9763726072f7d1f3d72dda
commit 1f49af7c84ab61f3fa9763726072f7d1f3d72dda
Author: crazy
Date: Sat Mar 1 18:16:30 2008 +0100
xorg-server-1.4.0.90-5-i686
* release bump
* backported all fixes from 1.4 branch
diff --git a/source/x11/xorg-server/Fix-context-sharing-between-direct-indirect-contexts.patch b/source/x11/xorg-server/Fix-context-sharing-between-direct-indirect-contexts.patch
new file mode 100644
index 0000000..bd81c13
--- /dev/null
+++ b/source/x11/xorg-server/Fix-context-sharing-between-direct-indirect-contexts.patch
@@ -0,0 +1,38 @@
+From a65d4aed06acd839fb21153f74144498abda3e18 Mon Sep 17 00:00:00 2001
+From: Alan Hourihane
+Date: Wed, 27 Feb 2008 16:49:34 +0000
+Subject: [PATCH] Fix context sharing between direct/indirect contexts
+
+---
+ GL/glx/glxdri.c | 8 ++++++++
+ 1 files changed, 8 insertions(+), 0 deletions(-)
+
+diff --git a/GL/glx/glxdri.c b/GL/glx/glxdri.c
+index 685683d..09abca3 100644
+--- a/GL/glx/glxdri.c
++++ b/GL/glx/glxdri.c
+@@ -598,6 +598,9 @@ __glXDRIscreenCreateContext(__GLXscreen *baseScreen,
+ else
+ sharePrivate = NULL;
+
++ if (baseShareContext && baseShareContext->isDirect)
++ return NULL;
++
+ context = xalloc(sizeof *context);
+ if (context == NULL)
+ return NULL;
+@@ -617,6 +620,11 @@ __glXDRIscreenCreateContext(__GLXscreen *baseScreen,
+ 0, /* render type */
+ sharePrivate,
+ &context->driContext);
++
++ if (!context->driContext.private) {
++ xfree(context);
++ return NULL;
++ }
+
+ context->driContext.mode = modes;
+
+--
+1.5.4.3
+
diff --git a/source/x11/xorg-server/Fix-rotation-for-multi-monitor-situation.patch b/source/x11/xorg-server/Fix-rotation-for-multi-monitor-situation.patch
new file mode 100644
index 0000000..2cce9a2
--- /dev/null
+++ b/source/x11/xorg-server/Fix-rotation-for-multi-monitor-situation.patch
@@ -0,0 +1,31 @@
+From dc30ade6496c7cc24e38c419e229159525fe042f Mon Sep 17 00:00:00 2001
+From: Maarten Maathuis
+Date: Sun, 17 Feb 2008 18:47:28 +0100
+Subject: [PATCH] Fix rotation for multi-monitor situation.
+
+- The (x,y)-coordinates of the crtc were not being passed as xFixed values, which made it an obscure bug to find.
+- Fix bug #13787.
+(cherry picked from commit a48cc88ea2674c28b69b8d738b168cbafcf4001f)
+---
+ hw/xfree86/modes/xf86Rotate.c | 4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/hw/xfree86/modes/xf86Rotate.c b/hw/xfree86/modes/xf86Rotate.c
+index 380478f..dd0e659 100644
+--- a/hw/xfree86/modes/xf86Rotate.c
++++ b/hw/xfree86/modes/xf86Rotate.c
+@@ -579,9 +579,9 @@ xf86CrtcRotate (xf86CrtcPtr crtc, DisplayModePtr mode, Rotation rotation)
+ }
+ else
+ {
+- PictureTransformTranslate (&crtc_to_fb, &fb_to_crtc, crtc->x, crtc->y);
++ PictureTransformTranslate (&crtc_to_fb, &fb_to_crtc, F(crtc->x), F(crtc->y));
+ PictureTransformIsInverse ("offset", &crtc_to_fb, &fb_to_crtc);
+-
++
+ /*
+ * these are the size of the shadow pixmap, which
+ * matches the mode, not the pre-rotated copy in the
+--
+1.5.4.3
+
diff --git a/source/x11/xorg-server/FrugalBuild b/source/x11/xorg-server/FrugalBuild
index 4363c74..f1c961d 100644
--- a/source/x11/xorg-server/FrugalBuild
+++ b/source/x11/xorg-server/FrugalBuild
@@ -3,7 +3,7 @@
pkgname=xorg-server
pkgver=1.4.0.90
-pkgrel=4
+pkgrel=5
mesaver=7.0.2
pkgdesc="Modular X.Org X Server"
groups=('x11' 'xorg-core')
@@ -52,7 +52,14 @@ source=(${source[@]} \
1.4-fix-dmx-build.patch \
1.4-fix-dmx-link.patch \
1.4-fix-kdrive-automake.patch \
- 1.4-fix-xephyr-link.patch)
+ 1.4-fix-xephyr-link.patch \
+ dix-set-the-correct-number-of-valuators-in-valuator.patch \
+ Fix-context-sharing-between-direct-indirect-contexts.patch \
+ Fix-rotation-for-multi-monitor-situation.patch \
+ Resize-composite-overlay-window-when-the-root-window.patch \
+ security-Fix-for-Bug-14480-untrusted-access-broke.patch \
+ xkb-don-t-update-LEDs-if-they-don-t-exist.patch)
+
sha1sums=('7c492ac32bd83b521f5c016e4728fccf9cba55db' \
'd16eaeb1d9d95d11d3b6d289b1ba87108b88da90' \
'af92fd389e72a3bb59d25dbf9cbb06e827b75d7d' \
@@ -80,7 +87,13 @@ sha1sums=('7c492ac32bd83b521f5c016e4728fccf9cba55db' \
'0b627c0d98e50f0d29dacc3fa7e8e9d8b1ad3faf' \
'41f686ef462e179f6c7e73a1babb7c0f2312d337' \
'f21a54aed8eae1e718f2f0c262c37c36ccccd152' \
- '352c55be4b91b29c84b192d806a90834d887fc22')
+ '352c55be4b91b29c84b192d806a90834d887fc22' \
+ '03056cde78a8a64b44c756014f31222cee5075e1' \
+ 'eadf66c1603dcc5a46dc14407cea0f1bc36b9594' \
+ '8d3e9e5daaf2eca41a1aba90509a1b27acb3533e' \
+ 'fcde0358b5b3c5489bcfe939fa742a1b122c3e96' \
+ 'e48a9793ca50616e4de3e8fd51443aa90abf6365' \
+ '0e677503b0dd377530ec799f2139f25b5fcd2de9')
subpkgs=('libglx' \
"$pkgname-dmx" "$pkgname-ati" "$pkgname-chips" "$pkgname-xephyr" \
@@ -175,6 +188,13 @@ build() {
Fpatch OS-IO-Zero-out-client-buffers.patch
Fpatch XKB-XkbCopyKeymap-Don-t-leak-all-the-sections.patch
Fpatch Xephyr-One-time-keyboard-leak-fix.patch
+ Fpatch dix-set-the-correct-number-of-valuators-in-valuator.patch
+ Fpatch Fix-context-sharing-between-direct-indirect-contexts.patch
+ Fpatch Fix-rotation-for-multi-monitor-situation.patch
+ Fpatch Resize-composite-overlay-window-when-the-root-window.patch
+ Fpatch security-Fix-for-Bug-14480-untrusted-access-broke.patch
+ Fpatch xkb-don-t-update-LEDs-if-they-don-t-exist.patch
+
## GCC 4.2.0 bug do **NOT** remove this hack or it will kill your box!!
## http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30052
echo 'CFLAGS = @CFLAGS@ -O0' >> hw/xfree86/scanpci/Makefile.am
diff --git a/source/x11/xorg-server/Resize-composite-overlay-window-when-the-root-window.patch b/source/x11/xorg-server/Resize-composite-overlay-window-when-the-root-window.patch
new file mode 100644
index 0000000..22c8044
--- /dev/null
+++ b/source/x11/xorg-server/Resize-composite-overlay-window-when-the-root-window.patch
@@ -0,0 +1,62 @@
+From 3db5930c61aeb849de3b21e7ba0d86d3c0cf72bb Mon Sep 17 00:00:00 2001
+From: Maarten Maathuis
+Date: Sun, 17 Feb 2008 11:21:01 +0100
+Subject: [PATCH] Resize composite overlay window when the root window changes.
+
+- This allows some compositing managers to work, even after randr12 has changed the root window size.
+- Thanks to ajax for figuring out the best place to put this.
+- Example:
+ - xf86RandR12SetMode() calls EnableDisableFBAccess().
+ - That calls xf86SetRootClip() which in turn calls ResizeChildrenWinSize().
+ - The final step is the call to PositionWindow().
+(cherry picked from commit 70c0592a97c7dc9db0576d32b3bdbe4766520509)
+---
+ composite/compwindow.c | 25 +++++++++++++++++++++++++
+ 1 files changed, 25 insertions(+), 0 deletions(-)
+
+diff --git a/composite/compwindow.c b/composite/compwindow.c
+index bfd2946..33192ad 100644
+--- a/composite/compwindow.c
++++ b/composite/compwindow.c
+@@ -165,6 +165,29 @@ compCheckRedirect (WindowPtr pWin)
+ return TRUE;
+ }
+
++static int
++updateOverlayWindow(ScreenPtr pScreen)
++{
++ CompScreenPtr cs;
++ WindowPtr pWin; /* overlay window */
++ XID vlist[2];
++
++ cs = GetCompScreen(pScreen);
++ if ((pWin = cs->pOverlayWin) != NULL) {
++ if ((pWin->drawable.width == pScreen->width) &&
++ (pWin->drawable.height == pScreen->height))
++ return Success;
++
++ /* Let's resize the overlay window. */
++ vlist[0] = pScreen->width;
++ vlist[1] = pScreen->height;
++ return ConfigureWindow(pWin, CWWidth | CWHeight, vlist, wClient(pWin));
++ }
++
++ /* Let's be on the safe side and not assume an overlay window is always allocated. */
++ return Success;
++}
++
+ Bool
+ compPositionWindow (WindowPtr pWin, int x, int y)
+ {
+@@ -203,6 +226,8 @@ compPositionWindow (WindowPtr pWin, int x, int y)
+ cs->PositionWindow = pScreen->PositionWindow;
+ pScreen->PositionWindow = compPositionWindow;
+ compCheckTree (pWin->drawable.pScreen);
++ if (updateOverlayWindow(pScreen) != Success)
++ ret = FALSE;
+ return ret;
+ }
+
+--
+1.5.4.3
+
diff --git a/source/x11/xorg-server/dix-set-the-correct-number-of-valuators-in-valuator.patch b/source/x11/xorg-server/dix-set-the-correct-number-of-valuators-in-valuator.patch
new file mode 100644
index 0000000..b2399cf
--- /dev/null
+++ b/source/x11/xorg-server/dix-set-the-correct-number-of-valuators-in-valuator.patch
@@ -0,0 +1,29 @@
+From e98027c3ac7195fec665ef393d980b02870ca1b8 Mon Sep 17 00:00:00 2001
+From: Peter Hutterer
+Date: Tue, 18 Dec 2007 13:57:07 +1030
+Subject: [PATCH] dix: set the correct number of valuators in valuator events.
+
+(first_valuator + num_valuators) must never be larger than the number of axes,
+otherwise DIX freaks out. And from looking at libXI, anything larger than 6 is
+wrong too.
+(cherry picked from commit 9f6ae61ad12cc2813d04405458e1ca5aed8a539e)
+---
+ dix/getevents.c | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/dix/getevents.c b/dix/getevents.c
+index 12d8189..b7ba69b 100644
+--- a/dix/getevents.c
++++ b/dix/getevents.c
+@@ -344,7 +344,7 @@ getValuatorEvents(xEvent *events, DeviceIntPtr pDev, int first_valuator,
+ for (i = first_valuator; i < final_valuator; i += 6, xv++, events++) {
+ xv->type = DeviceValuator;
+ xv->first_valuator = i;
+- xv->num_valuators = num_valuators;
++ xv->num_valuators = ((num_valuators - i) > 6) ? 6 : (num_valuators - i);
+ xv->deviceid = pDev->id;
+ switch (final_valuator - i) {
+ case 6:
+--
+1.5.4.3
+
diff --git a/source/x11/xorg-server/security-Fix-for-Bug-14480-untrusted-access-broke.patch b/source/x11/xorg-server/security-Fix-for-Bug-14480-untrusted-access-broke.patch
new file mode 100644
index 0000000..a7cc2bb
--- /dev/null
+++ b/source/x11/xorg-server/security-Fix-for-Bug-14480-untrusted-access-broke.patch
@@ -0,0 +1,25 @@
+From 74b40bba327a2e97780e8e3f995f784add2d6231 Mon Sep 17 00:00:00 2001
+From: Eamon Walsh
+Date: Thu, 14 Feb 2008 19:47:44 -0500
+Subject: [PATCH] security: Fix for Bug #14480: untrusted access broken in 7.3.
+
+---
+ Xext/security.c | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/Xext/security.c b/Xext/security.c
+index e9d48c9..14ad354 100644
+--- a/Xext/security.c
++++ b/Xext/security.c
+@@ -1014,7 +1014,7 @@ CALLBACK(SecurityCheckResourceIDAccess)
+ }
+ else /* server-owned resource - probably a default colormap or root window */
+ {
+- if (RT_WINDOW == rtype || RC_DRAWABLE == rtype)
++ if (RC_DRAWABLE & rtype)
+ {
+ switch (reqtype)
+ { /* the following operations are allowed on root windows */
+--
+1.5.4.3
+
diff --git a/source/x11/xorg-server/xkb-don-t-update-LEDs-if-they-don-t-exist.patch b/source/x11/xorg-server/xkb-don-t-update-LEDs-if-they-don-t-exist.patch
new file mode 100644
index 0000000..fd75f7e
--- /dev/null
+++ b/source/x11/xorg-server/xkb-don-t-update-LEDs-if-they-don-t-exist.patch
@@ -0,0 +1,31 @@
+From bc72ef3a159efd67067322c043bba444869dc356 Mon Sep 17 00:00:00 2001
+From: Peter Hutterer
+Date: Wed, 30 Jan 2008 10:39:54 +1030
+Subject: [PATCH] xkb: don't update LEDs if they don't exist. (Bug #13961)
+
+In some weird cases we call this function when there is no SrvLedInfo on the
+device. And it turns out null-pointer dereferences are bad.
+
+X.Org Bug 13961
+(cherry picked from commit d954f9c80348de294602d931d387e5cd1ef4b9a5)
+---
+ xkb/xkbLEDs.c | 3 +++
+ 1 files changed, 3 insertions(+), 0 deletions(-)
+
+diff --git a/xkb/xkbLEDs.c b/xkb/xkbLEDs.c
+index d607d90..d28973c 100644
+--- a/xkb/xkbLEDs.c
++++ b/xkb/xkbLEDs.c
+@@ -63,6 +63,9 @@ XkbSrvLedInfoPtr sli;
+
+ sli= XkbFindSrvLedInfo(dev,XkbDfltXIClass,XkbDfltXIId,0);
+
++ if (!sli)
++ return update;
++
+ if (state_changes&(XkbModifierStateMask|XkbGroupStateMask))
+ update|= sli->usesEffective;
+ if (state_changes&(XkbModifierBaseMask|XkbGroupBaseMask))
+--
+1.5.4.3
+
From priyank at frugalware.org Sat Mar 1 18:55:27 2008
From: priyank at frugalware.org (Priyank)
Date: Sat Mar 1 18:55:29 2008
Subject: [Frugalware-git] frugalware-current: hardinfo-0.4.2.3-2-i686
Message-ID: <20080301175527.E6CD81190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=f4cd0ef9af2e587acd14389240ebc3cc168dfa51
commit f4cd0ef9af2e587acd14389240ebc3cc168dfa51
Author: Priyank
Date: Sat Mar 1 23:23:31 2008 +0530
hardinfo-0.4.2.3-2-i686
* Fixed CFLAGS for x86_64
diff --git a/source/gnome-extra/hardinfo/FrugalBuild b/source/gnome-extra/hardinfo/FrugalBuild
index eb59112..f81d843 100644
--- a/source/gnome-extra/hardinfo/FrugalBuild
+++ b/source/gnome-extra/hardinfo/FrugalBuild
@@ -4,7 +4,7 @@
pkgname=hardinfo
pkgver=0.4.2.3
-pkgrel=1
+pkgrel=2
pkgdesc="A system information and benchmark tool."
_F_berlios_ext=".tar.bz2"
_F_gnome_desktop="y"
@@ -16,6 +16,6 @@ groups=('gnome-extra')
archs=('i686' 'x86_64')
sha1sums=('b76e332dc4dd173a1afed3c3da292f85e9bbfe65' \
'18894bbc8fb42655660e700543adb04db5568308' \
- '383a03bdd663335f1f9639294c5f0e69a86511bc')
+ '43dca595f9548565c973608b05d3a186186fa9f0')
# optimization OK
diff --git a/source/gnome-extra/hardinfo/hardinfo-cflags.diff b/source/gnome-extra/hardinfo/hardinfo-cflags.diff
index d137525..65418f7 100644
--- a/source/gnome-extra/hardinfo/hardinfo-cflags.diff
+++ b/source/gnome-extra/hardinfo/hardinfo-cflags.diff
@@ -1,7 +1,17 @@
diff -Naur hardinfo-0.4.2.3/configure hardinfo-0.4.2.3.new/configure
--- hardinfo-0.4.2.3/configure 2007-11-04 18:44:47.000000000 +0530
-+++ hardinfo-0.4.2.3.new/configure 2008-03-01 21:43:52.000000000 +0530
-@@ -215,7 +215,7 @@
++++ hardinfo-0.4.2.3.new/configure 2008-03-01 23:21:40.000000000 +0530
+@@ -56,7 +56,8 @@
+ x86_64)
+ ln -sf linux/x86_64 arch/this
+ ARCH="ARCH_x86_64"
+- LIBDIR="/usr/lib64" ;;
++ LIBDIR="/usr/lib64"
++ PROC="k8" ;;
+ mips*)
+ ln -sf linux/mips arch/this
+ ARCH="ARCH_MIPS" ;;
+@@ -215,7 +216,7 @@
echo "SOUP_LIBS = ${SOUP_LIBS}" >> Makefile
echo "SOUP_CFLAGS = ${SOUP_FLAGS}" >> Makefile
echo "PACKAGE = `basename ${PWD}`" >> Makefile
@@ -12,7 +22,7 @@ diff -Naur hardinfo-0.4.2.3/configure hardinfo-0.4.2.3.new/configure
cat Makefile.in >> Makefile
diff -Naur hardinfo-0.4.2.3/Makefile.in hardinfo-0.4.2.3.new/Makefile.in
--- hardinfo-0.4.2.3/Makefile.in 2007-11-04 18:44:47.000000000 +0530
-+++ hardinfo-0.4.2.3.new/Makefile.in 2008-03-01 21:43:38.000000000 +0530
++++ hardinfo-0.4.2.3.new/Makefile.in 2008-03-01 23:20:05.000000000 +0530
@@ -1,7 +1,7 @@
CC = gcc $(ARCHOPTS) -g
From priyank at frugalware.org Sat Mar 1 19:20:33 2008
From: priyank at frugalware.org (Priyank)
Date: Sat Mar 1 19:20:36 2008
Subject: [Frugalware-git] frugalware-current: gdesklets-0.36-1-i686
Message-ID: <20080301182033.C20301190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=12376cb1f00983f20a41e65c301a686f280f8621
commit 12376cb1f00983f20a41e65c301a686f280f8621
Author: Priyank
Date: Sat Mar 1 23:47:08 2008 +0530
gdesklets-0.36-1-i686
* Version bump
* Fix up2date
* Closes #2696
diff --git a/source/gnome-extra/gdesklets/FrugalBuild b/source/gnome-extra/gdesklets/FrugalBuild
index 111ecc4..84f6cca 100644
--- a/source/gnome-extra/gdesklets/FrugalBuild
+++ b/source/gnome-extra/gdesklets/FrugalBuild
@@ -1,26 +1,25 @@
-# Compiling Time: 0.58 SBU
+# Compiling Time: 0.11 SBU
# Maintainer: Christian Hamar alias krix
# Contributor: bigmatt
pkgname=gdesklets
-_F_archive_name=gDesklets
-pkgver=0.35.4
-pkgrel=2
+pkgver=0.36
+pkgrel=1
pkgdesc="gdesklets provides an advanced architecture for your desktop applets"
url="http://gdesklets.de/"
depends=('python>=2.5' 'pygtk' 'libgtop' 'librsvg' 'gconf' 'gnome-python' 'libgnomeui')
makedepends=('perl-xml-parser')
rodepends=('shared-mime-info')
groups=('gnome-extra')
-up2date="lynx -dump http://www.gdesklets.de/ | Flasttar"
-source=(http://gdesklets.de/files/`echo $pkgname | sed 's/d/D/'`-$pkgver.tar.bz2)
+up2date="lynx -dump $url | grep -m1 tar.bz2 | sed 's/.*s-\(.*\).t.*/\1/'"
+source=(http://gdesklets.de/files/$pkgname-$pkgver.tar.bz2)
archs=('i686' 'x86_64')
_F_gnome_schemas=('/etc/gconf/schemas/gdesklets-display-thumbnail.schemas')
_F_gnome_scrollkeeper="y"
_F_gnome_desktop="y"
_F_gnome_mime="y"
Finclude gnome-scriptlet
-sha1sums=('f225dcc6503e8aaec732c52fc2ee47f70c1fd87c')
+sha1sums=('debed7ae730796761ac829ba6cb7bafd566148d5')
build()
{
From priyank at frugalware.org Sat Mar 1 20:10:34 2008
From: priyank at frugalware.org (Priyank)
Date: Sat Mar 1 20:10:36 2008
Subject: [Frugalware-git] frugalware-current: nautilus-sendto-0.13.2-1-i686
Message-ID: <20080301191034.EDE911190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=3fb43306c6bb1991aabdac2f334cb50e9a9cc075
commit 3fb43306c6bb1991aabdac2f334cb50e9a9cc075
Author: Priyank
Date: Sun Mar 2 00:38:12 2008 +0530
nautilus-sendto-0.13.2-1-i686
* Version bump (0.12 was really broken and didn't work for sending files over bluetooth)
* Added missing _F_gnome_iconcache
* Fixed package description
diff --git a/source/gnome/nautilus-sendto/FrugalBuild b/source/gnome/nautilus-sendto/FrugalBuild
index cc9896c..b42b4ed 100644
--- a/source/gnome/nautilus-sendto/FrugalBuild
+++ b/source/gnome/nautilus-sendto/FrugalBuild
@@ -2,17 +2,18 @@
# Maintainer: Christian Hamar alias krix
pkgname=nautilus-sendto
-pkgver=0.12
+pkgver=0.13.2
pkgrel=1
-pkgdesc="Nautilus context menu componente 'Send To..'"
+pkgdesc="A plugin to send files to other apps from Nautilus."
url="http://www.gnome.org/"
depends=('nautilus' 'evolution-data-server')
makedepends=('intltool' 'perl-xml-parser' 'pidgin' 'claws-mail' 'gnome-bluetooth')
groups=('gnome')
archs=('i686' 'x86_64')
+_F_gnome_devel="y"
+_F_gnome_iconcache="y"
_F_gnome_schemas=('/etc/gconf/schemas/nst.schemas')
Finclude gnome gnome-scriptlet
-source=(http://ftp.gnome.org/pub/gnome/sources/nautilus-sendto/$pkgver/$pkgname-$pkgver.tar.bz2)
-sha1sums=('34b6241d6bcdc05507336f99d9c45d2f77f2d35b')
+sha1sums=('46660e89352e3580245a4d6332637db4c399dfe8')
# optimization OK
From vmiklos at frugalware.org Sat Mar 1 20:32:05 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Sat Mar 1 20:32:07 2008
Subject: [Frugalware-git] setup: configsource/mirrorconf(): check if the
mirror is empty before comparing it
Message-ID: <20080301193205.5153B1190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=setup.git;a=commitdiff;h=71daf89cbd14c4598699e76371f873b9ea4acc78
commit 71daf89cbd14c4598699e76371f873b9ea4acc78
Author: Miklos Vajna
Date: Sat Mar 1 20:30:55 2008 +0100
configsource/mirrorconf(): check if the mirror is empty before comparing it
closes #2801
diff --git a/src/plugins/configsource.c b/src/plugins/configsource.c
index 5d05339..ecad0e2 100644
--- a/src/plugins/configsource.c
+++ b/src/plugins/configsource.c
@@ -152,7 +152,8 @@ GList *mirrorconf(void)
// also removes the duplicate mirrors
for (i=0; i
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=e76fee00e316eb69f72e2987c1a22143347938d1
commit e76fee00e316eb69f72e2987c1a22143347938d1
Author: Priyank
Date: Sun Mar 2 01:22:31 2008 +0530
TAG 1.1.0
From vmiklos at frugalware.org Sat Mar 1 21:16:19 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Sat Mar 1 21:16:23 2008
Subject: [Frugalware-git] frugalware-current: docs: add a cronclean target
to remove xml, fo and other interm files
Message-ID: <20080301201619.DEE451190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=34f6b555f33a9c001451d64aa5fd4dc555e21d84
commit 34f6b555f33a9c001451d64aa5fd4dc555e21d84
Author: Miklos Vajna
Date: Sat Mar 1 21:12:17 2008 +0100
docs: add a cronclean target to remove xml, fo and other interm files
diff --git a/docs/Makefile b/docs/Makefile
index 88879b7..722b190 100644
--- a/docs/Makefile
+++ b/docs/Makefile
@@ -138,6 +138,11 @@ packages.txt: packages.txt.in
clean:
rm -rf *.html *.pdf *.text $(GENERATED_SOURCES) $(LANGS)
+# deletes interim files like .xml or .fo but leaves the result (.pdf,
+# etc) untouched
+cronclean:
+ rm -rf {*/,}*.xml {*/,}*.fo po
+
# checks if all the txts are included in index.txt
# -2 is for the two tags: index-user.txt and index-devel.txt
check: clean
From vmiklos at frugalware.org Sat Mar 1 21:16:20 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Sat Mar 1 21:16:25 2008
Subject: [Frugalware-git] frugalware-current: tools/genpkgdbs: call make
cronclea for docs daily
Message-ID: <20080301201620.006461190510@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=1ab7a41e191d53a1dad28348e27a66e9208f2bfa
commit 1ab7a41e191d53a1dad28348e27a66e9208f2bfa
Author: Miklos Vajna
Date: Sat Mar 1 21:15:10 2008 +0100
tools/genpkgdbs: call make cronclea for docs daily
diff --git a/tools/genpkgdbs b/tools/genpkgdbs
index 7e8d6b0..5459f2e 100755
--- a/tools/genpkgdbs
+++ b/tools/genpkgdbs
@@ -52,6 +52,8 @@ cd ../docs
make clean
make all 2>&1 |tee build.log
make -i all-i18n 2>&1 |tee build-i18n.log
+# remove interim files
+make cronclean
# update pots
From priyank at frugalware.org Sun Mar 2 06:57:34 2008
From: priyank at frugalware.org (Priyank)
Date: Sun Mar 2 06:57:36 2008
Subject: [Frugalware-git] fun: updates for 0.2.1
Message-ID: <20080302055734.94EC21190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fun.git;a=commitdiff;h=06d54ceb03e4626f013c30e0a1eef6f548e9427b
commit 06d54ceb03e4626f013c30e0a1eef6f548e9427b
Author: Priyank
Date: Sun Mar 2 11:26:57 2008 +0530
updates for 0.2.1
diff --git a/NEWS b/NEWS
index faf3b76..ff3f3b2 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,7 @@
VERSION DESCRIPTION
---------------------------------------------------------------------------------------------------------
+0.2.1 (2008-03-02) - Translation updates
+ - New translation: (Czech) cs_CZ
0.2.0 (2008-01-01) - Migrated to libnotify for displaying notification popups.
- Got rid of EggTrayIcon. FUN client now uses GtkStatusIcon.
- FUN client now performs a first-run update check everytime it's started.
diff --git a/configure.ac b/configure.ac
index c2b7d58..56da2e7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,7 +1,7 @@
ENV_CFLAGS=$CFLAGS
AC_PREREQ(2.59)
-AC_INIT([fun], 0.2.0, [frugalware-devel@frugalware.org], fun)
+AC_INIT([fun], 0.2.1, [frugalware-devel@frugalware.org], fun)
AC_CONFIG_SRCDIR([src/fun.c])
AC_LANG(C)
AM_CONFIG_HEADER(config.h)
From priyank at frugalware.org Sun Mar 2 06:58:22 2008
From: priyank at frugalware.org (Priyank)
Date: Sun Mar 2 06:58:25 2008
Subject: [Frugalware-git] fun: TAG 0.2.1
Message-ID: <20080302055823.046631190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fun.git;a=commitdiff;h=48ca2f5105e5003e30a239d3dd5122ff51226a3b
commit 48ca2f5105e5003e30a239d3dd5122ff51226a3b
Author: Priyank
Date: Sun Mar 2 11:27:47 2008 +0530
TAG 0.2.1
From priyank at frugalware.org Sun Mar 2 07:10:43 2008
From: priyank at frugalware.org (Priyank)
Date: Sun Mar 2 07:10:46 2008
Subject: [Frugalware-git] frugalware-current: fun-0.2.1-1-i686
Message-ID: <20080302061043.79D631190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=640418192cd01fc729edcca707751f377af20f2b
commit 640418192cd01fc729edcca707751f377af20f2b
Author: Priyank
Date: Sun Mar 2 11:38:44 2008 +0530
fun-0.2.1-1-i686
* Version bump
diff --git a/source/xapps/fun/FrugalBuild b/source/xapps/fun/FrugalBuild
index 06eb439..acfa485 100644
--- a/source/xapps/fun/FrugalBuild
+++ b/source/xapps/fun/FrugalBuild
@@ -2,11 +2,11 @@
# Maintainer: Priyank Gosalia
pkgname=fun
-pkgver=0.2.0
-pkgrel=2
+pkgver=0.2.1
+pkgrel=1
pkgdesc="Frugalware Update Notifier (FUN)"
url="http://ftp.frugalware.org/pub/other/fun"
-rodepends=('gfpm>=1.0.4')
+rodepends=('gfpm>=1.0.5.1')
depends=('glib2' 'gtk+2' 'libglade' 'pacman-g2' 'frugalwareutils' 'dbus' \
'dbus-glib' 'libnotify')
makedepends=('pkgconfig' 'intltool')
From priyank at frugalware.org Sun Mar 2 08:24:22 2008
From: priyank at frugalware.org (Priyank)
Date: Sun Mar 2 08:24:25 2008
Subject: [Frugalware-git] frugalware-current: gfpm-1.1.0-1-i686
Message-ID: <20080302072422.043C41190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=847157b98fb9ed7728bf9762eeb0d9ef2a3c4f32
commit 847157b98fb9ed7728bf9762eeb0d9ef2a3c4f32
Author: Priyank
Date: Sun Mar 2 12:52:00 2008 +0530
gfpm-1.1.0-1-i686
* Version bump
* Added frugalwareutils to depends()
diff --git a/source/xapps/gfpm/FrugalBuild b/source/xapps/gfpm/FrugalBuild
index f3b21e8..e321a3a 100644
--- a/source/xapps/gfpm/FrugalBuild
+++ b/source/xapps/gfpm/FrugalBuild
@@ -2,11 +2,11 @@
# Maintainer: Priyank Gosalia
pkgname=gfpm
-pkgver=1.0.5.1
+pkgver=1.1.0
pkgrel=1
pkgdesc="Graphical Frugalware Package Manager"
url="http://ftp.frugalware.org/pub/other/gfpm"
-depends=('glib2' 'gtk+2' 'libglade' 'pacman-g2>=3.6.7-2' 'inotify-tools')
+depends=('glib2' 'gtk+2' 'libglade' 'pacman-g2>=3.6.7-2' 'inotify-tools' 'frugalwareutils>=0.7.9')
makedepends=('pkgconfig' 'intltool')
groups=('xapps')
replaces=('frugalpkg')
From janny at frugalware.org Sun Mar 2 09:23:18 2008
From: janny at frugalware.org (Janny)
Date: Sun Mar 2 09:23:22 2008
Subject: [Frugalware-git] fwlive: fwlive-LOCALE
Message-ID: <20080302082318.D8F8A1190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=d917aff87b68f8d9532f860444ab8527ffb723e7
commit d917aff87b68f8d9532f860444ab8527ffb723e7
Author: Janny
Date: Sun Mar 2 09:20:36 2008 +0100
fwlive-LOCALE
* add LOCALE settings
* actualize and correction in languages
* add Cz language
diff --git a/config b/config
index 8c95182..3dc4e2e 100644
--- a/config
+++ b/config
@@ -23,7 +23,10 @@ FWLFONT = lat2-16.psfu.gz
# * SERVER
# * MIN - comfortable console workstation
# * MUSTHAVE - minimalistic one, base of all profiles
-APPSGROUP = FULL
+APPSGROUP = MUSTHAVE
+
+# add supported locals
+LOCALE = en,de,fr,da,hu,cz
# grub title part 1
FWLSREL = FWLive-${APPSGROUP}
@@ -34,7 +37,7 @@ FWVER = $(shell date +%Y%m%d)
FWCODENAME = -current
endif
ifeq ($(findstring testing,$(TREE)),testing)
-FWVER = 0.8rc2
+FWVER = 0.8
FWCODENAME = Kalgan
endif
FWVER ?= 0.7
@@ -86,14 +89,11 @@ INST_SERVER_APPS = ${INST_MIN_APPS} ncftp fuseftp postfix mysql libmysqlclient \
INST_X_APPS = xorg-server xorg-drivers xorg-fonts fvwm mplayer alsa-utils
INST_EXTRA_APPS = gimp gwenview wireshark kaffeine kasablanca ktorrent
INST_EXTRA_GTK_APPS = gimp wireshark gqview
-INST_LOCALE_APPS = firefox-hu firefox-de firefox-fr \
- kde-i18n-hu kde-i18n-de kde-i18n-fr firefox-da kde-i18n-da openoffice.org-i18n-da \
- openoffice.org-dict-hu openoffice.org-dict-fr openoffice.org-dict-de \
- openoffice.org-i18n-hu openoffice.org-i18n-de openoffice.org-i18n-fr \
- bibletime-i18n k3b-i18n
-INST_LOCALE_GTK_APPS = firefox-hu firefox-de firefox-fr firefox-da openoffice.org-i18n-da \
- openoffice.org-dict-hu openoffice.org-dict-fr openoffice.org-dict-de \
- openoffice.org-i18n-hu openoffice.org-i18n-de openoffice.org-i18n-fr
+INST_LOCALE_APPS = firefox-{${LOCALE}} kde-i18n-{${LOCALE}} \
+ openoffice.org-i18n-{${LOCALE}} bibletime-i18n k3b-i18n \
+ openoffice.org-dict-de openoffice.org-dict-hu
+INST_LOCALE_GTK_APPS = firefox-{${LOCALE}} openoffice.org-i18n-{${LOCALE}} \
+ openoffice.org-dict-hu openoffice.org-dict-de
INST_KDE_APPS = ${INST_MIN_APPS} ${INST_X_APPS} kdebase openoffice.org-kde firefox kmplayer \
flashplugin qtparted k3b
INST_KDE4_APPS = ${INST_MIN_APPS} ${INST_X_APPS} kde4
From janny at frugalware.org Sun Mar 2 11:28:51 2008
From: janny at frugalware.org (janny)
Date: Sun Mar 2 11:28:53 2008
Subject: [Frugalware-git] frugalware-current: gimp-2.4.5-1-i686
Message-ID: <20080302102851.23E8B1190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=88a336226d95ecb777ed6063445c9a7ec40327c9
commit 88a336226d95ecb777ed6063445c9a7ec40327c9
Author: janny
Date: Sun Mar 2 11:21:59 2008 +0100
gimp-2.4.5-1-i686
* minor version bump
* No new features are being added here, just bug-fixes.
diff --git a/source/xapps/gimp/FrugalBuild b/source/xapps/gimp/FrugalBuild
index ea79b3a..55b4ef6 100644
--- a/source/xapps/gimp/FrugalBuild
+++ b/source/xapps/gimp/FrugalBuild
@@ -3,7 +3,7 @@
# Contributor: VMiklos
pkgname=gimp
-pkgver=2.4.4
+pkgver=2.4.5
pkgrel=1
pkgdesc="The GNU Image Manipulation Program"
url="http://www.gimp.org/"
@@ -14,7 +14,7 @@ archs=('i686' 'x86_64')
makedepends=('gimp-print' 'perl-xml-parser')
up2date="lynx -dump $url/downloads/|grep tar.bz2|sed -n 's/.*-\(.*\)\.t.*/\1/;$ p'"
source=(ftp://ftp.gimp.org/pub/gimp/v2.4/$pkgname-$pkgver.tar.bz2)
-sha1sums=('47c80470e15e3fa29e46652130e870e0c952789f')
+sha1sums=('70cf6af5700cf6db73fca898510873394eb95581')
options=('scriptlet')
_F_gnome_desktop="y"
Finclude gnome-scriptlet
From vmiklos at frugalware.org Sun Mar 2 13:34:14 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Sun Mar 2 13:34:16 2008
Subject: [Frugalware-git] frugalware-current: include/kernel-source.install:
uname -r is $_F_kernel_ver$_F_kernel_uname
Message-ID: <20080302123414.BC11F1190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=b67a4677444343b3dfb4f5525f2066ad95da117d
commit b67a4677444343b3dfb4f5525f2066ad95da117d
Author: Miklos Vajna
Date: Sun Mar 2 13:33:41 2008 +0100
include/kernel-source.install: uname -r is $_F_kernel_ver$_F_kernel_uname
and not $_F_kernel_uname, i was wrong in the previous commit
diff --git a/source/include/kernel-source.install b/source/include/kernel-source.install
index fba56c5..7af0232 100644
--- a/source/include/kernel-source.install
+++ b/source/include/kernel-source.install
@@ -1,8 +1,5 @@
post_install()
{
- ver=$_F_kernel_ver-$_F_kernel_rel
- uname=$_F_kernel_uname
-
if [ "`vercmp 2.6.24 $_F_kernel_ver`" -le 0 ]; then
arch |grep -q 'i.86' && OLD_KARCH=i386 || OLD_KARCH=`arch`
KARCH=x86
@@ -10,11 +7,11 @@ post_install()
arch |grep -q 'i.86' && KARCH=i386 || KARCH=`arch`
fi
- if [ -e /usr/src/linux-$_F_kernel_uname/.config ]; then
- rm -f /usr/src/linux-$_F_kernel_uname/config
+ if [ -e /usr/src/linux-$_F_kernel_ver$_F_kernel_uname/.config ]; then
+ rm -f /usr/src/linux-$_F_kernel_ver$_F_kernel_uname/config
else
- mv /usr/src/linux-$_F_kernel_uname/config \
- /usr/src/linux-$_F_kernel_uname/.config
+ mv /usr/src/linux-$_F_kernel_ver$_F_kernel_uname/config \
+ /usr/src/linux-$_F_kernel_ver$_F_kernel_uname/.config
fi
# architecture specific tasks
cd /usr/src/linux
From priyank at frugalware.org Sun Mar 2 14:50:22 2008
From: priyank at frugalware.org (Priyank)
Date: Sun Mar 2 14:50:24 2008
Subject: [Frugalware-git]
frugalware-current: xchat-systray-integration-2.4.5-5-i686
Message-ID: <20080302135022.327681190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=a30c78fd8619fddeeed93253bf86add9c15f080b
commit a30c78fd8619fddeeed93253bf86add9c15f080b
Author: Priyank
Date: Sun Mar 2 19:16:54 2008 +0530
xchat-systray-integration-2.4.5-5-i686
* Added a patch to fix crashes while launching some applications from this plugin.
* Closes #1679
diff --git a/source/xapps-extra/xchat-systray-integration/FrugalBuild b/source/xapps-extra/xchat-systray-integration/FrugalBuild
index cb2bdf2..7767760 100644
--- a/source/xapps-extra/xchat-systray-integration/FrugalBuild
+++ b/source/xapps-extra/xchat-systray-integration/FrugalBuild
@@ -4,7 +4,7 @@
pkgname=xchat-systray-integration
pkgver=2.4.5
-pkgrel=4
+pkgrel=5
pkgdesc="Systray integration for xchat"
_F_sourceforge_dirname="xchat2-plugins"
_F_sourceforge_ext="-src.tar.gz"
@@ -14,11 +14,14 @@ url="http://www.blight.tk/"
depends=('xchat')
groups=('xapps-extra')
archs=('i686' 'x86_64')
-sha1sums=('d7bad0f60c1944ce385e5799eb08a45a081365ab')
+source=(${source[@]} double_free_fix.diff)
+sha1sums=('d7bad0f60c1944ce385e5799eb08a45a081365ab' \
+ 'ff206f52880a12664cf9e307b667d9ef49ea7ee2')
build()
{
Fcd
+ Fpatch double_free_fix.diff
[ "$CARCH" == "x86_64" ] && CFLAGS="$CFLAGS -fPIC -DPIC"
Fsed "CFLAGS = .*" "CFLAGS=${CFLAGS}" Makefile
Fmake
diff --git a/source/xapps-extra/xchat-systray-integration/double_free_fix.diff b/source/xapps-extra/xchat-systray-integration/double_free_fix.diff
new file mode 100644
index 0000000..88cb25d
--- /dev/null
+++ b/source/xapps-extra/xchat-systray-integration/double_free_fix.diff
@@ -0,0 +1,27 @@
+diff -Naur xchat-systray-integration-2.4.5/src/menu.c xchat-systray-integration-2.4.5.new/src/menu.c
+--- xchat-systray-integration-2.4.5/src/menu.c 2004-04-30 18:08:10.000000000 +0530
++++ xchat-systray-integration-2.4.5.new/src/menu.c 2008-03-02 19:12:25.000000000 +0530
+@@ -10,7 +10,6 @@
+ char command[156]="exec ";
+ strcat(command, bpath);
+ xchat_command( ph, command );
+- g_free(command);
+
+ }
+
+@@ -20,7 +19,6 @@
+ char command[156]="exec ";
+ strcat(command, epath);
+ xchat_command( ph, command );
+- g_free(command);
+
+ }
+
+@@ -30,7 +28,6 @@
+ char command[156]="exec ";
+ strcat(command, ppath);
+ xchat_command( ph, command );
+- g_free(command);
+
+ }
+
From vmiklos at frugalware.org Sun Mar 2 15:57:23 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Sun Mar 2 15:57:25 2008
Subject: [Frugalware-git] homepage-ng: donations: add distrowatch
Message-ID: <20080302145723.B3FE81190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=homepage-ng.git;a=commitdiff;h=b8d39737f564375ac95f88cf22c4618dd1f3ce49
commit b8d39737f564375ac95f88cf22c4618dd1f3ce49
Author: Miklos Vajna
Date: Sun Mar 2 15:57:18 2008 +0100
donations: add distrowatch
diff --git a/frugalware/donations.php b/frugalware/donations.php
index 5341df8..fe5f593 100644
--- a/frugalware/donations.php
+++ b/frugalware/donations.php
@@ -91,6 +91,7 @@ $cont4 = "
- Balazs Dianiska
- Francois Biot
- Sebastien Mazzucco
+ - Distrowath.com
";
fwmiddlebox("Monetary donations", $cont4);
From vmiklos at frugalware.org Sun Mar 2 16:04:12 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Sun Mar 2 16:04:13 2008
Subject: [Frugalware-git] homepage-ng: donations: remove ancient 'wishes'
section
Message-ID: <20080302150412.E00B21190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=homepage-ng.git;a=commitdiff;h=e58d7c06995f01608d28466f9643227f0b62f0fa
commit e58d7c06995f01608d28466f9643227f0b62f0fa
Author: Miklos Vajna
Date: Sun Mar 2 16:04:00 2008 +0100
donations: remove ancient 'wishes' section
we no longer need a hdd for yugo, etc.
diff --git a/frugalware/donations.php b/frugalware/donations.php
index fe5f593..e60c91d 100644
--- a/frugalware/donations.php
+++ b/frugalware/donations.php
@@ -49,12 +49,7 @@ if you wish to donate money.");
fwmiddlebox(gettext("Donations"), $fwdonatewelcome);
-$cont1 = "Wishes:
-- at least one 10-20GB IDE HDD for i686 buildserver's system and at least one bigger (80-100GB) for i686 buildserver's chroot environments
-- 10-20GB IDE HDD for testing Xen
-- 10GB IDE HDD for testing the setup
-- PegasosPPC or/and other PowerPC computer to use as buildserver
-
Received:
+$cont1 = "Received:
- Socket939 Motherboard + AMD Athlon64 3000+ CPU Socket939 version + 512MB DDR400 RAM (x86_64 buildserver)
- Socket939 Motherboard + AMD Athlon64 3000+ CPU Socket939 version + 1GB DDR400 RAM (main server)
- Codegen case for the new x86_64 buildserver (Krisztian VASAS)
From vmiklos at frugalware.org Sun Mar 2 16:07:43 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Sun Mar 2 16:07:44 2008
Subject: [Frugalware-git] homepage-ng: donations: typo fix
Message-ID: <20080302150743.871401190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=homepage-ng.git;a=commitdiff;h=c634dff77979e5558e4f6d841e8e0a48a41306a1
commit c634dff77979e5558e4f6d841e8e0a48a41306a1
Author: Miklos Vajna
Date: Sun Mar 2 16:07:30 2008 +0100
donations: typo fix
thx devil505 for noticing it
diff --git a/frugalware/donations.php b/frugalware/donations.php
index e60c91d..0617660 100644
--- a/frugalware/donations.php
+++ b/frugalware/donations.php
@@ -86,7 +86,7 @@ $cont4 = "
- Balazs Dianiska
- Francois Biot
- Sebastien Mazzucco
- - Distrowath.com
+ - Distrowatch.com
";
fwmiddlebox("Monetary donations", $cont4);
From janny at frugalware.org Sun Mar 2 16:54:51 2008
From: janny at frugalware.org (janny)
Date: Sun Mar 2 16:54:52 2008
Subject: [Frugalware-git] fwlive: kernel-fwlive-2.6.24-3-i686
Message-ID: <20080302155451.1EE3A1190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=a6373f25545699c9fa5f7f22348334de55a5acb7
commit a6373f25545699c9fa5f7f22348334de55a5acb7
Author: janny
Date: Sun Mar 2 16:54:11 2008 +0100
kernel-fwlive-2.6.24-3-i686
* add missing patch
diff --git a/source/base-extra/kernel-fwlive/revert-NET_Add-if_addrlabel.h-to_sanitized_headers.patch b/source/base-extra/kernel-fwlive/revert-NET_Add-if_addrlabel.h-to_sanitized_headers.patch
new file mode 100644
index 0000000..dad14df
--- /dev/null
+++ b/source/base-extra/kernel-fwlive/revert-NET_Add-if_addrlabel.h-to_sanitized_headers.patch
@@ -0,0 +1,11 @@
+diff -Naur linux-2.6.24/include/linux/Kbuild linux-2.6.24-revert/include/linux/Kbuild
+--- linux-2.6.24/include/linux/Kbuild 2008-02-27 13:51:11.000000000 +0100
++++ linux-2.6.24-revert/include/linux/Kbuild 2008-02-27 13:48:47.000000000 +0100
+@@ -217,7 +217,6 @@
+ unifdef-y += icmp.h
+ unifdef-y += icmpv6.h
+ unifdef-y += if_addr.h
+-unifdef-y += if_addrlabel.h
+ unifdef-y += if_arp.h
+ unifdef-y += if_bridge.h
+ unifdef-y += if_ec.h
From priyank at frugalware.org Sun Mar 2 18:09:11 2008
From: priyank at frugalware.org (Priyank)
Date: Sun Mar 2 18:09:13 2008
Subject: [Frugalware-git] gfpm: added a README
Message-ID: <20080302170911.7CC551190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=2cc0e9cb71b55b25ad0ce985c0dfc2f741686ba1
commit 2cc0e9cb71b55b25ad0ce985c0dfc2f741686ba1
Author: Priyank
Date: Sun Mar 2 22:38:29 2008 +0530
added a README
diff --git a/README b/README
new file mode 100644
index 0000000..f1f5097
--- /dev/null
+++ b/README
@@ -0,0 +1,4 @@
+Gfpm 1.1.0 README
+==================
+
+
From priyank at frugalware.org Sun Mar 2 18:09:30 2008
From: priyank at frugalware.org (Priyank)
Date: Sun Mar 2 18:09:32 2008
Subject: [Frugalware-git] gfpm: indentation fixes
Message-ID: <20080302170930.E78001190499@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=6930eb351be7c1b47067cee165839b94a2f3a4dc
commit 6930eb351be7c1b47067cee165839b94a2f3a4dc
Author: Priyank
Date: Sun Mar 2 22:38:53 2008 +0530
indentation fixes
diff --git a/src/gfpm-progress.c b/src/gfpm-progress.c
index d79a4da..171f01f 100644
--- a/src/gfpm-progress.c
+++ b/src/gfpm-progress.c
@@ -33,7 +33,7 @@
extern GtkWidget *gfpm_mw;
GtkProgressBar *progressbar = NULL;
-GtkWidget *progresswindow = NULL;
+GtkWidget *progresswindow = NULL;
static GtkWidget *main_label = NULL;
static GtkWidget *sub_label = NULL;
static GtkWidget *rate_label = NULL;
@@ -45,7 +45,7 @@ static GtkWidget *button_close = NULL;
static GtkWidget *autoclose_checkbtn = NULL;
GtkTextIter t_iter;
-GtkTextBuffer *buffer = NULL;
+GtkTextBuffer *buffer = NULL;
float rate;
int offset;
@@ -97,7 +97,8 @@ gfpm_progress_init (void)
static void
cb_gfpm_close_button_clicked (GtkWidget *button, gpointer data)
{
- gfpm_progress_show (FALSE);
+ pacman_trans_release ();
+// gfpm_progress_show (FALSE);
return;
}
@@ -167,13 +168,13 @@ gfpm_progress_show (gboolean show)
int
gfpm_progress_update (netbuf *ctl, int xferred, void *arg)
{
- int size;
- int per;
- char text[6];
- char rate_text[10];
- struct timeval t1;
- float tdiff;
- gchar *rx_str = NULL;
+ int size;
+ int per;
+ char text[6];
+ char rate_text[10];
+ struct timeval t1;
+ float tdiff;
+ gchar *rx_str = NULL;
while (gtk_events_pending())
gtk_main_iteration ();
@@ -213,7 +214,6 @@ gfpm_progress_update (netbuf *ctl, int xferred, void *arg)
while (gtk_events_pending())
gtk_main_iteration ();
-
return 1;
}
From janny at frugalware.org Sun Mar 2 21:38:11 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Sun Mar 2 21:38:14 2008
Subject: [Frugalware-git] fwlive_pkgs: grub-theme-fwlive-0.2.8-1-i686
Message-ID: <20080302203812.00815119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=cb5b54b67f25fd87eb2c8226e5c9ebf3c98fba29
commit cb5b54b67f25fd87eb2c8226e5c9ebf3c98fba29
Author: Janos Kovacs
Date: Sun Mar 2 21:33:08 2008 +0100
grub-theme-fwlive-0.2.8-1-i686
* version bump
* add cs_CZ language
diff --git a/source/base-extra/grub-theme-fwlive/FrugalBuild b/source/base-extra/grub-theme-fwlive/FrugalBuild
index c10119d..2ec1366 100644
--- a/source/base-extra/grub-theme-fwlive/FrugalBuild
+++ b/source/base-extra/grub-theme-fwlive/FrugalBuild
@@ -3,10 +3,10 @@
pkgname=grub-theme-fwlive
_F_archive_name=fwlive-grub-theme
-pkgver=0.2.7
+pkgver=0.2.8
pkgrel=1
pkgdesc="FwLive theme for GRUB gfxboot."
-url="http://frugalware.org/~janny/fwlive_themes"
+url="http://frugalware.org/~janny/sources_pkgs"
rodepends=('grub')
makedepends=('gfxboot>=3.3.22' 'perl-html-parser' 'cpio')
groups=('base-extra')
@@ -14,11 +14,11 @@ archs=('i686' 'x86_64')
up2date="lynx -dump $url | Flasttar"
source=($url/$_F_archive_name-$pkgver.tar.bz2)
options=('nodocs')
-sha1sums=('a88bacff3199d9f5e85dce5e2f3fe4e6d6893f82')
+sha1sums=('46d47e34bee9661f43ea024bda403798676d18f0')
build()
{
- cd $Fsrcdir/themes/fwlive
+ cd $Fsrcdir/fwlive
make BINDIR=/usr/sbin/
Ffilerel boot/message /boot/grub/message-fwlive
}
From vmiklos at frugalware.org Sun Mar 2 22:14:52 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Sun Mar 2 22:14:53 2008
Subject: [Frugalware-git] frugalware-current: hardinfo-0.4.2.3-3-x86_64
Message-ID: <20080302211452.82C41119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=08e2512da45ada9646857556d1591d5bec686191
commit 08e2512da45ada9646857556d1591d5bec686191
Author: Miklos Vajna
Date: Sun Mar 2 22:14:38 2008 +0100
hardinfo-0.4.2.3-3-x86_64
fix up hardinfo-cflags.diff for the 'lib64' test
diff --git a/source/gnome-extra/hardinfo/FrugalBuild b/source/gnome-extra/hardinfo/FrugalBuild
index f81d843..881c491 100644
--- a/source/gnome-extra/hardinfo/FrugalBuild
+++ b/source/gnome-extra/hardinfo/FrugalBuild
@@ -4,7 +4,7 @@
pkgname=hardinfo
pkgver=0.4.2.3
-pkgrel=2
+pkgrel=3
pkgdesc="A system information and benchmark tool."
_F_berlios_ext=".tar.bz2"
_F_gnome_desktop="y"
@@ -16,6 +16,6 @@ groups=('gnome-extra')
archs=('i686' 'x86_64')
sha1sums=('b76e332dc4dd173a1afed3c3da292f85e9bbfe65' \
'18894bbc8fb42655660e700543adb04db5568308' \
- '43dca595f9548565c973608b05d3a186186fa9f0')
+ '28d0e569efc9c41d169e7b3c3f88888ab7a411f9')
# optimization OK
diff --git a/source/gnome-extra/hardinfo/hardinfo-cflags.diff b/source/gnome-extra/hardinfo/hardinfo-cflags.diff
index 65418f7..ab5456b 100644
--- a/source/gnome-extra/hardinfo/hardinfo-cflags.diff
+++ b/source/gnome-extra/hardinfo/hardinfo-cflags.diff
@@ -6,7 +6,7 @@ diff -Naur hardinfo-0.4.2.3/configure hardinfo-0.4.2.3.new/configure
ln -sf linux/x86_64 arch/this
ARCH="ARCH_x86_64"
- LIBDIR="/usr/lib64" ;;
-+ LIBDIR="/usr/lib64"
++ LIBDIR="/usr/lib"
+ PROC="k8" ;;
mips*)
ln -sf linux/mips arch/this
From vmiklos at frugalware.org Mon Mar 3 15:40:02 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Mon Mar 3 15:40:03 2008
Subject: [Frugalware-git] pacman-tools: syncpkgd: don't hardcode
/home/syncpkgd
Message-ID: <20080303144002.719BE119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=pacman-tools.git;a=commitdiff;h=fab116c1de8696e241e6117678eedd1c10b56503
commit fab116c1de8696e241e6117678eedd1c10b56503
Author: Miklos Vajna
Date: Mon Mar 3 15:39:58 2008 +0100
syncpkgd: don't hardcode /home/syncpkgd
diff --git a/syncpkgd/syncpkgcd.py b/syncpkgd/syncpkgcd.py
index 365bb1a..4b12613 100644
--- a/syncpkgd/syncpkgcd.py
+++ b/syncpkgd/syncpkgcd.py
@@ -21,6 +21,7 @@ class Options:
class Syncpkgcd:
def __init__(self, options):
self.options = options
+ self.home = pwd.getpwnam(options.uid).pw_dir
def on_sigterm(num, frame):
raise KeyboardInterrupt
signal.signal(signal.SIGTERM, on_sigterm)
@@ -95,7 +96,7 @@ class Syncpkgcd:
pkgver = "-".join(pkgarr[-3:-1])
arch = pkgarr[-1]
self.log(pkg, "starting build")
- sock = os.popen("export HOME=/home/syncpkgd; . ~/.repoman.conf; echo $fst_root; echo $%s_servers" % tree)
+ sock = os.popen("export HOME=%s; . ~/.repoman.conf; echo $fst_root; echo $%s_servers" % (self.home, tree))
buf = sock.readlines()
sock.close()
fst_root = buf[0].strip()
@@ -174,7 +175,7 @@ class Syncpkgcd:
def system(self, cmd):
logfile = "syncpkgcd-%s.log" % time.strftime("%Y%m%d", time.localtime())
- return os.system("export HOME=/home/syncpkgd; %s >> %s 2>&1" % (cmd, logfile))
+ return os.system("export HOME=%s; %s >> %s 2>&1" % (self.home, cmd, logfile))
def go(self, pkgname):
for root, dirs, files in os.walk("."):
From vmiklos at frugalware.org Mon Mar 3 17:16:59 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Mon Mar 3 17:17:01 2008
Subject: [Frugalware-git] pacman-tools: update syncpkgcd documentation
Message-ID: <20080303161659.B3445119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=pacman-tools.git;a=commitdiff;h=f9aa42018d5cefcab93d3c2ead81120eef0b0925
commit f9aa42018d5cefcab93d3c2ead81120eef0b0925
Author: Miklos Vajna
Date: Mon Mar 3 17:16:31 2008 +0100
update syncpkgcd documentation
- remove references to darcs
- add note about REMOTEHOME
- other minor fixes
diff --git a/syncpkgd/syncpkgcd.txt b/syncpkgd/syncpkgcd.txt
index 2b384de..7a189e5 100644
--- a/syncpkgd/syncpkgcd.txt
+++ b/syncpkgd/syncpkgcd.txt
@@ -26,15 +26,19 @@ syncpkgcd [options]
To set up syncpkgcd, you need the followings.
-* First, check your firewall: outgoing connections to `genesis.frugalware.org`
-should be allowed on ports 22 and 80.
+* First, check your firewall: outgoing connections to `git.frugalware.org`
+should be allowed on ports 22 and 80. (If you use the default Frugalware
+firewall configuration then no changes are needed.)
* Second, you need to edit the server_url, server_user and server_pass variables
-in /etc/syncpkgcd/cconfig.py.
+in /etc/syncpkgcd/cconfig.py. In most cases we (the Frugalware developers)
+provide the syncpkgd server, so contact us to get an account.
* Now switch to the syncpkgd user, using:
----
+# mkdir -p /home/syncpkgd
+# chown syncpkgd.daemon /home/syncpkgd
# su - syncpkgd
----
@@ -47,17 +51,18 @@ $ ssh-keygen -t dsa
NOTE: The `\~/.ssh/id_dsa.pub` file should be appended to `\~/.ssh/authorized_keys` on
the server with a `command="syncpkg-shell " ` prefix.
-* Add the followings to your `\~/.repoman.conf`:
+* Add the followings to your `\~/.repoman.conf` (still as `syncpkgd`):
----
repos=('stable' 'current')
-stable_servers=("syncpkgd@darcs.frugalware.org:/home/ftp/pub/frugalware/frugalware-stable")
+stable_servers=("syncpkgd@git.frugalware.org:/home/ftp/pub/frugalware/frugalware-stable")
current_servers=("syncpkgd@git.frugalware.org:/home/ftp/pub/frugalware/frugalware-current")
fst_root=~/repos
+REMOTEHOME=/home/syncpkgd
----
-* Now login to darcs.frugalware.org and git.frugalware.org manually so that the
-fingerprint of the servers will be added to the `\~/.ssh/known_hosts` file.
+* Now login to git.frugalware.org manually so that the fingerprint of the
+ servers will be added to the `\~/.ssh/known_hosts` file.
* You need to create the directory:
@@ -65,7 +70,17 @@ fingerprint of the servers will be added to the `\~/.ssh/known_hosts` file.
$ mkdir -p ~/repos
----
-* And now you can enable and start syncpkgcd:
+* You are done with the user configuration, switch back to root and check if
+ the line
+
+----
+syncpkgd ALL=(ALL) NOPASSWD: /usr/bin/makepkg
+----
+
+is in `/etc/sudoers`. It should be, if you installed the `pacman-tools` package
+and you haven't commented it out.
+
+* Finally you can enable and start syncpkgcd as root:
----
# service syncpkgcd add
From vmiklos at frugalware.org Mon Mar 3 20:44:45 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Mon Mar 3 20:44:46 2008
Subject: [Frugalware-git] frugalware-current: tools/usb_install: get rid of
the bc dependency
Message-ID: <20080303194445.0CD5F119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=760ecca8255529079181cbd4264a93f69449e3a8
commit 760ecca8255529079181cbd4264a93f69449e3a8
Author: Miklos Vajna
Date: Mon Mar 3 20:44:13 2008 +0100
tools/usb_install: get rid of the bc dependency
closes #2817
diff --git a/tools/usb_install.sh b/tools/usb_install.sh
index f100eb8..131bb31 100644
--- a/tools/usb_install.sh
+++ b/tools/usb_install.sh
@@ -166,7 +166,7 @@ ver=`grep '' volumes.xml |sed 's/.*>\(.*\)<.*/\1/'`
[ -z "$ver" ] && ver=`date +%Y%m%d`
rel=`grep '' volumes.xml |sed 's/.*>\(.*\)<.*/\1/'`
[ -z "$rel" ] && rel="-current"
-size=`echo "$(gzip --list initrd-$(uname -m).img.gz|grep initrd-$(uname -m).img|sed 's/.*[0-9]\+ \+\([0-9]\+\) .*/\1/')/1024"|bc`
+size=$(expr $(zcat initrd-$(uname -m).img.gz | wc --bytes) / 1024)
echo "default=0
timeout=10
gfxmenu /boot/grub/message
From vmiklos at frugalware.org Mon Mar 3 23:28:10 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Mon Mar 3 23:28:13 2008
Subject: [Frugalware-git] frugalware-current: perl-5.10.0-3-i686
Message-ID: <20080303222810.6E773119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=69a6a65860416ed96c86b4da965be0a8e9d5c70d
commit 69a6a65860416ed96c86b4da965be0a8e9d5c70d
Author: Miklos Vajna
Date: Mon Mar 3 23:27:48 2008 +0100
perl-5.10.0-3-i686
- fix symlink handling in install script
- closes #2833
diff --git a/source/base/perl/FrugalBuild b/source/base/perl/FrugalBuild
index 07fa5a3..1649ea2 100644
--- a/source/base/perl/FrugalBuild
+++ b/source/base/perl/FrugalBuild
@@ -4,7 +4,7 @@
pkgname=perl
pkgver=5.10.0
-pkgrel=2
+pkgrel=3
pkgdesc="Practical Extraction and Report Language."
url="http://www.perl.org/"
depends=('gdbm' 'db>=4.6.18')
@@ -18,9 +18,8 @@ groups=('base' 'devel-core')
archs=('i686' 'x86_64' 'ppc')
up2date="lynx -dump http://www.perl.org/|grep -m1 'Current Release:'|sed 's/.*]\(.*\).*/\1/'"
source=(http://www.cpan.org/src/5.0/$pkgname-$pkgver.tar.gz \
- $pkgname.install libnet.cfg perl-5.8.6-picdl.patch0)
+ libnet.cfg perl-5.8.6-picdl.patch0)
sha1sums=('adf73606dd5248af7ccdd735bcaa0e628ea75b3c' \
- 'af913431187111c8051dcbde5081ee746ece8dd0' \
'92179e28215bf7b802ded72e0ca6e473a21f5003' \
'3000bd0130ed20e0ff5d9fb0147240e3909473a7')
diff --git a/source/base/perl/perl.install b/source/base/perl/perl.install
index 7517146..6a47265 100644
--- a/source/base/perl/perl.install
+++ b/source/base/perl/perl.install
@@ -1,7 +1,7 @@
post_install() {
for ver in 5.8.{0,1,2,3,4,5,6,7,8} 5.10.0; do
if [ -d usr/lib/perl5/$ver ] && \
- [ ! `test -h usr/lib/perl5/$ver; echo $?` ]; then
+ [ ! -h usr/lib/perl5/$ver ]; then
echo -n "adapting old version: $ver... "
cp --no-dereference -pr --reply=no usr/lib/perl5/$ver/* usr/lib/perl5/current/ >/dev/null 2>&1
cp --no-dereference -pr --reply=no usr/lib/perl5/site_perl/$ver/* usr/lib/perl5/site_perl/current/ >/dev/null 2>&1
From janny at frugalware.org Tue Mar 4 08:09:29 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Tue Mar 4 08:09:31 2008
Subject: [Frugalware-git] fwlive_pkgs: grub-theme-fwlive-0.2.8.1-1-i686
Message-ID: <20080304070929.51EBE1190216@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=4223a362ef1b64b87ba8188c4a187be019110caf
commit 4223a362ef1b64b87ba8188c4a187be019110caf
Author: Janos Kovacs
Date: Tue Mar 4 08:07:17 2008 +0100
grub-theme-fwlive-0.2.8.1-1-i686
* version bump
* add F1 (help) menu item (Big thx to IroNiQ)
diff --git a/source/base-extra/grub-theme-fwlive/FrugalBuild b/source/base-extra/grub-theme-fwlive/FrugalBuild
index 2ec1366..3252678 100644
--- a/source/base-extra/grub-theme-fwlive/FrugalBuild
+++ b/source/base-extra/grub-theme-fwlive/FrugalBuild
@@ -3,18 +3,18 @@
pkgname=grub-theme-fwlive
_F_archive_name=fwlive-grub-theme
-pkgver=0.2.8
+pkgver=0.2.8.1
pkgrel=1
pkgdesc="FwLive theme for GRUB gfxboot."
-url="http://frugalware.org/~janny/sources_pkgs"
+url="http://frugalware.org/~janny/source_pkgs"
rodepends=('grub')
makedepends=('gfxboot>=3.3.22' 'perl-html-parser' 'cpio')
groups=('base-extra')
archs=('i686' 'x86_64')
up2date="lynx -dump $url | Flasttar"
-source=($url/$_F_archive_name-$pkgver.tar.bz2)
+source=($url/$_F_archive_name-$pkgver.tar.gz)
options=('nodocs')
-sha1sums=('46d47e34bee9661f43ea024bda403798676d18f0')
+sha1sums=('4100ad807fe01b0abf010bafa28a333363ba5415')
build()
{
From vmiklos at frugalware.org Tue Mar 4 10:28:56 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Tue Mar 4 10:28:58 2008
Subject: [Frugalware-git] frugalware-0.7: kernel-2.6.22-7sayshell6-i686
Message-ID: <20080304092856.7E0F11190216@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-0.7.git;a=commitdiff;h=6c295cc15aea7dc2101d438ce5987d8a571ecc7d
commit 6c295cc15aea7dc2101d438ce5987d8a571ecc7d
Author: Miklos Vajna
Date: Tue Mar 4 10:27:24 2008 +0100
kernel-2.6.22-7sayshell6-i686
- update to patchlevel '.19'
- closes #2834
diff --git a/source/base/kernel/29eb51101c02df517ca64ec472d7501127ad1da8.patch b/source/base/kernel/29eb51101c02df517ca64ec472d7501127ad1da8.patch
deleted file mode 100644
index f670643..0000000
--- a/source/base/kernel/29eb51101c02df517ca64ec472d7501127ad1da8.patch
+++ /dev/null
@@ -1,86 +0,0 @@
-From: Roland McGrath
-Date: Mon, 16 Jul 2007 08:03:16 +0000 (-0700)
-Subject: Handle bogus %cs selector in single-step instruction decoding
-X-Git-Tag: v2.6.23-rc1~492
-X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=29eb51101c02df517ca64ec472d7501127ad1da8
-
-Handle bogus %cs selector in single-step instruction decoding
-
-The code for LDT segment selectors was not robust in the face of a bogus
-selector set in %cs via ptrace before the single-step was done.
-
-Signed-off-by: Roland McGrath
-Signed-off-by: Linus Torvalds
----
-
-diff --git a/arch/i386/kernel/ptrace.c b/arch/i386/kernel/ptrace.c
-index 1c075f5..0c8f00e 100644
---- a/arch/i386/kernel/ptrace.c
-+++ b/arch/i386/kernel/ptrace.c
-@@ -164,14 +164,22 @@ static unsigned long convert_eip_to_linear(struct task_struct *child, struct pt_
- u32 *desc;
- unsigned long base;
-
-- down(&child->mm->context.sem);
-- desc = child->mm->context.ldt + (seg & ~7);
-- base = (desc[0] >> 16) | ((desc[1] & 0xff) << 16) | (desc[1] & 0xff000000);
-+ seg &= ~7UL;
-
-- /* 16-bit code segment? */
-- if (!((desc[1] >> 22) & 1))
-- addr &= 0xffff;
-- addr += base;
-+ down(&child->mm->context.sem);
-+ if (unlikely((seg >> 3) >= child->mm->context.size))
-+ addr = -1L; /* bogus selector, access would fault */
-+ else {
-+ desc = child->mm->context.ldt + seg;
-+ base = ((desc[0] >> 16) |
-+ ((desc[1] & 0xff) << 16) |
-+ (desc[1] & 0xff000000));
-+
-+ /* 16-bit code segment? */
-+ if (!((desc[1] >> 22) & 1))
-+ addr &= 0xffff;
-+ addr += base;
-+ }
- up(&child->mm->context.sem);
- }
- return addr;
-diff --git a/arch/x86_64/kernel/ptrace.c b/arch/x86_64/kernel/ptrace.c
-index fa6775e..e83cc67 100644
---- a/arch/x86_64/kernel/ptrace.c
-+++ b/arch/x86_64/kernel/ptrace.c
-@@ -102,16 +102,25 @@ unsigned long convert_rip_to_linear(struct task_struct *child, struct pt_regs *r
- u32 *desc;
- unsigned long base;
-
-- down(&child->mm->context.sem);
-- desc = child->mm->context.ldt + (seg & ~7);
-- base = (desc[0] >> 16) | ((desc[1] & 0xff) << 16) | (desc[1] & 0xff000000);
-+ seg &= ~7UL;
-
-- /* 16-bit code segment? */
-- if (!((desc[1] >> 22) & 1))
-- addr &= 0xffff;
-- addr += base;
-+ down(&child->mm->context.sem);
-+ if (unlikely((seg >> 3) >= child->mm->context.size))
-+ addr = -1L; /* bogus selector, access would fault */
-+ else {
-+ desc = child->mm->context.ldt + seg;
-+ base = ((desc[0] >> 16) |
-+ ((desc[1] & 0xff) << 16) |
-+ (desc[1] & 0xff000000));
-+
-+ /* 16-bit code segment? */
-+ if (!((desc[1] >> 22) & 1))
-+ addr &= 0xffff;
-+ addr += base;
-+ }
- up(&child->mm->context.sem);
- }
-+
- return addr;
- }
-
diff --git a/source/base/kernel/CVE-2007-6206.diff b/source/base/kernel/CVE-2007-6206.diff
deleted file mode 100644
index cd6b4e5..0000000
--- a/source/base/kernel/CVE-2007-6206.diff
+++ /dev/null
@@ -1,37 +0,0 @@
-From: Ingo Molnar
-Date: Wed, 28 Nov 2007 12:59:18 +0000 (+0100)
-Subject: vfs: coredumping fix
-X-Git-Tag: v2.6.24-rc4~82
-X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=c46f739dd39db3b07ab5deb4e3ec81e1c04a91af
-
-vfs: coredumping fix
-
-fix: http://bugzilla.kernel.org/show_bug.cgi?id=3043
-
-only allow coredumping to the same uid that the coredumping
-task runs under.
-
-Signed-off-by: Ingo Molnar
-Acked-by: Alan Cox
-Acked-by: Christoph Hellwig
-Acked-by: Al Viro
-Signed-off-by: Linus Torvalds
----
-
-diff --git a/fs/exec.c b/fs/exec.c
-index 4ccaaa4..282240a 100644
---- a/fs/exec.c
-+++ b/fs/exec.c
-@@ -1780,6 +1780,12 @@ int do_coredump(long signr, int exit_code, struct pt_regs * regs)
- but keep the previous behaviour for now. */
- if (!ispipe && !S_ISREG(inode->i_mode))
- goto close_fail;
-+ /*
-+ * Dont allow local users get cute and trick others to coredump
-+ * into their pre-created files:
-+ */
-+ if (inode->i_uid != current->fsuid)
-+ goto close_fail;
- if (!file->f_op)
- goto close_fail;
- if (!file->f_op->write)
diff --git a/source/base/kernel/FrugalBuild b/source/base/kernel/FrugalBuild
index 263e637..60b72bb 100644
--- a/source/base/kernel/FrugalBuild
+++ b/source/base/kernel/FrugalBuild
@@ -2,11 +2,8 @@
# Maintainer: VMiklos
_F_kernel_patches=(aacraid.diff pxa27x.diff CVE-2007-3843.diff \
- 29eb51101c02df517ca64ec472d7501127ad1da8.patch \
- a10d9a71bafd3a283da240d2868e71346d2aef6f.patch \
- CVE-2007-6206.diff \
CVE-2008-0009-10.diff)
Finclude kernel
# you can safely bump this. on the first bump you MUST rebuild all the external
# kernel modules so that they will have >=-styled deps instead of the = ones
-pkgrel=7sayshell5
+pkgrel=7sayshell6
diff --git a/source/base/kernel/a10d9a71bafd3a283da240d2868e71346d2aef6f.patch b/source/base/kernel/a10d9a71bafd3a283da240d2868e71346d2aef6f.patch
deleted file mode 100644
index b033800..0000000
--- a/source/base/kernel/a10d9a71bafd3a283da240d2868e71346d2aef6f.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From: Peter Zijlstra
-Date: Wed, 18 Jul 2007 18:59:22 +0000 (+0200)
-Subject: i386: fixup TRACE_IRQ breakage
-X-Git-Tag: v2.6.23-rc1~491
-X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=a10d9a71bafd3a283da240d2868e71346d2aef6f
-
-i386: fixup TRACE_IRQ breakage
-
-The TRACE_IRQS_ON function in iret_exc: calls a C function without
-ensuring that the segments are set properly. Move the trace function and
-the enabling of interrupt into the C stub.
-
-Signed-off-by: Peter Zijlstra
-Signed-off-by: Linus Torvalds
----
-
-diff --git a/arch/i386/kernel/entry.S b/arch/i386/kernel/entry.S
-index 32980b8..a714d6b 100644
---- a/arch/i386/kernel/entry.S
-+++ b/arch/i386/kernel/entry.S
-@@ -409,8 +409,6 @@ restore_nocheck_notrace:
- 1: INTERRUPT_RETURN
- .section .fixup,"ax"
- iret_exc:
-- TRACE_IRQS_ON
-- ENABLE_INTERRUPTS(CLBR_NONE)
- pushl $0 # no error code
- pushl $do_iret_error
- jmp error_code
-diff --git a/arch/i386/kernel/traps.c b/arch/i386/kernel/traps.c
-index 18c1c28..d32fd4b 100644
---- a/arch/i386/kernel/traps.c
-+++ b/arch/i386/kernel/traps.c
-@@ -518,10 +518,12 @@ fastcall void do_##name(struct pt_regs * regs, long error_code) \
- do_trap(trapnr, signr, str, 0, regs, error_code, NULL); \
- }
-
--#define DO_ERROR_INFO(trapnr, signr, str, name, sicode, siaddr) \
-+#define DO_ERROR_INFO(trapnr, signr, str, name, sicode, siaddr, irq) \
- fastcall void do_##name(struct pt_regs * regs, long error_code) \
- { \
- siginfo_t info; \
-+ if (irq) \
-+ local_irq_enable(); \
- info.si_signo = signr; \
- info.si_errno = 0; \
- info.si_code = sicode; \
-@@ -561,13 +563,13 @@ DO_VM86_ERROR( 3, SIGTRAP, "int3", int3)
- #endif
- DO_VM86_ERROR( 4, SIGSEGV, "overflow", overflow)
- DO_VM86_ERROR( 5, SIGSEGV, "bounds", bounds)
--DO_ERROR_INFO( 6, SIGILL, "invalid opcode", invalid_op, ILL_ILLOPN, regs->eip)
-+DO_ERROR_INFO( 6, SIGILL, "invalid opcode", invalid_op, ILL_ILLOPN, regs->eip, 0)
- DO_ERROR( 9, SIGFPE, "coprocessor segment overrun", coprocessor_segment_overrun)
- DO_ERROR(10, SIGSEGV, "invalid TSS", invalid_TSS)
- DO_ERROR(11, SIGBUS, "segment not present", segment_not_present)
- DO_ERROR(12, SIGBUS, "stack segment", stack_segment)
--DO_ERROR_INFO(17, SIGBUS, "alignment check", alignment_check, BUS_ADRALN, 0)
--DO_ERROR_INFO(32, SIGSEGV, "iret exception", iret_error, ILL_BADSTK, 0)
-+DO_ERROR_INFO(17, SIGBUS, "alignment check", alignment_check, BUS_ADRALN, 0, 0)
-+DO_ERROR_INFO(32, SIGSEGV, "iret exception", iret_error, ILL_BADSTK, 0, 1)
-
- fastcall void __kprobes do_general_protection(struct pt_regs * regs,
- long error_code)
diff --git a/source/include/kernel-version.sh b/source/include/kernel-version.sh
index 307b296..3d7ae20 100644
--- a/source/include/kernel-version.sh
+++ b/source/include/kernel-version.sh
@@ -18,4 +18,4 @@
# don't touch these!
_F_kernelver_ver=2.6.22
_F_kernelver_rel=6
-_F_kernelver_stable=16
+_F_kernelver_stable=19
From janny at frugalware.org Tue Mar 4 14:43:49 2008
From: janny at frugalware.org (Janny)
Date: Tue Mar 4 14:43:51 2008
Subject: [Frugalware-git] fwlive: fwlive-cmline
Message-ID: <20080304134349.61A261190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=3417d228c26706848fc8e600df71cf411bdd90d3
commit 3417d228c26706848fc8e600df71cf411bdd90d3
Author: Janny
Date: Tue Mar 4 14:42:25 2008 +0100
fwlive-cmline
* add two options to cmdline parameters
* autoexec and passwd
diff --git a/parse_cmdline.in b/parse_cmdline.in
index b0035e9..bbe4749 100644
--- a/parse_cmdline.in
+++ b/parse_cmdline.in
@@ -67,3 +67,33 @@ printf '[1;32m ================================================================
}
gen_issue > /etc/issue
+
+. /usr/lib/liblinuxlive
+
+# change password
+NEWROOTPASS="`cmdline_value passwd`"
+if [ "$NEWROOTPASS" = "ask" ]; then
+ echo -ne "\nEnter new password for root: "
+ read -s NEWROOTPASS
+fi
+
+if [ ! "$NEWROOTPASS" = "" ]; then
+ echo "root:$NEWROOTPASS" | /usr/sbin/chpasswd
+fi
+
+# debug
+#if grep debug /proc/cmdline 2>/dev/null >/dev/null; then
+# show_debug_banner
+# /mnt/live/bin/ash || /bin/bash || /bin/sh
+#fi
+
+# if autoexec= boot parameter is present, automatically start the command given.
+# If you need to execute several commands, separate them using ';'
+# If you need to use spaces in your command, use ~ instead
+# If you wish to reboot/poweroff after the command's execution is finished,
+# simply use autoexec=yourCommand;poweroff for example.
+AUTOCMD=$(cmdline_value "autoexec" | tr "~" " ")
+if [ "$AUTOCMD" != "" ]; then
+ echo "starting autoexec command: su --login -c \"$AUTOCMD\""
+ su --login -c "$AUTOCMD"
+fi
From priyank at frugalware.org Tue Mar 4 17:07:24 2008
From: priyank at frugalware.org (Priyank)
Date: Tue Mar 4 17:07:25 2008
Subject: [Frugalware-git] gfpm: changed the text of some buttons on the
quick pane to make it more clear for the user
Message-ID: <20080304160724.A4DC41190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=9abacb8bb86910ae6f0c015d086611deb263dbef
commit 9abacb8bb86910ae6f0c015d086611deb263dbef
Author: Priyank
Date: Tue Mar 4 21:36:24 2008 +0530
changed the text of some buttons on the quick pane to make it more clear for the user
* Closes #2814
diff --git a/data/gfpm.glade b/data/gfpm.glade
index 24c09d1..65347ff 100644
--- a/data/gfpm.glade
+++ b/data/gfpm.glade
@@ -663,7 +663,7 @@
True
GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
- Install
+ Install this Package
1
@@ -700,7 +700,7 @@
True
GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
- Remove
+ Remove this Package
1
@@ -740,7 +740,7 @@
True
GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
- Upgrade
+ Upgrade this Package
1
From priyank at frugalware.org Tue Mar 4 17:08:55 2008
From: priyank at frugalware.org (Priyank)
Date: Tue Mar 4 17:08:56 2008
Subject: [Frugalware-git] gfpm: hide the help button for now (until the
documentation for gfpm is ready) as it does nothing.
Message-ID: <20080304160855.0484F1190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=192464154ec91877ed0ed072202e14a0b8202bca
commit 192464154ec91877ed0ed072202e14a0b8202bca
Author: Priyank
Date: Tue Mar 4 21:37:53 2008 +0530
hide the help button for now (until the documentation for gfpm is ready) as it does nothing.
* Closes #2811
diff --git a/data/gfpm.glade b/data/gfpm.glade
index 65347ff..f53f8be 100644
--- a/data/gfpm.glade
+++ b/data/gfpm.glade
@@ -201,7 +201,6 @@
- True
Help
True
gtk-help
From priyank at frugalware.org Tue Mar 4 17:18:30 2008
From: priyank at frugalware.org (Priyank)
Date: Tue Mar 4 17:18:32 2008
Subject: [Frugalware-git] frugalware-current: gfpm-1.1.0-2-i686
Message-ID: <20080304161830.500521190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=276dd4badf5b27128d7f571da76c93081ea8b363
commit 276dd4badf5b27128d7f571da76c93081ea8b363
Author: Priyank
Date: Tue Mar 4 21:46:26 2008 +0530
gfpm-1.1.0-2-i686
* backported changes from gfpm-git
* Closes #2811
diff --git a/source/xapps/gfpm/FrugalBuild b/source/xapps/gfpm/FrugalBuild
index e321a3a..87b6eb5 100644
--- a/source/xapps/gfpm/FrugalBuild
+++ b/source/xapps/gfpm/FrugalBuild
@@ -3,7 +3,7 @@
pkgname=gfpm
pkgver=1.1.0
-pkgrel=1
+pkgrel=2
pkgdesc="Graphical Frugalware Package Manager"
url="http://ftp.frugalware.org/pub/other/gfpm"
depends=('glib2' 'gtk+2' 'libglade' 'pacman-g2>=3.6.7-2' 'inotify-tools' 'frugalwareutils>=0.7.9')
@@ -14,8 +14,8 @@ archs=('i686' 'x86_64')
_F_gnome_iconcache="y"
Finclude gnome-scriptlet
up2date="lynx -dump $url | Flasttar"
-source=($url/$pkgname-$pkgver.tar.gz)
-signatures=(${source[0]}.asc)
+source=($url/$pkgname-$pkgver.tar.gz gfpm_hide_help_button.diff)
+signatures=(${source[0]}.asc '')
build()
{
diff --git a/source/xapps/gfpm/gfpm_hide_help_button.diff b/source/xapps/gfpm/gfpm_hide_help_button.diff
new file mode 100644
index 0000000..a3f3588
--- /dev/null
+++ b/source/xapps/gfpm/gfpm_hide_help_button.diff
@@ -0,0 +1,11 @@
+diff -Naur gfpm-1.1.0/data/gfpm.glade gfpm-1.1.0.new/data/gfpm.glade
+--- gfpm-1.1.0/data/gfpm.glade 2008-03-02 01:22:31.000000000 +0530
++++ gfpm-1.1.0.new/data/gfpm.glade 2008-03-04 21:41:03.000000000 +0530
+@@ -201,7 +201,6 @@
+
+
+
+- True
+ Help
+ True
+ gtk-help
From vmiklos at frugalware.org Tue Mar 4 17:51:31 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Tue Mar 4 17:51:33 2008
Subject: [Frugalware-git] homepage-ng: FSA372-kernel
Message-ID: <20080304165131.CCA361190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=homepage-ng.git;a=commitdiff;h=802b67e5253a76fa524baad0a66d719e475e86e0
commit 802b67e5253a76fa524baad0a66d719e475e86e0
Author: Miklos Vajna
Date: Tue Mar 4 17:51:23 2008 +0100
FSA372-kernel
diff --git a/frugalware/xml/security.xml b/frugalware/xml/security.xml
index eec0d04..9ebf741 100644
--- a/frugalware/xml/security.xml
+++ b/frugalware/xml/security.xml
@@ -27,6 +27,20 @@
+ 372
+ 2008-03-04
+ vmiklos
+ kernel
+ 2.6.22-7sayshell5
+ 2.6.22-7sayshell6
+ http://bugs.frugalware.org/task/2834
+ http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-0007
+ A vulnerability have been reported in the Linux Kernel, which can be exploited by malicious, local users to disclose potentially sensitive information or gain escalated privileges.
+ The vulnerability is caused due to certain drivers with registered page fault handlers not correctly preventing size expansions of mapped memory regions beyond the originally allocated size. This can be exploited to gain access to other memory areas via e.g. the "mremap()" system call.
+ Successful exploitation may allow local attackers to disclose and manipulate kernel memory, which potentially can be leveraged to gain escalated privileges.
+
+
+
371
2008-02-26
vmiklos
From priyank at frugalware.org Tue Mar 4 17:59:06 2008
From: priyank at frugalware.org (Priyank)
Date: Tue Mar 4 17:59:08 2008
Subject: [Frugalware-git] gfpm: don't initialize gfpm-repomanager if gfpm is
not run as root (prevents a crash when run as non-root user)
Message-ID: <20080304165906.8C9C31190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=4a6bb7ab051009fbb329326bc25c1c2a352294fa
commit 4a6bb7ab051009fbb329326bc25c1c2a352294fa
Author: Priyank
Date: Tue Mar 4 22:28:20 2008 +0530
don't initialize gfpm-repomanager if gfpm is not run as root (prevents a crash when run as non-root user)
diff --git a/src/gfpm-interface.c b/src/gfpm-interface.c
index 125a40e..516b4dd 100644
--- a/src/gfpm-interface.c
+++ b/src/gfpm-interface.c
@@ -338,6 +338,10 @@ gfpm_interface_init (void)
gtk_widget_set_sensitive (glade_xml_get_widget(xml, "button_refresh1"), FALSE);
gtk_widget_set_sensitive (glade_xml_get_widget(xml, "button_file1"), FALSE);
}
+ else
+ {
+ gfpm_repomanager_init ();
+ }
/* initialize modules */
if (gfpm_db_init ())
@@ -347,7 +351,6 @@ gfpm_interface_init (void)
gfpm_optimize_db_dlg_init ();
gfpm_quickpane_init ();
gfpm_icmonitor_init ();
- gfpm_repomanager_init ();
gfpm_logviewer_init ();
gtk_widget_hide (gfpm_splash);
From priyank at frugalware.org Tue Mar 4 18:03:33 2008
From: priyank at frugalware.org (Priyank)
Date: Tue Mar 4 18:03:35 2008
Subject: [Frugalware-git] gfpm: disable the quick pane buttons Install,
Remove, Upgrade if gfpm is not run as root.
Message-ID: <20080304170333.286111190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=5d306235ece69b779d8da6047adae7cb288444fc
commit 5d306235ece69b779d8da6047adae7cb288444fc
Author: Priyank
Date: Tue Mar 4 22:32:53 2008 +0530
disable the quick pane buttons Install,Remove,Upgrade if gfpm is not run as root.
diff --git a/src/gfpm-quickpane.c b/src/gfpm-quickpane.c
index 9b87294..7cdd2c3 100644
--- a/src/gfpm-quickpane.c
+++ b/src/gfpm-quickpane.c
@@ -73,6 +73,14 @@ gfpm_quickpane_init (void)
"clicked",
G_CALLBACK(cb_gfpm_quickpane_readme_clicked),
NULL);
+
+ /* Disable the Quick pane Install,Remove,Upgrade buttons if gfpm is not run as root */
+ if (geteuid() != 0)
+ {
+ gtk_widget_set_sensitive ("quick_pane_install_btn", FALSE);
+ gtk_widget_set_sensitive ("quick_pane_remove_btn", FALSE);
+ gtk_widget_set_sensitive ("quick_pane_upgrade_btn", FALSE);
+ }
return;
}
From priyank at frugalware.org Tue Mar 4 18:04:36 2008
From: priyank at frugalware.org (Priyank)
Date: Tue Mar 4 18:04:38 2008
Subject: [Frugalware-git] gfpm: bah widgets are not strings :(
Message-ID: <20080304170436.18B561190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=8778a078acc2e3b22949a7dadebcae2a189fd7e0
commit 8778a078acc2e3b22949a7dadebcae2a189fd7e0
Author: Priyank
Date: Tue Mar 4 22:33:55 2008 +0530
bah widgets are not strings :(
diff --git a/src/gfpm-quickpane.c b/src/gfpm-quickpane.c
index 7cdd2c3..fc1b5d5 100644
--- a/src/gfpm-quickpane.c
+++ b/src/gfpm-quickpane.c
@@ -77,9 +77,9 @@ gfpm_quickpane_init (void)
/* Disable the Quick pane Install,Remove,Upgrade buttons if gfpm is not run as root */
if (geteuid() != 0)
{
- gtk_widget_set_sensitive ("quick_pane_install_btn", FALSE);
- gtk_widget_set_sensitive ("quick_pane_remove_btn", FALSE);
- gtk_widget_set_sensitive ("quick_pane_upgrade_btn", FALSE);
+ gtk_widget_set_sensitive (quick_pane_install_btn, FALSE);
+ gtk_widget_set_sensitive (quick_pane_remove_btn, FALSE);
+ gtk_widget_set_sensitive (quick_pane_upgrade_btn, FALSE);
}
return;
From priyank at frugalware.org Tue Mar 4 18:09:24 2008
From: priyank at frugalware.org (Priyank)
Date: Tue Mar 4 18:09:27 2008
Subject: [Frugalware-git] gfpm: Don't allow the user to do things like
databse optimization,
manage repositories etc if gfpm is run as non-root user.
Message-ID: <20080304170924.B67D71190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=f44c9d5b02c553fb0e0c36f40146efe6e48cc6e4
commit f44c9d5b02c553fb0e0c36f40146efe6e48cc6e4
Author: Priyank
Date: Tue Mar 4 22:38:43 2008 +0530
Don't allow the user to do things like databse optimization, manage repositories etc if gfpm is run as non-root user.
diff --git a/src/gfpm-interface.c b/src/gfpm-interface.c
index 516b4dd..0290e1d 100644
--- a/src/gfpm-interface.c
+++ b/src/gfpm-interface.c
@@ -334,13 +334,19 @@ gfpm_interface_init (void)
/* Disable Apply, Refresh and File buttons if user is not root */
if ( geteuid() != 0 )
{
+ /* disable some widgets */
gtk_widget_set_sensitive (glade_xml_get_widget(xml, "button_apply"), FALSE);
gtk_widget_set_sensitive (glade_xml_get_widget(xml, "button_refresh1"), FALSE);
gtk_widget_set_sensitive (glade_xml_get_widget(xml, "button_file1"), FALSE);
+ gtk_widget_set_sensitive (gfpm_get_widget("repos"), FALSE);
+ gtk_widget_set_sensitive (gfpm_get_widget("clr1"), FALSE);
+ gtk_widget_set_sensitive (gfpm_get_widget("opt1"), FALSE);
}
else
{
+ /* init repomanager only if gfpm is run as root user */
gfpm_repomanager_init ();
+
}
/* initialize modules */
From priyank at frugalware.org Tue Mar 4 18:15:25 2008
From: priyank at frugalware.org (Priyank)
Date: Tue Mar 4 18:15:26 2008
Subject: [Frugalware-git] gfpm: hide the right-click context menu for
packages if gfpm is run as non-root user.
Message-ID: <20080304171525.2045B1190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=0a269dca0f61dad0c2ce5ac781533072f936016e
commit 0a269dca0f61dad0c2ce5ac781533072f936016e
Author: Priyank
Date: Tue Mar 4 22:44:45 2008 +0530
hide the right-click context menu for packages if gfpm is run as non-root user.
diff --git a/src/gfpm-interface.c b/src/gfpm-interface.c
index 0290e1d..ed90c27 100644
--- a/src/gfpm-interface.c
+++ b/src/gfpm-interface.c
@@ -1446,6 +1446,9 @@ cb_gfpm_pkgs_tvw_right_click (GtkTreeView *treeview, GdkEventButton *event)
if (event->button != 3)
return;
+ if (geteuid() != 0)
+ return;
+
model = gtk_tree_view_get_model (GTK_TREE_VIEW(gfpm_pkgs_tvw));
selection = gtk_tree_view_get_selection (GTK_TREE_VIEW(gfpm_pkgs_tvw));
if ( FALSE == gtk_tree_selection_get_selected (selection, &model, &iter) )
@@ -1496,7 +1499,7 @@ cb_gfpm_pkgs_tvw_right_click (GtkTreeView *treeview, GdkEventButton *event)
g_signal_connect (G_OBJECT(menu_item), "activate", G_CALLBACK(cb_gfpm_mark_for_reinstall), (gpointer)pkgname);
gtk_menu_shell_append (GTK_MENU_SHELL(menu), menu_item);
gtk_widget_show (menu_item);
-
+
menu_item = gtk_image_menu_item_new_with_label (_("Mark for removal"));
image = gtk_image_new_from_stock ("gtk-remove", GTK_ICON_SIZE_MENU);
gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM(menu_item), image);
From janny at frugalware.org Tue Mar 4 18:17:52 2008
From: janny at frugalware.org (janny)
Date: Tue Mar 4 18:17:54 2008
Subject: [Frugalware-git] fwlive: redirfs-fwlive-0.2-3-i686
Message-ID: <20080304171752.ADDAC1190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=c90153923fbdbd4fb5a69545caa7259996dcebf9
commit c90153923fbdbd4fb5a69545caa7259996dcebf9
Author: janny
Date: Tue Mar 4 18:17:10 2008 +0100
redirfs-fwlive-0.2-3-i686
* add redifs to fwlive repo
diff --git a/source/apps-extra/redirfs-fwlive/FrugalBuild b/source/apps-extra/redirfs-fwlive/FrugalBuild
new file mode 100644
index 0000000..3f00a07
--- /dev/null
+++ b/source/apps-extra/redirfs-fwlive/FrugalBuild
@@ -0,0 +1,28 @@
+# Compiling Time: 0.04 SBU
+# Maintainer: VMiklos
+
+pkgname=redirfs-fwlive
+_F_archive_name=redirfs
+pkgver=0.2
+pkgrel=3
+pkgdesc="Redirecting FileSystem"
+url="http://redirfs.org/"
+_F_kernelmod_scriptlet=$_F_archive_name.install
+Finclude kernel-module
+kver=2.6.24-3
+depends=("kernel-fwlive=$kver")
+makedepends=("kernel-fwlive-source=$kver")
+groups=('apps-extra')
+archs=('i686' 'x86_64')
+up2date="lynx -dump http://redirfs.org/tiki-index.php?page=redirfs_download|grep -m1 gz$|Flasttar"
+source=(http://www.redirfs.org/packages/redirfs-$pkgver.tar.gz)
+sha1sums=('c736b6a9b9cb0540010eb865febfd4f3b1fe6d82')
+
+build()
+{
+ # no Fcheckkernel, crosscompilation verified
+ Fsed 'uname -r' "echo $_F_kernelmod_uname" Makefile
+ Fmake
+ Ffilerel /lib/modules/$_F_kernelmod_uname/extra/$_F_archive_name.ko
+ Fbuild_kernelmod_scriptlet
+}
diff --git a/source/apps-extra/redirfs-fwlive/redirfs.install b/source/apps-extra/redirfs-fwlive/redirfs.install
new file mode 100644
index 0000000..8162fbb
--- /dev/null
+++ b/source/apps-extra/redirfs-fwlive/redirfs.install
@@ -0,0 +1,38 @@
+post_install()
+{
+ if ! grep -q redirfs /etc/sysconfig/modules; then
+ echo -n "adding redirfs to /etc/sysconfig/modules..."
+ echo redirfs >> /etc/sysconfig/modules
+ echo " done."
+ fi
+ depmod -a $_F_kernelmod_uname
+ if lsmod|grep -q redirfs; then
+ rmmod redirfs
+ fi
+ echo -n "loading redirfs..."
+ modprobe redirfs
+ echo " done."
+}
+
+post_upgrade()
+{
+ post_install
+}
+
+pre_remove()
+{
+ if grep -q redirfs /etc/sysconfig/modules; then
+ echo -n "removing redirfs from /etc/sysconfig/modules..."
+ sed -i '/^redirfs/d' /etc/sysconfig/modules
+ echo " done."
+ fi
+ if lsmod|grep -q redirfs; then
+ echo -n "unloading redirfs..."
+ rmmod redirfs
+ echo " done."
+ fi
+}
+
+op=$1
+shift
+$op $*
From vmiklos at frugalware.org Tue Mar 4 18:23:45 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Tue Mar 4 18:23:48 2008
Subject: [Frugalware-git] frugalware-current: jed-0.99_18-4-i686
Message-ID: <20080304172345.7AB5B1190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=b936f5b415e16267b724c1ed6177c9ed69a6bf73
commit b936f5b415e16267b724c1ed6177c9ed69a6bf73
Author: Miklos Vajna
Date: Tue Mar 4 18:20:43 2008 +0100
jed-0.99_18-4-i686
- move /usr/lib to /usr/share/jed/lib as --libdir=/usr/share/jed won't work
- closes #1918
diff --git a/source/apps-extra/jed/FrugalBuild b/source/apps-extra/jed/FrugalBuild
index 5054ade..faea2c5 100644
--- a/source/apps-extra/jed/FrugalBuild
+++ b/source/apps-extra/jed/FrugalBuild
@@ -4,7 +4,7 @@
pkgname=jed
pkgver=0.99_18
-pkgrel=3
+pkgrel=4
pkgdesc="An extremely powerful but small emacs-like programmer's editor"
url="http://www.jedsoft.org/jed/"
depends=('slang>=2.0.7' 'gpm')
@@ -16,22 +16,22 @@ source=(ftp://space.mit.edu/pub/davis/jed/v${pkgver%_*}/$pkgname-${pkgver/_/-}.t
license="GPL2"
sha1sums=('fa4b3313fdde0466546e36100b0de2d9cc75806d' \
'eec8882c1a835e06bddee99026f264a03514f2d2')
+Finclude texinfo
build()
{
- export JED_ROOT=/usr
+ export JED_ROOT=/usr/share/jed
Fcd $pkgname-${pkgver/_/-}
Fpatchall
Fmake
make DESTDIR=$Fdestdir install # Fmakeinstall doesn't work with jed
# move documentation to the right place
- Fmkdir /usr/share/doc/$pkgname-$pkgver
- for i in hlp manual txt README
- do
- Fmv /usr/doc/$i /usr/share/doc/$pkgname-$pkgver
- done
- # conflicts with texinfo
- Frm /usr/info/info.info
+ Fmv usr/share/jed/info usr/share/info
+ Frm usr/share/info/{dir,info}*
+ Fmkdir usr/share/doc
+ Fmv usr/share/jed/doc usr/share/doc/$pkgname-$pkgver
+ # remove empty dir
+ Frm /usr/share/jed/bin
}
# optimization OK
From janny at frugalware.org Tue Mar 4 18:29:59 2008
From: janny at frugalware.org (janny)
Date: Tue Mar 4 18:30:03 2008
Subject: [Frugalware-git] fwlive: dazuko-fwlive-2.3.4-10-i686
Message-ID: <20080304172959.C3EDC1190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=bbccf9c37408ddbaec780f75e1fb2e8e6cae6297
commit bbccf9c37408ddbaec780f75e1fb2e8e6cae6297
Author: janny
Date: Tue Mar 4 18:27:32 2008 +0100
dazuko-fwlive-2.3.4-10-i686
* version bump in fwlive repo
diff --git a/source/apps-extra/dazuko-fwlive/FrugalBuild b/source/apps-extra/dazuko-fwlive/FrugalBuild
index aad33dc..aeb1171 100644
--- a/source/apps-extra/dazuko-fwlive/FrugalBuild
+++ b/source/apps-extra/dazuko-fwlive/FrugalBuild
@@ -2,23 +2,37 @@
# Maintainer: Janny
pkgname=dazuko-fwlive
-pkgver=2.3.3
-pkgrel=6
+_F_archive_name=dazuko
+pkgver=2.3.4
+redirver=0.2
+pkgrel=10
pkgdesc="On-access virus scanning kernel interface"
url="http://www.dazuko.org"
license="GPL-2 BSD"
-#Finclude kernel-module
-kver=2.6.22-1
-depends=("kernel-fwlive=$kver")
+_F_kernelmod_scriptlet=$_F_archive_name.install
+Finclude kernel-module
+kver=2.6.24-3
+depends=("kernel-fwlive=$kver" "redirfs-fwlive=$redirver")
makedepends=("kernel-fwlive-source=$kver")
archs=('i686' 'x86_64')
groups=('apps-extra')
up2date="lynx -dump '$url/files/?M=O' | grep -v source |grep -v birthday|grep -v pre|Flasttar"
-source=(http://www.dazuko.org/files/dazuko-$pkgver.tar.gz \
- README.Frugalware)
+source=(http://www.dazuko.org/files/$_F_archive_name-$pkgver.tar.gz \
+ http://www.redirfs.org/packages/redirfs-$redirver.tar.gz \
+ README.Frugalware \
+ 0001-add-xp_set_path-function-necessary-for-RedirFS-su.patch \
+ 0002-source-code-to-compile-Dazuko-as-an-RedirFS-filter.patch \
+ 0003-add-enable-redirfs-to-build-Dazuko-as-a-RedirF.patch)
+sha1sums=('271d0a23d7aed2555f023141504386b6042a5efa' \
+ 'c736b6a9b9cb0540010eb865febfd4f3b1fe6d82' \
+ '8292447cba4bdab9dfbb8169c011e74559a00804' \
+ 'eebf571563481dba5bce10900b02bff5d6e30b78' \
+ '4f6b6b45a2be49a4e90fd7fb2ad4e40d9e50c436' \
+ 'd45e7a44154f61d79f54c940ba6fa6085c88cbf6')
build() {
- Fcd dazuko-$pkgver/
+ Fcd
+ ln -s redirfs-$redirver ../redirfs
# Patch needed by some F-Secure softwares
patch -p0 < patch_fsecure_init_event.diff || Fdie
# no Fcheckkernel, crosscompilation verified
@@ -26,12 +40,11 @@ build() {
Fsed '`uname -r`' "$_F_kernelmod_uname" configure
find . -type f -exec sed -i '/#include /d' {} \;
./configure --system=linux26 --disable-chroot-support \
- --without-dep --enable-event-init-module || Fdie
+ --without-dep --enable-event-init-module --enable-redirfs || Fdie
make || Fdie
- Ffilerel $_F_kernelmod_dir/extra/dazuko.ko
+ Ffilerel $_F_kernelmod_dir/extra/$_F_archive_name.ko
make -C library || Fdie
- Ffile dazuko-${pkgver//_/-}/library/libdazuko.a /usr/lib/libdazuko.a
+ Ffile $_F_archive_name-${pkgver//_/-}/library/libdazuko.a /usr/lib/libdazuko.a
Fdoc README.Frugalware
+ Fbuild_kernelmod_scriptlet
}
-sha1sums=('a1772d42327a9c2cc5737993abd2a3bc392ae67c'\
- '8292447cba4bdab9dfbb8169c011e74559a00804')
diff --git a/source/apps-extra/dazuko-fwlive/dazuko.html b/source/apps-extra/dazuko-fwlive/dazuko.html
deleted file mode 100644
index a3f583e..0000000
--- a/source/apps-extra/dazuko-fwlive/dazuko.html
+++ /dev/null
@@ -1,314 +0,0 @@
-
-
-
-
-
-
-Packages
-
-
-
-dazuko
-
-
If you got errors saying:
-
dazuko: failed to register
-
then you need to do:
-
-
-
# rmmod capability
-# modprobe dazuko
-# modprobe capability
-
-
It will work.
-
-
-
-
diff --git a/source/apps-extra/dazuko-fwlive/dazuko.install b/source/apps-extra/dazuko-fwlive/dazuko.install
index 2809fa6..6004b01 100644
--- a/source/apps-extra/dazuko-fwlive/dazuko.install
+++ b/source/apps-extra/dazuko-fwlive/dazuko.install
@@ -1,30 +1,17 @@
post_install()
{
- if test `grep dazuko < /etc/sysconfig/modules|wc -l` -gt 1; then
- sed -i '/^dazuko/d' /etc/sysconfig/modules
- fi
- if test `grep commoncap < /etc/sysconfig/modules|wc -l` -gt 1; then
- sed -i '/^commoncap/d' /etc/sysconfig/modules
- fi
if ! grep -q dazuko /etc/sysconfig/modules; then
- echo "Adding dazuko to /etc/sysconfig/modules..."
- sed -i 's/capability/dazuko\ncapability/' /etc/sysconfig/modules
- fi
- if ! grep -q commoncap /etc/sysconfig/modules; then
- echo "Adding commoncap to /etc/sysconfig/modules..."
- sed -i 's/dazuko/commoncap\ndazuko/' /etc/sysconfig/modules
+ echo -n "adding dazuko to /etc/sysconfig/modules..."
+ echo dazuko >> /etc/sysconfig/modules
+ echo " done."
fi
- depmod -a
- rmmod capability 2>/dev/null
- if test `lsmod|grep commoncap|wc -l` -lt 1; then
- modprobe commoncap
- fi
- if test `lsmod|grep dazuko|wc -l` -ge 1; then
- rmmod dazuko 2>/dev/null
+ depmod -a $_F_kernelmod_uname
+ if lsmod|grep -q dazuko; then
+ rmmod dazuko
fi
+ echo -n "loading dazuko..."
modprobe dazuko
- modprobe capability
- echo "Dazuko loaded..."
+ echo " done."
}
post_upgrade()
@@ -34,8 +21,16 @@ post_upgrade()
pre_remove()
{
- sed -i '/^dazuko/d' /etc/sysconfig/modules
- sed -i '/^commoncap/d' /etc/sysconfig/modules
+ if grep -q dazuko /etc/sysconfig/modules; then
+ echo -n "removing dazuko from /etc/sysconfig/modules..."
+ sed -i '/^dazuko/d' /etc/sysconfig/modules
+ echo " done."
+ fi
+ if lsmod|grep -q dazuko; then
+ echo -n "unloading dazuko..."
+ rmmod dazuko
+ echo " done."
+ fi
}
op=$1
From janny at frugalware.org Tue Mar 4 18:30:00 2008
From: janny at frugalware.org (janny)
Date: Tue Mar 4 18:30:05 2008
Subject: [Frugalware-git] fwlive: dazuko-fwlive-2.3.4-10-i686
Message-ID: <20080304173000.617461190A17@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=d707ff5e8c8046e4c6cf0f5ea11c7566a2bf27fd
commit d707ff5e8c8046e4c6cf0f5ea11c7566a2bf27fd
Author: janny
Date: Tue Mar 4 18:29:04 2008 +0100
dazuko-fwlive-2.3.4-10-i686
* add missed patchs
diff --git a/source/apps-extra/dazuko-fwlive/0001-add-xp_set_path-function-necessary-for-RedirFS-su.patch b/source/apps-extra/dazuko-fwlive/0001-add-xp_set_path-function-necessary-for-RedirFS-su.patch
new file mode 100644
index 0000000..3408b10
--- /dev/null
+++ b/source/apps-extra/dazuko-fwlive/0001-add-xp_set_path-function-necessary-for-RedirFS-su.patch
@@ -0,0 +1,196 @@
+From 8c31801270d4085bdf0704d572a0c3fbe8cf6a8f Mon Sep 17 00:00:00 2001
+From: ogman
+Date: Wed, 12 Dec 2007 16:08:39 +0000
+Subject: [PATCH] add xp_set_path() function (necessary for RedirFS support)
+
+---
+ dazuko_call.h | 14 ++++++++++++++
+ dazuko_core.c | 10 ++++++++++
+ dazuko_core.h | 3 +++
+ dazuko_dummyos.c | 8 ++++++++
+ dazuko_freebsd.c | 8 ++++++++
+ dazuko_freebsd5.c | 8 ++++++++
+ dazuko_linux.c | 8 ++++++++
+ dazuko_linux26.c | 8 ++++++++
+ dazuko_rsbac.c | 8 ++++++++
+ 9 files changed, 75 insertions(+), 0 deletions(-)
+
+diff --git a/dazuko_call.h b/dazuko_call.h
+index ad0e8e8..68bd929 100644
+--- a/dazuko_call.h
++++ b/dazuko_call.h
+@@ -484,4 +484,18 @@ static int call_xp_init_cache(unsigned long ttl)
+ return xp_init_cache(ttl);
+ }
+
++
++/* include/exclude paths */
++
++static int call_xp_set_path(const char *path, int type)
++{
++ if (path == NULL)
++ {
++ xp_print("dazuko: warning: call_xp_set_path(path=NULL)\n");
++ return -1;
++ }
++
++ return xp_set_path(path, type);
++}
++
+ #endif
+diff --git a/dazuko_core.c b/dazuko_core.c
+index 7585166..fa8ca8f 100644
+--- a/dazuko_core.c
++++ b/dazuko_core.c
+@@ -1607,10 +1607,20 @@ static int dazuko_set_option(struct daemon_id *did, int opt, void *param, int le
+
+ case ADD_INCLUDE_PATH:
+ error = dazuko_insert_path_fs(&(sl->incl_paths), &(sl->lock_lists), (char *)param, len);
++ if (!error)
++ {
++ if (call_xp_set_path((char *)param, ADD_INCLUDE_PATH) != 0)
++ error = XP_ERROR_INVALID;
++ }
+ break;
+
+ case ADD_EXCLUDE_PATH:
+ error = dazuko_insert_path_fs(&(sl->excl_paths), &(sl->lock_lists), (char *)param, len);
++ if (!error)
++ {
++ if (call_xp_set_path((char *)param, ADD_EXCLUDE_PATH) != 0)
++ error = XP_ERROR_INVALID;
++ }
+ break;
+
+ case REMOVE_ALL_PATHS:
+diff --git a/dazuko_core.h b/dazuko_core.h
+index 935ca63..e64bf3e 100644
+--- a/dazuko_core.h
++++ b/dazuko_core.h
+@@ -178,6 +178,9 @@ int xp_set_event_properties(struct event_properties *event_p, struct xp_daemon_i
+ /* cache settings */
+ int xp_init_cache(unsigned long ttl);
+
++/* include/exclude paths */
++int xp_set_path(const char *path, int type);
++
+ /* output */
+ int xp_print(const char *fmt, ...);
+
+diff --git a/dazuko_dummyos.c b/dazuko_dummyos.c
+index d092581..6bdcf70 100644
+--- a/dazuko_dummyos.c
++++ b/dazuko_dummyos.c
+@@ -350,6 +350,14 @@ int xp_init_cache(unsigned long ttl)
+ }
+
+
++/* include/exclude paths */
++
++int xp_set_path(const char *path, int type)
++{
++ return 0;
++}
++
++
+ /* system calls */
+
+ static void dummy_dazuko_setid(const char *id)
+diff --git a/dazuko_freebsd.c b/dazuko_freebsd.c
+index f4cb535..c16412c 100644
+--- a/dazuko_freebsd.c
++++ b/dazuko_freebsd.c
+@@ -825,6 +825,14 @@ int xp_init_cache(unsigned long ttl)
+ }
+
+
++/* include/exclude paths */
++
++int xp_set_path(const char *path, int type)
++{
++ return 0;
++}
++
++
+ /* system calls */
+
+ static inline int check_fd(struct proc *p, int fd)
+diff --git a/dazuko_freebsd5.c b/dazuko_freebsd5.c
+index ff0994f..d26f030 100644
+--- a/dazuko_freebsd5.c
++++ b/dazuko_freebsd5.c
+@@ -877,6 +877,14 @@ int xp_init_cache(unsigned long ttl)
+ }
+
+
++/* include/exclude paths */
++
++int xp_set_path(const char *path, int type)
++{
++ return 0;
++}
++
++
+ /* system calls */
+
+ static inline int check_fd(struct proc *p, int fd)
+diff --git a/dazuko_linux.c b/dazuko_linux.c
+index f8bd860..d83bded 100644
+--- a/dazuko_linux.c
++++ b/dazuko_linux.c
+@@ -1429,6 +1429,14 @@ int xp_init_cache(unsigned long ttl)
+ }
+
+
++/* include/exclude paths */
++
++int xp_set_path(const char *path, int type)
++{
++ return 0;
++}
++
++
+ /* system calls */
+
+ #if defined(ON_OPEN_SUPPORT)
+diff --git a/dazuko_linux26.c b/dazuko_linux26.c
+index cdf0d43..a1676be 100644
+--- a/dazuko_linux26.c
++++ b/dazuko_linux26.c
+@@ -579,6 +579,14 @@ int xp_init_cache(unsigned long ttl)
+ }
+
+
++/* include/exclude paths */
++
++int xp_set_path(const char *path, int type)
++{
++ return 0;
++}
++
++
+ /* system hooks */
+
+ #ifndef DAZUKO_FIST
+diff --git a/dazuko_rsbac.c b/dazuko_rsbac.c
+index 9fa701b..6023bae 100644
+--- a/dazuko_rsbac.c
++++ b/dazuko_rsbac.c
+@@ -518,6 +518,14 @@ int xp_init_cache(unsigned long ttl)
+ }
+
+
++/* include/exclude paths */
++
++int xp_set_path(const char *path, int type)
++{
++ return 0;
++}
++
++
+ /* system hook */
+
+ inline int xp_sys_hook()
+--
+1.5.4.rc4.25.g81cc-dirty
+
diff --git a/source/apps-extra/dazuko-fwlive/0002-source-code-to-compile-Dazuko-as-an-RedirFS-filter.patch b/source/apps-extra/dazuko-fwlive/0002-source-code-to-compile-Dazuko-as-an-RedirFS-filter.patch
new file mode 100644
index 0000000..742965d
--- /dev/null
+++ b/source/apps-extra/dazuko-fwlive/0002-source-code-to-compile-Dazuko-as-an-RedirFS-filter.patch
@@ -0,0 +1,1008 @@
+From 26176cf910f1c66979c74a5ca24e95efebc05310 Mon Sep 17 00:00:00 2001
+From: ogman
+Date: Wed, 12 Dec 2007 16:14:20 +0000
+Subject: [PATCH] source code to compile Dazuko as an RedirFS filter
+
+---
+ dazuko_redirfs.c | 989 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 1 files changed, 989 insertions(+), 0 deletions(-)
+ create mode 100644 dazuko_redirfs.c
+
+diff --git a/dazuko_redirfs.c b/dazuko_redirfs.c
+new file mode 100644
+index 0000000..885242a
+--- /dev/null
++++ b/dazuko_redirfs.c
+@@ -0,0 +1,989 @@
++/* Dazuko RedirFS. Allow Linux 2.6 file access control for 3rd-party applications.
++ Written by John Ogness
++
++ Copyright (c) 2007 Avira GmbH
++ All rights reserved.
++
++ This program is free software; you can redistribute it and/or
++ modify it under the terms of the GNU General Public License
++ as published by the Free Software Foundation; either version 2
++ of the License, or (at your option) any later version.
++
++ This program is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ GNU General Public License for more details.
++
++ You should have received a copy of the GNU General Public License
++ along with this program; if not, write to the Free Software
++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
++*/
++
++#include "dazuko_linux26.h"
++#include "dazuko_core.h"
++#include "dazuko_linux26_device_def.h"
++
++#ifdef USE_CONFIG_H
++#include
++#endif
++#include
++#include
++#include
++#include
++#include
++#include
++#include
++#include "../redirfs/redirfs.h"
++#ifdef DEVFS_SUPPORT
++#include
++#endif
++#include
++#if !defined(USE_TRYTOFREEZEVOID)
++#include
++#endif
++#ifdef LINUX_USE_FREEZER_H
++#include
++#endif
++#include
++
++
++#ifndef DAZUKO_DM
++#define DAZUKO_DM 0
++#endif
++
++
++ssize_t linux_dazuko_device_read(struct file *, char __user *, size_t, loff_t *);
++ssize_t linux_dazuko_device_write(struct file *, const char __user *, size_t, loff_t *);
++int linux_dazuko_device_open(struct inode *, struct file *);
++int linux_dazuko_device_ioctl(struct inode *inode, struct file *file, unsigned int cmd, unsigned long param);
++int linux_dazuko_device_release(struct inode *, struct file *);
++
++#ifndef WITHOUT_UDEV
++#ifdef USE_CLASS
++static struct class *dazuko_class = NULL;
++#else
++static struct class_simple *dazuko_class = NULL;
++#endif
++#endif
++
++static int dev_major = -1;
++
++int dazukoflt_ctl(struct rfs_ctl *ctl);
++enum rfs_retv dazukoflt_permission(rfs_context context, struct rfs_args *args);
++static rfs_filter dazukoflt;
++static struct rfs_filter_info flt_info = {"dazukoflt", 1000, 1, dazukoflt_ctl};
++static struct rfs_op_info op_info[] = {
++ { RFS_REG_IOP_PERMISSION, dazukoflt_permission, NULL },
++ { RFS_OP_END, NULL, NULL }
++};
++
++static struct file_operations fops = {
++ .owner = THIS_MODULE,
++ .read = linux_dazuko_device_read,
++ .write = linux_dazuko_device_write,
++ .ioctl = linux_dazuko_device_ioctl,
++ .open = linux_dazuko_device_open,
++ .release = linux_dazuko_device_release,
++ };
++
++
++/* mutex */
++
++inline void xp_init_mutex(struct xp_mutex *mutex)
++{
++ init_MUTEX(&(mutex->mutex));
++}
++
++inline void xp_down(struct xp_mutex *mutex)
++{
++ down(&(mutex->mutex));
++}
++
++inline void xp_up(struct xp_mutex *mutex)
++{
++ up(&(mutex->mutex));
++}
++
++inline void xp_destroy_mutex(struct xp_mutex *mutex)
++{
++}
++
++
++/* read-write lock */
++
++inline void xp_init_rwlock(struct xp_rwlock *rwlock)
++{
++ rwlock_init(&(rwlock->rwlock));
++}
++
++inline void xp_write_lock(struct xp_rwlock *rwlock)
++{
++ write_lock(&(rwlock->rwlock));
++}
++
++inline void xp_write_unlock(struct xp_rwlock *rwlock)
++{
++ write_unlock(&(rwlock->rwlock));
++}
++
++inline void xp_read_lock(struct xp_rwlock *rlock)
++{
++ read_lock(&(rlock->rwlock));
++}
++
++inline void xp_read_unlock(struct xp_rwlock *rlock)
++{
++ read_unlock(&(rlock->rwlock));
++}
++
++inline void xp_destroy_rwlock(struct xp_rwlock *rwlock)
++{
++}
++
++
++/* wait-notify queue */
++
++inline int xp_init_queue(struct xp_queue *queue)
++{
++ init_waitqueue_head(&(queue->queue));
++ return 0;
++}
++
++inline int xp_wait_until_condition(struct xp_queue *queue, int (*cfunction)(void *), void *cparam, int allow_interrupt)
++{
++ /* wait until cfunction(cparam) != 0 (condition is true) */
++ int ret = 0;
++
++ if (allow_interrupt)
++ {
++ while (1)
++ {
++ ret = wait_event_interruptible(queue->queue, cfunction(cparam) != 0);
++
++#if defined (USE_TRYTOFREEZEVOID)
++ if (try_to_freeze() == 0)
++ break;
++#else
++ if (current->flags & PF_FREEZE)
++ {
++ refrigerator(PF_FREEZE);
++ }
++ else
++ {
++ break;
++ }
++#endif
++ }
++ }
++ else
++ {
++ wait_event(queue->queue, cfunction(cparam) != 0);
++ }
++
++ return ret;
++}
++
++inline int xp_notify(struct xp_queue *queue)
++{
++ wake_up(&(queue->queue));
++ return 0;
++}
++
++inline int xp_destroy_queue(struct xp_queue *queue)
++{
++ return 0;
++}
++
++
++/* memory */
++
++inline void* xp_malloc(size_t size)
++{
++ return kmalloc(size, GFP_ATOMIC);
++}
++
++inline int xp_free(void *ptr)
++{
++ kfree(ptr);
++ return 0;
++}
++
++inline int xp_copyin(const void *user_src, void *kernel_dest, size_t size)
++{
++ return copy_from_user(kernel_dest, user_src, size);
++}
++
++inline int xp_copyout(const void *kernel_src, void *user_dest, size_t size)
++{
++ return copy_to_user(user_dest, kernel_src, size);
++}
++
++inline int xp_verify_user_writable(const void *user_ptr, size_t size)
++{
++ return 0;
++}
++
++inline int xp_verify_user_readable(const void *user_ptr, size_t size)
++{
++ return 0;
++}
++
++
++/* path attribute */
++
++inline int xp_is_absolute_path(const char *path)
++{
++ if (path[0] == '/')
++ return 1;
++
++ return 0;
++}
++
++
++/* atomic */
++
++inline int xp_atomic_set(struct xp_atomic *atomic, int value)
++{
++ atomic_set(&(atomic->atomic), value);
++ return 0;
++}
++
++inline int xp_atomic_inc(struct xp_atomic *atomic)
++{
++ atomic_inc(&(atomic->atomic));
++ return 0;
++}
++
++inline int xp_atomic_dec(struct xp_atomic *atomic)
++{
++ atomic_dec(&(atomic->atomic));
++ return 0;
++}
++
++inline int xp_atomic_read(struct xp_atomic *atomic)
++{
++ return atomic_read(&(atomic->atomic));
++}
++
++
++/* file structure */
++
++static int dazuko_get_full_filename(struct xp_file_struct *xfs)
++{
++ char *temp;
++
++ if (xfs == NULL)
++ return 0;
++
++ if (xfs->inode == NULL)
++ return 0;
++
++ if (S_ISDIR(xfs->inode->i_mode))
++ return 0;
++
++ if (xfs->nd == NULL || xfs->free_full_filename)
++ return 0;
++
++ if (xfs->nd->mnt == NULL || xfs->nd->dentry == NULL)
++ return 0;
++
++ /* check if we need to allocate a buffer */
++ if (!xfs->free_page_buffer)
++ {
++ /* get pre-requisites for d_path function */
++ xfs->buffer = (char *)__get_free_page(GFP_USER);
++
++ /* make sure we got a page */
++ if (xfs->buffer == NULL)
++ return 0;
++
++ /* the buffer will need to be freed */
++ xfs->free_page_buffer = 1;
++ }
++
++ /* make sure we don't already have a vfsmount */
++ if (!xfs->mntput_vfsmount)
++ {
++ xfs->vfsmount = mntget(xfs->nd->mnt);
++
++ /* the vfsmount will need to be put back */
++ xfs->mntput_vfsmount = 1;
++ }
++
++ /* make sure we don't already have a dentry */
++ if (!xfs->dput_dentry)
++ {
++ xfs->dentry = dget(xfs->nd->dentry);
++
++ /* the dentry will need to be put back */
++ xfs->dput_dentry = 1;
++ }
++
++ temp = d_path(xfs->dentry, xfs->vfsmount, xfs->buffer, PAGE_SIZE);
++
++ /* make sure we really got a new filename */
++ if (temp == NULL)
++ return 0;
++
++ xfs->full_filename_length = dazuko_strlen(temp);
++
++ xfs->full_filename = (char *)xp_malloc(xfs->full_filename_length + 1);
++ if (xfs->full_filename == NULL)
++ return 0;
++
++ /* the char array will need to be freed */
++ xfs->free_full_filename = 1;
++
++ memcpy(xfs->full_filename, temp, xfs->full_filename_length + 1);
++
++ /* we have a filename with the full path */
++
++ return 1;
++}
++
++static int dazuko_fill_file_struct_cleanup(struct dazuko_file_struct *dfs)
++{
++ if (dfs == NULL)
++ return 0;
++
++ if (dfs->extra_data == NULL)
++ return 0;
++
++ if (dfs->extra_data->free_page_buffer)
++ {
++ free_page((unsigned long)dfs->extra_data->buffer);
++ dfs->extra_data->free_page_buffer = 0;
++ }
++
++ if (dfs->extra_data->dput_dentry)
++ {
++ dput(dfs->extra_data->dentry);
++ dfs->extra_data->dput_dentry = 0;
++ }
++
++ if (dfs->extra_data->mntput_vfsmount)
++ {
++ mntput(dfs->extra_data->vfsmount);
++ dfs->extra_data->mntput_vfsmount = 0;
++ }
++
++ return 0;
++}
++
++int xp_fill_file_struct(struct dazuko_file_struct *dfs)
++{
++ int error = -1;
++
++ if (dfs == NULL)
++ return error;
++
++ /* check if filename has already been filled in */
++ if (dfs->filename != NULL)
++ return 0;
++
++ /* make sure we can get the full path */
++ if (dazuko_get_full_filename(dfs->extra_data))
++ {
++ /* reference copy of full path */
++ dfs->filename = dfs->extra_data->full_filename;
++
++ dfs->filename_length = dfs->extra_data->full_filename_length;
++
++ dfs->file_p.size = dfs->extra_data->inode->i_size;
++ dfs->file_p.set_size = 1;
++ dfs->file_p.uid = dfs->extra_data->inode->i_uid;
++ dfs->file_p.set_uid = 1;
++ dfs->file_p.gid = dfs->extra_data->inode->i_gid;
++ dfs->file_p.set_gid = 1;
++ dfs->file_p.mode = dfs->extra_data->inode->i_mode;
++ dfs->file_p.set_mode = 1;
++ dfs->file_p.device_type = dfs->extra_data->inode->i_rdev;
++ dfs->file_p.set_device_type = 1;
++
++ error = 0;
++ }
++
++ dazuko_fill_file_struct_cleanup(dfs);
++
++ return error;
++}
++
++static int dazuko_file_struct_cleanup(struct dazuko_file_struct **dfs)
++{
++ if (dfs == NULL)
++ return 0;
++
++ if (*dfs == NULL)
++ return 0;
++
++ if ((*dfs)->extra_data)
++ {
++ if ((*dfs)->extra_data->free_full_filename)
++ xp_free((*dfs)->extra_data->full_filename);
++
++ xp_free((*dfs)->extra_data);
++ }
++
++ xp_free(*dfs);
++
++ *dfs = NULL;
++
++ return 0;
++}
++
++
++/* daemon id */
++
++static inline int check_parent(struct task_struct *parent, struct task_struct *child)
++{
++ struct task_struct *ts = child;
++
++ if (parent == NULL || child == NULL)
++ return -1;
++
++ while (1)
++ {
++ if (ts == parent)
++ return 0;
++
++ if (ts->parent == NULL)
++ break;
++
++ if (ts == ts->parent)
++ break;
++
++ ts = ts->parent;
++ }
++
++ return -1;
++}
++
++inline int xp_id_compare(struct xp_daemon_id *id1, struct xp_daemon_id *id2, int check_related)
++{
++ if (id1 == NULL || id2 == NULL)
++ return DAZUKO_DIFFERENT;
++
++ /* If file's are available we do a special
++ * check ("file"'s are only used by daemons).
++ * Here we allow threads to look like one
++ * instance, if they pass around the handle.
++ * Note: this is a Linux-only "hack" */
++ if (id1->file != NULL && id2->file != NULL)
++ {
++ if (id1->tgid == id2->tgid && id1->files == id2->files && id1->file == id2->file)
++ return DAZUKO_SAME;
++ }
++
++ if (id1->pid == id2->pid && id1->current_p == id2->current_p && id1->files == id2->files)
++ return DAZUKO_SAME;
++
++ if (check_related)
++ {
++ /* Same thread id and same file descriptors,
++ * looks like they could be the same process...
++ * We will treat two threads of the same process
++ * as the same (for relation checks). This is
++ * useful for the Trusted Application Framework,
++ * if we trust one thread, we can trust them all.*/
++ if (id1->tgid == id2->tgid && id1->files == id2->files)
++ {
++ /* Two different threads of the same process will have different current pointers,
++ * but if process ids match, current pointers must too. */
++
++ if (id1->pid == id2->pid && id1->current_p == id2->current_p)
++ return DAZUKO_SAME;
++
++ if (id1->pid != id2->pid && id1->current_p != id2->current_p)
++ return DAZUKO_SAME;
++ }
++
++ if (check_parent(id1->current_p, id2->current_p) == 0)
++ {
++ return DAZUKO_CHILD;
++ }
++ else if (id1->pid == id2->pid || id1->current_p == id2->current_p || id1->files == id2->files)
++ {
++ return DAZUKO_SUSPICIOUS;
++ }
++ else if (id1->tgid == id2->tgid)
++ {
++ return DAZUKO_SUSPICIOUS;
++ }
++ }
++
++ return DAZUKO_DIFFERENT;
++}
++
++inline int xp_id_free(struct xp_daemon_id *id)
++{
++ xp_free(id);
++
++ return 0;
++}
++
++inline struct xp_daemon_id* xp_id_copy(struct xp_daemon_id *id)
++{
++ struct xp_daemon_id *ptr;
++
++ if (id == NULL)
++ return NULL;
++
++ ptr = (struct xp_daemon_id *)xp_malloc(sizeof(struct xp_daemon_id));
++
++ if (ptr != NULL)
++ {
++ ptr->pid = id->pid;
++ ptr->tgid = id->tgid;
++ ptr->file = id->file;
++ ptr->current_p = id->current_p;
++ ptr->files = id->files;
++ }
++
++ return ptr;
++}
++
++
++/* event */
++
++int xp_set_event_properties(struct event_properties *event_p, struct xp_daemon_id *xp_id)
++{
++ event_p->pid = xp_id->pid;
++ event_p->set_pid = 1;
++
++ return 0;
++}
++
++
++/* cache settings */
++
++int xp_init_cache(unsigned long ttl)
++{
++ return -1;
++}
++
++
++/* include/exclude paths */
++
++int xp_set_path(const char *path, int type)
++{
++ int err;
++ struct rfs_path_info path_info;
++
++ switch (type)
++ {
++ case ADD_INCLUDE_PATH:
++ path_info.flags = RFS_PATH_INCLUDE | RFS_PATH_SUBTREE;
++ break;
++
++ case ADD_EXCLUDE_PATH:
++ path_info.flags = RFS_PATH_EXCLUDE | RFS_PATH_SUBTREE;
++ break;
++
++ default:
++ return -1;
++ }
++
++ path_info.path = dazuko_strdup(path, NULL);
++ err = rfs_set_path(dazukoflt, &path_info);
++ if (err)
++ {
++ xp_print("dazuko: failed to set RedirFS path, err=%d\n", err);
++ rfs_unregister_filter(dazukoflt);
++ return -1;
++ }
++
++ return 0;
++}
++
++
++/* system hooks */
++
++int dazuko_sys_generic(struct inode *inode, int mask, struct nameidata *nd)
++{
++ struct dazuko_file_struct *dfs = NULL;
++ int error = 0;
++ int check_error = 0;
++ struct event_properties event_p;
++ struct xp_daemon_id xp_id;
++ struct slot_list *sl = NULL;
++ int event = DAZUKO_ON_OPEN;
++ int daemon_is_allowed = 1;
++
++ if (nd == NULL || inode == NULL)
++ return 0;
++
++ dazuko_bzero(&event_p, sizeof(event_p));
++
++ if ((mask & MAY_EXEC) != 0)
++ {
++ event = DAZUKO_ON_EXEC;
++ daemon_is_allowed = 0;
++ }
++ else
++ {
++ /* mask == 0 is passed in when a file is created */
++ if (mask == 0 || (mask & (MAY_WRITE|MAY_APPEND)) != 0)
++ {
++ if ((mask & MAY_READ) != 0)
++ {
++ event_p.flags = O_RDWR;
++ }
++ else
++ {
++ event_p.flags = O_WRONLY;
++ }
++
++ event_p.set_flags = 1;
++ }
++ else if ((mask & MAY_READ) != 0)
++ {
++ event_p.flags = O_RDONLY;
++ event_p.set_flags = 1;
++ }
++ }
++
++ xp_id.pid = current->pid;
++ xp_id.tgid = current->tgid;
++ xp_id.file = NULL;
++ xp_id.current_p = current;
++ xp_id.files = current->files;
++
++ check_error = dazuko_check_access(event, daemon_is_allowed, &xp_id, &sl);
++
++ if (!check_error)
++ {
++ event_p.mode = inode->i_mode;
++ event_p.set_mode = 1;
++ event_p.pid = current->pid;
++ event_p.set_pid = 1;
++ event_p.uid = current->uid;
++ event_p.set_uid = 1;
++
++ dfs = (struct dazuko_file_struct *)xp_malloc(sizeof(struct dazuko_file_struct));
++ if (dfs != NULL)
++ {
++ dazuko_bzero(dfs, sizeof(struct dazuko_file_struct));
++
++ dfs->extra_data = (struct xp_file_struct *)xp_malloc(sizeof(struct xp_file_struct));
++ if (dfs->extra_data != NULL)
++ {
++ dazuko_bzero(dfs->extra_data, sizeof(struct xp_file_struct));
++
++ dfs->extra_data->nd = nd;
++ dfs->extra_data->inode = inode;
++
++ error = dazuko_process_access(event, dfs, &event_p, sl);
++ }
++ else
++ {
++ xp_free(dfs);
++ dfs = NULL;
++ }
++
++ dazuko_file_struct_cleanup(&dfs);
++ }
++ }
++
++ if (error)
++ return XP_ERROR_PERMISSION;
++
++ return 0;
++}
++
++int dazukoflt_ctl(struct rfs_ctl *ctl)
++{
++ return 0;
++}
++
++enum rfs_retv dazukoflt_permission(rfs_context context, struct rfs_args *args)
++{
++ if (!args->args.i_permission.inode)
++ return RFS_CONTINUE;
++
++ if (!args->args.i_permission.mask)
++ return RFS_CONTINUE;
++
++ if (!args->args.i_permission.nd)
++ return RFS_CONTINUE;
++
++ if (dazuko_sys_generic(args->args.i_permission.inode, args->args.i_permission.mask, args->args.i_permission.nd) != 0)
++ {
++ args->retv.rv_int = -EACCES;
++ return RFS_STOP;
++ }
++
++ return RFS_CONTINUE;
++}
++
++inline int xp_sys_hook()
++{
++ /* Make sure we have a valid task_struct. */
++
++ if (current == NULL)
++ {
++ xp_print("dazuko: panic (current == NULL)\n");
++ return -1;
++ }
++ if (current->fs == NULL)
++ {
++ xp_print("dazuko: panic (current->fs == NULL)\n");
++ return -1;
++ }
++
++ {
++ int err;
++
++ err = rfs_register_filter(&dazukoflt, &flt_info);
++ if (err)
++ {
++ xp_print("dazuko: unable to register with RedirFS, err=%d\n", err);
++ return -1;
++ }
++
++ err = rfs_set_operations(dazukoflt, op_info);
++ if (err)
++ {
++ xp_print("dazuko: unable to set RedirFS options, err=%d\n", err);
++ rfs_unregister_filter(dazukoflt);
++ return -1;
++ }
++ }
++
++ dev_major = register_chrdev(DAZUKO_DM, DEVICE_NAME, &fops);
++ if (dev_major < 0)
++ {
++ xp_print("dazuko: unable to register device, err=%d\n", dev_major);
++ return dev_major;
++ }
++
++#ifdef DEVFS_SUPPORT
++ devfs_mk_cdev(MKDEV(dev_major, 0), S_IFCHR | S_IRUSR | S_IWUSR, DEVICE_NAME);
++#endif
++
++#ifndef WITHOUT_UDEV
++#ifdef USE_CLASS
++ dazuko_class = class_create(THIS_MODULE, "dazuko");
++#ifdef CLASS_class_device_create_2_6_15
++ class_device_create(dazuko_class, NULL, MKDEV(dev_major, 0), NULL, "dazuko");
++#else
++ class_device_create(dazuko_class, MKDEV(dev_major, 0), NULL, "dazuko");
++#endif
++#else
++ dazuko_class = class_simple_create(THIS_MODULE, "dazuko");
++ class_simple_device_add(dazuko_class, MKDEV(dev_major, 0), NULL, "dazuko");
++#endif
++#endif
++
++ return 0;
++}
++
++inline int xp_sys_unhook()
++{
++ unregister_chrdev(dev_major, DEVICE_NAME);
++
++#ifdef DEVFS_SUPPORT
++ devfs_remove(DEVICE_NAME);
++#endif
++
++#ifndef WITHOUT_UDEV
++#ifdef USE_CLASS
++ class_device_destroy(dazuko_class, MKDEV(dev_major, 0));
++ class_destroy(dazuko_class);
++#else
++ class_simple_device_remove(MKDEV(dev_major, 0));
++ class_simple_destroy(dazuko_class);
++#endif
++#endif
++
++ {
++ int err;
++
++ err = rfs_unregister_filter(dazukoflt);
++ if (err)
++ {
++ xp_print("dazuko: failed to unregister from RedirFS, err=%d\n", err);
++ }
++ }
++
++ return 0;
++}
++
++
++/* output */
++
++int xp_print(const char *fmt, ...)
++{
++ va_list args;
++ char *p;
++ size_t size = 1024;
++ int length;
++
++ p = (char *)xp_malloc(size);
++ if (p == NULL)
++ return -1;
++
++ length = dazuko_strlen(KERN_INFO);
++
++ memcpy(p, KERN_INFO, length);
++
++ va_start(args, fmt);
++ vsnprintf(p + length, size - length, fmt, args);
++ va_end(args);
++
++ p[size-1] = 0;
++
++ printk(p);
++
++ xp_free(p);
++
++ return 0;
++}
++
++
++/* ioctl's */
++
++int linux_dazuko_device_open(struct inode *inode, struct file *file)
++{
++ DPRINT(("dazuko: linux_dazuko_device_open() [%d]\n", current->pid));
++
++ return 0;
++}
++
++ssize_t linux_dazuko_device_read(struct file *file, char *buffer, size_t length, loff_t *pos)
++{
++ /* Reading from the dazuko device simply
++ * returns the device number. This is to
++ * help out the daemon. */
++
++ char tmp[20];
++ size_t dev_major_len;
++
++ DPRINT(("dazuko: linux_dazuko_device_read() [%d]\n", current->pid));
++
++ if (*pos != 0)
++ return 0;
++
++ if (dev_major < 0)
++ return XP_ERROR_NODEVICE;
++
++ /* print dev_major to a string
++ * and get length (with terminator) */
++ dazuko_bzero(tmp, sizeof(tmp));
++
++ dev_major_len = dazuko_snprintf(tmp, sizeof(tmp), "%d", dev_major) + 1;
++
++ if (tmp[sizeof(tmp)-1] != 0)
++ {
++ xp_print("dazuko: failing device_read, device number overflow for dameon %d (dev_major=%d)\n", current->pid, dev_major);
++ return XP_ERROR_FAULT;
++ }
++
++ if (length < dev_major_len)
++ return XP_ERROR_INVALID;
++
++ /* copy dev_major string to userspace */
++ if (xp_copyout(tmp, buffer, dev_major_len) != 0)
++ return XP_ERROR_FAULT;
++
++ *pos += dev_major_len;
++
++ return dev_major_len;
++}
++
++ssize_t linux_dazuko_device_write(struct file *file, const char *buffer, size_t length, loff_t *pos)
++{
++ struct xp_daemon_id xp_id;
++ char tmpbuffer[32];
++ int size;
++
++ size = length;
++ if (length >= sizeof(tmpbuffer))
++ size = sizeof(tmpbuffer) -1;
++
++ /* copy request pointer string to kernelspace */
++ if (xp_copyin(buffer, tmpbuffer, size) != 0)
++ return XP_ERROR_FAULT;
++
++ tmpbuffer[size] = 0;
++
++ xp_id.pid = current->pid;
++ xp_id.tgid = current->tgid;
++ xp_id.file = file;
++ xp_id.current_p = current;
++ xp_id.files = current->files;
++
++ if (dazuko_handle_user_request(tmpbuffer, &xp_id) == 0)
++ return size;
++
++ return XP_ERROR_INTERRUPT;
++}
++
++int linux_dazuko_device_ioctl(struct inode *inode, struct file *file, unsigned int cmd, unsigned long param)
++{
++ /* A daemon uses this function to interact with
++ * the kernel. A daemon can set scanning parameters,
++ * give scanning response, and get filenames to scan. */
++
++ struct xp_daemon_id xp_id;
++ int error = 0;
++
++ if (param == 0)
++ {
++ xp_print("dazuko: error: linux_dazuko_device_ioctl(..., 0)\n");
++ return XP_ERROR_INVALID;
++ }
++
++ xp_id.pid = current->pid;
++ xp_id.tgid = current->tgid;
++ xp_id.file = file;
++ xp_id.current_p = current;
++ xp_id.files = current->files;
++
++ error = dazuko_handle_user_request_compat1((void *)param, _IOC_NR(cmd), &xp_id);
++
++ if (error != 0)
++ {
++ /* general error occurred */
++
++ return XP_ERROR_PERMISSION;
++ }
++
++ return error;
++}
++
++int linux_dazuko_device_release(struct inode *inode, struct file *file)
++{
++ struct xp_daemon_id xp_id;
++
++ DPRINT(("dazuko: dazuko_device_release() [%d]\n", current->pid));
++
++ xp_id.pid = current->pid;
++ xp_id.tgid = current->tgid;
++ xp_id.file = file;
++ xp_id.current_p = current;
++ xp_id.files = current->files;
++
++ return dazuko_unregister_daemon(&xp_id);
++}
++
++
++/* init/exit */
++
++static int __init linux_dazuko_init(void)
++{
++ return dazuko_init();
++}
++
++static void __exit linux_dazuko_exit(void)
++{
++ dazuko_exit();
++}
++
++
++MODULE_AUTHOR("Avira GmbH ");
++MODULE_DESCRIPTION("allow 3rd-party file access control");
++MODULE_LICENSE("GPL");
++MODULE_INFO(vermagic, VERMAGIC_STRING);
++
++module_init(linux_dazuko_init);
++module_exit(linux_dazuko_exit);
+--
+1.5.4.rc4.25.g81cc-dirty
+
diff --git a/source/apps-extra/dazuko-fwlive/0003-add-enable-redirfs-to-build-Dazuko-as-a-RedirF.patch b/source/apps-extra/dazuko-fwlive/0003-add-enable-redirfs-to-build-Dazuko-as-a-RedirF.patch
new file mode 100644
index 0000000..a2448e3
--- /dev/null
+++ b/source/apps-extra/dazuko-fwlive/0003-add-enable-redirfs-to-build-Dazuko-as-a-RedirF.patch
@@ -0,0 +1,127 @@
+From b39f2f1f24f1a508c30356b0ee64aaa68f54e8a1 Mon Sep 17 00:00:00 2001
+From: ogman
+Date: Wed, 12 Dec 2007 17:07:11 +0000
+Subject: [PATCH] - add "--enable-redirfs" to build Dazuko as a RedirFS filter
+ - change "--without-dep" to be the default
+
+---
+ configure | 41 +++++++++++++++++++++++++++++++++--------
+ 1 files changed, 33 insertions(+), 8 deletions(-)
+
+diff --git a/configure b/configure
+index 17168f1..d300fce 100755
+--- a/configure
++++ b/configure
+@@ -74,6 +74,7 @@ print_help()
+ echo " --disable-compat1 disable 1.x compatibility (IO/Linux only)"
+ echo " --enable-debug print extra debug information"
+ echo " --enable-syscalls hook syscalls, not LSM (Linux 2.6 only)"
++ echo " --enable-redirfs use RedirFS (Linux 2.6 only)"
+ echo ""
+ echo "optional packages"
+ echo " --with-PACKAGE use PACKAGE"
+@@ -81,7 +82,7 @@ print_help()
+ echo " --without-module do not build kernel module"
+ echo " --without-library do not build library"
+ echo " --without-example-c do not build C example"
+- echo " --without-dep do not build dependencies (Linux only)"
++ echo " --with-dep build dependencies (Linux only)"
+ echo " --with-example-java build Java example"
+ echo " --with-example-perl build Perl example"
+ echo " --with-example-python build Python example"
+@@ -407,7 +408,18 @@ check_use_parent()
+
+ do_linux26()
+ {
+- if [ $LINUX26_USE_SYSCALLS -eq 0 ]
++ if [ $LINUX26_USE_SYSCALLS -eq 0 -a $LINUX26_USE_REDIRFS -eq 1 ]
++ then
++ echo -n "checking for RedirFS source code... "
++ if [ ! -f "../redirfs/redirfs.h" ]
++ then
++ echo "not found"
++ echo "error: please make sure the RedirFS code is available as ../redirfs/"
++ exit 1
++ fi
++ echo "found (../redirfs)"
++
++ elif [ $LINUX26_USE_SYSCALLS -eq 0 -a $LINUX26_USE_REDIRFS -eq 0 ]
+ then
+ echo -n "checking if security module support is enabled... "
+ if [ $CONFIG_SECURITY -eq 0 ]
+@@ -690,25 +702,25 @@ do_linux26()
+
+ if [ $ON_CLOSE -ne 0 -a $LINUX26_USE_SYSCALLS -eq 0 ]
+ then
+- echo "disabling ON_CLOSE events (not available for Linux 2.6 LSM)"
++ echo "disabling ON_CLOSE events (not available for Linux 2.6 LSM/RedirFS)"
+ ON_CLOSE=0
+ fi
+
+ if [ ${ON_UNLINK} -ne 0 -a $LINUX26_USE_SYSCALLS -eq 0 ]
+ then
+- echo "disabling ON_UNLINK events (not available for Linux 2.6 LSM)"
++ echo "disabling ON_UNLINK events (not available for Linux 2.6 LSM/RedirFS)"
+ ON_UNLINK=0
+ fi
+
+ if [ ${ON_RMDIR} -ne 0 -a $LINUX26_USE_SYSCALLS -eq 0 ]
+ then
+- echo "disabling ON_RMDIR events (not available for Linux 2.6 LSM)"
++ echo "disabling ON_RMDIR events (not available for Linux 2.6 LSM/RedirFS)"
+ ON_RMDIR=0
+ fi
+
+ if [ ${ON_CLOSE_MODIFIED} -ne 0 -a $LINUX26_USE_SYSCALLS -eq 0 ]
+ then
+- echo "disabling ON_CLOSE_MODIFIED events (not available for Linux 2.6 LSM)"
++ echo "disabling ON_CLOSE_MODIFIED events (not available for Linux 2.6 LSM/RedirFS)"
+ ON_CLOSE_MODIFIED=0
+ fi
+
+@@ -716,7 +728,12 @@ do_linux26()
+
+ if [ ${LINUX26_USE_SYSCALLS} -eq 0 ]
+ then
+- LINUX26_OBJS="dazuko_linux26.o"
++ if [ ${LINUX26_USE_REDIRFS} -eq 0 ]
++ then
++ LINUX26_OBJS="dazuko_linux26.o"
++ else
++ LINUX26_OBJS="dazuko_redirfs.o"
++ fi
+ echo "EXTRA_CFLAGS += -Wall -DLINUX26_SUPPORT" > Makefile
+ else
+ LINUX26_OBJS="dazuko_linux.o"
+@@ -1460,12 +1477,13 @@ LINUX26_USE_SYSCALLS=0
+ PERFORM_SCT_CHECK=1
+ LINUX26_SYSCALLTABLE_READONLY=0
+ LINUX26_SYSCALL_CFLAGS=""
+-WITH_LINUX_DEP=1
++WITH_LINUX_DEP=0
+ NO_CAPABILITIES=0
+ SMP=0
+ HIDDEN_SCT=0
+ DUMMYOS=0
+ LSM_STACKING=1
++LINUX26_USE_REDIRFS=0
+ LOCAL_DPATH=2
+ LINUX_SRC=""
+ LINUX_OBJ=""
+@@ -1549,6 +1567,13 @@ do
+ --disable-syscalls)
+ LINUX26_USE_SYSCALLS=0
+ ;;
++ --enable-redirfs)
++ LINUX26_USE_REDIRFS=1
++ LSM_STACKING=0
++ ;;
++ --disable-redirfs)
++ LINUX26_USE_REDIRFS=0
++ ;;
+ --sct-nocheck)
+ PERFORM_SCT_CHECK=0
+ ;;
+--
+1.5.4.rc4.25.g81cc-dirty
+
From priyank at frugalware.org Tue Mar 4 18:31:18 2008
From: priyank at frugalware.org (Priyank)
Date: Tue Mar 4 18:31:20 2008
Subject: [Frugalware-git] frugalware-current: gfpm-1.1.0-3-i686
Message-ID: <20080304173118.5135D1190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=3937a2a1b634ca61204edbb472c67eb90ef938c0
commit 3937a2a1b634ca61204edbb472c67eb90ef938c0
Author: Priyank
Date: Tue Mar 4 22:59:58 2008 +0530
gfpm-1.1.0-3-i686
* Backported more fixes from gfpm git
diff --git a/source/xapps/gfpm/FrugalBuild b/source/xapps/gfpm/FrugalBuild
index 87b6eb5..537894b 100644
--- a/source/xapps/gfpm/FrugalBuild
+++ b/source/xapps/gfpm/FrugalBuild
@@ -3,7 +3,7 @@
pkgname=gfpm
pkgver=1.1.0
-pkgrel=2
+pkgrel=3
pkgdesc="Graphical Frugalware Package Manager"
url="http://ftp.frugalware.org/pub/other/gfpm"
depends=('glib2' 'gtk+2' 'libglade' 'pacman-g2>=3.6.7-2' 'inotify-tools' 'frugalwareutils>=0.7.9')
@@ -14,8 +14,8 @@ archs=('i686' 'x86_64')
_F_gnome_iconcache="y"
Finclude gnome-scriptlet
up2date="lynx -dump $url | Flasttar"
-source=($url/$pkgname-$pkgver.tar.gz gfpm_hide_help_button.diff)
-signatures=(${source[0]}.asc '')
+source=($url/$pkgname-$pkgver.tar.gz gfpm_hide_help_button.diff gfpm_post110fixes.diff)
+signatures=(${source[0]}.asc '' '')
build()
{
diff --git a/source/xapps/gfpm/gfpm_post110fixes.diff b/source/xapps/gfpm/gfpm_post110fixes.diff
new file mode 100644
index 0000000..c507301
--- /dev/null
+++ b/source/xapps/gfpm/gfpm_post110fixes.diff
@@ -0,0 +1,128 @@
+diff -Naur gfpm-1.1.0/src/gfpm-interface.c gfpm-1.1.0.new/src/gfpm-interface.c
+--- gfpm-1.1.0/src/gfpm-interface.c 2008-03-02 01:22:31.000000000 +0530
++++ gfpm-1.1.0.new/src/gfpm-interface.c 2008-03-04 22:47:09.000000000 +0530
+@@ -334,9 +334,19 @@
+ /* Disable Apply, Refresh and File buttons if user is not root */
+ if ( geteuid() != 0 )
+ {
++ /* disable some widgets */
+ gtk_widget_set_sensitive (glade_xml_get_widget(xml, "button_apply"), FALSE);
+ gtk_widget_set_sensitive (glade_xml_get_widget(xml, "button_refresh1"), FALSE);
+ gtk_widget_set_sensitive (glade_xml_get_widget(xml, "button_file1"), FALSE);
++ gtk_widget_set_sensitive (gfpm_get_widget("repos"), FALSE);
++ gtk_widget_set_sensitive (gfpm_get_widget("clr1"), FALSE);
++ gtk_widget_set_sensitive (gfpm_get_widget("opt1"), FALSE);
++ }
++ else
++ {
++ /* init repomanager only if gfpm is run as root user */
++ gfpm_repomanager_init ();
++
+ }
+
+ /* initialize modules */
+@@ -347,7 +357,6 @@
+ gfpm_optimize_db_dlg_init ();
+ gfpm_quickpane_init ();
+ gfpm_icmonitor_init ();
+- gfpm_repomanager_init ();
+ gfpm_logviewer_init ();
+
+ gtk_widget_hide (gfpm_splash);
+@@ -1437,6 +1446,9 @@
+ if (event->button != 3)
+ return;
+
++ if (geteuid() != 0)
++ return;
++
+ model = gtk_tree_view_get_model (GTK_TREE_VIEW(gfpm_pkgs_tvw));
+ selection = gtk_tree_view_get_selection (GTK_TREE_VIEW(gfpm_pkgs_tvw));
+ if ( FALSE == gtk_tree_selection_get_selected (selection, &model, &iter) )
+@@ -1487,7 +1499,7 @@
+ g_signal_connect (G_OBJECT(menu_item), "activate", G_CALLBACK(cb_gfpm_mark_for_reinstall), (gpointer)pkgname);
+ gtk_menu_shell_append (GTK_MENU_SHELL(menu), menu_item);
+ gtk_widget_show (menu_item);
+-
++
+ menu_item = gtk_image_menu_item_new_with_label (_("Mark for removal"));
+ image = gtk_image_new_from_stock ("gtk-remove", GTK_ICON_SIZE_MENU);
+ gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM(menu_item), image);
+diff -Naur gfpm-1.1.0/src/gfpm-progress.c gfpm-1.1.0.new/src/gfpm-progress.c
+--- gfpm-1.1.0/src/gfpm-progress.c 2008-03-02 01:22:31.000000000 +0530
++++ gfpm-1.1.0.new/src/gfpm-progress.c 2008-03-04 22:47:11.000000000 +0530
+@@ -33,7 +33,7 @@
+ extern GtkWidget *gfpm_mw;
+
+ GtkProgressBar *progressbar = NULL;
+-GtkWidget *progresswindow = NULL;
++GtkWidget *progresswindow = NULL;
+ static GtkWidget *main_label = NULL;
+ static GtkWidget *sub_label = NULL;
+ static GtkWidget *rate_label = NULL;
+@@ -45,7 +45,7 @@
+ static GtkWidget *autoclose_checkbtn = NULL;
+
+ GtkTextIter t_iter;
+-GtkTextBuffer *buffer = NULL;
++GtkTextBuffer *buffer = NULL;
+
+ float rate;
+ int offset;
+@@ -97,7 +97,8 @@
+ static void
+ cb_gfpm_close_button_clicked (GtkWidget *button, gpointer data)
+ {
+- gfpm_progress_show (FALSE);
++ pacman_trans_release ();
++// gfpm_progress_show (FALSE);
+
+ return;
+ }
+@@ -167,13 +168,13 @@
+ int
+ gfpm_progress_update (netbuf *ctl, int xferred, void *arg)
+ {
+- int size;
+- int per;
+- char text[6];
+- char rate_text[10];
+- struct timeval t1;
+- float tdiff;
+- gchar *rx_str = NULL;
++ int size;
++ int per;
++ char text[6];
++ char rate_text[10];
++ struct timeval t1;
++ float tdiff;
++ gchar *rx_str = NULL;
+
+ while (gtk_events_pending())
+ gtk_main_iteration ();
+@@ -213,7 +214,6 @@
+ while (gtk_events_pending())
+ gtk_main_iteration ();
+
+-
+ return 1;
+ }
+
+diff -Naur gfpm-1.1.0/src/gfpm-quickpane.c gfpm-1.1.0.new/src/gfpm-quickpane.c
+--- gfpm-1.1.0/src/gfpm-quickpane.c 2008-03-02 01:22:31.000000000 +0530
++++ gfpm-1.1.0.new/src/gfpm-quickpane.c 2008-03-04 22:47:11.000000000 +0530
+@@ -73,6 +73,14 @@
+ "clicked",
+ G_CALLBACK(cb_gfpm_quickpane_readme_clicked),
+ NULL);
++
++ /* Disable the Quick pane Install,Remove,Upgrade buttons if gfpm is not run as root */
++ if (geteuid() != 0)
++ {
++ gtk_widget_set_sensitive (quick_pane_install_btn, FALSE);
++ gtk_widget_set_sensitive (quick_pane_remove_btn, FALSE);
++ gtk_widget_set_sensitive (quick_pane_upgrade_btn, FALSE);
++ }
+
+ return;
+ }
From crazy at frugalware.org Tue Mar 4 19:02:11 2008
From: crazy at frugalware.org (crazy)
Date: Tue Mar 4 19:02:11 2008
Subject: [Frugalware-git] frugalware-current: zziplib-0.13.49-2-i686
Message-ID: <20080304180211.0184E1190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=6dbb1f484c43cf59d0629d5c4cf21a474cd4657e
commit 6dbb1f484c43cf59d0629d5c4cf21a474cd4657e
Author: crazy
Date: Tue Mar 4 19:00:51 2008 +0100
zziplib-0.13.49-2-i686
* relbump
* fixed all pc files
diff --git a/source/lib-extra/zziplib/FrugalBuild b/source/lib-extra/zziplib/FrugalBuild
index 15141c5..c3db255 100644
--- a/source/lib-extra/zziplib/FrugalBuild
+++ b/source/lib-extra/zziplib/FrugalBuild
@@ -3,7 +3,7 @@
pkgname=zziplib
pkgver=0.13.49
-pkgrel=1
+pkgrel=2
pkgdesc="easily extract data from files archived in a single zip file"
url="http://zziplib.sourceforge.net/"
depends=('zlib')
@@ -15,11 +15,16 @@ up2date="lynx -dump 'http://sourceforge.net/project/showfiles.php?group_id=6389&
build() {
Fcd
+ ## we need autoreconf first
+ Fautoreconf
Fconf
- Fsed 'tail -1' 'tail -n 1' Makefile
make || return 1
make test || return 1
Fmakeinstall
+ ## datadir is broken in all pc files and while
+ ## that there is no way for other package need zziplib
+ ## to use it from pkg-config :|
+ Fsed 'datadir=.*' 'datadir=${prefix}/share' $Fdestdir//usr/lib/pkgconfig/*.pc
}
# optimization OK
From boobaa at frugalware.org Tue Mar 4 19:03:43 2008
From: boobaa at frugalware.org (CSCSY Lszl)
Date: Tue Mar 4 19:03:46 2008
Subject: [Frugalware-git] frugalware-current: phpmyadmin-2.11.5-1-i686
Message-ID: <20080304180343.843641190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=b9047f837fc6141498c5281428384cb223c12a0c
commit b9047f837fc6141498c5281428384cb223c12a0c
Author: CSCSY Lszl
Date: Tue Mar 4 19:03:35 2008 +0100
phpmyadmin-2.11.5-1-i686
version bump
closes #2835 in -current
diff --git a/source/network-extra/phpmyadmin/FrugalBuild b/source/network-extra/phpmyadmin/FrugalBuild
index 2ac11e6..020ba39 100644
--- a/source/network-extra/phpmyadmin/FrugalBuild
+++ b/source/network-extra/phpmyadmin/FrugalBuild
@@ -3,7 +3,7 @@
# Maintainer: CSCSY Lszl
pkgname=phpmyadmin
-pkgver=2.11.4
+pkgver=2.11.5
pkgrel=1
pkgdesc="Set of PHP-scripts to administrate MySQL over the WWW."
_F_sourceforge_ext="-all-languages.tar.bz2"
@@ -30,4 +30,4 @@ build()
Frm /var/www/html/phpMyAdmin-${pkgver//_/-}-all-languages.tar.bz2
}
-sha1sums=('d43e4e2b33efbd02c164e1d55aa38e9bebff4e57')
+sha1sums=('922a5ce40a0139aa3013e95eb6ee9176a7aa2785')
From crazy at frugalware.org Tue Mar 4 19:24:01 2008
From: crazy at frugalware.org (crazy)
Date: Tue Mar 4 19:24:03 2008
Subject: [Frugalware-git] frugalware-current: mediawiki-1.11.2-1-i686
Message-ID: <20080304182401.C88321190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=612ad1988771bf1e7bdeb013f491b9511df33980
commit 612ad1988771bf1e7bdeb013f491b9511df33980
Author: crazy
Date: Tue Mar 4 19:21:42 2008 +0100
mediawiki-1.11.2-1-i686
* Version bump
* closes FS#2836 in -current
diff --git a/source/network-extra/mediawiki/FrugalBuild b/source/network-extra/mediawiki/FrugalBuild
index 3f92305..fe0b747 100644
--- a/source/network-extra/mediawiki/FrugalBuild
+++ b/source/network-extra/mediawiki/FrugalBuild
@@ -3,7 +3,7 @@
# Maintainer: voroskoi
pkgname=mediawiki
-pkgver=1.11.0
+pkgver=1.11.2
pkgrel=1
pkgdesc="The collaborative editing software that runs Wikipedia"
_F_sourceforge_dirname="wikipedia"
@@ -25,6 +25,6 @@ build()
Fexe /usr/bin/mediawikisetup
}
# php code, no need of optimalization
-sha1sums=('754ddbbff80b1f76ca5022a0e70253cc1c45a2b1' \
+sha1sums=('c5d5e99d73e646cff421b3bb92dd638fb93cd575' \
'2c70930c46b8a5d87e830f64dc2761c5506ce967' \
'b9810ea6531b4f61e41778b76f7601f2c4f9b0e2')
From janny at frugalware.org Tue Mar 4 19:33:48 2008
From: janny at frugalware.org (janny)
Date: Tue Mar 4 19:33:48 2008
Subject: [Frugalware-git] fwlive: lirc-fwlive-0.8.2-18-i686
Message-ID: <20080304183348.34EB81190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=1fd4a5f61f56a7791c98da52a4e76c42b0695b18
commit 1fd4a5f61f56a7791c98da52a4e76c42b0695b18
Author: janny
Date: Tue Mar 4 19:32:58 2008 +0100
lirc-fwlive-0.8.2-18-i686
* version bump in fwlive repo
diff --git a/source/apps-extra/lirc-fwlive/FrugalBuild b/source/apps-extra/lirc-fwlive/FrugalBuild
index 06032ac..45525c9 100644
--- a/source/apps-extra/lirc-fwlive/FrugalBuild
+++ b/source/apps-extra/lirc-fwlive/FrugalBuild
@@ -2,15 +2,15 @@
# Maintainer: voroskoi
pkgname=lirc-fwlive
+_F_archive_name=lirc
pkgver=0.8.2
-pkgrel=3
+pkgrel=18
pkgdesc="LIRC is a package that allows you to decode and send infra-red signals of many commonly used remote controls."
url="http://www.lirc.org/"
-#Finclude kernel-module sourceforge
_F_sourceforge_name="lirc"
_F_rcd_name="lirc"
-Finclude sourceforge
-kver=2.6.22-1
+Finclude kernel-module sourceforge
+kver=2.6.24-3
makedepends=("kernel-fwlive-source=$kver")
subpkgs=('lirc_modules-fwlive')
@@ -25,17 +25,20 @@ rodepends=("lirc_modules-fwlive=$pkgver")
groups=('apps-extra')
archs=('i686' 'x86_64')
backup=(etc/lirc{d,md}.conf etc/sysconfig/lirc)
-source=(${source[@]} rc.lirc lirc.logrotate lirc.sysconfig README.Frugalware)
+source=(${source[@]} rc.lirc lirc.logrotate lirc.sysconfig README.Frugalware \
+ kernel-2.6.{23,24}.patch)
unset install
build() {
- Fcd lirc-$pkgver
Fpatchall
Fconf --enable-sandboxed --with-driver=all \
- --with-moduledir=/lib/modules/`echo $kver|sed 's/-/-fw/'`/misc
+ --with-moduledir=$_F_kernelmod_dir/misc
# does not compile with SMP kernel
sed -i -e 's/lirc_parallel//' -e 's/lirc_bt829//' \
Makefile drivers/Makefile drivers/*/Makefile tools/Makefile || Fdie
+ # disable lirc_gpio due to brokeness of kernel 2.6.23
+ Fsed "lirc_gpio" "" \
+ Makefile drivers/Makefile drivers/*/Makefile tools/Makefile || Fdie
make || Fdie
make install DESTDIR=$Fdestdir || Fdie
@@ -47,14 +50,16 @@ build() {
Fmkdir /etc/{logrotate.d,sysconfig}
Ffile lirc.logrotate /etc/logrotate.d/
Ffile lirc.sysconfig /etc/sysconfig/lirc
- Frcd2 lirc
- Fsplit lirc_modules-fwlive lib/modules
- Frm lib
+ Frcd2 $_F_archive_name
+ Fsplit lirc_modules lib/modules
+ Fbuild_kernelmod_scriptlet
}
-sha1sums=('3443b24c54e8679483efbb6fb446b41116bc654c'\
- '30a7d32e512af135840e657edfa0736ad9d53281'\
- '4342b004eb53d51fcbb9af2cf136bb4990874608'\
- '504e0cd04780e75b6a8ab6836815c1ed9058db78'\
- '0b80c73e902920c028dca98a9006aaa313c6e120')
+sha1sums=('3443b24c54e8679483efbb6fb446b41116bc654c' \
+ '30a7d32e512af135840e657edfa0736ad9d53281' \
+ '4342b004eb53d51fcbb9af2cf136bb4990874608' \
+ '504e0cd04780e75b6a8ab6836815c1ed9058db78' \
+ '0b80c73e902920c028dca98a9006aaa313c6e120' \
+ 'cd65d7ce6a33a8e8965dc0d529b72a785c4437f7' \
+ '83bb445945e6331d17c2bb5200811c107bdc609f')
# optimization OK
From janny at frugalware.org Tue Mar 4 21:28:35 2008
From: janny at frugalware.org (Janny)
Date: Tue Mar 4 21:28:38 2008
Subject: [Frugalware-git] fwlive: fwlive-config
Message-ID: <20080304202835.F03671190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=2592b897f91c97c4ab87aa7c380be32e4665d811
commit 2592b897f91c97c4ab87aa7c380be32e4665d811
Author: Janny
Date: Tue Mar 4 21:27:24 2008 +0100
fwlive-config
* remove truecrypt-fwlive pkg from DRIVERS
diff --git a/config b/config
index 3dc4e2e..6eb87c1 100644
--- a/config
+++ b/config
@@ -69,9 +69,9 @@ SAVEDIRS = etc home lib root usr var
CONFIG_SETUP = y
# additional packages to be installed by the profiles
-# no builded pkgs: rt2500-fwlive rt2400-fwlive acx100-fwlive lirc-fwlive
+# no builded pkgs: rt2500-fwlive rt2400-fwlive acx100-fwlive lirc-fwlive truecrypt-fwlive
DRIVERS = ndiswrapper-fwlive ipw2200-firmware gspcav1-fwlive \
- qc-usb-fwlive truecrypt-fwlive dazuko-fwlive \
+ qc-usb-fwlive dazuko-fwlive \
busybox-fwlive acerhk-fwlive madwifi-fwlive \
wlan-ng-fwlive adm8211-fwlive ipw3945-fwlive kqemu-fwlive
INST_MUSTHAVE_APPS = busybox-fwlive util-linux-ng grub-theme-fwlive \
From janny at frugalware.org Tue Mar 4 21:42:21 2008
From: janny at frugalware.org (janny)
Date: Tue Mar 4 21:42:23 2008
Subject: [Frugalware-git] fwlive: gspcav1-fwlive-1.00.20-6-i686
Message-ID: <20080304204221.B5BE11190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=147d9a77776354cec8e3cac5684cfb46bc85bb9b
commit 147d9a77776354cec8e3cac5684cfb46bc85bb9b
Author: janny
Date: Tue Mar 4 21:40:47 2008 +0100
gspcav1-fwlive-1.00.20-6-i686
* version bump in fwlive repo
diff --git a/source/multimedia-extra/gspcav1-fwlive/FrugalBuild b/source/multimedia-extra/gspcav1-fwlive/FrugalBuild
index b5a02a4..9d363e9 100644
--- a/source/multimedia-extra/gspcav1-fwlive/FrugalBuild
+++ b/source/multimedia-extra/gspcav1-fwlive/FrugalBuild
@@ -2,27 +2,27 @@
# Maintainer: Janny
pkgname=gspcav1-fwlive
-pkgver=1.00.18
-pkgrel=5
-pkgdate=20070508
+_F_archive_name=gspcav1
+pkgver=1.00.20
+pkgrel=6
+pkgdate=20071224
pkgdesc="One driver Upto 220 Webcams supported"
url="http://mxhaard.free.fr"
license="GPL"
-#Finclude kernel-module
-kver=2.6.22-1
+Finclude kernel-module
+kver=2.6.24-3
depends=("kernel-fwlive=$kver")
makedepends=("kernel-fwlive-source=$kver")
-_F_kernelmod_uname=`echo $kver|sed 's/-/-fw/'`
archs=('i686' 'x86_64')
groups=('multimedia-extra')
replaces=('spca5xx')
up2date="lynx -dump $url/download.html|grep -m1 'gspcav1'|sed 's/.*version \(.*\) da.*/\1/'"
-source=(http://mxhaard.free.fr/spca50x/Download/gspcav1-$pkgdate.tar.gz)
-sha1sums=('c7c63c9ee3be36dfe0d69b814239d398ced5f91a')
+source=(http://mxhaard.free.fr/spca50x/Download/$_F_archive_name-$pkgdate.tar.gz)
+sha1sums=('e34e91f4bccc69830f1b5f09fe0ecb4eccfe854d')
build() {
# no Fcheckkernel, crosscompilation verified
- Fcd gspcav1-$pkgdate
+ Fcd $_F_archive_name-$pkgdate
Fsed '`uname -r`' "$_F_kernelmod_uname" Makefile
Fmake
sed -i s\%MODULE_INSTALLDIR\ =\ /lib%MODULE_INSTALLDIR\ =\ $Fdestdir/lib% Makefile || Fdie
@@ -31,5 +31,6 @@ build() {
sed -i s\%@/sbin/depmod%% Makefile || Fdie
sed -i s\%su\ -c\ \"make\ install-root\"%make\ install-root% Makefile || Fdie
make DESTDIR=$Fdestdir install || Fdie
- Ffileschmod ../src/gspcav1-$pkgdate 644
+ Ffileschmod ../src/$_F_archive_name-$pkgdate 644
+ Fbuild_kernelmod_scriptlet
}
From janny at frugalware.org Tue Mar 4 23:09:28 2008
From: janny at frugalware.org (janny)
Date: Tue Mar 4 23:09:29 2008
Subject: [Frugalware-git] fwlive: qc-usb-fwlive-0.6.6-31-i686
Message-ID: <20080304220928.3FEA11190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=1d4f74f26fcb05c0ecdad7caf55fb76226e0d3f5
commit 1d4f74f26fcb05c0ecdad7caf55fb76226e0d3f5
Author: janny
Date: Tue Mar 4 23:06:58 2008 +0100
qc-usb-fwlive-0.6.6-31-i686
* version bump in fwlive repo
diff --git a/source/multimedia-extra/qc-usb-fwlive/FrugalBuild b/source/multimedia-extra/qc-usb-fwlive/FrugalBuild
index 9fd5e4d..64f30c2 100644
--- a/source/multimedia-extra/qc-usb-fwlive/FrugalBuild
+++ b/source/multimedia-extra/qc-usb-fwlive/FrugalBuild
@@ -3,27 +3,30 @@
pkgname=qc-usb-fwlive
pkgver=0.6.6
-pkgrel=17
+pkgrel=31
pkgdesc="Quickcam kernel driver."
groups=('multimedia-extra')
archs=('i686' 'x86_64')
_F_sourceforge_dirname="qce-ga"
_F_sourceforge_name="qc-usb"
-Finclude sourceforge
-#kernel-module
-kver=2.6.22-1
+Finclude kernel-module sourceforge
+kver=2.6.24-3
depends=("kernel-fwlive=$kver")
makedepends=("kernel-fwlive-source=$kver")
_F_kernelmod_uname=`echo $kver|sed 's/-/-fw/'`
_F_kernelmod_dir="/lib/modules/$_F_kernelmod_uname"
url="http://qce-ga.sourceforge.net/"
+source=($source kernel-2.6.24.patch)
up2date="lynx -dump http://sourceforge.net/project/showfiles.php?group_id=12924|grep qc-usb |sed 's/[^]]*][^]]*]\([^ ]*\) .*/\1/;q'"
-sha1sums=('947a9f1233586af71d82e413f455ef01ee388b43')
+sha1sums=('947a9f1233586af71d82e413f455ef01ee388b43' \
+ 'e0362a80fc4d08d7cfa10899ded63b6eaf854ee7')
build() {
Fcd qc-usb-$pkgver
+ Fpatchall
# no Fcheckkernel, crosscompilation verified
make LINUX_DIR=$_F_kernelmod_dir/build all || return 1
Ffilerel $_F_kernelmod_dir/kernel/drivers/usb/misc/quickcam.ko
+ Fbuild_kernelmod_scriptlet
}
From janny at frugalware.org Tue Mar 4 23:11:03 2008
From: janny at frugalware.org (janny)
Date: Tue Mar 4 23:11:04 2008
Subject: [Frugalware-git] fwlive: qc-usb-fwlive-0.6.6-31-i686
Message-ID: <20080304221103.79A4E1190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=bd48cab73ad7b91da9417eb7aed1ef62a85e3651
commit bd48cab73ad7b91da9417eb7aed1ef62a85e3651
Author: janny
Date: Tue Mar 4 23:10:26 2008 +0100
qc-usb-fwlive-0.6.6-31-i686
* add missing patch
diff --git a/source/multimedia-extra/qc-usb-fwlive/kernel-2.6.24.patch b/source/multimedia-extra/qc-usb-fwlive/kernel-2.6.24.patch
new file mode 100644
index 0000000..2f7b0e0
--- /dev/null
+++ b/source/multimedia-extra/qc-usb-fwlive/kernel-2.6.24.patch
@@ -0,0 +1,39 @@
+by Stefan Lippers-Hollmann
+fixes kernel 2.6.24 compatibility.
+
+diff -urNad qc-usb-0.6.6~/qc-driver.c qc-usb-0.6.6/qc-driver.c
+--- qc-usb-0.6.6~/qc-driver.c 2006-10-24 04:06:19.000000000 +0200
++++ qc-usb-0.6.6/qc-driver.c 2007-12-09 17:20:30.000000000 +0100
+@@ -821,7 +821,9 @@
+ if (!cr) goto fail2;
+ urb->transfer_buffer = kmalloc(qc_i2c_maxbufsize*sizeof(u8), GFP_KERNEL); /* Allocate maximum ever needed */
+ if (!urb->transfer_buffer) goto fail3;
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24)
+ spin_lock_init(&urb->lock);
++#endif
+ urb->complete = qc_i2c_handler;
+ urb->context = qc;
+ #if (LINUX_VERSION_CODE= KERNEL_VERSION(2,6,0)
+ release: qc_v4l_release,
+diff -urNad qc-usb-0.6.6~/quickcam.h qc-usb-0.6.6/quickcam.h
+--- qc-usb-0.6.6~/quickcam.h 2006-11-04 14:38:27.000000000 +0100
++++ qc-usb-0.6.6/quickcam.h 2007-12-09 17:17:01.000000000 +0100
+@@ -126,7 +126,9 @@
+ #define FALSE 0
+ #define TRUE (!FALSE)
+ typedef unsigned char Bool;
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24)
+ #define BIT(x) (1<<(x))
++#endif
+ #define SIZE(a) (sizeof(a)/sizeof((a)[0]))
+ #define MAX(a,b) ((a)>(b)?(a):(b))
+ #define MIN(a,b) ((a)<(b)?(a):(b))
From janny at frugalware.org Tue Mar 4 23:49:09 2008
From: janny at frugalware.org (janny)
Date: Tue Mar 4 23:49:11 2008
Subject: [Frugalware-git] fwlive: madwifi-fwlive-0.9.4-2-i686
Message-ID: <20080304224909.EEFBB1190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=5c9e60444857897ddbe23135deacda6b70c3e3be
commit 5c9e60444857897ddbe23135deacda6b70c3e3be
Author: janny
Date: Tue Mar 4 23:48:39 2008 +0100
madwifi-fwlive-0.9.4-2-i686
* version bump in fwlive repo
diff --git a/source/network/madwifi-fwlive/FrugalBuild b/source/network/madwifi-fwlive/FrugalBuild
index 802c2c4..87846f9 100644
--- a/source/network/madwifi-fwlive/FrugalBuild
+++ b/source/network/madwifi-fwlive/FrugalBuild
@@ -2,40 +2,35 @@
# Maintainer: VMiklos
pkgname=madwifi-fwlive
-pkgver=0.9.3.1
-pkgrel=4
+_F_archive_name=madwifi
+_F_sourceforge_name=madwifi
+pkgver=0.9.4
+pkgrel=2
pkgdesc="Madwifi drivers for Atheros wireless chipsets"
url="http://madwifi.sourceforge.net/"
-#Finclude kernel-module
-#depends=(${depends[@]} 'wireless_tools')
-replaces=('madwifi-ng')
-#makedepends=(${makedepends[@]} 'sharutils')
-kver=2.6.22-1
+Finclude kernel-module sourceforge
+kver=2.6.24-3
depends=("kernel-fwlive=$kver" 'wireless_tools')
+replaces=('madwifi-ng')
makedepends=("kernel-fwlive-source=$kver" 'sharutils')
-_F_kernelmod_uname=`echo $kver|sed 's/-/-fw/'`
-_F_kernelmod_dir="/lib/modules/$_F_kernelmod_uname"
groups=('network')
archs=('i686' 'x86_64')
-_F_sourceforge_name="madwifi"
-_F_rcd_name="madwifi"
-Finclude sourceforge
-source=($source madwifi-0.9.3-cflags.diff madwifi-0.9.3.1-kernel2622.diff)
-sha1sums=('690543c825b8b49186e4613a286b39114fff3c11' \
- '26fdc221e5bb0299d8b3c41ad30b6fe6882a8e35' \
- 'b61d7e0bc2da632e399abbe6b6bef92f6a73d7cc')
+source=($source madwifi-0.9.3-cflags.diff)
+sha1sums=('6f289cb2e99d27b23570d15b69bf0f4240e34d1e' \
+ '26fdc221e5bb0299d8b3c41ad30b6fe6882a8e35')
# If the package needs testing, feel free to poke Benjamin Woods
build()
{
+ Fcd $_F_archive_name-$pkgver
# no Fcheckkernel, crosscompilation verified
- Fcd madwifi-$pkgver
Fpatchall
KERNELPATH=/usr/src/linux Fmake
Fmakeinstall KERNELPATH=/usr/src/linux \
MODULEPATH=$_F_kernelmod_dir/kernel/drivers/net/wireless \
BINDIR=/usr/bin MANDIR=/usr/man
+ Fbuild_kernelmod_scriptlet
}
# optimization OK
diff --git a/source/network/madwifi-fwlive/madwifi-0.9.3.1-kernel2622.diff b/source/network/madwifi-fwlive/madwifi-0.9.3.1-kernel2622.diff
deleted file mode 100644
index eea54e8..0000000
--- a/source/network/madwifi-fwlive/madwifi-0.9.3.1-kernel2622.diff
+++ /dev/null
@@ -1,100 +0,0 @@
-diff -Naur madwifi-0.9.3.1.orig/Makefile.inc madwifi-0.9.3.1/Makefile.inc
---- madwifi-0.9.3.1.orig/Makefile.inc 2007-01-18 09:26:23.000000000 +0100
-+++ madwifi-0.9.3.1/Makefile.inc 2007-07-10 14:45:07.000000000 +0200
-@@ -146,7 +146,7 @@
- #
- TOOLS= $(TOP)/tools
-
--COPTS+= -Werror
-+#COPTS+= -Werror
- INCS= -include $(TOP)/include/compat.h -I$(TOP)/include
-
- # TARGET defines the target platform architecture. It must match one of
-diff -Naur madwifi-0.9.3.1.orig/net80211/ieee80211_input.c madwifi-0.9.3.1/net80211/ieee80211_input.c
---- madwifi-0.9.3.1.orig/net80211/ieee80211_input.c 2007-05-23 10:43:05.000000000 +0200
-+++ madwifi-0.9.3.1/net80211/ieee80211_input.c 2007-07-10 14:45:21.000000000 +0200
-@@ -1048,11 +1048,12 @@
- * incoming fragments
- * XXX 4-address/QoS frames?
- */
-- else if (skb->end - skb->head < ni->ni_vap->iv_dev->mtu +
-- hdrlen) {
-+ else if (skb_end_pointer(skb) - skb->head <
-+ ni->ni_vap->iv_dev->mtu + hdrlen) {
- ni->ni_rxfrag = skb_copy_expand(skb, 0,
- (ni->ni_vap->iv_dev->mtu + hdrlen) -
-- (skb->end - skb->head), GFP_ATOMIC);
-+ (skb_end_pointer(skb) - skb->head),
-+ GFP_ATOMIC);
- dev_kfree_skb(skb);
- }
- }
-@@ -1136,8 +1137,8 @@
- }
- if (skb1 != NULL) {
- skb1->dev = dev;
-- skb1->mac.raw = skb1->data;
-- skb1->nh.raw = skb1->data + sizeof(struct ether_header);
-+ skb_reset_mac_header(skb1);
-+ skb1->network_header = skb1->data + sizeof(struct ether_header);
- skb1->protocol = __constant_htons(ETH_P_802_2);
- /* XXX insert vlan tag before queue it? */
- dev_queue_xmit(skb1);
-@@ -2259,7 +2260,7 @@
- if (skb1 == NULL)
- return;
- skb1->dev = dev;
-- skb1->mac.raw = skb1->data;
-+ skb_reset_mac_header(skb1);
- skb1->ip_summed = CHECKSUM_NONE;
- skb1->pkt_type = PACKET_OTHERHOST;
- skb1->protocol = __constant_htons(0x0019); /* ETH_P_80211_RAW */
-@@ -2534,7 +2535,7 @@
-
- skb->dev = dev;
- skb->protocol = eth_type_trans(skb, dev);
-- skb->mac.raw = skb->data;
-+ skb_reset_mac_header(skb);
- ieee80211_deliver_data(ni, skb);
- return;
- }
-@@ -3712,15 +3713,15 @@
- ath_eth_type_trans(struct sk_buff *skb, struct net_device *dev)
- {
- struct ethhdr *eth;
--
-- skb->mac.raw=skb->data;
-+
-+ skb_reset_mac_header(skb);
- skb_pull(skb, ETH_HLEN);
- /*
- * NB: mac.ethernet is replaced in 2.6.9 by eth_hdr but
- * since that's an inline and not a define there's
- * no easy way to do this cleanly.
- */
-- eth = (struct ethhdr *)skb->mac.raw;
-+ eth = eth_hdr(skb);
-
- if (*eth->h_dest & 1)
- if (memcmp(eth->h_dest, dev->broadcast, ETH_ALEN) == 0)
-diff -Naur madwifi-0.9.3.1.orig/net80211/ieee80211_monitor.c madwifi-0.9.3.1/net80211/ieee80211_monitor.c
---- madwifi-0.9.3.1.orig/net80211/ieee80211_monitor.c 2007-02-15 00:45:48.000000000 +0100
-+++ madwifi-0.9.3.1/net80211/ieee80211_monitor.c 2007-07-10 14:45:14.000000000 +0200
-@@ -373,7 +373,7 @@
- if (vap->iv_monitor_txf_len && tx) {
- /* truncate transmit feedback packets */
- skb_trim(skb1, vap->iv_monitor_txf_len);
-- skb1->nh.raw = skb1->data;
-+ skb1->network_header = skb1->data;
- }
- switch (vap->iv_dev->type) {
- case ARPHRD_IEEE80211:
-@@ -555,7 +555,7 @@
- skb_trim(skb1, skb1->len - IEEE80211_CRC_LEN);
- }
- skb1->dev = dev; /* NB: deliver to wlanX */
-- skb1->mac.raw = skb1->data;
-+ skb_reset_mac_header(skb1);
- skb1->ip_summed = CHECKSUM_NONE;
- skb1->pkt_type = pkttype;
- skb1->protocol = __constant_htons(0x0019); /* ETH_P_80211_RAW */
From crazy at frugalware.org Wed Mar 5 01:00:23 2008
From: crazy at frugalware.org (crazy)
Date: Wed Mar 5 01:00:25 2008
Subject: [Frugalware-git] frugalware-current: miro-1.1.1-2-i686
Message-ID: <20080305000023.B310E1190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=3bbf503b211b0bb14c6cea87f1f96a27fd45e7ca
commit 3bbf503b211b0bb14c6cea87f1f96a27fd45e7ca
Author: crazy
Date: Wed Mar 5 00:57:22 2008 +0100
miro-1.1.1-2-i686
* relbump
* added missing pysqlite2 depend
* closes FS#2839
diff --git a/source/gnome-extra/miro/FrugalBuild b/source/gnome-extra/miro/FrugalBuild
index 293ff39..1fd65f6 100644
--- a/source/gnome-extra/miro/FrugalBuild
+++ b/source/gnome-extra/miro/FrugalBuild
@@ -4,11 +4,11 @@
pkgname=miro
_F_archive_name=Miro
pkgver=1.1.1
-pkgrel=1
+pkgrel=2
pkgdesc="The free and open source internet TV platform."
url="http://www.getmiro.com/"
depends=('gtk+2' 'pygtk' 'dbus-python' 'pyrex' 'libboost>=1.34.1' 'libboost-mt>=1.34.1' 'xine-lib' 'db>=4.6.19'
- 'nss' 'nspr' 'xulrunner' 'gnome-python-extras' 'gnome-python-extras-mozembed')
+ 'nss' 'nspr' 'xulrunner' 'gnome-python-extras' 'gnome-python-extras-mozembed' 'pysqlite2')
makedepends=('boost>=1.34.1')
groups=('gnome-extra')
replaces=('democracy')
From janny at frugalware.org Wed Mar 5 09:30:33 2008
From: janny at frugalware.org (janny)
Date: Wed Mar 5 09:30:35 2008
Subject: [Frugalware-git] fwlive: acx100-fwlive-20071003-9-i686
Message-ID: <20080305083033.855011190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=14646a9879856c75cd3f449dc5b6dfe77b2a4ae1
commit 14646a9879856c75cd3f449dc5b6dfe77b2a4ae1
Author: janny
Date: Wed Mar 5 09:29:25 2008 +0100
acx100-fwlive-20071003-9-i686
* version bump in fwlive repo
diff --git a/source/network-extra/acx100-fwlive/FrugalBuild b/source/network-extra/acx100-fwlive/FrugalBuild
index f29b50a..2b1a542 100644
--- a/source/network-extra/acx100-fwlive/FrugalBuild
+++ b/source/network-extra/acx100-fwlive/FrugalBuild
@@ -1,36 +1,35 @@
-# Compiling Time: ~0.04 SBU
+# Compiling Time: 0.03 SBU
# Maintainer: voroskoi
pkgname=acx100-fwlive
-pkgver=0.3.36
-pkgdate=20070101
-pkgrel=11
+aname=acx100
+origname=acx-mac80211
+pkgver=20071003
+pkgrel=9
pkgdesc="The ACX100/ACX111 wireless network driver."
-url="http://www.cmartin.tk/acx"
-#Finclude kernel-module
-#depends=(${depends[@]} 'wireless_tools')
-kver=2.6.22-1
+_F_archive_name=${origname}
+_F_sourceforge_ext=".tar.bz2"
+_F_sourceforge_dirname=$aname
+_F_sourceforge_name=${origname}
+Finclude kernel-module sourceforge
+kver=2.6.24-3
depends=("kernel-fwlive=$kver" 'wireless_tools')
makedepends=("kernel-fwlive-source=$kver")
_F_kernelmod_uname=`echo $kver|sed 's/-/-fw/'`
_F_kernelmod_dir="/lib/modules/$_F_kernelmod_uname"
+depends=(${depends[@]} 'wireless_tools')
groups=('network-extra')
archs=('i686' 'x86_64')
-up2date="lynx -dump $url |grep acx-2 |Flasttarbz2 |sed s/$pkgdate/$pkgver/"
-source=($url/acx-$pkgdate.tar.bz2 \
- http://195.66.192.167/linux/acx_patches/fw.tar.bz2 \
- http://195.66.192.167/linux/acx_patches/acx_fw/acx100usb_dlink_dwl120+/fw1/ACX100_USB.bin \
- acx100-0.3.36-kernel2622.diff)
-sha1sums=('5c7259c09bc754529910aceead6087876177a143' \
- '5b5ef1a9d6441f5f8345e1957cd7686e730897f6' \
- '6446b0736b6b08e6dc25620f7584e4f7a1a11cb4' \
- '2a385b78e656d6430bb730594cbb7724901e5d58')
+up2date="lynx -dump http://acx100.sourceforge.net/wiki/Main_Page |Flasttarbz2"
+source=(${source[@]} \
+ http://ftp.frugalware.org/pub/other/sources/$aname/{fw.tar.bz2,ACX100_USB.bin,svn-20071112.patch} \
+ kernel-2.6.24.patch)
build() {
# no Fcheckkernel, crosscompilation verified
- Fcd acx-$pkgdate
+ Fcd ${origname}-${pkgver}
Fpatchall
- make -C $_F_kernelmod_dir/build M=`pwd` || Fdie
+ make -C $_F_kernelmod_dir/build M=`pwd` CONFIG_ACX_MAC80211=m CONFIG_ACX_MAC80211_PCI=y CONFIG_ACX_MAC80211_USB=y || Fdie
Fmkdir $_F_kernelmod_dir/net
Ffilerel $_F_kernelmod_dir/net/acx.ko
Ffile /lib/firmware/ACX100_USB.bin
@@ -41,6 +40,13 @@ build() {
Ffile fw/acx111_2.4.0.70-USB/tiacx111usbc1B /lib/firmware
Fln tiacx100usbc0D /lib/firmware/tiacx100usb
Fln tiacx111usbc1B /lib/firmware/tiacx111usb
+ Fbuild_kernelmod_scriptlet
}
# optimalization OK - uses the kernel's option
+
+sha1sums=('5e62f70cd84c6c0ecb78358585e7e44901d2ce30' \
+ '5b5ef1a9d6441f5f8345e1957cd7686e730897f6' \
+ '6446b0736b6b08e6dc25620f7584e4f7a1a11cb4' \
+ 'eb3a1ceb2e204a7dc80eb4802a2f1628c212d61f' \
+ 'e3e96ee12a564ba033f4def6760b2a975b273765')
diff --git a/source/network-extra/acx100-fwlive/acx100-0.3.36-kernel2622.diff b/source/network-extra/acx100-fwlive/acx100-0.3.36-kernel2622.diff
deleted file mode 100644
index 535bc89..0000000
--- a/source/network-extra/acx100-fwlive/acx100-0.3.36-kernel2622.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/common.c
-+++ b/common.c
-@@ -2760,7 +2760,7 @@ acx_l_rxmonitor(acx_device_t *adev, cons
- skb->dev = adev->ndev;
- skb->dev->last_rx = jiffies;
-
-- skb->mac.raw = skb->data;
-+ skb_reset_mac_header(skb);
- skb->ip_summed = CHECKSUM_NONE;
- skb->pkt_type = PACKET_OTHERHOST;
- skb->protocol = htons(ETH_P_80211_RAW);
From janny at frugalware.org Wed Mar 5 09:30:33 2008
From: janny at frugalware.org (janny)
Date: Wed Mar 5 09:30:35 2008
Subject: [Frugalware-git] fwlive: acx100-fwlive-20071003-9-i686
Message-ID: <20080305083033.9BBEB1190A17@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=91e318f2deb8695e4a7c60b80ad4052808f55e73
commit 91e318f2deb8695e4a7c60b80ad4052808f55e73
Author: janny
Date: Wed Mar 5 09:30:01 2008 +0100
acx100-fwlive-20071003-9-i686
* add missing patch
diff --git a/source/network-extra/acx100-fwlive/kernel-2.6.24.patch b/source/network-extra/acx100-fwlive/kernel-2.6.24.patch
new file mode 100644
index 0000000..4e70628
--- /dev/null
+++ b/source/network-extra/acx100-fwlive/kernel-2.6.24.patch
@@ -0,0 +1,21 @@
+--- pci.c
++++ pci.c 2007/11/11 23:41:12
+@@ -2116,7 +2116,7 @@
+ /* TODO: pci_set_power_state(pdev, PCI_D0); ? */
+
+ /* request shared IRQ handler */
+- if (request_irq(ndev->irq, acxpci_i_interrupt, SA_SHIRQ, ndev->name, ndev)) {
++ if (request_irq(ndev->irq, acxpci_i_interrupt, IRQF_SHARED, ndev->name, ndev)) {
+ printk("%s: request_irq FAILED\n", ndev->name);
+ result = -EAGAIN;
+ goto done;
+--- usb.c
++++ usb.c 2007/11/11 23:48:50
+@@ -859,7 +859,6 @@
+ ndev->watchdog_timeo = 4 * HZ;
+ #endif
+ ndev->change_mtu = &acx_e_change_mtu;
+- SET_MODULE_OWNER(ndev);
+
+ /* Setup private driver context */
+
From janny at frugalware.org Wed Mar 5 09:34:29 2008
From: janny at frugalware.org (Janny)
Date: Wed Mar 5 09:34:31 2008
Subject: [Frugalware-git] fwlive: fwlive-config
Message-ID: <20080305083429.D21001190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=e1f0b963b2dbb3548ff438d247552ae904edb736
commit e1f0b963b2dbb3548ff438d247552ae904edb736
Author: Janny
Date: Wed Mar 5 09:33:15 2008 +0100
fwlive-config
* remove disused adm8211-fwlive pkg
diff --git a/config b/config
index 6eb87c1..7b1c595 100644
--- a/config
+++ b/config
@@ -73,7 +73,7 @@ CONFIG_SETUP = y
DRIVERS = ndiswrapper-fwlive ipw2200-firmware gspcav1-fwlive \
qc-usb-fwlive dazuko-fwlive \
busybox-fwlive acerhk-fwlive madwifi-fwlive \
- wlan-ng-fwlive adm8211-fwlive ipw3945-fwlive kqemu-fwlive
+ wlan-ng-fwlive ipw3945-fwlive kqemu-fwlive
INST_MUSTHAVE_APPS = busybox-fwlive util-linux-ng grub-theme-fwlive \
sudo aufs squashfs cdrtools ntfs-3g
ifneq ($(ARCH),x86_64)
From janny at frugalware.org Wed Mar 5 09:37:39 2008
From: janny at frugalware.org (Janny)
Date: Wed Mar 5 09:37:40 2008
Subject: [Frugalware-git] fwlive: fwlive-config
Message-ID: <20080305083739.675F81190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=49ff4815a12505617d99be88f9d11f5561596e1e
commit 49ff4815a12505617d99be88f9d11f5561596e1e
Author: Janny
Date: Wed Mar 5 09:36:37 2008 +0100
fwlive-config
* remove ipw3945 replaced with iwl3945
diff --git a/config b/config
index 7b1c595..12b7cf2 100644
--- a/config
+++ b/config
@@ -73,7 +73,7 @@ CONFIG_SETUP = y
DRIVERS = ndiswrapper-fwlive ipw2200-firmware gspcav1-fwlive \
qc-usb-fwlive dazuko-fwlive \
busybox-fwlive acerhk-fwlive madwifi-fwlive \
- wlan-ng-fwlive ipw3945-fwlive kqemu-fwlive
+ wlan-ng-fwlive kqemu-fwlive
INST_MUSTHAVE_APPS = busybox-fwlive util-linux-ng grub-theme-fwlive \
sudo aufs squashfs cdrtools ntfs-3g
ifneq ($(ARCH),x86_64)
From janny at frugalware.org Wed Mar 5 09:56:50 2008
From: janny at frugalware.org (janny)
Date: Wed Mar 5 09:56:53 2008
Subject: [Frugalware-git] fwlive: ndiswrapper-fwlive-1.51-6-i686
Message-ID: <20080305085650.E76181190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=b7652a708ab536f99b3b230ab6b5cb9ac0f905e3
commit b7652a708ab536f99b3b230ab6b5cb9ac0f905e3
Author: janny
Date: Wed Mar 5 09:56:02 2008 +0100
ndiswrapper-fwlive-1.51-6-i686
* version bump in fwlive repo
diff --git a/source/network-extra/ndiswrapper-fwlive/FrugalBuild b/source/network-extra/ndiswrapper-fwlive/FrugalBuild
index a5fb12d..68b13c7 100644
--- a/source/network-extra/ndiswrapper-fwlive/FrugalBuild
+++ b/source/network-extra/ndiswrapper-fwlive/FrugalBuild
@@ -3,13 +3,12 @@
# Maintainer: voroskoi
pkgname=ndiswrapper-fwlive
-pkgver=1.47
-pkgrel=3
+pkgver=1.51
+pkgrel=6
pkgdesc="Wrapper for using Windows drivers for some wireless cards"
-#Finclude kernel-module sourceforge
_F_sourceforge_name="ndiswrapper"
-Finclude sourceforge
-kver=2.6.22-1
+Finclude kernel-module sourceforge
+kver=2.6.24-3
depends=("kernel-fwlive=$kver")
makedepends=("kernel-fwlive-source=$kver")
unset install
@@ -17,9 +16,9 @@ depends=(${depends[@]} 'pciutils' 'wireless_tools')
groups=('network-extra')
archs=('i686' 'x86_64')
source=(${source[@]} README.Frugalware no-depmod-thx.patch)
-sha1sums=('2431c8f74cab37d3f4c39c6d1b625e0b8312282e'\
- 'c3f24143cb9814326a2c0c3cbc8d58d953bac268'\
- '1274975ac5c636c0fc26c312010eadd056fec010')
+sha1sums=('e264d9bc080759ee86be18614b0dcb061dd5c772' \
+ 'c3f24143cb9814326a2c0c3cbc8d58d953bac268' \
+ '1274975ac5c636c0fc26c312010eadd056fec010')
[ "$CARCH" == "x86_64" ] && \
source=(${source[@]} ndiswrapper-amd64-detect-fix.patch) && \
sha1sums=(${sha1sums[@]} '7e46cc4bb72520d911f256748e8c3936498f001b')
@@ -33,5 +32,5 @@ build()
Fmake
Fmakeinstall
Fdoc README.Frugalware
- Fsed '$_F_kernelmod_uname' "`echo $kver|sed 's/-/-fw/'`" $startdir/ndiswrapper.install
+ Fbuild_kernelmod_scriptlet
}
From janny at frugalware.org Wed Mar 5 10:18:39 2008
From: janny at frugalware.org (janny)
Date: Wed Mar 5 10:18:41 2008
Subject: [Frugalware-git] fwlive: wlan-ng-fwlive-0.2.8-18-i686
Message-ID: <20080305091839.64AA11190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=32a54d8be2e9c9c227b42da974a123d5ac414e1e
commit 32a54d8be2e9c9c227b42da974a123d5ac414e1e
Author: janny
Date: Wed Mar 5 10:17:55 2008 +0100
wlan-ng-fwlive-0.2.8-18-i686
* version bump in fwlive repo
diff --git a/source/network-extra/wlan-ng-fwlive/FrugalBuild b/source/network-extra/wlan-ng-fwlive/FrugalBuild
index 8b97e31..9fbd7c7 100644
--- a/source/network-extra/wlan-ng-fwlive/FrugalBuild
+++ b/source/network-extra/wlan-ng-fwlive/FrugalBuild
@@ -3,30 +3,30 @@
pkgname=wlan-ng-fwlive
pkgver=0.2.8
-pkgrel=4
+pkgrel=18
pkgdesc="Wireless Lan modules"
url="http://www.linux-wlan.org/"
-#Finclude kernel-module
-kver=2.6.22-1
-depends=("kernel-fwlive=$kver")
+_F_archive_name=wlan-ng
+Finclude kernel-module
+kver=2.6.24-3
+depends=("kernel-fwlive=$kver" 'wireless_tools')
makedepends=("kernel-fwlive-source=$kver")
-_F_kernelmod_uname=`echo $kver|sed 's/-/-fw/'`
-_F_kernelmod_dir="/lib/modules/$_F_kernelmod_uname"
depends=(${depends[@]} 'bash')
groups=('network-extra')
archs=('i686' 'x86_64')
backup=(etc/wlan/wlan.conf)
up2date="lynx -dump ftp://ftp.linux-wlan.org/pub/linux-wlan-ng/|grep tar.bz2$|sed -n 's/.*g-\(.*\)\.t.*/\1/;s/-//;$ p'"
-source=(ftp://ftp.linux-wlan.org/pub/linux-wlan-ng/linux-wlan-ng-$pkgver.tar.bz2 \
- rc.wlan wlan-ng-0.2.8-kernel2622.diff)
+source=(ftp://ftp.linux-wlan.org/pub/linux-wlan-ng/linux-$_F_archive_name-$pkgver.tar.bz2 \
+ rc.wlan wlan-ng-0.2.8-kernel26{23,24}.diff)
sha1sums=('a98cd5c7327f5392730ebe1a5b7f289fc88d00de' \
- '3c50d5e942999a968437093a17e3864a4733e11e' \
- '0f44af63867c2d8494aefb9d0cf61742ba322222')
+ 'b5b76089293cf11ab5c5f634f1c3b8dd7f4c34a7' \
+ 'dd46ef1066debf1596902c9d8bb7c3988e98e184' \
+ '1987d4137a82cfbb4a390228e5d33155f52e1fbc')
build()
{
# no Fcheckkernel, crosscompilation verified
- Fcd linux-wlan-ng-$pkgver
+ Fcd linux-$_F_archive_name-$pkgver
Fsed '`uname -r`' "$_F_kernelmod_uname" Configure
find . -type f -exec sed -i '/#include /d' {} \;
Fsed "TARGET_ROOT_ON_HOST=" "TARGET_ROOT_ON_HOST=$Fdestdir" config.in
@@ -41,6 +41,7 @@ build()
Fmv /usr/local/man /usr/man
Frm /init.d
Frcd wlan
+ Fbuild_kernelmod_scriptlet
}
# optimization OK
diff --git a/source/network-extra/wlan-ng-fwlive/wlan-ng-0.2.8-kernel2622.diff b/source/network-extra/wlan-ng-fwlive/wlan-ng-0.2.8-kernel2622.diff
deleted file mode 100644
index a0ce4d9..0000000
--- a/source/network-extra/wlan-ng-fwlive/wlan-ng-0.2.8-kernel2622.diff
+++ /dev/null
@@ -1,48 +0,0 @@
-diff -Naur linux-wlan-ng-0.2.8.orig/src/p80211/p80211conv.c linux-wlan-ng-0.2.8/src/p80211/p80211conv.c
---- linux-wlan-ng-0.2.8.orig/src/p80211/p80211conv.c 2007-03-19 16:37:00.000000000 +0100
-+++ linux-wlan-ng-0.2.8/src/p80211/p80211conv.c 2007-07-10 14:53:04.000000000 +0200
-@@ -498,7 +498,7 @@
- }
-
- skb->protocol = eth_type_trans(skb, netdev);
-- skb->mac.raw = (unsigned char *) e_hdr; /* new MAC header */
-+ skb->mac_header = (unsigned char *) e_hdr; /* new MAC header */
-
- /* jkriegl: process signal and noise as set in hfa384x_int_rx() */
- /* jkriegl: only process signal/noise if requested by iwspy */
-diff -Naur linux-wlan-ng-0.2.8.orig/src/p80211/p80211netdev.c linux-wlan-ng-0.2.8/src/p80211/p80211netdev.c
---- linux-wlan-ng-0.2.8.orig/src/p80211/p80211netdev.c 2007-03-19 16:37:00.000000000 +0100
-+++ linux-wlan-ng-0.2.8/src/p80211/p80211netdev.c 2007-07-10 14:53:04.000000000 +0200
-@@ -389,7 +389,7 @@
-
- /* set up various data fields */
- skb->dev = dev;
-- skb->mac.raw = skb->data ;
-+ skb_reset_mac_header(skb);
- skb->ip_summed = CHECKSUM_NONE;
- skb->pkt_type = PACKET_OTHERHOST;
- skb->protocol = htons(ETH_P_80211_RAW);
-diff -Naur linux-wlan-ng-0.2.8.orig/src/prism2/driver/hfa384x.c linux-wlan-ng-0.2.8/src/prism2/driver/hfa384x.c
---- linux-wlan-ng-0.2.8.orig/src/prism2/driver/hfa384x.c 2007-03-19 16:37:00.000000000 +0100
-+++ linux-wlan-ng-0.2.8/src/prism2/driver/hfa384x.c 2007-07-10 14:53:04.000000000 +0200
-@@ -3645,7 +3645,7 @@
- /* the prism2 cards don't return the FCS */
- datap = skb_put(skb, WLAN_CRC_LEN);
- memset (datap, 0xff, WLAN_CRC_LEN);
-- skb->mac.raw = skb->data;
-+ skb_reset_mac_header(skb);
-
- /* Attach the rxmeta, set some stuff */
- p80211skb_rxmeta_attach(wlandev, skb);
-diff -Naur linux-wlan-ng-0.2.8.orig/src/prism2/driver/hfa384x_usb.c linux-wlan-ng-0.2.8/src/prism2/driver/hfa384x_usb.c
---- linux-wlan-ng-0.2.8.orig/src/prism2/driver/hfa384x_usb.c 2007-03-19 16:37:00.000000000 +0100
-+++ linux-wlan-ng-0.2.8/src/prism2/driver/hfa384x_usb.c 2007-07-10 14:53:04.000000000 +0200
-@@ -4255,7 +4255,7 @@
- /* The prism2 series does not return the CRC */
- memset(skb_put(skb, WLAN_CRC_LEN), 0xff, WLAN_CRC_LEN);
-
-- skb->mac.raw = skb->data;
-+ skb_reset_mac_header(skb);
-
- /* Attach the rxmeta, set some stuff */
- p80211skb_rxmeta_attach(wlandev, skb);
diff --git a/source/network-extra/wlan-ng-fwlive/wlan-ng-0.2.8-kernel2623.diff b/source/network-extra/wlan-ng-fwlive/wlan-ng-0.2.8-kernel2623.diff
new file mode 100644
index 0000000..5e7d9a7
--- /dev/null
+++ b/source/network-extra/wlan-ng-fwlive/wlan-ng-0.2.8-kernel2623.diff
@@ -0,0 +1,193 @@
+diff -Naur linux-wlan-ng-0.2.8/CHANGES linux-wlan-ng-export/CHANGES
+--- linux-wlan-ng-0.2.8/CHANGES 2007-05-04 14:29:27.000000000 +0200
++++ linux-wlan-ng-export/CHANGES 2007-10-16 16:07:27.000000000 +0200
+@@ -41,6 +41,11 @@
+ * Intersil Corporation as part of PRISM(R) chipset product development.
+ *
+ * --------------------------------------------------------------------
++ - Support 2.6.23 kernels. (With apologies to Martin Dauskardt for a
++ misapplied patch)
++ - Support "Intersil Americas USB 802.11b WLAN DEVICE" (Peter Levart)
++ - Tweaks to support Fedora 7 (Dan Williams)
++ - Support 2.6.22 kernels
+ 0.2.8
+ - Fix up a pile of sparse warnings (Pavel Roskin)
+ - Support 2.6.20 kernels (Pavel Roskin)
+diff -Naur linux-wlan-ng-0.2.8/Configure linux-wlan-ng-export/Configure
+--- linux-wlan-ng-0.2.8/Configure 2007-05-08 00:00:22.000000000 +0200
++++ linux-wlan-ng-export/Configure 2007-10-16 16:43:56.000000000 +0200
+@@ -277,9 +277,9 @@
+ fi
+ write_bool KERN_2_6_17
+
+-if [ $VERSION_CODE -gt `version 2 6 21` ] ; then
++if [ $VERSION_CODE -gt `version 2 6 22` ] ; then
+ $ECHO "******* WARNING WARNING WARNING *******"
+- $ECHO "Kernels newer than 2.6.21.x are not supported."
++ $ECHO "Kernels newer than 2.6.23.x are not supported."
+ $ECHO "******* WARNING WARNING WARNING *******"
+ fi
+
+diff -Naur linux-wlan-ng-0.2.8/etc/udev/rules.d/40-prism2.rules linux-wlan-ng-export/etc/udev/rules.d/40-prism2.rules
+--- linux-wlan-ng-0.2.8/etc/udev/rules.d/40-prism2.rules 2006-06-26 17:03:27.000000000 +0200
++++ linux-wlan-ng-export/etc/udev/rules.d/40-prism2.rules 2007-06-20 16:53:45.000000000 +0200
+@@ -1 +1,2 @@
+-ACTION=="add",BUS=="usb",DRIVER=="prism2_usb" ,RUN+="/etc/wlan/wlan-udev.sh %k"
++#ACTION=="add",BUS=="usb",DRIVER=="prism2_usb" ,RUN+="/etc/wlan/wlan-udev.sh %k"
++KERNEL="wlan*",ACTION=="add",DRIVERS=="prism2_usb" ,RUN+="/etc/wlan/wlan-udev.sh %k"
+diff -Naur linux-wlan-ng-0.2.8/Makefile linux-wlan-ng-export/Makefile
+--- linux-wlan-ng-0.2.8/Makefile 2005-02-24 18:59:10.000000000 +0100
++++ linux-wlan-ng-export/Makefile 2007-10-16 16:43:56.000000000 +0200
+@@ -76,6 +76,8 @@
+ all: config.mk
+ set -e; for d in $(DIRS); do $(MAKE) -C $$d ; done
+
++distclean: mrproper
++
+ mrproper: clean
+ rm -f config.out
+ rm -f tags.linux tags TAGS
+diff -Naur linux-wlan-ng-0.2.8/src/include/wlan/wlan_compat.h linux-wlan-ng-export/src/include/wlan/wlan_compat.h
+--- linux-wlan-ng-0.2.8/src/include/wlan/wlan_compat.h 2007-02-28 16:44:02.000000000 +0100
++++ linux-wlan-ng-export/src/include/wlan/wlan_compat.h 2007-09-18 18:51:48.000000000 +0200
+@@ -479,6 +479,18 @@
+ #endif
+ #endif /* _LINUX_PROC_FS_H */
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22)
++#define skb_reset_mac_header(__a) (__a)->mac.raw = (__a)->data
++#define SKB_MAC_HEADER(__a) (__a)->mac.raw
++#else
++#define SKB_MAC_HEADER(__a) (__a)->mac_header
++#endif
++
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,18)
++#define IRQF_DISABLED SA_INTERRUPT
++#define IRQF_SHARED SA_SHIRQ
++#endif
++
+ #if (LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0))
+ #ifndef INIT_TQUEUE
+ #define PREPARE_TQUEUE(_tq, _routine, _data) \
+diff -Naur linux-wlan-ng-0.2.8/src/p80211/p80211conv.c linux-wlan-ng-export/src/p80211/p80211conv.c
+--- linux-wlan-ng-0.2.8/src/p80211/p80211conv.c 2007-03-19 16:37:00.000000000 +0100
++++ linux-wlan-ng-export/src/p80211/p80211conv.c 2007-10-16 16:44:37.000000000 +0200
+@@ -497,8 +497,16 @@
+
+ }
+
++ /*
++ * Note that eth_type_trans() expects an skb w/ skb->data pointing
++ * at the MAC header, it then sets the following skb members:
++ * skb->mac_header,
++ * skb->data, and
++ * skb->pkt_type.
++ * It then _returns_ the value that _we're_ supposed to stuff in
++ * skb->protocol. This is nuts.
++ */
+ skb->protocol = eth_type_trans(skb, netdev);
+- skb->mac.raw = (unsigned char *) e_hdr; /* new MAC header */
+
+ /* jkriegl: process signal and noise as set in hfa384x_int_rx() */
+ /* jkriegl: only process signal/noise if requested by iwspy */
+diff -Naur linux-wlan-ng-0.2.8/src/p80211/p80211netdev.c linux-wlan-ng-export/src/p80211/p80211netdev.c
+--- linux-wlan-ng-0.2.8/src/p80211/p80211netdev.c 2007-03-19 16:37:00.000000000 +0100
++++ linux-wlan-ng-export/src/p80211/p80211netdev.c 2007-09-18 18:39:19.000000000 +0200
+@@ -389,7 +389,8 @@
+
+ /* set up various data fields */
+ skb->dev = dev;
+- skb->mac.raw = skb->data ;
++ skb_reset_mac_header(skb);
++
+ skb->ip_summed = CHECKSUM_NONE;
+ skb->pkt_type = PACKET_OTHERHOST;
+ skb->protocol = htons(ETH_P_80211_RAW);
+@@ -929,8 +930,8 @@
+ dev->open = p80211knetdev_open;
+ dev->stop = p80211knetdev_stop;
+
+-#ifdef CONFIG_NET_WIRELESS
+-#if ((WIRELESS_EXT < 17) && (WIRELESS_EXT < 21))
++#if defined(CONFIG_NET_WIRELESS) || defined(WIRELESS_EXT)
++#if (WIRELESS_EXT < 17)
+ dev->get_wireless_stats = p80211wext_get_wireless_stats;
+ #endif
+ #if WIRELESS_EXT > 12
+diff -Naur linux-wlan-ng-0.2.8/src/prism2/driver/hfa384x.c linux-wlan-ng-export/src/prism2/driver/hfa384x.c
+--- linux-wlan-ng-0.2.8/src/prism2/driver/hfa384x.c 2007-03-19 16:37:00.000000000 +0100
++++ linux-wlan-ng-export/src/prism2/driver/hfa384x.c 2007-06-20 16:45:49.000000000 +0200
+@@ -3645,7 +3645,7 @@
+ /* the prism2 cards don't return the FCS */
+ datap = skb_put(skb, WLAN_CRC_LEN);
+ memset (datap, 0xff, WLAN_CRC_LEN);
+- skb->mac.raw = skb->data;
++ skb_reset_mac_header(skb);
+
+ /* Attach the rxmeta, set some stuff */
+ p80211skb_rxmeta_attach(wlandev, skb);
+diff -Naur linux-wlan-ng-0.2.8/src/prism2/driver/hfa384x_usb.c linux-wlan-ng-export/src/prism2/driver/hfa384x_usb.c
+--- linux-wlan-ng-0.2.8/src/prism2/driver/hfa384x_usb.c 2007-03-19 16:37:00.000000000 +0100
++++ linux-wlan-ng-export/src/prism2/driver/hfa384x_usb.c 2007-06-20 16:45:49.000000000 +0200
+@@ -4255,7 +4255,7 @@
+ /* The prism2 series does not return the CRC */
+ memset(skb_put(skb, WLAN_CRC_LEN), 0xff, WLAN_CRC_LEN);
+
+- skb->mac.raw = skb->data;
++ skb_reset_mac_header(skb);
+
+ /* Attach the rxmeta, set some stuff */
+ p80211skb_rxmeta_attach(wlandev, skb);
+diff -Naur linux-wlan-ng-0.2.8/src/prism2/driver/prism2_pci.c linux-wlan-ng-export/src/prism2/driver/prism2_pci.c
+--- linux-wlan-ng-0.2.8/src/prism2/driver/prism2_pci.c 2007-03-19 16:37:00.000000000 +0100
++++ linux-wlan-ng-export/src/prism2/driver/prism2_pci.c 2007-10-16 16:07:27.000000000 +0200
+@@ -163,7 +163,7 @@
+ * _know_ things are alright. A test routine would help.
+ */
+ request_irq(wlandev->netdev->irq, hfa384x_interrupt,
+- SA_SHIRQ, wlandev->name, wlandev);
++ IRQF_SHARED, wlandev->name, wlandev);
+
+ wlandev->msdstate = WLAN_MSD_HWPRESENT;
+
+@@ -275,7 +275,7 @@
+ static int __init prism2pci_init(void)
+ {
+ WLAN_LOG_NOTICE("%s Loaded\n", version);
+- return pci_module_init(&prism2_pci_drv_id);
++ return pci_register_driver(&prism2_pci_drv_id);
+ };
+
+ static void __exit prism2pci_cleanup(void)
+diff -Naur linux-wlan-ng-0.2.8/src/prism2/driver/prism2_plx.c linux-wlan-ng-export/src/prism2/driver/prism2_plx.c
+--- linux-wlan-ng-0.2.8/src/prism2/driver/prism2_plx.c 2007-03-19 16:37:00.000000000 +0100
++++ linux-wlan-ng-export/src/prism2/driver/prism2_plx.c 2007-10-16 16:07:27.000000000 +0200
+@@ -272,7 +272,7 @@
+ * _know_ things are alright. A test routine would help.
+ */
+ request_irq(wlandev->netdev->irq, hfa384x_interrupt,
+- SA_SHIRQ, wlandev->name, wlandev);
++ IRQF_SHARED, wlandev->name, wlandev);
+
+ wlandev->msdstate = WLAN_MSD_HWPRESENT;
+
+@@ -420,7 +420,7 @@
+ static int __init prism2plx_init(void)
+ {
+ WLAN_LOG_NOTICE("%s Loaded\n", version);
+- return pci_module_init(&prism2_plx_drv_id);
++ return pci_register_driver(&prism2_plx_drv_id);
+ };
+
+ static void __exit prism2plx_cleanup(void)
+diff -Naur linux-wlan-ng-0.2.8/src/prism2/driver/prism2_usb.c linux-wlan-ng-export/src/prism2/driver/prism2_usb.c
+--- linux-wlan-ng-0.2.8/src/prism2/driver/prism2_usb.c 2007-03-19 16:37:00.000000000 +0100
++++ linux-wlan-ng-export/src/prism2/driver/prism2_usb.c 2007-09-18 18:35:12.000000000 +0200
+@@ -13,6 +13,7 @@
+ .driver_info = (unsigned long) name
+
+ static struct usb_device_id usb_prism_tbl[] = {
++ {PRISM_USB_DEVICE(0x0707, 0xee04, "Intersil Americas USB 802.11b WLAN DEVICE")},
+ {PRISM_USB_DEVICE(0x04bb, 0x0922, "IOData AirPort WN-B11/USBS")},
+ {PRISM_USB_DEVICE(0x07aa, 0x0012, "Corega Wireless LAN USB Stick-11")},
+ {PRISM_USB_DEVICE(0x09aa, 0x3642, "Prism2.x 11Mbps WLAN USB Adapter")},
diff --git a/source/network-extra/wlan-ng-fwlive/wlan-ng-0.2.8-kernel2624.diff b/source/network-extra/wlan-ng-fwlive/wlan-ng-0.2.8-kernel2624.diff
new file mode 100644
index 0000000..6144045
--- /dev/null
+++ b/source/network-extra/wlan-ng-fwlive/wlan-ng-0.2.8-kernel2624.diff
@@ -0,0 +1,82 @@
+--- src/p80211/p80211netdev.c
++++ src/p80211/p80211netdev.c
+@@ -82,6 +82,8 @@
+ #if WIRELESS_EXT > 12
+ #include
+ #endif
++#include
++
+
+ /*================================================================*/
+ /* Project Includes */
+@@ -167,11 +169,11 @@
+ DBFENTER;
+
+ #ifdef CONFIG_PROC_FS
+- if (proc_net != NULL) {
++ if (init_net.proc_net != NULL) {
+ proc_p80211 = create_proc_entry(
+ "p80211",
+ (S_IFDIR|S_IRUGO|S_IXUGO),
+- proc_net);
++ init_net.proc_net);
+ }
+ #endif
+ DBFEXIT;
+@@ -196,7 +198,7 @@
+ DBFENTER;
+ #ifdef CONFIG_PROC_FS
+ if (proc_p80211 != NULL) {
+- remove_proc_entry("p80211", proc_net);
++ remove_proc_entry("p80211", init_net.proc_net);
+ }
+ #endif
+ DBFEXIT;
+--- src/prism2/driver/prism2_cs.c
++++ src/prism2/driver/prism2_cs.c
+@@ -517,7 +517,6 @@
+ #endif
+
+ /* Register the network device and get assigned a name */
+- SET_MODULE_OWNER(wlandev->netdev);
+ SET_NETDEV_DEV(wlandev->netdev, &handle_to_dev(pdev));
+ if (register_wlandev(wlandev) != 0) {
+ WLAN_LOG_NOTICE("prism2sta_cs: register_wlandev() failed.\n");
+@@ -1080,7 +1079,6 @@
+ link->dev = &hw->node;
+
+ /* Register the network device and get assigned a name */
+- SET_MODULE_OWNER(wlandev->netdev);
+ #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,11) )
+ SET_NETDEV_DEV(wlandev->netdev, &handle_to_dev(link->handle));
+ #endif
+--- src/prism2/driver/prism2_pci.c
++++ src/prism2/driver/prism2_pci.c
+@@ -119,7 +119,6 @@
+ /* Register the wlandev, this gets us a name and registers the
+ * linux netdevice.
+ */
+- SET_MODULE_OWNER(wlandev->netdev);
+ #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0))
+ SET_NETDEV_DEV(wlandev->netdev, &(pdev->dev));
+ #endif
+--- src/prism2/driver/prism2_plx.c
++++ src/prism2/driver/prism2_plx.c
+@@ -228,7 +228,6 @@
+ /* Register the wlandev, this gets us a name and registers the
+ * linux netdevice.
+ */
+- SET_MODULE_OWNER(wlandev->netdev);
+ #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0))
+ SET_NETDEV_DEV(wlandev->netdev, &(pdev->dev));
+ #endif
+--- src/prism2/driver/prism2_usb.c
++++ src/prism2/driver/prism2_usb.c
+@@ -131,7 +131,6 @@
+ /* Register the wlandev, this gets us a name and registers the
+ * linux netdevice.
+ */
+- SET_MODULE_OWNER(wlandev->netdev);
+ #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0))
+ SET_NETDEV_DEV(wlandev->netdev, &(interface->dev));
+ #endif
From janny at frugalware.org Wed Mar 5 10:49:47 2008
From: janny at frugalware.org (janny)
Date: Wed Mar 5 10:49:49 2008
Subject: [Frugalware-git] fwlive: fglrx-fwlive-8.42.3-10-i686
Message-ID: <20080305094947.46F991190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=57262433b84505ab3fe7e2b5800ba7df82996f0c
commit 57262433b84505ab3fe7e2b5800ba7df82996f0c
Author: janny
Date: Wed Mar 5 10:45:26 2008 +0100
fglrx-fwlive-8.42.3-10-i686
* version bump in fwlive repo
diff --git a/source/x11-extra/fglrx-fwlive/2.6.22.patch b/source/x11-extra/fglrx-fwlive/2.6.22.patch
deleted file mode 100644
index 850607e..0000000
--- a/source/x11-extra/fglrx-fwlive/2.6.22.patch
+++ /dev/null
@@ -1,17 +0,0 @@
---- firegl_public.c-orig 2007-05-16 14:52:12.000000000 -0500
-+++ firegl_public.c 2007-05-16 14:52:48.000000000 -0500
-@@ -144,12 +144,14 @@
- #define EXPORT_NO_SYMBOLS
- #endif
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22)
- #ifdef __x86_64__
- #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,12)
- #include "linux/ioctl32.h"
- #else
- #include "asm/ioctl32.h"
- #endif
-+#endif
-
- #ifdef __x86_64__
- #include "asm/compat.h"
diff --git a/source/x11-extra/fglrx-fwlive/FrugalBuild b/source/x11-extra/fglrx-fwlive/FrugalBuild
index acdad31..1d55609 100644
--- a/source/x11-extra/fglrx-fwlive/FrugalBuild
+++ b/source/x11-extra/fglrx-fwlive/FrugalBuild
@@ -3,13 +3,15 @@
# Maintainer: voroskoi
pkgname=fglrx-fwlive
-pkgver=8.38.6
-pkgrel=2
+_F_archive_name=fglrx
+pkgver=8.42.3
+pkgrel=10
pkgdesc="Hardware Accelerated ATi driver for xorg"
url="http://www.ati.com/"
# libstdc++5: no hardware acceleration without it
-#Finclude kernel-module
-kver=2.6.22-1
+_F_kernelmod_scriptlet=fglrx_module.install
+Finclude kernel-module
+kver=2.6.24-3
depends=("kernel-fwlive=$kver")
makedepends=("kernel-fwlive-source=$kver")
_F_kernelmod_uname=`echo $kver|sed 's/-/-fw/'`
@@ -20,7 +22,7 @@ subdescs=('fglrx kernel module')
subdepends=($depends)
subgroups=('x11-extra')
subarchs=('i686 x86_64')
-subinstall=fglrx_module-fwlive.install
+subinstall=fglrx_module.install
depends=()
rodepends=('fglrx_module-fwlive' 'xorg-server' 'libstdc++5')
@@ -28,15 +30,16 @@ conflicts=('libgl')
provides=('libgl')
groups=('x11-extra')
archs=('i686' 'x86_64')
-install=$pkgname.install
+install=$_F_archive_name.install
up2date=$pkgver
source=(https://a248.e.akamai.net/f/674/9206/0/www2.ati.com/drivers/linux/ati-driver-installer-$pkgver-x86.x86_64.run \
- README.Frugalware libGL.la 2.6.22.patch)
+ README.Frugalware libGL.la \
+ fglrx-firegl_public.c-2.6.24.patch)
options=(${options[@]} 'nodocs')
-sha1sums=('a4320c6d3c6716740971c18bbd5e62b0b452cc67' \
+sha1sums=('b8e878e846e0971d49339ee5957acc6482329510' \
'b64a2303c77f84f5e5db13c9c8fd55f43fa9699b' \
'650973d708466f5c4c21e70c1f1f6c118b27e614' \
- 'e862660a7af445f3d0ac07c360bd786b909f426e')
+ '5c88075b135bbc6700301d29736a74177b6df860')
Xversion=x710
@@ -54,10 +57,7 @@ build() {
cp -r $Fsrcdir/ATi/common/* $Fsrcdir/ || Fdie
- if [ "$CARCH" == "x86_64" ]; then
- Fcd /lib/modules/fglrx/build_mod
- patch -p0 < $Fsrcdir/2.6.22.patch || Fdie
- fi
+ patch -p0 < $Fsrcdir/fglrx-firegl_public.c-2.6.24.patch || Fdie
# building kernel module
Fcd /lib/modules/fglrx/build_mod
@@ -66,7 +66,7 @@ build() {
Ffile lib/modules/fglrx/build_mod/fglrx.ko $_F_kernelmod_dir/video/fglrx.ko
# moving the intresting part to the package
- mv $Fsrcdir/usr $Fdestdir || Fdie
+ mv $Fsrcdir/{usr,etc} $Fdestdir || Fdie
# Install into correct paths for Xorg7
Fmkdir /usr/{include,lib/xorg,bin}
@@ -80,9 +80,6 @@ build() {
mv $Fdestdir/usr/X11R6/lib64/* $Fdestdir/usr/lib || Fdie
fi
mv $Fdestdir/usr/X11R6/bin/* $Fdestdir/usr/bin || Fdie
- # FIXME
- [ "$CARCH" == "i686" ] && Fexe ATi/x690/usr/X11R6/bin/fireglcontrolpanel /usr/bin/fireglcontrolpanel
- [ "$CARCH" == "x86_64" ] && Fexe ATi/x690_64a/usr/X11R6/bin/fireglcontrolpanel /usr/bin/fireglcontrolpanel
Frm /usr/X11R6
# No hardware support without it
@@ -95,6 +92,8 @@ build() {
Fln ../../dri /usr/lib/xorg/modules/dri
# closes #2112
Fln /usr/lib/dri /usr/X11R6/lib/modules/dri
+ # closes #2498
+ Fln lib /usr/X11R6/lib64
# Links
Fln libfglrx_pp.so.1.0 /usr/lib/libfglrx_pp.1
@@ -104,9 +103,12 @@ build() {
Fln libGL.so.1.2 /usr/lib/libGL.so.1
cp -ar $Fsrcdir/libGL.la $Fdestdir/usr/lib || Fdie
- find $Fdestdir -type d |xargs chmod 755
+ (find $Fdestdir -type d |xargs chmod 755) || Fdie
+ # closes #2498
+ (find $Fdestdir -perm 744 |xargs chmod 755) || Fdie
Fdoc README.Frugalware
- Fsplit fglrx_module-fwlive /lib
+ Fsplit fglrx_module /lib
+ Fbuild_kernelmod_scriptlet
}
diff --git a/source/x11-extra/fglrx-fwlive/fglrx-firegl_public.c-2.6.24.patch b/source/x11-extra/fglrx-fwlive/fglrx-firegl_public.c-2.6.24.patch
new file mode 100644
index 0000000..740eb1f
--- /dev/null
+++ b/source/x11-extra/fglrx-fwlive/fglrx-firegl_public.c-2.6.24.patch
@@ -0,0 +1,104 @@
+--- lib/modules/fglrx/build_mod/firegl_public.c.orig 2007-08-10 23:59:21.000000000 +0200
++++ lib/modules/fglrx/build_mod/firegl_public.c 2007-08-13 20:00:26.000000000 +0200
+@@ -214,6 +214,56 @@
+ #define preempt_enable()
+ #endif
+
++#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,22)
++#if defined(__i386__)
++#define ptep_test_and_clear_dirty(vma, addr, ptep) ({ \
++ int __ret = 0; \
++ if (pte_dirty(*(ptep))) \
++ __ret = test_and_clear_bit(_PAGE_BIT_DIRTY, \
++ &(ptep)->pte_low); \
++ if (__ret) \
++ pte_update((vma)->vm_mm, addr, ptep); \
++ __ret; \
++})
++
++static inline int pte_read(pte_t pte) { return (pte).pte_low & _PAGE_USER; }
++static inline int pte_user(pte_t pte) { return (pte).pte_low & _PAGE_USER; }
++#ifdef CONFIG_X86_PAE
++/*
++ * Is the pte executable?
++ */
++static inline int pte_x(pte_t pte)
++{
++ return !(pte_val(pte) & _PAGE_NX);
++}
++
++/*
++ * All present user-pages with !NX bit are user-executable:
++ */
++static inline int pte_exec(pte_t pte)
++{
++ return pte_user(pte) && pte_x(pte);
++}
++#else
++static inline int pte_exec(pte_t pte)
++{
++ return pte_user(pte);
++}
++#endif /* PAE */
++
++#elif defined(__x86_64__)
++static inline int ptep_test_and_clear_dirty(struct vm_area_struct *vma,
++ unsigned long addr, pte_t *ptep)
++{
++ if (!pte_dirty(*ptep))
++ return 0;
++ return test_and_clear_bit(_PAGE_BIT_DIRTY, &ptep->pte);
++}
++static inline int pte_read(pte_t pte) { return pte_val(pte) & _PAGE_USER; }
++static inline int pte_exec(pte_t pte) { return !(pte_val(pte) & _PAGE_NX); }
++#endif
++#endif
++
+ // ============================================================
+ /* globals */
+
+@@ -2356,7 +2406,7 @@ void ATI_API_CALL __ke_put_vm_page_table
+ #ifndef ptep_clear_flush_dirty
+ #define ptep_clear_flush_dirty(__vma, __address, __ptep) \
+ ({ \
+- int __dirty = ptep_test_and_clear_dirty(__ptep); \
++ int __dirty = ptep_test_and_clear_dirty(__vma, __address, __ptep); \
+ if (__dirty) \
+ flush_tlb_page(__vma, __address); \
+ __dirty; \
+@@ -2986,7 +2986,7 @@
+ {
+ return request_irq(irq,
+ (void(*)(int, void *, struct pt_regs *))handler,
+- SA_SHIRQ, dev_name, dev_id);
++ IRQF_SHARED, dev_name, dev_id);
+ }
+
+ void ATI_API_CALL __ke_free_irq(unsigned int irq, void *dev_id)
+@@ -3009,7 +3009,7 @@
+ irq_handler_func = handler;
+ return request_irq(irq,
+ ke_irq_handler_wrap,
+- SA_SHIRQ, dev_name, dev_id);
++ IRQF_SHARED, dev_name, dev_id);
+ }
+
+ void ATI_API_CALL __ke_free_irq(unsigned int irq, void *dev_id)
+@@ -5303,7 +5353,7 @@ unsigned int ATI_API_CALL KAS_Spinlock_R
+ /** \brief Type definition of the structure describing Slab Cache object */
+ typedef struct tag_kasSlabCache_t
+ {
+- kmem_cache_t* cache; /* OS slab cache object */
++ struct kmem_cache *cache; /* OS slab cache object */
+ spinlock_t lock; /* OS spinlock object protecting the cache */
+ unsigned int routine_type; /* Type of routine the cache might be accessed from */
+ char name[14]; /* Cache object name (kernel 2.4 restricts its length to 19 chars) */
+@@ -5349,7 +5399,7 @@ unsigned int ATI_API_CALL KAS_SlabCache_
+ DBG_TRACE("creating slab object '%s'", slabcache_obj->name);
+
+ if ((slabcache_obj->cache =
+- kmem_cache_create(slabcache_obj->name, iEntrySize, 0, 0, NULL, NULL)))
++ kmem_cache_create(slabcache_obj->name, iEntrySize, 0, 0, NULL)))
+ {
+ ret = 1;
+ }
diff --git a/source/x11-extra/fglrx-fwlive/fglrx-fwlive.install b/source/x11-extra/fglrx-fwlive/fglrx-fwlive.install
deleted file mode 100644
index 7c80936..0000000
--- a/source/x11-extra/fglrx-fwlive/fglrx-fwlive.install
+++ /dev/null
@@ -1,17 +0,0 @@
-post_install()
-{
- echo 'You have successfully installed the ATi proprietary driver!'
- echo 'To configure your xserver please run aticonfig!'
- echo 'Before using X please restart your computer!'
-}
-
-post_upgrade()
-{
- post_install $1
-}
-
-op=$1
-shift
-$op $*
-
-# vim: ft=sh
diff --git a/source/x11-extra/fglrx-fwlive/fglrx_module-fwlive.install b/source/x11-extra/fglrx-fwlive/fglrx_module-fwlive.install
deleted file mode 100644
index 47e9670..0000000
--- a/source/x11-extra/fglrx-fwlive/fglrx_module-fwlive.install
+++ /dev/null
@@ -1,23 +0,0 @@
-post_install()
-{
- [ `grep fglrx < /etc/sysconfig/modules|wc -l` == 0 ] && \
- echo 'fglrx' >> /etc/sysconfig/modules
- depmod -a
-}
-
-post_upgrade()
-{
- post_install $1
-}
-
-pre_remove()
-{
- [ ! `/sbin/lsmod|grep fglrx|wc -l` == 0 ] && /sbin/rmmod fglrx
- sed -i 's|fglrx||g' /etc/sysconfig/modules
-}
-
-op=$1
-shift
-$op $*
-
-# vim: ft=sh
From vmiklos at frugalware.org Wed Mar 5 12:26:13 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Wed Mar 5 12:26:15 2008
Subject: [Frugalware-git] frugalware-current: cyrus-sasl-2.1.22-12-i686
Message-ID: <20080305112613.10AC71190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=22f280a0869cb297c1e70eff09022fe38a12dc30
commit 22f280a0869cb297c1e70eff09022fe38a12dc30
Author: Miklos Vajna
Date: Wed Mar 5 12:25:41 2008 +0100
cyrus-sasl-2.1.22-12-i686
add missing backup()
diff --git a/source/network/cyrus-sasl/FrugalBuild b/source/network/cyrus-sasl/FrugalBuild
index 4b637a4..2f12947 100644
--- a/source/network/cyrus-sasl/FrugalBuild
+++ b/source/network/cyrus-sasl/FrugalBuild
@@ -3,10 +3,11 @@
pkgname=cyrus-sasl
pkgver=2.1.22
-pkgrel=11
+pkgrel=12
pkgdesc="SASL Authentication mechanism"
url="http://ftp.andrew.cmu.edu/pub/cyrus-mail/"
depends=('openssl' 'gdbm')
+backup=(etc/sysconfig/saslauthd)
makedepends=('mysql' 'postgresql>=8.2' 'heimdal>=1.0' 'db>=4.6.18')
groups=('network')
archs=('i686' 'x86_64')
From janny at frugalware.org Wed Mar 5 15:27:30 2008
From: janny at frugalware.org (janny)
Date: Wed Mar 5 15:27:32 2008
Subject: [Frugalware-git] fwlive: nvidia-96xx-fwlive-96.43.05-4-i686
Message-ID: <20080305142730.AAAC71190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=9521ff358b8b999ec43cb8cdec8b2b13a8842eb6
commit 9521ff358b8b999ec43cb8cdec8b2b13a8842eb6
Author: janny
Date: Wed Mar 5 15:25:37 2008 +0100
nvidia-96xx-fwlive-96.43.05-4-i686
* version bump in fwlive repo
diff --git a/source/x11-extra/nvidia-96xx-fwlive/FrugalBuild b/source/x11-extra/nvidia-96xx-fwlive/FrugalBuild
index 5d5e6ac..06e8bd4 100644
--- a/source/x11-extra/nvidia-96xx-fwlive/FrugalBuild
+++ b/source/x11-extra/nvidia-96xx-fwlive/FrugalBuild
@@ -2,9 +2,9 @@
# Maintainer: AlexExtreme
pkgname=nvidia-96xx-fwlive
-pkgver=1.0_9639
-nvver=`echo $pkgver|sed 's/_/-/'`
-pkgrel=3
+_F_archive_name=nvidia-96xx
+pkgver=96.43.05
+pkgrel=4
pkgdesc="3d accelerated display driver for Nvidia cards"
url="http://www.nvidia.com/object/linux_display_archive.html"
conflicts=('libgl' 'libglx' 'nvidia')
@@ -16,28 +16,28 @@ removes=(usr/bin/nvidia-{bug-report.sh,settings,xconfig}
groups=('x11-extra')
archs=('i686' 'x86_64')
up2date="lynx -dump http://www.nvidia.com/object/unix.html | grep -m1 'Latest Legacy.*1.0-96xx series'|sed 's/.*]//;s/-/_/'"
-if [ "$CARCH" == "x86_64" ]; then
- jarch=x86_64 && sha1=4e5fb164881cf4d13b12a811bc03a367e6860a7b
- pkgnum=2
+if [ "$CARCH" == "i686" ]; then
+ _arch=x86
+ pkgnum=1
+ sha1sums=('ee4b15c1e550607bcf0768490c8127c3ae0e565d')
else
- jarch=x86 && sha1=ed7748c8f107cb4f5ec940915c2336c611049e5b
- pkgnum=1
+ _arch=x86_64
+ pkgnum=2
+ sha1sums=('9f20838b33c54c3d54e7fdbe87a3b47d542d21f1')
fi
-source=(http://us.download.nvidia.com/XFree86/Linux-$jarch/$nvver/NVIDIA-Linux-$jarch-$nvver-pkg$pkgnum.run)
-sha1sums=($sha1)
+source=(http://us.download.nvidia.com/XFree86/Linux-$_arch/$pkgver/NVIDIA-Linux-$_arch-$pkgver-pkg$pkgnum.run)
options=('nostrip')
-#Finclude kernel-module
-kver=2.6.22-1
+Finclude kernel-module
+kver=2.6.24-3
depends=("kernel-fwlive=$kver")
makedepends=("kernel-fwlive-source=$kver")
_F_kernelmod_uname=`echo $kver|sed 's/-/-fw/'`
_F_kernelmod_dir="/lib/modules/$_F_kernelmod_uname"
depends=(${depends[@]} 'xorg-server>=1.1.0' 'pciutils') ## TMP for gf4
-unset install
-install=$pkgname.install
+install=$_F_archive_name.install
build() {
- nvdir=NVIDIA-Linux-$jarch-$nvver-pkg$pkgnum
+ nvdir=NVIDIA-Linux-$_arch-$pkgver-pkg$pkgnum
linkver=`echo $pkgver|sed 's/_/\./'`
cd $Fsrcdir
sh $nvdir.run --extract-only
@@ -81,4 +81,5 @@ build() {
Fdoc $nvdir/LICENSE
Fcpr $nvdir/usr/share/doc/* /usr/share/doc/$pkgname-$pkgver/
Fln "$pkgname-$pkgver" "/usr/share/doc/nvidia"
+ Fbuild_kernelmod_scriptlet
}
diff --git a/source/x11-extra/nvidia-96xx-fwlive/nvidia-96xx-fwlive.install b/source/x11-extra/nvidia-96xx-fwlive/nvidia-96xx-fwlive.install
deleted file mode 100644
index 491156d..0000000
--- a/source/x11-extra/nvidia-96xx-fwlive/nvidia-96xx-fwlive.install
+++ /dev/null
@@ -1,60 +0,0 @@
-post_install() {
- echo "*** In order to use this package you have to accept Nvidia's license which"
- echo "*** can be found at /usr/share/doc/nvidia/LICENSE."
- echo "*** If you don't accept it, please remove the package!"
- ## well here a 'WARNING' only on install | update because I don't know this
- ## metamodes option will work for all
- devnr=`lspci -nn|grep "GeForce4 \(.*\) Go \(.*\)M"|sed 's/.*:\(.*\)].*/\1/'`
-
- if [ "$devnr" ]; then
- if [ "$devnr" -eq 0179 ]; then
- echo ""
- echo "*** WARNING: Nvidia - GeForce4 440/420 Go 32/64M - with PCI ID: - 0x$devnr - detected."
- echo "*** WARNING: If you get an black screen try add this line to your xorg.conf in the DefaultDepth Section:"
- echo "Option "\"metamodes\" "\"DFP: nvidia-auto-select +0+0; DFP: 800x600 +0+0; DFP: 640x480 +0+0\""
- echo ""
- fi
- fi
-
- sed -i 's/^.*Load "dri"/# Load "dri"/' /etc/X11/xorg.conf
- sed -i 's/Driver.*"\(nv\|vesa\|vga\)"/Driver "nvidia"/' /etc/X11/xorg.conf
-
- exist=`cat /etc/sysconfig/modules | grep nvidia | wc -l`
- if [ "$exist" -eq 0 ]; then
- echo nvidia >> /etc/sysconfig/modules
- fi
- /sbin/depmod -a
- /sbin/modprobe nvidia
-}
-
-post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- if test `lsmod | grep ^nvidia | wc -l` -gt 0; then
- rmmod nvidia
- fi
-
- sed -i 's/^.*# Load "dri"/Load "dri"/' /etc/X11/xorg.conf
- sed -i 's/\(^Driver *\)"nvidia"/\1"nv"/' /etc/X11/xorg.conf
-
- exist=`cat /etc/sysconfig/modules | grep nvidia | wc -l`
- if [ "$exist" -eq 1 ]; then
- grep -v '^nvidia' /etc/sysconfig/modules > /etc/sysconfig/modules.tmp
- mv /etc/sysconfig/modules.tmp /etc/sysconfig/modules
- fi
- if [ -e /usr/lib/xorg/temp/libglx.so ]; then
- mv /usr/lib/xorg/temp/libglx.so /usr/lib/xorg/modules/extensions/
- fi
-}
-
-post_remove() {
- depmod -a
- echo "*** Nvidia driver is removed now. To have a working Xorg Server again run : ***"
- echo "*** pacman-g2 -S libgl libglx ****"
-}
-
-op=$1
-shift
-$op $*
diff --git a/source/x11-extra/nvidia-96xx-fwlive/nvidia-96xx.install b/source/x11-extra/nvidia-96xx-fwlive/nvidia-96xx.install
new file mode 100644
index 0000000..d346d07
--- /dev/null
+++ b/source/x11-extra/nvidia-96xx-fwlive/nvidia-96xx.install
@@ -0,0 +1,84 @@
+post_install() {
+ echo "*** In order to use this package you have to accept Nvidia's license which"
+ echo "*** can be found at /usr/share/doc/nvidia-*/LICENSE."
+ echo "*** If you don't accept it, please remove the package!"
+ ## well here a 'WARNING' only on install | update because I don't know this
+ ## metamodes option will work for all
+ devnr=`/usr/sbin/lspci -nn|grep "GeForce4 \(.*\) Go \(.*\)M"|sed 's/.*:\(.*\)].*/\1/'`
+
+ if [ "$devnr" ]; then
+ if [ "$devnr" -eq 0179 ]; then
+ echo ""
+ echo "*** WARNING: Nvidia - GeForce4 440/420 Go 32/64M - with PCI ID: - 0x$devnr - detected."
+ echo "*** WARNING: If you get an black screen try add this line to your xorg.conf in the DefaultDepth Section:"
+ echo "Option "\"metamodes\" "\"DFP: nvidia-auto-select +0+0; DFP: 800x600 +0+0; DFP: 640x480 +0+0\""
+ echo ""
+ fi
+ fi
+
+ if [ -e /etc/X11/xorg.conf ]; then
+ sed -i 's/^.*Load "dri"/# Load "dri"/' /etc/X11/xorg.conf
+ sed -i 's/Driver.*"\(nv\|vesa\|vga\)"/Driver "nvidia"/' /etc/X11/xorg.conf
+ else
+ echo "WARNING: /etc/X11/xorg.conf does not exist!"
+ fi
+
+ exist=`cat /etc/sysconfig/modules | grep nvidia | wc -l`
+ if [ "$exist" -eq 0 ]; then
+ echo nvidia >> /etc/sysconfig/modules
+ fi
+ /sbin/depmod -ea $_F_kernelmod_uname
+ ## if nvidia dependent kernel is the current kernel
+ if [ -e /lib/modules/`uname -r`/kernel/drivers/video/nvidia.ko ]; then
+ ## Try to load it
+ /sbin/modprobe nvidia
+ fi
+}
+
+post_upgrade() {
+ echo -n "Runing depmod for nvidia kernel module for kernel $_F_kernelmod_uname ..."
+ /sbin/depmod -ea $_F_kernelmod_uname
+ echo " done."
+ ## if that exisit we bumped / upgraded the package only no new kernel
+ ## on a new kernel we do nothing because one has to reboot anyway
+ if [ -e /lib/modules/`uname -r`/kernel/drivers/video/nvidia.ko ]; then
+ ## see if is loaded , if yes kill it and modprobe again if not do nothing
+ if grep -q nvidia /proc/modules; then
+ echo -n "Reloading nvidia kernel module.."
+ modprobe --remove nvidia
+ sleep 1
+ modprobe nvidia
+ echo " done."
+ fi
+ fi
+}
+
+pre_remove() {
+ if test `lsmod | grep ^nvidia | wc -l` -gt 0; then
+ /sbin/modprobe --remove nvidia
+ fi
+
+ if [ -e /etc/X11/xorg.conf ]; then
+ sed -i 's/^.*# Load "dri"/Load "dri"/' /etc/X11/xorg.conf
+ sed -i 's/\(^Driver *\)"nvidia"/\1"nv"/' /etc/X11/xorg.conf
+ fi
+
+ exist=`cat /etc/sysconfig/modules | grep nvidia | wc -l`
+ if [ "$exist" -eq 1 ]; then
+ grep -v '^nvidia' /etc/sysconfig/modules > /etc/sysconfig/modules.tmp
+ mv /etc/sysconfig/modules.tmp /etc/sysconfig/modules
+ fi
+ if [ -e /usr/lib/xorg/temp/libglx.so ]; then
+ mv /usr/lib/xorg/temp/libglx.so /usr/lib/xorg/modules/extensions/
+ fi
+}
+
+post_remove() {
+ /sbin/depmod -a $_F_kernelmod_uname
+ echo "*** Nvidia driver is removed now. To have a working Xorg Server again run : ***"
+ echo "*** pacman-g2 -S libgl libglx ****"
+}
+
+op=$1
+shift
+$op $*
From janny at frugalware.org Wed Mar 5 21:20:09 2008
From: janny at frugalware.org (janny)
Date: Wed Mar 5 21:20:12 2008
Subject: [Frugalware-git] fwlive: nvidia-fwlive-169.12-2-i686
Message-ID: <20080305202009.A89341190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=5cadb2cd1487767a0b69c5adbc42206033be85db
commit 5cadb2cd1487767a0b69c5adbc42206033be85db
Author: janny
Date: Wed Mar 5 21:18:11 2008 +0100
nvidia-fwlive-169.12-2-i686
* version bump in fwlive repo
diff --git a/source/x11-extra/nvidia-fwlive/FrugalBuild b/source/x11-extra/nvidia-fwlive/FrugalBuild
index a64c48e..9981781 100644
--- a/source/x11-extra/nvidia-fwlive/FrugalBuild
+++ b/source/x11-extra/nvidia-fwlive/FrugalBuild
@@ -2,8 +2,9 @@
# Maintainer: AlexExtreme
pkgname=nvidia-fwlive
-pkgver=100.14.11
-pkgrel=1
+_F_archive_name=nvidia
+pkgver=169.12
+pkgrel=2
pkgdesc="3D accelerated display driver for Nvidia cards"
url="http://www.nvidia.com/object/linux_display_archive.html"
conflicts=('libgl' 'libglx')
@@ -11,23 +12,27 @@ provides=('libgl' 'libglx')
groups=('x11-extra')
archs=('i686' 'x86_64')
up2date="lynx -dump http://www.nvidia.com/object/unix.html|grep -m1 'Latest Version:'|sed 's/.*]//;s/-/_/'"
-[ "$CARCH" == "x86_64" ] && jarch=x86_64 && sha1=d542b702fdf7835f5dc7ec767789b2c1ada60908 && pkgnum=2
-echo "$CARCH" | grep -q 'i.86' && jarch=x86 && sha1=1427c18afd1cae198bee5d321f0a023994619926 && pkgnum=1
-source=(http://us.download.nvidia.com/XFree86/Linux-$jarch/$pkgver/NVIDIA-Linux-$jarch-$pkgver-pkg$pkgnum.run)
-sha1sums=($sha1)
+if echo "$CARCH" | grep -q 'i.86'; then
+ _arch=x86
+ sha1sums=('6ce789da785bf109fcb213db755eaf6975de2e46')
+ pkgnum=1
+elif [ "$CARCH" == "x86_64" ]; then
+ _arch=x86_64
+ sha1sums=('62f9e1055ce6cd4d7806757ece0a144695ef12ff')
+ pkgnum=2
+fi
+source=(http://us.download.nvidia.com/XFree86/Linux-$_arch/$pkgver/NVIDIA-Linux-$_arch-$pkgver-pkg$pkgnum.run)
options=('nostrip' 'force')
-#Finclude kernel-module
-kver=2.6.22-1
-depends=("kernel-fwlive=$kver")
+_F_kernelmod_scriptlet=$_F_archive_name.install
+Finclude kernel-module
+kver=2.6.24-3
+depends=("kernel-fwlive=$kver" 'xorg-server>=1.1.0')
makedepends=("kernel-fwlive-source=$kver")
-_F_kernelmod_uname=`echo $kver|sed 's/-/-fw/'`
-_F_kernelmod_dir="/lib/modules/$_F_kernelmod_uname"
-depends=(${depends[@]} 'xorg-server>=1.1.0')
-unset install
-install=$pkgname.install
+#_F_kernelmod_uname=`echo $kver|sed 's/-/-fw/'`
+#_F_kernelmod_dir="/lib/modules/$_F_kernelmod_uname"
build() {
- nvdir=NVIDIA-Linux-$jarch-$pkgver-pkg$pkgnum
+ nvdir=NVIDIA-Linux-$_arch-$pkgver-pkg$pkgnum
cd $Fsrcdir
sh $nvdir.run --extract-only
Fcd $nvdir/
@@ -83,6 +88,7 @@ build() {
Ffilerel usr/src/nv/nvidia.ko $_F_kernelmod_dir/kernel/drivers/video/nvidia.ko
Fdoc $nvdir/LICENSE
- Fcpr $nvdir/usr/share/doc/* /usr/share/doc/$pkgname-$pkgver/
+ Fcpr $nvdir/usr/share/doc/* usr/share/doc/$pkgname-$pkgver/
Fln "$pkgname-$pkgver" "/usr/share/doc/$pkgname"
+ Fbuild_kernelmod_scriptlet
}
diff --git a/source/x11-extra/nvidia-fwlive/nvidia-fwlive.install b/source/x11-extra/nvidia-fwlive/nvidia-fwlive.install
deleted file mode 100644
index cae4fc4..0000000
--- a/source/x11-extra/nvidia-fwlive/nvidia-fwlive.install
+++ /dev/null
@@ -1,47 +0,0 @@
-post_install() {
- echo "*** In order to use this package you have to accept Nvidia's license which"
- echo "*** can be found at /usr/share/doc/nvidia/LICENSE."
- echo "*** If you don't accept it, please remove the package!"
-
- sed -i 's/^.*Load "dri"/# Load "dri"/' /etc/X11/xorg.conf
- sed -i 's/Driver.*"\(nv\|vesa\|vga\)"/Driver "nvidia"/' /etc/X11/xorg.conf
-
- exist=`cat /etc/sysconfig/modules | grep nvidia | wc -l`
- if [ "$exist" -eq 0 ]; then
- echo nvidia >> /etc/sysconfig/modules
- fi
- /sbin/depmod -a
- /sbin/modprobe nvidia
-}
-
-post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- if test `lsmod | grep ^nvidia | wc -l` -gt 0; then
- rmmod nvidia
- fi
-
- sed -i 's/^.*# Load "dri"/Load "dri"/' /etc/X11/xorg.conf
- sed -i 's/\(^Driver *\)"nvidia"/\1"nv"/' /etc/X11/xorg.conf
-
- exist=`cat /etc/sysconfig/modules | grep nvidia | wc -l`
- if [ "$exist" -eq 1 ]; then
- grep -v '^nvidia' /etc/sysconfig/modules > /etc/sysconfig/modules.tmp
- mv /etc/sysconfig/modules.tmp /etc/sysconfig/modules
- fi
- if [ -e /usr/lib/xorg/temp/libglx.so ]; then
- mv /usr/lib/xorg/temp/libglx.so /usr/lib/xorg/modules/extensions/
- fi
-}
-
-post_remove() {
- depmod -a
- echo "*** Nvidia driver is removed now. To have a working Xorg Server again run : ***"
- echo "*** pacman-g2 -S libgl libglx ****"
-}
-
-op=$1
-shift
-$op $*
diff --git a/source/x11-extra/nvidia-fwlive/nvidia.install b/source/x11-extra/nvidia-fwlive/nvidia.install
new file mode 100644
index 0000000..cae4fc4
--- /dev/null
+++ b/source/x11-extra/nvidia-fwlive/nvidia.install
@@ -0,0 +1,47 @@
+post_install() {
+ echo "*** In order to use this package you have to accept Nvidia's license which"
+ echo "*** can be found at /usr/share/doc/nvidia/LICENSE."
+ echo "*** If you don't accept it, please remove the package!"
+
+ sed -i 's/^.*Load "dri"/# Load "dri"/' /etc/X11/xorg.conf
+ sed -i 's/Driver.*"\(nv\|vesa\|vga\)"/Driver "nvidia"/' /etc/X11/xorg.conf
+
+ exist=`cat /etc/sysconfig/modules | grep nvidia | wc -l`
+ if [ "$exist" -eq 0 ]; then
+ echo nvidia >> /etc/sysconfig/modules
+ fi
+ /sbin/depmod -a
+ /sbin/modprobe nvidia
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ if test `lsmod | grep ^nvidia | wc -l` -gt 0; then
+ rmmod nvidia
+ fi
+
+ sed -i 's/^.*# Load "dri"/Load "dri"/' /etc/X11/xorg.conf
+ sed -i 's/\(^Driver *\)"nvidia"/\1"nv"/' /etc/X11/xorg.conf
+
+ exist=`cat /etc/sysconfig/modules | grep nvidia | wc -l`
+ if [ "$exist" -eq 1 ]; then
+ grep -v '^nvidia' /etc/sysconfig/modules > /etc/sysconfig/modules.tmp
+ mv /etc/sysconfig/modules.tmp /etc/sysconfig/modules
+ fi
+ if [ -e /usr/lib/xorg/temp/libglx.so ]; then
+ mv /usr/lib/xorg/temp/libglx.so /usr/lib/xorg/modules/extensions/
+ fi
+}
+
+post_remove() {
+ depmod -a
+ echo "*** Nvidia driver is removed now. To have a working Xorg Server again run : ***"
+ echo "*** pacman-g2 -S libgl libglx ****"
+}
+
+op=$1
+shift
+$op $*
From janny at frugalware.org Wed Mar 5 21:50:25 2008
From: janny at frugalware.org (janny)
Date: Wed Mar 5 21:51:12 2008
Subject: [Frugalware-git] fwlive: kqemu-fwlive-1.3.0pre11-24-i686
Message-ID: <20080305205025.A6DDB1190A17@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=550c907375adeb16021400810d5875786066f5bf
commit 550c907375adeb16021400810d5875786066f5bf
Author: janny
Date: Wed Mar 5 21:49:26 2008 +0100
kqemu-fwlive-1.3.0pre11-24-i686
* version bump in fwlive repo
diff --git a/source/xapps-extra/kqemu-fwlive/FrugalBuild b/source/xapps-extra/kqemu-fwlive/FrugalBuild
index 04bf9cd..3a11c83 100644
--- a/source/xapps-extra/kqemu-fwlive/FrugalBuild
+++ b/source/xapps-extra/kqemu-fwlive/FrugalBuild
@@ -3,12 +3,13 @@
pkgname=kqemu-fwlive
pkgver=1.3.0pre11
-pkgrel=10
+pkgrel=24
pkgdesc="QEMU Accelerator Module"
url="http://fabrice.bellard.free.fr/qemu/"
depends=('qemu')
-#Finclude kernel-module
-kver=2.6.22-1
+_F_kernelmod_scriptlet=kqemu.install
+Finclude kernel-module
+kver=2.6.24-3
depends=("kernel-fwlive=$kver")
makedepends=("kernel-fwlive-source=$kver")
_F_kernelmod_uname=`echo $kver|sed 's/-/-fw/'`
@@ -16,8 +17,9 @@ _F_kernelmod_dir="/lib/modules/$_F_kernelmod_uname"
groups=('xapps-extra')
archs=('i686' 'x86_64')
up2date="lynx -dump $url/download.html|grep kqemu.*gz$|sed 's/.*-\(.*\)\.t.*/\1/;q'"
-source=($url/kqemu-$pkgver.tar.gz)
-sha1sums=('780d48b99715e6b2671864ad5050f1c9506fcb71')
+source=($url/kqemu-$pkgver.tar.gz README.Frugalware)
+sha1sums=('780d48b99715e6b2671864ad5050f1c9506fcb71' \
+ 'e1eb29a8e4c453480a18857c4416d1cc979a28f4')
build()
{
@@ -28,4 +30,6 @@ build()
Fmkdir /etc/udev/rules.d/
echo 'KERNEL=="kqemu*", NAME="%k", GROUP="users", MODE="0660"' \
> $Fdestdir/etc/udev/rules.d/48-qemu.rules
+ Fdoc README.Frugalware
+ Fbuild_kernelmod_scriptlet
}
diff --git a/source/xapps-extra/kqemu-fwlive/kqemu-fwlive.install b/source/xapps-extra/kqemu-fwlive/kqemu-fwlive.install
deleted file mode 100644
index 7bc3b9a..0000000
--- a/source/xapps-extra/kqemu-fwlive/kqemu-fwlive.install
+++ /dev/null
@@ -1,24 +0,0 @@
-post_install()
-{
- /sbin/depmod -a
- /sbin/modprobe kqemu major=0
- if ! grep -q kqemu /etc/sysconfig/modules; then
- echo 'kqemu "major=0"' >>/etc/sysconfig/modules
- fi
-}
-
-post_upgrade()
-{
- post_install
-}
-
-post_remove()
-{
- /sbin/depmod -a
- sed '/^kqemu/d' -i /etc/sysconfig/modules
-}
-
-op=$1
-shift
-
-$op $*
diff --git a/source/xapps-extra/kqemu-fwlive/kqemu.install b/source/xapps-extra/kqemu-fwlive/kqemu.install
new file mode 100644
index 0000000..c054c92
--- /dev/null
+++ b/source/xapps-extra/kqemu-fwlive/kqemu.install
@@ -0,0 +1,24 @@
+post_install()
+{
+ /sbin/depmod -a $_F_kernelmod_uname
+ /sbin/modprobe kqemu major=0
+ if ! grep -q kqemu /etc/sysconfig/modules; then
+ echo 'kqemu "major=0"' >>/etc/sysconfig/modules
+ fi
+}
+
+post_upgrade()
+{
+ post_install
+}
+
+post_remove()
+{
+ /sbin/depmod -a $_F_kernelmod_uname
+ sed '/^kqemu/d' -i /etc/sysconfig/modules
+}
+
+op=$1
+shift
+
+$op $*
From vmiklos at frugalware.org Wed Mar 5 22:15:49 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Wed Mar 5 22:15:52 2008
Subject: [Frugalware-git] frugalware-current: xaw3d-1.5-6-x86_64
Message-ID: <20080305211549.340741190A17@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=7f77456dcd0fca508285daaa03abb2e8e9b86853
commit 7f77456dcd0fca508285daaa03abb2e8e9b86853
Author: Miklos Vajna
Date: Wed Mar 5 21:44:00 2008 +0100
xaw3d-1.5-6-x86_64
- fix up smp build
diff --git a/source/xlib/xaw3d/FrugalBuild b/source/xlib/xaw3d/FrugalBuild
index 8f83f8f..c549445 100644
--- a/source/xlib/xaw3d/FrugalBuild
+++ b/source/xlib/xaw3d/FrugalBuild
@@ -17,7 +17,7 @@ source=(ftp://ftp.visi.com/users/hawkeyd/X/Xaw3d-$pkgver$pkgextraver.tar.gz \
$pkgname-$pkgver-xfree86.diff)
sha1sums=('efc5b923feda52866c859c59a5b553cb675a69d1' \
'b45d4ea2104bbb6a0e756f2356acc1ac44b54df2')
-
+unset MAKEFLAGS
build()
{
Fcd xc/lib/Xaw3d
From vmiklos at frugalware.org Wed Mar 5 22:15:49 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Wed Mar 5 22:15:52 2008
Subject: [Frugalware-git] frugalware-current: yudit-2.9.0-1-x86_64
Message-ID: <20080305211549.177831190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=72953aa30505c30ecaad6277bff067f238484c76
commit 72953aa30505c30ecaad6277bff067f238484c76
Author: Miklos Vajna
Date: Wed Mar 5 21:39:56 2008 +0100
yudit-2.9.0-1-x86_64
- fix up smp build
diff --git a/source/xapps-extra/yudit/FrugalBuild b/source/xapps-extra/yudit/FrugalBuild
index 3ea583e..d03b703 100644
--- a/source/xapps-extra/yudit/FrugalBuild
+++ b/source/xapps-extra/yudit/FrugalBuild
@@ -12,5 +12,5 @@ archs=('i686' 'x86_64')
up2date="lynx -dump http://yudit.org/download.html | grep -m1 tar.bz2$ | sed 's/.*-\(.*\).t.*/\1/'"
source=(http://yudit.org/download/yudit-$pkgver.tar.bz2)
sha1sums=('d958c88f93707036e031c6d6ac12e2d20d68d0fd')
-
+unset MAKEFLAGS
# optimization OK
From vmiklos at frugalware.org Wed Mar 5 22:15:49 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Wed Mar 5 22:15:52 2008
Subject: [Frugalware-git] frugalware-current: tuxpaint-0.9.18-2-x86_64
Message-ID: <20080305211549.40C3E1190A18@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=f74e54fd2a1aa663717d3b0fbc83f3389227a663
commit f74e54fd2a1aa663717d3b0fbc83f3389227a663
Author: Miklos Vajna
Date: Wed Mar 5 22:11:56 2008 +0100
tuxpaint-0.9.18-2-x86_64
- fix up x86_64 build
diff --git a/source/games-extra/tuxpaint/FrugalBuild b/source/games-extra/tuxpaint/FrugalBuild
index 01bdde1..95ba779 100644
--- a/source/games-extra/tuxpaint/FrugalBuild
+++ b/source/games-extra/tuxpaint/FrugalBuild
@@ -23,6 +23,9 @@ build()
{
Fcd
Fpatchall
+ if [ "$CARCH" == "x86_64" ]; then
+ Fsed '-g' '-fPIC' magic/Makefile
+ fi
make ENABLE_GETTEXT=1 || Fdie
make PKG_ROOT="$Fdestdir" ENABLE_GETTEXT=1 install || Fdie
Fbuild_gnome_scriptlet
From vmiklos at frugalware.org Wed Mar 5 22:15:49 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Wed Mar 5 22:15:53 2008
Subject: [Frugalware-git] frugalware-current: sword-packard-1.2-1-x86_64
Message-ID: <20080305211549.49826176C055@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=3f08aebd721a6ba26b942caa4a01550323700c3d
commit 3f08aebd721a6ba26b942caa4a01550323700c3d
Author: Miklos Vajna
Date: Wed Mar 5 22:15:42 2008 +0100
sword-packard-1.2-1-x86_64
- sha1sums() fix
diff --git a/source/locale-extra/sword-packard/FrugalBuild b/source/locale-extra/sword-packard/FrugalBuild
index be10ea9..e53f1c5 100644
--- a/source/locale-extra/sword-packard/FrugalBuild
+++ b/source/locale-extra/sword-packard/FrugalBuild
@@ -12,7 +12,7 @@ groups=('locale-extra')
archs=('i686' 'x86_64')
up2date="lynx -dump http://www.crosswire.org/sword/modules/ModInfo.jsp?modName=Packard | grep 'Module Version' | sed 's/.*Module Version \(.*\).*/\1/'"
source=(http://www.crosswire.org/ftpmirror/pub/sword/packages/rawzip/Packard.zip)
-sha1sums=('39a1a79a3b0518ec2cde4d0a725f874bdf7308cd')
+sha1sums=('0d31be8e157970743efa3f2b3b455598fae046c2')
build()
{
From vmiklos at frugalware.org Wed Mar 5 22:32:49 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Wed Mar 5 22:32:50 2008
Subject: [Frugalware-git] frugalware-current: mutt-ng-1.5.17-2-x86_64
Message-ID: <20080305213249.71CD41190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=275b74dc41a52a3c0e5d5bca2a580efdd15c5cb7
commit 275b74dc41a52a3c0e5d5bca2a580efdd15c5cb7
Author: Miklos Vajna
Date: Wed Mar 5 22:32:45 2008 +0100
mutt-ng-1.5.17-2-x86_64
- fix up smp build
diff --git a/source/network-extra/mutt-ng/FrugalBuild b/source/network-extra/mutt-ng/FrugalBuild
index 385cfb3..8fb8ce2 100644
--- a/source/network-extra/mutt-ng/FrugalBuild
+++ b/source/network-extra/mutt-ng/FrugalBuild
@@ -17,7 +17,7 @@ up2date="lynx -dump $url/download.html |grep tar |sed -ne 's/.*-\(.*\).t.*/\1/;2
source=(ftp://ftp.mutt.org/mutt/devel/mutt-$pkgver.tar.gz \
http://ftp.frugalware.org/pub/other/sources/mutt-ng/mutt-${pkgver}-patches2.tar.gz)
signatures=($source.asc '')
-
+unset MAKEFLAGS
build()
{
Fcd mutt-$pkgver
From vmiklos at frugalware.org Wed Mar 5 23:10:56 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Wed Mar 5 23:10:57 2008
Subject: [Frugalware-git]
frugalware-current: kde-theme-qtcurve-0.55.3-1-x86_64
Message-ID: <20080305221056.4AD321190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=08c3987f3f284fdcb5811ffff64539b6bc129048
commit 08c3987f3f284fdcb5811ffff64539b6bc129048
Author: Miklos Vajna
Date: Wed Mar 5 23:10:48 2008 +0100
kde-theme-qtcurve-0.55.3-1-x86_64
- fix up x86_64 build
diff --git a/source/kde/kde-theme-qtcurve/FrugalBuild b/source/kde/kde-theme-qtcurve/FrugalBuild
index f5861ef..a3252ea 100644
--- a/source/kde/kde-theme-qtcurve/FrugalBuild
+++ b/source/kde/kde-theme-qtcurve/FrugalBuild
@@ -60,10 +60,6 @@ build()
|| Fdie
make || Fdie
make DESTDIR=$Fdestdir install || Fdie
- if [ "$CARCH" == "x86_64" ]; then
- Fmv usr/lib64/kde3/* /usr/lib/kde3
- Frm /usr/lib64
- fi
}
# optimization OK
From vmiklos at frugalware.org Thu Mar 6 00:48:38 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Thu Mar 6 00:48:41 2008
Subject: [Frugalware-git] frugalware-current: gpac-0.4.4-3-x86_64
Message-ID: <20080305234838.681581190A16@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=dbc4dd32a796839ca373fd30c7a480b14b58b6a0
commit dbc4dd32a796839ca373fd30c7a480b14b58b6a0
Author: Miklos Vajna
Date: Thu Mar 6 00:25:55 2008 +0100
gpac-0.4.4-3-x86_64
- fix up x86_64 build
diff --git a/source/xmultimedia-extra/gpac/FrugalBuild b/source/xmultimedia-extra/gpac/FrugalBuild
index 3bd1840..162665f 100644
--- a/source/xmultimedia-extra/gpac/FrugalBuild
+++ b/source/xmultimedia-extra/gpac/FrugalBuild
@@ -11,16 +11,24 @@ archs=('i686' 'x86_64')
options=('scriptlet')
Finclude sourceforge
up2date="lynx -dump http://sourceforge.net/project/showfiles.php?group_id=84101 |grep tar.gz |sed -ne 's/.*c-\(.*\).tar.*/\1/;s/-/_/;1p'"
+sha1sums=('99b185966632376295f4406821223f5d60d1a32c')
+if [ "$CARCH" == "x86_64" ]; then
+ source=(${source[@]} soname.patch pic.patch)
+ sha1sums=($sha1sums '16141d981c72a65b48565019052de604226e6b84' \
+ '03df9bb4796c0342a70c9e5793739ee0bc6a3177')
+fi
build(){
unset MAKEFLAGS
Fcd $pkgname
+ Fpatchall
chmod +x configure || Fdie
Fsed "-O3" "$CFLAGS" configure
+ Fsed 'osmozilla' '' applications/Makefile
Fsed '$(prefix)/bin' '$(DESTDIR)$(prefix)/bin' applications/osmo4_wx/Makefile
- Fbuild
+ Fmake --enable-pic
+ Fmakeinstall
make DESTDIR=$Fdestdir install-lib || Fdie
}
-sha1sums=('99b185966632376295f4406821223f5d60d1a32c')
# optimization OK
diff --git a/source/xmultimedia-extra/gpac/pic.patch b/source/xmultimedia-extra/gpac/pic.patch
new file mode 100644
index 0000000..9bb2a67
--- /dev/null
+++ b/source/xmultimedia-extra/gpac/pic.patch
@@ -0,0 +1,760 @@
+Index: gpac-0.4.4/configure
+===================================================================
+--- gpac-0.4.4.orig/configure
++++ gpac-0.4.4/configure
+@@ -69,6 +69,8 @@ has_ipv6="no"
+ has_dvb4linux="no"
+ has_openjpeg="no"
+ gprof_build="no"
++PIC_CFLAGS=""
++want_pic="no"
+
+ win32="no"
+ mingw32="no"
+@@ -121,6 +123,7 @@ echo " --mozdir=MOZ_PATH specify
+ echo ""
+ echo " --enable-debug produce debug version"
+ echo " --enable-gprof enable profiling"
++echo " --enable-pic enable Position Independant Code for shared objects"
+ echo " --track-memory enables tracking of all memory allocated by gpac"
+ echo " --disable-fragments disable movie fragments in ISO media support"
+ echo " --disable-opt disable GCC optimizations"
+@@ -195,7 +198,8 @@ case "$cpu" in
+ if [ -z "`echo $CFLAGS | grep -- -m32`" ]; then
+ cpu="x86_64"
+ #that's a bit crude...
+- CFLAGS="$CFLAGS -fPIC -DPIC"
++ PIC_CFLAGS="-fPIC -DPIC"
++ want_pic="yes"
+ fi
+ fi
+ ;;
+@@ -826,6 +830,8 @@ for opt do
+ ;;
+ --enable-gprof) gprof_build="yes";
+ ;;
++ --enable-pic) PIC_CFLAGS="-fPIC -DPIC"; want_pic="yes";
++ ;;
+ --disable-opt) no_gcc_opt="yes"
+ ;;
+ --disable-ipv6) has_ipv6="no"
+@@ -1209,6 +1215,8 @@ echo "RANLIB=$ranlib" >> config.mak
+ echo "STRIP=$strip" >> config.mak
+ echo "OPTFLAGS=$CFLAGS" >> config.mak
+ echo "CPPFLAGS=$CPPFLAGS" >> config.mak
++echo "PIC_CFLAGS=$PIC_CFLAGS" >> config.mak
++echo "WANT_PIC=$want_pic" >> config.mak
+ echo "LDFLAGS=$LDFLAGS" >> config.mak
+ echo "SHFLAGS=$SHFLAGS" >> config.mak
+
+@@ -1422,4 +1430,7 @@ if [ ! -d "./bin/gcc/temp" ]; then
+ mkdir ./bin/gcc/temp
+ fi
+
++echo '%.opic : %.c' >> config.mak
++echo ' $(CC) $(CFLAGS) $(PIC_CFLAGS) -c $< -o $@' >> config.mak
++
+ echo "Done - type 'make help' for make info, 'make' to build"
+Index: gpac-0.4.4/src/Makefile
+===================================================================
+--- gpac-0.4.4.orig/src/Makefile
++++ gpac-0.4.4/src/Makefile
+@@ -157,6 +157,12 @@ endif
+ EXTRALIBS+=$(GPAC_SH_FLAGS)
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ SRCS := $(OBJS:.o=.c)
+
+ all: lib
+@@ -204,10 +210,10 @@ else
+ $(CC) $(CFLAGS) -c -o $@ $<
+ endif
+
+-$(LIB): $(LIBGPAC_UTILS) $(LIBGPAC_IETF) $(LIBGPAC_BIFS) $(LIBGPAC_ODF) $(LIBGPAC_LASER) isomedia scenegraph mcrypt mediatools sceneman term render
++$(LIB): $(LIBGPAC_UTILS) $(LIBGPAC_IETF) $(LIBGPAC_BIFS) $(LIBGPAC_ODF) $(LIBGPAC_LASER) $(OBJSPIC) isomedia scenegraph mcrypt mediatools sceneman term render
+ ar cr ../bin/gcc/libgpac_static.a $(OBJS)
+ ranlib ../bin/gcc/libgpac_static.a
+- $(CC) $(SHFLAGS) -Wl,-soname,$(LIB) $(LDFLAGS) -o ../bin/gcc/$@ $(OBJS) $(EXTRALIBS)
++ $(CC) $(SHFLAGS) -Wl,-soname,$(LIB) $(LDFLAGS) -o ../bin/gcc/$@ $(OBJSPIC) $(EXTRALIBS)
+
+ dep: depend
+
+Index: gpac-0.4.4/modules/aac_in/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/aac_in/Makefile
++++ gpac-0.4.4/modules/aac_in/Makefile
+@@ -37,11 +37,18 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols aac_in.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) -L../../bin/gcc -lgpac $(EXTRALIBS)
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) -L../../bin/gcc -lgpac $(EXTRALIBS)
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/alsa/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/alsa/Makefile
++++ gpac-0.4.4/modules/alsa/Makefile
+@@ -22,10 +22,16 @@ SRCS := $(OBJS:.o=.c)
+
+ LIB=gm_alsa.$(DYN_LIB_SUFFIX)
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(EXTRALIBS) -L../../bin/gcc -lgpac -lasound
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(EXTRALIBS) -L../../bin/gcc -lgpac -lasound
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/bifs_dec/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/bifs_dec/Makefile
++++ gpac-0.4.4/modules/bifs_dec/Makefile
+@@ -24,11 +24,17 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols bifs_dec.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(EXTRALIBS) -L../../bin/gcc -lgpac
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(EXTRALIBS) -L../../bin/gcc -lgpac
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/ctx_load/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/ctx_load/Makefile
++++ gpac-0.4.4/modules/ctx_load/Makefile
+@@ -24,11 +24,18 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols ctx_load.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(EXTRALIBS) -L../../bin/gcc -lgpac
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(EXTRALIBS) -L../../bin/gcc -lgpac
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/dummy_in/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/dummy_in/Makefile
++++ gpac-0.4.4/modules/dummy_in/Makefile
+@@ -24,11 +24,17 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols dummy_in.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(EXTRALIBS) -L../../bin/gcc -lgpac
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(EXTRALIBS) -L../../bin/gcc -lgpac
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/ffmpeg_in/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/ffmpeg_in/Makefile
++++ gpac-0.4.4/modules/ffmpeg_in/Makefile
+@@ -38,11 +38,17 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols ffmpeg_in.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) -L../../bin/gcc $(LOCAL_LIB) $(LINKLIBS) $(EXTRALIBS)
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) -L../../bin/gcc $(LOCAL_LIB) $(LINKLIBS) $(EXTRALIBS)
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/ft_font/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/ft_font/Makefile
++++ gpac-0.4.4/modules/ft_font/Makefile
+@@ -28,11 +28,17 @@ endif
+ LINKVAR=-L../../bin/gcc -lgpac $(FT_LIBS)
+
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(LINKVAR) $(EXTRALIBS)
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(LINKVAR) $(EXTRALIBS)
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/img_in/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/img_in/Makefile
++++ gpac-0.4.4/modules/img_in/Makefile
+@@ -87,11 +87,17 @@ LINKLIBS+=-lwinmm
+ LDFLAGS+=-export-symbols img_in.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(EXTRALIBS) -L$(LOCAL_LIB) $(LINKLIBS)
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(EXTRALIBS) -L$(LOCAL_LIB) $(LINKLIBS)
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/ismacryp/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/ismacryp/Makefile
++++ gpac-0.4.4/modules/ismacryp/Makefile
+@@ -24,11 +24,17 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols ismacryp.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(EXTRALIBS) -L../../bin/gcc -lgpac
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(EXTRALIBS) -L../../bin/gcc -lgpac
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/isom_in/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/isom_in/Makefile
++++ gpac-0.4.4/modules/isom_in/Makefile
+@@ -24,11 +24,17 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols isom_in.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) -L../../bin/gcc -lgpac $(EXTRALIBS)
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) -L../../bin/gcc -lgpac $(EXTRALIBS)
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/laser_dec/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/laser_dec/Makefile
++++ gpac-0.4.4/modules/laser_dec/Makefile
+@@ -24,11 +24,17 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols laser_dec.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(EXTRALIBS) -L../../bin/gcc -lgpac
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(EXTRALIBS) -L../../bin/gcc -lgpac
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/mp3_in/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/mp3_in/Makefile
++++ gpac-0.4.4/modules/mp3_in/Makefile
+@@ -39,11 +39,17 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols mp3_in.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) -L../../bin/gcc -lgpac $(EXTRALIBS)
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) -L../../bin/gcc -lgpac $(EXTRALIBS)
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/mpegts_in/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/mpegts_in/Makefile
++++ gpac-0.4.4/modules/mpegts_in/Makefile
+@@ -29,11 +29,17 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols mpegts_in.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(EXTRALIBS) -L../../bin/gcc -lgpac
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(EXTRALIBS) -L../../bin/gcc -lgpac
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/odf_dec/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/odf_dec/Makefile
++++ gpac-0.4.4/modules/odf_dec/Makefile
+@@ -24,11 +24,17 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols odf_dec.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(EXTRALIBS) -L../../bin/gcc -lgpac
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(EXTRALIBS) -L../../bin/gcc -lgpac
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/ogg/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/ogg/Makefile
++++ gpac-0.4.4/modules/ogg/Makefile
+@@ -62,11 +62,17 @@ LDFLAGS+=-export-symbols ogg.def
+ endif
+
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(EXTRALIBS) -L$(LOCAL_LIB) $(LINKLIBS)
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(EXTRALIBS) -L$(LOCAL_LIB) $(LINKLIBS)
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/oss_audio/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/oss_audio/Makefile
++++ gpac-0.4.4/modules/oss_audio/Makefile
+@@ -31,10 +31,16 @@ SRCS := $(OBJS:.o=.c)
+
+ LIB=gm_oss_audio.$(DYN_LIB_SUFFIX)
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(EXTRALIBS) -L../../bin/gcc -lgpac $(OSS_LDFLAGS)
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(EXTRALIBS) -L../../bin/gcc -lgpac $(OSS_LDFLAGS)
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/raw_out/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/raw_out/Makefile
++++ gpac-0.4.4/modules/raw_out/Makefile
+@@ -24,11 +24,17 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols raw_out.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(EXTRALIBS) -L../../bin/gcc -lgpac
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(EXTRALIBS) -L../../bin/gcc -lgpac
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/render2d/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/render2d/Makefile
++++ gpac-0.4.4/modules/render2d/Makefile
+@@ -38,11 +38,17 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols render2d.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(LINKFLAGS) $(EXTRALIBS)
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(LINKFLAGS) $(EXTRALIBS)
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/render3d/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/render3d/Makefile
++++ gpac-0.4.4/modules/render3d/Makefile
+@@ -44,11 +44,17 @@ LDFLAGS+=-export-symbols render3d.def
+ else
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(LINKFLAGS) $(EXTRALIBS) $(OGL_LIBS)
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(LINKFLAGS) $(EXTRALIBS) $(OGL_LIBS)
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/rtp_in/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/rtp_in/Makefile
++++ gpac-0.4.4/modules/rtp_in/Makefile
+@@ -25,11 +25,17 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols rtp_in.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) -L../../bin/gcc -lgpac $(EXTRALIBS)
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) -L../../bin/gcc -lgpac $(EXTRALIBS)
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/saf_in/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/saf_in/Makefile
++++ gpac-0.4.4/modules/saf_in/Makefile
+@@ -25,11 +25,17 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols saf_in.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(EXTRALIBS) -L../../bin/gcc -lgpac
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(EXTRALIBS) -L../../bin/gcc -lgpac
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/sdl_out/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/sdl_out/Makefile
++++ gpac-0.4.4/modules/sdl_out/Makefile
+@@ -31,11 +31,17 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols sdl_out.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(SDL_LIBS) -L../../bin/gcc -lgpac
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(SDL_LIBS) -L../../bin/gcc -lgpac
+
+ %.o: %.c
+ $(CC) $(CFLAGS) -c -o $@ $<
+Index: gpac-0.4.4/modules/soft_raster/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/soft_raster/Makefile
++++ gpac-0.4.4/modules/soft_raster/Makefile
+@@ -30,11 +30,18 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols rast_soft.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(EXTRALIBS) -L../../bin/gcc -lgpac
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(EXTRALIBS) -L../../bin/gcc -lgpac
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/svg_in/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/svg_in/Makefile
++++ gpac-0.4.4/modules/svg_in/Makefile
+@@ -29,11 +29,17 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols svg_in.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(EXTRALIBS) -L../../bin/gcc -lgpac -lz
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(EXTRALIBS) -L../../bin/gcc -lgpac -lz
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/timedtext/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/timedtext/Makefile
++++ gpac-0.4.4/modules/timedtext/Makefile
+@@ -24,11 +24,17 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols timedtext.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(EXTRALIBS) -L../../bin/gcc -lgpac
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(EXTRALIBS) -L../../bin/gcc -lgpac
+
+
+ %.o: %.c
+Index: gpac-0.4.4/modules/x11_out/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/x11_out/Makefile
++++ gpac-0.4.4/modules/x11_out/Makefile
+@@ -47,11 +47,17 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) -lX11 -L../../bin/gcc -lgpac
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) -lX11 -L../../bin/gcc -lgpac
+
+ %.o: %.c
+ $(CC) $(CFLAGS) -c -o $@ $<
+Index: gpac-0.4.4/modules/xvid_dec/Makefile
+===================================================================
+--- gpac-0.4.4.orig/modules/xvid_dec/Makefile
++++ gpac-0.4.4/modules/xvid_dec/Makefile
+@@ -31,11 +31,17 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols xvid_dec.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) -L../../bin/gcc -lgpac $(EXTRALIBS)
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) -L../../bin/gcc -lgpac $(EXTRALIBS)
+
+
+ %.o: %.c
+Index: gpac/modules/amr_float_dec/Makefile
+===================================================================
+--- gpac.orig/modules/amr_float_dec/Makefile
++++ gpac/modules/amr_float_dec/Makefile
+@@ -41,11 +41,17 @@ ifeq ($(CONFIG_WIN32),yes)
+ LDFLAGS+=-export-symbols amr_float_dec.def
+ endif
+
++ifeq ($(WANT_PIC),yes)
++OBJSPIC=$(OBJS:.o=.opic)
++else
++OBJSPIC=$(OBJS)
++endif
++
+ all: $(LIB)
+
+
+-$(LIB): $(OBJS)
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJS) $(EXTRALIBS) -L../../bin/gcc -lgpac
++$(LIB): $(OBJSPIC)
++ $(CC) $(SHFLAGS) $(LDFLAGS) -o ../../bin/gcc/$@ $(OBJSPIC) $(EXTRALIBS) -L../../bin/gcc -lgpac
+
+
+ %.o: %.c
diff --git a/source/xmultimedia-extra/gpac/soname.patch b/source/xmultimedia-extra/gpac/soname.patch
new file mode 100644
index 0000000..e5951b3
--- /dev/null
+++ b/source/xmultimedia-extra/gpac/soname.patch
@@ -0,0 +1,11 @@
+--- gpac.orig/src/Makefile 2006-07-11 11:53:44.000000000 -0400
++++ gpac/src/Makefile 2006-08-01 12:58:38.000000000 -0400
+@@ -197,7 +197,7 @@
+ $(LIB): $(LIBGPAC_UTILS) $(LIBGPAC_IETF) $(LIBGPAC_BIFS) $(LIBGPAC_ODF) $(LIBGPAC_LASER) isomedia scenegraph mcrypt mediatools sceneman term render
+ ar cr ../bin/gcc/libgpac_static.a $(OBJS)
+ ranlib ../bin/gcc/libgpac_static.a
+- $(CC) $(SHFLAGS) $(LDFLAGS) -o ../bin/gcc/$@ $(OBJS) $(EXTRALIBS)
++ $(CC) $(SHFLAGS) -Wl,-soname,$(LIB) $(LDFLAGS) -o ../bin/gcc/$@ $(OBJS) $(EXTRALIBS)
+
+ dep: depend
+
From priyank at frugalware.org Thu Mar 6 07:41:39 2008
From: priyank at frugalware.org (Priyank)
Date: Thu Mar 6 07:41:40 2008
Subject: [Frugalware-git] gfpm: gfpm-repomgr:
gfpm_repomgr_populate_repolist(): skip bad repos and prevent
a segfault
Message-ID: <20080306064139.44708119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=0c0eb4395c05da7e6f9b47b37e1cb3923d37268f
commit 0c0eb4395c05da7e6f9b47b37e1cb3923d37268f
Author: Priyank
Date: Thu Mar 6 12:10:42 2008 +0530
gfpm-repomgr: gfpm_repomgr_populate_repolist(): skip bad repos and prevent a segfault
diff --git a/src/gfpm-repomanager.c b/src/gfpm-repomanager.c
index 029c381..6eede20 100644
--- a/src/gfpm-repomanager.c
+++ b/src/gfpm-repomanager.c
@@ -568,7 +568,7 @@ gfpm_repomgr_populate_repo_info (const char *path, gfpm_repo_t *repo_r)
if ((tmp = fopen (path, "r")) == NULL)
{
- gchar *errorstr = g_strdup_printf ("%s for %s %s", _("Error opening repository servers file"), path, _("repository"));
+ gchar *errorstr = g_strdup_printf ("%s : %s.\n%s", _("Error opening"), path, _("This repository will be disabled"));
gfpm_error (_("Error opening repository file"), errorstr);
g_free (errorstr);
return;
@@ -663,7 +663,13 @@ gfpm_repomgr_populate_repolist (void)
repo_r = (gfpm_repo_t*)malloc(sizeof(gfpm_repo_t));
memset (repo_r, 0, sizeof(gfpm_repo_t));
gfpm_repomgr_populate_repo_info (str, repo_r);
+ if (!strlen(repo_r->name))
+ {
+ g_free (repo_r);
+ continue;
+ }
repo_r->enabled = TRUE;
+ repo_r->delete = FALSE;
// and then append it to our repo list
repolist->list = g_list_append (repolist->list, (gpointer)repo_r);
n++;
@@ -675,12 +681,17 @@ gfpm_repomgr_populate_repolist (void)
repo_r = (gfpm_repo_t*)malloc(sizeof(gfpm_repo_t));
memset (repo_r, 0, sizeof(gfpm_repo_t));
gfpm_repomgr_populate_repo_info (str, repo_r);
+ if (!strlen(repo_r->name))
+ {
+ g_free (repo_r);
+ continue;
+ }
repo_r->enabled = FALSE;
+ repo_r->delete = FALSE;
// and then append it to our repo list
repolist->list = g_list_append (repolist->list, (gpointer)repo_r);
n++;
}
- repo_r->delete = FALSE;
}
repolist->n = n;
From priyank at frugalware.org Thu Mar 6 08:01:32 2008
From: priyank at frugalware.org (Priyank)
Date: Thu Mar 6 08:01:34 2008
Subject: [Frugalware-git] gfpm: gfpm-repomgr: Fixed a major bug where gfpm
didn't save some parts of the config file resulting in an
inconsistent configuration.
Message-ID: <20080306070132.35BDD119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=c2f5c3757de6fc5af638d7faa4656f0c9083e64c
commit c2f5c3757de6fc5af638d7faa4656f0c9083e64c
Author: Priyank
Date: Thu Mar 6 12:30:43 2008 +0530
gfpm-repomgr: Fixed a major bug where gfpm didn't save some parts of the config file resulting in an inconsistent configuration.
diff --git a/src/gfpm-repomanager.c b/src/gfpm-repomanager.c
index 6eede20..c97e482 100644
--- a/src/gfpm-repomanager.c
+++ b/src/gfpm-repomanager.c
@@ -644,20 +644,9 @@ gfpm_repomgr_populate_repolist (void)
fwutil_trim (line);
if (!strlen(line))
continue;
- else if (line[0] == '#' && line[1] != 'I')
- {
- if (flag == FALSE)
- {
- repolist->header = g_list_append (repolist->header, (gpointer) g_strdup(line));
- }
- else
- {
- repo_r->footer = g_list_append (repo_r->footer, (gpointer) g_strdup(line));
- }
- continue;
- }
- else if (sscanf(line, "Include = %s", str))
+ else if (line[0] == 'I' && line[1] == 'n')
{
+ sscanf (line, "Include = %s", str);
if (flag == FALSE)
flag = TRUE;
repo_r = (gfpm_repo_t*)malloc(sizeof(gfpm_repo_t));
@@ -674,8 +663,9 @@ gfpm_repomgr_populate_repolist (void)
repolist->list = g_list_append (repolist->list, (gpointer)repo_r);
n++;
}
- else if (sscanf(line, "#Include = %s", str))
+ else if (line[0] == '#' && line[1] == 'I')
{
+ sscanf (line, "#Include = %s", str);
if (flag == FALSE)
flag = TRUE;
repo_r = (gfpm_repo_t*)malloc(sizeof(gfpm_repo_t));
@@ -692,6 +682,18 @@ gfpm_repomgr_populate_repolist (void)
repolist->list = g_list_append (repolist->list, (gpointer)repo_r);
n++;
}
+ else
+ {
+ if (flag == FALSE)
+ {
+ repolist->header = g_list_append (repolist->header, (gpointer) g_strdup(line));
+ }
+ else
+ {
+ repo_r->footer = g_list_append (repo_r->footer, (gpointer) g_strdup(line));
+ }
+ continue;
+ }
}
repolist->n = n;
From janny at frugalware.org Thu Mar 6 13:14:24 2008
From: janny at frugalware.org (Janny)
Date: Thu Mar 6 13:14:26 2008
Subject: [Frugalware-git] fwlive: fwlive-build
Message-ID: <20080306121424.A7B711190A17@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=b0a6d638dbbc7dbd944a9af0da0ef4a445da5613
commit b0a6d638dbbc7dbd944a9af0da0ef4a445da5613
Author: Janny
Date: Thu Mar 6 13:12:50 2008 +0100
fwlive-build
* add "Deleting unused languages" to build
diff --git a/live-base/build b/live-base/build
index 2aa0954..a470fd2 100644
--- a/live-base/build
+++ b/live-base/build
@@ -50,6 +50,13 @@ cd ..
cp initrd/initrd.gz $CDDATA/boot/initrd.gz
rm initrd/initrd.gz
+echo "Deleting unused languages..."
+
+for i in $(echo $LOCALE | sed -r "s/\,/ /g"); do
+ lo="! -name \"$i*\" "$lo
+done
+find /usr/share/locale -maxdepth 1 -type d $lo -ecec rm -fr {} \;
+
echo "Creating compressed images..."
for dir in $MKMOD; do
From janny at frugalware.org Thu Mar 6 13:14:24 2008
From: janny at frugalware.org (Janny)
Date: Thu Mar 6 13:14:26 2008
Subject: [Frugalware-git] fwlive: fwlive-Makefile
Message-ID: <20080306121424.8DAC1119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=59d629e0fb63b8b29a1e9e7a6889ba46eb262c63
commit 59d629e0fb63b8b29a1e9e7a6889ba46eb262c63
Author: Janny
Date: Thu Mar 6 13:06:47 2008 +0100
fwlive-Makefile
* add in MAKEFILE insert LOCALE line to live-base config
diff --git a/Makefile b/Makefile
index 647820a..2980323 100644
--- a/Makefile
+++ b/Makefile
@@ -275,6 +275,7 @@ endif
sed -i "s|linuxcd|${FWLHOST}|" ${CHROOTDIR}/${TREE}/tmp/live-base/.config
sed -i "s|Live|$(shell ${FWLREL}) (${FWLCODENAME})|" ${CHROOTDIR}/${TREE}/tmp/live-base/cd-root/linux/make_iso.sh
sed -i "s|KERNEL=.*|KERNEL=\"$(shell ${KERNVER})\"|" ${CHROOTDIR}/${TREE}/tmp/live-base/.config
+ echo "LOCALE=${LOCALE}" >> ${CHROOTDIR}/${TREE}/tmp/live-base/.config
hacking-kdmrc: checkroot
if [ ${APPSGROUP} == "KDE" ] || [ ${APPSGROUP} == "FULL" ] ; then \
From janny at frugalware.org Thu Mar 6 13:32:16 2008
From: janny at frugalware.org (Janny)
Date: Thu Mar 6 13:32:18 2008
Subject: [Frugalware-git] fwlive: fwlive-build
Message-ID: <20080306123216.65917119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive.git;a=commitdiff;h=83fc6b50235a47bf76b690d7f30f07269195f1cf
commit 83fc6b50235a47bf76b690d7f30f07269195f1cf
Author: Janny
Date: Thu Mar 6 13:31:46 2008 +0100
fwlive-build
* add real path and typo fix
diff --git a/live-base/build b/live-base/build
index a470fd2..031dd2e 100644
--- a/live-base/build
+++ b/live-base/build
@@ -55,7 +55,7 @@ echo "Deleting unused languages..."
for i in $(echo $LOCALE | sed -r "s/\,/ /g"); do
lo="! -name \"$i*\" "$lo
done
-find /usr/share/locale -maxdepth 1 -type d $lo -ecec rm -fr {} \;
+find $ROOT/usr/share/locale -maxdepth 1 -type d $lo -exec rm -fr {} \;
echo "Creating compressed images..."
From vmiklos at frugalware.org Thu Mar 6 13:34:21 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Thu Mar 6 13:34:23 2008
Subject: [Frugalware-git]
frugalware-current: binutils-emul-2.18.50.0.3_1-1-x86_64
Message-ID: <20080306123421.09F6F119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=52c7583a1c07707ea89cbf895e6316b7dac12814
commit 52c7583a1c07707ea89cbf895e6316b7dac12814
Author: Miklos Vajna
Date: Thu Mar 6 13:34:10 2008 +0100
binutils-emul-2.18.50.0.3_1-1-x86_64
- fix up pkgver and sha1sums()
diff --git a/source/emul-extra/binutils-emul/FrugalBuild b/source/emul-extra/binutils-emul/FrugalBuild
index 5e6f571..3f1b667 100644
--- a/source/emul-extra/binutils-emul/FrugalBuild
+++ b/source/emul-extra/binutils-emul/FrugalBuild
@@ -2,7 +2,7 @@
# Maintainer: Christian Hamar alias krix
pkgname=binutils-emul
-pkgver=2.18.50.0.3_
+pkgver=2.18.50.0.3_1
pkgrel=1
pkgdesc="A set of programs to assemble and manipulate binary and object files for emulation of i686 on x86_64"
url="http://sources.redhat.com/binutils"
@@ -10,4 +10,4 @@ depends=('bash-emul')
groups=('emul-extra')
archs=('!i686' 'x86_64')
Finclude emul
-sha1sums=('6c579b8c1a14c51361f9231c388fafb1503e592a')
+sha1sums=('75f8595d2f592df44114db08c5ac004d19539117')
From priyank at frugalware.org Thu Mar 6 13:58:12 2008
From: priyank at frugalware.org (Priyank)
Date: Thu Mar 6 13:58:13 2008
Subject: [Frugalware-git] gfpm: Bump version to 1.1.1
Message-ID: <20080306125812.876B61190A17@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=70032bffe9c4610414c073698a9f8e30301cd1d7
commit 70032bffe9c4610414c073698a9f8e30301cd1d7
Author: Priyank
Date: Thu Mar 6 18:27:15 2008 +0530
Bump version to 1.1.1
diff --git a/README b/README
index f1f5097..6c7a41a 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-Gfpm 1.1.0 README
+Gfpm 1.1.1 README
==================
diff --git a/configure.ac b/configure.ac
index 6225e54..9059bad 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,7 +1,7 @@
ENV_CFLAGS=$CFLAGS
AC_PREREQ(2.59)
-AC_INIT([Gfpm], 1.1.0, [priyankmg@gmail.com], gfpm)
+AC_INIT([Gfpm], 1.1.1, [priyankmg@gmail.com], gfpm)
AC_DEFINE_UNQUOTED([GFPM_RELEASE_NAME], ["Callisto"], [Release codenames])
AC_CONFIG_SRCDIR([src/gfpm.c])
AC_LANG(C)
From priyank at frugalware.org Thu Mar 6 13:58:12 2008
From: priyank at frugalware.org (Priyank)
Date: Thu Mar 6 13:58:14 2008
Subject: [Frugalware-git] gfpm: updates for 1.1.1
Message-ID: <20080306125812.67D76119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=c2eee63ebcae4e4ac76533db8037387b28051f69
commit c2eee63ebcae4e4ac76533db8037387b28051f69
Author: Priyank
Date: Thu Mar 6 18:23:26 2008 +0530
updates for 1.1.1
diff --git a/NEWS b/NEWS
index 6c4f7c7..0fc62fe 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,14 @@
VERSION DESCRIPTION
---------------------------------------------------------------------------------------------------------
+1.1.1 - BUGFIX: Fixed a major bug where Gfpm repository manager failed to save [options] part
+ of the configuration file resulting in an inconsistent configuration
+ BUGFIX: In repository manager, while parsing the repositories from the conf file, skip
+ bad repos. This prevents a segfault.
+ BUGFIX (#2811): Hide the HELP button until the documentation for Gfpm is ready
+ BUGFIX (#2814): Changed text of some buttons on the quick pane to make it more clear for the user
+ Don't allow non-root users to perform certain operations like installing/removing a package,
+ optimize the database etc.
+ Fix a segfault when gfpm is run by a non-root user.
1.1.0 Callisto (2008-03-01) - Added a Repository Manager which allows users to configure their package repositories.
Added a Log Viewer which displays the pacman-g2 system log.
Added a new splash screen (Thanks to masta64 for the artwork)
From vmiklos at frugalware.org Thu Mar 6 14:11:57 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Thu Mar 6 14:12:00 2008
Subject: [Frugalware-git] frugalware-current: cyrus-sasl-2.1.22-12-x86_64
Message-ID: <20080306131157.EA764119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=e2465d66d15a15cfdb3a2fde6629c8c33c9bde5b
commit e2465d66d15a15cfdb3a2fde6629c8c33c9bde5b
Author: Miklos Vajna
Date: Thu Mar 6 14:11:54 2008 +0100
cyrus-sasl-2.1.22-12-x86_64
- fix up smp build
diff --git a/source/network/cyrus-sasl/FrugalBuild b/source/network/cyrus-sasl/FrugalBuild
index 2f12947..6112f08 100644
--- a/source/network/cyrus-sasl/FrugalBuild
+++ b/source/network/cyrus-sasl/FrugalBuild
@@ -29,10 +29,9 @@ subdepends=("$pkgname=$pkgver libmysqlclient libpq>=8.2" "$pkgname=$pkgver db>=4
"$pkgname=$pkgver $pkgname-gssapiv2")
subgroups=('network' 'network' 'network')
subarchs=('i686 x86_64' 'i686 x86_64' 'i686 x86_64')
-
build()
{
-
+ unset MAKEFLAGS
Fbuild --enable-login \
--enable-sql \
--enable-plain \
From priyank at frugalware.org Thu Mar 6 14:17:42 2008
From: priyank at frugalware.org (Priyank)
Date: Thu Mar 6 14:17:43 2008
Subject: [Frugalware-git] frugalware-current: gfpm-1.1.1-1-i686
Message-ID: <20080306131742.1F54D119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=7cd241143f5703e9e5c34f6ed4090d160826ae7c
commit 7cd241143f5703e9e5c34f6ed4090d160826ae7c
Author: Priyank
Date: Thu Mar 6 18:44:34 2008 +0530
gfpm-1.1.1-1-i686
* Version bump [ok with vmiklos]
diff --git a/source/xapps/gfpm/FrugalBuild b/source/xapps/gfpm/FrugalBuild
index 537894b..bf7b481 100644
--- a/source/xapps/gfpm/FrugalBuild
+++ b/source/xapps/gfpm/FrugalBuild
@@ -2,8 +2,8 @@
# Maintainer: Priyank Gosalia
pkgname=gfpm
-pkgver=1.1.0
-pkgrel=3
+pkgver=1.1.1
+pkgrel=1
pkgdesc="Graphical Frugalware Package Manager"
url="http://ftp.frugalware.org/pub/other/gfpm"
depends=('glib2' 'gtk+2' 'libglade' 'pacman-g2>=3.6.7-2' 'inotify-tools' 'frugalwareutils>=0.7.9')
@@ -14,8 +14,8 @@ archs=('i686' 'x86_64')
_F_gnome_iconcache="y"
Finclude gnome-scriptlet
up2date="lynx -dump $url | Flasttar"
-source=($url/$pkgname-$pkgver.tar.gz gfpm_hide_help_button.diff gfpm_post110fixes.diff)
-signatures=(${source[0]}.asc '' '')
+source=($url/$pkgname-$pkgver.tar.gz)
+signatures=(${source[0]}.asc)
build()
{
diff --git a/source/xapps/gfpm/gfpm_hide_help_button.diff b/source/xapps/gfpm/gfpm_hide_help_button.diff
deleted file mode 100644
index a3f3588..0000000
--- a/source/xapps/gfpm/gfpm_hide_help_button.diff
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -Naur gfpm-1.1.0/data/gfpm.glade gfpm-1.1.0.new/data/gfpm.glade
---- gfpm-1.1.0/data/gfpm.glade 2008-03-02 01:22:31.000000000 +0530
-+++ gfpm-1.1.0.new/data/gfpm.glade 2008-03-04 21:41:03.000000000 +0530
-@@ -201,7 +201,6 @@
-
-
-
-- True
- Help
- True
- gtk-help
diff --git a/source/xapps/gfpm/gfpm_post110fixes.diff b/source/xapps/gfpm/gfpm_post110fixes.diff
deleted file mode 100644
index c507301..0000000
--- a/source/xapps/gfpm/gfpm_post110fixes.diff
+++ /dev/null
@@ -1,128 +0,0 @@
-diff -Naur gfpm-1.1.0/src/gfpm-interface.c gfpm-1.1.0.new/src/gfpm-interface.c
---- gfpm-1.1.0/src/gfpm-interface.c 2008-03-02 01:22:31.000000000 +0530
-+++ gfpm-1.1.0.new/src/gfpm-interface.c 2008-03-04 22:47:09.000000000 +0530
-@@ -334,9 +334,19 @@
- /* Disable Apply, Refresh and File buttons if user is not root */
- if ( geteuid() != 0 )
- {
-+ /* disable some widgets */
- gtk_widget_set_sensitive (glade_xml_get_widget(xml, "button_apply"), FALSE);
- gtk_widget_set_sensitive (glade_xml_get_widget(xml, "button_refresh1"), FALSE);
- gtk_widget_set_sensitive (glade_xml_get_widget(xml, "button_file1"), FALSE);
-+ gtk_widget_set_sensitive (gfpm_get_widget("repos"), FALSE);
-+ gtk_widget_set_sensitive (gfpm_get_widget("clr1"), FALSE);
-+ gtk_widget_set_sensitive (gfpm_get_widget("opt1"), FALSE);
-+ }
-+ else
-+ {
-+ /* init repomanager only if gfpm is run as root user */
-+ gfpm_repomanager_init ();
-+
- }
-
- /* initialize modules */
-@@ -347,7 +357,6 @@
- gfpm_optimize_db_dlg_init ();
- gfpm_quickpane_init ();
- gfpm_icmonitor_init ();
-- gfpm_repomanager_init ();
- gfpm_logviewer_init ();
-
- gtk_widget_hide (gfpm_splash);
-@@ -1437,6 +1446,9 @@
- if (event->button != 3)
- return;
-
-+ if (geteuid() != 0)
-+ return;
-+
- model = gtk_tree_view_get_model (GTK_TREE_VIEW(gfpm_pkgs_tvw));
- selection = gtk_tree_view_get_selection (GTK_TREE_VIEW(gfpm_pkgs_tvw));
- if ( FALSE == gtk_tree_selection_get_selected (selection, &model, &iter) )
-@@ -1487,7 +1499,7 @@
- g_signal_connect (G_OBJECT(menu_item), "activate", G_CALLBACK(cb_gfpm_mark_for_reinstall), (gpointer)pkgname);
- gtk_menu_shell_append (GTK_MENU_SHELL(menu), menu_item);
- gtk_widget_show (menu_item);
--
-+
- menu_item = gtk_image_menu_item_new_with_label (_("Mark for removal"));
- image = gtk_image_new_from_stock ("gtk-remove", GTK_ICON_SIZE_MENU);
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM(menu_item), image);
-diff -Naur gfpm-1.1.0/src/gfpm-progress.c gfpm-1.1.0.new/src/gfpm-progress.c
---- gfpm-1.1.0/src/gfpm-progress.c 2008-03-02 01:22:31.000000000 +0530
-+++ gfpm-1.1.0.new/src/gfpm-progress.c 2008-03-04 22:47:11.000000000 +0530
-@@ -33,7 +33,7 @@
- extern GtkWidget *gfpm_mw;
-
- GtkProgressBar *progressbar = NULL;
--GtkWidget *progresswindow = NULL;
-+GtkWidget *progresswindow = NULL;
- static GtkWidget *main_label = NULL;
- static GtkWidget *sub_label = NULL;
- static GtkWidget *rate_label = NULL;
-@@ -45,7 +45,7 @@
- static GtkWidget *autoclose_checkbtn = NULL;
-
- GtkTextIter t_iter;
--GtkTextBuffer *buffer = NULL;
-+GtkTextBuffer *buffer = NULL;
-
- float rate;
- int offset;
-@@ -97,7 +97,8 @@
- static void
- cb_gfpm_close_button_clicked (GtkWidget *button, gpointer data)
- {
-- gfpm_progress_show (FALSE);
-+ pacman_trans_release ();
-+// gfpm_progress_show (FALSE);
-
- return;
- }
-@@ -167,13 +168,13 @@
- int
- gfpm_progress_update (netbuf *ctl, int xferred, void *arg)
- {
-- int size;
-- int per;
-- char text[6];
-- char rate_text[10];
-- struct timeval t1;
-- float tdiff;
-- gchar *rx_str = NULL;
-+ int size;
-+ int per;
-+ char text[6];
-+ char rate_text[10];
-+ struct timeval t1;
-+ float tdiff;
-+ gchar *rx_str = NULL;
-
- while (gtk_events_pending())
- gtk_main_iteration ();
-@@ -213,7 +214,6 @@
- while (gtk_events_pending())
- gtk_main_iteration ();
-
--
- return 1;
- }
-
-diff -Naur gfpm-1.1.0/src/gfpm-quickpane.c gfpm-1.1.0.new/src/gfpm-quickpane.c
---- gfpm-1.1.0/src/gfpm-quickpane.c 2008-03-02 01:22:31.000000000 +0530
-+++ gfpm-1.1.0.new/src/gfpm-quickpane.c 2008-03-04 22:47:11.000000000 +0530
-@@ -73,6 +73,14 @@
- "clicked",
- G_CALLBACK(cb_gfpm_quickpane_readme_clicked),
- NULL);
-+
-+ /* Disable the Quick pane Install,Remove,Upgrade buttons if gfpm is not run as root */
-+ if (geteuid() != 0)
-+ {
-+ gtk_widget_set_sensitive (quick_pane_install_btn, FALSE);
-+ gtk_widget_set_sensitive (quick_pane_remove_btn, FALSE);
-+ gtk_widget_set_sensitive (quick_pane_upgrade_btn, FALSE);
-+ }
-
- return;
- }
From priyank at frugalware.org Thu Mar 6 14:21:39 2008
From: priyank at frugalware.org (Priyank)
Date: Thu Mar 6 14:21:41 2008
Subject: [Frugalware-git] frugalware-current: TAG 1.1.1
Message-ID: <20080306132139.6BCC9119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=85b14c00db91516ff7463bc44d55d85b5803b72c
commit 85b14c00db91516ff7463bc44d55d85b5803b72c
Author: Priyank
Date: Thu Mar 6 18:50:53 2008 +0530
TAG 1.1.1
From priyank at frugalware.org Thu Mar 6 14:23:28 2008
From: priyank at frugalware.org (Priyank)
Date: Thu Mar 6 14:23:29 2008
Subject: [Frugalware-git] gfpm: TAG 1.1.1
Message-ID: <20080306132328.6C051119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=gfpm.git;a=commitdiff;h=7d5b8f96d90c29164518b07a6983297702849f80
commit 7d5b8f96d90c29164518b07a6983297702849f80
Author: Priyank
Date: Thu Mar 6 18:52:41 2008 +0530
TAG 1.1.1
From vmiklos at frugalware.org Thu Mar 6 14:35:26 2008
From: vmiklos at frugalware.org (Miklos Vajna)
Date: Thu Mar 6 14:35:27 2008
Subject: [Frugalware-git] frugalware-current: junit-3.8.2-1-x86_64
Message-ID: <20080306133526.4A3B2119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=339643bee824fe16cce1138fcf03e5ace607bbd2
commit 339643bee824fe16cce1138fcf03e5ace607bbd2
Author: Miklos Vajna
Date: Thu Mar 6 14:35:14 2008 +0100
junit-3.8.2-1-x86_64
- added x86_64 to archs()
- needed by apache-ant-1.7.0-1-x86_64
diff --git a/source/devel-extra/junit/FrugalBuild b/source/devel-extra/junit/FrugalBuild
index 3bc7d16..119ee0d 100644
--- a/source/devel-extra/junit/FrugalBuild
+++ b/source/devel-extra/junit/FrugalBuild
@@ -9,7 +9,7 @@ _F_sourceforge_ext=".zip"
Finclude java sourceforge
url="http://www.junit.org/"
groups=('devel-extra')
-archs=('i686')
+archs=('i686' 'x86_64')
source=(${source/-} build.xml)
sha1sums=('701578302e244e5173dca3040cce0774a5c39645' \
'b0c2fc9cec04aa535afe35e818c3ab6eed15330b')
From janny at frugalware.org Thu Mar 6 19:14:42 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Thu Mar 6 19:14:45 2008
Subject: [Frugalware-git] fwlive_pkgs: kernel-fwlive-2.6.24-3-i686
Message-ID: <20080306181442.14F27119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=b8da31668ab9a6b6ea79773598d06efc6ee24d6b
commit b8da31668ab9a6b6ea79773598d06efc6ee24d6b
Author: Janos Kovacs
Date: Thu Mar 6 19:04:30 2008 +0100
kernel-fwlive-2.6.24-3-i686
* version bump
diff --git a/source/base-extra/kernel-fwlive/CVE-2007-6206.diff b/source/base-extra/kernel-fwlive/CVE-2007-6206.diff
deleted file mode 100644
index cd6b4e5..0000000
--- a/source/base-extra/kernel-fwlive/CVE-2007-6206.diff
+++ /dev/null
@@ -1,37 +0,0 @@
-From: Ingo Molnar
-Date: Wed, 28 Nov 2007 12:59:18 +0000 (+0100)
-Subject: vfs: coredumping fix
-X-Git-Tag: v2.6.24-rc4~82
-X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=c46f739dd39db3b07ab5deb4e3ec81e1c04a91af
-
-vfs: coredumping fix
-
-fix: http://bugzilla.kernel.org/show_bug.cgi?id=3043
-
-only allow coredumping to the same uid that the coredumping
-task runs under.
-
-Signed-off-by: Ingo Molnar
-Acked-by: Alan Cox
-Acked-by: Christoph Hellwig
-Acked-by: Al Viro
-Signed-off-by: Linus Torvalds
----
-
-diff --git a/fs/exec.c b/fs/exec.c
-index 4ccaaa4..282240a 100644
---- a/fs/exec.c
-+++ b/fs/exec.c
-@@ -1780,6 +1780,12 @@ int do_coredump(long signr, int exit_code, struct pt_regs * regs)
- but keep the previous behaviour for now. */
- if (!ispipe && !S_ISREG(inode->i_mode))
- goto close_fail;
-+ /*
-+ * Dont allow local users get cute and trick others to coredump
-+ * into their pre-created files:
-+ */
-+ if (inode->i_uid != current->fsuid)
-+ goto close_fail;
- if (!file->f_op)
- goto close_fail;
- if (!file->f_op->write)
diff --git a/source/base-extra/kernel-fwlive/CVE-2007-6434.diff b/source/base-extra/kernel-fwlive/CVE-2007-6434.diff
deleted file mode 100644
index f5b8313..0000000
--- a/source/base-extra/kernel-fwlive/CVE-2007-6434.diff
+++ /dev/null
@@ -1,36 +0,0 @@
-From: Eric Paris
-Date: Wed, 5 Dec 2007 07:45:31 +0000 (-0800)
-Subject: VM/Security: add security hook to do_brk
-X-Git-Tag: v2.6.24-rc5~71
-X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=ecaf18c15aac8bb9bed7b7aa0e382fe252e275d5
-
-VM/Security: add security hook to do_brk
-
-Given a specifically crafted binary do_brk() can be used to get low pages
-available in userspace virtual memory and can thus be used to circumvent
-the mmap_min_addr low memory protection. Add security checks in do_brk().
-
-Signed-off-by: Eric Paris
-Acked-by: Alan Cox
-Cc: Stephen Smalley
-Cc: James Morris
-Cc: Chris Wright
-Signed-off-by: Andrew Morton
-Signed-off-by: Linus Torvalds
----
-
-diff --git a/mm/mmap.c b/mm/mmap.c
-index facc1a7..acfc13f 100644
---- a/mm/mmap.c
-+++ b/mm/mmap.c
-@@ -1934,6 +1934,10 @@ unsigned long do_brk(unsigned long addr, unsigned long len)
- if (is_hugepage_only_range(mm, addr, len))
- return -EINVAL;
-
-+ error = security_file_mmap(0, 0, 0, 0, addr, 1);
-+ if (error)
-+ return error;
-+
- flags = VM_DATA_DEFAULT_FLAGS | VM_ACCOUNT | mm->def_flags;
-
- error = arch_mmap_check(addr, len, flags);
diff --git a/source/base-extra/kernel-fwlive/FrugalBuild b/source/base-extra/kernel-fwlive/FrugalBuild
index 3b3710c..5282a45 100644
--- a/source/base-extra/kernel-fwlive/FrugalBuild
+++ b/source/base-extra/kernel-fwlive/FrugalBuild
@@ -1,16 +1,17 @@
-# Compiling Time: 11.75 SBU
+# Compiling Time: 18.95 SBU
# Maintainer: Janny
-pkgver=2.6.23
-pkgrel=6
-_F_kernelver_stable=14
+pkgver=2.6.24
+pkgrel=3
+_F_kernel_stable=3
_F_kernel_name="-fwlive"
_F_kernel_uname="-fw$pkgrel"
-_F_kernel_patches=('aic7xxx-suspend.patch' 'CVE-2007-6434.diff' 'CVE-2007-6206.diff' \
- 'squashfs3.3-patch' 'sqlzma2k-3.3.patch')
+_F_kernel_patches=(revert-NET_Add-if_addrlabel.h-to_sanitized_headers.patch \
+ http://frugalware.org/~janny/patchs/kernel/${pkgver}/splice-2.6.23.patch \
+ http://frugalware.org/~janny/patchs/kernel/${pkgver}/sec_perm-2.6.24.patch \
+ http://frugalware.org/~janny/patchs/kernel/${pkgver}/squashfs3.3-patch \
+ http://frugalware.org/~janny/patchs/kernel/${pkgver}/sqlzma2k-3.3.patch)
Finclude kernel
-source=(config ${source[@]})
-signatures=('' "${signatures[@]}")
groups=('base-extra')
# NOTE: if you bump this package, you need to bump the squashfs one, too!
diff --git a/source/base-extra/kernel-fwlive/aic7xxx-suspend.patch b/source/base-extra/kernel-fwlive/aic7xxx-suspend.patch
deleted file mode 100644
index 0ba3571..0000000
--- a/source/base-extra/kernel-fwlive/aic7xxx-suspend.patch
+++ /dev/null
@@ -1,691 +0,0 @@
-From 2dc1cdee053846fafc98a819bdad1533ac7c2f04 Mon Sep 17 00:00:00 2001
-From: Hannes Reinecke
-Date: Fri, 19 Oct 2007 09:13:17 +0200
-Subject: [PATCH 1/4] aic7xxx: Add suspend/resume support
-
-The aic7xxx driver already contains fragments for suspend/resume
-support. So we only need to update them to the current interface
-and have full PCI suspend/resume.
-
-Signed-off-by: Hannes Reinecke
-Tested-by: Jens Axboe
----
- drivers/scsi/aic7xxx/aic7770.c | 16 -----
- drivers/scsi/aic7xxx/aic79xx.h | 9 +++
- drivers/scsi/aic7xxx/aic79xx_core.c | 33 +---------
- drivers/scsi/aic7xxx/aic79xx_osm_pci.c | 112 ++++++++++++++++++++++++++------
- drivers/scsi/aic7xxx/aic79xx_pci.c | 24 -------
- drivers/scsi/aic7xxx/aic79xx_pci.h | 25 +++++++
- drivers/scsi/aic7xxx/aic7xxx.h | 18 +----
- drivers/scsi/aic7xxx/aic7xxx_core.c | 41 +-----------
- drivers/scsi/aic7xxx/aic7xxx_osm_pci.c | 91 +++++++++++++++++++++-----
- drivers/scsi/aic7xxx/aic7xxx_pci.c | 16 +----
- 10 files changed, 208 insertions(+), 177 deletions(-)
-
-diff --git a/drivers/scsi/aic7xxx/aic7770.c b/drivers/scsi/aic7xxx/aic7770.c
-index c4d1723..6d86a9b 100644
---- a/drivers/scsi/aic7xxx/aic7770.c
-+++ b/drivers/scsi/aic7xxx/aic7770.c
-@@ -60,8 +60,6 @@
- #define ID_OLV_274xD 0x04907783 /* Olivetti OEM (Differential) */
-
- static int aic7770_chip_init(struct ahc_softc *ahc);
--static int aic7770_suspend(struct ahc_softc *ahc);
--static int aic7770_resume(struct ahc_softc *ahc);
- static int aha2840_load_seeprom(struct ahc_softc *ahc);
- static ahc_device_setup_t ahc_aic7770_VL_setup;
- static ahc_device_setup_t ahc_aic7770_EISA_setup;
-@@ -155,8 +153,6 @@ aic7770_config(struct ahc_softc *ahc, struct aic7770_identity *entry, u_int io)
- return (error);
-
- ahc->bus_chip_init = aic7770_chip_init;
-- ahc->bus_suspend = aic7770_suspend;
-- ahc->bus_resume = aic7770_resume;
-
- error = ahc_reset(ahc, /*reinit*/FALSE);
- if (error != 0)
-@@ -272,18 +268,6 @@ aic7770_chip_init(struct ahc_softc *ahc)
- return (ahc_chip_init(ahc));
- }
-
--static int
--aic7770_suspend(struct ahc_softc *ahc)
--{
-- return (ahc_suspend(ahc));
--}
--
--static int
--aic7770_resume(struct ahc_softc *ahc)
--{
-- return (ahc_resume(ahc));
--}
--
- /*
- * Read the 284x SEEPROM.
- */
-diff --git a/drivers/scsi/aic7xxx/aic79xx.h b/drivers/scsi/aic7xxx/aic79xx.h
-index 27adbb2..a96a2ff 100644
---- a/drivers/scsi/aic7xxx/aic79xx.h
-+++ b/drivers/scsi/aic7xxx/aic79xx.h
-@@ -1003,8 +1003,15 @@ struct ahd_suspend_channel_state {
- uint8_t seqctl;
- };
-
-+struct ahd_suspend_pci_state {
-+ uint32_t devconfig;
-+ uint8_t command;
-+ uint8_t csize_lattime;
-+};
-+
- struct ahd_suspend_state {
- struct ahd_suspend_channel_state channel[2];
-+ struct ahd_suspend_pci_state pci_state;
- uint8_t optionmode;
- uint8_t dscommand0;
- uint8_t dspcistatus;
-@@ -1343,6 +1350,8 @@ struct ahd_softc *ahd_alloc(void *platform_arg, char *name);
- int ahd_softc_init(struct ahd_softc *);
- void ahd_controller_info(struct ahd_softc *ahd, char *buf);
- int ahd_init(struct ahd_softc *ahd);
-+void ahd_shutdown(void *arg);
-+void ahd_restart(struct ahd_softc *ahd);
- int ahd_default_config(struct ahd_softc *ahd);
- int ahd_parse_vpddata(struct ahd_softc *ahd,
- struct vpd_config *vpd);
-diff --git a/drivers/scsi/aic7xxx/aic79xx_core.c b/drivers/scsi/aic7xxx/aic79xx_core.c
-index 05f692b..91f6f4f 100644
---- a/drivers/scsi/aic7xxx/aic79xx_core.c
-+++ b/drivers/scsi/aic7xxx/aic79xx_core.c
-@@ -255,7 +255,6 @@ static void ahd_freeze_devq(struct ahd_softc *ahd,
- static void ahd_handle_scb_status(struct ahd_softc *ahd,
- struct scb *scb);
- static struct ahd_phase_table_entry* ahd_lookup_phase_entry(int phase);
--static void ahd_shutdown(void *arg);
- static void ahd_update_coalescing_values(struct ahd_softc *ahd,
- u_int timer,
- u_int maxcmds,
-@@ -357,7 +356,7 @@ ahd_complete_scb(struct ahd_softc *ahd, struct scb *scb)
- /*
- * Restart the sequencer program from address zero
- */
--static void
-+void
- ahd_restart(struct ahd_softc *ahd)
- {
-
-@@ -5456,7 +5455,7 @@ ahd_free(struct ahd_softc *ahd)
- return;
- }
-
--static void
-+void
- ahd_shutdown(void *arg)
- {
- struct ahd_softc *ahd;
-@@ -7175,34 +7174,6 @@ ahd_pause_and_flushwork(struct ahd_softc *ahd)
- ahd->flags &= ~AHD_ALL_INTERRUPTS;
- }
-
--#if 0
--int
--ahd_suspend(struct ahd_softc *ahd)
--{
--
-- ahd_pause_and_flushwork(ahd);
--
-- if (LIST_FIRST(&ahd->pending_scbs) != NULL) {
-- ahd_unpause(ahd);
-- return (EBUSY);
-- }
-- ahd_shutdown(ahd);
-- return (0);
--}
--#endif /* 0 */
--
--#if 0
--int
--ahd_resume(struct ahd_softc *ahd)
--{
--
-- ahd_reset(ahd, /*reinit*/TRUE);
-- ahd_intr_enable(ahd, TRUE);
-- ahd_restart(ahd);
-- return (0);
--}
--#endif /* 0 */
--
- /************************** Busy Target Table *********************************/
- /*
- * Set SCBPTR to the SCB that contains the busy
-diff --git a/drivers/scsi/aic7xxx/aic79xx_osm_pci.c b/drivers/scsi/aic7xxx/aic79xx_osm_pci.c
-index c62ce41..8aa6302 100644
---- a/drivers/scsi/aic7xxx/aic79xx_osm_pci.c
-+++ b/drivers/scsi/aic7xxx/aic79xx_osm_pci.c
-@@ -43,15 +43,6 @@
- #include "aic79xx_inline.h"
- #include "aic79xx_pci.h"
-
--static int ahd_linux_pci_dev_probe(struct pci_dev *pdev,
-- const struct pci_device_id *ent);
--static int ahd_linux_pci_reserve_io_regions(struct ahd_softc *ahd,
-- u_long *base, u_long *base2);
--static int ahd_linux_pci_reserve_mem_region(struct ahd_softc *ahd,
-- u_long *bus_addr,
-- uint8_t __iomem **maddr);
--static void ahd_linux_pci_dev_remove(struct pci_dev *pdev);
--
- /* Define the macro locally since it's different for different class of chips.
- */
- #define ID(x) \
-@@ -83,12 +74,82 @@ static struct pci_device_id ahd_linux_pci_id_table[] = {
-
- MODULE_DEVICE_TABLE(pci, ahd_linux_pci_id_table);
-
--static struct pci_driver aic79xx_pci_driver = {
-- .name = "aic79xx",
-- .probe = ahd_linux_pci_dev_probe,
-- .remove = ahd_linux_pci_dev_remove,
-- .id_table = ahd_linux_pci_id_table
--};
-+#ifdef CONFIG_PM
-+int
-+ahd_linux_pci_dev_suspend(struct pci_dev *pdev, pm_message_t mesg)
-+{
-+ struct ahd_softc *ahd = pci_get_drvdata(pdev);
-+
-+ /*
-+ * Shutdown the HBA
-+ */
-+ ahd_pause_and_flushwork(ahd);
-+
-+ if (LIST_FIRST(&ahd->pending_scbs) != NULL) {
-+ ahd_unpause(ahd);
-+ return -EBUSY;
-+ }
-+
-+ ahd_shutdown(ahd);
-+
-+ /*
-+ * Save chip register configuration data for chip resets
-+ * that occur during runtime and resume events.
-+ */
-+ pci_read_config_dword(ahd->dev_softc, DEVCONFIG,
-+ &ahd->suspend_state.pci_state.devconfig);
-+ pci_read_config_byte(ahd->dev_softc, PCIR_COMMAND,
-+ &ahd->suspend_state.pci_state.command);
-+ pci_read_config_byte(ahd->dev_softc, CSIZE_LATTIME,
-+ &ahd->suspend_state.pci_state.csize_lattime);
-+
-+ pci_save_state(pdev);
-+ pci_disable_device(pdev);
-+
-+ if (mesg.event == PM_EVENT_SUSPEND)
-+ pci_set_power_state(pdev, PCI_D3hot);
-+
-+ return 0;
-+}
-+
-+int
-+ahd_linux_pci_dev_resume(struct pci_dev *pdev)
-+{
-+ struct ahd_softc *ahd = pci_get_drvdata(pdev);
-+ int rc;
-+
-+ pci_set_power_state(pdev, PCI_D0);
-+ pci_restore_state(pdev);
-+
-+ rc = pci_enable_device(pdev);
-+ if (rc) {
-+ dev_printk(KERN_ERR, &pdev->dev,
-+ "failed to enable device after resume (%d)\n", rc);
-+ return rc;
-+ }
-+
-+ pci_set_master(pdev);
-+
-+ /*
-+ * Restore additional PCI registers
-+ */
-+ pci_write_config_dword(ahd->dev_softc, DEVCONFIG,
-+ ahd->suspend_state.pci_state.devconfig);
-+ pci_write_config_byte(ahd->dev_softc, PCIR_COMMAND,
-+ ahd->suspend_state.pci_state.command);
-+ pci_write_config_byte(ahd->dev_softc, CSIZE_LATTIME,
-+ ahd->suspend_state.pci_state.csize_lattime);
-+
-+ /*
-+ * Restart the HBA
-+ */
-+ ahd_reset(ahd, /*reinit*/TRUE);
-+ ahd_intr_enable(ahd, TRUE);
-+ ahd_restart(ahd);
-+
-+ return 0;
-+}
-+#endif /* CONFIG_PM */
-
- static void
- ahd_linux_pci_dev_remove(struct pci_dev *pdev)
-@@ -97,7 +158,7 @@ ahd_linux_pci_dev_remove(struct pci_dev *pdev)
- u_long s;
-
- if (ahd->platform_data && ahd->platform_data->host)
-- scsi_remove_host(ahd->platform_data->host);
-+ scsi_remove_host(ahd->platform_data->host);
-
- ahd_lock(ahd, &s);
- ahd_intr_enable(ahd, FALSE);
-@@ -195,6 +256,17 @@ ahd_linux_pci_dev_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
- return (0);
- }
-
-+static struct pci_driver aic79xx_pci_driver = {
-+ .name = "aic79xx",
-+ .probe = ahd_linux_pci_dev_probe,
-+#ifdef CONFIG_PM
-+ .suspend = ahd_linux_pci_dev_suspend,
-+ .resume = ahd_linux_pci_dev_resume,
-+#endif
-+ .remove = ahd_linux_pci_dev_remove,
-+ .id_table = ahd_linux_pci_id_table
-+};
-+
- int
- ahd_linux_pci_init(void)
- {
-@@ -276,7 +348,7 @@ ahd_pci_map_registers(struct ahd_softc *ahd)
- /*
- * If its allowed, we prefer memory mapped access.
- */
-- command = ahd_pci_read_config(ahd->dev_softc, PCIR_COMMAND, 4);
-+ pci_read_config_dword(ahd->dev_softc, PCIR_COMMAND, &command);
- command &= ~(PCIM_CMD_PORTEN|PCIM_CMD_MEMEN);
- base = 0;
- maddr = NULL;
-@@ -287,8 +359,8 @@ ahd_pci_map_registers(struct ahd_softc *ahd)
- ahd->bshs[0].maddr = maddr;
- ahd->tags[1] = BUS_SPACE_MEMIO;
- ahd->bshs[1].maddr = maddr + 0x100;
-- ahd_pci_write_config(ahd->dev_softc, PCIR_COMMAND,
-- command | PCIM_CMD_MEMEN, 4);
-+ pci_write_config_dword(ahd->dev_softc, PCIR_COMMAND,
-+ command | PCIM_CMD_MEMEN);
-
- if (ahd_pci_test_register_access(ahd) != 0) {
-
-@@ -332,7 +404,7 @@ ahd_pci_map_registers(struct ahd_softc *ahd)
- base, base2);
- }
- }
-- ahd_pci_write_config(ahd->dev_softc, PCIR_COMMAND, command, 4);
-+ pci_write_config_dword(ahd->dev_softc, PCIR_COMMAND, command);
- return (error);
- }
-
-diff --git a/drivers/scsi/aic7xxx/aic79xx_pci.c b/drivers/scsi/aic7xxx/aic79xx_pci.c
-index 0bada00..c8617e0 100644
---- a/drivers/scsi/aic7xxx/aic79xx_pci.c
-+++ b/drivers/scsi/aic7xxx/aic79xx_pci.c
-@@ -209,12 +209,6 @@ static struct ahd_pci_identity ahd_pci_ident_table [] =
-
- static const u_int ahd_num_pci_devs = ARRAY_SIZE(ahd_pci_ident_table);
-
--#define DEVCONFIG 0x40
--#define PCIXINITPAT 0x0000E000ul
--#define PCIXINIT_PCI33_66 0x0000E000ul
--#define PCIXINIT_PCIX50_66 0x0000C000ul
--#define PCIXINIT_PCIX66_100 0x0000A000ul
--#define PCIXINIT_PCIX100_133 0x00008000ul
- #define PCI_BUS_MODES_INDEX(devconfig) \
- (((devconfig) & PCIXINITPAT) >> 13)
- static const char *pci_bus_modes[] =
-@@ -229,24 +223,6 @@ static const char *pci_bus_modes[] =
- "PCI 33 or 66Mhz"
- };
-
--#define TESTMODE 0x00000800ul
--#define IRDY_RST 0x00000200ul
--#define FRAME_RST 0x00000100ul
--#define PCI64BIT 0x00000080ul
--#define MRDCEN 0x00000040ul
--#define ENDIANSEL 0x00000020ul
--#define MIXQWENDIANEN 0x00000008ul
--#define DACEN 0x00000004ul
--#define STPWLEVEL 0x00000002ul
--#define QWENDIANSEL 0x00000001ul
--
--#define DEVCONFIG1 0x44
--#define PREQDIS 0x01
--
--#define CSIZE_LATTIME 0x0c
--#define CACHESIZE 0x000000fful
--#define LATTIME 0x0000ff00ul
--
- static int ahd_check_extport(struct ahd_softc *ahd);
- static void ahd_configure_termination(struct ahd_softc *ahd,
- u_int adapter_control);
-diff --git a/drivers/scsi/aic7xxx/aic79xx_pci.h b/drivers/scsi/aic7xxx/aic79xx_pci.h
-index 16b7c70..67ea5ae 100644
---- a/drivers/scsi/aic7xxx/aic79xx_pci.h
-+++ b/drivers/scsi/aic7xxx/aic79xx_pci.h
-@@ -69,4 +69,29 @@
- #define ID_AHA_39320D_HP 0x8011900500AC0E11ull
- #define ID_AHA_39320D_B_HP 0x801C900500AC0E11ull
-
-+#define DEVCONFIG 0x40
-+#define PCIXINITPAT 0x0000E000ul
-+#define PCIXINIT_PCI33_66 0x0000E000ul
-+#define PCIXINIT_PCIX50_66 0x0000C000ul
-+#define PCIXINIT_PCIX66_100 0x0000A000ul
-+#define PCIXINIT_PCIX100_133 0x00008000ul
-+
-+#define TESTMODE 0x00000800ul
-+#define IRDY_RST 0x00000200ul
-+#define FRAME_RST 0x00000100ul
-+#define PCI64BIT 0x00000080ul
-+#define MRDCEN 0x00000040ul
-+#define ENDIANSEL 0x00000020ul
-+#define MIXQWENDIANEN 0x00000008ul
-+#define DACEN 0x00000004ul
-+#define STPWLEVEL 0x00000002ul
-+#define QWENDIANSEL 0x00000001ul
-+
-+#define DEVCONFIG1 0x44
-+#define PREQDIS 0x01
-+
-+#define CSIZE_LATTIME 0x0c
-+#define CACHESIZE 0x000000fful
-+#define LATTIME 0x0000ff00ul
-+
- #endif /* _AIC79XX_PCI_H_ */
-diff --git a/drivers/scsi/aic7xxx/aic7xxx.h b/drivers/scsi/aic7xxx/aic7xxx.h
-index e1bd57b..80ceeaf 100644
---- a/drivers/scsi/aic7xxx/aic7xxx.h
-+++ b/drivers/scsi/aic7xxx/aic7xxx.h
-@@ -899,8 +899,6 @@ union ahc_bus_softc {
-
- typedef void (*ahc_bus_intr_t)(struct ahc_softc *);
- typedef int (*ahc_bus_chip_init_t)(struct ahc_softc *);
--typedef int (*ahc_bus_suspend_t)(struct ahc_softc *);
--typedef int (*ahc_bus_resume_t)(struct ahc_softc *);
- typedef void ahc_callback_t (void *);
-
- struct ahc_softc {
-@@ -962,16 +960,6 @@ struct ahc_softc {
- ahc_bus_chip_init_t bus_chip_init;
-
- /*
-- * Bus specific suspend routine.
-- */
-- ahc_bus_suspend_t bus_suspend;
--
-- /*
-- * Bus specific resume routine.
-- */
-- ahc_bus_resume_t bus_resume;
--
-- /*
- * Target mode related state kept on a per enabled lun basis.
- * Targets that are not enabled will have null entries.
- * As an initiator, we keep one target entry for our initiator
-@@ -1153,6 +1141,7 @@ struct ahc_pci_identity *ahc_find_pci_device(ahc_dev_softc_t);
- int ahc_pci_config(struct ahc_softc *,
- struct ahc_pci_identity *);
- int ahc_pci_test_register_access(struct ahc_softc *);
-+void ahc_pci_resume(struct ahc_softc *ahc);
-
- /*************************** EISA/VL Front End ********************************/
- struct aic7770_identity *aic7770_find_device(uint32_t);
-@@ -1179,14 +1168,13 @@ int ahc_chip_init(struct ahc_softc *ahc);
- int ahc_init(struct ahc_softc *ahc);
- void ahc_intr_enable(struct ahc_softc *ahc, int enable);
- void ahc_pause_and_flushwork(struct ahc_softc *ahc);
--int ahc_suspend(struct ahc_softc *ahc);
--int ahc_resume(struct ahc_softc *ahc);
- void ahc_set_unit(struct ahc_softc *, int);
- void ahc_set_name(struct ahc_softc *, char *);
- void ahc_alloc_scbs(struct ahc_softc *ahc);
- void ahc_free(struct ahc_softc *ahc);
- int ahc_reset(struct ahc_softc *ahc, int reinit);
--void ahc_shutdown(void *arg);
-+void ahc_restart(struct ahc_softc *ahc);
-+void ahc_shutdown(struct ahc_softc *ahc);
-
- /*************************** Interrupt Services *******************************/
- void ahc_clear_intstat(struct ahc_softc *ahc);
-diff --git a/drivers/scsi/aic7xxx/aic7xxx_core.c b/drivers/scsi/aic7xxx/aic7xxx_core.c
-index f350b5e..40f7072 100644
---- a/drivers/scsi/aic7xxx/aic7xxx_core.c
-+++ b/drivers/scsi/aic7xxx/aic7xxx_core.c
-@@ -3984,13 +3984,10 @@ ahc_free(struct ahc_softc *ahc)
- }
-
- void
--ahc_shutdown(void *arg)
-+ahc_shutdown(struct ahc_softc *ahc)
- {
-- struct ahc_softc *ahc;
- int i;
-
-- ahc = (struct ahc_softc *)arg;
--
- /* This will reset most registers to 0, but not all */
- ahc_reset(ahc, /*reinit*/FALSE);
- ahc_outb(ahc, SCSISEQ, 0);
-@@ -5078,42 +5075,6 @@ ahc_pause_and_flushwork(struct ahc_softc *ahc)
- ahc->flags &= ~AHC_ALL_INTERRUPTS;
- }
-
--int
--ahc_suspend(struct ahc_softc *ahc)
--{
--
-- ahc_pause_and_flushwork(ahc);
--
-- if (LIST_FIRST(&ahc->pending_scbs) != NULL) {
-- ahc_unpause(ahc);
-- return (EBUSY);
-- }
--
--#ifdef AHC_TARGET_MODE
-- /*
-- * XXX What about ATIOs that have not yet been serviced?
-- * Perhaps we should just refuse to be suspended if we
-- * are acting in a target role.
-- */
-- if (ahc->pending_device != NULL) {
-- ahc_unpause(ahc);
-- return (EBUSY);
-- }
--#endif
-- ahc_shutdown(ahc);
-- return (0);
--}
--
--int
--ahc_resume(struct ahc_softc *ahc)
--{
--
-- ahc_reset(ahc, /*reinit*/TRUE);
-- ahc_intr_enable(ahc, TRUE);
-- ahc_restart(ahc);
-- return (0);
--}
--
- /************************** Busy Target Table *********************************/
- /*
- * Return the untagged transaction id for a given target/channel lun.
-diff --git a/drivers/scsi/aic7xxx/aic7xxx_osm_pci.c b/drivers/scsi/aic7xxx/aic7xxx_osm_pci.c
-index ea5687d..847485f 100644
---- a/drivers/scsi/aic7xxx/aic7xxx_osm_pci.c
-+++ b/drivers/scsi/aic7xxx/aic7xxx_osm_pci.c
-@@ -41,15 +41,7 @@
-
- #include "aic7xxx_osm.h"
- #include "aic7xxx_pci.h"
--
--static int ahc_linux_pci_dev_probe(struct pci_dev *pdev,
-- const struct pci_device_id *ent);
--static int ahc_linux_pci_reserve_io_region(struct ahc_softc *ahc,
-- u_long *base);
--static int ahc_linux_pci_reserve_mem_region(struct ahc_softc *ahc,
-- u_long *bus_addr,
-- uint8_t __iomem **maddr);
--static void ahc_linux_pci_dev_remove(struct pci_dev *pdev);
-+#include "aic7xxx_inline.h"
-
- /* Define the macro locally since it's different for different class of chips.
- */
-@@ -130,12 +122,68 @@ static struct pci_device_id ahc_linux_pci_id_table[] = {
-
- MODULE_DEVICE_TABLE(pci, ahc_linux_pci_id_table);
-
--static struct pci_driver aic7xxx_pci_driver = {
-- .name = "aic7xxx",
-- .probe = ahc_linux_pci_dev_probe,
-- .remove = ahc_linux_pci_dev_remove,
-- .id_table = ahc_linux_pci_id_table
--};
-+#ifdef CONFIG_PM
-+static int
-+ahc_linux_pci_dev_suspend(struct pci_dev *pdev, pm_message_t mesg)
-+{
-+ struct ahc_softc *ahc = pci_get_drvdata(pdev);
-+
-+ ahc_pause_and_flushwork(ahc);
-+
-+ if (LIST_FIRST(&ahc->pending_scbs) != NULL) {
-+ ahc_unpause(ahc);
-+ return -EBUSY;
-+ }
-+
-+#ifdef AHC_TARGET_MODE
-+ /*
-+ * XXX What about ATIOs that have not yet been serviced?
-+ * Perhaps we should just refuse to be suspended if we
-+ * are acting in a target role.
-+ */
-+ if (ahc->pending_device != NULL) {
-+ ahc_unpause(ahc);
-+ return -EBUSY;
-+ }
-+#endif
-+ ahc_shutdown(ahc);
-+
-+ pci_save_state(pdev);
-+ pci_disable_device(pdev);
-+
-+ if (mesg.event == PM_EVENT_SUSPEND)
-+ pci_set_power_state(pdev, PCI_D3hot);
-+
-+ return 0;
-+}
-+
-+static int
-+ahc_linux_pci_dev_resume(struct pci_dev *pdev)
-+{
-+ struct ahc_softc *ahc = pci_get_drvdata(pdev);
-+ int rc;
-+
-+ pci_set_power_state(pdev, PCI_D0);
-+ pci_restore_state(pdev);
-+
-+ rc = pci_enable_device(pdev);
-+ if (rc) {
-+ dev_printk(KERN_ERR, &pdev->dev,
-+ "failed to enable device after resume (%d)\n", rc);
-+ return rc;
-+ }
-+
-+ pci_set_master(pdev);
-+
-+ ahc_pci_resume(ahc);
-+
-+ ahc_reset(ahc, /*reinit*/TRUE);
-+ ahc_intr_enable(ahc, TRUE);
-+ ahc_restart(ahc);
-+
-+ return rc;
-+}
-+#endif /* CONFIG_PM */
-
- static void
- ahc_linux_pci_dev_remove(struct pci_dev *pdev)
-@@ -144,7 +192,7 @@ ahc_linux_pci_dev_remove(struct pci_dev *pdev)
- u_long s;
-
- if (ahc->platform_data && ahc->platform_data->host)
-- scsi_remove_host(ahc->platform_data->host);
-+ scsi_remove_host(ahc->platform_data->host);
-
- ahc_lock(ahc, &s);
- ahc_intr_enable(ahc, FALSE);
-@@ -243,6 +291,17 @@ ahc_linux_pci_dev_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
- return (0);
- }
-
-+static struct pci_driver aic7xxx_pci_driver = {
-+ .name = "aic7xxx",
-+ .probe = ahc_linux_pci_dev_probe,
-+#ifdef CONFIG_PM
-+ .suspend = ahc_linux_pci_dev_suspend,
-+ .resume = ahc_linux_pci_dev_resume,
-+#endif
-+ .remove = ahc_linux_pci_dev_remove,
-+ .id_table = ahc_linux_pci_id_table
-+};
-+
- int
- ahc_linux_pci_init(void)
- {
-diff --git a/drivers/scsi/aic7xxx/aic7xxx_pci.c b/drivers/scsi/aic7xxx/aic7xxx_pci.c
-index 09c8172..ae35937 100644
---- a/drivers/scsi/aic7xxx/aic7xxx_pci.c
-+++ b/drivers/scsi/aic7xxx/aic7xxx_pci.c
-@@ -633,8 +633,6 @@ static void write_brdctl(struct ahc_softc *ahc, uint8_t value);
- static uint8_t read_brdctl(struct ahc_softc *ahc);
- static void ahc_pci_intr(struct ahc_softc *ahc);
- static int ahc_pci_chip_init(struct ahc_softc *ahc);
--static int ahc_pci_suspend(struct ahc_softc *ahc);
--static int ahc_pci_resume(struct ahc_softc *ahc);
-
- static int
- ahc_9005_subdevinfo_valid(uint16_t device, uint16_t vendor,
-@@ -791,8 +789,6 @@ ahc_pci_config(struct ahc_softc *ahc, struct ahc_pci_identity *entry)
-
- ahc->bus_intr = ahc_pci_intr;
- ahc->bus_chip_init = ahc_pci_chip_init;
-- ahc->bus_suspend = ahc_pci_suspend;
-- ahc->bus_resume = ahc_pci_resume;
-
- /* Remeber how the card was setup in case there is no SEEPROM */
- if ((ahc_inb(ahc, HCNTRL) & POWRDN) == 0) {
-@@ -2024,18 +2020,9 @@ ahc_pci_chip_init(struct ahc_softc *ahc)
- return (ahc_chip_init(ahc));
- }
-
--static int
--ahc_pci_suspend(struct ahc_softc *ahc)
--{
-- return (ahc_suspend(ahc));
--}
--
--static int
-+void
- ahc_pci_resume(struct ahc_softc *ahc)
- {
--
-- pci_set_power_state(ahc->dev_softc, AHC_POWER_STATE_D0);
--
- /*
- * We assume that the OS has restored our register
- * mappings, etc. Just update the config space registers
-@@ -2063,7 +2050,6 @@ ahc_pci_resume(struct ahc_softc *ahc)
- &sxfrctl1);
- ahc_release_seeprom(&sd);
- }
-- return (ahc_resume(ahc));
- }
-
- static int
-
diff --git a/source/base-extra/kernel-fwlive/revert-NET_Add-if_addrlabel.h-to_sanitized_headers.patch b/source/base-extra/kernel-fwlive/revert-NET_Add-if_addrlabel.h-to_sanitized_headers.patch
new file mode 100644
index 0000000..dad14df
--- /dev/null
+++ b/source/base-extra/kernel-fwlive/revert-NET_Add-if_addrlabel.h-to_sanitized_headers.patch
@@ -0,0 +1,11 @@
+diff -Naur linux-2.6.24/include/linux/Kbuild linux-2.6.24-revert/include/linux/Kbuild
+--- linux-2.6.24/include/linux/Kbuild 2008-02-27 13:51:11.000000000 +0100
++++ linux-2.6.24-revert/include/linux/Kbuild 2008-02-27 13:48:47.000000000 +0100
+@@ -217,7 +217,6 @@
+ unifdef-y += icmp.h
+ unifdef-y += icmpv6.h
+ unifdef-y += if_addr.h
+-unifdef-y += if_addrlabel.h
+ unifdef-y += if_arp.h
+ unifdef-y += if_bridge.h
+ unifdef-y += if_ec.h
diff --git a/source/base-extra/kernel-fwlive/sqlzma2k-3.3.patch b/source/base-extra/kernel-fwlive/sqlzma2k-3.3.patch
deleted file mode 100644
index 596589e..0000000
--- a/source/base-extra/kernel-fwlive/sqlzma2k-3.3.patch
+++ /dev/null
@@ -1,739 +0,0 @@
-Index: linux-2.6.23/fs/squashfs/Makefile
-===================================================================
-RCS file: linux-2.6.23/fs/squashfs/Makefile,v
-retrieving revision 1.1
-retrieving revision 1.2
-diff -u -p -r1.1 -r1.2
---- linux-2.6.23/fs/squashfs/Makefile 4 Nov 2007 13:21:40 -0000 1.1
-+++ linux-2.6.23/fs/squashfs/Makefile 5 Nov 2007 05:43:36 -0000 1.2
-@@ -2,6 +2,8 @@
- # Makefile for the linux squashfs routines.
- #
-
-+-include /tmp/sqvars.mk
-+
- obj-$(CONFIG_SQUASHFS) += squashfs.o
- squashfs-y += inode.o
- squashfs-y += squashfs2_0.o
-Index: linux-2.6.23/fs/squashfs/inode.c
-===================================================================
-RCS file: linux-2.6.23/fs/squashfs/inode.c,v
-retrieving revision 1.1
-retrieving revision 1.2
-diff -u -p -r1.1 -r1.2
---- linux-2.6.23/fs/squashfs/inode.c 4 Nov 2007 13:21:40 -0000 1.1
-+++ linux-2.6.23/fs/squashfs/inode.c 5 Nov 2007 05:43:36 -0000 1.2
-@@ -34,8 +34,30 @@
- #include
-
- #include "squashfs.h"
-+#include "sqlzma.h"
-+#include "sqmagic.h"
-
--int squashfs_cached_blks;
-+#undef KeepPreemptive
-+#if defined(CONFIG_PREEMPT) && !defined(UnsquashNoPreempt)
-+#define KeepPreemptive
-+#endif
-+
-+struct sqlzma {
-+#ifdef KeepPreemptive
-+ struct mutex mtx;
-+#endif
-+ unsigned char read_data[SQUASHFS_FILE_MAX_SIZE];
-+ struct sqlzma_un un;
-+};
-+static DEFINE_PER_CPU(struct sqlzma *, sqlzma);
-+
-+#define dpri(fmt, args...) /* printk("%s:%d: " fmt, __func__, __LINE__, ##args) */
-+#define dpri_un(un) dpri("un{%d, {%d %p}, {%d %p}, {%d %p}}\n", \
-+ (un)->un_lzma, (un)->un_a[0].sz, (un)->un_a[0].buf, \
-+ (un)->un_a[1].sz, (un)->un_a[1].buf, \
-+ (un)->un_a[2].sz, (un)->un_a[2].buf)
-+
-+static int squashfs_cached_blks;
-
- static void vfs_read_inode(struct inode *i);
- static struct dentry *squashfs_get_parent(struct dentry *child);
-@@ -219,7 +241,8 @@ SQSH_EXTERN unsigned int squashfs_read_d
- if (index < 0 || (index + 2) > sblk->bytes_used)
- goto read_failure;
-
-- bh[0] = get_block_length(s, &cur_index, &offset, &c_byte);
-+ bh[0] = get_block_length(s, (int *)&cur_index, (int *)&offset,
-+ (int *)&c_byte);
- if (bh[0] == NULL)
- goto read_failure;
-
-@@ -243,66 +266,75 @@ SQSH_EXTERN unsigned int squashfs_read_d
- }
-
- if (compressed) {
-- int zlib_err = 0;
-+ int zlib_err = Z_STREAM_END;
-+ int rest, start;
-+ enum {Src, Dst};
-+ struct sized_buf sbuf[2];
-+ struct sqlzma *percpu;
-
- /*
- * uncompress block
- */
-
-- mutex_lock(&msblk->read_data_mutex);
--
-- msblk->stream.next_out = buffer;
-- msblk->stream.avail_out = srclength;
--
-- for (bytes = 0; k < b; k++) {
-- avail_bytes = min(c_byte - bytes, msblk->devblksize - offset);
--
-+ for (k = 0; k < b; k++) {
- wait_on_buffer(bh[k]);
- if (!buffer_uptodate(bh[k]))
-- goto release_mutex;
--
-- msblk->stream.next_in = bh[k]->b_data + offset;
-- msblk->stream.avail_in = avail_bytes;
--
-- if (k == 0) {
-- zlib_err = zlib_inflateInit(&msblk->stream);
-- if (zlib_err != Z_OK) {
-- ERROR("zlib_inflateInit returned unexpected result 0x%x,"
-- " srclength %d\n", zlib_err, srclength);
-- goto release_mutex;
-- }
--
-- if (avail_bytes == 0) {
-- offset = 0;
-- brelse(bh[k]);
-- continue;
-- }
-- }
--
-- zlib_err = zlib_inflate(&msblk->stream, Z_NO_FLUSH);
-- if (zlib_err != Z_OK && zlib_err != Z_STREAM_END) {
-- ERROR("zlib_inflate returned unexpected result 0x%x,"
-- " srclength %d, avail_in %d, avail_out %d\n", zlib_err,
-- srclength, msblk->stream.avail_in, msblk->stream.avail_out);
-- goto release_mutex;
-- }
-+ goto block_release;
-+ }
-
-- bytes += avail_bytes;
-+ avail_bytes = 0;
-+ for (k = 0; !avail_bytes && k < b; k++) {
-+ avail_bytes = msblk->devblksize - offset;
-+ if (c_byte < avail_bytes)
-+ avail_bytes = c_byte;
-+ if (avail_bytes)
-+ break;
- offset = 0;
- brelse(bh[k]);
- }
-+ bytes = 0;
-+ if (!avail_bytes)
-+ goto block_release; // nothing to be process
-
-- if (zlib_err != Z_STREAM_END)
-- goto release_mutex;
--
-- zlib_err = zlib_inflateEnd(&msblk->stream);
-- if (zlib_err != Z_OK) {
-- ERROR("zlib_inflateEnd returned unexpected result 0x%x,"
-- " srclength %d\n", zlib_err, srclength);
-+ start = k;
-+ /* it disables preemption */
-+ percpu = get_cpu_var(sqlzma);
-+#ifdef KeepPreemptive
-+ put_cpu_var(sqlzma);
-+ mutex_lock(&percpu->mtx);
-+#endif
-+
-+ for (; k < b; k++) {
-+ memcpy(percpu->read_data + bytes, bh[k]->b_data + offset,
-+ avail_bytes);
-+ bytes += avail_bytes;
-+ offset = 0;
-+ brelse(bh[k]);
-+ avail_bytes = msblk->devblksize - offset;
-+ rest = c_byte - bytes;
-+ if (rest < avail_bytes)
-+ avail_bytes = rest;
-+ }
-+
-+ sbuf[Src].buf = percpu->read_data;
-+ sbuf[Src].sz = bytes;
-+ sbuf[Dst].buf = buffer;
-+ sbuf[Dst].sz = srclength;
-+ dpri_un(&percpu->un);
-+ dpri("src %d %p, dst %d %p\n", sbuf[Src].sz, sbuf[Src].buf,
-+ sbuf[Dst].sz, sbuf[Dst].buf);
-+ zlib_err = sqlzma_un(&percpu->un, sbuf + Src, sbuf + Dst);
-+ bytes = percpu->un.un_reslen;
-+
-+#ifdef KeepPreemptive
-+ mutex_unlock(&percpu->mtx);
-+#else
-+ put_cpu_var(sqlzma);
-+#endif
-+ if (unlikely(zlib_err)) {
-+ dpri("zlib_err %d\n", zlib_err);
- goto release_mutex;
- }
-- bytes = msblk->stream.total_out;
-- mutex_unlock(&msblk->read_data_mutex);
- } else {
- int i;
-
-@@ -330,7 +362,7 @@ SQSH_EXTERN unsigned int squashfs_read_d
- return bytes;
-
- release_mutex:
-- mutex_unlock(&msblk->read_data_mutex);
-+ //mutex_unlock(&msblk->read_data_mutex);
-
- block_release:
- for (; k < b; k++)
-@@ -471,12 +503,14 @@ static int get_fragment_location(struct
- struct squashfs_fragment_entry sfragment_entry;
-
- if (!squashfs_get_cached_block(s, &sfragment_entry, start_block, offset,
-- sizeof(sfragment_entry), &start_block, &offset))
-+ sizeof(sfragment_entry), &start_block,
-+ (unsigned int *)&offset))
- goto out;
- SQUASHFS_SWAP_FRAGMENT_ENTRY(&fragment_entry, &sfragment_entry);
- } else
- if (!squashfs_get_cached_block(s, &fragment_entry, start_block, offset,
-- sizeof(fragment_entry), &start_block, &offset))
-+ sizeof(fragment_entry), &start_block,
-+ (unsigned int *)&offset))
- goto out;
-
- *fragment_start_block = fragment_entry.start_block;
-@@ -616,11 +650,11 @@ static squashfs_inode_t squashfs_inode_l
- squashfs_inode_t sinode;
-
- if (!squashfs_get_cached_block(s, &sinode, start, offset,
-- sizeof(sinode), &start, &offset))
-+ sizeof(sinode), &start, (unsigned int *)&offset))
- goto out;
- SQUASHFS_SWAP_INODE_T((&inode), &sinode);
- } else if (!squashfs_get_cached_block(s, &inode, start, offset,
-- sizeof(inode), &start, &offset))
-+ sizeof(inode), &start, (unsigned int *)&offset))
- goto out;
-
- TRACE("squashfs_inode_lookup, inode = 0x%llx\n", inode);
-@@ -1089,12 +1123,13 @@ static int squashfs_fill_super(struct su
- {
- struct squashfs_sb_info *msblk;
- struct squashfs_super_block *sblk;
-- int i;
-+ int i, err;
- char b[BDEVNAME_SIZE];
- struct inode *root;
-
- TRACE("Entered squashfs_fill_superblock\n");
-
-+ err = -ENOMEM;
- s->s_fs_info = kzalloc(sizeof(struct squashfs_sb_info), GFP_KERNEL);
- if (s->s_fs_info == NULL) {
- ERROR("Failed to allocate superblock\n");
-@@ -1102,17 +1137,12 @@ static int squashfs_fill_super(struct su
- }
- msblk = s->s_fs_info;
-
-- msblk->stream.workspace = vmalloc(zlib_inflate_workspacesize());
-- if (msblk->stream.workspace == NULL) {
-- ERROR("Failed to allocate zlib workspace\n");
-- goto failure;
-- }
- sblk = &msblk->sblk;
-
- msblk->devblksize = sb_min_blocksize(s, BLOCK_SIZE);
- msblk->devblksize_log2 = ffz(~msblk->devblksize);
-
-- mutex_init(&msblk->read_data_mutex);
-+ //mutex_init(&msblk->read_data_mutex);
- mutex_init(&msblk->read_page_mutex);
- mutex_init(&msblk->block_cache_mutex);
- mutex_init(&msblk->fragment_mutex);
-@@ -1124,6 +1154,7 @@ static int squashfs_fill_super(struct su
- /* sblk->bytes_used is checked in squashfs_read_data to ensure reads are not
- * beyond filesystem end. As we're using squashfs_read_data to read sblk here,
- * first set sblk->bytes_used to a useful value */
-+ err = -EINVAL;
- sblk->bytes_used = sizeof(struct squashfs_super_block);
- if (!squashfs_read_data(s, (char *) sblk, SQUASHFS_START,
- sizeof(struct squashfs_super_block) |
-@@ -1133,21 +1164,35 @@ static int squashfs_fill_super(struct su
- }
-
- /* Check it is a SQUASHFS superblock */
-- if ((s->s_magic = sblk->s_magic) != SQUASHFS_MAGIC) {
-- if (sblk->s_magic == SQUASHFS_MAGIC_SWAP) {
-- struct squashfs_super_block ssblk;
--
-- WARNING("Mounting a different endian SQUASHFS filesystem on %s\n",
-- bdevname(s->s_bdev, b));
--
-- SQUASHFS_SWAP_SUPER_BLOCK(&ssblk, sblk);
-- memcpy(sblk, &ssblk, sizeof(struct squashfs_super_block));
-- msblk->swap = 1;
-- } else {
-- SERROR("Can't find a SQUASHFS superblock on %s\n",
-- bdevname(s->s_bdev, b));
-- goto failed_mount;
-- }
-+ s->s_magic = sblk->s_magic;
-+ msblk->swap = 0;
-+ dpri("magic 0x%x\n", sblk->s_magic);
-+ switch (sblk->s_magic) {
-+ struct squashfs_super_block ssblk;
-+
-+ case SQUASHFS_MAGIC_SWAP:
-+ /*FALLTHROUGH*/
-+ case SQUASHFS_MAGIC_LZMA_SWAP:
-+ WARNING("Mounting a different endian SQUASHFS "
-+ "filesystem on %s\n", bdevname(s->s_bdev, b));
-+
-+ SQUASHFS_SWAP_SUPER_BLOCK(&ssblk, sblk);
-+ memcpy(sblk, &ssblk, sizeof(struct squashfs_super_block));
-+ msblk->swap = 1;
-+ /*FALLTHROUGH*/
-+ case SQUASHFS_MAGIC:
-+ case SQUASHFS_MAGIC_LZMA:
-+ break;
-+ default:
-+ SERROR("Can't find a SQUASHFS superblock on %s\n",
-+ bdevname(s->s_bdev, b));
-+ goto failed_mount;
-+ }
-+
-+ {
-+ struct sqlzma *p;
-+ dpri("block_size %d\n", sblk->block_size);
-+ BUG_ON(sblk->block_size > sizeof(p->read_data));
- }
-
- /* Check the MAJOR & MINOR versions */
-@@ -1191,6 +1236,7 @@ static int squashfs_fill_super(struct su
- goto failed_mount;
-
- /* Allocate read_page block */
-+ err = -ENOMEM;
- msblk->read_page = vmalloc(sblk->block_size);
- if (msblk->read_page == NULL) {
- ERROR("Failed to allocate read_page block\n");
-@@ -1206,19 +1252,30 @@ static int squashfs_fill_super(struct su
- }
- msblk->guid = msblk->uid + sblk->no_uids;
-
-+ dpri("swap %d\n", msblk->swap);
-+ err = -EINVAL;
- if (msblk->swap) {
-- unsigned int suid[sblk->no_uids + sblk->no_guids];
-+ unsigned int *suid;
-+
-+ err = -ENOMEM;
-+ suid = kmalloc(sizeof(*suid) * (sblk->no_uids + sblk->no_guids),
-+ GFP_KERNEL);
-+ if (unlikely(!suid))
-+ goto failed_mount;
-
-- if (!squashfs_read_data(s, (char *) &suid, sblk->uid_start,
-+ err = -EINVAL;
-+ if (!squashfs_read_data(s, (char *)suid, sblk->uid_start,
- ((sblk->no_uids + sblk->no_guids) *
- sizeof(unsigned int)) |
- SQUASHFS_COMPRESSED_BIT_BLOCK, NULL, (sblk->no_uids + sblk->no_guids) * sizeof(unsigned int))) {
- ERROR("unable to read uid/gid table\n");
-+ kfree(suid);
- goto failed_mount;
- }
-
- SQUASHFS_SWAP_DATA(msblk->uid, suid, (sblk->no_uids +
- sblk->no_guids), (sizeof(unsigned int) * 8));
-+ kfree(suid);
- } else
- if (!squashfs_read_data(s, (char *) msblk->uid, sblk->uid_start,
- ((sblk->no_uids + sblk->no_guids) *
-@@ -1232,6 +1289,7 @@ static int squashfs_fill_super(struct su
- if (sblk->s_major == 1 && squashfs_1_0_supported(msblk))
- goto allocate_root;
-
-+ err = -ENOMEM;
- msblk->fragment = kzalloc(sizeof(struct squashfs_fragment_cache) *
- SQUASHFS_CACHED_FRAGMENTS, GFP_KERNEL);
- if (msblk->fragment == NULL) {
-@@ -1261,9 +1319,12 @@ static int squashfs_fill_super(struct su
- s->s_export_op = &squashfs_export_ops;
-
- allocate_root:
-+ dpri("alloate_root\n");
- root = new_inode(s);
-- if ((msblk->read_inode)(root, sblk->root_inode) == 0)
-+ if ((msblk->read_inode)(root, sblk->root_inode) == 0) {
-+ iput(root);
- goto failed_mount;
-+ }
- insert_inode_hash(root);
-
- s->s_root = d_alloc_root(root);
-@@ -1284,13 +1345,10 @@ failed_mount:
- vfree(msblk->read_page);
- kfree(msblk->block_cache);
- kfree(msblk->fragment_index_2);
-- vfree(msblk->stream.workspace);
- kfree(s->s_fs_info);
- s->s_fs_info = NULL;
-- return -EINVAL;
--
--failure:
-- return -ENOMEM;
-+ failure:
-+ return err;
- }
-
-
-@@ -1301,7 +1359,7 @@ static int squashfs_statfs(struct dentry
-
- TRACE("Entered squashfs_statfs\n");
-
-- buf->f_type = SQUASHFS_MAGIC;
-+ buf->f_type = sblk->s_magic;
- buf->f_bsize = sblk->block_size;
- buf->f_blocks = ((sblk->bytes_used - 1) >> sblk->block_log) + 1;
- buf->f_bfree = buf->f_bavail = 0;
-@@ -1328,7 +1386,8 @@ static int squashfs_symlink_readpage(str
-
- for (length = 0; length < index; length += bytes) {
- bytes = squashfs_get_cached_block(inode->i_sb, NULL, block,
-- offset, PAGE_CACHE_SIZE, &block, &offset);
-+ offset, PAGE_CACHE_SIZE, &block,
-+ (unsigned int *)&offset);
- if (bytes == 0) {
- ERROR("Unable to read symbolic link [%llx:%x]\n", block, offset);
- goto skip_read;
-@@ -1344,7 +1403,7 @@ static int squashfs_symlink_readpage(str
- avail_bytes = min_t(int, i_size_read(inode) - length, PAGE_CACHE_SIZE);
-
- bytes = squashfs_get_cached_block(inode->i_sb, pageaddr, block, offset,
-- avail_bytes, &block, &offset);
-+ avail_bytes, &block, (unsigned int *)&offset);
- if (bytes == 0)
- ERROR("Unable to read symbolic link [%llx:%x]\n", block, offset);
-
-@@ -1359,7 +1418,7 @@ skip_read:
- }
-
-
--struct meta_index *locate_meta_index(struct inode *inode, int index, int offset)
-+static struct meta_index *locate_meta_index(struct inode *inode, int index, int offset)
- {
- struct meta_index *meta = NULL;
- struct squashfs_sb_info *msblk = inode->i_sb->s_fs_info;
-@@ -1394,7 +1453,7 @@ not_allocated:
- }
-
-
--struct meta_index *empty_meta_index(struct inode *inode, int offset, int skip)
-+static struct meta_index *empty_meta_index(struct inode *inode, int offset, int skip)
- {
- struct squashfs_sb_info *msblk = inode->i_sb->s_fs_info;
- struct meta_index *meta = NULL;
-@@ -1448,7 +1507,7 @@ failed:
- }
-
-
--void release_meta_index(struct inode *inode, struct meta_index *meta)
-+static void release_meta_index(struct inode *inode, struct meta_index *meta)
- {
- meta->locked = 0;
- smp_mb();
-@@ -1463,18 +1522,24 @@ static int read_block_index(struct super
- int block = 0;
-
- if (msblk->swap) {
-- char sblock_list[blocks << 2];
-+ char *sblock_list;
-+
-+ sblock_list = kmalloc(blocks << 2, GFP_KERNEL);
-+ if (unlikely(!sblock_list))
-+ goto failure;
-
- if (!squashfs_get_cached_block(s, sblock_list, *start_block,
-- *offset, blocks << 2, start_block, offset)) {
-+ *offset, blocks << 2, start_block, (unsigned int *)offset)) {
- ERROR("Fail reading block list [%llx:%x]\n", *start_block, *offset);
-+ kfree(sblock_list);
- goto failure;
- }
- SQUASHFS_SWAP_INTS(((unsigned int *)block_list),
- ((unsigned int *)sblock_list), blocks);
-+ kfree(sblock_list);
- } else {
- if (!squashfs_get_cached_block(s, block_list, *start_block,
-- *offset, blocks << 2, start_block, offset)) {
-+ *offset, blocks << 2, start_block, (unsigned int *)offset)) {
- ERROR("Fail reading block list [%llx:%x]\n", *start_block, *offset);
- goto failure;
- }
-@@ -1890,7 +1955,8 @@ static int squashfs_readdir(struct file
- file->f_pos += size;
- }
-
-- length = get_dir_index_using_offset(i->i_sb, &next_block, &next_offset,
-+ length = get_dir_index_using_offset(i->i_sb, &next_block,
-+ (unsigned int *)&next_offset,
- SQUASHFS_I(i)->u.s2.directory_index_start,
- SQUASHFS_I(i)->u.s2.directory_index_offset,
- SQUASHFS_I(i)->u.s2.directory_index_count, file->f_pos);
-@@ -1901,14 +1967,16 @@ static int squashfs_readdir(struct file
- struct squashfs_dir_header sdirh;
-
- if (!squashfs_get_cached_block(i->i_sb, &sdirh, next_block,
-- next_offset, sizeof(sdirh), &next_block, &next_offset))
-+ next_offset, sizeof(sdirh), &next_block,
-+ (unsigned int *)&next_offset))
- goto failed_read;
-
- length += sizeof(sdirh);
- SQUASHFS_SWAP_DIR_HEADER(&dirh, &sdirh);
- } else {
- if (!squashfs_get_cached_block(i->i_sb, &dirh, next_block,
-- next_offset, sizeof(dirh), &next_block, &next_offset))
-+ next_offset, sizeof(dirh), &next_block,
-+ (unsigned int *)&next_offset))
- goto failed_read;
-
- length += sizeof(dirh);
-@@ -1919,21 +1987,24 @@ static int squashfs_readdir(struct file
- if (msblk->swap) {
- struct squashfs_dir_entry sdire;
- if (!squashfs_get_cached_block(i->i_sb, &sdire, next_block,
-- next_offset, sizeof(sdire), &next_block, &next_offset))
-+ next_offset, sizeof(sdire), &next_block,
-+ (unsigned int *)&next_offset))
- goto failed_read;
-
- length += sizeof(sdire);
- SQUASHFS_SWAP_DIR_ENTRY(dire, &sdire);
- } else {
- if (!squashfs_get_cached_block(i->i_sb, dire, next_block,
-- next_offset, sizeof(*dire), &next_block, &next_offset))
-+ next_offset, sizeof(*dire), &next_block,
-+ (unsigned int *)&next_offset))
- goto failed_read;
-
- length += sizeof(*dire);
- }
-
- if (!squashfs_get_cached_block(i->i_sb, dire->name, next_block,
-- next_offset, dire->size + 1, &next_block, &next_offset))
-+ next_offset, dire->size + 1, &next_block,
-+ (unsigned int *)&next_offset))
- goto failed_read;
-
- length += dire->size + 1;
-@@ -1997,7 +2068,7 @@ static struct dentry *squashfs_lookup(st
- if (len > SQUASHFS_NAME_LEN)
- goto exit_lookup;
-
-- length = get_dir_index_using_name(i->i_sb, &next_block, &next_offset,
-+ length = get_dir_index_using_name(i->i_sb, &next_block, (unsigned int *)&next_offset,
- SQUASHFS_I(i)->u.s2.directory_index_start,
- SQUASHFS_I(i)->u.s2.directory_index_offset,
- SQUASHFS_I(i)->u.s2.directory_index_count, name, len);
-@@ -2007,14 +2078,16 @@ static struct dentry *squashfs_lookup(st
- if (msblk->swap) {
- struct squashfs_dir_header sdirh;
- if (!squashfs_get_cached_block(i->i_sb, &sdirh, next_block,
-- next_offset, sizeof(sdirh), &next_block, &next_offset))
-+ next_offset, sizeof(sdirh), &next_block,
-+ (unsigned int *)&next_offset))
- goto failed_read;
-
- length += sizeof(sdirh);
- SQUASHFS_SWAP_DIR_HEADER(&dirh, &sdirh);
- } else {
- if (!squashfs_get_cached_block(i->i_sb, &dirh, next_block,
-- next_offset, sizeof(dirh), &next_block, &next_offset))
-+ next_offset, sizeof(dirh), &next_block,
-+ (unsigned int *)&next_offset))
- goto failed_read;
-
- length += sizeof(dirh);
-@@ -2025,21 +2098,24 @@ static struct dentry *squashfs_lookup(st
- if (msblk->swap) {
- struct squashfs_dir_entry sdire;
- if (!squashfs_get_cached_block(i->i_sb, &sdire, next_block,
-- next_offset, sizeof(sdire), &next_block, &next_offset))
-+ next_offset, sizeof(sdire), &next_block,
-+ (unsigned int *)&next_offset))
- goto failed_read;
-
- length += sizeof(sdire);
- SQUASHFS_SWAP_DIR_ENTRY(dire, &sdire);
- } else {
- if (!squashfs_get_cached_block(i->i_sb, dire, next_block,
-- next_offset, sizeof(*dire), &next_block, &next_offset))
-+ next_offset, sizeof(*dire), &next_block,
-+ (unsigned int *)&next_offset))
- goto failed_read;
-
- length += sizeof(*dire);
- }
-
- if (!squashfs_get_cached_block(i->i_sb, dire->name, next_block,
-- next_offset, dire->size + 1, &next_block, &next_offset))
-+ next_offset, dire->size + 1, &next_block,
-+ (unsigned int *)&next_offset))
- goto failed_read;
-
- length += dire->size + 1;
-@@ -2103,7 +2179,6 @@ static void squashfs_put_super(struct su
- kfree(sbi->fragment_index);
- kfree(sbi->fragment_index_2);
- kfree(sbi->meta_index);
-- vfree(sbi->stream.workspace);
- kfree(s->s_fs_info);
- s->s_fs_info = NULL;
- }
-@@ -2117,19 +2192,63 @@ static int squashfs_get_sb(struct file_s
- mnt);
- }
-
-+static void free_sqlzma(void)
-+{
-+ int cpu;
-+ struct sqlzma *p;
-+
-+ for_each_online_cpu(cpu) {
-+ p = per_cpu(sqlzma, cpu);
-+ if (p) {
-+#ifdef KeepPreemptive
-+ mutex_destroy(&p->mtx);
-+#endif
-+ sqlzma_fin(&p->un);
-+ kfree(p);
-+ }
-+ }
-+}
-
- static int __init init_squashfs_fs(void)
- {
-+ struct sqlzma *p;
-+ int cpu;
- int err = init_inodecache();
- if (err)
- goto out;
-
-+ for_each_online_cpu(cpu) {
-+ dpri("%d: %p\n", cpu, per_cpu(sqlzma, cpu));
-+ err = -ENOMEM;
-+ p = kmalloc(sizeof(struct sqlzma), GFP_KERNEL);
-+ if (p) {
-+#ifdef KeepPreemptive
-+ mutex_init(&p->mtx);
-+#endif
-+ err = sqlzma_init(&p->un, 1, 0);
-+ if (unlikely(err)) {
-+ ERROR("Failed to intialize uncompress workspace\n");
-+ break;
-+ }
-+ per_cpu(sqlzma, cpu) = p;
-+ err = 0;
-+ } else
-+ break;
-+ }
-+ if (unlikely(err)) {
-+ free_sqlzma();
-+ goto out;
-+ }
-+
- printk(KERN_INFO "squashfs: version 3.3 (2007/10/31) "
-- "Phillip Lougher\n");
-+ "Phillip Lougher\n"
-+ "squashfs: LZMA suppport for slax.org by jro\n");
-
- err = register_filesystem(&squashfs_fs_type);
-- if (err)
-+ if (err) {
-+ free_sqlzma();
- destroy_inodecache();
-+ }
-
- out:
- return err;
-@@ -2139,6 +2258,7 @@ out:
- static void __exit exit_squashfs_fs(void)
- {
- unregister_filesystem(&squashfs_fs_type);
-+ free_sqlzma();
- destroy_inodecache();
- }
-
-@@ -2187,6 +2307,6 @@ static void destroy_inodecache(void)
-
- module_init(init_squashfs_fs);
- module_exit(exit_squashfs_fs);
--MODULE_DESCRIPTION("squashfs 3.2-r2-CVS, a compressed read-only filesystem");
--MODULE_AUTHOR("Phillip Lougher ");
-+MODULE_DESCRIPTION("squashfs 3.2-r2-CVS, a compressed read-only filesystem, and LZMA suppport for slax.org");
-+MODULE_AUTHOR("Phillip Lougher , and LZMA suppport for slax.org by jro");
- MODULE_LICENSE("GPL");
-Index: linux-2.6.23/include/linux/squashfs_fs.h
-===================================================================
-RCS file: linux-2.6.23/include/linux/squashfs_fs.h,v
-retrieving revision 1.1
-retrieving revision 1.2
-diff -u -p -r1.1 -r1.2
---- linux-2.6.23/include/linux/squashfs_fs.h 4 Nov 2007 13:21:40 -0000 1.1
-+++ linux-2.6.23/include/linux/squashfs_fs.h 5 Nov 2007 05:43:36 -0000 1.2
-@@ -341,7 +341,7 @@ struct squashfs_dir_entry {
- unsigned int offset:13;
- unsigned int type:3;
- unsigned int size:8;
-- int inode_number:16;
-+ unsigned int inode_number:16;
- char name[0];
- } __attribute__ ((packed));
-
-Index: linux-2.6.23/include/linux/squashfs_fs_sb.h
-===================================================================
-RCS file: linux-2.6.23/include/linux/squashfs_fs_sb.h,v
-retrieving revision 1.1
-retrieving revision 1.2
-diff -u -p -r1.1 -r1.2
---- linux-2.6.23/include/linux/squashfs_fs_sb.h 4 Nov 2007 13:21:40 -0000 1.1
-+++ linux-2.6.23/include/linux/squashfs_fs_sb.h 5 Nov 2007 05:43:36 -0000 1.2
-@@ -24,6 +24,7 @@
- */
-
- #include
-+#include "sqlzma.h"
-
- struct squashfs_cache {
- long long block;
-@@ -54,7 +55,7 @@ struct squashfs_sb_info {
- long long *fragment_index;
- unsigned int *fragment_index_2;
- char *read_page;
-- struct mutex read_data_mutex;
-+ //struct mutex read_data_mutex;
- struct mutex read_page_mutex;
- struct mutex block_cache_mutex;
- struct mutex fragment_mutex;
-@@ -62,7 +63,7 @@ struct squashfs_sb_info {
- wait_queue_head_t waitq;
- wait_queue_head_t fragment_wait_queue;
- struct meta_index *meta_index;
-- z_stream stream;
-+ //z_stream stream;
- long long *inode_lookup_table;
- int unused_cache_blks;
- int unused_frag_blks;
diff --git a/source/base-extra/kernel-fwlive/squashfs3.3-patch b/source/base-extra/kernel-fwlive/squashfs3.3-patch
deleted file mode 100644
index 536f319..0000000
--- a/source/base-extra/kernel-fwlive/squashfs3.3-patch
+++ /dev/null
@@ -1,4234 +0,0 @@
-diff -x .gitignore -Nurp linux-2.6.23/fs/Kconfig linux-2.6.23-squashfs3.3/fs/Kconfig
---- linux-2.6.23/fs/Kconfig 2007-10-09 21:31:38.000000000 +0100
-+++ linux-2.6.23-squashfs3.3/fs/Kconfig 2007-11-01 05:06:25.000000000 +0000
-@@ -1364,6 +1364,56 @@ config CRAMFS
-
- If unsure, say N.
-
-+config SQUASHFS
-+ tristate "SquashFS 3.3 - Squashed file system support"
-+ select ZLIB_INFLATE
-+ help
-+ Saying Y here includes support for SquashFS 3.3 (a Compressed
-+ Read-Only File System). Squashfs is a highly compressed read-only
-+ filesystem for Linux. It uses zlib compression to compress both
-+ files, inodes and directories. Inodes in the system are very small
-+ and all blocks are packed to minimise data overhead. Block sizes
-+ greater than 4K are supported up to a maximum of 1 Mbytes (default
-+ block size 128K). SquashFS 3.3 supports 64 bit filesystems and files
-+ (larger than 4GB), full uid/gid information, hard links and timestamps.
-+
-+ Squashfs is intended for general read-only filesystem use, for
-+ archival use (i.e. in cases where a .tar.gz file may be used), and in
-+ embedded systems where low overhead is needed. Further information
-+ and filesystem tools are available from http://squashfs.sourceforge.net.
-+
-+ If you want to compile this as a module ( = code which can be
-+ inserted in and removed from the running kernel whenever you want),
-+ say M here and read . The module
-+ will be called squashfs. Note that the root file system (the one
-+ containing the directory /) cannot be compiled as a module.
-+
-+ If unsure, say N.
-+
-+config SQUASHFS_EMBEDDED
-+
-+ bool "Additional option for memory-constrained systems"
-+ depends on SQUASHFS
-+ default n
-+ help
-+ Saying Y here allows you to specify cache size.
-+
-+ If unsure, say N.
-+
-+config SQUASHFS_FRAGMENT_CACHE_SIZE
-+ int "Number of fragments cached" if SQUASHFS_EMBEDDED
-+ depends on SQUASHFS
-+ default "3"
-+ help
-+ By default SquashFS caches the last 3 fragments read from
-+ the filesystem. Increasing this amount may mean SquashFS
-+ has to re-read fragments less often from disk, at the expense
-+ of extra system memory. Decreasing this amount will mean
-+ SquashFS uses less memory at the expense of extra reads from disk.
-+
-+ Note there must be at least one cached fragment. Anything
-+ much more than three will probably not make much difference.
-+
- config VXFS_FS
- tristate "FreeVxFS file system support (VERITAS VxFS(TM) compatible)"
- depends on BLOCK
-diff -x .gitignore -Nurp linux-2.6.23/fs/Makefile linux-2.6.23-squashfs3.3/fs/Makefile
---- linux-2.6.23/fs/Makefile 2007-10-09 21:31:38.000000000 +0100
-+++ linux-2.6.23-squashfs3.3/fs/Makefile 2007-11-01 05:06:25.000000000 +0000
-@@ -72,6 +72,7 @@ obj-$(CONFIG_JBD) += jbd/
- obj-$(CONFIG_JBD2) += jbd2/
- obj-$(CONFIG_EXT2_FS) += ext2/
- obj-$(CONFIG_CRAMFS) += cramfs/
-+obj-$(CONFIG_SQUASHFS) += squashfs/
- obj-$(CONFIG_RAMFS) += ramfs/
- obj-$(CONFIG_HUGETLBFS) += hugetlbfs/
- obj-$(CONFIG_CODA_FS) += coda/
-diff -x .gitignore -Nurp linux-2.6.23/fs/squashfs/inode.c linux-2.6.23-squashfs3.3/fs/squashfs/inode.c
---- linux-2.6.23/fs/squashfs/inode.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.23-squashfs3.3/fs/squashfs/inode.c 2007-11-01 03:09:05.000000000 +0000
-@@ -0,0 +1,2192 @@
-+/*
-+ * Squashfs - a compressed read only filesystem for Linux
-+ *
-+ * Copyright (c) 2002, 2003, 2004, 2005, 2006, 2007
-+ * Phillip Lougher
-+ *
-+ * This program is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU General Public License
-+ * as published by the Free Software Foundation; either version 2,
-+ * or (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+ *
-+ * inode.c
-+ */
-+
-+#include
-+#include
-+#include
-+#include
-+#include
-+#include
-+#include
-+#include
-+#include
-+#include
-+#include
-+
-+#include "squashfs.h"
-+
-+int squashfs_cached_blks;
-+
-+static void vfs_read_inode(struct inode *i);
-+static struct dentry *squashfs_get_parent(struct dentry *child);
-+static int squashfs_read_inode(struct inode *i, squashfs_inode_t inode);
-+static int squashfs_statfs(struct dentry *, struct kstatfs *);
-+static int squashfs_symlink_readpage(struct file *file, struct page *page);
-+static long long read_blocklist(struct inode *inode, int index,
-+ int readahead_blks, char *block_list,
-+ unsigned short **block_p, unsigned int *bsize);
-+static int squashfs_readpage(struct file *file, struct page *page);
-+static int squashfs_readdir(struct file *, void *, filldir_t);
-+static struct dentry *squashfs_lookup(struct inode *, struct dentry *,
-+ struct nameidata *);
-+static int squashfs_remount(struct super_block *s, int *flags, char *data);
-+static void squashfs_put_super(struct super_block *);
-+static int squashfs_get_sb(struct file_system_type *,int, const char *, void *,
-+ struct vfsmount *);
-+static struct inode *squashfs_alloc_inode(struct super_block *sb);
-+static void squashfs_destroy_inode(struct inode *inode);
-+static int init_inodecache(void);
-+static void destroy_inodecache(void);
-+
-+static struct file_system_type squashfs_fs_type = {
-+ .owner = THIS_MODULE,
-+ .name = "squashfs",
-+ .get_sb = squashfs_get_sb,
-+ .kill_sb = kill_block_super,
-+ .fs_flags = FS_REQUIRES_DEV
-+};
-+
-+static const unsigned char squashfs_filetype_table[] = {
-+ DT_UNKNOWN, DT_DIR, DT_REG, DT_LNK, DT_BLK, DT_CHR, DT_FIFO, DT_SOCK
-+};
-+
-+static struct super_operations squashfs_super_ops = {
-+ .alloc_inode = squashfs_alloc_inode,
-+ .destroy_inode = squashfs_destroy_inode,
-+ .statfs = squashfs_statfs,
-+ .put_super = squashfs_put_super,
-+ .remount_fs = squashfs_remount
-+};
-+
-+static struct super_operations squashfs_export_super_ops = {
-+ .alloc_inode = squashfs_alloc_inode,
-+ .destroy_inode = squashfs_destroy_inode,
-+ .statfs = squashfs_statfs,
-+ .put_super = squashfs_put_super,
-+ .read_inode = vfs_read_inode
-+};
-+
-+static struct export_operations squashfs_export_ops = {
-+ .get_parent = squashfs_get_parent
-+};
-+
-+SQSH_EXTERN const struct address_space_operations squashfs_symlink_aops = {
-+ .readpage = squashfs_symlink_readpage
-+};
-+
-+SQSH_EXTERN const struct address_space_operations squashfs_aops = {
-+ .readpage = squashfs_readpage
-+};
-+
-+static const struct file_operations squashfs_dir_ops = {
-+ .read = generic_read_dir,
-+ .readdir = squashfs_readdir
-+};
-+
-+SQSH_EXTERN struct inode_operations squashfs_dir_inode_ops = {
-+ .lookup = squashfs_lookup
-+};
-+
-+
-+static struct buffer_head *get_block_length(struct super_block *s,
-+ int *cur_index, int *offset, int *c_byte)
-+{
-+ struct squashfs_sb_info *msblk = s->s_fs_info;
-+ unsigned short temp;
-+ struct buffer_head *bh;
-+
-+ if (!(bh = sb_bread(s, *cur_index)))
-+ goto out;
-+
-+ if (msblk->devblksize - *offset == 1) {
-+ if (msblk->swap)
-+ ((unsigned char *) &temp)[1] = *((unsigned char *)
-+ (bh->b_data + *offset));
-+ else
-+ ((unsigned char *) &temp)[0] = *((unsigned char *)
-+ (bh->b_data + *offset));
-+ brelse(bh);
-+ if (!(bh = sb_bread(s, ++(*cur_index))))
-+ goto out;
-+ if (msblk->swap)
-+ ((unsigned char *) &temp)[0] = *((unsigned char *)
-+ bh->b_data);
-+ else
-+ ((unsigned char *) &temp)[1] = *((unsigned char *)
-+ bh->b_data);
-+ *c_byte = temp;
-+ *offset = 1;
-+ } else {
-+ if (msblk->swap) {
-+ ((unsigned char *) &temp)[1] = *((unsigned char *)
-+ (bh->b_data + *offset));
-+ ((unsigned char *) &temp)[0] = *((unsigned char *)
-+ (bh->b_data + *offset + 1));
-+ } else {
-+ ((unsigned char *) &temp)[0] = *((unsigned char *)
-+ (bh->b_data + *offset));
-+ ((unsigned char *) &temp)[1] = *((unsigned char *)
-+ (bh->b_data + *offset + 1));
-+ }
-+ *c_byte = temp;
-+ *offset += 2;
-+ }
-+
-+ if (SQUASHFS_CHECK_DATA(msblk->sblk.flags)) {
-+ if (*offset == msblk->devblksize) {
-+ brelse(bh);
-+ if (!(bh = sb_bread(s, ++(*cur_index))))
-+ goto out;
-+ *offset = 0;
-+ }
-+ if (*((unsigned char *) (bh->b_data + *offset)) !=
-+ SQUASHFS_MARKER_BYTE) {
-+ ERROR("Metadata block marker corrupt @ %x\n",
-+ *cur_index);
-+ brelse(bh);
-+ goto out;
-+ }
-+ (*offset)++;
-+ }
-+ return bh;
-+
-+out:
-+ return NULL;
-+}
-+
-+
-+SQSH_EXTERN unsigned int squashfs_read_data(struct super_block *s, char *buffer,
-+ long long index, unsigned int length,
-+ long long *next_index, int srclength)
-+{
-+ struct squashfs_sb_info *msblk = s->s_fs_info;
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+ struct buffer_head **bh;
-+ unsigned int offset = index & ((1 << msblk->devblksize_log2) - 1);
-+ unsigned int cur_index = index >> msblk->devblksize_log2;
-+ int bytes, avail_bytes, b = 0, k = 0;
-+ unsigned int compressed;
-+ unsigned int c_byte = length;
-+
-+ bh = kmalloc(((sblk->block_size >> msblk->devblksize_log2) + 1) *
-+ sizeof(struct buffer_head *), GFP_KERNEL);
-+ if (bh == NULL)
-+ goto read_failure;
-+
-+ if (c_byte) {
-+ bytes = msblk->devblksize - offset;
-+ compressed = SQUASHFS_COMPRESSED_BLOCK(c_byte);
-+ c_byte = SQUASHFS_COMPRESSED_SIZE_BLOCK(c_byte);
-+
-+ TRACE("Block @ 0x%llx, %scompressed size %d, src size %d\n", index,
-+ compressed ? "" : "un", (unsigned int) c_byte, srclength);
-+
-+ if (c_byte > srclength || index < 0 || (index + c_byte) > sblk->bytes_used)
-+ goto read_failure;
-+
-+ bh[0] = sb_getblk(s, cur_index);
-+ if (bh[0] == NULL)
-+ goto block_release;
-+
-+ for (b = 1; bytes < c_byte; b++) {
-+ bh[b] = sb_getblk(s, ++cur_index);
-+ if (bh[b] == NULL)
-+ goto block_release;
-+ bytes += msblk->devblksize;
-+ }
-+ ll_rw_block(READ, b, bh);
-+ } else {
-+ if (index < 0 || (index + 2) > sblk->bytes_used)
-+ goto read_failure;
-+
-+ bh[0] = get_block_length(s, &cur_index, &offset, &c_byte);
-+ if (bh[0] == NULL)
-+ goto read_failure;
-+
-+ bytes = msblk->devblksize - offset;
-+ compressed = SQUASHFS_COMPRESSED(c_byte);
-+ c_byte = SQUASHFS_COMPRESSED_SIZE(c_byte);
-+
-+ TRACE("Block @ 0x%llx, %scompressed size %d\n", index, compressed
-+ ? "" : "un", (unsigned int) c_byte);
-+
-+ if (c_byte > srclength || (index + c_byte) > sblk->bytes_used)
-+ goto read_failure;
-+
-+ for (b = 1; bytes < c_byte; b++) {
-+ bh[b] = sb_getblk(s, ++cur_index);
-+ if (bh[b] == NULL)
-+ goto block_release;
-+ bytes += msblk->devblksize;
-+ }
-+ ll_rw_block(READ, b - 1, bh + 1);
-+ }
-+
-+ if (compressed) {
-+ int zlib_err = 0;
-+
-+ /*
-+ * uncompress block
-+ */
-+
-+ mutex_lock(&msblk->read_data_mutex);
-+
-+ msblk->stream.next_out = buffer;
-+ msblk->stream.avail_out = srclength;
-+
-+ for (bytes = 0; k < b; k++) {
-+ avail_bytes = min(c_byte - bytes, msblk->devblksize - offset);
-+
-+ wait_on_buffer(bh[k]);
-+ if (!buffer_uptodate(bh[k]))
-+ goto release_mutex;
-+
-+ msblk->stream.next_in = bh[k]->b_data + offset;
-+ msblk->stream.avail_in = avail_bytes;
-+
-+ if (k == 0) {
-+ zlib_err = zlib_inflateInit(&msblk->stream);
-+ if (zlib_err != Z_OK) {
-+ ERROR("zlib_inflateInit returned unexpected result 0x%x,"
-+ " srclength %d\n", zlib_err, srclength);
-+ goto release_mutex;
-+ }
-+
-+ if (avail_bytes == 0) {
-+ offset = 0;
-+ brelse(bh[k]);
-+ continue;
-+ }
-+ }
-+
-+ zlib_err = zlib_inflate(&msblk->stream, Z_NO_FLUSH);
-+ if (zlib_err != Z_OK && zlib_err != Z_STREAM_END) {
-+ ERROR("zlib_inflate returned unexpected result 0x%x,"
-+ " srclength %d, avail_in %d, avail_out %d\n", zlib_err,
-+ srclength, msblk->stream.avail_in, msblk->stream.avail_out);
-+ goto release_mutex;
-+ }
-+
-+ bytes += avail_bytes;
-+ offset = 0;
-+ brelse(bh[k]);
-+ }
-+
-+ if (zlib_err != Z_STREAM_END)
-+ goto release_mutex;
-+
-+ zlib_err = zlib_inflateEnd(&msblk->stream);
-+ if (zlib_err != Z_OK) {
-+ ERROR("zlib_inflateEnd returned unexpected result 0x%x,"
-+ " srclength %d\n", zlib_err, srclength);
-+ goto release_mutex;
-+ }
-+ bytes = msblk->stream.total_out;
-+ mutex_unlock(&msblk->read_data_mutex);
-+ } else {
-+ int i;
-+
-+ for(i = 0; i < b; i++) {
-+ wait_on_buffer(bh[i]);
-+ if (!buffer_uptodate(bh[i]))
-+ goto block_release;
-+ }
-+
-+ for (bytes = 0; k < b; k++) {
-+ avail_bytes = min(c_byte - bytes, msblk->devblksize - offset);
-+
-+ memcpy(buffer + bytes, bh[k]->b_data + offset, avail_bytes);
-+ bytes += avail_bytes;
-+ offset = 0;
-+ brelse(bh[k]);
-+ }
-+ }
-+
-+ if (next_index)
-+ *next_index = index + c_byte + (length ? 0 :
-+ (SQUASHFS_CHECK_DATA(msblk->sblk.flags) ? 3 : 2));
-+
-+ kfree(bh);
-+ return bytes;
-+
-+release_mutex:
-+ mutex_unlock(&msblk->read_data_mutex);
-+
-+block_release:
-+ for (; k < b; k++)
-+ brelse(bh[k]);
-+
-+read_failure:
-+ ERROR("sb_bread failed reading block 0x%x\n", cur_index);
-+ kfree(bh);
-+ return 0;
-+}
-+
-+
-+SQSH_EXTERN int squashfs_get_cached_block(struct super_block *s, void *buffer,
-+ long long block, unsigned int offset,
-+ int length, long long *next_block,
-+ unsigned int *next_offset)
-+{
-+ struct squashfs_sb_info *msblk = s->s_fs_info;
-+ int n, i, bytes, return_length = length;
-+ long long next_index;
-+
-+ TRACE("Entered squashfs_get_cached_block [%llx:%x]\n", block, offset);
-+
-+ while (1) {
-+ for (i = 0; i < squashfs_cached_blks; i++)
-+ if (msblk->block_cache[i].block == block)
-+ break;
-+
-+ mutex_lock(&msblk->block_cache_mutex);
-+
-+ if (i == squashfs_cached_blks) {
-+ /* read inode header block */
-+ if (msblk->unused_cache_blks == 0) {
-+ mutex_unlock(&msblk->block_cache_mutex);
-+ wait_event(msblk->waitq, msblk->unused_cache_blks);
-+ continue;
-+ }
-+
-+ i = msblk->next_cache;
-+ for (n = 0; n < squashfs_cached_blks; n++) {
-+ if (msblk->block_cache[i].block != SQUASHFS_USED_BLK)
-+ break;
-+ i = (i + 1) % squashfs_cached_blks;
-+ }
-+
-+ msblk->next_cache = (i + 1) % squashfs_cached_blks;
-+
-+ if (msblk->block_cache[i].block == SQUASHFS_INVALID_BLK) {
-+ msblk->block_cache[i].data = vmalloc(SQUASHFS_METADATA_SIZE);
-+ if (msblk->block_cache[i].data == NULL) {
-+ ERROR("Failed to allocate cache block\n");
-+ mutex_unlock(&msblk->block_cache_mutex);
-+ goto out;
-+ }
-+ }
-+
-+ msblk->block_cache[i].block = SQUASHFS_USED_BLK;
-+ msblk->unused_cache_blks --;
-+ mutex_unlock(&msblk->block_cache_mutex);
-+
-+ msblk->block_cache[i].length = squashfs_read_data(s,
-+ msblk->block_cache[i].data, block, 0, &next_index,
-+ SQUASHFS_METADATA_SIZE);
-+
-+ if (msblk->block_cache[i].length == 0) {
-+ ERROR("Unable to read cache block [%llx:%x]\n", block, offset);
-+ mutex_lock(&msblk->block_cache_mutex);
-+ msblk->block_cache[i].block = SQUASHFS_INVALID_BLK;
-+ msblk->unused_cache_blks ++;
-+ smp_mb();
-+ vfree(msblk->block_cache[i].data);
-+ wake_up(&msblk->waitq);
-+ mutex_unlock(&msblk->block_cache_mutex);
-+ goto out;
-+ }
-+
-+ mutex_lock(&msblk->block_cache_mutex);
-+ msblk->block_cache[i].block = block;
-+ msblk->block_cache[i].next_index = next_index;
-+ msblk->unused_cache_blks ++;
-+ smp_mb();
-+ wake_up(&msblk->waitq);
-+ TRACE("Read cache block [%llx:%x]\n", block, offset);
-+ }
-+
-+ if (msblk->block_cache[i].block != block) {
-+ mutex_unlock(&msblk->block_cache_mutex);
-+ continue;
-+ }
-+
-+ bytes = msblk->block_cache[i].length - offset;
-+
-+ if (bytes < 1) {
-+ mutex_unlock(&msblk->block_cache_mutex);
-+ goto out;
-+ } else if (bytes >= length) {
-+ if (buffer)
-+ memcpy(buffer, msblk->block_cache[i].data + offset, length);
-+ if (msblk->block_cache[i].length - offset == length) {
-+ *next_block = msblk->block_cache[i].next_index;
-+ *next_offset = 0;
-+ } else {
-+ *next_block = block;
-+ *next_offset = offset + length;
-+ }
-+ mutex_unlock(&msblk->block_cache_mutex);
-+ goto finish;
-+ } else {
-+ if (buffer) {
-+ memcpy(buffer, msblk->block_cache[i].data + offset, bytes);
-+ buffer = (char *) buffer + bytes;
-+ }
-+ block = msblk->block_cache[i].next_index;
-+ mutex_unlock(&msblk->block_cache_mutex);
-+ length -= bytes;
-+ offset = 0;
-+ }
-+ }
-+
-+finish:
-+ return return_length;
-+out:
-+ return 0;
-+}
-+
-+
-+static int get_fragment_location(struct super_block *s, unsigned int fragment,
-+ long long *fragment_start_block,
-+ unsigned int *fragment_size)
-+{
-+ struct squashfs_sb_info *msblk = s->s_fs_info;
-+ long long start_block =
-+ msblk->fragment_index[SQUASHFS_FRAGMENT_INDEX(fragment)];
-+ int offset = SQUASHFS_FRAGMENT_INDEX_OFFSET(fragment);
-+ struct squashfs_fragment_entry fragment_entry;
-+
-+ if (msblk->swap) {
-+ struct squashfs_fragment_entry sfragment_entry;
-+
-+ if (!squashfs_get_cached_block(s, &sfragment_entry, start_block, offset,
-+ sizeof(sfragment_entry), &start_block, &offset))
-+ goto out;
-+ SQUASHFS_SWAP_FRAGMENT_ENTRY(&fragment_entry, &sfragment_entry);
-+ } else
-+ if (!squashfs_get_cached_block(s, &fragment_entry, start_block, offset,
-+ sizeof(fragment_entry), &start_block, &offset))
-+ goto out;
-+
-+ *fragment_start_block = fragment_entry.start_block;
-+ *fragment_size = fragment_entry.size;
-+
-+ return 1;
-+
-+out:
-+ return 0;
-+}
-+
-+
-+SQSH_EXTERN void release_cached_fragment(struct squashfs_sb_info *msblk,
-+ struct squashfs_fragment_cache *fragment)
-+{
-+ mutex_lock(&msblk->fragment_mutex);
-+ fragment->locked --;
-+ if (fragment->locked == 0) {
-+ msblk->unused_frag_blks ++;
-+ smp_mb();
-+ wake_up(&msblk->fragment_wait_queue);
-+ }
-+ mutex_unlock(&msblk->fragment_mutex);
-+}
-+
-+
-+SQSH_EXTERN
-+struct squashfs_fragment_cache *get_cached_fragment(struct super_block *s,
-+ long long start_block, int length)
-+{
-+ int i, n;
-+ struct squashfs_sb_info *msblk = s->s_fs_info;
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+
-+ while (1) {
-+ mutex_lock(&msblk->fragment_mutex);
-+
-+ for (i = 0; i < SQUASHFS_CACHED_FRAGMENTS &&
-+ msblk->fragment[i].block != start_block; i++);
-+
-+ if (i == SQUASHFS_CACHED_FRAGMENTS) {
-+ if (msblk->unused_frag_blks == 0) {
-+ mutex_unlock(&msblk->fragment_mutex);
-+ wait_event(msblk->fragment_wait_queue, msblk->unused_frag_blks);
-+ continue;
-+ }
-+
-+ i = msblk->next_fragment;
-+ for (n = 0; n < SQUASHFS_CACHED_FRAGMENTS; n++) {
-+ if (msblk->fragment[i].locked == 0)
-+ break;
-+ i = (i + 1) % SQUASHFS_CACHED_FRAGMENTS;
-+ }
-+
-+ msblk->next_fragment = (msblk->next_fragment + 1) %
-+ SQUASHFS_CACHED_FRAGMENTS;
-+
-+ if (msblk->fragment[i].data == NULL) {
-+ msblk->fragment[i].data = vmalloc(sblk->block_size);
-+ if (msblk->fragment[i].data == NULL) {
-+ ERROR("Failed to allocate fragment cache block\n");
-+ mutex_unlock(&msblk->fragment_mutex);
-+ goto out;
-+ }
-+ }
-+
-+ msblk->unused_frag_blks --;
-+ msblk->fragment[i].block = SQUASHFS_INVALID_BLK;
-+ msblk->fragment[i].locked = 1;
-+ mutex_unlock(&msblk->fragment_mutex);
-+
-+ msblk->fragment[i].length = squashfs_read_data(s,
-+ msblk->fragment[i].data, start_block, length, NULL,
-+ sblk->block_size);
-+
-+ if (msblk->fragment[i].length == 0) {
-+ ERROR("Unable to read fragment cache block [%llx]\n", start_block);
-+ msblk->fragment[i].locked = 0;
-+ msblk->unused_frag_blks ++;
-+ smp_mb();
-+ wake_up(&msblk->fragment_wait_queue);
-+ goto out;
-+ }
-+
-+ mutex_lock(&msblk->fragment_mutex);
-+ msblk->fragment[i].block = start_block;
-+ TRACE("New fragment %d, start block %lld, locked %d\n",
-+ i, msblk->fragment[i].block, msblk->fragment[i].locked);
-+ mutex_unlock(&msblk->fragment_mutex);
-+ break;
-+ }
-+
-+ if (msblk->fragment[i].locked == 0)
-+ msblk->unused_frag_blks --;
-+ msblk->fragment[i].locked++;
-+ mutex_unlock(&msblk->fragment_mutex);
-+ TRACE("Got fragment %d, start block %lld, locked %d\n", i,
-+ msblk->fragment[i].block, msblk->fragment[i].locked);
-+ break;
-+ }
-+
-+ return &msblk->fragment[i];
-+
-+out:
-+ return NULL;
-+}
-+
-+
-+static void squashfs_new_inode(struct squashfs_sb_info *msblk, struct inode *i,
-+ struct squashfs_base_inode_header *inodeb)
-+{
-+ i->i_ino = inodeb->inode_number;
-+ i->i_mtime.tv_sec = inodeb->mtime;
-+ i->i_atime.tv_sec = inodeb->mtime;
-+ i->i_ctime.tv_sec = inodeb->mtime;
-+ i->i_uid = msblk->uid[inodeb->uid];
-+ i->i_mode = inodeb->mode;
-+ i->i_size = 0;
-+
-+ if (inodeb->guid == SQUASHFS_GUIDS)
-+ i->i_gid = i->i_uid;
-+ else
-+ i->i_gid = msblk->guid[inodeb->guid];
-+}
-+
-+
-+static squashfs_inode_t squashfs_inode_lookup(struct super_block *s, int ino)
-+{
-+ struct squashfs_sb_info *msblk = s->s_fs_info;
-+ long long start = msblk->inode_lookup_table[SQUASHFS_LOOKUP_BLOCK(ino - 1)];
-+ int offset = SQUASHFS_LOOKUP_BLOCK_OFFSET(ino - 1);
-+ squashfs_inode_t inode;
-+
-+ TRACE("Entered squashfs_inode_lookup, inode_number = %d\n", ino);
-+
-+ if (msblk->swap) {
-+ squashfs_inode_t sinode;
-+
-+ if (!squashfs_get_cached_block(s, &sinode, start, offset,
-+ sizeof(sinode), &start, &offset))
-+ goto out;
-+ SQUASHFS_SWAP_INODE_T((&inode), &sinode);
-+ } else if (!squashfs_get_cached_block(s, &inode, start, offset,
-+ sizeof(inode), &start, &offset))
-+ goto out;
-+
-+ TRACE("squashfs_inode_lookup, inode = 0x%llx\n", inode);
-+
-+ return inode;
-+
-+out:
-+ return SQUASHFS_INVALID_BLK;
-+}
-+
-+
-+static void vfs_read_inode(struct inode *i)
-+{
-+ struct squashfs_sb_info *msblk = i->i_sb->s_fs_info;
-+ squashfs_inode_t inode = squashfs_inode_lookup(i->i_sb, i->i_ino);
-+
-+ TRACE("Entered vfs_read_inode\n");
-+
-+ if(inode != SQUASHFS_INVALID_BLK)
-+ (msblk->read_inode)(i, inode);
-+}
-+
-+
-+static struct dentry *squashfs_get_parent(struct dentry *child)
-+{
-+ struct inode *i = child->d_inode;
-+ struct inode *parent = iget(i->i_sb, SQUASHFS_I(i)->u.s2.parent_inode);
-+ struct dentry *rv;
-+
-+ TRACE("Entered squashfs_get_parent\n");
-+
-+ if(parent == NULL) {
-+ rv = ERR_PTR(-EACCES);
-+ goto out;
-+ }
-+
-+ rv = d_alloc_anon(parent);
-+ if(rv == NULL)
-+ rv = ERR_PTR(-ENOMEM);
-+
-+out:
-+ return rv;
-+}
-+
-+
-+SQSH_EXTERN struct inode *squashfs_iget(struct super_block *s,
-+ squashfs_inode_t inode, unsigned int inode_number)
-+{
-+ struct squashfs_sb_info *msblk = s->s_fs_info;
-+ struct inode *i = iget_locked(s, inode_number);
-+
-+ TRACE("Entered squashfs_iget\n");
-+
-+ if(i && (i->i_state & I_NEW)) {
-+ (msblk->read_inode)(i, inode);
-+ unlock_new_inode(i);
-+ }
-+
-+ return i;
-+}
-+
-+
-+static int squashfs_read_inode(struct inode *i, squashfs_inode_t inode)
-+{
-+ struct super_block *s = i->i_sb;
-+ struct squashfs_sb_info *msblk = s->s_fs_info;
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+ long long block = SQUASHFS_INODE_BLK(inode) + sblk->inode_table_start;
-+ unsigned int offset = SQUASHFS_INODE_OFFSET(inode);
-+ long long next_block;
-+ unsigned int next_offset;
-+ union squashfs_inode_header id, sid;
-+ struct squashfs_base_inode_header *inodeb = &id.base, *sinodeb = &sid.base;
-+
-+ TRACE("Entered squashfs_read_inode\n");
-+
-+ if (msblk->swap) {
-+ if (!squashfs_get_cached_block(s, sinodeb, block, offset,
-+ sizeof(*sinodeb), &next_block, &next_offset))
-+ goto failed_read;
-+ SQUASHFS_SWAP_BASE_INODE_HEADER(inodeb, sinodeb, sizeof(*sinodeb));
-+ } else
-+ if (!squashfs_get_cached_block(s, inodeb, block, offset,
-+ sizeof(*inodeb), &next_block, &next_offset))
-+ goto failed_read;
-+
-+ squashfs_new_inode(msblk, i, inodeb);
-+
-+ switch(inodeb->inode_type) {
-+ case SQUASHFS_FILE_TYPE: {
-+ unsigned int frag_size;
-+ long long frag_blk;
-+ struct squashfs_reg_inode_header *inodep = &id.reg;
-+ struct squashfs_reg_inode_header *sinodep = &sid.reg;
-+
-+ if (msblk->swap) {
-+ if (!squashfs_get_cached_block(s, sinodep, block, offset,
-+ sizeof(*sinodep), &next_block, &next_offset))
-+ goto failed_read;
-+ SQUASHFS_SWAP_REG_INODE_HEADER(inodep, sinodep);
-+ } else
-+ if (!squashfs_get_cached_block(s, inodep, block, offset,
-+ sizeof(*inodep), &next_block, &next_offset))
-+ goto failed_read;
-+
-+ frag_blk = SQUASHFS_INVALID_BLK;
-+
-+ if (inodep->fragment != SQUASHFS_INVALID_FRAG)
-+ if(!get_fragment_location(s, inodep->fragment, &frag_blk,
-+ &frag_size))
-+ goto failed_read;
-+
-+ i->i_nlink = 1;
-+ i->i_size = inodep->file_size;
-+ i->i_fop = &generic_ro_fops;
-+ i->i_mode |= S_IFREG;
-+ i->i_blocks = ((i->i_size - 1) >> 9) + 1;
-+ SQUASHFS_I(i)->u.s1.fragment_start_block = frag_blk;
-+ SQUASHFS_I(i)->u.s1.fragment_size = frag_size;
-+ SQUASHFS_I(i)->u.s1.fragment_offset = inodep->offset;
-+ SQUASHFS_I(i)->start_block = inodep->start_block;
-+ SQUASHFS_I(i)->u.s1.block_list_start = next_block;
-+ SQUASHFS_I(i)->offset = next_offset;
-+ i->i_data.a_ops = &squashfs_aops;
-+
-+ TRACE("File inode %x:%x, start_block %llx, "
-+ "block_list_start %llx, offset %x\n",
-+ SQUASHFS_INODE_BLK(inode), offset,
-+ inodep->start_block, next_block,
-+ next_offset);
-+ break;
-+ }
-+ case SQUASHFS_LREG_TYPE: {
-+ unsigned int frag_size;
-+ long long frag_blk;
-+ struct squashfs_lreg_inode_header *inodep = &id.lreg;
-+ struct squashfs_lreg_inode_header *sinodep = &sid.lreg;
-+
-+ if (msblk->swap) {
-+ if (!squashfs_get_cached_block(s, sinodep, block, offset,
-+ sizeof(*sinodep), &next_block, &next_offset))
-+ goto failed_read;
-+ SQUASHFS_SWAP_LREG_INODE_HEADER(inodep, sinodep);
-+ } else
-+ if (!squashfs_get_cached_block(s, inodep, block, offset,
-+ sizeof(*inodep), &next_block, &next_offset))
-+ goto failed_read;
-+
-+ frag_blk = SQUASHFS_INVALID_BLK;
-+
-+ if (inodep->fragment != SQUASHFS_INVALID_FRAG)
-+ if (!get_fragment_location(s, inodep->fragment, &frag_blk,
-+ &frag_size))
-+ goto failed_read;
-+
-+ i->i_nlink = inodep->nlink;
-+ i->i_size = inodep->file_size;
-+ i->i_fop = &generic_ro_fops;
-+ i->i_mode |= S_IFREG;
-+ i->i_blocks = ((i->i_size - 1) >> 9) + 1;
-+ SQUASHFS_I(i)->u.s1.fragment_start_block = frag_blk;
-+ SQUASHFS_I(i)->u.s1.fragment_size = frag_size;
-+ SQUASHFS_I(i)->u.s1.fragment_offset = inodep->offset;
-+ SQUASHFS_I(i)->start_block = inodep->start_block;
-+ SQUASHFS_I(i)->u.s1.block_list_start = next_block;
-+ SQUASHFS_I(i)->offset = next_offset;
-+ i->i_data.a_ops = &squashfs_aops;
-+
-+ TRACE("File inode %x:%x, start_block %llx, "
-+ "block_list_start %llx, offset %x\n",
-+ SQUASHFS_INODE_BLK(inode), offset,
-+ inodep->start_block, next_block,
-+ next_offset);
-+ break;
-+ }
-+ case SQUASHFS_DIR_TYPE: {
-+ struct squashfs_dir_inode_header *inodep = &id.dir;
-+ struct squashfs_dir_inode_header *sinodep = &sid.dir;
-+
-+ if (msblk->swap) {
-+ if (!squashfs_get_cached_block(s, sinodep, block, offset,
-+ sizeof(*sinodep), &next_block, &next_offset))
-+ goto failed_read;
-+ SQUASHFS_SWAP_DIR_INODE_HEADER(inodep, sinodep);
-+ } else
-+ if (!squashfs_get_cached_block(s, inodep, block, offset,
-+ sizeof(*inodep), &next_block, &next_offset))
-+ goto failed_read;
-+
-+ i->i_nlink = inodep->nlink;
-+ i->i_size = inodep->file_size;
-+ i->i_op = &squashfs_dir_inode_ops;
-+ i->i_fop = &squashfs_dir_ops;
-+ i->i_mode |= S_IFDIR;
-+ SQUASHFS_I(i)->start_block = inodep->start_block;
-+ SQUASHFS_I(i)->offset = inodep->offset;
-+ SQUASHFS_I(i)->u.s2.directory_index_count = 0;
-+ SQUASHFS_I(i)->u.s2.parent_inode = inodep->parent_inode;
-+
-+ TRACE("Directory inode %x:%x, start_block %x, offset "
-+ "%x\n", SQUASHFS_INODE_BLK(inode),
-+ offset, inodep->start_block,
-+ inodep->offset);
-+ break;
-+ }
-+ case SQUASHFS_LDIR_TYPE: {
-+ struct squashfs_ldir_inode_header *inodep = &id.ldir;
-+ struct squashfs_ldir_inode_header *sinodep = &sid.ldir;
-+
-+ if (msblk->swap) {
-+ if (!squashfs_get_cached_block(s, sinodep, block, offset,
-+ sizeof(*sinodep), &next_block, &next_offset))
-+ goto failed_read;
-+ SQUASHFS_SWAP_LDIR_INODE_HEADER(inodep, sinodep);
-+ } else
-+ if (!squashfs_get_cached_block(s, inodep, block, offset,
-+ sizeof(*inodep), &next_block, &next_offset))
-+ goto failed_read;
-+
-+ i->i_nlink = inodep->nlink;
-+ i->i_size = inodep->file_size;
-+ i->i_op = &squashfs_dir_inode_ops;
-+ i->i_fop = &squashfs_dir_ops;
-+ i->i_mode |= S_IFDIR;
-+ SQUASHFS_I(i)->start_block = inodep->start_block;
-+ SQUASHFS_I(i)->offset = inodep->offset;
-+ SQUASHFS_I(i)->u.s2.directory_index_start = next_block;
-+ SQUASHFS_I(i)->u.s2.directory_index_offset = next_offset;
-+ SQUASHFS_I(i)->u.s2.directory_index_count = inodep->i_count;
-+ SQUASHFS_I(i)->u.s2.parent_inode = inodep->parent_inode;
-+
-+ TRACE("Long directory inode %x:%x, start_block %x, offset %x\n",
-+ SQUASHFS_INODE_BLK(inode), offset,
-+ inodep->start_block, inodep->offset);
-+ break;
-+ }
-+ case SQUASHFS_SYMLINK_TYPE: {
-+ struct squashfs_symlink_inode_header *inodep = &id.symlink;
-+ struct squashfs_symlink_inode_header *sinodep = &sid.symlink;
-+
-+ if (msblk->swap) {
-+ if (!squashfs_get_cached_block(s, sinodep, block, offset,
-+ sizeof(*sinodep), &next_block, &next_offset))
-+ goto failed_read;
-+ SQUASHFS_SWAP_SYMLINK_INODE_HEADER(inodep, sinodep);
-+ } else
-+ if (!squashfs_get_cached_block(s, inodep, block, offset,
-+ sizeof(*inodep), &next_block, &next_offset))
-+ goto failed_read;
-+
-+ i->i_nlink = inodep->nlink;
-+ i->i_size = inodep->symlink_size;
-+ i->i_op = &page_symlink_inode_operations;
-+ i->i_data.a_ops = &squashfs_symlink_aops;
-+ i->i_mode |= S_IFLNK;
-+ SQUASHFS_I(i)->start_block = next_block;
-+ SQUASHFS_I(i)->offset = next_offset;
-+
-+ TRACE("Symbolic link inode %x:%x, start_block %llx, offset %x\n",
-+ SQUASHFS_INODE_BLK(inode), offset,
-+ next_block, next_offset);
-+ break;
-+ }
-+ case SQUASHFS_BLKDEV_TYPE:
-+ case SQUASHFS_CHRDEV_TYPE: {
-+ struct squashfs_dev_inode_header *inodep = &id.dev;
-+ struct squashfs_dev_inode_header *sinodep = &sid.dev;
-+
-+ if (msblk->swap) {
-+ if (!squashfs_get_cached_block(s, sinodep, block, offset,
-+ sizeof(*sinodep), &next_block, &next_offset))
-+ goto failed_read;
-+ SQUASHFS_SWAP_DEV_INODE_HEADER(inodep, sinodep);
-+ } else
-+ if (!squashfs_get_cached_block(s, inodep, block, offset,
-+ sizeof(*inodep), &next_block, &next_offset))
-+ goto failed_read;
-+
-+ i->i_nlink = inodep->nlink;
-+ i->i_mode |= (inodeb->inode_type == SQUASHFS_CHRDEV_TYPE) ?
-+ S_IFCHR : S_IFBLK;
-+ init_special_inode(i, i->i_mode, old_decode_dev(inodep->rdev));
-+
-+ TRACE("Device inode %x:%x, rdev %x\n",
-+ SQUASHFS_INODE_BLK(inode), offset, inodep->rdev);
-+ break;
-+ }
-+ case SQUASHFS_FIFO_TYPE:
-+ case SQUASHFS_SOCKET_TYPE: {
-+ struct squashfs_ipc_inode_header *inodep = &id.ipc;
-+ struct squashfs_ipc_inode_header *sinodep = &sid.ipc;
-+
-+ if (msblk->swap) {
-+ if (!squashfs_get_cached_block(s, sinodep, block, offset,
-+ sizeof(*sinodep), &next_block, &next_offset))
-+ goto failed_read;
-+ SQUASHFS_SWAP_IPC_INODE_HEADER(inodep, sinodep);
-+ } else
-+ if (!squashfs_get_cached_block(s, inodep, block, offset,
-+ sizeof(*inodep), &next_block, &next_offset))
-+ goto failed_read;
-+
-+ i->i_nlink = inodep->nlink;
-+ i->i_mode |= (inodeb->inode_type == SQUASHFS_FIFO_TYPE)
-+ ? S_IFIFO : S_IFSOCK;
-+ init_special_inode(i, i->i_mode, 0);
-+ break;
-+ }
-+ default:
-+ ERROR("Unknown inode type %d in squashfs_iget!\n",
-+ inodeb->inode_type);
-+ goto failed_read1;
-+ }
-+
-+ return 1;
-+
-+failed_read:
-+ ERROR("Unable to read inode [%llx:%x]\n", block, offset);
-+
-+failed_read1:
-+ make_bad_inode(i);
-+ return 0;
-+}
-+
-+
-+static int read_inode_lookup_table(struct super_block *s)
-+{
-+ struct squashfs_sb_info *msblk = s->s_fs_info;
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+ unsigned int length = SQUASHFS_LOOKUP_BLOCK_BYTES(sblk->inodes);
-+
-+ TRACE("In read_inode_lookup_table, length %d\n", length);
-+
-+ /* Allocate inode lookup table */
-+ msblk->inode_lookup_table = kmalloc(length, GFP_KERNEL);
-+ if (msblk->inode_lookup_table == NULL) {
-+ ERROR("Failed to allocate inode lookup table\n");
-+ return 0;
-+ }
-+
-+ if (!squashfs_read_data(s, (char *) msblk->inode_lookup_table,
-+ sblk->lookup_table_start, length |
-+ SQUASHFS_COMPRESSED_BIT_BLOCK, NULL, length)) {
-+ ERROR("unable to read inode lookup table\n");
-+ return 0;
-+ }
-+
-+ if (msblk->swap) {
-+ int i;
-+ long long block;
-+
-+ for (i = 0; i < SQUASHFS_LOOKUP_BLOCKS(sblk->inodes); i++) {
-+ /* XXX */
-+ SQUASHFS_SWAP_LOOKUP_BLOCKS((&block),
-+ &msblk->inode_lookup_table[i], 1);
-+ msblk->inode_lookup_table[i] = block;
-+ }
-+ }
-+
-+ return 1;
-+}
-+
-+
-+static int read_fragment_index_table(struct super_block *s)
-+{
-+ struct squashfs_sb_info *msblk = s->s_fs_info;
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+ unsigned int length = SQUASHFS_FRAGMENT_INDEX_BYTES(sblk->fragments);
-+
-+ if(length == 0)
-+ return 1;
-+
-+ /* Allocate fragment index table */
-+ msblk->fragment_index = kmalloc(length, GFP_KERNEL);
-+ if (msblk->fragment_index == NULL) {
-+ ERROR("Failed to allocate fragment index table\n");
-+ return 0;
-+ }
-+
-+ if (!squashfs_read_data(s, (char *) msblk->fragment_index,
-+ sblk->fragment_table_start, length |
-+ SQUASHFS_COMPRESSED_BIT_BLOCK, NULL, length)) {
-+ ERROR("unable to read fragment index table\n");
-+ return 0;
-+ }
-+
-+ if (msblk->swap) {
-+ int i;
-+ long long fragment;
-+
-+ for (i = 0; i < SQUASHFS_FRAGMENT_INDEXES(sblk->fragments); i++) {
-+ /* XXX */
-+ SQUASHFS_SWAP_FRAGMENT_INDEXES((&fragment),
-+ &msblk->fragment_index[i], 1);
-+ msblk->fragment_index[i] = fragment;
-+ }
-+ }
-+
-+ return 1;
-+}
-+
-+
-+static int readahead_metadata(struct super_block *s)
-+{
-+ struct squashfs_sb_info *msblk = s->s_fs_info;
-+ int i;
-+
-+ squashfs_cached_blks = SQUASHFS_CACHED_BLKS;
-+
-+ /* Init inode_table block pointer array */
-+ msblk->block_cache = kmalloc(sizeof(struct squashfs_cache) *
-+ squashfs_cached_blks, GFP_KERNEL);
-+ if (msblk->block_cache == NULL) {
-+ ERROR("Failed to allocate block cache\n");
-+ goto failed;
-+ }
-+
-+ for (i = 0; i < squashfs_cached_blks; i++)
-+ msblk->block_cache[i].block = SQUASHFS_INVALID_BLK;
-+
-+ msblk->next_cache = 0;
-+ msblk->unused_cache_blks = squashfs_cached_blks;
-+
-+ return 1;
-+
-+failed:
-+ return 0;
-+}
-+
-+
-+static int supported_squashfs_filesystem(struct squashfs_sb_info *msblk, int silent)
-+{
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+
-+ msblk->read_inode = squashfs_read_inode;
-+ msblk->read_blocklist = read_blocklist;
-+ msblk->read_fragment_index_table = read_fragment_index_table;
-+
-+ if (sblk->s_major == 1) {
-+ if (!squashfs_1_0_supported(msblk)) {
-+ SERROR("Major/Minor mismatch, Squashfs 1.0 filesystems "
-+ "are unsupported\n");
-+ SERROR("Please recompile with Squashfs 1.0 support enabled\n");
-+ return 0;
-+ }
-+ } else if (sblk->s_major == 2) {
-+ if (!squashfs_2_0_supported(msblk)) {
-+ SERROR("Major/Minor mismatch, Squashfs 2.0 filesystems "
-+ "are unsupported\n");
-+ SERROR("Please recompile with Squashfs 2.0 support enabled\n");
-+ return 0;
-+ }
-+ } else if(sblk->s_major != SQUASHFS_MAJOR || sblk->s_minor >
-+ SQUASHFS_MINOR) {
-+ SERROR("Major/Minor mismatch, trying to mount newer %d.%d "
-+ "filesystem\n", sblk->s_major, sblk->s_minor);
-+ SERROR("Please update your kernel\n");
-+ return 0;
-+ }
-+
-+ return 1;
-+}
-+
-+
-+static int squashfs_fill_super(struct super_block *s, void *data, int silent)
-+{
-+ struct squashfs_sb_info *msblk;
-+ struct squashfs_super_block *sblk;
-+ int i;
-+ char b[BDEVNAME_SIZE];
-+ struct inode *root;
-+
-+ TRACE("Entered squashfs_fill_superblock\n");
-+
-+ s->s_fs_info = kzalloc(sizeof(struct squashfs_sb_info), GFP_KERNEL);
-+ if (s->s_fs_info == NULL) {
-+ ERROR("Failed to allocate superblock\n");
-+ goto failure;
-+ }
-+ msblk = s->s_fs_info;
-+
-+ msblk->stream.workspace = vmalloc(zlib_inflate_workspacesize());
-+ if (msblk->stream.workspace == NULL) {
-+ ERROR("Failed to allocate zlib workspace\n");
-+ goto failure;
-+ }
-+ sblk = &msblk->sblk;
-+
-+ msblk->devblksize = sb_min_blocksize(s, BLOCK_SIZE);
-+ msblk->devblksize_log2 = ffz(~msblk->devblksize);
-+
-+ mutex_init(&msblk->read_data_mutex);
-+ mutex_init(&msblk->read_page_mutex);
-+ mutex_init(&msblk->block_cache_mutex);
-+ mutex_init(&msblk->fragment_mutex);
-+ mutex_init(&msblk->meta_index_mutex);
-+
-+ init_waitqueue_head(&msblk->waitq);
-+ init_waitqueue_head(&msblk->fragment_wait_queue);
-+
-+ /* sblk->bytes_used is checked in squashfs_read_data to ensure reads are not
-+ * beyond filesystem end. As we're using squashfs_read_data to read sblk here,
-+ * first set sblk->bytes_used to a useful value */
-+ sblk->bytes_used = sizeof(struct squashfs_super_block);
-+ if (!squashfs_read_data(s, (char *) sblk, SQUASHFS_START,
-+ sizeof(struct squashfs_super_block) |
-+ SQUASHFS_COMPRESSED_BIT_BLOCK, NULL, sizeof(struct squashfs_super_block))) {
-+ SERROR("unable to read superblock\n");
-+ goto failed_mount;
-+ }
-+
-+ /* Check it is a SQUASHFS superblock */
-+ if ((s->s_magic = sblk->s_magic) != SQUASHFS_MAGIC) {
-+ if (sblk->s_magic == SQUASHFS_MAGIC_SWAP) {
-+ struct squashfs_super_block ssblk;
-+
-+ WARNING("Mounting a different endian SQUASHFS filesystem on %s\n",
-+ bdevname(s->s_bdev, b));
-+
-+ SQUASHFS_SWAP_SUPER_BLOCK(&ssblk, sblk);
-+ memcpy(sblk, &ssblk, sizeof(struct squashfs_super_block));
-+ msblk->swap = 1;
-+ } else {
-+ SERROR("Can't find a SQUASHFS superblock on %s\n",
-+ bdevname(s->s_bdev, b));
-+ goto failed_mount;
-+ }
-+ }
-+
-+ /* Check the MAJOR & MINOR versions */
-+ if(!supported_squashfs_filesystem(msblk, silent))
-+ goto failed_mount;
-+
-+ /* Check the filesystem does not extend beyond the end of the
-+ block device */
-+ if(sblk->bytes_used < 0 || sblk->bytes_used > i_size_read(s->s_bdev->bd_inode))
-+ goto failed_mount;
-+
-+ /* Check the root inode for sanity */
-+ if (SQUASHFS_INODE_OFFSET(sblk->root_inode) > SQUASHFS_METADATA_SIZE)
-+ goto failed_mount;
-+
-+ TRACE("Found valid superblock on %s\n", bdevname(s->s_bdev, b));
-+ TRACE("Inodes are %scompressed\n", SQUASHFS_UNCOMPRESSED_INODES(sblk->flags)
-+ ? "un" : "");
-+ TRACE("Data is %scompressed\n", SQUASHFS_UNCOMPRESSED_DATA(sblk->flags)
-+ ? "un" : "");
-+ TRACE("Check data is %spresent in the filesystem\n",
-+ SQUASHFS_CHECK_DATA(sblk->flags) ? "" : "not ");
-+ TRACE("Filesystem size %lld bytes\n", sblk->bytes_used);
-+ TRACE("Block size %d\n", sblk->block_size);
-+ TRACE("Number of inodes %d\n", sblk->inodes);
-+ if (sblk->s_major > 1)
-+ TRACE("Number of fragments %d\n", sblk->fragments);
-+ TRACE("Number of uids %d\n", sblk->no_uids);
-+ TRACE("Number of gids %d\n", sblk->no_guids);
-+ TRACE("sblk->inode_table_start %llx\n", sblk->inode_table_start);
-+ TRACE("sblk->directory_table_start %llx\n", sblk->directory_table_start);
-+ if (sblk->s_major > 1)
-+ TRACE("sblk->fragment_table_start %llx\n", sblk->fragment_table_start);
-+ TRACE("sblk->uid_start %llx\n", sblk->uid_start);
-+
-+ s->s_maxbytes = MAX_LFS_FILESIZE;
-+ s->s_flags |= MS_RDONLY;
-+ s->s_op = &squashfs_super_ops;
-+
-+ if (readahead_metadata(s) == 0)
-+ goto failed_mount;
-+
-+ /* Allocate read_page block */
-+ msblk->read_page = vmalloc(sblk->block_size);
-+ if (msblk->read_page == NULL) {
-+ ERROR("Failed to allocate read_page block\n");
-+ goto failed_mount;
-+ }
-+
-+ /* Allocate uid and gid tables */
-+ msblk->uid = kmalloc((sblk->no_uids + sblk->no_guids) *
-+ sizeof(unsigned int), GFP_KERNEL);
-+ if (msblk->uid == NULL) {
-+ ERROR("Failed to allocate uid/gid table\n");
-+ goto failed_mount;
-+ }
-+ msblk->guid = msblk->uid + sblk->no_uids;
-+
-+ if (msblk->swap) {
-+ unsigned int suid[sblk->no_uids + sblk->no_guids];
-+
-+ if (!squashfs_read_data(s, (char *) &suid, sblk->uid_start,
-+ ((sblk->no_uids + sblk->no_guids) *
-+ sizeof(unsigned int)) |
-+ SQUASHFS_COMPRESSED_BIT_BLOCK, NULL, (sblk->no_uids + sblk->no_guids) * sizeof(unsigned int))) {
-+ ERROR("unable to read uid/gid table\n");
-+ goto failed_mount;
-+ }
-+
-+ SQUASHFS_SWAP_DATA(msblk->uid, suid, (sblk->no_uids +
-+ sblk->no_guids), (sizeof(unsigned int) * 8));
-+ } else
-+ if (!squashfs_read_data(s, (char *) msblk->uid, sblk->uid_start,
-+ ((sblk->no_uids + sblk->no_guids) *
-+ sizeof(unsigned int)) |
-+ SQUASHFS_COMPRESSED_BIT_BLOCK, NULL, (sblk->no_uids + sblk->no_guids) * sizeof(unsigned int))) {
-+ ERROR("unable to read uid/gid table\n");
-+ goto failed_mount;
-+ }
-+
-+
-+ if (sblk->s_major == 1 && squashfs_1_0_supported(msblk))
-+ goto allocate_root;
-+
-+ msblk->fragment = kzalloc(sizeof(struct squashfs_fragment_cache) *
-+ SQUASHFS_CACHED_FRAGMENTS, GFP_KERNEL);
-+ if (msblk->fragment == NULL) {
-+ ERROR("Failed to allocate fragment block cache\n");
-+ goto failed_mount;
-+ }
-+
-+ for (i = 0; i < SQUASHFS_CACHED_FRAGMENTS; i++) {
-+ msblk->fragment[i].block = SQUASHFS_INVALID_BLK;
-+ }
-+
-+ msblk->next_fragment = 0;
-+ msblk->unused_frag_blks = SQUASHFS_CACHED_FRAGMENTS;
-+
-+ /* Allocate and read fragment index table */
-+ if (msblk->read_fragment_index_table(s) == 0)
-+ goto failed_mount;
-+
-+ if(sblk->s_major < 3 || sblk->lookup_table_start == SQUASHFS_INVALID_BLK)
-+ goto allocate_root;
-+
-+ /* Allocate and read inode lookup table */
-+ if (read_inode_lookup_table(s) == 0)
-+ goto failed_mount;
-+
-+ s->s_op = &squashfs_export_super_ops;
-+ s->s_export_op = &squashfs_export_ops;
-+
-+allocate_root:
-+ root = new_inode(s);
-+ if ((msblk->read_inode)(root, sblk->root_inode) == 0)
-+ goto failed_mount;
-+ insert_inode_hash(root);
-+
-+ s->s_root = d_alloc_root(root);
-+ if (s->s_root == NULL) {
-+ ERROR("Root inode create failed\n");
-+ iput(root);
-+ goto failed_mount;
-+ }
-+
-+ TRACE("Leaving squashfs_fill_super\n");
-+ return 0;
-+
-+failed_mount:
-+ kfree(msblk->inode_lookup_table);
-+ kfree(msblk->fragment_index);
-+ kfree(msblk->fragment);
-+ kfree(msblk->uid);
-+ vfree(msblk->read_page);
-+ kfree(msblk->block_cache);
-+ kfree(msblk->fragment_index_2);
-+ vfree(msblk->stream.workspace);
-+ kfree(s->s_fs_info);
-+ s->s_fs_info = NULL;
-+ return -EINVAL;
-+
-+failure:
-+ return -ENOMEM;
-+}
-+
-+
-+static int squashfs_statfs(struct dentry *dentry, struct kstatfs *buf)
-+{
-+ struct squashfs_sb_info *msblk = dentry->d_sb->s_fs_info;
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+
-+ TRACE("Entered squashfs_statfs\n");
-+
-+ buf->f_type = SQUASHFS_MAGIC;
-+ buf->f_bsize = sblk->block_size;
-+ buf->f_blocks = ((sblk->bytes_used - 1) >> sblk->block_log) + 1;
-+ buf->f_bfree = buf->f_bavail = 0;
-+ buf->f_files = sblk->inodes;
-+ buf->f_ffree = 0;
-+ buf->f_namelen = SQUASHFS_NAME_LEN;
-+
-+ return 0;
-+}
-+
-+
-+static int squashfs_symlink_readpage(struct file *file, struct page *page)
-+{
-+ struct inode *inode = page->mapping->host;
-+ int index = page->index << PAGE_CACHE_SHIFT, length, bytes, avail_bytes;
-+ long long block = SQUASHFS_I(inode)->start_block;
-+ int offset = SQUASHFS_I(inode)->offset;
-+ void *pageaddr = kmap(page);
-+
-+ TRACE("Entered squashfs_symlink_readpage, page index %ld, start block "
-+ "%llx, offset %x\n", page->index,
-+ SQUASHFS_I(inode)->start_block,
-+ SQUASHFS_I(inode)->offset);
-+
-+ for (length = 0; length < index; length += bytes) {
-+ bytes = squashfs_get_cached_block(inode->i_sb, NULL, block,
-+ offset, PAGE_CACHE_SIZE, &block, &offset);
-+ if (bytes == 0) {
-+ ERROR("Unable to read symbolic link [%llx:%x]\n", block, offset);
-+ goto skip_read;
-+ }
-+ }
-+
-+ if (length != index) {
-+ ERROR("(squashfs_symlink_readpage) length != index\n");
-+ bytes = 0;
-+ goto skip_read;
-+ }
-+
-+ avail_bytes = min_t(int, i_size_read(inode) - length, PAGE_CACHE_SIZE);
-+
-+ bytes = squashfs_get_cached_block(inode->i_sb, pageaddr, block, offset,
-+ avail_bytes, &block, &offset);
-+ if (bytes == 0)
-+ ERROR("Unable to read symbolic link [%llx:%x]\n", block, offset);
-+
-+skip_read:
-+ memset(pageaddr + bytes, 0, PAGE_CACHE_SIZE - bytes);
-+ kunmap(page);
-+ flush_dcache_page(page);
-+ SetPageUptodate(page);
-+ unlock_page(page);
-+
-+ return 0;
-+}
-+
-+
-+struct meta_index *locate_meta_index(struct inode *inode, int index, int offset)
-+{
-+ struct meta_index *meta = NULL;
-+ struct squashfs_sb_info *msblk = inode->i_sb->s_fs_info;
-+ int i;
-+
-+ mutex_lock(&msblk->meta_index_mutex);
-+
-+ TRACE("locate_meta_index: index %d, offset %d\n", index, offset);
-+
-+ if (msblk->meta_index == NULL)
-+ goto not_allocated;
-+
-+ for (i = 0; i < SQUASHFS_META_NUMBER; i ++) {
-+ if (msblk->meta_index[i].inode_number == inode->i_ino &&
-+ msblk->meta_index[i].offset >= offset &&
-+ msblk->meta_index[i].offset <= index &&
-+ msblk->meta_index[i].locked == 0) {
-+ TRACE("locate_meta_index: entry %d, offset %d\n", i,
-+ msblk->meta_index[i].offset);
-+ meta = &msblk->meta_index[i];
-+ offset = meta->offset;
-+ }
-+ }
-+
-+ if (meta)
-+ meta->locked = 1;
-+
-+not_allocated:
-+ mutex_unlock(&msblk->meta_index_mutex);
-+
-+ return meta;
-+}
-+
-+
-+struct meta_index *empty_meta_index(struct inode *inode, int offset, int skip)
-+{
-+ struct squashfs_sb_info *msblk = inode->i_sb->s_fs_info;
-+ struct meta_index *meta = NULL;
-+ int i;
-+
-+ mutex_lock(&msblk->meta_index_mutex);
-+
-+ TRACE("empty_meta_index: offset %d, skip %d\n", offset, skip);
-+
-+ if (msblk->meta_index == NULL) {
-+ msblk->meta_index = kmalloc(sizeof(struct meta_index) *
-+ SQUASHFS_META_NUMBER, GFP_KERNEL);
-+ if (msblk->meta_index == NULL) {
-+ ERROR("Failed to allocate meta_index\n");
-+ goto failed;
-+ }
-+ for (i = 0; i < SQUASHFS_META_NUMBER; i++) {
-+ msblk->meta_index[i].inode_number = 0;
-+ msblk->meta_index[i].locked = 0;
-+ }
-+ msblk->next_meta_index = 0;
-+ }
-+
-+ for (i = SQUASHFS_META_NUMBER; i &&
-+ msblk->meta_index[msblk->next_meta_index].locked; i --)
-+ msblk->next_meta_index = (msblk->next_meta_index + 1) %
-+ SQUASHFS_META_NUMBER;
-+
-+ if (i == 0) {
-+ TRACE("empty_meta_index: failed!\n");
-+ goto failed;
-+ }
-+
-+ TRACE("empty_meta_index: returned meta entry %d, %p\n",
-+ msblk->next_meta_index,
-+ &msblk->meta_index[msblk->next_meta_index]);
-+
-+ meta = &msblk->meta_index[msblk->next_meta_index];
-+ msblk->next_meta_index = (msblk->next_meta_index + 1) %
-+ SQUASHFS_META_NUMBER;
-+
-+ meta->inode_number = inode->i_ino;
-+ meta->offset = offset;
-+ meta->skip = skip;
-+ meta->entries = 0;
-+ meta->locked = 1;
-+
-+failed:
-+ mutex_unlock(&msblk->meta_index_mutex);
-+ return meta;
-+}
-+
-+
-+void release_meta_index(struct inode *inode, struct meta_index *meta)
-+{
-+ meta->locked = 0;
-+ smp_mb();
-+}
-+
-+
-+static int read_block_index(struct super_block *s, int blocks, char *block_list,
-+ long long *start_block, int *offset)
-+{
-+ struct squashfs_sb_info *msblk = s->s_fs_info;
-+ unsigned int *block_listp;
-+ int block = 0;
-+
-+ if (msblk->swap) {
-+ char sblock_list[blocks << 2];
-+
-+ if (!squashfs_get_cached_block(s, sblock_list, *start_block,
-+ *offset, blocks << 2, start_block, offset)) {
-+ ERROR("Fail reading block list [%llx:%x]\n", *start_block, *offset);
-+ goto failure;
-+ }
-+ SQUASHFS_SWAP_INTS(((unsigned int *)block_list),
-+ ((unsigned int *)sblock_list), blocks);
-+ } else {
-+ if (!squashfs_get_cached_block(s, block_list, *start_block,
-+ *offset, blocks << 2, start_block, offset)) {
-+ ERROR("Fail reading block list [%llx:%x]\n", *start_block, *offset);
-+ goto failure;
-+ }
-+ }
-+
-+ for (block_listp = (unsigned int *) block_list; blocks;
-+ block_listp++, blocks --)
-+ block += SQUASHFS_COMPRESSED_SIZE_BLOCK(*block_listp);
-+
-+ return block;
-+
-+failure:
-+ return -1;
-+}
-+
-+
-+#define SIZE 256
-+
-+static inline int calculate_skip(int blocks) {
-+ int skip = (blocks - 1) / ((SQUASHFS_SLOTS * SQUASHFS_META_ENTRIES + 1) * SQUASHFS_META_INDEXES);
-+ return skip >= 7 ? 7 : skip + 1;
-+}
-+
-+
-+static int get_meta_index(struct inode *inode, int index,
-+ long long *index_block, int *index_offset,
-+ long long *data_block, char *block_list)
-+{
-+ struct squashfs_sb_info *msblk = inode->i_sb->s_fs_info;
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+ int skip = calculate_skip(i_size_read(inode) >> sblk->block_log);
-+ int offset = 0;
-+ struct meta_index *meta;
-+ struct meta_entry *meta_entry;
-+ long long cur_index_block = SQUASHFS_I(inode)->u.s1.block_list_start;
-+ int cur_offset = SQUASHFS_I(inode)->offset;
-+ long long cur_data_block = SQUASHFS_I(inode)->start_block;
-+ int i;
-+
-+ index /= SQUASHFS_META_INDEXES * skip;
-+
-+ while (offset < index) {
-+ meta = locate_meta_index(inode, index, offset + 1);
-+
-+ if (meta == NULL) {
-+ meta = empty_meta_index(inode, offset + 1, skip);
-+ if (meta == NULL)
-+ goto all_done;
-+ } else {
-+ if(meta->entries == 0)
-+ goto failed;
-+ /* XXX */
-+ offset = index < meta->offset + meta->entries ? index :
-+ meta->offset + meta->entries - 1;
-+ /* XXX */
-+ meta_entry = &meta->meta_entry[offset - meta->offset];
-+ cur_index_block = meta_entry->index_block + sblk->inode_table_start;
-+ cur_offset = meta_entry->offset;
-+ cur_data_block = meta_entry->data_block;
-+ TRACE("get_meta_index: offset %d, meta->offset %d, "
-+ "meta->entries %d\n", offset, meta->offset, meta->entries);
-+ TRACE("get_meta_index: index_block 0x%llx, offset 0x%x"
-+ " data_block 0x%llx\n", cur_index_block,
-+ cur_offset, cur_data_block);
-+ }
-+
-+ for (i = meta->offset + meta->entries; i <= index &&
-+ i < meta->offset + SQUASHFS_META_ENTRIES; i++) {
-+ int blocks = skip * SQUASHFS_META_INDEXES;
-+
-+ while (blocks) {
-+ int block = blocks > (SIZE >> 2) ? (SIZE >> 2) : blocks;
-+ int res = read_block_index(inode->i_sb, block, block_list,
-+ &cur_index_block, &cur_offset);
-+
-+ if (res == -1)
-+ goto failed;
-+
-+ cur_data_block += res;
-+ blocks -= block;
-+ }
-+
-+ meta_entry = &meta->meta_entry[i - meta->offset];
-+ meta_entry->index_block = cur_index_block - sblk->inode_table_start;
-+ meta_entry->offset = cur_offset;
-+ meta_entry->data_block = cur_data_block;
-+ meta->entries ++;
-+ offset ++;
-+ }
-+
-+ TRACE("get_meta_index: meta->offset %d, meta->entries %d\n",
-+ meta->offset, meta->entries);
-+
-+ release_meta_index(inode, meta);
-+ }
-+
-+all_done:
-+ *index_block = cur_index_block;
-+ *index_offset = cur_offset;
-+ *data_block = cur_data_block;
-+
-+ return offset * SQUASHFS_META_INDEXES * skip;
-+
-+failed:
-+ release_meta_index(inode, meta);
-+ return -1;
-+}
-+
-+
-+static long long read_blocklist(struct inode *inode, int index,
-+ int readahead_blks, char *block_list,
-+ unsigned short **block_p, unsigned int *bsize)
-+{
-+ long long block_ptr;
-+ int offset;
-+ long long block;
-+ int res = get_meta_index(inode, index, &block_ptr, &offset, &block,
-+ block_list);
-+
-+ TRACE("read_blocklist: res %d, index %d, block_ptr 0x%llx, offset"
-+ " 0x%x, block 0x%llx\n", res, index, block_ptr, offset, block);
-+
-+ if(res == -1)
-+ goto failure;
-+
-+ index -= res;
-+
-+ while (index) {
-+ int blocks = index > (SIZE >> 2) ? (SIZE >> 2) : index;
-+ int res = read_block_index(inode->i_sb, blocks, block_list,
-+ &block_ptr, &offset);
-+ if (res == -1)
-+ goto failure;
-+ block += res;
-+ index -= blocks;
-+ }
-+
-+ if (read_block_index(inode->i_sb, 1, block_list, &block_ptr, &offset) == -1)
-+ goto failure;
-+ *bsize = *((unsigned int *) block_list);
-+
-+ return block;
-+
-+failure:
-+ return 0;
-+}
-+
-+
-+static int squashfs_readpage(struct file *file, struct page *page)
-+{
-+ struct inode *inode = page->mapping->host;
-+ struct squashfs_sb_info *msblk = inode->i_sb->s_fs_info;
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+ unsigned char *block_list = NULL;
-+ long long block;
-+ unsigned int bsize, i;
-+ int bytes;
-+ int index = page->index >> (sblk->block_log - PAGE_CACHE_SHIFT);
-+ void *pageaddr;
-+ struct squashfs_fragment_cache *fragment = NULL;
-+ char *data_ptr = msblk->read_page;
-+
-+ int mask = (1 << (sblk->block_log - PAGE_CACHE_SHIFT)) - 1;
-+ int start_index = page->index & ~mask;
-+ int end_index = start_index | mask;
-+ int file_end = i_size_read(inode) >> sblk->block_log;
-+ int sparse = 0;
-+
-+ TRACE("Entered squashfs_readpage, page index %lx, start block %llx\n",
-+ page->index, SQUASHFS_I(inode)->start_block);
-+
-+ if (page->index >= ((i_size_read(inode) + PAGE_CACHE_SIZE - 1) >>
-+ PAGE_CACHE_SHIFT))
-+ goto out;
-+
-+ if (SQUASHFS_I(inode)->u.s1.fragment_start_block == SQUASHFS_INVALID_BLK
-+ || index < file_end) {
-+ block_list = kmalloc(SIZE, GFP_KERNEL);
-+ if (block_list == NULL) {
-+ ERROR("Failed to allocate block_list\n");
-+ goto error_out;
-+ }
-+
-+ block = (msblk->read_blocklist)(inode, index, 1, block_list, NULL, &bsize);
-+ if (block == 0)
-+ goto error_out;
-+
-+ if (bsize == 0) { /* hole */
-+ bytes = index == file_end ?
-+ (i_size_read(inode) & (sblk->block_size - 1)) : sblk->block_size;
-+ sparse = 1;
-+ } else {
-+ mutex_lock(&msblk->read_page_mutex);
-+
-+ bytes = squashfs_read_data(inode->i_sb, msblk->read_page, block,
-+ bsize, NULL, sblk->block_size);
-+
-+ if (bytes == 0) {
-+ ERROR("Unable to read page, block %llx, size %x\n", block, bsize);
-+ mutex_unlock(&msblk->read_page_mutex);
-+ goto error_out;
-+ }
-+ }
-+ } else {
-+ fragment = get_cached_fragment(inode->i_sb,
-+ SQUASHFS_I(inode)-> u.s1.fragment_start_block,
-+ SQUASHFS_I(inode)->u.s1.fragment_size);
-+
-+ if (fragment == NULL) {
-+ ERROR("Unable to read page, block %llx, size %x\n",
-+ SQUASHFS_I(inode)->u.s1.fragment_start_block,
-+ (int) SQUASHFS_I(inode)->u.s1.fragment_size);
-+ goto error_out;
-+ }
-+ bytes = i_size_read(inode) & (sblk->block_size - 1);
-+ data_ptr = fragment->data + SQUASHFS_I(inode)->u.s1.fragment_offset;
-+ }
-+
-+ for (i = start_index; i <= end_index && bytes > 0; i++,
-+ bytes -= PAGE_CACHE_SIZE, data_ptr += PAGE_CACHE_SIZE) {
-+ struct page *push_page;
-+ int avail = sparse ? 0 : min_t(unsigned int, bytes, PAGE_CACHE_SIZE);
-+
-+ TRACE("bytes %d, i %d, available_bytes %d\n", bytes, i, avail);
-+
-+ push_page = (i == page->index) ? page :
-+ grab_cache_page_nowait(page->mapping, i);
-+
-+ if (!push_page)
-+ continue;
-+
-+ if (PageUptodate(push_page))
-+ goto skip_page;
-+
-+ pageaddr = kmap_atomic(push_page, KM_USER0);
-+ memcpy(pageaddr, data_ptr, avail);
-+ memset(pageaddr + avail, 0, PAGE_CACHE_SIZE - avail);
-+ kunmap_atomic(pageaddr, KM_USER0);
-+ flush_dcache_page(push_page);
-+ SetPageUptodate(push_page);
-+skip_page:
-+ unlock_page(push_page);
-+ if(i != page->index)
-+ page_cache_release(push_page);
-+ }
-+
-+ if (SQUASHFS_I(inode)->u.s1.fragment_start_block == SQUASHFS_INVALID_BLK
-+ || index < file_end) {
-+ if (!sparse)
-+ mutex_unlock(&msblk->read_page_mutex);
-+ kfree(block_list);
-+ } else
-+ release_cached_fragment(msblk, fragment);
-+
-+ return 0;
-+
-+error_out:
-+ SetPageError(page);
-+out:
-+ pageaddr = kmap_atomic(page, KM_USER0);
-+ memset(pageaddr, 0, PAGE_CACHE_SIZE);
-+ kunmap_atomic(pageaddr, KM_USER0);
-+ flush_dcache_page(page);
-+ if (!PageError(page))
-+ SetPageUptodate(page);
-+ unlock_page(page);
-+
-+ kfree(block_list);
-+ return 0;
-+}
-+
-+
-+static int get_dir_index_using_offset(struct super_block *s,
-+ long long *next_block, unsigned int *next_offset,
-+ long long index_start, unsigned int index_offset, int i_count,
-+ long long f_pos)
-+{
-+ struct squashfs_sb_info *msblk = s->s_fs_info;
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+ int i, length = 0;
-+ struct squashfs_dir_index index;
-+
-+ TRACE("Entered get_dir_index_using_offset, i_count %d, f_pos %d\n",
-+ i_count, (unsigned int) f_pos);
-+
-+ f_pos =- 3;
-+ if (f_pos == 0)
-+ goto finish;
-+
-+ for (i = 0; i < i_count; i++) {
-+ if (msblk->swap) {
-+ struct squashfs_dir_index sindex;
-+ squashfs_get_cached_block(s, &sindex, index_start, index_offset,
-+ sizeof(sindex), &index_start, &index_offset);
-+ SQUASHFS_SWAP_DIR_INDEX(&index, &sindex);
-+ } else
-+ squashfs_get_cached_block(s, &index, index_start, index_offset,
-+ sizeof(index), &index_start, &index_offset);
-+
-+ if (index.index > f_pos)
-+ break;
-+
-+ squashfs_get_cached_block(s, NULL, index_start, index_offset,
-+ index.size + 1, &index_start, &index_offset);
-+
-+ length = index.index;
-+ *next_block = index.start_block + sblk->directory_table_start;
-+ }
-+
-+ *next_offset = (length + *next_offset) % SQUASHFS_METADATA_SIZE;
-+
-+finish:
-+ return length + 3;
-+}
-+
-+
-+static int get_dir_index_using_name(struct super_block *s,
-+ long long *next_block, unsigned int *next_offset,
-+ long long index_start, unsigned int index_offset, int i_count,
-+ const char *name, int size)
-+{
-+ struct squashfs_sb_info *msblk = s->s_fs_info;
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+ int i, length = 0;
-+ struct squashfs_dir_index *index;
-+ char *str;
-+
-+ TRACE("Entered get_dir_index_using_name, i_count %d\n", i_count);
-+
-+ str = kmalloc(sizeof(struct squashfs_dir_index) +
-+ (SQUASHFS_NAME_LEN + 1) * 2, GFP_KERNEL);
-+ if (str == NULL) {
-+ ERROR("Failed to allocate squashfs_dir_index\n");
-+ goto failure;
-+ }
-+
-+ index = (struct squashfs_dir_index *) (str + SQUASHFS_NAME_LEN + 1);
-+ strncpy(str, name, size);
-+ str[size] = '\0';
-+
-+ for (i = 0; i < i_count; i++) {
-+ if (msblk->swap) {
-+ struct squashfs_dir_index sindex;
-+ squashfs_get_cached_block(s, &sindex, index_start, index_offset,
-+ sizeof(sindex), &index_start, &index_offset);
-+ SQUASHFS_SWAP_DIR_INDEX(index, &sindex);
-+ } else
-+ squashfs_get_cached_block(s, index, index_start, index_offset,
-+ sizeof(struct squashfs_dir_index), &index_start, &index_offset);
-+
-+ squashfs_get_cached_block(s, index->name, index_start, index_offset,
-+ index->size + 1, &index_start, &index_offset);
-+
-+ index->name[index->size + 1] = '\0';
-+
-+ if (strcmp(index->name, str) > 0)
-+ break;
-+
-+ length = index->index;
-+ *next_block = index->start_block + sblk->directory_table_start;
-+ }
-+
-+ *next_offset = (length + *next_offset) % SQUASHFS_METADATA_SIZE;
-+ kfree(str);
-+
-+failure:
-+ return length + 3;
-+}
-+
-+
-+static int squashfs_readdir(struct file *file, void *dirent, filldir_t filldir)
-+{
-+ struct inode *i = file->f_dentry->d_inode;
-+ struct squashfs_sb_info *msblk = i->i_sb->s_fs_info;
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+ long long next_block = SQUASHFS_I(i)->start_block +
-+ sblk->directory_table_start;
-+ int next_offset = SQUASHFS_I(i)->offset, length = 0, dir_count;
-+ struct squashfs_dir_header dirh;
-+ struct squashfs_dir_entry *dire;
-+
-+ TRACE("Entered squashfs_readdir [%llx:%x]\n", next_block, next_offset);
-+
-+ dire = kmalloc(sizeof(struct squashfs_dir_entry) +
-+ SQUASHFS_NAME_LEN + 1, GFP_KERNEL);
-+ if (dire == NULL) {
-+ ERROR("Failed to allocate squashfs_dir_entry\n");
-+ goto finish;
-+ }
-+
-+ while(file->f_pos < 3) {
-+ char *name;
-+ int size, i_ino;
-+
-+ if(file->f_pos == 0) {
-+ name = ".";
-+ size = 1;
-+ i_ino = i->i_ino;
-+ } else {
-+ name = "..";
-+ size = 2;
-+ i_ino = SQUASHFS_I(i)->u.s2.parent_inode;
-+ }
-+ TRACE("Calling filldir(%x, %s, %d, %d, %d, %d)\n",
-+ (unsigned int) dirent, name, size, (int)
-+ file->f_pos, i_ino, squashfs_filetype_table[1]);
-+
-+ if (filldir(dirent, name, size, file->f_pos, i_ino,
-+ squashfs_filetype_table[1]) < 0) {
-+ TRACE("Filldir returned less than 0\n");
-+ goto finish;
-+ }
-+ file->f_pos += size;
-+ }
-+
-+ length = get_dir_index_using_offset(i->i_sb, &next_block, &next_offset,
-+ SQUASHFS_I(i)->u.s2.directory_index_start,
-+ SQUASHFS_I(i)->u.s2.directory_index_offset,
-+ SQUASHFS_I(i)->u.s2.directory_index_count, file->f_pos);
-+
-+ while (length < i_size_read(i)) {
-+ /* read directory header */
-+ if (msblk->swap) {
-+ struct squashfs_dir_header sdirh;
-+
-+ if (!squashfs_get_cached_block(i->i_sb, &sdirh, next_block,
-+ next_offset, sizeof(sdirh), &next_block, &next_offset))
-+ goto failed_read;
-+
-+ length += sizeof(sdirh);
-+ SQUASHFS_SWAP_DIR_HEADER(&dirh, &sdirh);
-+ } else {
-+ if (!squashfs_get_cached_block(i->i_sb, &dirh, next_block,
-+ next_offset, sizeof(dirh), &next_block, &next_offset))
-+ goto failed_read;
-+
-+ length += sizeof(dirh);
-+ }
-+
-+ dir_count = dirh.count + 1;
-+ while (dir_count--) {
-+ if (msblk->swap) {
-+ struct squashfs_dir_entry sdire;
-+ if (!squashfs_get_cached_block(i->i_sb, &sdire, next_block,
-+ next_offset, sizeof(sdire), &next_block, &next_offset))
-+ goto failed_read;
-+
-+ length += sizeof(sdire);
-+ SQUASHFS_SWAP_DIR_ENTRY(dire, &sdire);
-+ } else {
-+ if (!squashfs_get_cached_block(i->i_sb, dire, next_block,
-+ next_offset, sizeof(*dire), &next_block, &next_offset))
-+ goto failed_read;
-+
-+ length += sizeof(*dire);
-+ }
-+
-+ if (!squashfs_get_cached_block(i->i_sb, dire->name, next_block,
-+ next_offset, dire->size + 1, &next_block, &next_offset))
-+ goto failed_read;
-+
-+ length += dire->size + 1;
-+
-+ if (file->f_pos >= length)
-+ continue;
-+
-+ dire->name[dire->size + 1] = '\0';
-+
-+ TRACE("Calling filldir(%x, %s, %d, %d, %x:%x, %d, %d)\n",
-+ (unsigned int) dirent, dire->name, dire->size + 1,
-+ (int) file->f_pos, dirh.start_block, dire->offset,
-+ dirh.inode_number + dire->inode_number,
-+ squashfs_filetype_table[dire->type]);
-+
-+ if (filldir(dirent, dire->name, dire->size + 1, file->f_pos,
-+ dirh.inode_number + dire->inode_number,
-+ squashfs_filetype_table[dire->type]) < 0) {
-+ TRACE("Filldir returned less than 0\n");
-+ goto finish;
-+ }
-+ file->f_pos = length;
-+ }
-+ }
-+
-+finish:
-+ kfree(dire);
-+ return 0;
-+
-+failed_read:
-+ ERROR("Unable to read directory block [%llx:%x]\n", next_block,
-+ next_offset);
-+ kfree(dire);
-+ return 0;
-+}
-+
-+
-+static struct dentry *squashfs_lookup(struct inode *i, struct dentry *dentry,
-+ struct nameidata *nd)
-+{
-+ const unsigned char *name = dentry->d_name.name;
-+ int len = dentry->d_name.len;
-+ struct inode *inode = NULL;
-+ struct squashfs_sb_info *msblk = i->i_sb->s_fs_info;
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+ long long next_block = SQUASHFS_I(i)->start_block +
-+ sblk->directory_table_start;
-+ int next_offset = SQUASHFS_I(i)->offset, length = 0, dir_count;
-+ struct squashfs_dir_header dirh;
-+ struct squashfs_dir_entry *dire;
-+
-+ TRACE("Entered squashfs_lookup [%llx:%x]\n", next_block, next_offset);
-+
-+ dire = kmalloc(sizeof(struct squashfs_dir_entry) +
-+ SQUASHFS_NAME_LEN + 1, GFP_KERNEL);
-+ if (dire == NULL) {
-+ ERROR("Failed to allocate squashfs_dir_entry\n");
-+ goto exit_lookup;
-+ }
-+
-+ if (len > SQUASHFS_NAME_LEN)
-+ goto exit_lookup;
-+
-+ length = get_dir_index_using_name(i->i_sb, &next_block, &next_offset,
-+ SQUASHFS_I(i)->u.s2.directory_index_start,
-+ SQUASHFS_I(i)->u.s2.directory_index_offset,
-+ SQUASHFS_I(i)->u.s2.directory_index_count, name, len);
-+
-+ while (length < i_size_read(i)) {
-+ /* read directory header */
-+ if (msblk->swap) {
-+ struct squashfs_dir_header sdirh;
-+ if (!squashfs_get_cached_block(i->i_sb, &sdirh, next_block,
-+ next_offset, sizeof(sdirh), &next_block, &next_offset))
-+ goto failed_read;
-+
-+ length += sizeof(sdirh);
-+ SQUASHFS_SWAP_DIR_HEADER(&dirh, &sdirh);
-+ } else {
-+ if (!squashfs_get_cached_block(i->i_sb, &dirh, next_block,
-+ next_offset, sizeof(dirh), &next_block, &next_offset))
-+ goto failed_read;
-+
-+ length += sizeof(dirh);
-+ }
-+
-+ dir_count = dirh.count + 1;
-+ while (dir_count--) {
-+ if (msblk->swap) {
-+ struct squashfs_dir_entry sdire;
-+ if (!squashfs_get_cached_block(i->i_sb, &sdire, next_block,
-+ next_offset, sizeof(sdire), &next_block, &next_offset))
-+ goto failed_read;
-+
-+ length += sizeof(sdire);
-+ SQUASHFS_SWAP_DIR_ENTRY(dire, &sdire);
-+ } else {
-+ if (!squashfs_get_cached_block(i->i_sb, dire, next_block,
-+ next_offset, sizeof(*dire), &next_block, &next_offset))
-+ goto failed_read;
-+
-+ length += sizeof(*dire);
-+ }
-+
-+ if (!squashfs_get_cached_block(i->i_sb, dire->name, next_block,
-+ next_offset, dire->size + 1, &next_block, &next_offset))
-+ goto failed_read;
-+
-+ length += dire->size + 1;
-+
-+ if (name[0] < dire->name[0])
-+ goto exit_lookup;
-+
-+ if ((len == dire->size + 1) && !strncmp(name, dire->name, len)) {
-+ squashfs_inode_t ino = SQUASHFS_MKINODE(dirh.start_block,
-+ dire->offset);
-+
-+ TRACE("calling squashfs_iget for directory entry %s, inode"
-+ " %x:%x, %d\n", name, dirh.start_block, dire->offset,
-+ dirh.inode_number + dire->inode_number);
-+
-+ inode = squashfs_iget(i->i_sb, ino, dirh.inode_number + dire->inode_number);
-+
-+ goto exit_lookup;
-+ }
-+ }
-+ }
-+
-+exit_lookup:
-+ kfree(dire);
-+ if (inode)
-+ return d_splice_alias(inode, dentry);
-+ d_add(dentry, inode);
-+ return ERR_PTR(0);
-+
-+failed_read:
-+ ERROR("Unable to read directory block [%llx:%x]\n", next_block,
-+ next_offset);
-+ goto exit_lookup;
-+}
-+
-+
-+static int squashfs_remount(struct super_block *s, int *flags, char *data)
-+{
-+ *flags |= MS_RDONLY;
-+ return 0;
-+}
-+
-+
-+static void squashfs_put_super(struct super_block *s)
-+{
-+ int i;
-+
-+ if (s->s_fs_info) {
-+ struct squashfs_sb_info *sbi = s->s_fs_info;
-+ if (sbi->block_cache)
-+ for (i = 0; i < squashfs_cached_blks; i++)
-+ if (sbi->block_cache[i].block != SQUASHFS_INVALID_BLK)
-+ vfree(sbi->block_cache[i].data);
-+ if (sbi->fragment)
-+ for (i = 0; i < SQUASHFS_CACHED_FRAGMENTS; i++)
-+ vfree(sbi->fragment[i].data);
-+ kfree(sbi->fragment);
-+ kfree(sbi->block_cache);
-+ vfree(sbi->read_page);
-+ kfree(sbi->uid);
-+ kfree(sbi->fragment_index);
-+ kfree(sbi->fragment_index_2);
-+ kfree(sbi->meta_index);
-+ vfree(sbi->stream.workspace);
-+ kfree(s->s_fs_info);
-+ s->s_fs_info = NULL;
-+ }
-+}
-+
-+
-+static int squashfs_get_sb(struct file_system_type *fs_type, int flags,
-+ const char *dev_name, void *data, struct vfsmount *mnt)
-+{
-+ return get_sb_bdev(fs_type, flags, dev_name, data, squashfs_fill_super,
-+ mnt);
-+}
-+
-+
-+static int __init init_squashfs_fs(void)
-+{
-+ int err = init_inodecache();
-+ if (err)
-+ goto out;
-+
-+ printk(KERN_INFO "squashfs: version 3.3 (2007/10/31) "
-+ "Phillip Lougher\n");
-+
-+ err = register_filesystem(&squashfs_fs_type);
-+ if (err)
-+ destroy_inodecache();
-+
-+out:
-+ return err;
-+}
-+
-+
-+static void __exit exit_squashfs_fs(void)
-+{
-+ unregister_filesystem(&squashfs_fs_type);
-+ destroy_inodecache();
-+}
-+
-+
-+static struct kmem_cache * squashfs_inode_cachep;
-+
-+
-+static struct inode *squashfs_alloc_inode(struct super_block *sb)
-+{
-+ struct squashfs_inode_info *ei;
-+ ei = kmem_cache_alloc(squashfs_inode_cachep, GFP_KERNEL);
-+ return ei ? &ei->vfs_inode : NULL;
-+}
-+
-+
-+static void squashfs_destroy_inode(struct inode *inode)
-+{
-+ kmem_cache_free(squashfs_inode_cachep, SQUASHFS_I(inode));
-+}
-+
-+
-+static void init_once(void * foo, struct kmem_cache * cachep, unsigned long flags)
-+{
-+ struct squashfs_inode_info *ei = foo;
-+
-+ inode_init_once(&ei->vfs_inode);
-+}
-+
-+
-+static int __init init_inodecache(void)
-+{
-+ squashfs_inode_cachep = kmem_cache_create("squashfs_inode_cache",
-+ sizeof(struct squashfs_inode_info), 0,
-+ SLAB_HWCACHE_ALIGN|SLAB_RECLAIM_ACCOUNT, init_once);
-+ if (squashfs_inode_cachep == NULL)
-+ return -ENOMEM;
-+ return 0;
-+}
-+
-+
-+static void destroy_inodecache(void)
-+{
-+ kmem_cache_destroy(squashfs_inode_cachep);
-+}
-+
-+
-+module_init(init_squashfs_fs);
-+module_exit(exit_squashfs_fs);
-+MODULE_DESCRIPTION("squashfs 3.2-r2-CVS, a compressed read-only filesystem");
-+MODULE_AUTHOR("Phillip Lougher ");
-+MODULE_LICENSE("GPL");
-diff -x .gitignore -Nurp linux-2.6.23/fs/squashfs/Makefile linux-2.6.23-squashfs3.3/fs/squashfs/Makefile
---- linux-2.6.23/fs/squashfs/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.23-squashfs3.3/fs/squashfs/Makefile 2005-11-20 14:31:00.000000000 +0000
-@@ -0,0 +1,7 @@
-+#
-+# Makefile for the linux squashfs routines.
-+#
-+
-+obj-$(CONFIG_SQUASHFS) += squashfs.o
-+squashfs-y += inode.o
-+squashfs-y += squashfs2_0.o
-diff -x .gitignore -Nurp linux-2.6.23/fs/squashfs/squashfs2_0.c linux-2.6.23-squashfs3.3/fs/squashfs/squashfs2_0.c
---- linux-2.6.23/fs/squashfs/squashfs2_0.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.23-squashfs3.3/fs/squashfs/squashfs2_0.c 2007-10-25 00:43:59.000000000 +0100
-@@ -0,0 +1,740 @@
-+/*
-+ * Squashfs - a compressed read only filesystem for Linux
-+ *
-+ * Copyright (c) 2002, 2003, 2004, 2005, 2006, 2007
-+ * Phillip Lougher
-+ *
-+ * This program is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU General Public License
-+ * as published by the Free Software Foundation; either version 2,
-+ * or (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+ *
-+ * squashfs2_0.c
-+ */
-+
-+#include
-+#include
-+#include
-+#include
-+#include
-+#include
-+
-+#include "squashfs.h"
-+static int squashfs_readdir_2(struct file *file, void *dirent, filldir_t filldir);
-+static struct dentry *squashfs_lookup_2(struct inode *, struct dentry *,
-+ struct nameidata *);
-+
-+static struct file_operations squashfs_dir_ops_2 = {
-+ .read = generic_read_dir,
-+ .readdir = squashfs_readdir_2
-+};
-+
-+static struct inode_operations squashfs_dir_inode_ops_2 = {
-+ .lookup = squashfs_lookup_2
-+};
-+
-+static unsigned char squashfs_filetype_table[] = {
-+ DT_UNKNOWN, DT_DIR, DT_REG, DT_LNK, DT_BLK, DT_CHR, DT_FIFO, DT_SOCK
-+};
-+
-+static int read_fragment_index_table_2(struct super_block *s)
-+{
-+ struct squashfs_sb_info *msblk = s->s_fs_info;
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+
-+ if (!(msblk->fragment_index_2 = kmalloc(SQUASHFS_FRAGMENT_INDEX_BYTES_2
-+ (sblk->fragments), GFP_KERNEL))) {
-+ ERROR("Failed to allocate uid/gid table\n");
-+ return 0;
-+ }
-+
-+ if (SQUASHFS_FRAGMENT_INDEX_BYTES_2(sblk->fragments) &&
-+ !squashfs_read_data(s, (char *)
-+ msblk->fragment_index_2,
-+ sblk->fragment_table_start,
-+ SQUASHFS_FRAGMENT_INDEX_BYTES_2
-+ (sblk->fragments) |
-+ SQUASHFS_COMPRESSED_BIT_BLOCK, NULL, SQUASHFS_FRAGMENT_INDEX_BYTES_2(sblk->fragments))) {
-+ ERROR("unable to read fragment index table\n");
-+ return 0;
-+ }
-+
-+ if (msblk->swap) {
-+ int i;
-+ unsigned int fragment;
-+
-+ for (i = 0; i < SQUASHFS_FRAGMENT_INDEXES_2(sblk->fragments);
-+ i++) {
-+ SQUASHFS_SWAP_FRAGMENT_INDEXES_2((&fragment),
-+ &msblk->fragment_index_2[i], 1);
-+ msblk->fragment_index_2[i] = fragment;
-+ }
-+ }
-+
-+ return 1;
-+}
-+
-+
-+static int get_fragment_location_2(struct super_block *s, unsigned int fragment,
-+ long long *fragment_start_block,
-+ unsigned int *fragment_size)
-+{
-+ struct squashfs_sb_info *msblk = s->s_fs_info;
-+ long long start_block =
-+ msblk->fragment_index_2[SQUASHFS_FRAGMENT_INDEX_2(fragment)];
-+ int offset = SQUASHFS_FRAGMENT_INDEX_OFFSET_2(fragment);
-+ struct squashfs_fragment_entry_2 fragment_entry;
-+
-+ if (msblk->swap) {
-+ struct squashfs_fragment_entry_2 sfragment_entry;
-+
-+ if (!squashfs_get_cached_block(s, (char *) &sfragment_entry,
-+ start_block, offset,
-+ sizeof(sfragment_entry), &start_block,
-+ &offset))
-+ goto out;
-+ SQUASHFS_SWAP_FRAGMENT_ENTRY_2(&fragment_entry, &sfragment_entry);
-+ } else
-+ if (!squashfs_get_cached_block(s, (char *) &fragment_entry,
-+ start_block, offset,
-+ sizeof(fragment_entry), &start_block,
-+ &offset))
-+ goto out;
-+
-+ *fragment_start_block = fragment_entry.start_block;
-+ *fragment_size = fragment_entry.size;
-+
-+ return 1;
-+
-+out:
-+ return 0;
-+}
-+
-+
-+static void squashfs_new_inode(struct squashfs_sb_info *msblk, struct inode *i,
-+ struct squashfs_base_inode_header_2 *inodeb, unsigned int ino)
-+{
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+
-+ i->i_ino = ino;
-+ i->i_mtime.tv_sec = sblk->mkfs_time;
-+ i->i_atime.tv_sec = sblk->mkfs_time;
-+ i->i_ctime.tv_sec = sblk->mkfs_time;
-+ i->i_uid = msblk->uid[inodeb->uid];
-+ i->i_mode = inodeb->mode;
-+ i->i_nlink = 1;
-+ i->i_size = 0;
-+ if (inodeb->guid == SQUASHFS_GUIDS)
-+ i->i_gid = i->i_uid;
-+ else
-+ i->i_gid = msblk->guid[inodeb->guid];
-+}
-+
-+
-+static int squashfs_read_inode_2(struct inode *i, squashfs_inode_t inode)
-+{
-+ struct super_block *s = i->i_sb;
-+ struct squashfs_sb_info *msblk = s->s_fs_info;
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+ unsigned int block = SQUASHFS_INODE_BLK(inode) +
-+ sblk->inode_table_start;
-+ unsigned int offset = SQUASHFS_INODE_OFFSET(inode);
-+ unsigned int ino = SQUASHFS_MK_VFS_INODE(block -
-+ sblk->inode_table_start, offset);
-+ long long next_block;
-+ unsigned int next_offset;
-+ union squashfs_inode_header_2 id, sid;
-+ struct squashfs_base_inode_header_2 *inodeb = &id.base,
-+ *sinodeb = &sid.base;
-+
-+ TRACE("Entered squashfs_read_inode_2\n");
-+
-+ if (msblk->swap) {
-+ if (!squashfs_get_cached_block(s, (char *) sinodeb, block,
-+ offset, sizeof(*sinodeb), &next_block,
-+ &next_offset))
-+ goto failed_read;
-+ SQUASHFS_SWAP_BASE_INODE_HEADER_2(inodeb, sinodeb,
-+ sizeof(*sinodeb));
-+ } else
-+ if (!squashfs_get_cached_block(s, (char *) inodeb, block,
-+ offset, sizeof(*inodeb), &next_block,
-+ &next_offset))
-+ goto failed_read;
-+
-+ squashfs_new_inode(msblk, i, inodeb, ino);
-+
-+ switch(inodeb->inode_type) {
-+ case SQUASHFS_FILE_TYPE: {
-+ struct squashfs_reg_inode_header_2 *inodep = &id.reg;
-+ struct squashfs_reg_inode_header_2 *sinodep = &sid.reg;
-+ long long frag_blk;
-+ unsigned int frag_size = 0;
-+
-+ if (msblk->swap) {
-+ if (!squashfs_get_cached_block(s, (char *)
-+ sinodep, block, offset,
-+ sizeof(*sinodep), &next_block,
-+ &next_offset))
-+ goto failed_read;
-+ SQUASHFS_SWAP_REG_INODE_HEADER_2(inodep, sinodep);
-+ } else
-+ if (!squashfs_get_cached_block(s, (char *)
-+ inodep, block, offset,
-+ sizeof(*inodep), &next_block,
-+ &next_offset))
-+ goto failed_read;
-+
-+ frag_blk = SQUASHFS_INVALID_BLK;
-+ if (inodep->fragment != SQUASHFS_INVALID_FRAG &&
-+ !get_fragment_location_2(s,
-+ inodep->fragment, &frag_blk, &frag_size))
-+ goto failed_read;
-+
-+ i->i_size = inodep->file_size;
-+ i->i_fop = &generic_ro_fops;
-+ i->i_mode |= S_IFREG;
-+ i->i_mtime.tv_sec = inodep->mtime;
-+ i->i_atime.tv_sec = inodep->mtime;
-+ i->i_ctime.tv_sec = inodep->mtime;
-+ i->i_blocks = ((i->i_size - 1) >> 9) + 1;
-+ SQUASHFS_I(i)->u.s1.fragment_start_block = frag_blk;
-+ SQUASHFS_I(i)->u.s1.fragment_size = frag_size;
-+ SQUASHFS_I(i)->u.s1.fragment_offset = inodep->offset;
-+ SQUASHFS_I(i)->start_block = inodep->start_block;
-+ SQUASHFS_I(i)->u.s1.block_list_start = next_block;
-+ SQUASHFS_I(i)->offset = next_offset;
-+ i->i_data.a_ops = &squashfs_aops;
-+
-+ TRACE("File inode %x:%x, start_block %x, "
-+ "block_list_start %llx, offset %x\n",
-+ SQUASHFS_INODE_BLK(inode), offset,
-+ inodep->start_block, next_block,
-+ next_offset);
-+ break;
-+ }
-+ case SQUASHFS_DIR_TYPE: {
-+ struct squashfs_dir_inode_header_2 *inodep = &id.dir;
-+ struct squashfs_dir_inode_header_2 *sinodep = &sid.dir;
-+
-+ if (msblk->swap) {
-+ if (!squashfs_get_cached_block(s, (char *)
-+ sinodep, block, offset,
-+ sizeof(*sinodep), &next_block,
-+ &next_offset))
-+ goto failed_read;
-+ SQUASHFS_SWAP_DIR_INODE_HEADER_2(inodep, sinodep);
-+ } else
-+ if (!squashfs_get_cached_block(s, (char *)
-+ inodep, block, offset,
-+ sizeof(*inodep), &next_block,
-+ &next_offset))
-+ goto failed_read;
-+
-+ i->i_size = inodep->file_size;
-+ i->i_op = &squashfs_dir_inode_ops_2;
-+ i->i_fop = &squashfs_dir_ops_2;
-+ i->i_mode |= S_IFDIR;
-+ i->i_mtime.tv_sec = inodep->mtime;
-+ i->i_atime.tv_sec = inodep->mtime;
-+ i->i_ctime.tv_sec = inodep->mtime;
-+ SQUASHFS_I(i)->start_block = inodep->start_block;
-+ SQUASHFS_I(i)->offset = inodep->offset;
-+ SQUASHFS_I(i)->u.s2.directory_index_count = 0;
-+ SQUASHFS_I(i)->u.s2.parent_inode = 0;
-+
-+ TRACE("Directory inode %x:%x, start_block %x, offset "
-+ "%x\n", SQUASHFS_INODE_BLK(inode),
-+ offset, inodep->start_block,
-+ inodep->offset);
-+ break;
-+ }
-+ case SQUASHFS_LDIR_TYPE: {
-+ struct squashfs_ldir_inode_header_2 *inodep = &id.ldir;
-+ struct squashfs_ldir_inode_header_2 *sinodep = &sid.ldir;
-+
-+ if (msblk->swap) {
-+ if (!squashfs_get_cached_block(s, (char *)
-+ sinodep, block, offset,
-+ sizeof(*sinodep), &next_block,
-+ &next_offset))
-+ goto failed_read;
-+ SQUASHFS_SWAP_LDIR_INODE_HEADER_2(inodep,
-+ sinodep);
-+ } else
-+ if (!squashfs_get_cached_block(s, (char *)
-+ inodep, block, offset,
-+ sizeof(*inodep), &next_block,
-+ &next_offset))
-+ goto failed_read;
-+
-+ i->i_size = inodep->file_size;
-+ i->i_op = &squashfs_dir_inode_ops_2;
-+ i->i_fop = &squashfs_dir_ops_2;
-+ i->i_mode |= S_IFDIR;
-+ i->i_mtime.tv_sec = inodep->mtime;
-+ i->i_atime.tv_sec = inodep->mtime;
-+ i->i_ctime.tv_sec = inodep->mtime;
-+ SQUASHFS_I(i)->start_block = inodep->start_block;
-+ SQUASHFS_I(i)->offset = inodep->offset;
-+ SQUASHFS_I(i)->u.s2.directory_index_start = next_block;
-+ SQUASHFS_I(i)->u.s2.directory_index_offset =
-+ next_offset;
-+ SQUASHFS_I(i)->u.s2.directory_index_count =
-+ inodep->i_count;
-+ SQUASHFS_I(i)->u.s2.parent_inode = 0;
-+
-+ TRACE("Long directory inode %x:%x, start_block %x, "
-+ "offset %x\n",
-+ SQUASHFS_INODE_BLK(inode), offset,
-+ inodep->start_block, inodep->offset);
-+ break;
-+ }
-+ case SQUASHFS_SYMLINK_TYPE: {
-+ struct squashfs_symlink_inode_header_2 *inodep =
-+ &id.symlink;
-+ struct squashfs_symlink_inode_header_2 *sinodep =
-+ &sid.symlink;
-+
-+ if (msblk->swap) {
-+ if (!squashfs_get_cached_block(s, (char *)
-+ sinodep, block, offset,
-+ sizeof(*sinodep), &next_block,
-+ &next_offset))
-+ goto failed_read;
-+ SQUASHFS_SWAP_SYMLINK_INODE_HEADER_2(inodep,
-+ sinodep);
-+ } else
-+ if (!squashfs_get_cached_block(s, (char *)
-+ inodep, block, offset,
-+ sizeof(*inodep), &next_block,
-+ &next_offset))
-+ goto failed_read;
-+
-+ i->i_size = inodep->symlink_size;
-+ i->i_op = &page_symlink_inode_operations;
-+ i->i_data.a_ops = &squashfs_symlink_aops;
-+ i->i_mode |= S_IFLNK;
-+ SQUASHFS_I(i)->start_block = next_block;
-+ SQUASHFS_I(i)->offset = next_offset;
-+
-+ TRACE("Symbolic link inode %x:%x, start_block %llx, "
-+ "offset %x\n",
-+ SQUASHFS_INODE_BLK(inode), offset,
-+ next_block, next_offset);
-+ break;
-+ }
-+ case SQUASHFS_BLKDEV_TYPE:
-+ case SQUASHFS_CHRDEV_TYPE: {
-+ struct squashfs_dev_inode_header_2 *inodep = &id.dev;
-+ struct squashfs_dev_inode_header_2 *sinodep = &sid.dev;
-+
-+ if (msblk->swap) {
-+ if (!squashfs_get_cached_block(s, (char *)
-+ sinodep, block, offset,
-+ sizeof(*sinodep), &next_block,
-+ &next_offset))
-+ goto failed_read;
-+ SQUASHFS_SWAP_DEV_INODE_HEADER_2(inodep, sinodep);
-+ } else
-+ if (!squashfs_get_cached_block(s, (char *)
-+ inodep, block, offset,
-+ sizeof(*inodep), &next_block,
-+ &next_offset))
-+ goto failed_read;
-+
-+ i->i_mode |= (inodeb->inode_type ==
-+ SQUASHFS_CHRDEV_TYPE) ? S_IFCHR :
-+ S_IFBLK;
-+ init_special_inode(i, i->i_mode,
-+ old_decode_dev(inodep->rdev));
-+
-+ TRACE("Device inode %x:%x, rdev %x\n",
-+ SQUASHFS_INODE_BLK(inode), offset,
-+ inodep->rdev);
-+ break;
-+ }
-+ case SQUASHFS_FIFO_TYPE:
-+ case SQUASHFS_SOCKET_TYPE: {
-+
-+ i->i_mode |= (inodeb->inode_type == SQUASHFS_FIFO_TYPE)
-+ ? S_IFIFO : S_IFSOCK;
-+ init_special_inode(i, i->i_mode, 0);
-+ break;
-+ }
-+ default:
-+ ERROR("Unknown inode type %d in squashfs_iget!\n",
-+ inodeb->inode_type);
-+ goto failed_read1;
-+ }
-+
-+ return 1;
-+
-+failed_read:
-+ ERROR("Unable to read inode [%x:%x]\n", block, offset);
-+
-+failed_read1:
-+ return 0;
-+}
-+
-+
-+static int get_dir_index_using_offset(struct super_block *s, long long
-+ *next_block, unsigned int *next_offset,
-+ long long index_start,
-+ unsigned int index_offset, int i_count,
-+ long long f_pos)
-+{
-+ struct squashfs_sb_info *msblk = s->s_fs_info;
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+ int i, length = 0;
-+ struct squashfs_dir_index_2 index;
-+
-+ TRACE("Entered get_dir_index_using_offset, i_count %d, f_pos %d\n",
-+ i_count, (unsigned int) f_pos);
-+
-+ if (f_pos == 0)
-+ goto finish;
-+
-+ for (i = 0; i < i_count; i++) {
-+ if (msblk->swap) {
-+ struct squashfs_dir_index_2 sindex;
-+ squashfs_get_cached_block(s, (char *) &sindex,
-+ index_start, index_offset,
-+ sizeof(sindex), &index_start,
-+ &index_offset);
-+ SQUASHFS_SWAP_DIR_INDEX_2(&index, &sindex);
-+ } else
-+ squashfs_get_cached_block(s, (char *) &index,
-+ index_start, index_offset,
-+ sizeof(index), &index_start,
-+ &index_offset);
-+
-+ if (index.index > f_pos)
-+ break;
-+
-+ squashfs_get_cached_block(s, NULL, index_start, index_offset,
-+ index.size + 1, &index_start,
-+ &index_offset);
-+
-+ length = index.index;
-+ *next_block = index.start_block + sblk->directory_table_start;
-+ }
-+
-+ *next_offset = (length + *next_offset) % SQUASHFS_METADATA_SIZE;
-+
-+finish:
-+ return length;
-+}
-+
-+
-+static int get_dir_index_using_name(struct super_block *s, long long
-+ *next_block, unsigned int *next_offset,
-+ long long index_start,
-+ unsigned int index_offset, int i_count,
-+ const char *name, int size)
-+{
-+ struct squashfs_sb_info *msblk = s->s_fs_info;
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+ int i, length = 0;
-+ struct squashfs_dir_index_2 *index;
-+ char *str;
-+
-+ TRACE("Entered get_dir_index_using_name, i_count %d\n", i_count);
-+
-+ if (!(str = kmalloc(sizeof(struct squashfs_dir_index) +
-+ (SQUASHFS_NAME_LEN + 1) * 2, GFP_KERNEL))) {
-+ ERROR("Failed to allocate squashfs_dir_index\n");
-+ goto failure;
-+ }
-+
-+ index = (struct squashfs_dir_index_2 *) (str + SQUASHFS_NAME_LEN + 1);
-+ strncpy(str, name, size);
-+ str[size] = '\0';
-+
-+ for (i = 0; i < i_count; i++) {
-+ if (msblk->swap) {
-+ struct squashfs_dir_index_2 sindex;
-+ squashfs_get_cached_block(s, (char *) &sindex,
-+ index_start, index_offset,
-+ sizeof(sindex), &index_start,
-+ &index_offset);
-+ SQUASHFS_SWAP_DIR_INDEX_2(index, &sindex);
-+ } else
-+ squashfs_get_cached_block(s, (char *) index,
-+ index_start, index_offset,
-+ sizeof(struct squashfs_dir_index_2),
-+ &index_start, &index_offset);
-+
-+ squashfs_get_cached_block(s, index->name, index_start,
-+ index_offset, index->size + 1,
-+ &index_start, &index_offset);
-+
-+ index->name[index->size + 1] = '\0';
-+
-+ if (strcmp(index->name, str) > 0)
-+ break;
-+
-+ length = index->index;
-+ *next_block = index->start_block + sblk->directory_table_start;
-+ }
-+
-+ *next_offset = (length + *next_offset) % SQUASHFS_METADATA_SIZE;
-+ kfree(str);
-+failure:
-+ return length;
-+}
-+
-+
-+static int squashfs_readdir_2(struct file *file, void *dirent, filldir_t filldir)
-+{
-+ struct inode *i = file->f_dentry->d_inode;
-+ struct squashfs_sb_info *msblk = i->i_sb->s_fs_info;
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+ long long next_block = SQUASHFS_I(i)->start_block +
-+ sblk->directory_table_start;
-+ int next_offset = SQUASHFS_I(i)->offset, length = 0,
-+ dir_count;
-+ struct squashfs_dir_header_2 dirh;
-+ struct squashfs_dir_entry_2 *dire;
-+
-+ TRACE("Entered squashfs_readdir_2 [%llx:%x]\n", next_block, next_offset);
-+
-+ if (!(dire = kmalloc(sizeof(struct squashfs_dir_entry) +
-+ SQUASHFS_NAME_LEN + 1, GFP_KERNEL))) {
-+ ERROR("Failed to allocate squashfs_dir_entry\n");
-+ goto finish;
-+ }
-+
-+ length = get_dir_index_using_offset(i->i_sb, &next_block, &next_offset,
-+ SQUASHFS_I(i)->u.s2.directory_index_start,
-+ SQUASHFS_I(i)->u.s2.directory_index_offset,
-+ SQUASHFS_I(i)->u.s2.directory_index_count,
-+ file->f_pos);
-+
-+ while (length < i_size_read(i)) {
-+ /* read directory header */
-+ if (msblk->swap) {
-+ struct squashfs_dir_header_2 sdirh;
-+
-+ if (!squashfs_get_cached_block(i->i_sb, (char *) &sdirh,
-+ next_block, next_offset, sizeof(sdirh),
-+ &next_block, &next_offset))
-+ goto failed_read;
-+
-+ length += sizeof(sdirh);
-+ SQUASHFS_SWAP_DIR_HEADER_2(&dirh, &sdirh);
-+ } else {
-+ if (!squashfs_get_cached_block(i->i_sb, (char *) &dirh,
-+ next_block, next_offset, sizeof(dirh),
-+ &next_block, &next_offset))
-+ goto failed_read;
-+
-+ length += sizeof(dirh);
-+ }
-+
-+ dir_count = dirh.count + 1;
-+ while (dir_count--) {
-+ if (msblk->swap) {
-+ struct squashfs_dir_entry_2 sdire;
-+ if (!squashfs_get_cached_block(i->i_sb, (char *)
-+ &sdire, next_block, next_offset,
-+ sizeof(sdire), &next_block,
-+ &next_offset))
-+ goto failed_read;
-+
-+ length += sizeof(sdire);
-+ SQUASHFS_SWAP_DIR_ENTRY_2(dire, &sdire);
-+ } else {
-+ if (!squashfs_get_cached_block(i->i_sb, (char *)
-+ dire, next_block, next_offset,
-+ sizeof(*dire), &next_block,
-+ &next_offset))
-+ goto failed_read;
-+
-+ length += sizeof(*dire);
-+ }
-+
-+ if (!squashfs_get_cached_block(i->i_sb, dire->name,
-+ next_block, next_offset,
-+ dire->size + 1, &next_block,
-+ &next_offset))
-+ goto failed_read;
-+
-+ length += dire->size + 1;
-+
-+ if (file->f_pos >= length)
-+ continue;
-+
-+ dire->name[dire->size + 1] = '\0';
-+
-+ TRACE("Calling filldir(%x, %s, %d, %d, %x:%x, %d)\n",
-+ (unsigned int) dirent, dire->name,
-+ dire->size + 1, (int) file->f_pos,
-+ dirh.start_block, dire->offset,
-+ squashfs_filetype_table[dire->type]);
-+
-+ if (filldir(dirent, dire->name, dire->size + 1,
-+ file->f_pos, SQUASHFS_MK_VFS_INODE(
-+ dirh.start_block, dire->offset),
-+ squashfs_filetype_table[dire->type])
-+ < 0) {
-+ TRACE("Filldir returned less than 0\n");
-+ goto finish;
-+ }
-+ file->f_pos = length;
-+ }
-+ }
-+
-+finish:
-+ kfree(dire);
-+ return 0;
-+
-+failed_read:
-+ ERROR("Unable to read directory block [%llx:%x]\n", next_block,
-+ next_offset);
-+ kfree(dire);
-+ return 0;
-+}
-+
-+
-+static struct dentry *squashfs_lookup_2(struct inode *i, struct dentry *dentry,
-+ struct nameidata *nd)
-+{
-+ const unsigned char *name = dentry->d_name.name;
-+ int len = dentry->d_name.len;
-+ struct inode *inode = NULL;
-+ struct squashfs_sb_info *msblk = i->i_sb->s_fs_info;
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+ long long next_block = SQUASHFS_I(i)->start_block +
-+ sblk->directory_table_start;
-+ int next_offset = SQUASHFS_I(i)->offset, length = 0,
-+ dir_count;
-+ struct squashfs_dir_header_2 dirh;
-+ struct squashfs_dir_entry_2 *dire;
-+ int sorted = sblk->s_major == 2 && sblk->s_minor >= 1;
-+
-+ TRACE("Entered squashfs_lookup_2 [%llx:%x]\n", next_block, next_offset);
-+
-+ if (!(dire = kmalloc(sizeof(struct squashfs_dir_entry) +
-+ SQUASHFS_NAME_LEN + 1, GFP_KERNEL))) {
-+ ERROR("Failed to allocate squashfs_dir_entry\n");
-+ goto exit_loop;
-+ }
-+
-+ if (len > SQUASHFS_NAME_LEN)
-+ goto exit_loop;
-+
-+ length = get_dir_index_using_name(i->i_sb, &next_block, &next_offset,
-+ SQUASHFS_I(i)->u.s2.directory_index_start,
-+ SQUASHFS_I(i)->u.s2.directory_index_offset,
-+ SQUASHFS_I(i)->u.s2.directory_index_count, name,
-+ len);
-+
-+ while (length < i_size_read(i)) {
-+ /* read directory header */
-+ if (msblk->swap) {
-+ struct squashfs_dir_header_2 sdirh;
-+ if (!squashfs_get_cached_block(i->i_sb, (char *) &sdirh,
-+ next_block, next_offset, sizeof(sdirh),
-+ &next_block, &next_offset))
-+ goto failed_read;
-+
-+ length += sizeof(sdirh);
-+ SQUASHFS_SWAP_DIR_HEADER_2(&dirh, &sdirh);
-+ } else {
-+ if (!squashfs_get_cached_block(i->i_sb, (char *) &dirh,
-+ next_block, next_offset, sizeof(dirh),
-+ &next_block, &next_offset))
-+ goto failed_read;
-+
-+ length += sizeof(dirh);
-+ }
-+
-+ dir_count = dirh.count + 1;
-+ while (dir_count--) {
-+ if (msblk->swap) {
-+ struct squashfs_dir_entry_2 sdire;
-+ if (!squashfs_get_cached_block(i->i_sb, (char *)
-+ &sdire, next_block,next_offset,
-+ sizeof(sdire), &next_block,
-+ &next_offset))
-+ goto failed_read;
-+
-+ length += sizeof(sdire);
-+ SQUASHFS_SWAP_DIR_ENTRY_2(dire, &sdire);
-+ } else {
-+ if (!squashfs_get_cached_block(i->i_sb, (char *)
-+ dire, next_block,next_offset,
-+ sizeof(*dire), &next_block,
-+ &next_offset))
-+ goto failed_read;
-+
-+ length += sizeof(*dire);
-+ }
-+
-+ if (!squashfs_get_cached_block(i->i_sb, dire->name,
-+ next_block, next_offset, dire->size + 1,
-+ &next_block, &next_offset))
-+ goto failed_read;
-+
-+ length += dire->size + 1;
-+
-+ if (sorted && name[0] < dire->name[0])
-+ goto exit_loop;
-+
-+ if ((len == dire->size + 1) && !strncmp(name,
-+ dire->name, len)) {
-+ squashfs_inode_t ino =
-+ SQUASHFS_MKINODE(dirh.start_block,
-+ dire->offset);
-+ unsigned int inode_number = SQUASHFS_MK_VFS_INODE(dirh.start_block,
-+ dire->offset);
-+
-+ TRACE("calling squashfs_iget for directory "
-+ "entry %s, inode %x:%x, %lld\n", name,
-+ dirh.start_block, dire->offset, ino);
-+
-+ inode = squashfs_iget(i->i_sb, ino, inode_number);
-+
-+ goto exit_loop;
-+ }
-+ }
-+ }
-+
-+exit_loop:
-+ kfree(dire);
-+ d_add(dentry, inode);
-+ return ERR_PTR(0);
-+
-+failed_read:
-+ ERROR("Unable to read directory block [%llx:%x]\n", next_block,
-+ next_offset);
-+ goto exit_loop;
-+}
-+
-+
-+int squashfs_2_0_supported(struct squashfs_sb_info *msblk)
-+{
-+ struct squashfs_super_block *sblk = &msblk->sblk;
-+
-+ msblk->read_inode = squashfs_read_inode_2;
-+ msblk->read_fragment_index_table = read_fragment_index_table_2;
-+
-+ sblk->bytes_used = sblk->bytes_used_2;
-+ sblk->uid_start = sblk->uid_start_2;
-+ sblk->guid_start = sblk->guid_start_2;
-+ sblk->inode_table_start = sblk->inode_table_start_2;
-+ sblk->directory_table_start = sblk->directory_table_start_2;
-+ sblk->fragment_table_start = sblk->fragment_table_start_2;
-+
-+ return 1;
-+}
-diff -x .gitignore -Nurp linux-2.6.23/fs/squashfs/squashfs.h linux-2.6.23-squashfs3.3/fs/squashfs/squashfs.h
---- linux-2.6.23/fs/squashfs/squashfs.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.23-squashfs3.3/fs/squashfs/squashfs.h 2007-08-19 04:23:16.000000000 +0100
-@@ -0,0 +1,86 @@
-+/*
-+ * Squashfs - a compressed read only filesystem for Linux
-+ *
-+ * Copyright (c) 2002, 2003, 2004, 2005, 2006, 2007
-+ * Phillip Lougher
-+ *
-+ * This program is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU General Public License
-+ * as published by the Free Software Foundation; either version 2,
-+ * or (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+ *
-+ * squashfs.h
-+ */
-+
-+#ifdef CONFIG_SQUASHFS_1_0_COMPATIBILITY
-+#undef CONFIG_SQUASHFS_1_0_COMPATIBILITY
-+#endif
-+
-+#ifdef SQUASHFS_TRACE
-+#define TRACE(s, args...) printk(KERN_NOTICE "SQUASHFS: "s, ## args)
-+#else
-+#define TRACE(s, args...) {}
-+#endif
-+
-+#define ERROR(s, args...) printk(KERN_ERR "SQUASHFS error: "s, ## args)
-+
-+#define SERROR(s, args...) do { \
-+ if (!silent) \
-+ printk(KERN_ERR "SQUASHFS error: "s, ## args);\
-+ } while(0)
-+
-+#define WARNING(s, args...) printk(KERN_WARNING "SQUASHFS: "s, ## args)
-+
-+static inline struct squashfs_inode_info *SQUASHFS_I(struct inode *inode)
-+{
-+ return list_entry(inode, struct squashfs_inode_info, vfs_inode);
-+}
-+
-+#if defined(CONFIG_SQUASHFS_1_0_COMPATIBILITY ) || defined(CONFIG_SQUASHFS_2_0_COMPATIBILITY)
-+#define SQSH_EXTERN
-+extern unsigned int squashfs_read_data(struct super_block *s, char *buffer,
-+ long long index, unsigned int length,
-+ long long *next_index, int srclength);
-+extern int squashfs_get_cached_block(struct super_block *s, void *buffer,
-+ long long block, unsigned int offset,
-+ int length, long long *next_block,
-+ unsigned int *next_offset);
-+extern void release_cached_fragment(struct squashfs_sb_info *msblk, struct
-+ squashfs_fragment_cache *fragment);
-+extern struct squashfs_fragment_cache *get_cached_fragment(struct super_block
-+ *s, long long start_block,
-+ int length);
-+extern struct inode *squashfs_iget(struct super_block *s, squashfs_inode_t inode, unsigned int inode_number);
-+extern const struct address_space_operations squashfs_symlink_aops;
-+extern const struct address_space_operations squashfs_aops;
-+extern struct inode_operations squashfs_dir_inode_ops;
-+#else
-+#define SQSH_EXTERN static
-+#endif
-+
-+#ifdef CONFIG_SQUASHFS_1_0_COMPATIBILITY
-+extern int squashfs_1_0_supported(struct squashfs_sb_info *msblk);
-+#else
-+static inline int squashfs_1_0_supported(struct squashfs_sb_info *msblk)
-+{
-+ return 0;
-+}
-+#endif
-+
-+#ifdef CONFIG_SQUASHFS_2_0_COMPATIBILITY
-+extern int squashfs_2_0_supported(struct squashfs_sb_info *msblk);
-+#else
-+static inline int squashfs_2_0_supported(struct squashfs_sb_info *msblk)
-+{
-+ return 0;
-+}
-+#endif
-diff -x .gitignore -Nurp linux-2.6.23/include/linux/squashfs_fs.h linux-2.6.23-squashfs3.3/include/linux/squashfs_fs.h
---- linux-2.6.23/include/linux/squashfs_fs.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.23-squashfs3.3/include/linux/squashfs_fs.h 2007-11-01 03:50:57.000000000 +0000
-@@ -0,0 +1,935 @@
-+#ifndef SQUASHFS_FS
-+#define SQUASHFS_FS
-+
-+/*
-+ * Squashfs
-+ *
-+ * Copyright (c) 2002, 2003, 2004, 2005, 2006, 2007
-+ * Phillip Lougher
-+ *
-+ * This program is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU General Public License
-+ * as published by the Free Software Foundation; either version 2,
-+ * or (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+ *
-+ * squashfs_fs.h
-+ */
-+
-+#ifndef CONFIG_SQUASHFS_2_0_COMPATIBILITY
-+#define CONFIG_SQUASHFS_2_0_COMPATIBILITY
-+#endif
-+
-+#define SQUASHFS_CACHED_FRAGMENTS CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE
-+#define SQUASHFS_MAJOR 3
-+#define SQUASHFS_MINOR 1
-+#define SQUASHFS_MAGIC 0x73717368
-+#define SQUASHFS_MAGIC_SWAP 0x68737173
-+#define SQUASHFS_START 0
-+
-+/* size of metadata (inode and directory) blocks */
-+#define SQUASHFS_METADATA_SIZE 8192
-+#define SQUASHFS_METADATA_LOG 13
-+
-+/* default size of data blocks */
-+#define SQUASHFS_FILE_SIZE 131072
-+#define SQUASHFS_FILE_LOG 17
-+
-+#define SQUASHFS_FILE_MAX_SIZE 1048576
-+
-+/* Max number of uids and gids */
-+#define SQUASHFS_UIDS 256
-+#define SQUASHFS_GUIDS 255
-+
-+/* Max length of filename (not 255) */
-+#define SQUASHFS_NAME_LEN 256
-+
-+#define SQUASHFS_INVALID ((long long) 0xffffffffffff)
-+#define SQUASHFS_INVALID_FRAG ((unsigned int) 0xffffffff)
-+#define SQUASHFS_INVALID_BLK ((long long) -1)
-+#define SQUASHFS_USED_BLK ((long long) -2)
-+
-+/* Filesystem flags */
-+#define SQUASHFS_NOI 0
-+#define SQUASHFS_NOD 1
-+#define SQUASHFS_CHECK 2
-+#define SQUASHFS_NOF 3
-+#define SQUASHFS_NO_FRAG 4
-+#define SQUASHFS_ALWAYS_FRAG 5
-+#define SQUASHFS_DUPLICATE 6
-+#define SQUASHFS_EXPORT 7
-+
-+#define SQUASHFS_BIT(flag, bit) ((flag >> bit) & 1)
-+
-+#define SQUASHFS_UNCOMPRESSED_INODES(flags) SQUASHFS_BIT(flags, \
-+ SQUASHFS_NOI)
-+
-+#define SQUASHFS_UNCOMPRESSED_DATA(flags) SQUASHFS_BIT(flags, \
-+ SQUASHFS_NOD)
-+
-+#define SQUASHFS_UNCOMPRESSED_FRAGMENTS(flags) SQUASHFS_BIT(flags, \
-+ SQUASHFS_NOF)
-+
-+#define SQUASHFS_NO_FRAGMENTS(flags) SQUASHFS_BIT(flags, \
-+ SQUASHFS_NO_FRAG)
-+
-+#define SQUASHFS_ALWAYS_FRAGMENTS(flags) SQUASHFS_BIT(flags, \
-+ SQUASHFS_ALWAYS_FRAG)
-+
-+#define SQUASHFS_DUPLICATES(flags) SQUASHFS_BIT(flags, \
-+ SQUASHFS_DUPLICATE)
-+
-+#define SQUASHFS_EXPORTABLE(flags) SQUASHFS_BIT(flags, \
-+ SQUASHFS_EXPORT)
-+
-+#define SQUASHFS_CHECK_DATA(flags) SQUASHFS_BIT(flags, \
-+ SQUASHFS_CHECK)
-+
-+#define SQUASHFS_MKFLAGS(noi, nod, check_data, nof, no_frag, always_frag, \
-+ duplicate_checking, exortable) (noi | (nod << 1) | (check_data << 2) \
-+ | (nof << 3) | (no_frag << 4) | (always_frag << 5) | \
-+ (duplicate_checking << 6) | (exportable << 7))
-+
-+/* Max number of types and file types */
-+#define SQUASHFS_DIR_TYPE 1
-+#define SQUASHFS_FILE_TYPE 2
-+#define SQUASHFS_SYMLINK_TYPE 3
-+#define SQUASHFS_BLKDEV_TYPE 4
-+#define SQUASHFS_CHRDEV_TYPE 5
-+#define SQUASHFS_FIFO_TYPE 6
-+#define SQUASHFS_SOCKET_TYPE 7
-+#define SQUASHFS_LDIR_TYPE 8
-+#define SQUASHFS_LREG_TYPE 9
-+
-+/* 1.0 filesystem type definitions */
-+#define SQUASHFS_TYPES 5
-+#define SQUASHFS_IPC_TYPE 0
-+
-+/* Flag whether block is compressed or uncompressed, bit is set if block is
-+ * uncompressed */
-+#define SQUASHFS_COMPRESSED_BIT (1 << 15)
-+
-+#define SQUASHFS_COMPRESSED_SIZE(B) (((B) & ~SQUASHFS_COMPRESSED_BIT) ? \
-+ (B) & ~SQUASHFS_COMPRESSED_BIT : SQUASHFS_COMPRESSED_BIT)
-+
-+#define SQUASHFS_COMPRESSED(B) (!((B) & SQUASHFS_COMPRESSED_BIT))
-+
-+#define SQUASHFS_COMPRESSED_BIT_BLOCK (1 << 24)
-+
-+#define SQUASHFS_COMPRESSED_SIZE_BLOCK(B) ((B) & \
-+ ~SQUASHFS_COMPRESSED_BIT_BLOCK)
-+
-+#define SQUASHFS_COMPRESSED_BLOCK(B) (!((B) & SQUASHFS_COMPRESSED_BIT_BLOCK))
-+
-+/*
-+ * Inode number ops. Inodes consist of a compressed block number, and an
-+ * uncompressed offset within that block
-+ */
-+#define SQUASHFS_INODE_BLK(a) ((unsigned int) ((a) >> 16))
-+
-+#define SQUASHFS_INODE_OFFSET(a) ((unsigned int) ((a) & 0xffff))
-+
-+#define SQUASHFS_MKINODE(A, B) ((squashfs_inode_t)(((squashfs_inode_t) (A)\
-+ << 16) + (B)))
-+
-+/* Compute 32 bit VFS inode number from squashfs inode number */
-+#define SQUASHFS_MK_VFS_INODE(a, b) ((unsigned int) (((a) << 8) + \
-+ ((b) >> 2) + 1))
-+/* XXX */
-+
-+/* Translate between VFS mode and squashfs mode */
-+#define SQUASHFS_MODE(a) ((a) & 0xfff)
-+
-+/* fragment and fragment table defines */
-+#define SQUASHFS_FRAGMENT_BYTES(A) ((A) * sizeof(struct squashfs_fragment_entry))
-+
-+#define SQUASHFS_FRAGMENT_INDEX(A) (SQUASHFS_FRAGMENT_BYTES(A) / \
-+ SQUASHFS_METADATA_SIZE)
-+
-+#define SQUASHFS_FRAGMENT_INDEX_OFFSET(A) (SQUASHFS_FRAGMENT_BYTES(A) % \
-+ SQUASHFS_METADATA_SIZE)
-+
-+#define SQUASHFS_FRAGMENT_INDEXES(A) ((SQUASHFS_FRAGMENT_BYTES(A) + \
-+ SQUASHFS_METADATA_SIZE - 1) / \
-+ SQUASHFS_METADATA_SIZE)
-+
-+#define SQUASHFS_FRAGMENT_INDEX_BYTES(A) (SQUASHFS_FRAGMENT_INDEXES(A) *\
-+ sizeof(long long))
-+
-+/* inode lookup table defines */
-+#define SQUASHFS_LOOKUP_BYTES(A) ((A) * sizeof(squashfs_inode_t))
-+
-+#define SQUASHFS_LOOKUP_BLOCK(A) (SQUASHFS_LOOKUP_BYTES(A) / \
-+ SQUASHFS_METADATA_SIZE)
-+
-+#define SQUASHFS_LOOKUP_BLOCK_OFFSET(A) (SQUASHFS_LOOKUP_BYTES(A) % \
-+ SQUASHFS_METADATA_SIZE)
-+
-+#define SQUASHFS_LOOKUP_BLOCKS(A) ((SQUASHFS_LOOKUP_BYTES(A) + \
-+ SQUASHFS_METADATA_SIZE - 1) / \
-+ SQUASHFS_METADATA_SIZE)
-+
-+#define SQUASHFS_LOOKUP_BLOCK_BYTES(A) (SQUASHFS_LOOKUP_BLOCKS(A) *\
-+ sizeof(long long))
-+
-+/* cached data constants for filesystem */
-+#define SQUASHFS_CACHED_BLKS 8
-+
-+#define SQUASHFS_MAX_FILE_SIZE_LOG 64
-+
-+#define SQUASHFS_MAX_FILE_SIZE ((long long) 1 << \
-+ (SQUASHFS_MAX_FILE_SIZE_LOG - 2))
-+
-+#define SQUASHFS_MARKER_BYTE 0xff
-+
-+/* meta index cache */
-+#define SQUASHFS_META_INDEXES (SQUASHFS_METADATA_SIZE / sizeof(unsigned int))
-+#define SQUASHFS_META_ENTRIES 31
-+#define SQUASHFS_META_NUMBER 8
-+#define SQUASHFS_SLOTS 4
-+
-+struct meta_entry {
-+ long long data_block;
-+ unsigned int index_block;
-+ unsigned short offset;
-+ unsigned short pad;
-+};
-+
-+struct meta_index {
-+ unsigned int inode_number;
-+ unsigned int offset;
-+ unsigned short entries;
-+ unsigned short skip;
-+ unsigned short locked;
-+ unsigned short pad;
-+ struct meta_entry meta_entry[SQUASHFS_META_ENTRIES];
-+};
-+
-+
-+/*
-+ * definitions for structures on disk
-+ */
-+
-+typedef long long squashfs_block_t;
-+typedef long long squashfs_inode_t;
-+
-+struct squashfs_super_block {
-+ unsigned int s_magic;
-+ unsigned int inodes;
-+ unsigned int bytes_used_2;
-+ unsigned int uid_start_2;
-+ unsigned int guid_start_2;
-+ unsigned int inode_table_start_2;
-+ unsigned int directory_table_start_2;
-+ unsigned int s_major:16;
-+ unsigned int s_minor:16;
-+ unsigned int block_size_1:16;
-+ unsigned int block_log:16;
-+ unsigned int flags:8;
-+ unsigned int no_uids:8;
-+ unsigned int no_guids:8;
-+ unsigned int mkfs_time /* time of filesystem creation */;
-+ squashfs_inode_t root_inode;
-+ unsigned int block_size;
-+ unsigned int fragments;
-+ unsigned int fragment_table_start_2;
-+ long long bytes_used;
-+ long long uid_start;
-+ long long guid_start;
-+ long long inode_table_start;
-+ long long directory_table_start;
-+ long long fragment_table_start;
-+ long long lookup_table_start;
-+} __attribute__ ((packed));
-+
-+struct squashfs_dir_index {
-+ unsigned int index;
-+ unsigned int start_block;
-+ unsigned char size;
-+ unsigned char name[0];
-+} __attribute__ ((packed));
-+
-+#define SQUASHFS_BASE_INODE_HEADER \
-+ unsigned int inode_type:4; \
-+ unsigned int mode:12; \
-+ unsigned int uid:8; \
-+ unsigned int guid:8; \
-+ unsigned int mtime; \
-+ unsigned int inode_number;
-+
-+struct squashfs_base_inode_header {
-+ SQUASHFS_BASE_INODE_HEADER;
-+} __attribute__ ((packed));
-+
-+struct squashfs_ipc_inode_header {
-+ SQUASHFS_BASE_INODE_HEADER;
-+ unsigned int nlink;
-+} __attribute__ ((packed));
-+
-+struct squashfs_dev_inode_header {
-+ SQUASHFS_BASE_INODE_HEADER;
-+ unsigned int nlink;
-+ unsigned short rdev;
-+} __attribute__ ((packed));
-+
-+struct squashfs_symlink_inode_header {
-+ SQUASHFS_BASE_INODE_HEADER;
-+ unsigned int nlink;
-+ unsigned short symlink_size;
-+ char symlink[0];
-+} __attribute__ ((packed));
-+
-+struct squashfs_reg_inode_header {
-+ SQUASHFS_BASE_INODE_HEADER;
-+ squashfs_block_t start_block;
-+ unsigned int fragment;
-+ unsigned int offset;
-+ unsigned int file_size;
-+ unsigned short block_list[0];
-+} __attribute__ ((packed));
-+
-+struct squashfs_lreg_inode_header {
-+ SQUASHFS_BASE_INODE_HEADER;
-+ unsigned int nlink;
-+ squashfs_block_t start_block;
-+ unsigned int fragment;
-+ unsigned int offset;
-+ long long file_size;
-+ unsigned short block_list[0];
-+} __attribute__ ((packed));
-+
-+struct squashfs_dir_inode_header {
-+ SQUASHFS_BASE_INODE_HEADER;
-+ unsigned int nlink;
-+ unsigned int file_size:19;
-+ unsigned int offset:13;
-+ unsigned int start_block;
-+ unsigned int parent_inode;
-+} __attribute__ ((packed));
-+
-+struct squashfs_ldir_inode_header {
-+ SQUASHFS_BASE_INODE_HEADER;
-+ unsigned int nlink;
-+ unsigned int file_size:27;
-+ unsigned int offset:13;
-+ unsigned int start_block;
-+ unsigned int i_count:16;
-+ unsigned int parent_inode;
-+ struct squashfs_dir_index index[0];
-+} __attribute__ ((packed));
-+
-+union squashfs_inode_header {
-+ struct squashfs_base_inode_header base;
-+ struct squashfs_dev_inode_header dev;
-+ struct squashfs_symlink_inode_header symlink;
-+ struct squashfs_reg_inode_header reg;
-+ struct squashfs_lreg_inode_header lreg;
-+ struct squashfs_dir_inode_header dir;
-+ struct squashfs_ldir_inode_header ldir;
-+ struct squashfs_ipc_inode_header ipc;
-+};
-+
-+struct squashfs_dir_entry {
-+ unsigned int offset:13;
-+ unsigned int type:3;
-+ unsigned int size:8;
-+ int inode_number:16;
-+ char name[0];
-+} __attribute__ ((packed));
-+
-+struct squashfs_dir_header {
-+ unsigned int count:8;
-+ unsigned int start_block;
-+ unsigned int inode_number;
-+} __attribute__ ((packed));
-+
-+struct squashfs_fragment_entry {
-+ long long start_block;
-+ unsigned int size;
-+ unsigned int pending;
-+} __attribute__ ((packed));
-+
-+extern int squashfs_uncompress_block(void *d, int dstlen, void *s, int srclen);
-+extern int squashfs_uncompress_init(void);
-+extern int squashfs_uncompress_exit(void);
-+
-+/*
-+ * macros to convert each packed bitfield structure from little endian to big
-+ * endian and vice versa. These are needed when creating or using a filesystem
-+ * on a machine with different byte ordering to the target architecture.
-+ *
-+ */
-+
-+#define SQUASHFS_SWAP_START \
-+ int bits;\
-+ int b_pos;\
-+ unsigned long long val;\
-+ unsigned char *s;\
-+ unsigned char *d;
-+
-+#define SQUASHFS_SWAP_SUPER_BLOCK(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_MEMSET(s, d, sizeof(struct squashfs_super_block));\
-+ SQUASHFS_SWAP((s)->s_magic, d, 0, 32);\
-+ SQUASHFS_SWAP((s)->inodes, d, 32, 32);\
-+ SQUASHFS_SWAP((s)->bytes_used_2, d, 64, 32);\
-+ SQUASHFS_SWAP((s)->uid_start_2, d, 96, 32);\
-+ SQUASHFS_SWAP((s)->guid_start_2, d, 128, 32);\
-+ SQUASHFS_SWAP((s)->inode_table_start_2, d, 160, 32);\
-+ SQUASHFS_SWAP((s)->directory_table_start_2, d, 192, 32);\
-+ SQUASHFS_SWAP((s)->s_major, d, 224, 16);\
-+ SQUASHFS_SWAP((s)->s_minor, d, 240, 16);\
-+ SQUASHFS_SWAP((s)->block_size_1, d, 256, 16);\
-+ SQUASHFS_SWAP((s)->block_log, d, 272, 16);\
-+ SQUASHFS_SWAP((s)->flags, d, 288, 8);\
-+ SQUASHFS_SWAP((s)->no_uids, d, 296, 8);\
-+ SQUASHFS_SWAP((s)->no_guids, d, 304, 8);\
-+ SQUASHFS_SWAP((s)->mkfs_time, d, 312, 32);\
-+ SQUASHFS_SWAP((s)->root_inode, d, 344, 64);\
-+ SQUASHFS_SWAP((s)->block_size, d, 408, 32);\
-+ SQUASHFS_SWAP((s)->fragments, d, 440, 32);\
-+ SQUASHFS_SWAP((s)->fragment_table_start_2, d, 472, 32);\
-+ SQUASHFS_SWAP((s)->bytes_used, d, 504, 64);\
-+ SQUASHFS_SWAP((s)->uid_start, d, 568, 64);\
-+ SQUASHFS_SWAP((s)->guid_start, d, 632, 64);\
-+ SQUASHFS_SWAP((s)->inode_table_start, d, 696, 64);\
-+ SQUASHFS_SWAP((s)->directory_table_start, d, 760, 64);\
-+ SQUASHFS_SWAP((s)->fragment_table_start, d, 824, 64);\
-+ SQUASHFS_SWAP((s)->lookup_table_start, d, 888, 64);\
-+}
-+
-+#define SQUASHFS_SWAP_BASE_INODE_CORE(s, d, n)\
-+ SQUASHFS_MEMSET(s, d, n);\
-+ SQUASHFS_SWAP((s)->inode_type, d, 0, 4);\
-+ SQUASHFS_SWAP((s)->mode, d, 4, 12);\
-+ SQUASHFS_SWAP((s)->uid, d, 16, 8);\
-+ SQUASHFS_SWAP((s)->guid, d, 24, 8);\
-+ SQUASHFS_SWAP((s)->mtime, d, 32, 32);\
-+ SQUASHFS_SWAP((s)->inode_number, d, 64, 32);
-+
-+#define SQUASHFS_SWAP_BASE_INODE_HEADER(s, d, n) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE(s, d, n)\
-+}
-+
-+#define SQUASHFS_SWAP_IPC_INODE_HEADER(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE(s, d, \
-+ sizeof(struct squashfs_ipc_inode_header))\
-+ SQUASHFS_SWAP((s)->nlink, d, 96, 32);\
-+}
-+
-+#define SQUASHFS_SWAP_DEV_INODE_HEADER(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE(s, d, \
-+ sizeof(struct squashfs_dev_inode_header)); \
-+ SQUASHFS_SWAP((s)->nlink, d, 96, 32);\
-+ SQUASHFS_SWAP((s)->rdev, d, 128, 16);\
-+}
-+
-+#define SQUASHFS_SWAP_SYMLINK_INODE_HEADER(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE(s, d, \
-+ sizeof(struct squashfs_symlink_inode_header));\
-+ SQUASHFS_SWAP((s)->nlink, d, 96, 32);\
-+ SQUASHFS_SWAP((s)->symlink_size, d, 128, 16);\
-+}
-+
-+#define SQUASHFS_SWAP_REG_INODE_HEADER(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE(s, d, \
-+ sizeof(struct squashfs_reg_inode_header));\
-+ SQUASHFS_SWAP((s)->start_block, d, 96, 64);\
-+ SQUASHFS_SWAP((s)->fragment, d, 160, 32);\
-+ SQUASHFS_SWAP((s)->offset, d, 192, 32);\
-+ SQUASHFS_SWAP((s)->file_size, d, 224, 32);\
-+}
-+
-+#define SQUASHFS_SWAP_LREG_INODE_HEADER(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE(s, d, \
-+ sizeof(struct squashfs_lreg_inode_header));\
-+ SQUASHFS_SWAP((s)->nlink, d, 96, 32);\
-+ SQUASHFS_SWAP((s)->start_block, d, 128, 64);\
-+ SQUASHFS_SWAP((s)->fragment, d, 192, 32);\
-+ SQUASHFS_SWAP((s)->offset, d, 224, 32);\
-+ SQUASHFS_SWAP((s)->file_size, d, 256, 64);\
-+}
-+
-+#define SQUASHFS_SWAP_DIR_INODE_HEADER(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE(s, d, \
-+ sizeof(struct squashfs_dir_inode_header));\
-+ SQUASHFS_SWAP((s)->nlink, d, 96, 32);\
-+ SQUASHFS_SWAP((s)->file_size, d, 128, 19);\
-+ SQUASHFS_SWAP((s)->offset, d, 147, 13);\
-+ SQUASHFS_SWAP((s)->start_block, d, 160, 32);\
-+ SQUASHFS_SWAP((s)->parent_inode, d, 192, 32);\
-+}
-+
-+#define SQUASHFS_SWAP_LDIR_INODE_HEADER(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE(s, d, \
-+ sizeof(struct squashfs_ldir_inode_header));\
-+ SQUASHFS_SWAP((s)->nlink, d, 96, 32);\
-+ SQUASHFS_SWAP((s)->file_size, d, 128, 27);\
-+ SQUASHFS_SWAP((s)->offset, d, 155, 13);\
-+ SQUASHFS_SWAP((s)->start_block, d, 168, 32);\
-+ SQUASHFS_SWAP((s)->i_count, d, 200, 16);\
-+ SQUASHFS_SWAP((s)->parent_inode, d, 216, 32);\
-+}
-+
-+#define SQUASHFS_SWAP_DIR_INDEX(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_MEMSET(s, d, sizeof(struct squashfs_dir_index));\
-+ SQUASHFS_SWAP((s)->index, d, 0, 32);\
-+ SQUASHFS_SWAP((s)->start_block, d, 32, 32);\
-+ SQUASHFS_SWAP((s)->size, d, 64, 8);\
-+}
-+
-+#define SQUASHFS_SWAP_DIR_HEADER(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_MEMSET(s, d, sizeof(struct squashfs_dir_header));\
-+ SQUASHFS_SWAP((s)->count, d, 0, 8);\
-+ SQUASHFS_SWAP((s)->start_block, d, 8, 32);\
-+ SQUASHFS_SWAP((s)->inode_number, d, 40, 32);\
-+}
-+
-+#define SQUASHFS_SWAP_DIR_ENTRY(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_MEMSET(s, d, sizeof(struct squashfs_dir_entry));\
-+ SQUASHFS_SWAP((s)->offset, d, 0, 13);\
-+ SQUASHFS_SWAP((s)->type, d, 13, 3);\
-+ SQUASHFS_SWAP((s)->size, d, 16, 8);\
-+ SQUASHFS_SWAP((s)->inode_number, d, 24, 16);\
-+}
-+
-+#define SQUASHFS_SWAP_FRAGMENT_ENTRY(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_MEMSET(s, d, sizeof(struct squashfs_fragment_entry));\
-+ SQUASHFS_SWAP((s)->start_block, d, 0, 64);\
-+ SQUASHFS_SWAP((s)->size, d, 64, 32);\
-+}
-+
-+#define SQUASHFS_SWAP_INODE_T(s, d) SQUASHFS_SWAP_LONG_LONGS(s, d, 1)
-+
-+#define SQUASHFS_SWAP_SHORTS(s, d, n) {\
-+ int entry;\
-+ int bit_position;\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_MEMSET(s, d, n * 2);\
-+ for(entry = 0, bit_position = 0; entry < n; entry++, bit_position += \
-+ 16)\
-+ SQUASHFS_SWAP(s[entry], d, bit_position, 16);\
-+}
-+
-+#define SQUASHFS_SWAP_INTS(s, d, n) {\
-+ int entry;\
-+ int bit_position;\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_MEMSET(s, d, n * 4);\
-+ for(entry = 0, bit_position = 0; entry < n; entry++, bit_position += \
-+ 32)\
-+ SQUASHFS_SWAP(s[entry], d, bit_position, 32);\
-+}
-+
-+#define SQUASHFS_SWAP_LONG_LONGS(s, d, n) {\
-+ int entry;\
-+ int bit_position;\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_MEMSET(s, d, n * 8);\
-+ for(entry = 0, bit_position = 0; entry < n; entry++, bit_position += \
-+ 64)\
-+ SQUASHFS_SWAP(s[entry], d, bit_position, 64);\
-+}
-+
-+#define SQUASHFS_SWAP_DATA(s, d, n, bits) {\
-+ int entry;\
-+ int bit_position;\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_MEMSET(s, d, n * bits / 8);\
-+ for(entry = 0, bit_position = 0; entry < n; entry++, bit_position += \
-+ bits)\
-+ SQUASHFS_SWAP(s[entry], d, bit_position, bits);\
-+}
-+
-+#define SQUASHFS_SWAP_FRAGMENT_INDEXES(s, d, n) SQUASHFS_SWAP_LONG_LONGS(s, d, n)
-+#define SQUASHFS_SWAP_LOOKUP_BLOCKS(s, d, n) SQUASHFS_SWAP_LONG_LONGS(s, d, n)
-+
-+#ifdef CONFIG_SQUASHFS_1_0_COMPATIBILITY
-+
-+struct squashfs_base_inode_header_1 {
-+ unsigned int inode_type:4;
-+ unsigned int mode:12; /* protection */
-+ unsigned int uid:4; /* index into uid table */
-+ unsigned int guid:4; /* index into guid table */
-+} __attribute__ ((packed));
-+
-+struct squashfs_ipc_inode_header_1 {
-+ unsigned int inode_type:4;
-+ unsigned int mode:12; /* protection */
-+ unsigned int uid:4; /* index into uid table */
-+ unsigned int guid:4; /* index into guid table */
-+ unsigned int type:4;
-+ unsigned int offset:4;
-+} __attribute__ ((packed));
-+
-+struct squashfs_dev_inode_header_1 {
-+ unsigned int inode_type:4;
-+ unsigned int mode:12; /* protection */
-+ unsigned int uid:4; /* index into uid table */
-+ unsigned int guid:4; /* index into guid table */
-+ unsigned short rdev;
-+} __attribute__ ((packed));
-+
-+struct squashfs_symlink_inode_header_1 {
-+ unsigned int inode_type:4;
-+ unsigned int mode:12; /* protection */
-+ unsigned int uid:4; /* index into uid table */
-+ unsigned int guid:4; /* index into guid table */
-+ unsigned short symlink_size;
-+ char symlink[0];
-+} __attribute__ ((packed));
-+
-+struct squashfs_reg_inode_header_1 {
-+ unsigned int inode_type:4;
-+ unsigned int mode:12; /* protection */
-+ unsigned int uid:4; /* index into uid table */
-+ unsigned int guid:4; /* index into guid table */
-+ unsigned int mtime;
-+ unsigned int start_block;
-+ unsigned int file_size:32;
-+ unsigned short block_list[0];
-+} __attribute__ ((packed));
-+
-+struct squashfs_dir_inode_header_1 {
-+ unsigned int inode_type:4;
-+ unsigned int mode:12; /* protection */
-+ unsigned int uid:4; /* index into uid table */
-+ unsigned int guid:4; /* index into guid table */
-+ unsigned int file_size:19;
-+ unsigned int offset:13;
-+ unsigned int mtime;
-+ unsigned int start_block:24;
-+} __attribute__ ((packed));
-+
-+union squashfs_inode_header_1 {
-+ struct squashfs_base_inode_header_1 base;
-+ struct squashfs_dev_inode_header_1 dev;
-+ struct squashfs_symlink_inode_header_1 symlink;
-+ struct squashfs_reg_inode_header_1 reg;
-+ struct squashfs_dir_inode_header_1 dir;
-+ struct squashfs_ipc_inode_header_1 ipc;
-+};
-+
-+#define SQUASHFS_SWAP_BASE_INODE_CORE_1(s, d, n) \
-+ SQUASHFS_MEMSET(s, d, n);\
-+ SQUASHFS_SWAP((s)->inode_type, d, 0, 4);\
-+ SQUASHFS_SWAP((s)->mode, d, 4, 12);\
-+ SQUASHFS_SWAP((s)->uid, d, 16, 4);\
-+ SQUASHFS_SWAP((s)->guid, d, 20, 4);
-+
-+#define SQUASHFS_SWAP_BASE_INODE_HEADER_1(s, d, n) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE_1(s, d, n)\
-+}
-+
-+#define SQUASHFS_SWAP_IPC_INODE_HEADER_1(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE_1(s, d, \
-+ sizeof(struct squashfs_ipc_inode_header_1));\
-+ SQUASHFS_SWAP((s)->type, d, 24, 4);\
-+ SQUASHFS_SWAP((s)->offset, d, 28, 4);\
-+}
-+
-+#define SQUASHFS_SWAP_DEV_INODE_HEADER_1(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE_1(s, d, \
-+ sizeof(struct squashfs_dev_inode_header_1));\
-+ SQUASHFS_SWAP((s)->rdev, d, 24, 16);\
-+}
-+
-+#define SQUASHFS_SWAP_SYMLINK_INODE_HEADER_1(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE_1(s, d, \
-+ sizeof(struct squashfs_symlink_inode_header_1));\
-+ SQUASHFS_SWAP((s)->symlink_size, d, 24, 16);\
-+}
-+
-+#define SQUASHFS_SWAP_REG_INODE_HEADER_1(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE_1(s, d, \
-+ sizeof(struct squashfs_reg_inode_header_1));\
-+ SQUASHFS_SWAP((s)->mtime, d, 24, 32);\
-+ SQUASHFS_SWAP((s)->start_block, d, 56, 32);\
-+ SQUASHFS_SWAP((s)->file_size, d, 88, 32);\
-+}
-+
-+#define SQUASHFS_SWAP_DIR_INODE_HEADER_1(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE_1(s, d, \
-+ sizeof(struct squashfs_dir_inode_header_1));\
-+ SQUASHFS_SWAP((s)->file_size, d, 24, 19);\
-+ SQUASHFS_SWAP((s)->offset, d, 43, 13);\
-+ SQUASHFS_SWAP((s)->mtime, d, 56, 32);\
-+ SQUASHFS_SWAP((s)->start_block, d, 88, 24);\
-+}
-+
-+#endif
-+
-+#ifdef CONFIG_SQUASHFS_2_0_COMPATIBILITY
-+
-+struct squashfs_dir_index_2 {
-+ unsigned int index:27;
-+ unsigned int start_block:29;
-+ unsigned char size;
-+ unsigned char name[0];
-+} __attribute__ ((packed));
-+
-+struct squashfs_base_inode_header_2 {
-+ unsigned int inode_type:4;
-+ unsigned int mode:12; /* protection */
-+ unsigned int uid:8; /* index into uid table */
-+ unsigned int guid:8; /* index into guid table */
-+} __attribute__ ((packed));
-+
-+struct squashfs_ipc_inode_header_2 {
-+ unsigned int inode_type:4;
-+ unsigned int mode:12; /* protection */
-+ unsigned int uid:8; /* index into uid table */
-+ unsigned int guid:8; /* index into guid table */
-+} __attribute__ ((packed));
-+
-+struct squashfs_dev_inode_header_2 {
-+ unsigned int inode_type:4;
-+ unsigned int mode:12; /* protection */
-+ unsigned int uid:8; /* index into uid table */
-+ unsigned int guid:8; /* index into guid table */
-+ unsigned short rdev;
-+} __attribute__ ((packed));
-+
-+struct squashfs_symlink_inode_header_2 {
-+ unsigned int inode_type:4;
-+ unsigned int mode:12; /* protection */
-+ unsigned int uid:8; /* index into uid table */
-+ unsigned int guid:8; /* index into guid table */
-+ unsigned short symlink_size;
-+ char symlink[0];
-+} __attribute__ ((packed));
-+
-+struct squashfs_reg_inode_header_2 {
-+ unsigned int inode_type:4;
-+ unsigned int mode:12; /* protection */
-+ unsigned int uid:8; /* index into uid table */
-+ unsigned int guid:8; /* index into guid table */
-+ unsigned int mtime;
-+ unsigned int start_block;
-+ unsigned int fragment;
-+ unsigned int offset;
-+ unsigned int file_size:32;
-+ unsigned short block_list[0];
-+} __attribute__ ((packed));
-+
-+struct squashfs_dir_inode_header_2 {
-+ unsigned int inode_type:4;
-+ unsigned int mode:12; /* protection */
-+ unsigned int uid:8; /* index into uid table */
-+ unsigned int guid:8; /* index into guid table */
-+ unsigned int file_size:19;
-+ unsigned int offset:13;
-+ unsigned int mtime;
-+ unsigned int start_block:24;
-+} __attribute__ ((packed));
-+
-+struct squashfs_ldir_inode_header_2 {
-+ unsigned int inode_type:4;
-+ unsigned int mode:12; /* protection */
-+ unsigned int uid:8; /* index into uid table */
-+ unsigned int guid:8; /* index into guid table */
-+ unsigned int file_size:27;
-+ unsigned int offset:13;
-+ unsigned int mtime;
-+ unsigned int start_block:24;
-+ unsigned int i_count:16;
-+ struct squashfs_dir_index_2 index[0];
-+} __attribute__ ((packed));
-+
-+union squashfs_inode_header_2 {
-+ struct squashfs_base_inode_header_2 base;
-+ struct squashfs_dev_inode_header_2 dev;
-+ struct squashfs_symlink_inode_header_2 symlink;
-+ struct squashfs_reg_inode_header_2 reg;
-+ struct squashfs_dir_inode_header_2 dir;
-+ struct squashfs_ldir_inode_header_2 ldir;
-+ struct squashfs_ipc_inode_header_2 ipc;
-+};
-+
-+struct squashfs_dir_header_2 {
-+ unsigned int count:8;
-+ unsigned int start_block:24;
-+} __attribute__ ((packed));
-+
-+struct squashfs_dir_entry_2 {
-+ unsigned int offset:13;
-+ unsigned int type:3;
-+ unsigned int size:8;
-+ char name[0];
-+} __attribute__ ((packed));
-+
-+struct squashfs_fragment_entry_2 {
-+ unsigned int start_block;
-+ unsigned int size;
-+} __attribute__ ((packed));
-+
-+#define SQUASHFS_SWAP_BASE_INODE_CORE_2(s, d, n)\
-+ SQUASHFS_MEMSET(s, d, n);\
-+ SQUASHFS_SWAP((s)->inode_type, d, 0, 4);\
-+ SQUASHFS_SWAP((s)->mode, d, 4, 12);\
-+ SQUASHFS_SWAP((s)->uid, d, 16, 8);\
-+ SQUASHFS_SWAP((s)->guid, d, 24, 8);\
-+
-+#define SQUASHFS_SWAP_BASE_INODE_HEADER_2(s, d, n) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE_2(s, d, n)\
-+}
-+
-+#define SQUASHFS_SWAP_IPC_INODE_HEADER_2(s, d) \
-+ SQUASHFS_SWAP_BASE_INODE_HEADER_2(s, d, sizeof(struct squashfs_ipc_inode_header_2))
-+
-+#define SQUASHFS_SWAP_DEV_INODE_HEADER_2(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE_2(s, d, \
-+ sizeof(struct squashfs_dev_inode_header_2)); \
-+ SQUASHFS_SWAP((s)->rdev, d, 32, 16);\
-+}
-+
-+#define SQUASHFS_SWAP_SYMLINK_INODE_HEADER_2(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE_2(s, d, \
-+ sizeof(struct squashfs_symlink_inode_header_2));\
-+ SQUASHFS_SWAP((s)->symlink_size, d, 32, 16);\
-+}
-+
-+#define SQUASHFS_SWAP_REG_INODE_HEADER_2(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE_2(s, d, \
-+ sizeof(struct squashfs_reg_inode_header_2));\
-+ SQUASHFS_SWAP((s)->mtime, d, 32, 32);\
-+ SQUASHFS_SWAP((s)->start_block, d, 64, 32);\
-+ SQUASHFS_SWAP((s)->fragment, d, 96, 32);\
-+ SQUASHFS_SWAP((s)->offset, d, 128, 32);\
-+ SQUASHFS_SWAP((s)->file_size, d, 160, 32);\
-+}
-+
-+#define SQUASHFS_SWAP_DIR_INODE_HEADER_2(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE_2(s, d, \
-+ sizeof(struct squashfs_dir_inode_header_2));\
-+ SQUASHFS_SWAP((s)->file_size, d, 32, 19);\
-+ SQUASHFS_SWAP((s)->offset, d, 51, 13);\
-+ SQUASHFS_SWAP((s)->mtime, d, 64, 32);\
-+ SQUASHFS_SWAP((s)->start_block, d, 96, 24);\
-+}
-+
-+#define SQUASHFS_SWAP_LDIR_INODE_HEADER_2(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_SWAP_BASE_INODE_CORE_2(s, d, \
-+ sizeof(struct squashfs_ldir_inode_header_2));\
-+ SQUASHFS_SWAP((s)->file_size, d, 32, 27);\
-+ SQUASHFS_SWAP((s)->offset, d, 59, 13);\
-+ SQUASHFS_SWAP((s)->mtime, d, 72, 32);\
-+ SQUASHFS_SWAP((s)->start_block, d, 104, 24);\
-+ SQUASHFS_SWAP((s)->i_count, d, 128, 16);\
-+}
-+
-+#define SQUASHFS_SWAP_DIR_INDEX_2(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_MEMSET(s, d, sizeof(struct squashfs_dir_index_2));\
-+ SQUASHFS_SWAP((s)->index, d, 0, 27);\
-+ SQUASHFS_SWAP((s)->start_block, d, 27, 29);\
-+ SQUASHFS_SWAP((s)->size, d, 56, 8);\
-+}
-+#define SQUASHFS_SWAP_DIR_HEADER_2(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_MEMSET(s, d, sizeof(struct squashfs_dir_header_2));\
-+ SQUASHFS_SWAP((s)->count, d, 0, 8);\
-+ SQUASHFS_SWAP((s)->start_block, d, 8, 24);\
-+}
-+
-+#define SQUASHFS_SWAP_DIR_ENTRY_2(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_MEMSET(s, d, sizeof(struct squashfs_dir_entry_2));\
-+ SQUASHFS_SWAP((s)->offset, d, 0, 13);\
-+ SQUASHFS_SWAP((s)->type, d, 13, 3);\
-+ SQUASHFS_SWAP((s)->size, d, 16, 8);\
-+}
-+
-+#define SQUASHFS_SWAP_FRAGMENT_ENTRY_2(s, d) {\
-+ SQUASHFS_SWAP_START\
-+ SQUASHFS_MEMSET(s, d, sizeof(struct squashfs_fragment_entry_2));\
-+ SQUASHFS_SWAP((s)->start_block, d, 0, 32);\
-+ SQUASHFS_SWAP((s)->size, d, 32, 32);\
-+}
-+
-+#define SQUASHFS_SWAP_FRAGMENT_INDEXES_2(s, d, n) SQUASHFS_SWAP_INTS(s, d, n)
-+
-+/* fragment and fragment table defines */
-+#define SQUASHFS_FRAGMENT_BYTES_2(A) (A * sizeof(struct squashfs_fragment_entry_2))
-+
-+#define SQUASHFS_FRAGMENT_INDEX_2(A) (SQUASHFS_FRAGMENT_BYTES_2(A) / \
-+ SQUASHFS_METADATA_SIZE)
-+
-+#define SQUASHFS_FRAGMENT_INDEX_OFFSET_2(A) (SQUASHFS_FRAGMENT_BYTES_2(A) % \
-+ SQUASHFS_METADATA_SIZE)
-+
-+#define SQUASHFS_FRAGMENT_INDEXES_2(A) ((SQUASHFS_FRAGMENT_BYTES_2(A) + \
-+ SQUASHFS_METADATA_SIZE - 1) / \
-+ SQUASHFS_METADATA_SIZE)
-+
-+#define SQUASHFS_FRAGMENT_INDEX_BYTES_2(A) (SQUASHFS_FRAGMENT_INDEXES_2(A) *\
-+ sizeof(int))
-+
-+#endif
-+
-+#ifdef __KERNEL__
-+
-+/*
-+ * macros used to swap each structure entry, taking into account
-+ * bitfields and different bitfield placing conventions on differing
-+ * architectures
-+ */
-+
-+#include
-+
-+#ifdef __BIG_ENDIAN
-+ /* convert from little endian to big endian */
-+#define SQUASHFS_SWAP(value, p, pos, tbits) _SQUASHFS_SWAP(value, p, pos, \
-+ tbits, b_pos)
-+#else
-+ /* convert from big endian to little endian */
-+#define SQUASHFS_SWAP(value, p, pos, tbits) _SQUASHFS_SWAP(value, p, pos, \
-+ tbits, 64 - tbits - b_pos)
-+#endif
-+
-+#define _SQUASHFS_SWAP(value, p, pos, tbits, SHIFT) {\
-+ b_pos = pos % 8;\
-+ val = 0;\
-+ s = (unsigned char *)p + (pos / 8);\
-+ d = ((unsigned char *) &val) + 7;\
-+ for(bits = 0; bits < (tbits + b_pos); bits += 8) \
-+ *d-- = *s++;\
-+ value = (val >> (SHIFT))/* & ((1 << tbits) - 1)*/;\
-+}
-+
-+#define SQUASHFS_MEMSET(s, d, n) memset(s, 0, n);
-+
-+#endif
-+#endif
-diff -x .gitignore -Nurp linux-2.6.23/include/linux/squashfs_fs_i.h linux-2.6.23-squashfs3.3/include/linux/squashfs_fs_i.h
---- linux-2.6.23/include/linux/squashfs_fs_i.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.23-squashfs3.3/include/linux/squashfs_fs_i.h 2007-08-19 04:24:08.000000000 +0100
-@@ -0,0 +1,45 @@
-+#ifndef SQUASHFS_FS_I
-+#define SQUASHFS_FS_I
-+/*
-+ * Squashfs
-+ *
-+ * Copyright (c) 2002, 2003, 2004, 2005, 2006, 2007
-+ * Phillip Lougher
-+ *
-+ * This program is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU General Public License
-+ * as published by the Free Software Foundation; either version 2,
-+ * or (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+ *
-+ * squashfs_fs_i.h
-+ */
-+
-+struct squashfs_inode_info {
-+ long long start_block;
-+ unsigned int offset;
-+ union {
-+ struct {
-+ long long fragment_start_block;
-+ unsigned int fragment_size;
-+ unsigned int fragment_offset;
-+ long long block_list_start;
-+ } s1;
-+ struct {
-+ long long directory_index_start;
-+ unsigned int directory_index_offset;
-+ unsigned int directory_index_count;
-+ unsigned int parent_inode;
-+ } s2;
-+ } u;
-+ struct inode vfs_inode;
-+};
-+#endif
-diff -x .gitignore -Nurp linux-2.6.23/include/linux/squashfs_fs_sb.h linux-2.6.23-squashfs3.3/include/linux/squashfs_fs_sb.h
---- linux-2.6.23/include/linux/squashfs_fs_sb.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.23-squashfs3.3/include/linux/squashfs_fs_sb.h 2007-08-19 04:24:26.000000000 +0100
-@@ -0,0 +1,76 @@
-+#ifndef SQUASHFS_FS_SB
-+#define SQUASHFS_FS_SB
-+/*
-+ * Squashfs
-+ *
-+ * Copyright (c) 2002, 2003, 2004, 2005, 2006, 2007
-+ * Phillip Lougher
-+ *
-+ * This program is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU General Public License
-+ * as published by the Free Software Foundation; either version 2,
-+ * or (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+ *
-+ * squashfs_fs_sb.h
-+ */
-+
-+#include
-+
-+struct squashfs_cache {
-+ long long block;
-+ int length;
-+ long long next_index;
-+ char *data;
-+};
-+
-+struct squashfs_fragment_cache {
-+ long long block;
-+ int length;
-+ unsigned int locked;
-+ char *data;
-+};
-+
-+struct squashfs_sb_info {
-+ struct squashfs_super_block sblk;
-+ int devblksize;
-+ int devblksize_log2;
-+ int swap;
-+ struct squashfs_cache *block_cache;
-+ struct squashfs_fragment_cache *fragment;
-+ int next_cache;
-+ int next_fragment;
-+ int next_meta_index;
-+ unsigned int *uid;
-+ unsigned int *guid;
-+ long long *fragment_index;
-+ unsigned int *fragment_index_2;
-+ char *read_page;
-+ struct mutex read_data_mutex;
-+ struct mutex read_page_mutex;
-+ struct mutex block_cache_mutex;
-+ struct mutex fragment_mutex;
-+ struct mutex meta_index_mutex;
-+ wait_queue_head_t waitq;
-+ wait_queue_head_t fragment_wait_queue;
-+ struct meta_index *meta_index;
-+ z_stream stream;
-+ long long *inode_lookup_table;
-+ int unused_cache_blks;
-+ int unused_frag_blks;
-+ int (*read_inode)(struct inode *i, squashfs_inode_t \
-+ inode);
-+ long long (*read_blocklist)(struct inode *inode, int \
-+ index, int readahead_blks, char *block_list, \
-+ unsigned short **block_p, unsigned int *bsize);
-+ int (*read_fragment_index_table)(struct super_block *s);
-+};
-+#endif
-diff -x .gitignore -Nurp linux-2.6.23/init/do_mounts_rd.c linux-2.6.23-squashfs3.3/init/do_mounts_rd.c
---- linux-2.6.23/init/do_mounts_rd.c 2007-10-09 21:31:38.000000000 +0100
-+++ linux-2.6.23-squashfs3.3/init/do_mounts_rd.c 2007-11-01 05:06:25.000000000 +0000
-@@ -5,6 +5,7 @@
- #include
- #include
- #include
-+#include
- #include
- #include
-
-@@ -39,6 +40,7 @@ static int __init crd_load(int in_fd, in
- * numbers could not be found.
- *
- * We currently check for the following magic numbers:
-+ * squashfs
- * minix
- * ext2
- * romfs
-@@ -53,6 +55,7 @@ identify_ramdisk_image(int fd, int start
- struct ext2_super_block *ext2sb;
- struct romfs_super_block *romfsb;
- struct cramfs_super *cramfsb;
-+ struct squashfs_super_block *squashfsb;
- int nblocks = -1;
- unsigned char *buf;
-
-@@ -64,6 +67,7 @@ identify_ramdisk_image(int fd, int start
- ext2sb = (struct ext2_super_block *) buf;
- romfsb = (struct romfs_super_block *) buf;
- cramfsb = (struct cramfs_super *) buf;
-+ squashfsb = (struct squashfs_super_block *) buf;
- memset(buf, 0xe5, size);
-
- /*
-@@ -101,6 +105,18 @@ identify_ramdisk_image(int fd, int start
- goto done;
- }
-
-+ /* squashfs is at block zero too */
-+ if (squashfsb->s_magic == SQUASHFS_MAGIC) {
-+ printk(KERN_NOTICE
-+ "RAMDISK: squashfs filesystem found at block %d\n",
-+ start_block);
-+ if (squashfsb->s_major < 3)
-+ nblocks = (squashfsb->bytes_used_2+BLOCK_SIZE-1)>>BLOCK_SIZE_BITS;
-+ else
-+ nblocks = (squashfsb->bytes_used+BLOCK_SIZE-1)>>BLOCK_SIZE_BITS;
-+ goto done;
-+ }
-+
- /*
- * Read block 1 to test for minix and ext2 superblock
- */
From janny at frugalware.org Thu Mar 6 19:19:49 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Thu Mar 6 19:19:50 2008
Subject: [Frugalware-git] fwlive_pkgs: grub-theme-fwlive-0.2.9-1-i686
Message-ID: <20080306181949.564E6119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=0777e551510d58c2a195a3dcc7d7435d77414de6
commit 0777e551510d58c2a195a3dcc7d7435d77414de6
Author: Janos Kovacs
Date: Thu Mar 6 19:19:20 2008 +0100
grub-theme-fwlive-0.2.9-1-i686
* version bump
diff --git a/source/base-extra/grub-theme-fwlive/FrugalBuild b/source/base-extra/grub-theme-fwlive/FrugalBuild
index 3252678..6ed644e 100644
--- a/source/base-extra/grub-theme-fwlive/FrugalBuild
+++ b/source/base-extra/grub-theme-fwlive/FrugalBuild
@@ -3,7 +3,7 @@
pkgname=grub-theme-fwlive
_F_archive_name=fwlive-grub-theme
-pkgver=0.2.8.1
+pkgver=0.2.9
pkgrel=1
pkgdesc="FwLive theme for GRUB gfxboot."
url="http://frugalware.org/~janny/source_pkgs"
@@ -14,7 +14,7 @@ archs=('i686' 'x86_64')
up2date="lynx -dump $url | Flasttar"
source=($url/$_F_archive_name-$pkgver.tar.gz)
options=('nodocs')
-sha1sums=('4100ad807fe01b0abf010bafa28a333363ba5415')
+sha1sums=('6a83211ca8fdf30e7b0224c8b3cf2f173959ca0f')
build()
{
From janny at frugalware.org Thu Mar 6 19:26:20 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Thu Mar 6 19:26:21 2008
Subject: [Frugalware-git] fwlive_pkgs: acerhk-fwlive-0.5.35-9-i686
Message-ID: <20080306182620.5A98A119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=98f4fafac411e01bfebb1156f0fa8d28029e10db
commit 98f4fafac411e01bfebb1156f0fa8d28029e10db
Author: Janos Kovacs
Date: Thu Mar 6 19:26:00 2008 +0100
acerhk-fwlive-0.5.35-9-i686
* version bump
diff --git a/source/apps-extra/acerhk-fwlive/FrugalBuild b/source/apps-extra/acerhk-fwlive/FrugalBuild
index 8c44dee..3a495d9 100644
--- a/source/apps-extra/acerhk-fwlive/FrugalBuild
+++ b/source/apps-extra/acerhk-fwlive/FrugalBuild
@@ -3,12 +3,12 @@
# Maintainer: VMiklos
pkgname=acerhk-fwlive
+_F_archive_name=acerhk
pkgver=0.5.35
-pkgrel=6
+pkgrel=9
pkgdesc="Acer Hotkey driver for Linux"
-url="http://www.cakey.de/acerhk"
-Finclude kernel-module
-kver=2.6.23-6
+url="http://www.cakey.de/acerhk/"
+kver=2.6.24-3
depends=("kernel-fwlive=$kver")
makedepends=("kernel-fwlive-source=$kver")
groups=('apps-extra')
@@ -16,13 +16,12 @@ archs=('i686' '!x86_64')
up2date="lynx -dump $url |grep tgz$|sed 's/.*-\(.*\)\.t.*/\1/'"
source=($url/archives/acerhk-$pkgver.tgz)
sha1sums=('cf977b2bee3487a401b9c92f04fe8b2ac77f2db2')
+Finclude kernel-module
-build()
-{
- Fcd acerhk-$pkgver/
+build() {
Fpatchall
# no Fcheckkernel, crosscompilation verified
- Fcd
+ Fsed 'CFLAGS' 'EXTRA_CFLAGS' Makefile
sed -i '/config.h/d' acerhk.c
KERNELSRC=/usr/src/linux Fmake
Ffilerel $_F_kernelmod_dir/kernel/drivers/char/acerhk.ko
From janny at frugalware.org Thu Mar 6 19:27:22 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Thu Mar 6 19:27:23 2008
Subject: [Frugalware-git] fwlive_pkgs: aufs-20070228-1-i686
Message-ID: <20080306182722.6D9EC119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=9cafb807b5c68d9b4f212cff7fdb1d4ef3194274
commit 9cafb807b5c68d9b4f212cff7fdb1d4ef3194274
Author: Janos Kovacs
Date: Thu Mar 6 19:27:00 2008 +0100
aufs-20070228-1-i686
* version bump
diff --git a/source/apps-extra/aufs/FrugalBuild b/source/apps-extra/aufs/FrugalBuild
index 4030148..2d6e982 100644
--- a/source/apps-extra/aufs/FrugalBuild
+++ b/source/apps-extra/aufs/FrugalBuild
@@ -2,28 +2,32 @@
# Maintainer: Janny
pkgname=aufs
-pkgver=cvs20080119
-kver=2.6.23-6
-pkgrel=2
+pkgver=20070228
+kver=2.6.24-3
+pkgrel=1
pkgdesc="Aufs -- Another Unionfs"
depends=('zlib' "kernel-fwlive=$kver")
makedepends=("kernel-fwlive-source=$kver")
groups=('apps-extra')
archs=('i686' 'x86_64')
-#_F_kernel_name="-fwlive"
Finclude sourceforge
up2date=$pkgver
-source=(http://ftp.frugalware.org/pub/other/sources/aufs/$pkgname-$pkgver.tar.bz2)
+#source=(http://ftp.frugalware.org/pub/other/sources/aufs/$pkgname-$pkgver.tar.bz2)
+source=(http://frugalware.org/~janny/source_pkgs/aufs.tar.gz)
options=('force' 'scriptlet')
-sha1sums=('4837b23b350ae5a9e7573824e1fb5bbd46d9892a')
+sha1sums=('8193a36eb28ab559ecda408456e585aad2a207ad')
build()
{
- Fcd
- cat local.mk | grep -v "^CONFIG_AUFS_DEBUG =" \
- | grep -v "^CONFIG_AUFS_COMPAT =" \
- | sed "s/#CONFIG_AUFS_KSIZE_PATCH/CONFIG_AUFS_KSIZE_PATCH/" \
- | sed "s/#CONFIG_AUFS_LHASH_PATCH/CONFIG_AUFS_LHASH_PATCH/" >Makefile
+ Fcd $pkgname
+ cat local.mk \
+ | grep -v "^CONFIG_AUFS_DEBUG =" \
+ | grep -v "^CONFIG_AUFS_BRANCH_MAX_127 =" \
+ | sed -r "s/KDIR = .*/KDIR = \/usr\/src\/linux-${kver/-/-fw}\//" \
+ | sed "s/CONFIG_AUFS_BRANCH_MAX_1023 =.*/CONFIG_AUFS_BRANCH_MAX_1023 = y/" \
+ | sed "s/CONFIG_AUFS_SPLICE_PATCH =.*/CONFIG_AUFS_SPLICE_PATCH = y/" \
+ | sed "s/CONFIG_AUFS_SEC_PERM_PATCH =.*/CONFIG_AUFS_SEC_PERM_PATCH = y/" \
+ | sed "s/CONFIG_AUFS_WORKAROUND_FUSE =.*/CONFIG_AUFS_WORKAROUND_FUSE = y/" >Makefile
make KDIR=/usr/src/linux
Ffilerel /lib/modules/${kver/-/-fw}/kernel/fs/aufs/aufs.ko
}
From janny at frugalware.org Thu Mar 6 19:30:00 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Thu Mar 6 19:30:02 2008
Subject: [Frugalware-git] fwlive_pkgs: dazuko-fwlive-2.3.4-10-i686
Message-ID: <20080306183000.B8467119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=b5517f98e034ed093599912e74b266bbe1e2af5b
commit b5517f98e034ed093599912e74b266bbe1e2af5b
Author: Janos Kovacs
Date: Thu Mar 6 19:29:39 2008 +0100
dazuko-fwlive-2.3.4-10-i686
* version bump
diff --git a/source/apps-extra/dazuko-fwlive/0001-add-xp_set_path-function-necessary-for-RedirFS-su.patch b/source/apps-extra/dazuko-fwlive/0001-add-xp_set_path-function-necessary-for-RedirFS-su.patch
new file mode 100644
index 0000000..3408b10
--- /dev/null
+++ b/source/apps-extra/dazuko-fwlive/0001-add-xp_set_path-function-necessary-for-RedirFS-su.patch
@@ -0,0 +1,196 @@
+From 8c31801270d4085bdf0704d572a0c3fbe8cf6a8f Mon Sep 17 00:00:00 2001
+From: ogman
+Date: Wed, 12 Dec 2007 16:08:39 +0000
+Subject: [PATCH] add xp_set_path() function (necessary for RedirFS support)
+
+---
+ dazuko_call.h | 14 ++++++++++++++
+ dazuko_core.c | 10 ++++++++++
+ dazuko_core.h | 3 +++
+ dazuko_dummyos.c | 8 ++++++++
+ dazuko_freebsd.c | 8 ++++++++
+ dazuko_freebsd5.c | 8 ++++++++
+ dazuko_linux.c | 8 ++++++++
+ dazuko_linux26.c | 8 ++++++++
+ dazuko_rsbac.c | 8 ++++++++
+ 9 files changed, 75 insertions(+), 0 deletions(-)
+
+diff --git a/dazuko_call.h b/dazuko_call.h
+index ad0e8e8..68bd929 100644
+--- a/dazuko_call.h
++++ b/dazuko_call.h
+@@ -484,4 +484,18 @@ static int call_xp_init_cache(unsigned long ttl)
+ return xp_init_cache(ttl);
+ }
+
++
++/* include/exclude paths */
++
++static int call_xp_set_path(const char *path, int type)
++{
++ if (path == NULL)
++ {
++ xp_print("dazuko: warning: call_xp_set_path(path=NULL)\n");
++ return -1;
++ }
++
++ return xp_set_path(path, type);
++}
++
+ #endif
+diff --git a/dazuko_core.c b/dazuko_core.c
+index 7585166..fa8ca8f 100644
+--- a/dazuko_core.c
++++ b/dazuko_core.c
+@@ -1607,10 +1607,20 @@ static int dazuko_set_option(struct daemon_id *did, int opt, void *param, int le
+
+ case ADD_INCLUDE_PATH:
+ error = dazuko_insert_path_fs(&(sl->incl_paths), &(sl->lock_lists), (char *)param, len);
++ if (!error)
++ {
++ if (call_xp_set_path((char *)param, ADD_INCLUDE_PATH) != 0)
++ error = XP_ERROR_INVALID;
++ }
+ break;
+
+ case ADD_EXCLUDE_PATH:
+ error = dazuko_insert_path_fs(&(sl->excl_paths), &(sl->lock_lists), (char *)param, len);
++ if (!error)
++ {
++ if (call_xp_set_path((char *)param, ADD_EXCLUDE_PATH) != 0)
++ error = XP_ERROR_INVALID;
++ }
+ break;
+
+ case REMOVE_ALL_PATHS:
+diff --git a/dazuko_core.h b/dazuko_core.h
+index 935ca63..e64bf3e 100644
+--- a/dazuko_core.h
++++ b/dazuko_core.h
+@@ -178,6 +178,9 @@ int xp_set_event_properties(struct event_properties *event_p, struct xp_daemon_i
+ /* cache settings */
+ int xp_init_cache(unsigned long ttl);
+
++/* include/exclude paths */
++int xp_set_path(const char *path, int type);
++
+ /* output */
+ int xp_print(const char *fmt, ...);
+
+diff --git a/dazuko_dummyos.c b/dazuko_dummyos.c
+index d092581..6bdcf70 100644
+--- a/dazuko_dummyos.c
++++ b/dazuko_dummyos.c
+@@ -350,6 +350,14 @@ int xp_init_cache(unsigned long ttl)
+ }
+
+
++/* include/exclude paths */
++
++int xp_set_path(const char *path, int type)
++{
++ return 0;
++}
++
++
+ /* system calls */
+
+ static void dummy_dazuko_setid(const char *id)
+diff --git a/dazuko_freebsd.c b/dazuko_freebsd.c
+index f4cb535..c16412c 100644
+--- a/dazuko_freebsd.c
++++ b/dazuko_freebsd.c
+@@ -825,6 +825,14 @@ int xp_init_cache(unsigned long ttl)
+ }
+
+
++/* include/exclude paths */
++
++int xp_set_path(const char *path, int type)
++{
++ return 0;
++}
++
++
+ /* system calls */
+
+ static inline int check_fd(struct proc *p, int fd)
+diff --git a/dazuko_freebsd5.c b/dazuko_freebsd5.c
+index ff0994f..d26f030 100644
+--- a/dazuko_freebsd5.c
++++ b/dazuko_freebsd5.c
+@@ -877,6 +877,14 @@ int xp_init_cache(unsigned long ttl)
+ }
+
+
++/* include/exclude paths */
++
++int xp_set_path(const char *path, int type)
++{
++ return 0;
++}
++
++
+ /* system calls */
+
+ static inline int check_fd(struct proc *p, int fd)
+diff --git a/dazuko_linux.c b/dazuko_linux.c
+index f8bd860..d83bded 100644
+--- a/dazuko_linux.c
++++ b/dazuko_linux.c
+@@ -1429,6 +1429,14 @@ int xp_init_cache(unsigned long ttl)
+ }
+
+
++/* include/exclude paths */
++
++int xp_set_path(const char *path, int type)
++{
++ return 0;
++}
++
++
+ /* system calls */
+
+ #if defined(ON_OPEN_SUPPORT)
+diff --git a/dazuko_linux26.c b/dazuko_linux26.c
+index cdf0d43..a1676be 100644
+--- a/dazuko_linux26.c
++++ b/dazuko_linux26.c
+@@ -579,6 +579,14 @@ int xp_init_cache(unsigned long ttl)
+ }
+
+
++/* include/exclude paths */
++
++int xp_set_path(const char *path, int type)
++{
++ return 0;
++}
++
++
+ /* system hooks */
+
+ #ifndef DAZUKO_FIST
+diff --git a/dazuko_rsbac.c b/dazuko_rsbac.c
+index 9fa701b..6023bae 100644
+--- a/dazuko_rsbac.c
++++ b/dazuko_rsbac.c
+@@ -518,6 +518,14 @@ int xp_init_cache(unsigned long ttl)
+ }
+
+
++/* include/exclude paths */
++
++int xp_set_path(const char *path, int type)
++{
++ return 0;
++}
++
++
+ /* system hook */
+
+ inline int xp_sys_hook()
+--
+1.5.4.rc4.25.g81cc-dirty
+
diff --git a/source/apps-extra/dazuko-fwlive/0002-source-code-to-compile-Dazuko-as-an-RedirFS-filter.patch b/source/apps-extra/dazuko-fwlive/0002-source-code-to-compile-Dazuko-as-an-RedirFS-filter.patch
new file mode 100644
index 0000000..742965d
--- /dev/null
+++ b/source/apps-extra/dazuko-fwlive/0002-source-code-to-compile-Dazuko-as-an-RedirFS-filter.patch
@@ -0,0 +1,1008 @@
+From 26176cf910f1c66979c74a5ca24e95efebc05310 Mon Sep 17 00:00:00 2001
+From: ogman
+Date: Wed, 12 Dec 2007 16:14:20 +0000
+Subject: [PATCH] source code to compile Dazuko as an RedirFS filter
+
+---
+ dazuko_redirfs.c | 989 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 1 files changed, 989 insertions(+), 0 deletions(-)
+ create mode 100644 dazuko_redirfs.c
+
+diff --git a/dazuko_redirfs.c b/dazuko_redirfs.c
+new file mode 100644
+index 0000000..885242a
+--- /dev/null
++++ b/dazuko_redirfs.c
+@@ -0,0 +1,989 @@
++/* Dazuko RedirFS. Allow Linux 2.6 file access control for 3rd-party applications.
++ Written by John Ogness
++
++ Copyright (c) 2007 Avira GmbH
++ All rights reserved.
++
++ This program is free software; you can redistribute it and/or
++ modify it under the terms of the GNU General Public License
++ as published by the Free Software Foundation; either version 2
++ of the License, or (at your option) any later version.
++
++ This program is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ GNU General Public License for more details.
++
++ You should have received a copy of the GNU General Public License
++ along with this program; if not, write to the Free Software
++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
++*/
++
++#include "dazuko_linux26.h"
++#include "dazuko_core.h"
++#include "dazuko_linux26_device_def.h"
++
++#ifdef USE_CONFIG_H
++#include
++#endif
++#include
++#include
++#include
++#include
++#include
++#include
++#include
++#include "../redirfs/redirfs.h"
++#ifdef DEVFS_SUPPORT
++#include
++#endif
++#include
++#if !defined(USE_TRYTOFREEZEVOID)
++#include
++#endif
++#ifdef LINUX_USE_FREEZER_H
++#include
++#endif
++#include
++
++
++#ifndef DAZUKO_DM
++#define DAZUKO_DM 0
++#endif
++
++
++ssize_t linux_dazuko_device_read(struct file *, char __user *, size_t, loff_t *);
++ssize_t linux_dazuko_device_write(struct file *, const char __user *, size_t, loff_t *);
++int linux_dazuko_device_open(struct inode *, struct file *);
++int linux_dazuko_device_ioctl(struct inode *inode, struct file *file, unsigned int cmd, unsigned long param);
++int linux_dazuko_device_release(struct inode *, struct file *);
++
++#ifndef WITHOUT_UDEV
++#ifdef USE_CLASS
++static struct class *dazuko_class = NULL;
++#else
++static struct class_simple *dazuko_class = NULL;
++#endif
++#endif
++
++static int dev_major = -1;
++
++int dazukoflt_ctl(struct rfs_ctl *ctl);
++enum rfs_retv dazukoflt_permission(rfs_context context, struct rfs_args *args);
++static rfs_filter dazukoflt;
++static struct rfs_filter_info flt_info = {"dazukoflt", 1000, 1, dazukoflt_ctl};
++static struct rfs_op_info op_info[] = {
++ { RFS_REG_IOP_PERMISSION, dazukoflt_permission, NULL },
++ { RFS_OP_END, NULL, NULL }
++};
++
++static struct file_operations fops = {
++ .owner = THIS_MODULE,
++ .read = linux_dazuko_device_read,
++ .write = linux_dazuko_device_write,
++ .ioctl = linux_dazuko_device_ioctl,
++ .open = linux_dazuko_device_open,
++ .release = linux_dazuko_device_release,
++ };
++
++
++/* mutex */
++
++inline void xp_init_mutex(struct xp_mutex *mutex)
++{
++ init_MUTEX(&(mutex->mutex));
++}
++
++inline void xp_down(struct xp_mutex *mutex)
++{
++ down(&(mutex->mutex));
++}
++
++inline void xp_up(struct xp_mutex *mutex)
++{
++ up(&(mutex->mutex));
++}
++
++inline void xp_destroy_mutex(struct xp_mutex *mutex)
++{
++}
++
++
++/* read-write lock */
++
++inline void xp_init_rwlock(struct xp_rwlock *rwlock)
++{
++ rwlock_init(&(rwlock->rwlock));
++}
++
++inline void xp_write_lock(struct xp_rwlock *rwlock)
++{
++ write_lock(&(rwlock->rwlock));
++}
++
++inline void xp_write_unlock(struct xp_rwlock *rwlock)
++{
++ write_unlock(&(rwlock->rwlock));
++}
++
++inline void xp_read_lock(struct xp_rwlock *rlock)
++{
++ read_lock(&(rlock->rwlock));
++}
++
++inline void xp_read_unlock(struct xp_rwlock *rlock)
++{
++ read_unlock(&(rlock->rwlock));
++}
++
++inline void xp_destroy_rwlock(struct xp_rwlock *rwlock)
++{
++}
++
++
++/* wait-notify queue */
++
++inline int xp_init_queue(struct xp_queue *queue)
++{
++ init_waitqueue_head(&(queue->queue));
++ return 0;
++}
++
++inline int xp_wait_until_condition(struct xp_queue *queue, int (*cfunction)(void *), void *cparam, int allow_interrupt)
++{
++ /* wait until cfunction(cparam) != 0 (condition is true) */
++ int ret = 0;
++
++ if (allow_interrupt)
++ {
++ while (1)
++ {
++ ret = wait_event_interruptible(queue->queue, cfunction(cparam) != 0);
++
++#if defined (USE_TRYTOFREEZEVOID)
++ if (try_to_freeze() == 0)
++ break;
++#else
++ if (current->flags & PF_FREEZE)
++ {
++ refrigerator(PF_FREEZE);
++ }
++ else
++ {
++ break;
++ }
++#endif
++ }
++ }
++ else
++ {
++ wait_event(queue->queue, cfunction(cparam) != 0);
++ }
++
++ return ret;
++}
++
++inline int xp_notify(struct xp_queue *queue)
++{
++ wake_up(&(queue->queue));
++ return 0;
++}
++
++inline int xp_destroy_queue(struct xp_queue *queue)
++{
++ return 0;
++}
++
++
++/* memory */
++
++inline void* xp_malloc(size_t size)
++{
++ return kmalloc(size, GFP_ATOMIC);
++}
++
++inline int xp_free(void *ptr)
++{
++ kfree(ptr);
++ return 0;
++}
++
++inline int xp_copyin(const void *user_src, void *kernel_dest, size_t size)
++{
++ return copy_from_user(kernel_dest, user_src, size);
++}
++
++inline int xp_copyout(const void *kernel_src, void *user_dest, size_t size)
++{
++ return copy_to_user(user_dest, kernel_src, size);
++}
++
++inline int xp_verify_user_writable(const void *user_ptr, size_t size)
++{
++ return 0;
++}
++
++inline int xp_verify_user_readable(const void *user_ptr, size_t size)
++{
++ return 0;
++}
++
++
++/* path attribute */
++
++inline int xp_is_absolute_path(const char *path)
++{
++ if (path[0] == '/')
++ return 1;
++
++ return 0;
++}
++
++
++/* atomic */
++
++inline int xp_atomic_set(struct xp_atomic *atomic, int value)
++{
++ atomic_set(&(atomic->atomic), value);
++ return 0;
++}
++
++inline int xp_atomic_inc(struct xp_atomic *atomic)
++{
++ atomic_inc(&(atomic->atomic));
++ return 0;
++}
++
++inline int xp_atomic_dec(struct xp_atomic *atomic)
++{
++ atomic_dec(&(atomic->atomic));
++ return 0;
++}
++
++inline int xp_atomic_read(struct xp_atomic *atomic)
++{
++ return atomic_read(&(atomic->atomic));
++}
++
++
++/* file structure */
++
++static int dazuko_get_full_filename(struct xp_file_struct *xfs)
++{
++ char *temp;
++
++ if (xfs == NULL)
++ return 0;
++
++ if (xfs->inode == NULL)
++ return 0;
++
++ if (S_ISDIR(xfs->inode->i_mode))
++ return 0;
++
++ if (xfs->nd == NULL || xfs->free_full_filename)
++ return 0;
++
++ if (xfs->nd->mnt == NULL || xfs->nd->dentry == NULL)
++ return 0;
++
++ /* check if we need to allocate a buffer */
++ if (!xfs->free_page_buffer)
++ {
++ /* get pre-requisites for d_path function */
++ xfs->buffer = (char *)__get_free_page(GFP_USER);
++
++ /* make sure we got a page */
++ if (xfs->buffer == NULL)
++ return 0;
++
++ /* the buffer will need to be freed */
++ xfs->free_page_buffer = 1;
++ }
++
++ /* make sure we don't already have a vfsmount */
++ if (!xfs->mntput_vfsmount)
++ {
++ xfs->vfsmount = mntget(xfs->nd->mnt);
++
++ /* the vfsmount will need to be put back */
++ xfs->mntput_vfsmount = 1;
++ }
++
++ /* make sure we don't already have a dentry */
++ if (!xfs->dput_dentry)
++ {
++ xfs->dentry = dget(xfs->nd->dentry);
++
++ /* the dentry will need to be put back */
++ xfs->dput_dentry = 1;
++ }
++
++ temp = d_path(xfs->dentry, xfs->vfsmount, xfs->buffer, PAGE_SIZE);
++
++ /* make sure we really got a new filename */
++ if (temp == NULL)
++ return 0;
++
++ xfs->full_filename_length = dazuko_strlen(temp);
++
++ xfs->full_filename = (char *)xp_malloc(xfs->full_filename_length + 1);
++ if (xfs->full_filename == NULL)
++ return 0;
++
++ /* the char array will need to be freed */
++ xfs->free_full_filename = 1;
++
++ memcpy(xfs->full_filename, temp, xfs->full_filename_length + 1);
++
++ /* we have a filename with the full path */
++
++ return 1;
++}
++
++static int dazuko_fill_file_struct_cleanup(struct dazuko_file_struct *dfs)
++{
++ if (dfs == NULL)
++ return 0;
++
++ if (dfs->extra_data == NULL)
++ return 0;
++
++ if (dfs->extra_data->free_page_buffer)
++ {
++ free_page((unsigned long)dfs->extra_data->buffer);
++ dfs->extra_data->free_page_buffer = 0;
++ }
++
++ if (dfs->extra_data->dput_dentry)
++ {
++ dput(dfs->extra_data->dentry);
++ dfs->extra_data->dput_dentry = 0;
++ }
++
++ if (dfs->extra_data->mntput_vfsmount)
++ {
++ mntput(dfs->extra_data->vfsmount);
++ dfs->extra_data->mntput_vfsmount = 0;
++ }
++
++ return 0;
++}
++
++int xp_fill_file_struct(struct dazuko_file_struct *dfs)
++{
++ int error = -1;
++
++ if (dfs == NULL)
++ return error;
++
++ /* check if filename has already been filled in */
++ if (dfs->filename != NULL)
++ return 0;
++
++ /* make sure we can get the full path */
++ if (dazuko_get_full_filename(dfs->extra_data))
++ {
++ /* reference copy of full path */
++ dfs->filename = dfs->extra_data->full_filename;
++
++ dfs->filename_length = dfs->extra_data->full_filename_length;
++
++ dfs->file_p.size = dfs->extra_data->inode->i_size;
++ dfs->file_p.set_size = 1;
++ dfs->file_p.uid = dfs->extra_data->inode->i_uid;
++ dfs->file_p.set_uid = 1;
++ dfs->file_p.gid = dfs->extra_data->inode->i_gid;
++ dfs->file_p.set_gid = 1;
++ dfs->file_p.mode = dfs->extra_data->inode->i_mode;
++ dfs->file_p.set_mode = 1;
++ dfs->file_p.device_type = dfs->extra_data->inode->i_rdev;
++ dfs->file_p.set_device_type = 1;
++
++ error = 0;
++ }
++
++ dazuko_fill_file_struct_cleanup(dfs);
++
++ return error;
++}
++
++static int dazuko_file_struct_cleanup(struct dazuko_file_struct **dfs)
++{
++ if (dfs == NULL)
++ return 0;
++
++ if (*dfs == NULL)
++ return 0;
++
++ if ((*dfs)->extra_data)
++ {
++ if ((*dfs)->extra_data->free_full_filename)
++ xp_free((*dfs)->extra_data->full_filename);
++
++ xp_free((*dfs)->extra_data);
++ }
++
++ xp_free(*dfs);
++
++ *dfs = NULL;
++
++ return 0;
++}
++
++
++/* daemon id */
++
++static inline int check_parent(struct task_struct *parent, struct task_struct *child)
++{
++ struct task_struct *ts = child;
++
++ if (parent == NULL || child == NULL)
++ return -1;
++
++ while (1)
++ {
++ if (ts == parent)
++ return 0;
++
++ if (ts->parent == NULL)
++ break;
++
++ if (ts == ts->parent)
++ break;
++
++ ts = ts->parent;
++ }
++
++ return -1;
++}
++
++inline int xp_id_compare(struct xp_daemon_id *id1, struct xp_daemon_id *id2, int check_related)
++{
++ if (id1 == NULL || id2 == NULL)
++ return DAZUKO_DIFFERENT;
++
++ /* If file's are available we do a special
++ * check ("file"'s are only used by daemons).
++ * Here we allow threads to look like one
++ * instance, if they pass around the handle.
++ * Note: this is a Linux-only "hack" */
++ if (id1->file != NULL && id2->file != NULL)
++ {
++ if (id1->tgid == id2->tgid && id1->files == id2->files && id1->file == id2->file)
++ return DAZUKO_SAME;
++ }
++
++ if (id1->pid == id2->pid && id1->current_p == id2->current_p && id1->files == id2->files)
++ return DAZUKO_SAME;
++
++ if (check_related)
++ {
++ /* Same thread id and same file descriptors,
++ * looks like they could be the same process...
++ * We will treat two threads of the same process
++ * as the same (for relation checks). This is
++ * useful for the Trusted Application Framework,
++ * if we trust one thread, we can trust them all.*/
++ if (id1->tgid == id2->tgid && id1->files == id2->files)
++ {
++ /* Two different threads of the same process will have different current pointers,
++ * but if process ids match, current pointers must too. */
++
++ if (id1->pid == id2->pid && id1->current_p == id2->current_p)
++ return DAZUKO_SAME;
++
++ if (id1->pid != id2->pid && id1->current_p != id2->current_p)
++ return DAZUKO_SAME;
++ }
++
++ if (check_parent(id1->current_p, id2->current_p) == 0)
++ {
++ return DAZUKO_CHILD;
++ }
++ else if (id1->pid == id2->pid || id1->current_p == id2->current_p || id1->files == id2->files)
++ {
++ return DAZUKO_SUSPICIOUS;
++ }
++ else if (id1->tgid == id2->tgid)
++ {
++ return DAZUKO_SUSPICIOUS;
++ }
++ }
++
++ return DAZUKO_DIFFERENT;
++}
++
++inline int xp_id_free(struct xp_daemon_id *id)
++{
++ xp_free(id);
++
++ return 0;
++}
++
++inline struct xp_daemon_id* xp_id_copy(struct xp_daemon_id *id)
++{
++ struct xp_daemon_id *ptr;
++
++ if (id == NULL)
++ return NULL;
++
++ ptr = (struct xp_daemon_id *)xp_malloc(sizeof(struct xp_daemon_id));
++
++ if (ptr != NULL)
++ {
++ ptr->pid = id->pid;
++ ptr->tgid = id->tgid;
++ ptr->file = id->file;
++ ptr->current_p = id->current_p;
++ ptr->files = id->files;
++ }
++
++ return ptr;
++}
++
++
++/* event */
++
++int xp_set_event_properties(struct event_properties *event_p, struct xp_daemon_id *xp_id)
++{
++ event_p->pid = xp_id->pid;
++ event_p->set_pid = 1;
++
++ return 0;
++}
++
++
++/* cache settings */
++
++int xp_init_cache(unsigned long ttl)
++{
++ return -1;
++}
++
++
++/* include/exclude paths */
++
++int xp_set_path(const char *path, int type)
++{
++ int err;
++ struct rfs_path_info path_info;
++
++ switch (type)
++ {
++ case ADD_INCLUDE_PATH:
++ path_info.flags = RFS_PATH_INCLUDE | RFS_PATH_SUBTREE;
++ break;
++
++ case ADD_EXCLUDE_PATH:
++ path_info.flags = RFS_PATH_EXCLUDE | RFS_PATH_SUBTREE;
++ break;
++
++ default:
++ return -1;
++ }
++
++ path_info.path = dazuko_strdup(path, NULL);
++ err = rfs_set_path(dazukoflt, &path_info);
++ if (err)
++ {
++ xp_print("dazuko: failed to set RedirFS path, err=%d\n", err);
++ rfs_unregister_filter(dazukoflt);
++ return -1;
++ }
++
++ return 0;
++}
++
++
++/* system hooks */
++
++int dazuko_sys_generic(struct inode *inode, int mask, struct nameidata *nd)
++{
++ struct dazuko_file_struct *dfs = NULL;
++ int error = 0;
++ int check_error = 0;
++ struct event_properties event_p;
++ struct xp_daemon_id xp_id;
++ struct slot_list *sl = NULL;
++ int event = DAZUKO_ON_OPEN;
++ int daemon_is_allowed = 1;
++
++ if (nd == NULL || inode == NULL)
++ return 0;
++
++ dazuko_bzero(&event_p, sizeof(event_p));
++
++ if ((mask & MAY_EXEC) != 0)
++ {
++ event = DAZUKO_ON_EXEC;
++ daemon_is_allowed = 0;
++ }
++ else
++ {
++ /* mask == 0 is passed in when a file is created */
++ if (mask == 0 || (mask & (MAY_WRITE|MAY_APPEND)) != 0)
++ {
++ if ((mask & MAY_READ) != 0)
++ {
++ event_p.flags = O_RDWR;
++ }
++ else
++ {
++ event_p.flags = O_WRONLY;
++ }
++
++ event_p.set_flags = 1;
++ }
++ else if ((mask & MAY_READ) != 0)
++ {
++ event_p.flags = O_RDONLY;
++ event_p.set_flags = 1;
++ }
++ }
++
++ xp_id.pid = current->pid;
++ xp_id.tgid = current->tgid;
++ xp_id.file = NULL;
++ xp_id.current_p = current;
++ xp_id.files = current->files;
++
++ check_error = dazuko_check_access(event, daemon_is_allowed, &xp_id, &sl);
++
++ if (!check_error)
++ {
++ event_p.mode = inode->i_mode;
++ event_p.set_mode = 1;
++ event_p.pid = current->pid;
++ event_p.set_pid = 1;
++ event_p.uid = current->uid;
++ event_p.set_uid = 1;
++
++ dfs = (struct dazuko_file_struct *)xp_malloc(sizeof(struct dazuko_file_struct));
++ if (dfs != NULL)
++ {
++ dazuko_bzero(dfs, sizeof(struct dazuko_file_struct));
++
++ dfs->extra_data = (struct xp_file_struct *)xp_malloc(sizeof(struct xp_file_struct));
++ if (dfs->extra_data != NULL)
++ {
++ dazuko_bzero(dfs->extra_data, sizeof(struct xp_file_struct));
++
++ dfs->extra_data->nd = nd;
++ dfs->extra_data->inode = inode;
++
++ error = dazuko_process_access(event, dfs, &event_p, sl);
++ }
++ else
++ {
++ xp_free(dfs);
++ dfs = NULL;
++ }
++
++ dazuko_file_struct_cleanup(&dfs);
++ }
++ }
++
++ if (error)
++ return XP_ERROR_PERMISSION;
++
++ return 0;
++}
++
++int dazukoflt_ctl(struct rfs_ctl *ctl)
++{
++ return 0;
++}
++
++enum rfs_retv dazukoflt_permission(rfs_context context, struct rfs_args *args)
++{
++ if (!args->args.i_permission.inode)
++ return RFS_CONTINUE;
++
++ if (!args->args.i_permission.mask)
++ return RFS_CONTINUE;
++
++ if (!args->args.i_permission.nd)
++ return RFS_CONTINUE;
++
++ if (dazuko_sys_generic(args->args.i_permission.inode, args->args.i_permission.mask, args->args.i_permission.nd) != 0)
++ {
++ args->retv.rv_int = -EACCES;
++ return RFS_STOP;
++ }
++
++ return RFS_CONTINUE;
++}
++
++inline int xp_sys_hook()
++{
++ /* Make sure we have a valid task_struct. */
++
++ if (current == NULL)
++ {
++ xp_print("dazuko: panic (current == NULL)\n");
++ return -1;
++ }
++ if (current->fs == NULL)
++ {
++ xp_print("dazuko: panic (current->fs == NULL)\n");
++ return -1;
++ }
++
++ {
++ int err;
++
++ err = rfs_register_filter(&dazukoflt, &flt_info);
++ if (err)
++ {
++ xp_print("dazuko: unable to register with RedirFS, err=%d\n", err);
++ return -1;
++ }
++
++ err = rfs_set_operations(dazukoflt, op_info);
++ if (err)
++ {
++ xp_print("dazuko: unable to set RedirFS options, err=%d\n", err);
++ rfs_unregister_filter(dazukoflt);
++ return -1;
++ }
++ }
++
++ dev_major = register_chrdev(DAZUKO_DM, DEVICE_NAME, &fops);
++ if (dev_major < 0)
++ {
++ xp_print("dazuko: unable to register device, err=%d\n", dev_major);
++ return dev_major;
++ }
++
++#ifdef DEVFS_SUPPORT
++ devfs_mk_cdev(MKDEV(dev_major, 0), S_IFCHR | S_IRUSR | S_IWUSR, DEVICE_NAME);
++#endif
++
++#ifndef WITHOUT_UDEV
++#ifdef USE_CLASS
++ dazuko_class = class_create(THIS_MODULE, "dazuko");
++#ifdef CLASS_class_device_create_2_6_15
++ class_device_create(dazuko_class, NULL, MKDEV(dev_major, 0), NULL, "dazuko");
++#else
++ class_device_create(dazuko_class, MKDEV(dev_major, 0), NULL, "dazuko");
++#endif
++#else
++ dazuko_class = class_simple_create(THIS_MODULE, "dazuko");
++ class_simple_device_add(dazuko_class, MKDEV(dev_major, 0), NULL, "dazuko");
++#endif
++#endif
++
++ return 0;
++}
++
++inline int xp_sys_unhook()
++{
++ unregister_chrdev(dev_major, DEVICE_NAME);
++
++#ifdef DEVFS_SUPPORT
++ devfs_remove(DEVICE_NAME);
++#endif
++
++#ifndef WITHOUT_UDEV
++#ifdef USE_CLASS
++ class_device_destroy(dazuko_class, MKDEV(dev_major, 0));
++ class_destroy(dazuko_class);
++#else
++ class_simple_device_remove(MKDEV(dev_major, 0));
++ class_simple_destroy(dazuko_class);
++#endif
++#endif
++
++ {
++ int err;
++
++ err = rfs_unregister_filter(dazukoflt);
++ if (err)
++ {
++ xp_print("dazuko: failed to unregister from RedirFS, err=%d\n", err);
++ }
++ }
++
++ return 0;
++}
++
++
++/* output */
++
++int xp_print(const char *fmt, ...)
++{
++ va_list args;
++ char *p;
++ size_t size = 1024;
++ int length;
++
++ p = (char *)xp_malloc(size);
++ if (p == NULL)
++ return -1;
++
++ length = dazuko_strlen(KERN_INFO);
++
++ memcpy(p, KERN_INFO, length);
++
++ va_start(args, fmt);
++ vsnprintf(p + length, size - length, fmt, args);
++ va_end(args);
++
++ p[size-1] = 0;
++
++ printk(p);
++
++ xp_free(p);
++
++ return 0;
++}
++
++
++/* ioctl's */
++
++int linux_dazuko_device_open(struct inode *inode, struct file *file)
++{
++ DPRINT(("dazuko: linux_dazuko_device_open() [%d]\n", current->pid));
++
++ return 0;
++}
++
++ssize_t linux_dazuko_device_read(struct file *file, char *buffer, size_t length, loff_t *pos)
++{
++ /* Reading from the dazuko device simply
++ * returns the device number. This is to
++ * help out the daemon. */
++
++ char tmp[20];
++ size_t dev_major_len;
++
++ DPRINT(("dazuko: linux_dazuko_device_read() [%d]\n", current->pid));
++
++ if (*pos != 0)
++ return 0;
++
++ if (dev_major < 0)
++ return XP_ERROR_NODEVICE;
++
++ /* print dev_major to a string
++ * and get length (with terminator) */
++ dazuko_bzero(tmp, sizeof(tmp));
++
++ dev_major_len = dazuko_snprintf(tmp, sizeof(tmp), "%d", dev_major) + 1;
++
++ if (tmp[sizeof(tmp)-1] != 0)
++ {
++ xp_print("dazuko: failing device_read, device number overflow for dameon %d (dev_major=%d)\n", current->pid, dev_major);
++ return XP_ERROR_FAULT;
++ }
++
++ if (length < dev_major_len)
++ return XP_ERROR_INVALID;
++
++ /* copy dev_major string to userspace */
++ if (xp_copyout(tmp, buffer, dev_major_len) != 0)
++ return XP_ERROR_FAULT;
++
++ *pos += dev_major_len;
++
++ return dev_major_len;
++}
++
++ssize_t linux_dazuko_device_write(struct file *file, const char *buffer, size_t length, loff_t *pos)
++{
++ struct xp_daemon_id xp_id;
++ char tmpbuffer[32];
++ int size;
++
++ size = length;
++ if (length >= sizeof(tmpbuffer))
++ size = sizeof(tmpbuffer) -1;
++
++ /* copy request pointer string to kernelspace */
++ if (xp_copyin(buffer, tmpbuffer, size) != 0)
++ return XP_ERROR_FAULT;
++
++ tmpbuffer[size] = 0;
++
++ xp_id.pid = current->pid;
++ xp_id.tgid = current->tgid;
++ xp_id.file = file;
++ xp_id.current_p = current;
++ xp_id.files = current->files;
++
++ if (dazuko_handle_user_request(tmpbuffer, &xp_id) == 0)
++ return size;
++
++ return XP_ERROR_INTERRUPT;
++}
++
++int linux_dazuko_device_ioctl(struct inode *inode, struct file *file, unsigned int cmd, unsigned long param)
++{
++ /* A daemon uses this function to interact with
++ * the kernel. A daemon can set scanning parameters,
++ * give scanning response, and get filenames to scan. */
++
++ struct xp_daemon_id xp_id;
++ int error = 0;
++
++ if (param == 0)
++ {
++ xp_print("dazuko: error: linux_dazuko_device_ioctl(..., 0)\n");
++ return XP_ERROR_INVALID;
++ }
++
++ xp_id.pid = current->pid;
++ xp_id.tgid = current->tgid;
++ xp_id.file = file;
++ xp_id.current_p = current;
++ xp_id.files = current->files;
++
++ error = dazuko_handle_user_request_compat1((void *)param, _IOC_NR(cmd), &xp_id);
++
++ if (error != 0)
++ {
++ /* general error occurred */
++
++ return XP_ERROR_PERMISSION;
++ }
++
++ return error;
++}
++
++int linux_dazuko_device_release(struct inode *inode, struct file *file)
++{
++ struct xp_daemon_id xp_id;
++
++ DPRINT(("dazuko: dazuko_device_release() [%d]\n", current->pid));
++
++ xp_id.pid = current->pid;
++ xp_id.tgid = current->tgid;
++ xp_id.file = file;
++ xp_id.current_p = current;
++ xp_id.files = current->files;
++
++ return dazuko_unregister_daemon(&xp_id);
++}
++
++
++/* init/exit */
++
++static int __init linux_dazuko_init(void)
++{
++ return dazuko_init();
++}
++
++static void __exit linux_dazuko_exit(void)
++{
++ dazuko_exit();
++}
++
++
++MODULE_AUTHOR("Avira GmbH ");
++MODULE_DESCRIPTION("allow 3rd-party file access control");
++MODULE_LICENSE("GPL");
++MODULE_INFO(vermagic, VERMAGIC_STRING);
++
++module_init(linux_dazuko_init);
++module_exit(linux_dazuko_exit);
+--
+1.5.4.rc4.25.g81cc-dirty
+
diff --git a/source/apps-extra/dazuko-fwlive/0003-add-enable-redirfs-to-build-Dazuko-as-a-RedirF.patch b/source/apps-extra/dazuko-fwlive/0003-add-enable-redirfs-to-build-Dazuko-as-a-RedirF.patch
new file mode 100644
index 0000000..a2448e3
--- /dev/null
+++ b/source/apps-extra/dazuko-fwlive/0003-add-enable-redirfs-to-build-Dazuko-as-a-RedirF.patch
@@ -0,0 +1,127 @@
+From b39f2f1f24f1a508c30356b0ee64aaa68f54e8a1 Mon Sep 17 00:00:00 2001
+From: ogman
+Date: Wed, 12 Dec 2007 17:07:11 +0000
+Subject: [PATCH] - add "--enable-redirfs" to build Dazuko as a RedirFS filter
+ - change "--without-dep" to be the default
+
+---
+ configure | 41 +++++++++++++++++++++++++++++++++--------
+ 1 files changed, 33 insertions(+), 8 deletions(-)
+
+diff --git a/configure b/configure
+index 17168f1..d300fce 100755
+--- a/configure
++++ b/configure
+@@ -74,6 +74,7 @@ print_help()
+ echo " --disable-compat1 disable 1.x compatibility (IO/Linux only)"
+ echo " --enable-debug print extra debug information"
+ echo " --enable-syscalls hook syscalls, not LSM (Linux 2.6 only)"
++ echo " --enable-redirfs use RedirFS (Linux 2.6 only)"
+ echo ""
+ echo "optional packages"
+ echo " --with-PACKAGE use PACKAGE"
+@@ -81,7 +82,7 @@ print_help()
+ echo " --without-module do not build kernel module"
+ echo " --without-library do not build library"
+ echo " --without-example-c do not build C example"
+- echo " --without-dep do not build dependencies (Linux only)"
++ echo " --with-dep build dependencies (Linux only)"
+ echo " --with-example-java build Java example"
+ echo " --with-example-perl build Perl example"
+ echo " --with-example-python build Python example"
+@@ -407,7 +408,18 @@ check_use_parent()
+
+ do_linux26()
+ {
+- if [ $LINUX26_USE_SYSCALLS -eq 0 ]
++ if [ $LINUX26_USE_SYSCALLS -eq 0 -a $LINUX26_USE_REDIRFS -eq 1 ]
++ then
++ echo -n "checking for RedirFS source code... "
++ if [ ! -f "../redirfs/redirfs.h" ]
++ then
++ echo "not found"
++ echo "error: please make sure the RedirFS code is available as ../redirfs/"
++ exit 1
++ fi
++ echo "found (../redirfs)"
++
++ elif [ $LINUX26_USE_SYSCALLS -eq 0 -a $LINUX26_USE_REDIRFS -eq 0 ]
+ then
+ echo -n "checking if security module support is enabled... "
+ if [ $CONFIG_SECURITY -eq 0 ]
+@@ -690,25 +702,25 @@ do_linux26()
+
+ if [ $ON_CLOSE -ne 0 -a $LINUX26_USE_SYSCALLS -eq 0 ]
+ then
+- echo "disabling ON_CLOSE events (not available for Linux 2.6 LSM)"
++ echo "disabling ON_CLOSE events (not available for Linux 2.6 LSM/RedirFS)"
+ ON_CLOSE=0
+ fi
+
+ if [ ${ON_UNLINK} -ne 0 -a $LINUX26_USE_SYSCALLS -eq 0 ]
+ then
+- echo "disabling ON_UNLINK events (not available for Linux 2.6 LSM)"
++ echo "disabling ON_UNLINK events (not available for Linux 2.6 LSM/RedirFS)"
+ ON_UNLINK=0
+ fi
+
+ if [ ${ON_RMDIR} -ne 0 -a $LINUX26_USE_SYSCALLS -eq 0 ]
+ then
+- echo "disabling ON_RMDIR events (not available for Linux 2.6 LSM)"
++ echo "disabling ON_RMDIR events (not available for Linux 2.6 LSM/RedirFS)"
+ ON_RMDIR=0
+ fi
+
+ if [ ${ON_CLOSE_MODIFIED} -ne 0 -a $LINUX26_USE_SYSCALLS -eq 0 ]
+ then
+- echo "disabling ON_CLOSE_MODIFIED events (not available for Linux 2.6 LSM)"
++ echo "disabling ON_CLOSE_MODIFIED events (not available for Linux 2.6 LSM/RedirFS)"
+ ON_CLOSE_MODIFIED=0
+ fi
+
+@@ -716,7 +728,12 @@ do_linux26()
+
+ if [ ${LINUX26_USE_SYSCALLS} -eq 0 ]
+ then
+- LINUX26_OBJS="dazuko_linux26.o"
++ if [ ${LINUX26_USE_REDIRFS} -eq 0 ]
++ then
++ LINUX26_OBJS="dazuko_linux26.o"
++ else
++ LINUX26_OBJS="dazuko_redirfs.o"
++ fi
+ echo "EXTRA_CFLAGS += -Wall -DLINUX26_SUPPORT" > Makefile
+ else
+ LINUX26_OBJS="dazuko_linux.o"
+@@ -1460,12 +1477,13 @@ LINUX26_USE_SYSCALLS=0
+ PERFORM_SCT_CHECK=1
+ LINUX26_SYSCALLTABLE_READONLY=0
+ LINUX26_SYSCALL_CFLAGS=""
+-WITH_LINUX_DEP=1
++WITH_LINUX_DEP=0
+ NO_CAPABILITIES=0
+ SMP=0
+ HIDDEN_SCT=0
+ DUMMYOS=0
+ LSM_STACKING=1
++LINUX26_USE_REDIRFS=0
+ LOCAL_DPATH=2
+ LINUX_SRC=""
+ LINUX_OBJ=""
+@@ -1549,6 +1567,13 @@ do
+ --disable-syscalls)
+ LINUX26_USE_SYSCALLS=0
+ ;;
++ --enable-redirfs)
++ LINUX26_USE_REDIRFS=1
++ LSM_STACKING=0
++ ;;
++ --disable-redirfs)
++ LINUX26_USE_REDIRFS=0
++ ;;
+ --sct-nocheck)
+ PERFORM_SCT_CHECK=0
+ ;;
+--
+1.5.4.rc4.25.g81cc-dirty
+
diff --git a/source/apps-extra/dazuko-fwlive/FrugalBuild b/source/apps-extra/dazuko-fwlive/FrugalBuild
index 020252a..aeb1171 100644
--- a/source/apps-extra/dazuko-fwlive/FrugalBuild
+++ b/source/apps-extra/dazuko-fwlive/FrugalBuild
@@ -2,25 +2,37 @@
# Maintainer: Janny
pkgname=dazuko-fwlive
+_F_archive_name=dazuko
pkgver=2.3.4
-pkgrel=7
+redirver=0.2
+pkgrel=10
pkgdesc="On-access virus scanning kernel interface"
url="http://www.dazuko.org"
license="GPL-2 BSD"
-_F_kernelmod_scriptlet=$pkgname.install
+_F_kernelmod_scriptlet=$_F_archive_name.install
Finclude kernel-module
-kver=2.6.23-6
-depends=("kernel-fwlive=$kver")
+kver=2.6.24-3
+depends=("kernel-fwlive=$kver" "redirfs-fwlive=$redirver")
makedepends=("kernel-fwlive-source=$kver")
archs=('i686' 'x86_64')
groups=('apps-extra')
up2date="lynx -dump '$url/files/?M=O' | grep -v source |grep -v birthday|grep -v pre|Flasttar"
-source=(http://www.dazuko.org/files/dazuko-$pkgver.tar.gz README.Frugalware)
+source=(http://www.dazuko.org/files/$_F_archive_name-$pkgver.tar.gz \
+ http://www.redirfs.org/packages/redirfs-$redirver.tar.gz \
+ README.Frugalware \
+ 0001-add-xp_set_path-function-necessary-for-RedirFS-su.patch \
+ 0002-source-code-to-compile-Dazuko-as-an-RedirFS-filter.patch \
+ 0003-add-enable-redirfs-to-build-Dazuko-as-a-RedirF.patch)
sha1sums=('271d0a23d7aed2555f023141504386b6042a5efa' \
- '8292447cba4bdab9dfbb8169c011e74559a00804')
+ 'c736b6a9b9cb0540010eb865febfd4f3b1fe6d82' \
+ '8292447cba4bdab9dfbb8169c011e74559a00804' \
+ 'eebf571563481dba5bce10900b02bff5d6e30b78' \
+ '4f6b6b45a2be49a4e90fd7fb2ad4e40d9e50c436' \
+ 'd45e7a44154f61d79f54c940ba6fa6085c88cbf6')
build() {
- Fcd dazuko-$pkgver/
+ Fcd
+ ln -s redirfs-$redirver ../redirfs
# Patch needed by some F-Secure softwares
patch -p0 < patch_fsecure_init_event.diff || Fdie
# no Fcheckkernel, crosscompilation verified
@@ -28,10 +40,11 @@ build() {
Fsed '`uname -r`' "$_F_kernelmod_uname" configure
find . -type f -exec sed -i '/#include /d' {} \;
./configure --system=linux26 --disable-chroot-support \
- --without-dep --enable-event-init-module || Fdie
+ --without-dep --enable-event-init-module --enable-redirfs || Fdie
make || Fdie
- Ffilerel $_F_kernelmod_dir/extra/dazuko.ko
+ Ffilerel $_F_kernelmod_dir/extra/$_F_archive_name.ko
make -C library || Fdie
- Ffile dazuko-${pkgver//_/-}/library/libdazuko.a /usr/lib/libdazuko.a
+ Ffile $_F_archive_name-${pkgver//_/-}/library/libdazuko.a /usr/lib/libdazuko.a
Fdoc README.Frugalware
+ Fbuild_kernelmod_scriptlet
}
diff --git a/source/apps-extra/dazuko-fwlive/README.Frugalware b/source/apps-extra/dazuko-fwlive/README.Frugalware
new file mode 100644
index 0000000..cd09da1
--- /dev/null
+++ b/source/apps-extra/dazuko-fwlive/README.Frugalware
@@ -0,0 +1,13 @@
+If you got errors saying:
+
+'dazuko: failed to register'
+
+then you need to do:
+
+-------------------
+# rmmod capability
+# modprobe dazuko
+# modprobe capability
+-------------------
+
+It will work.
diff --git a/source/apps-extra/dazuko-fwlive/dazuko-fwlive.install b/source/apps-extra/dazuko-fwlive/dazuko-fwlive.install
deleted file mode 100644
index 6726b94..0000000
--- a/source/apps-extra/dazuko-fwlive/dazuko-fwlive.install
+++ /dev/null
@@ -1,43 +0,0 @@
-post_install()
-{
- if test `grep dazuko < /etc/sysconfig/modules|wc -l` -gt 1; then
- sed -i '/^dazuko/d' /etc/sysconfig/modules
- fi
- if test `grep commoncap < /etc/sysconfig/modules|wc -l` -gt 1; then
- sed -i '/^commoncap/d' /etc/sysconfig/modules
- fi
- if ! grep -q dazuko /etc/sysconfig/modules; then
- echo "Adding dazuko to /etc/sysconfig/modules..."
- sed -i 's/capability/dazuko\ncapability/' /etc/sysconfig/modules
- fi
- if ! grep -q commoncap /etc/sysconfig/modules; then
- echo "Adding commoncap to /etc/sysconfig/modules..."
- sed -i 's/dazuko/commoncap\ndazuko/' /etc/sysconfig/modules
- fi
- depmod -a $_F_kernelmod_uname
- rmmod capability 2>/dev/null
- if test `lsmod|grep commoncap|wc -l` -lt 1; then
- modprobe commoncap
- fi
- if test `lsmod|grep dazuko|wc -l` -ge 1; then
- rmmod dazuko 2>/dev/null
- fi
- modprobe dazuko
- modprobe capability
- echo "Dazuko loaded..."
-}
-
-post_upgrade()
-{
- post_install
-}
-
-pre_remove()
-{
- sed -i '/^dazuko/d' /etc/sysconfig/modules
- sed -i '/^commoncap/d' /etc/sysconfig/modules
-}
-
-op=$1
-shift
-$op $*
diff --git a/source/apps-extra/dazuko-fwlive/dazuko.install b/source/apps-extra/dazuko-fwlive/dazuko.install
new file mode 100644
index 0000000..6004b01
--- /dev/null
+++ b/source/apps-extra/dazuko-fwlive/dazuko.install
@@ -0,0 +1,38 @@
+post_install()
+{
+ if ! grep -q dazuko /etc/sysconfig/modules; then
+ echo -n "adding dazuko to /etc/sysconfig/modules..."
+ echo dazuko >> /etc/sysconfig/modules
+ echo " done."
+ fi
+ depmod -a $_F_kernelmod_uname
+ if lsmod|grep -q dazuko; then
+ rmmod dazuko
+ fi
+ echo -n "loading dazuko..."
+ modprobe dazuko
+ echo " done."
+}
+
+post_upgrade()
+{
+ post_install
+}
+
+pre_remove()
+{
+ if grep -q dazuko /etc/sysconfig/modules; then
+ echo -n "removing dazuko from /etc/sysconfig/modules..."
+ sed -i '/^dazuko/d' /etc/sysconfig/modules
+ echo " done."
+ fi
+ if lsmod|grep -q dazuko; then
+ echo -n "unloading dazuko..."
+ rmmod dazuko
+ echo " done."
+ fi
+}
+
+op=$1
+shift
+$op $*
From janny at frugalware.org Thu Mar 6 19:32:24 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Thu Mar 6 19:32:26 2008
Subject: [Frugalware-git] fwlive_pkgs: lirc-fwlive-0.8.2-18-i686
Message-ID: <20080306183224.B5002119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=7987d8518c26de09d6fde4a340e7db091a4a56a1
commit 7987d8518c26de09d6fde4a340e7db091a4a56a1
Author: Janos Kovacs
Date: Thu Mar 6 19:31:53 2008 +0100
lirc-fwlive-0.8.2-18-i686
* version bump
diff --git a/source/apps-extra/lirc-fwlive/FrugalBuild b/source/apps-extra/lirc-fwlive/FrugalBuild
index d80b0d6..45525c9 100644
--- a/source/apps-extra/lirc-fwlive/FrugalBuild
+++ b/source/apps-extra/lirc-fwlive/FrugalBuild
@@ -2,14 +2,15 @@
# Maintainer: voroskoi
pkgname=lirc-fwlive
+_F_archive_name=lirc
pkgver=0.8.2
-pkgrel=15
+pkgrel=18
pkgdesc="LIRC is a package that allows you to decode and send infra-red signals of many commonly used remote controls."
url="http://www.lirc.org/"
_F_sourceforge_name="lirc"
_F_rcd_name="lirc"
Finclude kernel-module sourceforge
-kver=2.6.23-6
+kver=2.6.24-3
makedepends=("kernel-fwlive-source=$kver")
subpkgs=('lirc_modules-fwlive')
@@ -25,11 +26,10 @@ groups=('apps-extra')
archs=('i686' 'x86_64')
backup=(etc/lirc{d,md}.conf etc/sysconfig/lirc)
source=(${source[@]} rc.lirc lirc.logrotate lirc.sysconfig README.Frugalware \
- kernel-2.6.23.patch)
+ kernel-2.6.{23,24}.patch)
unset install
build() {
- Fcd lirc-$pkgver
Fpatchall
Fconf --enable-sandboxed --with-driver=all \
--with-moduledir=$_F_kernelmod_dir/misc
@@ -50,8 +50,8 @@ build() {
Fmkdir /etc/{logrotate.d,sysconfig}
Ffile lirc.logrotate /etc/logrotate.d/
Ffile lirc.sysconfig /etc/sysconfig/lirc
- Frcd2 lirc
- Fsplit lirc_modules-fwlive lib/modules
+ Frcd2 $_F_archive_name
+ Fsplit lirc_modules lib/modules
Fbuild_kernelmod_scriptlet
}
sha1sums=('3443b24c54e8679483efbb6fb446b41116bc654c' \
@@ -59,6 +59,7 @@ sha1sums=('3443b24c54e8679483efbb6fb446b41116bc654c' \
'4342b004eb53d51fcbb9af2cf136bb4990874608' \
'504e0cd04780e75b6a8ab6836815c1ed9058db78' \
'0b80c73e902920c028dca98a9006aaa313c6e120' \
- 'cd65d7ce6a33a8e8965dc0d529b72a785c4437f7')
+ 'cd65d7ce6a33a8e8965dc0d529b72a785c4437f7' \
+ '83bb445945e6331d17c2bb5200811c107bdc609f')
# optimization OK
diff --git a/source/apps-extra/lirc-fwlive/kernel-2.6.24.patch b/source/apps-extra/lirc-fwlive/kernel-2.6.24.patch
new file mode 100644
index 0000000..6bf4ef1
--- /dev/null
+++ b/source/apps-extra/lirc-fwlive/kernel-2.6.24.patch
@@ -0,0 +1,1143 @@
+--- lirc-0.8.2/drivers/lirc_dev/lirc_dev.c 2007/11/08 21:27:29 1.53
++++ lirc-0.8.2/drivers/lirc_dev/lirc_dev.c 2008/01/13 10:45:02 1.56
+@@ -41,14 +41,23 @@
+ #include
+ #include
+ #include
++#include
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 18)
+ #include
+-#include
+ #include
+-#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)
++#else
++#include
++#include
++#endif
++#include
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 0)
+ #include
+ #endif
+ #define __KERNEL_SYSCALLS__
+ #include
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 23)
++#include
++#endif
+
+ #include "drivers/kcompat.h"
+
+@@ -60,19 +69,19 @@
+ #include "drivers/lirc.h"
+ #include "lirc_dev.h"
+
+-static int debug = 0;
+-#define dprintk(fmt, args...) \
+- do{ \
+- if(debug) printk(KERN_DEBUG fmt, ## args); \
+- }while(0)
++static int debug;
++#define dprintk(fmt, args...) \
++ do { \
++ if (debug) \
++ printk(KERN_DEBUG fmt, ## args); \
++ } while (0)
+
+ #define IRCTL_DEV_NAME "BaseRemoteCtl"
+ #define SUCCESS 0
+ #define NOPLUG -1
+ #define LOGHEAD "lirc_dev (%s[%d]): "
+
+-struct irctl
+-{
++struct irctl {
+ struct lirc_plugin p;
+ int attached;
+ int open;
+@@ -80,10 +89,14 @@
+ struct semaphore buffer_sem;
+ struct lirc_buffer *buf;
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 23)
+ int tpid;
+- struct semaphore *t_notify;
+- struct semaphore *t_notify2;
++ struct completion *t_notify;
++ struct completion *t_notify2;
+ int shutdown;
++#else
++ struct task_struct *task;
++#endif
+ long jiffies_to_wait;
+
+ #ifdef LIRC_HAVE_DEVFS_24
+@@ -108,10 +121,14 @@
+ sema_init(&ir->buffer_sem, 1);
+ ir->p.minor = NOPLUG;
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 23)
+ ir->tpid = -1;
+ ir->t_notify = NULL;
+ ir->t_notify2 = NULL;
+ ir->shutdown = 0;
++#else
++ ir->task = NULL;
++#endif
+ ir->jiffies_to_wait = 0;
+
+ ir->open = 0;
+@@ -128,14 +145,14 @@
+ #ifdef LIRC_HAVE_DEVFS_26
+ devfs_remove(DEV_LIRC "/%u", ir->p.minor);
+ #endif
+- class_device_destroy(lirc_class,MKDEV(IRCTL_DEV_MAJOR, ir->p.minor));
++ class_device_destroy(lirc_class, MKDEV(IRCTL_DEV_MAJOR, ir->p.minor));
+
+- if (ir->buf != ir->p.rbuf){
++ if (ir->buf != ir->p.rbuf) {
+ lirc_buffer_free(ir->buf);
+ kfree(ir->buf);
+ }
+ ir->buf = NULL;
+-
++
+ init_irctl(ir);
+ }
+
+@@ -152,29 +169,31 @@
+ return -EOVERFLOW;
+ }
+
+- if(ir->p.add_to_buf) {
++ if (ir->p.add_to_buf) {
+ int res = -ENODATA;
+ int got_data = 0;
+-
++
+ /* service the device as long as it is returning
+ * data and we have space
+ */
+- while( !lirc_buffer_full(ir->buf) )
+- {
+- res = ir->p.add_to_buf( ir->p.data, ir->buf );
+- if( res == SUCCESS )
++ while (!lirc_buffer_full(ir->buf)) {
++ res = ir->p.add_to_buf(ir->p.data, ir->buf);
++ if (res == SUCCESS)
+ got_data++;
+ else
+ break;
+ }
+-
+- if( res == -ENODEV )
+- {
++
++ if (res == -ENODEV)
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 23)
+ ir->shutdown = 1;
+- }
++#else
++ kthread_stop(ir->task);
++#endif
++
+ return (got_data ? SUCCESS : res);
+ }
+-
++
+ return SUCCESS;
+ }
+
+@@ -183,56 +202,59 @@
+ static int lirc_thread(void *irctl)
+ {
+ struct irctl *ir = irctl;
+-
++
+ /* This thread doesn't need any user-level access,
+ * so get rid of all our resources
+ */
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 23)
+ daemonize("lirc_dev");
+-
+- if (ir->t_notify != NULL) {
+- up(ir->t_notify);
+- }
+-
++
++ if (ir->t_notify != NULL)
++ complete(ir->t_notify);
++#endif
++
+ dprintk(LOGHEAD "poll thread started\n", ir->p.name, ir->p.minor);
+-
++
+ do {
+ if (ir->open) {
+ if (ir->jiffies_to_wait) {
+ set_current_state(TASK_INTERRUPTIBLE);
+ schedule_timeout(ir->jiffies_to_wait);
+ } else {
+- interruptible_sleep_on(ir->p.get_queue(ir->p.data));
++ interruptible_sleep_on(
++ ir->p.get_queue(ir->p.data));
+ }
+- if (ir->shutdown) {
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 23)
++ if (ir->shutdown)
++#else
++ if (kthread_should_stop())
++#endif
+ break;
+- }
+- if (!add_to_buf(ir)) {
++ if (!add_to_buf(ir))
+ wake_up_interruptible(&ir->buf->wait_poll);
+- }
+ } else {
+ /* if device not opened so we can sleep half a second */
+ set_current_state(TASK_INTERRUPTIBLE);
+ schedule_timeout(HZ/2);
+ }
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 23)
+ } while (!ir->shutdown);
+-
+- if (ir->t_notify2 != NULL) {
+- down(ir->t_notify2);
+- }
++
++ if (ir->t_notify2 != NULL)
++ wait_for_completion(ir->t_notify2);
+
+ ir->tpid = -1;
+- if (ir->t_notify != NULL) {
+- up(ir->t_notify);
+- }
+-
++ if (ir->t_notify != NULL)
++ complete(ir->t_notify);
++#else
++ } while (!kthread_should_stop());
++#endif
++
+ dprintk(LOGHEAD "poll thread ended\n", ir->p.name, ir->p.minor);
+-
++
+ return 0;
+ }
+
+-/*
+- *
+- */
+ int lirc_register_plugin(struct lirc_plugin *p)
+ {
+ struct irctl *ir;
+@@ -242,43 +264,43 @@
+ #ifdef LIRC_HAVE_DEVFS_24
+ char name[16];
+ #endif
+- DECLARE_MUTEX_LOCKED(tn);
++ DECLARE_COMPLETION(tn);
+
+ if (!p) {
+- printk("lirc_dev: lirc_register_plugin: "
++ printk(KERN_ERR "lirc_dev: lirc_register_plugin: "
+ "plugin pointer must be not NULL!\n");
+ err = -EBADRQC;
+ goto out;
+ }
+
+ if (MAX_IRCTL_DEVICES <= p->minor) {
+- printk("lirc_dev: lirc_register_plugin: "
++ printk(KERN_ERR "lirc_dev: lirc_register_plugin: "
+ "\"minor\" must be between 0 and %d (%d)!\n",
+ MAX_IRCTL_DEVICES-1, p->minor);
+ err = -EBADRQC;
+ goto out;
+ }
+
+- if (1 > p->code_length || (BUFLEN*8) < p->code_length) {
+- printk("lirc_dev: lirc_register_plugin: "
++ if (1 > p->code_length || (BUFLEN * 8) < p->code_length) {
++ printk(KERN_ERR "lirc_dev: lirc_register_plugin: "
+ "code length in bits for minor (%d) "
+ "must be less than %d!\n",
+- p->minor, BUFLEN*8);
++ p->minor, BUFLEN * 8);
+ err = -EBADRQC;
+ goto out;
+ }
+
+- printk("lirc_dev: lirc_register_plugin: "
+- "sample_rate: %d\n",p->sample_rate);
++ printk(KERN_INFO "lirc_dev: lirc_register_plugin: sample_rate: %d\n",
++ p->sample_rate);
+ if (p->sample_rate) {
+ if (2 > p->sample_rate || HZ < p->sample_rate) {
+- printk("lirc_dev: lirc_register_plugin: "
++ printk(KERN_ERR "lirc_dev: lirc_register_plugin: "
+ "sample_rate must be between 2 and %d!\n", HZ);
+ err = -EBADRQC;
+ goto out;
+ }
+ if (!p->add_to_buf) {
+- printk("lirc_dev: lirc_register_plugin: "
++ printk(KERN_ERR "lirc_dev: lirc_register_plugin: "
+ "add_to_buf cannot be NULL when "
+ "sample_rate is set\n");
+ err = -EBADRQC;
+@@ -286,15 +308,15 @@
+ }
+ } else if (!(p->fops && p->fops->read)
+ && !p->get_queue && !p->rbuf) {
+- printk("lirc_dev: lirc_register_plugin: "
++ printk(KERN_ERR "lirc_dev: lirc_register_plugin: "
+ "fops->read, get_queue and rbuf "
+ "cannot all be NULL!\n");
+ err = -EBADRQC;
+ goto out;
+ } else if (!p->get_queue && !p->rbuf) {
+- if (!(p->fops && p->fops->read && p->fops->poll)
++ if (!(p->fops && p->fops->read && p->fops->poll)
+ || (!p->fops->ioctl && !p->ioctl)) {
+- printk("lirc_dev: lirc_register_plugin: "
++ printk(KERN_ERR "lirc_dev: lirc_register_plugin: "
+ "neither read, poll nor ioctl can be NULL!\n");
+ err = -EBADRQC;
+ goto out;
+@@ -302,7 +324,7 @@
+ }
+
+ if (p->owner == NULL) {
+- printk(KERN_WARNING "lirc_dev: lirc_register_plugin: "
++ printk(KERN_ERR "lirc_dev: lirc_register_plugin: "
+ "no module owner registered\n");
+ err = -EBADRQC;
+ goto out;
+@@ -314,17 +336,17 @@
+
+ if (0 > minor) {
+ /* find first free slot for plugin */
+- for (minor=0; minorsample_rate) {
+ ir->jiffies_to_wait = HZ / p->sample_rate;
+ } else {
+- /* it means - wait for externeal event in task queue */
++ /* it means - wait for external event in task queue */
+ ir->jiffies_to_wait = 0;
+- }
++ }
+
+ /* some safety check 8-) */
+ p->name[sizeof(p->name)-1] = '\0';
+
+ bytes_in_key = p->code_length/8 + (p->code_length%8 ? 1 : 0);
+-
++
+ if (p->rbuf) {
+ ir->buf = p->rbuf;
+ } else {
+ ir->buf = kmalloc(sizeof(struct lirc_buffer), GFP_KERNEL);
+- if(!ir->buf) {
++ if (!ir->buf) {
+ err = -ENOMEM;
+ goto out_lock;
+ }
+- if(lirc_buffer_init
+- (ir->buf, bytes_in_key, BUFLEN/bytes_in_key) != 0) {
++ if (lirc_buffer_init(ir->buf, bytes_in_key,
++ BUFLEN/bytes_in_key) != 0) {
+ kfree(ir->buf);
+ err = -ENOMEM;
+ goto out_lock;
+ }
+ }
+
+- if (p->features==0)
++ if (p->features == 0)
+ p->features = (p->code_length > 8) ?
+ LIRC_CAN_REC_LIRCCODE : LIRC_CAN_REC_CODE;
+
+@@ -368,7 +390,7 @@
+ ir->p.minor = minor;
+
+ #if defined(LIRC_HAVE_DEVFS_24)
+- sprintf (name, DEV_LIRC "/%d", ir->p.minor);
++ sprintf(name, DEV_LIRC "/%d", ir->p.minor);
+ ir->devfs_handle = devfs_register(NULL, name, DEVFS_FL_DEFAULT,
+ IRCTL_DEV_MAJOR, ir->p.minor,
+ S_IFCHR | S_IRUSR | S_IWUSR,
+@@ -378,23 +400,30 @@
+ S_IFCHR|S_IRUSR|S_IWUSR,
+ DEV_LIRC "/%u", ir->p.minor);
+ #endif
+- (void) lirc_class_device_create(lirc_class, NULL,
++ (void) lirc_class_device_create(lirc_class, NULL,
+ MKDEV(IRCTL_DEV_MAJOR, ir->p.minor),
+ ir->p.dev, "lirc%u", ir->p.minor);
+
+- if(p->sample_rate || p->get_queue) {
++ if (p->sample_rate || p->get_queue) {
+ /* try to fire up polling thread */
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 23)
+ ir->t_notify = &tn;
+- ir->tpid = kernel_thread(lirc_thread, (void*)ir, 0);
++ ir->tpid = kernel_thread(lirc_thread, (void *)ir, 0);
+ if (ir->tpid < 0) {
+- printk("lirc_dev: lirc_register_plugin: "
++#else
++ ir->task = kthread_run(lirc_thread, (void *)ir, "lirc_dev");
++ if (IS_ERR(ir->task)) {
++#endif
++ printk(KERN_ERR "lirc_dev: lirc_register_plugin: "
+ "cannot run poll thread for minor = %d\n",
+ p->minor);
+ err = -ECHILD;
+ goto out_sysfs;
+ }
+- down(&tn);
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 23)
++ wait_for_completion(&tn);
+ ir->t_notify = NULL;
++#endif
+ }
+ ir->attached = 1;
+ up(&plugin_lock);
+@@ -410,9 +439,9 @@
+ ir->p.name, ir->p.minor);
+ p->minor = minor;
+ return minor;
+-
++
+ out_sysfs:
+- class_device_destroy(lirc_class,MKDEV(IRCTL_DEV_MAJOR, ir->p.minor));
++ class_device_destroy(lirc_class, MKDEV(IRCTL_DEV_MAJOR, ir->p.minor));
+ #ifdef LIRC_HAVE_DEVFS_24
+ devfs_unregister(ir->devfs_handle);
+ #endif
+@@ -424,18 +453,16 @@
+ out:
+ return err;
+ }
++EXPORT_SYMBOL(lirc_register_plugin);
+
+-/*
+- *
+- */
+ int lirc_unregister_plugin(int minor)
+ {
+ struct irctl *ir;
+- DECLARE_MUTEX_LOCKED(tn);
+- DECLARE_MUTEX_LOCKED(tn2);
++ DECLARE_COMPLETION(tn);
++ DECLARE_COMPLETION(tn2);
+
+ if (minor < 0 || minor >= MAX_IRCTL_DEVICES) {
+- printk("lirc_dev: lirc_unregister_plugin: "
++ printk(KERN_ERR "lirc_dev: lirc_unregister_plugin: "
+ "\"minor\" must be between 0 and %d!\n",
+ MAX_IRCTL_DEVICES-1);
+ return -EBADRQC;
+@@ -446,21 +473,22 @@
+ down(&plugin_lock);
+
+ if (ir->p.minor != minor) {
+- printk("lirc_dev: lirc_unregister_plugin: "
++ printk(KERN_ERR "lirc_dev: lirc_unregister_plugin: "
+ "minor (%d) device not registered!", minor);
+ up(&plugin_lock);
+ return -ENOENT;
+ }
+
+ /* end up polling thread */
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 23)
+ if (ir->tpid >= 0) {
+ ir->t_notify = &tn;
+ ir->t_notify2 = &tn2;
+ ir->shutdown = 1;
+-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,0)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 4, 0)
+ {
+ struct task_struct *p;
+-
++
+ p = find_task_by_pid(ir->tpid);
+ wake_up_process(p);
+ }
+@@ -468,11 +496,17 @@
+ /* 2.2.x does not export wake_up_process() */
+ wake_up_interruptible(ir->p.get_queue(ir->p.data));
+ #endif
+- up(&tn2);
+- down(&tn);
++ complete(&tn2);
++ wait_for_completion(&tn);
+ ir->t_notify = NULL;
+ ir->t_notify2 = NULL;
+ }
++#else /* kernel >= 2.6.23 */
++ if (ir->task) {
++ wake_up_process(ir->task);
++ kthread_stop(ir->task);
++ }
++#endif
+
+ dprintk("lirc_dev: plugin %s unregistered from minor number = %d\n",
+ ir->p.name, ir->p.minor);
+@@ -486,11 +520,8 @@
+ ir->p.set_use_dec(ir->p.data);
+ module_put(ir->p.owner);
+ up(&ir->buffer_sem);
+- }
+- else
+- {
++ } else
+ cleanup(ir);
+- }
+ up(&plugin_lock);
+
+ /*
+@@ -503,6 +534,7 @@
+
+ return SUCCESS;
+ }
++EXPORT_SYMBOL(lirc_unregister_plugin);
+
+ /*
+ *
+@@ -511,7 +543,7 @@
+ {
+ struct irctl *ir;
+ int retval;
+-
++
+ if (MINOR(inode->i_rdev) >= MAX_IRCTL_DEVICES) {
+ dprintk("lirc_dev [%d]: open result = -ENODEV\n",
+ MINOR(inode->i_rdev));
+@@ -523,13 +555,11 @@
+ dprintk(LOGHEAD "open called\n", ir->p.name, ir->p.minor);
+
+ /* if the plugin has an open function use it instead */
+- if(ir->p.fops && ir->p.fops->open)
++ if (ir->p.fops && ir->p.fops->open)
+ return ir->p.fops->open(inode, file);
+
+ if (down_interruptible(&plugin_lock))
+- {
+ return -ERESTARTSYS;
+- }
+
+ if (ir->p.minor == NOPLUG) {
+ up(&plugin_lock);
+@@ -545,30 +575,27 @@
+ return -EBUSY;
+ }
+
+- /* there is no need for locking here because ir->open is 0
+- * and lirc_thread isn't using buffer
++ /* there is no need for locking here because ir->open is 0
++ * and lirc_thread isn't using buffer
+ * plugins which use irq's should allocate them on set_use_inc,
+ * so there should be no problem with those either.
+- */
++ */
+ ir->buf->head = ir->buf->tail;
+ ir->buf->fill = 0;
+
+- if(ir->p.owner!=NULL && try_module_get(ir->p.owner))
+- {
++ if (ir->p.owner != NULL && try_module_get(ir->p.owner)) {
+ ++ir->open;
+ retval = ir->p.set_use_inc(ir->p.data);
+-
++
+ if (retval != SUCCESS) {
+ module_put(ir->p.owner);
+ --ir->open;
+ }
+- }
+- else
+- {
+- if(ir->p.owner==NULL)
+- {
+- dprintk(LOGHEAD "no module owner!!!\n", ir->p.name, ir->p.minor);
+- }
++ } else {
++ if (ir->p.owner == NULL)
++ dprintk(LOGHEAD "no module owner!!!\n",
++ ir->p.name, ir->p.minor);
++
+ retval = -ENODEV;
+ }
+
+@@ -586,24 +613,19 @@
+ struct irctl *ir = &irctls[MINOR(inode->i_rdev)];
+
+ dprintk(LOGHEAD "close called\n", ir->p.name, ir->p.minor);
+-
++
+ /* if the plugin has a close function use it instead */
+- if(ir->p.fops && ir->p.fops->release)
++ if (ir->p.fops && ir->p.fops->release)
+ return ir->p.fops->release(inode, file);
+
+ if (down_interruptible(&plugin_lock))
+- {
+ return -ERESTARTSYS;
+- }
+
+ --ir->open;
+- if(ir->attached)
+- {
++ if (ir->attached) {
+ ir->p.set_use_dec(ir->p.data);
+ module_put(ir->p.owner);
+- }
+- else
+- {
++ } else {
+ cleanup(ir);
+ }
+
+@@ -623,12 +645,11 @@
+ dprintk(LOGHEAD "poll called\n", ir->p.name, ir->p.minor);
+
+ /* if the plugin has a poll function use it instead */
+- if(ir->p.fops && ir->p.fops->poll)
++ if (ir->p.fops && ir->p.fops->poll)
+ return ir->p.fops->poll(file, wait);
+
+ down(&ir->buffer_sem);
+- if(!ir->attached)
+- {
++ if (!ir->attached) {
+ up(&ir->buffer_sem);
+ return POLLERR;
+ }
+@@ -636,11 +657,11 @@
+ poll_wait(file, &ir->buf->wait_poll, wait);
+
+ dprintk(LOGHEAD "poll result = %s\n",
+- ir->p.name, ir->p.minor,
++ ir->p.name, ir->p.minor,
+ lirc_buffer_empty(ir->buf) ? "0" : "POLLIN|POLLRDNORM");
+
+ ret = lirc_buffer_empty(ir->buf) ? 0 : (POLLIN|POLLRDNORM);
+-
++
+ up(&ir->buffer_sem);
+ return ret;
+ }
+@@ -649,7 +670,7 @@
+ *
+ */
+ static int irctl_ioctl(struct inode *inode, struct file *file,
+- unsigned int cmd, unsigned long arg)
++ unsigned int cmd, unsigned long arg)
+ {
+ unsigned long mode;
+ int result;
+@@ -659,7 +680,7 @@
+ ir->p.name, ir->p.minor, cmd);
+
+ /* if the plugin has a ioctl function use it instead */
+- if(ir->p.fops && ir->p.fops->ioctl)
++ if (ir->p.fops && ir->p.fops->ioctl)
+ return ir->p.fops->ioctl(inode, file, cmd, arg);
+
+ if (ir->p.minor == NOPLUG || !ir->attached) {
+@@ -669,7 +690,7 @@
+ }
+
+ /* Give the plugin a chance to handle the ioctl */
+- if(ir->p.ioctl){
++ if (ir->p.ioctl) {
+ result = ir->p.ioctl(inode, file, cmd, arg);
+ if (result != -ENOIOCTLCMD)
+ return result;
+@@ -677,33 +698,32 @@
+ /* The plugin can't handle cmd */
+ result = SUCCESS;
+
+- switch(cmd)
+- {
++ switch (cmd) {
+ case LIRC_GET_FEATURES:
+- result = put_user(ir->p.features, (unsigned long*)arg);
++ result = put_user(ir->p.features, (unsigned long *)arg);
+ break;
+ case LIRC_GET_REC_MODE:
+- if(!(ir->p.features&LIRC_CAN_REC_MASK))
+- return(-ENOSYS);
+-
++ if (!(ir->p.features&LIRC_CAN_REC_MASK))
++ return -ENOSYS;
++
+ result = put_user(LIRC_REC2MODE
+ (ir->p.features&LIRC_CAN_REC_MASK),
+- (unsigned long*)arg);
++ (unsigned long *)arg);
+ break;
+ case LIRC_SET_REC_MODE:
+- if(!(ir->p.features&LIRC_CAN_REC_MASK))
+- return(-ENOSYS);
++ if (!(ir->p.features&LIRC_CAN_REC_MASK))
++ return -ENOSYS;
+
+- result = get_user(mode, (unsigned long*)arg);
+- if(!result && !(LIRC_MODE2REC(mode) & ir->p.features)) {
++ result = get_user(mode, (unsigned long *)arg);
++ if (!result && !(LIRC_MODE2REC(mode) & ir->p.features))
+ result = -EINVAL;
+- }
+- /* FIXME: We should actually set the mode somehow
+- * but for now, lirc_serial doesn't support mode changin
+- * eighter */
++ /*
++ * FIXME: We should actually set the mode somehow but
++ * for now, lirc_serial doesn't support mode changing either
++ */
+ break;
+ case LIRC_GET_LENGTH:
+- result = put_user((unsigned long)ir->p.code_length,
++ result = put_user((unsigned long)ir->p.code_length,
+ (unsigned long *)arg);
+ break;
+ default:
+@@ -720,27 +740,24 @@
+ *
+ */
+ static ssize_t irctl_read(struct file *file,
+- char *buffer,
+- size_t length,
+- loff_t *ppos)
++ char *buffer,
++ size_t length,
++ loff_t *ppos)
+ {
+ struct irctl *ir = &irctls[MINOR(file->f_dentry->d_inode->i_rdev)];
+ unsigned char buf[ir->buf->chunk_size];
+- int ret=0, written=0;
++ int ret = 0, written = 0;
+ DECLARE_WAITQUEUE(wait, current);
+
+ dprintk(LOGHEAD "read called\n", ir->p.name, ir->p.minor);
+
+ /* if the plugin has a specific read function use it instead */
+- if(ir->p.fops && ir->p.fops->read)
++ if (ir->p.fops && ir->p.fops->read)
+ return ir->p.fops->read(file, buffer, length, ppos);
+
+- if(down_interruptible(&ir->buffer_sem))
+- {
++ if (down_interruptible(&ir->buffer_sem))
+ return -ERESTARTSYS;
+- }
+- if(!ir->attached)
+- {
++ if (!ir->attached) {
+ up(&ir->buffer_sem);
+ return -ENODEV;
+ }
+@@ -752,23 +769,26 @@
+ return -EINVAL;
+ }
+
+- /* we add ourselves to the task queue before buffer check
+- * to avoid losing scan code (in case when queue is awaken somewhere
++ /*
++ * we add ourselves to the task queue before buffer check
++ * to avoid losing scan code (in case when queue is awaken somewhere
+ * beetwen while condition checking and scheduling)
+ */
+ add_wait_queue(&ir->buf->wait_poll, &wait);
+ set_current_state(TASK_INTERRUPTIBLE);
+
+- /* while we did't provide 'length' bytes, device is opened in blocking
++ /*
++ * while we did't provide 'length' bytes, device is opened in blocking
+ * mode and 'copy_to_user' is happy, wait for data.
+ */
+- while (written < length && ret == 0) {
++ while (written < length && ret == 0) {
+ if (lirc_buffer_empty(ir->buf)) {
+ /* According to the read(2) man page, 'written' can be
+ * returned as less than 'length', instead of blocking
+ * again, returning -EWOULDBLOCK, or returning
+ * -ERESTARTSYS */
+- if (written) break;
++ if (written)
++ break;
+ if (file->f_flags & O_NONBLOCK) {
+ ret = -EWOULDBLOCK;
+ break;
+@@ -779,8 +799,7 @@
+ }
+ schedule();
+ set_current_state(TASK_INTERRUPTIBLE);
+- if(!ir->attached)
+- {
++ if (!ir->attached) {
+ ret = -ENODEV;
+ break;
+ }
+@@ -795,7 +814,7 @@
+ remove_wait_queue(&ir->buf->wait_poll, &wait);
+ set_current_state(TASK_RUNNING);
+ up(&ir->buffer_sem);
+-
++
+ dprintk(LOGHEAD "read result = %s (%d)\n",
+ ir->p.name, ir->p.minor, ret ? "-EFAULT" : "OK", ret);
+
+@@ -805,87 +824,78 @@
+
+ void *lirc_get_pdata(struct file *file)
+ {
+- void *data=NULL;
++ void *data = NULL;
+
+ if (file && file->f_dentry && file->f_dentry->d_inode &&
+- file->f_dentry->d_inode->i_rdev )
+- {
+- struct irctl *ir = &irctls[MINOR(file->f_dentry->d_inode->i_rdev)];
+- data=ir->p.data;
++ file->f_dentry->d_inode->i_rdev) {
++ struct irctl *ir;
++ ir = &irctls[MINOR(file->f_dentry->d_inode->i_rdev)];
++ data = ir->p.data;
+ }
+
+ return data;
+ }
++EXPORT_SYMBOL(lirc_get_pdata);
+
+
+ static ssize_t irctl_write(struct file *file, const char *buffer,
+- size_t length, loff_t * ppos)
++ size_t length, loff_t *ppos)
+ {
+ struct irctl *ir = &irctls[MINOR(file->f_dentry->d_inode->i_rdev)];
+
+ dprintk(LOGHEAD "write called\n", ir->p.name, ir->p.minor);
+
+ /* if the plugin has a specific read function use it instead */
+- if(ir->p.fops && ir->p.fops->write)
++ if (ir->p.fops && ir->p.fops->write)
+ return ir->p.fops->write(file, buffer, length, ppos);
+
+- if(!ir->attached)
+- {
++ if (!ir->attached)
+ return -ENODEV;
+- }
+
+ return -EINVAL;
+ }
+
+
+ static struct file_operations fops = {
+- read: irctl_read,
+- write: irctl_write,
+- poll: irctl_poll,
+- ioctl: irctl_ioctl,
+- open: irctl_open,
+- release: irctl_close
++ .read = irctl_read,
++ .write = irctl_write,
++ .poll = irctl_poll,
++ .ioctl = irctl_ioctl,
++ .open = irctl_open,
++ .release = irctl_close
+ };
+
+
+-EXPORT_SYMBOL(lirc_get_pdata);
+-EXPORT_SYMBOL(lirc_register_plugin);
+-EXPORT_SYMBOL(lirc_unregister_plugin);
+-
+-/*
+- *
+- */
+ static int lirc_dev_init(void)
+-{
++{
+ int i;
+
+- for (i=0; i < MAX_IRCTL_DEVICES; ++i) {
+- init_irctl(&irctls[i]);
+- }
++ for (i = 0; i < MAX_IRCTL_DEVICES; ++i)
++ init_irctl(&irctls[i]);
+
+- if(register_chrdev(IRCTL_DEV_MAJOR, IRCTL_DEV_NAME, &fops)) {
++ if (register_chrdev(IRCTL_DEV_MAJOR, IRCTL_DEV_NAME, &fops)) {
+ printk(KERN_ERR "lirc_dev: register_chrdev failed\n");
+ goto out;
+ }
+
+ lirc_class = class_create(THIS_MODULE, "lirc");
+- if(IS_ERR(lirc_class)) {
++ if (IS_ERR(lirc_class)) {
+ printk(KERN_ERR "lirc_dev: class_create failed\n");
+ goto out_unregister;
+ }
+
+- printk("lirc_dev: IR Remote Control driver registered, at major %d \n",
+- IRCTL_DEV_MAJOR);
++ printk(KERN_INFO "lirc_dev: IR Remote Control driver registered, "
++ "major %d \n", IRCTL_DEV_MAJOR);
+
+ return SUCCESS;
+
+ out_unregister:
+-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23)
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 23)
++ if (unregister_chrdev(IRCTL_DEV_MAJOR, IRCTL_DEV_NAME))
++ printk(KERN_ERR "lirc_dev: unregister_chrdev failed!\n");
++#else
+ /* unregister_chrdev returns void now */
+ unregister_chrdev(IRCTL_DEV_MAJOR, IRCTL_DEV_NAME);
+-#else
+- if(unregister_chrdev(IRCTL_DEV_MAJOR, IRCTL_DEV_NAME))
+- printk(KERN_ERR "lirc_dev: unregister_chrdev failed!\n");
+ #endif
+ out:
+ return -1;
+@@ -910,20 +920,22 @@
+ */
+ void cleanup_module(void)
+ {
+-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23)
+- /* unregister_chrdev returns void now */
+- unregister_chrdev(IRCTL_DEV_MAJOR, IRCTL_DEV_NAME);
+- class_destroy(lirc_class);
+-#else
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 23)
+ int ret;
+
+ ret = unregister_chrdev(IRCTL_DEV_MAJOR, IRCTL_DEV_NAME);
+ class_destroy(lirc_class);
+
+- if(ret)
+- printk("lirc_dev: error in module_unregister_chrdev: %d\n", ret);
++ if (ret)
++ printk(KERN_ERR "lirc_dev: error in "
++ "module_unregister_chrdev: %d\n", ret);
+ else
+ dprintk("lirc_dev: module successfully unloaded\n");
++#else
++ /* unregister_chrdev returns void now */
++ unregister_chrdev(IRCTL_DEV_MAJOR, IRCTL_DEV_NAME);
++ class_destroy(lirc_class);
++ dprintk("lirc_dev: module unloaded\n");
+ #endif
+ }
+
+
+--- lirc-0.8.2/drivers/lirc_dev/lirc_dev.h 2007/09/27 19:47:20 1.20
++++ lirc-0.8.2/drivers/lirc_dev/lirc_dev.h 2008/01/13 10:45:02 1.22
+@@ -14,18 +14,17 @@
+ #define MAX_IRCTL_DEVICES 4
+ #define BUFLEN 16
+
+-//#define LIRC_BUFF_POWER_OF_2
++/* #define LIRC_BUFF_POWER_OF_2 */
+ #ifdef LIRC_BUFF_POWER_OF_2
+-#define mod(n, div) ((n) & ((div) -1))
++#define mod(n, div) ((n) & ((div) - 1))
+ #else
+ #define mod(n, div) ((n) % (div))
+ #endif
+ #include
+ #include
+
+-struct lirc_buffer
+-{
+- wait_queue_head_t wait_poll;
++struct lirc_buffer {
++ wait_queue_head_t wait_poll;
+ spinlock_t lock;
+
+ unsigned char *data;
+@@ -33,12 +32,14 @@
+ unsigned int size; /* in chunks */
+ unsigned int fill; /* in chunks */
+ int head, tail; /* in chunks */
+- /* Using chunks instead of bytes pretends to simplify boundary checking
++ /* Using chunks instead of bytes pretends to simplify boundary checking
+ * And should allow for some performance fine tunning later */
+ };
+ static inline void _lirc_buffer_clear(struct lirc_buffer *buf)
+ {
+- buf->head = buf->tail = buf->fill = 0;
++ buf->head = 0;
++ buf->tail = 0;
++ buf->fill = 0;
+ }
+ static inline int lirc_buffer_init(struct lirc_buffer *buf,
+ unsigned int chunk_size,
+@@ -61,7 +62,9 @@
+ {
+ kfree(buf->data);
+ buf->data = NULL;
+- buf->head = buf->tail = buf->fill = 0;
++ buf->head = 0;
++ buf->tail = 0;
++ buf->fill = 0;
+ buf->chunk_size = 0;
+ buf->size = 0;
+ }
+@@ -77,11 +80,13 @@
+ {
+ return (buf->size - buf->fill);
+ }
+-static inline void lirc_buffer_lock(struct lirc_buffer *buf, unsigned long *flags)
++static inline void lirc_buffer_lock(struct lirc_buffer *buf,
++ unsigned long *flags)
+ {
+ spin_lock_irqsave(&buf->lock, *flags);
+ }
+-static inline void lirc_buffer_unlock(struct lirc_buffer *buf, unsigned long *flags)
++static inline void lirc_buffer_unlock(struct lirc_buffer *buf,
++ unsigned long *flags)
+ {
+ spin_unlock_irqrestore(&buf->lock, *flags);
+ }
+@@ -135,49 +140,48 @@
+ lirc_buffer_unlock(buf, &flags);
+ }
+ static inline void _lirc_buffer_write_n(struct lirc_buffer *buf,
+- unsigned char* orig, int count)
++ unsigned char *orig, int count)
+ {
+- memcpy(&buf->data[buf->tail*buf->chunk_size], orig,
+- count*buf->chunk_size);
+- buf->tail = mod(buf->tail+count, buf->size);
++ memcpy(&buf->data[buf->tail * buf->chunk_size], orig,
++ count * buf->chunk_size);
++ buf->tail = mod(buf->tail + count, buf->size);
+ buf->fill += count;
+ }
+ static inline void lirc_buffer_write_n(struct lirc_buffer *buf,
+- unsigned char* orig, int count)
++ unsigned char *orig, int count)
+ {
+ unsigned long flags;
+ int space1;
+- lirc_buffer_lock(buf,&flags);
+- if( buf->head > buf->tail ) space1 = buf->head - buf->tail;
+- else space1 = buf->size - buf->tail;
+-
+- if( count > space1 )
+- {
++
++ lirc_buffer_lock(buf, &flags);
++ if (buf->head > buf->tail)
++ space1 = buf->head - buf->tail;
++ else
++ space1 = buf->size - buf->tail;
++
++ if (count > space1) {
+ _lirc_buffer_write_n(buf, orig, space1);
+ _lirc_buffer_write_n(buf, orig+(space1*buf->chunk_size),
+ count-space1);
+- }
+- else
+- {
++ } else {
+ _lirc_buffer_write_n(buf, orig, count);
+ }
+ lirc_buffer_unlock(buf, &flags);
+ }
+
+-struct lirc_plugin
+-{
++struct lirc_plugin {
+ char name[40];
+ int minor;
+ int code_length;
+ int sample_rate;
+ unsigned long features;
+- void* data;
+- int (*add_to_buf) (void* data, struct lirc_buffer* buf);
+- wait_queue_head_t* (*get_queue) (void* data);
++ void *data;
++ int (*add_to_buf) (void *data, struct lirc_buffer *buf);
++ wait_queue_head_t* (*get_queue) (void *data);
+ struct lirc_buffer *rbuf;
+- int (*set_use_inc) (void* data);
+- void (*set_use_dec) (void* data);
+- int (*ioctl) (struct inode *,struct file *,unsigned int,
++ int (*set_use_inc) (void *data);
++ void (*set_use_dec) (void *data);
++ int (*ioctl) (struct inode *, struct file *, unsigned int,
+ unsigned long);
+ struct file_operations *fops;
+ struct device *dev;
+@@ -188,7 +192,7 @@
+ *
+ * minor:
+ * indicates minor device (/dev/lirc) number for registered plugin
+- * if caller fills it with negative value, then the first free minor
++ * if caller fills it with negative value, then the first free minor
+ * number will be used (if available)
+ *
+ * code_length:
+@@ -233,7 +237,7 @@
+ *
+ * fops:
+ * file_operations for drivers which don't fit the current plugin model.
+- *
++ *
+ * owner:
+ * the module owning this struct
+ *
+@@ -242,7 +246,7 @@
+
+ /* following functions can be called ONLY from user context
+ *
+- * returns negative value on error or minor number
++ * returns negative value on error or minor number
+ * of the registered device if success
+ * contens of the structure pointed by p is copied
+ */
+
+--- lirc-0.8.2/drivers/lirc_serial/lirc_serial.c 2007/11/08 21:27:30 5.86
++++ lirc-0.8.2/drivers/lirc_serial/lirc_serial.c 2007/12/15 17:28:01 5.87
+@@ -965,7 +965,7 @@
+ do_gettimeofday(&lasttv);
+
+ result=request_irq(irq,irq_handler,
+- SA_INTERRUPT | (share_irq ? SA_SHIRQ:0),
++ IRQF_DISABLED | (share_irq ? IRQF_SHARED:0),
+ LIRC_DRIVER_NAME,(void *)&hardware);
+
+ switch(result)
+--- lirc-0.8.2/drivers/lirc_sir/lirc_sir.c 2007/09/27 19:47:23 1.47
++++ lirc-0.8.2/drivers/lirc_sir/lirc_sir.c 2007/12/15 17:28:01 1.48
+@@ -1025,7 +1025,7 @@
+ return -EBUSY;
+ }
+ #endif
+- retval = request_irq(irq, sir_interrupt, SA_INTERRUPT,
++ retval = request_irq(irq, sir_interrupt, IRQF_DISABLED,
+ LIRC_DRIVER_NAME, NULL);
+ if (retval < 0) {
+ #
+ ifndef LIRC_ON_SA1100
\ No newline at end of file
From janny at frugalware.org Thu Mar 6 19:33:46 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Thu Mar 6 19:33:46 2008
Subject: [Frugalware-git] fwlive_pkgs: redirfs-fwlive-0.2-3-i686
Message-ID: <20080306183346.38509119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=004ec76d3ee1b3c2a172ac3be891bef7e4e38f85
commit 004ec76d3ee1b3c2a172ac3be891bef7e4e38f85
Author: Janos Kovacs
Date: Thu Mar 6 19:33:08 2008 +0100
redirfs-fwlive-0.2-3-i686
* add new pkg to fwlive_pkgs repo
diff --git a/source/apps-extra/redirfs-fwlive/FrugalBuild b/source/apps-extra/redirfs-fwlive/FrugalBuild
new file mode 100644
index 0000000..3f00a07
--- /dev/null
+++ b/source/apps-extra/redirfs-fwlive/FrugalBuild
@@ -0,0 +1,28 @@
+# Compiling Time: 0.04 SBU
+# Maintainer: VMiklos
+
+pkgname=redirfs-fwlive
+_F_archive_name=redirfs
+pkgver=0.2
+pkgrel=3
+pkgdesc="Redirecting FileSystem"
+url="http://redirfs.org/"
+_F_kernelmod_scriptlet=$_F_archive_name.install
+Finclude kernel-module
+kver=2.6.24-3
+depends=("kernel-fwlive=$kver")
+makedepends=("kernel-fwlive-source=$kver")
+groups=('apps-extra')
+archs=('i686' 'x86_64')
+up2date="lynx -dump http://redirfs.org/tiki-index.php?page=redirfs_download|grep -m1 gz$|Flasttar"
+source=(http://www.redirfs.org/packages/redirfs-$pkgver.tar.gz)
+sha1sums=('c736b6a9b9cb0540010eb865febfd4f3b1fe6d82')
+
+build()
+{
+ # no Fcheckkernel, crosscompilation verified
+ Fsed 'uname -r' "echo $_F_kernelmod_uname" Makefile
+ Fmake
+ Ffilerel /lib/modules/$_F_kernelmod_uname/extra/$_F_archive_name.ko
+ Fbuild_kernelmod_scriptlet
+}
diff --git a/source/apps-extra/redirfs-fwlive/redirfs.install b/source/apps-extra/redirfs-fwlive/redirfs.install
new file mode 100644
index 0000000..8162fbb
--- /dev/null
+++ b/source/apps-extra/redirfs-fwlive/redirfs.install
@@ -0,0 +1,38 @@
+post_install()
+{
+ if ! grep -q redirfs /etc/sysconfig/modules; then
+ echo -n "adding redirfs to /etc/sysconfig/modules..."
+ echo redirfs >> /etc/sysconfig/modules
+ echo " done."
+ fi
+ depmod -a $_F_kernelmod_uname
+ if lsmod|grep -q redirfs; then
+ rmmod redirfs
+ fi
+ echo -n "loading redirfs..."
+ modprobe redirfs
+ echo " done."
+}
+
+post_upgrade()
+{
+ post_install
+}
+
+pre_remove()
+{
+ if grep -q redirfs /etc/sysconfig/modules; then
+ echo -n "removing redirfs from /etc/sysconfig/modules..."
+ sed -i '/^redirfs/d' /etc/sysconfig/modules
+ echo " done."
+ fi
+ if lsmod|grep -q redirfs; then
+ echo -n "unloading redirfs..."
+ rmmod redirfs
+ echo " done."
+ fi
+}
+
+op=$1
+shift
+$op $*
From janny at frugalware.org Thu Mar 6 19:34:49 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Thu Mar 6 19:34:51 2008
Subject: [Frugalware-git] fwlive_pkgs: squashfs-3.3-3-i686
Message-ID: <20080306183449.B6142119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=d1cb8964f04043b3fdd3a3de4d898541b6d8650b
commit d1cb8964f04043b3fdd3a3de4d898541b6d8650b
Author: Janos Kovacs
Date: Thu Mar 6 19:34:28 2008 +0100
squashfs-3.3-3-i686
* version bump
diff --git a/source/apps-extra/squashfs/FrugalBuild b/source/apps-extra/squashfs/FrugalBuild
index 367f3d0..138b83d 100644
--- a/source/apps-extra/squashfs/FrugalBuild
+++ b/source/apps-extra/squashfs/FrugalBuild
@@ -4,7 +4,7 @@
pkgname=squashfs
pkgver=3.3
lzmaver=457
-kver=2.6.23-6
+kver=2.6.24-3
kdir=/lib/modules/${kver/-/-fw}/kernel/fs/${pkgname}
pkgrel=3
url="http://www.squashfs-lzma.org"
@@ -14,13 +14,20 @@ makedepends=("kernel-fwlive-source=$kver")
groups=('apps-extra')
archs=('i686' 'x86_64')
up2date="lynx -dump http://sourceforge.net/project/showfiles.php?group_id=63835|grep squashfs[0-9]|sed 's/[^]]*][^]]*]squashfs\([^ ]*\) .*/\1/;s/-/_/g;q'"
-source=(${url}/dl/lzma${lzmaver}.tar.bz2 ${url}/dl/${pkgname}-cvsfix.patch \
- ${url}/dl/${pkgname}3.3.tar.gz ${url}/dl/sqlzma3.3-${lzmaver}.tar.bz2 mksquashfs.quiet.patch)
+source=(${url}/dl/lzma${lzmaver}.tar.bz2 \
+ ${url}/dl/${pkgname}3.3.tar.gz \
+ ${url}/dl/sqlzma3.3-${lzmaver}.tar.bz2 \
+ http://frugalware.org/~janny/patchs/kernel/${kver/-*/}/${pkgname}-cvsfix.patch \
+ http://frugalware.org/~janny/patchs/kernel/${kver/-*/}/sqlzma1-449.patch \
+ http://frugalware.org/~janny/patchs/kernel/${kver/-*/}/sqlzma2u-3.3.patch \
+ http://frugalware.org/~janny/patchs/kernel/${kver/-*/}/mksquashfs.quiet.patch )
options=('scriptlet')
sha1sums=('bd1b46ba42fe1ad7351a39c131e8b7657e909001' \
- '17da1cd356cd50a1c1cefb86670437abcdb83986' \
'e610ee21fb910606615cd158eda3c650af8a61cc' \
'adec846e3b3b57337ccddbc8aafab3da0b049753' \
+ '17da1cd356cd50a1c1cefb86670437abcdb83986' \
+ '4b89853ff744e02f970c667bc374ce4fa5400d08' \
+ '5620c20b72a039eae12fcc1ad6f28bc1b381c8a9' \
'11cbb2475fe34e94bc869ae33e52c343ee497977')
build()
@@ -30,6 +37,7 @@ build()
tar -C lzma${lzmaver} -xf lzma${lzmaver}.tar.bz2 || Fdie
Fmessage "copy /usr/src/linux/ ./"
cp -a /usr/src/linux/ ./ || Fdie
+ Fmessage "patching"
patch -p0
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=adf7cc8e6ccf22ec1e930625cd67318ff59061ac
commit adf7cc8e6ccf22ec1e930625cd67318ff59061ac
Author: Janos Kovacs
Date: Thu Mar 6 19:35:51 2008 +0100
gspcav1-fwlive-1.00.20-6-i686
* version bump
diff --git a/source/multimedia-extra/gspcav1-fwlive/FrugalBuild b/source/multimedia-extra/gspcav1-fwlive/FrugalBuild
index 2218e3a..9d363e9 100644
--- a/source/multimedia-extra/gspcav1-fwlive/FrugalBuild
+++ b/source/multimedia-extra/gspcav1-fwlive/FrugalBuild
@@ -2,27 +2,27 @@
# Maintainer: Janny
pkgname=gspcav1-fwlive
+_F_archive_name=gspcav1
pkgver=1.00.20
-pkgrel=3
+pkgrel=6
pkgdate=20071224
pkgdesc="One driver Upto 220 Webcams supported"
url="http://mxhaard.free.fr"
license="GPL"
Finclude kernel-module
-kver=2.6.23-6
+kver=2.6.24-3
depends=("kernel-fwlive=$kver")
makedepends=("kernel-fwlive-source=$kver")
-_F_kernelmod_uname=`echo $kver|sed 's/-/-fw/'`
archs=('i686' 'x86_64')
groups=('multimedia-extra')
replaces=('spca5xx')
up2date="lynx -dump $url/download.html|grep -m1 'gspcav1'|sed 's/.*version \(.*\) da.*/\1/'"
-source=(http://mxhaard.free.fr/spca50x/Download/gspcav1-$pkgdate.tar.gz)
+source=(http://mxhaard.free.fr/spca50x/Download/$_F_archive_name-$pkgdate.tar.gz)
sha1sums=('e34e91f4bccc69830f1b5f09fe0ecb4eccfe854d')
build() {
# no Fcheckkernel, crosscompilation verified
- Fcd gspcav1-$pkgdate
+ Fcd $_F_archive_name-$pkgdate
Fsed '`uname -r`' "$_F_kernelmod_uname" Makefile
Fmake
sed -i s\%MODULE_INSTALLDIR\ =\ /lib%MODULE_INSTALLDIR\ =\ $Fdestdir/lib% Makefile || Fdie
@@ -31,6 +31,6 @@ build() {
sed -i s\%@/sbin/depmod%% Makefile || Fdie
sed -i s\%su\ -c\ \"make\ install-root\"%make\ install-root% Makefile || Fdie
make DESTDIR=$Fdestdir install || Fdie
- Ffileschmod ../src/gspcav1-$pkgdate 644
+ Ffileschmod ../src/$_F_archive_name-$pkgdate 644
Fbuild_kernelmod_scriptlet
}
From janny at frugalware.org Thu Mar 6 19:38:17 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Thu Mar 6 19:38:18 2008
Subject: [Frugalware-git] fwlive_pkgs: qc-usb-fwlive-0.6.6-31-i686
Message-ID: <20080306183817.1BCBA119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=2604ec4b7f4f19700265a4bf739ac60544025e90
commit 2604ec4b7f4f19700265a4bf739ac60544025e90
Author: Janos Kovacs
Date: Thu Mar 6 19:37:54 2008 +0100
qc-usb-fwlive-0.6.6-31-i686
* version bump
diff --git a/source/multimedia-extra/qc-usb-fwlive/FrugalBuild b/source/multimedia-extra/qc-usb-fwlive/FrugalBuild
index a501808..64f30c2 100644
--- a/source/multimedia-extra/qc-usb-fwlive/FrugalBuild
+++ b/source/multimedia-extra/qc-usb-fwlive/FrugalBuild
@@ -3,24 +3,27 @@
pkgname=qc-usb-fwlive
pkgver=0.6.6
-pkgrel=28
+pkgrel=31
pkgdesc="Quickcam kernel driver."
groups=('multimedia-extra')
archs=('i686' 'x86_64')
_F_sourceforge_dirname="qce-ga"
_F_sourceforge_name="qc-usb"
Finclude kernel-module sourceforge
-kver=2.6.23-6
+kver=2.6.24-3
depends=("kernel-fwlive=$kver")
makedepends=("kernel-fwlive-source=$kver")
_F_kernelmod_uname=`echo $kver|sed 's/-/-fw/'`
_F_kernelmod_dir="/lib/modules/$_F_kernelmod_uname"
url="http://qce-ga.sourceforge.net/"
+source=($source kernel-2.6.24.patch)
up2date="lynx -dump http://sourceforge.net/project/showfiles.php?group_id=12924|grep qc-usb |sed 's/[^]]*][^]]*]\([^ ]*\) .*/\1/;q'"
-sha1sums=('947a9f1233586af71d82e413f455ef01ee388b43')
+sha1sums=('947a9f1233586af71d82e413f455ef01ee388b43' \
+ 'e0362a80fc4d08d7cfa10899ded63b6eaf854ee7')
build() {
Fcd qc-usb-$pkgver
+ Fpatchall
# no Fcheckkernel, crosscompilation verified
make LINUX_DIR=$_F_kernelmod_dir/build all || return 1
Ffilerel $_F_kernelmod_dir/kernel/drivers/usb/misc/quickcam.ko
diff --git a/source/multimedia-extra/qc-usb-fwlive/kernel-2.6.24.patch b/source/multimedia-extra/qc-usb-fwlive/kernel-2.6.24.patch
new file mode 100644
index 0000000..2f7b0e0
--- /dev/null
+++ b/source/multimedia-extra/qc-usb-fwlive/kernel-2.6.24.patch
@@ -0,0 +1,39 @@
+by Stefan Lippers-Hollmann
+fixes kernel 2.6.24 compatibility.
+
+diff -urNad qc-usb-0.6.6~/qc-driver.c qc-usb-0.6.6/qc-driver.c
+--- qc-usb-0.6.6~/qc-driver.c 2006-10-24 04:06:19.000000000 +0200
++++ qc-usb-0.6.6/qc-driver.c 2007-12-09 17:20:30.000000000 +0100
+@@ -821,7 +821,9 @@
+ if (!cr) goto fail2;
+ urb->transfer_buffer = kmalloc(qc_i2c_maxbufsize*sizeof(u8), GFP_KERNEL); /* Allocate maximum ever needed */
+ if (!urb->transfer_buffer) goto fail3;
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24)
+ spin_lock_init(&urb->lock);
++#endif
+ urb->complete = qc_i2c_handler;
+ urb->context = qc;
+ #if (LINUX_VERSION_CODE= KERNEL_VERSION(2,6,0)
+ release: qc_v4l_release,
+diff -urNad qc-usb-0.6.6~/quickcam.h qc-usb-0.6.6/quickcam.h
+--- qc-usb-0.6.6~/quickcam.h 2006-11-04 14:38:27.000000000 +0100
++++ qc-usb-0.6.6/quickcam.h 2007-12-09 17:17:01.000000000 +0100
+@@ -126,7 +126,9 @@
+ #define FALSE 0
+ #define TRUE (!FALSE)
+ typedef unsigned char Bool;
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24)
+ #define BIT(x) (1<<(x))
++#endif
+ #define SIZE(a) (sizeof(a)/sizeof((a)[0]))
+ #define MAX(a,b) ((a)>(b)?(a):(b))
+ #define MIN(a,b) ((a)<(b)?(a):(b))
From janny at frugalware.org Thu Mar 6 19:39:34 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Thu Mar 6 19:39:36 2008
Subject: [Frugalware-git] fwlive_pkgs: madwifi-fwlive-0.9.4-2-i686
Message-ID: <20080306183934.88925119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=2da892c3aa077018e57c87264da3199b8a3835d2
commit 2da892c3aa077018e57c87264da3199b8a3835d2
Author: Janos Kovacs
Date: Thu Mar 6 19:39:10 2008 +0100
madwifi-fwlive-0.9.4-2-i686
* version bump
diff --git a/source/network/madwifi-fwlive/FrugalBuild b/source/network/madwifi-fwlive/FrugalBuild
index 8d33586..87846f9 100644
--- a/source/network/madwifi-fwlive/FrugalBuild
+++ b/source/network/madwifi-fwlive/FrugalBuild
@@ -2,34 +2,29 @@
# Maintainer: VMiklos
pkgname=madwifi-fwlive
-pkgver=0.9.3.3
-pkgrel=7
+_F_archive_name=madwifi
+_F_sourceforge_name=madwifi
+pkgver=0.9.4
+pkgrel=2
pkgdesc="Madwifi drivers for Atheros wireless chipsets"
url="http://madwifi.sourceforge.net/"
-Finclude kernel-module
-#depends=(${depends[@]} 'wireless_tools')
-replaces=('madwifi-ng')
-#makedepends=(${makedepends[@]} 'sharutils')
-kver=2.6.23-6
+Finclude kernel-module sourceforge
+kver=2.6.24-3
depends=("kernel-fwlive=$kver" 'wireless_tools')
+replaces=('madwifi-ng')
makedepends=("kernel-fwlive-source=$kver" 'sharutils')
-_F_kernelmod_uname=`echo $kver|sed 's/-/-fw/'`
-_F_kernelmod_dir="/lib/modules/$_F_kernelmod_uname"
groups=('network')
archs=('i686' 'x86_64')
-_F_sourceforge_name="madwifi"
-_F_rcd_name="madwifi"
-Finclude sourceforge
source=($source madwifi-0.9.3-cflags.diff)
-sha1sums=('acdd6f06b484202225fd3f888564e18e0f064af1' \
+sha1sums=('6f289cb2e99d27b23570d15b69bf0f4240e34d1e' \
'26fdc221e5bb0299d8b3c41ad30b6fe6882a8e35')
# If the package needs testing, feel free to poke Benjamin Woods
build()
{
+ Fcd $_F_archive_name-$pkgver
# no Fcheckkernel, crosscompilation verified
- Fcd madwifi-$pkgver
Fpatchall
KERNELPATH=/usr/src/linux Fmake
Fmakeinstall KERNELPATH=/usr/src/linux \
From janny at frugalware.org Thu Mar 6 19:42:43 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Thu Mar 6 19:42:44 2008
Subject: [Frugalware-git] fwlive_pkgs: acx100-fwlive-20071003-9-i686
Message-ID: <20080306184243.07931119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=fd3aa35c2012254978e689d5fb0dedb26b33f39f
commit fd3aa35c2012254978e689d5fb0dedb26b33f39f
Author: Janos Kovacs
Date: Thu Mar 6 19:41:16 2008 +0100
acx100-fwlive-20071003-9-i686
* version bump
diff --git a/source/network-extra/acx100-fwlive/kernel-2.6.24.patch b/source/network-extra/acx100-fwlive/kernel-2.6.24.patch
new file mode 100644
index 0000000..4e70628
--- /dev/null
+++ b/source/network-extra/acx100-fwlive/kernel-2.6.24.patch
@@ -0,0 +1,21 @@
+--- pci.c
++++ pci.c 2007/11/11 23:41:12
+@@ -2116,7 +2116,7 @@
+ /* TODO: pci_set_power_state(pdev, PCI_D0); ? */
+
+ /* request shared IRQ handler */
+- if (request_irq(ndev->irq, acxpci_i_interrupt, SA_SHIRQ, ndev->name, ndev)) {
++ if (request_irq(ndev->irq, acxpci_i_interrupt, IRQF_SHARED, ndev->name, ndev)) {
+ printk("%s: request_irq FAILED\n", ndev->name);
+ result = -EAGAIN;
+ goto done;
+--- usb.c
++++ usb.c 2007/11/11 23:48:50
+@@ -859,7 +859,6 @@
+ ndev->watchdog_timeo = 4 * HZ;
+ #endif
+ ndev->change_mtu = &acx_e_change_mtu;
+- SET_MODULE_OWNER(ndev);
+
+ /* Setup private driver context */
+
From janny at frugalware.org Thu Mar 6 19:44:43 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Thu Mar 6 19:44:44 2008
Subject: [Frugalware-git] fwlive_pkgs: ndiswrapper-fwlive-1.51-6-i686
Message-ID: <20080306184443.D79E1119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=184298c620344dadea93a26c7fa4a5d24f64037c
commit 184298c620344dadea93a26c7fa4a5d24f64037c
Author: Janos Kovacs
Date: Thu Mar 6 19:44:00 2008 +0100
ndiswrapper-fwlive-1.51-6-i686
* version bump
diff --git a/source/network-extra/ndiswrapper-fwlive/FrugalBuild b/source/network-extra/ndiswrapper-fwlive/FrugalBuild
index 3e98f03..68b13c7 100644
--- a/source/network-extra/ndiswrapper-fwlive/FrugalBuild
+++ b/source/network-extra/ndiswrapper-fwlive/FrugalBuild
@@ -4,14 +4,14 @@
pkgname=ndiswrapper-fwlive
pkgver=1.51
-pkgrel=3
+pkgrel=6
pkgdesc="Wrapper for using Windows drivers for some wireless cards"
_F_sourceforge_name="ndiswrapper"
-_F_kernelmod_scriptlet=ndiswrapper.install
Finclude kernel-module sourceforge
-kver=2.6.23-6
+kver=2.6.24-3
depends=("kernel-fwlive=$kver")
makedepends=("kernel-fwlive-source=$kver")
+unset install
depends=(${depends[@]} 'pciutils' 'wireless_tools')
groups=('network-extra')
archs=('i686' 'x86_64')
@@ -32,6 +32,5 @@ build()
Fmake
Fmakeinstall
Fdoc README.Frugalware
- Fsed '$_F_kernelmod_uname' "`echo $kver|sed 's/-/-fw/'`" $startdir/ndiswrapper.install
Fbuild_kernelmod_scriptlet
}
From janny at frugalware.org Thu Mar 6 19:46:40 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Thu Mar 6 19:46:41 2008
Subject: [Frugalware-git] fwlive_pkgs: wlan-ng-fwlive-0.2.8-18-i686
Message-ID: <20080306184640.1367D119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=a3279bc7c4fa0306c636571a8bd0964e91574909
commit a3279bc7c4fa0306c636571a8bd0964e91574909
Author: Janos Kovacs
Date: Thu Mar 6 19:46:14 2008 +0100
wlan-ng-fwlive-0.2.8-18-i686
* version bump
diff --git a/source/network-extra/wlan-ng-fwlive/FrugalBuild b/source/network-extra/wlan-ng-fwlive/FrugalBuild
index d7f07ce..9fbd7c7 100644
--- a/source/network-extra/wlan-ng-fwlive/FrugalBuild
+++ b/source/network-extra/wlan-ng-fwlive/FrugalBuild
@@ -3,30 +3,30 @@
pkgname=wlan-ng-fwlive
pkgver=0.2.8
-pkgrel=15
+pkgrel=18
pkgdesc="Wireless Lan modules"
url="http://www.linux-wlan.org/"
+_F_archive_name=wlan-ng
Finclude kernel-module
-kver=2.6.23-6
-depends=("kernel-fwlive=$kver")
+kver=2.6.24-3
+depends=("kernel-fwlive=$kver" 'wireless_tools')
makedepends=("kernel-fwlive-source=$kver")
-_F_kernelmod_uname=`echo $kver|sed 's/-/-fw/'`
-_F_kernelmod_dir="/lib/modules/$_F_kernelmod_uname"
depends=(${depends[@]} 'bash')
groups=('network-extra')
archs=('i686' 'x86_64')
backup=(etc/wlan/wlan.conf)
up2date="lynx -dump ftp://ftp.linux-wlan.org/pub/linux-wlan-ng/|grep tar.bz2$|sed -n 's/.*g-\(.*\)\.t.*/\1/;s/-//;$ p'"
-source=(ftp://ftp.linux-wlan.org/pub/linux-wlan-ng/linux-wlan-ng-$pkgver.tar.bz2 \
- rc.wlan wlan-ng-0.2.8-kernel2623.diff)
+source=(ftp://ftp.linux-wlan.org/pub/linux-wlan-ng/linux-$_F_archive_name-$pkgver.tar.bz2 \
+ rc.wlan wlan-ng-0.2.8-kernel26{23,24}.diff)
sha1sums=('a98cd5c7327f5392730ebe1a5b7f289fc88d00de' \
'b5b76089293cf11ab5c5f634f1c3b8dd7f4c34a7' \
- 'dd46ef1066debf1596902c9d8bb7c3988e98e184')
+ 'dd46ef1066debf1596902c9d8bb7c3988e98e184' \
+ '1987d4137a82cfbb4a390228e5d33155f52e1fbc')
build()
{
# no Fcheckkernel, crosscompilation verified
- Fcd linux-wlan-ng-$pkgver
+ Fcd linux-$_F_archive_name-$pkgver
Fsed '`uname -r`' "$_F_kernelmod_uname" Configure
find . -type f -exec sed -i '/#include /d' {} \;
Fsed "TARGET_ROOT_ON_HOST=" "TARGET_ROOT_ON_HOST=$Fdestdir" config.in
diff --git a/source/network-extra/wlan-ng-fwlive/wlan-ng-0.2.8-kernel2624.diff b/source/network-extra/wlan-ng-fwlive/wlan-ng-0.2.8-kernel2624.diff
new file mode 100644
index 0000000..6144045
--- /dev/null
+++ b/source/network-extra/wlan-ng-fwlive/wlan-ng-0.2.8-kernel2624.diff
@@ -0,0 +1,82 @@
+--- src/p80211/p80211netdev.c
++++ src/p80211/p80211netdev.c
+@@ -82,6 +82,8 @@
+ #if WIRELESS_EXT > 12
+ #include
+ #endif
++#include
++
+
+ /*================================================================*/
+ /* Project Includes */
+@@ -167,11 +169,11 @@
+ DBFENTER;
+
+ #ifdef CONFIG_PROC_FS
+- if (proc_net != NULL) {
++ if (init_net.proc_net != NULL) {
+ proc_p80211 = create_proc_entry(
+ "p80211",
+ (S_IFDIR|S_IRUGO|S_IXUGO),
+- proc_net);
++ init_net.proc_net);
+ }
+ #endif
+ DBFEXIT;
+@@ -196,7 +198,7 @@
+ DBFENTER;
+ #ifdef CONFIG_PROC_FS
+ if (proc_p80211 != NULL) {
+- remove_proc_entry("p80211", proc_net);
++ remove_proc_entry("p80211", init_net.proc_net);
+ }
+ #endif
+ DBFEXIT;
+--- src/prism2/driver/prism2_cs.c
++++ src/prism2/driver/prism2_cs.c
+@@ -517,7 +517,6 @@
+ #endif
+
+ /* Register the network device and get assigned a name */
+- SET_MODULE_OWNER(wlandev->netdev);
+ SET_NETDEV_DEV(wlandev->netdev, &handle_to_dev(pdev));
+ if (register_wlandev(wlandev) != 0) {
+ WLAN_LOG_NOTICE("prism2sta_cs: register_wlandev() failed.\n");
+@@ -1080,7 +1079,6 @@
+ link->dev = &hw->node;
+
+ /* Register the network device and get assigned a name */
+- SET_MODULE_OWNER(wlandev->netdev);
+ #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,11) )
+ SET_NETDEV_DEV(wlandev->netdev, &handle_to_dev(link->handle));
+ #endif
+--- src/prism2/driver/prism2_pci.c
++++ src/prism2/driver/prism2_pci.c
+@@ -119,7 +119,6 @@
+ /* Register the wlandev, this gets us a name and registers the
+ * linux netdevice.
+ */
+- SET_MODULE_OWNER(wlandev->netdev);
+ #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0))
+ SET_NETDEV_DEV(wlandev->netdev, &(pdev->dev));
+ #endif
+--- src/prism2/driver/prism2_plx.c
++++ src/prism2/driver/prism2_plx.c
+@@ -228,7 +228,6 @@
+ /* Register the wlandev, this gets us a name and registers the
+ * linux netdevice.
+ */
+- SET_MODULE_OWNER(wlandev->netdev);
+ #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0))
+ SET_NETDEV_DEV(wlandev->netdev, &(pdev->dev));
+ #endif
+--- src/prism2/driver/prism2_usb.c
++++ src/prism2/driver/prism2_usb.c
+@@ -131,7 +131,6 @@
+ /* Register the wlandev, this gets us a name and registers the
+ * linux netdevice.
+ */
+- SET_MODULE_OWNER(wlandev->netdev);
+ #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0))
+ SET_NETDEV_DEV(wlandev->netdev, &(interface->dev));
+ #endif
From janny at frugalware.org Thu Mar 6 19:52:46 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Thu Mar 6 19:52:48 2008
Subject: [Frugalware-git] fwlive_pkgs: fglrx-fwlive-8.42.3-10-i686
Message-ID: <20080306185246.22D8A119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=21600bf965dc0f83ed8a56450faf9fbebbe04f2d
commit 21600bf965dc0f83ed8a56450faf9fbebbe04f2d
Author: Janos Kovacs
Date: Thu Mar 6 19:48:29 2008 +0100
fglrx-fwlive-8.42.3-10-i686
* version bump
diff --git a/source/x11-extra/fglrx-fwlive/FrugalBuild b/source/x11-extra/fglrx-fwlive/FrugalBuild
index 829aea0..1d55609 100644
--- a/source/x11-extra/fglrx-fwlive/FrugalBuild
+++ b/source/x11-extra/fglrx-fwlive/FrugalBuild
@@ -3,13 +3,15 @@
# Maintainer: voroskoi
pkgname=fglrx-fwlive
+_F_archive_name=fglrx
pkgver=8.42.3
-pkgrel=7
+pkgrel=10
pkgdesc="Hardware Accelerated ATi driver for xorg"
url="http://www.ati.com/"
# libstdc++5: no hardware acceleration without it
+_F_kernelmod_scriptlet=fglrx_module.install
Finclude kernel-module
-kver=2.6.23-6
+kver=2.6.24-3
depends=("kernel-fwlive=$kver")
makedepends=("kernel-fwlive-source=$kver")
_F_kernelmod_uname=`echo $kver|sed 's/-/-fw/'`
@@ -20,7 +22,7 @@ subdescs=('fglrx kernel module')
subdepends=($depends)
subgroups=('x11-extra')
subarchs=('i686 x86_64')
-subinstall=fglrx_module-fwlive.install
+subinstall=fglrx_module.install
depends=()
rodepends=('fglrx_module-fwlive' 'xorg-server' 'libstdc++5')
@@ -28,15 +30,16 @@ conflicts=('libgl')
provides=('libgl')
groups=('x11-extra')
archs=('i686' 'x86_64')
-install=$pkgname.install
+install=$_F_archive_name.install
up2date=$pkgver
source=(https://a248.e.akamai.net/f/674/9206/0/www2.ati.com/drivers/linux/ati-driver-installer-$pkgver-x86.x86_64.run \
- README.Frugalware libGL.la fglrx-firegl_public.c-2.6.23.patch)
+ README.Frugalware libGL.la \
+ fglrx-firegl_public.c-2.6.24.patch)
options=(${options[@]} 'nodocs')
sha1sums=('b8e878e846e0971d49339ee5957acc6482329510' \
'b64a2303c77f84f5e5db13c9c8fd55f43fa9699b' \
'650973d708466f5c4c21e70c1f1f6c118b27e614' \
- '57eab429062d6cf64b19e67f2097ef2ce525edeb')
+ '5c88075b135bbc6700301d29736a74177b6df860')
Xversion=x710
@@ -53,7 +56,8 @@ build() {
fi
cp -r $Fsrcdir/ATi/common/* $Fsrcdir/ || Fdie
- patch -p0 < $Fsrcdir/fglrx-firegl_public.c-2.6.23.patch || Fdie
+
+ patch -p0 < $Fsrcdir/fglrx-firegl_public.c-2.6.24.patch || Fdie
# building kernel module
Fcd /lib/modules/fglrx/build_mod
@@ -62,7 +66,7 @@ build() {
Ffile lib/modules/fglrx/build_mod/fglrx.ko $_F_kernelmod_dir/video/fglrx.ko
# moving the intresting part to the package
- mv $Fsrcdir/usr $Fdestdir || Fdie
+ mv $Fsrcdir/{usr,etc} $Fdestdir || Fdie
# Install into correct paths for Xorg7
Fmkdir /usr/{include,lib/xorg,bin}
@@ -99,13 +103,12 @@ build() {
Fln libGL.so.1.2 /usr/lib/libGL.so.1
cp -ar $Fsrcdir/libGL.la $Fdestdir/usr/lib || Fdie
-
(find $Fdestdir -type d |xargs chmod 755) || Fdie
# closes #2498
(find $Fdestdir -perm 744 |xargs chmod 755) || Fdie
Fdoc README.Frugalware
- Fsplit fglrx_module-fwlive /lib
+ Fsplit fglrx_module /lib
Fbuild_kernelmod_scriptlet
}
diff --git a/source/x11-extra/fglrx-fwlive/fglrx-firegl_public.c-2.6.23.patch b/source/x11-extra/fglrx-fwlive/fglrx-firegl_public.c-2.6.23.patch
deleted file mode 100644
index 468f9c9..0000000
--- a/source/x11-extra/fglrx-fwlive/fglrx-firegl_public.c-2.6.23.patch
+++ /dev/null
@@ -1,86 +0,0 @@
---- lib/modules/fglrx/build_mod/firegl_public.c.orig 2007-08-10 23:59:21.000000000 +0200
-+++ lib/modules/fglrx/build_mod/firegl_public.c 2007-08-13 20:00:26.000000000 +0200
-@@ -214,6 +214,56 @@
- #define preempt_enable()
- #endif
-
-+#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,22)
-+#if defined(__i386__)
-+#define ptep_test_and_clear_dirty(vma, addr, ptep) ({ \
-+ int __ret = 0; \
-+ if (pte_dirty(*(ptep))) \
-+ __ret = test_and_clear_bit(_PAGE_BIT_DIRTY, \
-+ &(ptep)->pte_low); \
-+ if (__ret) \
-+ pte_update((vma)->vm_mm, addr, ptep); \
-+ __ret; \
-+})
-+
-+static inline int pte_read(pte_t pte) { return (pte).pte_low & _PAGE_USER; }
-+static inline int pte_user(pte_t pte) { return (pte).pte_low & _PAGE_USER; }
-+#ifdef CONFIG_X86_PAE
-+/*
-+ * Is the pte executable?
-+ */
-+static inline int pte_x(pte_t pte)
-+{
-+ return !(pte_val(pte) & _PAGE_NX);
-+}
-+
-+/*
-+ * All present user-pages with !NX bit are user-executable:
-+ */
-+static inline int pte_exec(pte_t pte)
-+{
-+ return pte_user(pte) && pte_x(pte);
-+}
-+#else
-+static inline int pte_exec(pte_t pte)
-+{
-+ return pte_user(pte);
-+}
-+#endif /* PAE */
-+
-+#elif defined(__x86_64__)
-+static inline int ptep_test_and_clear_dirty(struct vm_area_struct *vma,
-+ unsigned long addr, pte_t *ptep)
-+{
-+ if (!pte_dirty(*ptep))
-+ return 0;
-+ return test_and_clear_bit(_PAGE_BIT_DIRTY, &ptep->pte);
-+}
-+static inline int pte_read(pte_t pte) { return pte_val(pte) & _PAGE_USER; }
-+static inline int pte_exec(pte_t pte) { return !(pte_val(pte) & _PAGE_NX); }
-+#endif
-+#endif
-+
- // ============================================================
- /* globals */
-
-@@ -2356,7 +2406,7 @@ void ATI_API_CALL __ke_put_vm_page_table
- #ifndef ptep_clear_flush_dirty
- #define ptep_clear_flush_dirty(__vma, __address, __ptep) \
- ({ \
-- int __dirty = ptep_test_and_clear_dirty(__ptep); \
-+ int __dirty = ptep_test_and_clear_dirty(__vma, __address, __ptep); \
- if (__dirty) \
- flush_tlb_page(__vma, __address); \
- __dirty; \
-@@ -5303,7 +5353,7 @@ unsigned int ATI_API_CALL KAS_Spinlock_R
- /** \brief Type definition of the structure describing Slab Cache object */
- typedef struct tag_kasSlabCache_t
- {
-- kmem_cache_t* cache; /* OS slab cache object */
-+ struct kmem_cache *cache; /* OS slab cache object */
- spinlock_t lock; /* OS spinlock object protecting the cache */
- unsigned int routine_type; /* Type of routine the cache might be accessed from */
- char name[14]; /* Cache object name (kernel 2.4 restricts its length to 19 chars) */
-@@ -5349,7 +5399,7 @@ unsigned int ATI_API_CALL KAS_SlabCache_
- DBG_TRACE("creating slab object '%s'", slabcache_obj->name);
-
- if ((slabcache_obj->cache =
-- kmem_cache_create(slabcache_obj->name, iEntrySize, 0, 0, NULL, NULL)))
-+ kmem_cache_create(slabcache_obj->name, iEntrySize, 0, 0, NULL)))
- {
- ret = 1;
- }
diff --git a/source/x11-extra/fglrx-fwlive/fglrx-firegl_public.c-2.6.24.patch b/source/x11-extra/fglrx-fwlive/fglrx-firegl_public.c-2.6.24.patch
new file mode 100644
index 0000000..740eb1f
--- /dev/null
+++ b/source/x11-extra/fglrx-fwlive/fglrx-firegl_public.c-2.6.24.patch
@@ -0,0 +1,104 @@
+--- lib/modules/fglrx/build_mod/firegl_public.c.orig 2007-08-10 23:59:21.000000000 +0200
++++ lib/modules/fglrx/build_mod/firegl_public.c 2007-08-13 20:00:26.000000000 +0200
+@@ -214,6 +214,56 @@
+ #define preempt_enable()
+ #endif
+
++#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,22)
++#if defined(__i386__)
++#define ptep_test_and_clear_dirty(vma, addr, ptep) ({ \
++ int __ret = 0; \
++ if (pte_dirty(*(ptep))) \
++ __ret = test_and_clear_bit(_PAGE_BIT_DIRTY, \
++ &(ptep)->pte_low); \
++ if (__ret) \
++ pte_update((vma)->vm_mm, addr, ptep); \
++ __ret; \
++})
++
++static inline int pte_read(pte_t pte) { return (pte).pte_low & _PAGE_USER; }
++static inline int pte_user(pte_t pte) { return (pte).pte_low & _PAGE_USER; }
++#ifdef CONFIG_X86_PAE
++/*
++ * Is the pte executable?
++ */
++static inline int pte_x(pte_t pte)
++{
++ return !(pte_val(pte) & _PAGE_NX);
++}
++
++/*
++ * All present user-pages with !NX bit are user-executable:
++ */
++static inline int pte_exec(pte_t pte)
++{
++ return pte_user(pte) && pte_x(pte);
++}
++#else
++static inline int pte_exec(pte_t pte)
++{
++ return pte_user(pte);
++}
++#endif /* PAE */
++
++#elif defined(__x86_64__)
++static inline int ptep_test_and_clear_dirty(struct vm_area_struct *vma,
++ unsigned long addr, pte_t *ptep)
++{
++ if (!pte_dirty(*ptep))
++ return 0;
++ return test_and_clear_bit(_PAGE_BIT_DIRTY, &ptep->pte);
++}
++static inline int pte_read(pte_t pte) { return pte_val(pte) & _PAGE_USER; }
++static inline int pte_exec(pte_t pte) { return !(pte_val(pte) & _PAGE_NX); }
++#endif
++#endif
++
+ // ============================================================
+ /* globals */
+
+@@ -2356,7 +2406,7 @@ void ATI_API_CALL __ke_put_vm_page_table
+ #ifndef ptep_clear_flush_dirty
+ #define ptep_clear_flush_dirty(__vma, __address, __ptep) \
+ ({ \
+- int __dirty = ptep_test_and_clear_dirty(__ptep); \
++ int __dirty = ptep_test_and_clear_dirty(__vma, __address, __ptep); \
+ if (__dirty) \
+ flush_tlb_page(__vma, __address); \
+ __dirty; \
+@@ -2986,7 +2986,7 @@
+ {
+ return request_irq(irq,
+ (void(*)(int, void *, struct pt_regs *))handler,
+- SA_SHIRQ, dev_name, dev_id);
++ IRQF_SHARED, dev_name, dev_id);
+ }
+
+ void ATI_API_CALL __ke_free_irq(unsigned int irq, void *dev_id)
+@@ -3009,7 +3009,7 @@
+ irq_handler_func = handler;
+ return request_irq(irq,
+ ke_irq_handler_wrap,
+- SA_SHIRQ, dev_name, dev_id);
++ IRQF_SHARED, dev_name, dev_id);
+ }
+
+ void ATI_API_CALL __ke_free_irq(unsigned int irq, void *dev_id)
+@@ -5303,7 +5353,7 @@ unsigned int ATI_API_CALL KAS_Spinlock_R
+ /** \brief Type definition of the structure describing Slab Cache object */
+ typedef struct tag_kasSlabCache_t
+ {
+- kmem_cache_t* cache; /* OS slab cache object */
++ struct kmem_cache *cache; /* OS slab cache object */
+ spinlock_t lock; /* OS spinlock object protecting the cache */
+ unsigned int routine_type; /* Type of routine the cache might be accessed from */
+ char name[14]; /* Cache object name (kernel 2.4 restricts its length to 19 chars) */
+@@ -5349,7 +5399,7 @@ unsigned int ATI_API_CALL KAS_SlabCache_
+ DBG_TRACE("creating slab object '%s'", slabcache_obj->name);
+
+ if ((slabcache_obj->cache =
+- kmem_cache_create(slabcache_obj->name, iEntrySize, 0, 0, NULL, NULL)))
++ kmem_cache_create(slabcache_obj->name, iEntrySize, 0, 0, NULL)))
+ {
+ ret = 1;
+ }
diff --git a/source/x11-extra/fglrx-fwlive/fglrx-fwlive.install b/source/x11-extra/fglrx-fwlive/fglrx-fwlive.install
deleted file mode 100644
index 7c80936..0000000
--- a/source/x11-extra/fglrx-fwlive/fglrx-fwlive.install
+++ /dev/null
@@ -1,17 +0,0 @@
-post_install()
-{
- echo 'You have successfully installed the ATi proprietary driver!'
- echo 'To configure your xserver please run aticonfig!'
- echo 'Before using X please restart your computer!'
-}
-
-post_upgrade()
-{
- post_install $1
-}
-
-op=$1
-shift
-$op $*
-
-# vim: ft=sh
diff --git a/source/x11-extra/fglrx-fwlive/fglrx.install b/source/x11-extra/fglrx-fwlive/fglrx.install
new file mode 100644
index 0000000..7c80936
--- /dev/null
+++ b/source/x11-extra/fglrx-fwlive/fglrx.install
@@ -0,0 +1,17 @@
+post_install()
+{
+ echo 'You have successfully installed the ATi proprietary driver!'
+ echo 'To configure your xserver please run aticonfig!'
+ echo 'Before using X please restart your computer!'
+}
+
+post_upgrade()
+{
+ post_install $1
+}
+
+op=$1
+shift
+$op $*
+
+# vim: ft=sh
diff --git a/source/x11-extra/fglrx-fwlive/fglrx_module-fwlive.install b/source/x11-extra/fglrx-fwlive/fglrx_module-fwlive.install
deleted file mode 100644
index 92f6293..0000000
--- a/source/x11-extra/fglrx-fwlive/fglrx_module-fwlive.install
+++ /dev/null
@@ -1,23 +0,0 @@
-post_install()
-{
- [ `grep fglrx < /etc/sysconfig/modules|wc -l` == 0 ] && \
- echo 'fglrx' >> /etc/sysconfig/modules
- /sbin/depmod -a $_F_kernelmod_uname
-}
-
-post_upgrade()
-{
- post_install $1
-}
-
-pre_remove()
-{
- [ ! `/sbin/lsmod|grep fglrx|wc -l` == 0 ] && /sbin/rmmod fglrx
- sed -i 's|fglrx||g' /etc/sysconfig/modules
-}
-
-op=$1
-shift
-$op $*
-
-# vim: ft=sh
diff --git a/source/x11-extra/fglrx-fwlive/fglrx_module.install b/source/x11-extra/fglrx-fwlive/fglrx_module.install
new file mode 100644
index 0000000..92f6293
--- /dev/null
+++ b/source/x11-extra/fglrx-fwlive/fglrx_module.install
@@ -0,0 +1,23 @@
+post_install()
+{
+ [ `grep fglrx < /etc/sysconfig/modules|wc -l` == 0 ] && \
+ echo 'fglrx' >> /etc/sysconfig/modules
+ /sbin/depmod -a $_F_kernelmod_uname
+}
+
+post_upgrade()
+{
+ post_install $1
+}
+
+pre_remove()
+{
+ [ ! `/sbin/lsmod|grep fglrx|wc -l` == 0 ] && /sbin/rmmod fglrx
+ sed -i 's|fglrx||g' /etc/sysconfig/modules
+}
+
+op=$1
+shift
+$op $*
+
+# vim: ft=sh
diff --git a/source/x11-extra/fglrx-fwlive/libGL.la b/source/x11-extra/fglrx-fwlive/libGL.la
new file mode 100644
index 0000000..5739533
--- /dev/null
+++ b/source/x11-extra/fglrx-fwlive/libGL.la
@@ -0,0 +1,32 @@
+# libGL.la - a libtool library file
+# Generated by ltmain.sh - GNU libtool 1.4 (1.920 2001/04/24 23:26:18)
+#
+# Please DO NOT delete this file!
+# It is necessary for linking the library.
+
+# The name that we can dlopen(3).
+dlname='libGL.so.1'
+
+# Names of this library.
+library_names='libGL.so.1.2 libGL.so.1 libGL.so'
+
+# The name of the static archive.
+old_library=''
+
+# Libraries that this one depends upon.
+dependency_libs=' -L/usr/lib -lSM -lICE -lXmu -lXt -lXext -lXi -lX11 -ldl -lpthread '
+
+# Version information for libGL.
+current=3
+age=2
+revision=0
+
+# Is this an already installed library?
+installed=yes
+
+# Files to dlopen/dlpreopen
+dlopen=''
+dlpreopen=''
+
+# Directory that this library needs to be installed in:
+libdir='/usr/lib'
From janny at frugalware.org Thu Mar 6 19:55:00 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Thu Mar 6 19:55:01 2008
Subject: [Frugalware-git] fwlive_pkgs: nvidia-96xx-fwlive-96.43.05-4-i686
Message-ID: <20080306185500.AA89A119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=5fd1d42df37559d71245cf8e36acfa9f659258c3
commit 5fd1d42df37559d71245cf8e36acfa9f659258c3
Author: Janos Kovacs
Date: Thu Mar 6 19:53:47 2008 +0100
nvidia-96xx-fwlive-96.43.05-4-i686
* version bump
diff --git a/source/x11-extra/nvidia-96xx-fwlive/FrugalBuild b/source/x11-extra/nvidia-96xx-fwlive/FrugalBuild
index 660518d..06e8bd4 100644
--- a/source/x11-extra/nvidia-96xx-fwlive/FrugalBuild
+++ b/source/x11-extra/nvidia-96xx-fwlive/FrugalBuild
@@ -2,8 +2,9 @@
# Maintainer: AlexExtreme
pkgname=nvidia-96xx-fwlive
-pkgver=96.43.01
-pkgrel=6
+_F_archive_name=nvidia-96xx
+pkgver=96.43.05
+pkgrel=4
pkgdesc="3d accelerated display driver for Nvidia cards"
url="http://www.nvidia.com/object/linux_display_archive.html"
conflicts=('libgl' 'libglx' 'nvidia')
@@ -18,22 +19,22 @@ up2date="lynx -dump http://www.nvidia.com/object/unix.html | grep -m1 'Latest Le
if [ "$CARCH" == "i686" ]; then
_arch=x86
pkgnum=1
- sha1sums=('b92e46eb09514a15023e60dadda616b8811ce28b')
+ sha1sums=('ee4b15c1e550607bcf0768490c8127c3ae0e565d')
else
_arch=x86_64
pkgnum=2
- sha1sums=('d0dc8d61c32631eb397a8348630eadbae2744e96')
+ sha1sums=('9f20838b33c54c3d54e7fdbe87a3b47d542d21f1')
fi
source=(http://us.download.nvidia.com/XFree86/Linux-$_arch/$pkgver/NVIDIA-Linux-$_arch-$pkgver-pkg$pkgnum.run)
options=('nostrip')
Finclude kernel-module
-kver=2.6.23-6
+kver=2.6.24-3
depends=("kernel-fwlive=$kver")
makedepends=("kernel-fwlive-source=$kver")
_F_kernelmod_uname=`echo $kver|sed 's/-/-fw/'`
_F_kernelmod_dir="/lib/modules/$_F_kernelmod_uname"
depends=(${depends[@]} 'xorg-server>=1.1.0' 'pciutils') ## TMP for gf4
-install=$pkgname.install
+install=$_F_archive_name.install
build() {
nvdir=NVIDIA-Linux-$_arch-$pkgver-pkg$pkgnum
diff --git a/source/x11-extra/nvidia-96xx-fwlive/nvidia-96xx-fwlive.install b/source/x11-extra/nvidia-96xx-fwlive/nvidia-96xx-fwlive.install
deleted file mode 100644
index 491156d..0000000
--- a/source/x11-extra/nvidia-96xx-fwlive/nvidia-96xx-fwlive.install
+++ /dev/null
@@ -1,60 +0,0 @@
-post_install() {
- echo "*** In order to use this package you have to accept Nvidia's license which"
- echo "*** can be found at /usr/share/doc/nvidia/LICENSE."
- echo "*** If you don't accept it, please remove the package!"
- ## well here a 'WARNING' only on install | update because I don't know this
- ## metamodes option will work for all
- devnr=`lspci -nn|grep "GeForce4 \(.*\) Go \(.*\)M"|sed 's/.*:\(.*\)].*/\1/'`
-
- if [ "$devnr" ]; then
- if [ "$devnr" -eq 0179 ]; then
- echo ""
- echo "*** WARNING: Nvidia - GeForce4 440/420 Go 32/64M - with PCI ID: - 0x$devnr - detected."
- echo "*** WARNING: If you get an black screen try add this line to your xorg.conf in the DefaultDepth Section:"
- echo "Option "\"metamodes\" "\"DFP: nvidia-auto-select +0+0; DFP: 800x600 +0+0; DFP: 640x480 +0+0\""
- echo ""
- fi
- fi
-
- sed -i 's/^.*Load "dri"/# Load "dri"/' /etc/X11/xorg.conf
- sed -i 's/Driver.*"\(nv\|vesa\|vga\)"/Driver "nvidia"/' /etc/X11/xorg.conf
-
- exist=`cat /etc/sysconfig/modules | grep nvidia | wc -l`
- if [ "$exist" -eq 0 ]; then
- echo nvidia >> /etc/sysconfig/modules
- fi
- /sbin/depmod -a
- /sbin/modprobe nvidia
-}
-
-post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- if test `lsmod | grep ^nvidia | wc -l` -gt 0; then
- rmmod nvidia
- fi
-
- sed -i 's/^.*# Load "dri"/Load "dri"/' /etc/X11/xorg.conf
- sed -i 's/\(^Driver *\)"nvidia"/\1"nv"/' /etc/X11/xorg.conf
-
- exist=`cat /etc/sysconfig/modules | grep nvidia | wc -l`
- if [ "$exist" -eq 1 ]; then
- grep -v '^nvidia' /etc/sysconfig/modules > /etc/sysconfig/modules.tmp
- mv /etc/sysconfig/modules.tmp /etc/sysconfig/modules
- fi
- if [ -e /usr/lib/xorg/temp/libglx.so ]; then
- mv /usr/lib/xorg/temp/libglx.so /usr/lib/xorg/modules/extensions/
- fi
-}
-
-post_remove() {
- depmod -a
- echo "*** Nvidia driver is removed now. To have a working Xorg Server again run : ***"
- echo "*** pacman-g2 -S libgl libglx ****"
-}
-
-op=$1
-shift
-$op $*
diff --git a/source/x11-extra/nvidia-96xx-fwlive/nvidia-96xx.install b/source/x11-extra/nvidia-96xx-fwlive/nvidia-96xx.install
new file mode 100644
index 0000000..d346d07
--- /dev/null
+++ b/source/x11-extra/nvidia-96xx-fwlive/nvidia-96xx.install
@@ -0,0 +1,84 @@
+post_install() {
+ echo "*** In order to use this package you have to accept Nvidia's license which"
+ echo "*** can be found at /usr/share/doc/nvidia-*/LICENSE."
+ echo "*** If you don't accept it, please remove the package!"
+ ## well here a 'WARNING' only on install | update because I don't know this
+ ## metamodes option will work for all
+ devnr=`/usr/sbin/lspci -nn|grep "GeForce4 \(.*\) Go \(.*\)M"|sed 's/.*:\(.*\)].*/\1/'`
+
+ if [ "$devnr" ]; then
+ if [ "$devnr" -eq 0179 ]; then
+ echo ""
+ echo "*** WARNING: Nvidia - GeForce4 440/420 Go 32/64M - with PCI ID: - 0x$devnr - detected."
+ echo "*** WARNING: If you get an black screen try add this line to your xorg.conf in the DefaultDepth Section:"
+ echo "Option "\"metamodes\" "\"DFP: nvidia-auto-select +0+0; DFP: 800x600 +0+0; DFP: 640x480 +0+0\""
+ echo ""
+ fi
+ fi
+
+ if [ -e /etc/X11/xorg.conf ]; then
+ sed -i 's/^.*Load "dri"/# Load "dri"/' /etc/X11/xorg.conf
+ sed -i 's/Driver.*"\(nv\|vesa\|vga\)"/Driver "nvidia"/' /etc/X11/xorg.conf
+ else
+ echo "WARNING: /etc/X11/xorg.conf does not exist!"
+ fi
+
+ exist=`cat /etc/sysconfig/modules | grep nvidia | wc -l`
+ if [ "$exist" -eq 0 ]; then
+ echo nvidia >> /etc/sysconfig/modules
+ fi
+ /sbin/depmod -ea $_F_kernelmod_uname
+ ## if nvidia dependent kernel is the current kernel
+ if [ -e /lib/modules/`uname -r`/kernel/drivers/video/nvidia.ko ]; then
+ ## Try to load it
+ /sbin/modprobe nvidia
+ fi
+}
+
+post_upgrade() {
+ echo -n "Runing depmod for nvidia kernel module for kernel $_F_kernelmod_uname ..."
+ /sbin/depmod -ea $_F_kernelmod_uname
+ echo " done."
+ ## if that exisit we bumped / upgraded the package only no new kernel
+ ## on a new kernel we do nothing because one has to reboot anyway
+ if [ -e /lib/modules/`uname -r`/kernel/drivers/video/nvidia.ko ]; then
+ ## see if is loaded , if yes kill it and modprobe again if not do nothing
+ if grep -q nvidia /proc/modules; then
+ echo -n "Reloading nvidia kernel module.."
+ modprobe --remove nvidia
+ sleep 1
+ modprobe nvidia
+ echo " done."
+ fi
+ fi
+}
+
+pre_remove() {
+ if test `lsmod | grep ^nvidia | wc -l` -gt 0; then
+ /sbin/modprobe --remove nvidia
+ fi
+
+ if [ -e /etc/X11/xorg.conf ]; then
+ sed -i 's/^.*# Load "dri"/Load "dri"/' /etc/X11/xorg.conf
+ sed -i 's/\(^Driver *\)"nvidia"/\1"nv"/' /etc/X11/xorg.conf
+ fi
+
+ exist=`cat /etc/sysconfig/modules | grep nvidia | wc -l`
+ if [ "$exist" -eq 1 ]; then
+ grep -v '^nvidia' /etc/sysconfig/modules > /etc/sysconfig/modules.tmp
+ mv /etc/sysconfig/modules.tmp /etc/sysconfig/modules
+ fi
+ if [ -e /usr/lib/xorg/temp/libglx.so ]; then
+ mv /usr/lib/xorg/temp/libglx.so /usr/lib/xorg/modules/extensions/
+ fi
+}
+
+post_remove() {
+ /sbin/depmod -a $_F_kernelmod_uname
+ echo "*** Nvidia driver is removed now. To have a working Xorg Server again run : ***"
+ echo "*** pacman-g2 -S libgl libglx ****"
+}
+
+op=$1
+shift
+$op $*
From janny at frugalware.org Thu Mar 6 19:57:28 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Thu Mar 6 19:57:29 2008
Subject: [Frugalware-git] fwlive_pkgs: nvidia-fwlive-169.12-2-i686
Message-ID: <20080306185728.1EDDA119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=2cbfdd3922ffd950b14720a4afcab97647125774
commit 2cbfdd3922ffd950b14720a4afcab97647125774
Author: Janos Kovacs
Date: Thu Mar 6 19:55:49 2008 +0100
nvidia-fwlive-169.12-2-i686
* version bump
diff --git a/source/x11-extra/nvidia-fwlive/FrugalBuild b/source/x11-extra/nvidia-fwlive/FrugalBuild
index 5a2459f..9981781 100644
--- a/source/x11-extra/nvidia-fwlive/FrugalBuild
+++ b/source/x11-extra/nvidia-fwlive/FrugalBuild
@@ -2,8 +2,9 @@
# Maintainer: AlexExtreme
pkgname=nvidia-fwlive
-pkgver=169.09
-pkgrel=1
+_F_archive_name=nvidia
+pkgver=169.12
+pkgrel=2
pkgdesc="3D accelerated display driver for Nvidia cards"
url="http://www.nvidia.com/object/linux_display_archive.html"
conflicts=('libgl' 'libglx')
@@ -13,23 +14,22 @@ archs=('i686' 'x86_64')
up2date="lynx -dump http://www.nvidia.com/object/unix.html|grep -m1 'Latest Version:'|sed 's/.*]//;s/-/_/'"
if echo "$CARCH" | grep -q 'i.86'; then
_arch=x86
- sha1sums=('c001e13a2f38ea73b0a1610c585e0ebaebeac6f8')
+ sha1sums=('6ce789da785bf109fcb213db755eaf6975de2e46')
pkgnum=1
elif [ "$CARCH" == "x86_64" ]; then
_arch=x86_64
- sha1sums=('18ff8301461bd496e7305052aea5f7f652b15e76')
+ sha1sums=('62f9e1055ce6cd4d7806757ece0a144695ef12ff')
pkgnum=2
fi
source=(http://us.download.nvidia.com/XFree86/Linux-$_arch/$pkgver/NVIDIA-Linux-$_arch-$pkgver-pkg$pkgnum.run)
options=('nostrip' 'force')
-_F_kernelmod_scriptlet=$pkgname.install
+_F_kernelmod_scriptlet=$_F_archive_name.install
Finclude kernel-module
-kver=2.6.23-6
-depends=("kernel-fwlive=$kver")
+kver=2.6.24-3
+depends=("kernel-fwlive=$kver" 'xorg-server>=1.1.0')
makedepends=("kernel-fwlive-source=$kver")
-_F_kernelmod_uname=`echo $kver|sed 's/-/-fw/'`
-_F_kernelmod_dir="/lib/modules/$_F_kernelmod_uname"
-depends=(${depends[@]} 'xorg-server>=1.1.0')
+#_F_kernelmod_uname=`echo $kver|sed 's/-/-fw/'`
+#_F_kernelmod_dir="/lib/modules/$_F_kernelmod_uname"
build() {
nvdir=NVIDIA-Linux-$_arch-$pkgver-pkg$pkgnum
@@ -88,7 +88,7 @@ build() {
Ffilerel usr/src/nv/nvidia.ko $_F_kernelmod_dir/kernel/drivers/video/nvidia.ko
Fdoc $nvdir/LICENSE
- Fcpr $nvdir/usr/share/doc/* /usr/share/doc/$pkgname-$pkgver/
+ Fcpr $nvdir/usr/share/doc/* usr/share/doc/$pkgname-$pkgver/
Fln "$pkgname-$pkgver" "/usr/share/doc/$pkgname"
Fbuild_kernelmod_scriptlet
}
diff --git a/source/x11-extra/nvidia-fwlive/nvidia-fwlive.install b/source/x11-extra/nvidia-fwlive/nvidia-fwlive.install
deleted file mode 100644
index cae4fc4..0000000
--- a/source/x11-extra/nvidia-fwlive/nvidia-fwlive.install
+++ /dev/null
@@ -1,47 +0,0 @@
-post_install() {
- echo "*** In order to use this package you have to accept Nvidia's license which"
- echo "*** can be found at /usr/share/doc/nvidia/LICENSE."
- echo "*** If you don't accept it, please remove the package!"
-
- sed -i 's/^.*Load "dri"/# Load "dri"/' /etc/X11/xorg.conf
- sed -i 's/Driver.*"\(nv\|vesa\|vga\)"/Driver "nvidia"/' /etc/X11/xorg.conf
-
- exist=`cat /etc/sysconfig/modules | grep nvidia | wc -l`
- if [ "$exist" -eq 0 ]; then
- echo nvidia >> /etc/sysconfig/modules
- fi
- /sbin/depmod -a
- /sbin/modprobe nvidia
-}
-
-post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- if test `lsmod | grep ^nvidia | wc -l` -gt 0; then
- rmmod nvidia
- fi
-
- sed -i 's/^.*# Load "dri"/Load "dri"/' /etc/X11/xorg.conf
- sed -i 's/\(^Driver *\)"nvidia"/\1"nv"/' /etc/X11/xorg.conf
-
- exist=`cat /etc/sysconfig/modules | grep nvidia | wc -l`
- if [ "$exist" -eq 1 ]; then
- grep -v '^nvidia' /etc/sysconfig/modules > /etc/sysconfig/modules.tmp
- mv /etc/sysconfig/modules.tmp /etc/sysconfig/modules
- fi
- if [ -e /usr/lib/xorg/temp/libglx.so ]; then
- mv /usr/lib/xorg/temp/libglx.so /usr/lib/xorg/modules/extensions/
- fi
-}
-
-post_remove() {
- depmod -a
- echo "*** Nvidia driver is removed now. To have a working Xorg Server again run : ***"
- echo "*** pacman-g2 -S libgl libglx ****"
-}
-
-op=$1
-shift
-$op $*
diff --git a/source/x11-extra/nvidia-fwlive/nvidia.install b/source/x11-extra/nvidia-fwlive/nvidia.install
new file mode 100644
index 0000000..cae4fc4
--- /dev/null
+++ b/source/x11-extra/nvidia-fwlive/nvidia.install
@@ -0,0 +1,47 @@
+post_install() {
+ echo "*** In order to use this package you have to accept Nvidia's license which"
+ echo "*** can be found at /usr/share/doc/nvidia/LICENSE."
+ echo "*** If you don't accept it, please remove the package!"
+
+ sed -i 's/^.*Load "dri"/# Load "dri"/' /etc/X11/xorg.conf
+ sed -i 's/Driver.*"\(nv\|vesa\|vga\)"/Driver "nvidia"/' /etc/X11/xorg.conf
+
+ exist=`cat /etc/sysconfig/modules | grep nvidia | wc -l`
+ if [ "$exist" -eq 0 ]; then
+ echo nvidia >> /etc/sysconfig/modules
+ fi
+ /sbin/depmod -a
+ /sbin/modprobe nvidia
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ if test `lsmod | grep ^nvidia | wc -l` -gt 0; then
+ rmmod nvidia
+ fi
+
+ sed -i 's/^.*# Load "dri"/Load "dri"/' /etc/X11/xorg.conf
+ sed -i 's/\(^Driver *\)"nvidia"/\1"nv"/' /etc/X11/xorg.conf
+
+ exist=`cat /etc/sysconfig/modules | grep nvidia | wc -l`
+ if [ "$exist" -eq 1 ]; then
+ grep -v '^nvidia' /etc/sysconfig/modules > /etc/sysconfig/modules.tmp
+ mv /etc/sysconfig/modules.tmp /etc/sysconfig/modules
+ fi
+ if [ -e /usr/lib/xorg/temp/libglx.so ]; then
+ mv /usr/lib/xorg/temp/libglx.so /usr/lib/xorg/modules/extensions/
+ fi
+}
+
+post_remove() {
+ depmod -a
+ echo "*** Nvidia driver is removed now. To have a working Xorg Server again run : ***"
+ echo "*** pacman-g2 -S libgl libglx ****"
+}
+
+op=$1
+shift
+$op $*
From janny at frugalware.org Thu Mar 6 20:00:38 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Thu Mar 6 20:00:39 2008
Subject: [Frugalware-git] fwlive_pkgs: kqemu-fwlive-1.3.0pre11-24-i686
Message-ID: <20080306190038.81F1E119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=5e06cd2a3ed081cb64098edd551c9a106f643ac1
commit 5e06cd2a3ed081cb64098edd551c9a106f643ac1
Author: Janos Kovacs
Date: Thu Mar 6 19:59:57 2008 +0100
kqemu-fwlive-1.3.0pre11-24-i686
* version bump
diff --git a/source/xapps-extra/kqemu-fwlive/FrugalBuild b/source/xapps-extra/kqemu-fwlive/FrugalBuild
index 117e457..3a11c83 100644
--- a/source/xapps-extra/kqemu-fwlive/FrugalBuild
+++ b/source/xapps-extra/kqemu-fwlive/FrugalBuild
@@ -3,13 +3,13 @@
pkgname=kqemu-fwlive
pkgver=1.3.0pre11
-pkgrel=21
+pkgrel=24
pkgdesc="QEMU Accelerator Module"
url="http://fabrice.bellard.free.fr/qemu/"
depends=('qemu')
_F_kernelmod_scriptlet=kqemu.install
Finclude kernel-module
-kver=2.6.23-6
+kver=2.6.24-3
depends=("kernel-fwlive=$kver")
makedepends=("kernel-fwlive-source=$kver")
_F_kernelmod_uname=`echo $kver|sed 's/-/-fw/'`
@@ -17,8 +17,9 @@ _F_kernelmod_dir="/lib/modules/$_F_kernelmod_uname"
groups=('xapps-extra')
archs=('i686' 'x86_64')
up2date="lynx -dump $url/download.html|grep kqemu.*gz$|sed 's/.*-\(.*\)\.t.*/\1/;q'"
-source=($url/kqemu-$pkgver.tar.gz)
-sha1sums=('780d48b99715e6b2671864ad5050f1c9506fcb71')
+source=($url/kqemu-$pkgver.tar.gz README.Frugalware)
+sha1sums=('780d48b99715e6b2671864ad5050f1c9506fcb71' \
+ 'e1eb29a8e4c453480a18857c4416d1cc979a28f4')
build()
{
@@ -29,5 +30,6 @@ build()
Fmkdir /etc/udev/rules.d/
echo 'KERNEL=="kqemu*", NAME="%k", GROUP="users", MODE="0660"' \
> $Fdestdir/etc/udev/rules.d/48-qemu.rules
+ Fdoc README.Frugalware
Fbuild_kernelmod_scriptlet
}
From janny at frugalware.org Thu Mar 6 20:02:08 2008
From: janny at frugalware.org (Janos Kovacs)
Date: Thu Mar 6 20:02:13 2008
Subject: [Frugalware-git] fwlive_pkgs: lirc-fwlive-0.8.2-18-i686
Message-ID: <20080306190208.8BE0C119019C@genesis.frugalware.org>
Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=fwlive_pkgs.git;a=commitdiff;h=c1fe21968f44e678f9dcaf4959c89487ccf4d237
commit c1fe21968f44e678f9dcaf4959c89487ccf4d237
Author: Janos Kovacs