$Id$ Latest changes: === Freetz-1.2-stable === - Build system: * fakeroot: bump version to 1.18.1 * kernel-toolchain: + Bump binutils version to 2.18 + Add gcc version 4.4.6 + Add binutils version 2.21.52.0.2 + Use gcc-3.4.6 for kernel versions 2.6.13.1 and 2.6.19.2 + Use gcc-4.4.6 for kernel versions 2.6.28 and 2.6.32.21 + Update download toolchains * target-toolchain: + Add gcc-4.4.6(default), gcc-4.5.3, and gcc-4.6.1, delete outdated versions + Bump binutils version to 2.21.52.0.2 + Add uClibc-0.9.30.3 and uClibc-0.9.31.1, 0.9.32 + Add gdb-6.8 and gdb-7.2, delete outdated versions + Update download toolchains: + Use gcc-4.4.6 for uClibc versions 0.9.28/29/30 + Use gcc-4.5.3 for uClibc-0.9.31.1/0.9.32 toolchain + Remove kernel headers from download toolchains + Add install target for kernel headers + Update sys/queue.h in uClibc-0.9.28 toolchains + Enable mips-plt optimizations for gcc versions >= 4.4. These optimizations allow gcc to create binaries which are significantly smaller in size. + Add option to build uClibc with a reduced set of locales (saves > 200 KB) + Remove many unused symbols from libgcc_s (saves ~ 100 KB) * Bump ccache version to 3.1.5 * patch-system: use shell-fuction isFreetzType (by kriegaex) * use host tar to unpack packages again as busybox' tar doesn't support pax (aka POSIX 1003.1-2001) tar format * patch-system: use shell function modsed * move packages and libs source dir to source/target-$(arch)_uClibc-$(version) * move config.cache to this subdir too * move tools source dir to source/host-tools - Toolchain: * Add support for the GNU libstdc++. From now on user can specify (he/she has a choice between uClibc++ and libstdc++) the library to be used as the implementation of the Standard C++ Library. uClibc++ is still the default one. The option affects all packages using C++ compiler to compile. In one of the next releases it will be possible to select the library on a per-package-basis. The reason we add support for libstdc++ is some performance deficiencies of uClibc++ causing us either to get stuck with old versions of the packages we already support (e.g. nmap) or making it impossible to add support for the new ones (e.g. truecrypt). - New tools and hooks: * New hook to add files/directories to var.tar * Put desired files/directories into make/{package}/files/var.tar * modlibrc: * modlib_status now supports "inetd" * modlib_startdaemon takes care of the returnvalue, creates pid-file & writes "Starting..." * modlib_start checks if the daemon is yet started or disabled * modlib_reload & modlib_startdaemon executes "config"-function of parent rc-skript (if available) * modlib_stop kills daemon with "stop" of parent rc.$DAEMON (if available) * New feature for modpatch: choose patch file depending on md5sum of target file this is triggered if the 2nd parameter is a directory and not a (patch-) file - New patches (read online help for more info): * Add support for multiple printers * add additional image-infopage and .config in firmware image (by herman72pb) * remove ntfs-support * remove umts-support * add 3rd alarm-clock (for 7150 7112 7141 7170 3070_V3 3270 7240 7270 7270_V3) * freetzmount (by hermann72pb, updated by cuma) * reg SIP from outside (by MaxMuster) * remove AVM's NAS webinterface and internal memory file * remove (unneeded) piglet and isdn/pots bitfile(s) * remove AVM's webdav * remove AVM's printserv & usblp * remove AVM's lsof * remove AVM's strace * remove chronyd * replace dtrace: execute a custom action by phone * disable console on serial port: do not start a console/shell on serial port * replace onlinechanged: execute AVM, Freetz and user-defined scripts whenever the external IP address changes. In opposite to AVM's original this version also works on boxes behind a NAT (e.g. IP clients using an existing internet connection) and on boxes where AVM onlinechanged is not called reliably. - New packages, libs, modules: * aiccu 20070115 * apr 1.4.5 * apr-util 1.3.12 * autofs 5.0.5 * berkeley-db 4.8.30 * bind 9.8.0-P2 * bittwist 1.1 * comgt 0.32 * compcache 0.5.4 (kernel module) * cpmaccfg-cgi 1.0: Webinterface for cpmaccfg * digitemp 3.6.0 * dnsd-cgi 1.0 * dosfstools 3.0.11 * dtmfbox-cgi 0.1 * ffmpeg 0.5.4 * flex (libflex) 2.5.35 * fortune 1.2 * git 1.7.5.4 * gnutls 2.10.5 * gocr 0.49 * gw6 5.1 * hol 0.1 * hplip 3.11.1 * hp-utils 0.3.2 * htop 0.9 * htpdate 1.0.4 * httpry 0.1.5 * ifstat 1.1 * iftop 0.17 * igmpproxy 0.1 * iptraf 3.0.1 * ipsec-tools 0.7.2 * iputils s20071127 * lftp 4.0.5 * libconfig 1.4.5 * libdaemon 0.14 * libdnet 1.12 * libexif 0.6.20 * libFLAC 1.2.1 * libfreetz 0.5 * libgd 2.0.35 * libjs 1.6.20070208 * libnet 1.1.4 * libogg 1.2.2 * libopenjpeg 1.4.0 * liboping 1.6.1 * libosip2 3.3.0 * libpolarssl 0.14.3 * libstdc++ 6.0.x * libsynce 0.10.0 * libtasn1 2.9 * libusb1 1.0.8 * libvorbis 1.3.2 * libxml 2.7.8 * libxslt/xsltproc 1.1.26 * lighttpd 1.4.28 * mdev 0.6.2: First try to replace AVM's hotplug chain depends on 7170, 7240 and 7270. * mediatomb 0.12.1 * minicom-2.5 * minidlna 1.0.20 * mini-snmpd 1.2b * nc6 * ncftp-3.2.5 * netatalk 2.1.5 * netpbm-10.35.79 * ndas-1.1-22 * nhipt iptables cgi 0.8.3a * ngircd 17.1 * nmap 4.68 * noip 2.1.9 * oidentd 2.0.8 * onlinechanged-cgi 0.1 * openconnect 2.24 * opendd 0.7.9 * owfs 2.7p32 * pcre 8.12 * phpxmail 1.5 * pkcs#11 v2.20 * polipo 1.0.4.1 * ppp-cgi 0.6.9 * radvd 1.7 * ripmime 1.2.16.21 * rsync 3.0.8 * ruby-fcgi 0.8.7 * ser2net 2.5 * siproxd 0.8.1 * slang 2.2.3 * slurm 0.3.3 * spawn-fcgi 1.6.3 * sqlite 3.7.6.3 * sshfs-fuse 2.2 * subversion 1.6.17 * synce-dccm 0.9.1 * synce-serial 0.10.0 * taglib 1.6.3 * tcpproxy 2.0.0-beta15 * tmux 1.4 * transmission-cgi 0.0.4 * trickle 1.07 * truecrypt 7.0a * udpxy 1.0-Chipmunk-16 * umurmur 0.2.6 * unrar 4.0.7 * util-linux-ng 2.17.2 * vnstat 1.10 * vnstat-cgi 0.6.9 * vtun 3.0.2 * wxWidgets 2.8.12 * xmail 1.27 - Updated tools and hooks: * external: * Move external files out of tools/external into separate files for each package * added automatic start/stop of services on (un)mount (now configurable via webinterface) * get_ip: + default method could be set via webif + cache for extquery (1 minunte) - Updated tools and hooks: * get_ip: + default method can be set via web interface + added new methods stun-ip (default) and route + removed obsolete methods ostat and extquery - Updated patches: * Update many patches to support actual firmwares (e.g. changed paths) - Updated packages and libs: * avm-firewall 2.0.4_rc5 * bash 3.2.51 * bftpd 3.3 * bip 0.8.8 * bird 1.3.1 * bridge-utils 1.4 * callmonitor 1.19.3 * checkmaild 0.4.7 * classpath 0.98 * collectd 4.10.3 * cryptsetup 1.0.6 * curl 7.21.7 * cyassl 1.9.0 * davfs2 1.4.6 * debootstrap 1.0.28 * dns2tcp 0.5.2 * dnsmasq 2.57 * e2fsprogs 1.41.14 * freetype 2.3.12 * fuse 2.7.6 * glib 2.22.5 * gmp 5.0.1 * gnu-make 3.82 * haserl 0.9.29 * inadyn-mt-2.24.36 * inetd 0.2 (multiple daemons/package) * inotify-tools 3.14 * iptables 1.4.1.1 * iptables-cgi 1.1 * iodine 0.6.0-rc1 * irssi 0.8.15 * jamvm 1.5.4 * libart_lgpl 2.3.21 * libcapi * libelf 0.8.13 * libevent 2.0.12 * libftdi 0.18 * libgcrypt 1.4.6 * libgpg-error 1.10 * libiconv 1.13.1 * libpcap 1.1.1 * libpng 1.2.44 * libpopt 1.15 * liblzo 2.05 * libneon 0.29.6 * linux-atm 2.5.0 * lsof 4.84 * ltrace 0.5.3 * lua 5.1.4 * lynx 2.8.7 * mc 4.6.2 * mcabber 0.9.10 * mpfr 2.4.2 * mtr 0.80 * nano 2.2.5 * net-snmp 5.4.3 * nfs-utils 1.2.3 * ntfs-3g 2011.4.12 * openssh 5.6p1 * openssl 0.9.8r * openvpn 2.2.1 * pciutils 3.1.7 * php 5.3.6 * pingtunnel 0.71 (and webif added) * privoxy 3.0.17 * quagga 0.99.17 * readline 6.1 * rrdstats 0.7.1 (inetd support for webservers) * samba 3.0.37 (inetd support for smbd) * sispmctl 3.0 * socat 1.7.1.3 * strace 4.6 * streamripper 1.64.6 * stunnel 4.35 * tcpdump 4.1.1 * tinc 1.0.14 * tinyproxy 1.8.2 * tor 0.2.2.33 * transmission 2.33 * uClibc++ 0.2.3pre (git snapshot) * usbutils 0.86 * vim 7.3 * vsftpd 2.3.4: add SSL support * zlib 1.2.5 - Remove packages, patches, libs, modules, tools: * removed xyssl (not maintained anymore, superseded by polarssl) * removed automount patch (superseded by freetzmount) - Firmware updates: * Please see FIRMWARES for the list of currently supported boxes and firmwares. - BusyBox: * updated to 1.18.5 - Web interface: * add additional information and possibility to mount/umount partitions (by herman72pb) * added favicon by atomphil (Freetz-Webinterface only) * buttons removed from mainpage, created new "system"-submenu + button "reconnect" from mainpage is replaced by rc.dsld (restartable by "daemons" submenu) + button "downgrade" from mainpage is now integrated into firmware-update page + other buttons from mainpage moved to "system"-submenu + backup & restore, firmware upgrade and Rudi-shell moved to "system"-submenu + added link to AVM-webinterface to "system"-submenu * create a support-file added * memory usage at services-page added - Other stuff: * add reiserfs to automountable filesystems * add IPv6 * Remove MOD_LIMIT variable + compressed size of freetz config file must not be greater than 32 KB + this is a tffs2 restriction === Freetz-1.1-stable === - Build system:: * Fix buffer overflow in tar See svn log for more details. === Freetz-1.1.4 === - Updated packages and libs: * callmonitor 1.15.2 (Adds features up to 1.18.5) * sane-backends 1.0.21 * tor 0.2.1.26 - Firmware updates: * Please see FIRMWARES for the list of currently supported boxes and firmwares. See svn log for more details. === Freetz-1.1.3 === - Web interface: * added favicon by atomphil (Freetz-Webinterface only) - Updated packages and libs: * bip 0.8.4 * php 5.2.10 (download for 5.2.9 was removed) * davfs 1.4.5 (older versions have problems with gmx) * dnsmasq 2.55 * dropbear 0.53.1 * openssl 0.9.8n (security issues) * openvpn 2.1.1 * stunnel 4.33 * tor 0.2.1.25 * vsftpd 2.2.2 * wget 1.12 - Firmware updates * Please see FIRMWARES for the list of currently supported boxes and firmwares. === Freetz-1.1.2 === - Updated packages and libs: * microperl 5.10.1 - Firmware updates * Please see FIRMWARES for the list of currently supported boxes and firmwares. === Freetz-1.1.1 === - Build system: * patch-system: use shell-fuction isFreetzType (by kriegaex) * patch-system: use shell function modsed - New patches (read online help for more info): * split tr069-remove-patches * Update usbstorage patches - Updated packages and libs: * callmonitor 1.15.1 - Firmware updates * Please see FIRMWARES for the list of currently supported boxes and firmwares. === Freetz-1.1 === - Build system: * fakeroot: bump version to 1.12.2 * xdelta: Disable build because we don't make use of it * toolchains: - add menuconfig option to adjust HOSTCC variable - add ccache for download- and kernel-toolchain - add two patches for gcc-3.4.6 + Fix failure with newer host gccs + Fix failure on some machines * uClibc-0.9.29: Add 2 patches from openwrt * kernel-toolchain: Add two patches for gcc-3.4.6 + Fix failure with newer host gccs + Fix failure on some machines * Bump squashfs3 version to 3.4 - New tools and hooks: * external * new make targets: - check-downloads: checks all downloads for availability (also $(pkg)-check-downloads) - mirror: downloads all package downloads into dl/mirror (also $(pkg)-download-mirror). This makes hardlinks for dupes in dl/ and dl/mirror to save disk space. * Add patch that enhances posibilities of /bin/onlinechanged: Based on changes by AVM we execute 3 locations on a call to /bin/onlinechanged: 1. /var/tmp/onlinechanged (compatibility to old behaviour) 2. /etc/onlinechanged/* (new AVM behaviour) 3. /tmp/flash/onlinechanged/* If a package needs actions on changes of online status create a script make/$package/files/root/etc/onlinechanged/$action_$package. - New patches (read online help for more info): * 7270: * Option to add Annex A firmware into image * Fix flashing of firmwares > 8 MB over webinterface * Add volume counter (7240, 7270) * AVM Plugins can be reintegrated into firmware * Fix wrong usb mounts status message in AVM webinterface (7170, 7270) * Add new status bar design (optional) - New packages, libs, modules: * bfusb 3-18-39 (firmware for bluetooth stick) * br2684ctl 20040226 * dtach 0.8 * external 0.1 * hd-idle 0.1 * httptunnel 3.3 * libtool 1.5.26 * linux-atm 2.4.1 * mcabber 0.9.9 * microperl 5.10.0 * nagios 2.11 * nano 2.0.9 * nfs-utils 1.1.3 * nfsd-cgi 0.1 * openssh 5.1p1 * pciutils 3.0.0 * portmap 6.0 * sablevm-sdk * socat 1.6.0.1 * squid 3.0.STABLE9 * tcp_wrappers 7.6 * tinc 1.0.8 * tree 1.5.1.2 * usbutils 0.73 * wol 0.7.1 * wput 0.6.1 * xpdf 3.02 * new kernel modules: bfusb, pppoe, pppox - Updated tools and hooks: - Updated patches: * add reiserfs to automountable filesystems * change nice names for USB devices (sdax > uStor0x, sdby > uStor1y, ...) * 3131: Remove "remove cdrom.iso" patch - Updated packages and libs: * bash 3.2.48 * bftpd 2.3 * bip 0.8.0 * callmonitor 1.13 * classpath 0.97.2 * curl 7.19.4 * cyassl 0.9.9 * devmapper 1.02.27 * dropbear: fixed init script not to start dropbear a second time when already running * dns2tcp 0.4.3 * dnsmasq 2.47 * dtmfbox 0.5.0 * e2fsprogs 1.41.3 * espeak 1.40.02 * expat 2.0.1 * glib 2.18.2 * haserl 0.9.25 * iodine 0.5.0 * jamvm 1.5.1 * libpopt 1.14 * lsof 4.81 * ltrace 0.5 svn 81 * mcabber 0.9.9 * ntfs-3g 2009.4.4: adds UTF-8 support * openssl 0.9.8k * openvpn 2.1_rc15 * php 5.2.9 * pingtunnel 0.70 * pjproject 1.0.1 * popt 1.14 * pptp 1.7.2 * ruby 1.8.6-p368 * rrdtool 1.2.30 * strace 4.5.18 * streamripper 1.64.0 * Stunnel 4.26 * tor 0.2.0.34 * transmission 1.60 * usbip 0.1.7 * vpnc 0.5.3 * vsftpd 2.0.7: add SSL support * tree 1.5.2.1 - Remove packages, libs, modules, tools: - Firmware updates: * Please see FIRMWARES for the list of currently supported boxes and firmwares. - BusyBox: * updated to 1.12.4 - Web interface: - Other stuff: + fix strip library function for 3170 + tune behaviour of freetz_download (retries: 3, timeout: 20s) + Integrate new AVM open source packages (04.70 and 7270_04.70) + rudishell: * show it only with security level 0 * don't allow to execute any code by clicking on a wrong url === release Freetz-1.0.1 === - Build system: * target toolchain: + AVM links against uClibc-0.9.29 in labor firmwares (actually all, dsl and gaming); we added an uClibc version flag so that correct version is used + added simple check for old or new uClibc; if you change uClibc version most stuff has to be rebuilt + Delete toolchain-distclean target for download toolchain + Add *-toolchain-{dir/dist}clean targets for download toolchain + fix some toolchain dependencies + adapt updates from buildroot - New tools and hooks: - New patches (read online help for more info): * remove tr069-stuff * remove dect-stuff from 7270 * remove DECT-files and modules on W900V - New packages, libs, modules: - Updated tools and hooks: * push_firmware now supports flashing from complete firmware images (by unpacking to tempfile) - Updated patches: * usbstorage: delete storage.sh patch and therefore add sed line to usbstorage.sh * remove tr069: remove tr069 stuff for 7170, 7270 * remove_dect: don't remove dect firmware files otherwise boot process will hang - Updated packages and libs: * avm-firewall 2.0.4_rc2 * bip 0.7.4 * callmonitor 1.12.3 * ctorrent dnh3.3.2 * curl 7.19.1 * cyassl 0.9.8 * devmapper 1.02.27 * dns2tcp 0.4.1 * dnsmasq 2.46 * dropbear 0.52 * e2fsprogs 1.41.1 * espeak 1.39 * fuse 2.7.4 * inadyn-mt 02.12.24 * iodine 0.4.2 * libftdi 0.14 * module-init-tools 3.12 * nano 2.0.9 * ntfs-3g 1.5012 * ncurses 5.7 * obexftp 0.22 * openssl 0.9.8j * openvpn 2.1_rc13 * php 5.2.6 * pppd 2.4.5 * privoxy 3.0.10 * quagga 0.99.14 * readline 6.0 * rrdstats: add uptime statistics * ruby 1.8.6 * sg3_utils 1.26 * streamripper 1.63.4 * stunnel 4.25 * tor 0.2.0.31 * transmission 1.40 * wget 1.11.4 * xrelayd 0.2.1pre2 - Remove packages, libs, modules, tools: - Firmware updates: * Please see FIRMWARES for the list of currently supported boxes and firmwares. - BusyBox: * updated to 1.11.3 - Web interface: - Other stuff: * kernel: + support for new sources (04.57) + add patch for multiple ftdi devices + add squashfs-3.3 patch for 2.6.19.2 + activate "replace kernel" for 7270 + Add mppe-mppc.patch to 2.6.19.2 + 2.6.19.2: use other net sched timer (AVM changed it) + Raise source version for 5050 to 04.33 + Activate AVM_CPMAC_SWITCH (affects all 4MB Ohios switch boxes) * push_firmware: Add MacOSX support * subdirs for downloaded an generated firmware-images to keep dl- and rootdir clean * mtd char devices were created with wrong minors * disable iptables-cgi for 7270 * add menuconfig option for 7270 with 16 MB flash * add option to disable Freetz version string * fix wrong PID in /var/run/httpd.pid after webcfg restart * fwmod_list: ignore case when searching for new firmwares === release Freetz-1.0 === - Build system: * adapted all packages to new macro style + please read make/README.Makefile for further instructions + look at make/Makefile.in for implementation + use global config.cache (make/config.cache) for all configure scripts + use macro for replacing 'libdir=/usr/lib' in *.la files * toolchains: Add menuconfig option to build static toolchains * kernel toolchain: + don't use crosstool to build kernel toolchain + update kernel toolchain to version 3.4.6 (same version as AVM) + use Binutils 2.17.50.0.17 for kernel toolchain * target toolchain: + uclibc: disable UCLIBC_HAS_FOPEN_LARGEFILE_MODE even if LFS is enabled + add uClibc-0.9.29 (doesn't work realy good and will be revised for next release) * download toolchain: + update because of above changes * Add squashfs3 utils + use squashfs3 for 7270 squashfs and if "replace kernel" is selected We have a kernel patch that makes 2.6.13.1 squashfs3 aware. Main benefit of squashfs3 are blocksize larger than 64kb. But these doesn't work with AVM 7270 stock kernel. * fakeroot: bump version to 1.9.2, put archive on dsmod.magenbrot.net to avoid being forced to version bumps if version becomes unavailable - New tools and hooks: - New patches (read online help for more info): * multid wait * remove annex firmware files (only 7270) * remove dsld * remove mediasrv * remove telephony * remove getcons (don't redirect serial console output) - New packages, libs, modules: * avm-firewall 2.0.3c * bash 3.2 * bip 0.7.2 * bluez-libs 1.0.25 * bluez-utils 2.25 * curl 7.18.1 * cyassl 0.8.5 * dns2tcp 0.4 * e2fsprogs 1.40.8 * fstyp 0.1 * glib 1.2.10 * iodine 0.4.1 * iptables-cgi 1.0.4 * irssi 0.8.12 * ldd 0.1 * libavmhmac 0.2 * libftdi 0.7.0 * madplay 0.15.2b * module-init-tools 3.3-pre11 * nano-shell 0.1 * nfsroot 0.1 * rcapid 0.1 * rrdstats 0.6.9 * ruby 1.8.6 * quagga 0.99.6 * samba 3.0.24 from avm gpl package * usbip 0.1.7 * usbroot 0.1 * vim 7.1 * vsftpd 2.0.6 * wget 1.11.1 * xrelayd 0.2 * xyssl 0.8 * new kernel modules: blk_dev_md, bnep, crypt_aes, crypto_algapi, crypto_blkcipher, crypto_cbc, crypto_manager, crypto_sha256, dm_crypt, nls_utf8, pl2303, udf, x_tables Some of these are not available for all boxes and/or firmwares. See menuconfig to check this. - Updated tools and hooks: - Updated patches: * remove assistant * remove cdrom * remove ftpd * remove help * remove samba * remove vpn files * samba * webmenu signed * webmenu wol * usbstorage patch + enabled by default + use fstyp to automount ext2, ext3, vfat and ntfs filesystems - Updated packages and libs: * apache 1.3.41 * bftpd 2.1 * busybox 1.9.2 * callmonitor 1.11 * checkmaild 0.4.4 * cpmaccfg 0.5 * collectd 4.0.7 * cryptsetup 1.0.5 * ctorrent dnh3.3 * dnsmasq 2.41 * downloader 0.2 * dropbear 0.51 * dtmfbox 0.4.1_rc4 * freetype 2.3.5 * fuse 2.7.2 * glib3 2.12.13 * haserl 0.9.24 * inadyn 1.96.2 * inotify-tools 3.13 * libelf 0.8.10 * libevent 1.3e * libdevmapper 1.02 * libid3tag 0.15.1b * libobenobex 1.3 * libpcap 0.9.8 * libpopt 1.13 * lua 5.1.3 * mc 4.6.1 * mtr 0.72 * nano 2.0.7 * ntfs-3g 1.2506 * obexftp 0.22 * openntpd 3.9p1 * openssl 0.9.8g * openvpn 2.1_rc7 * php 5.2.5 * pjproject 0.8.0 * rrdtool 1.2.27 * screen 4.0.3 * sispmctl 2.6 * strace 4.5.16 * streamripper 1.62.3 * stunnel 4.24 * tcpdump 3.9.8 * tor 0.1.2.19 * transmission 1.20 * vpnc 0.5.1 * zlib 1.2.3 - Remove packages, libs, modules, tools: * removed firewall-cgi * removed orange box * removed samba 2.0.10 - Firmware updates: * Nearly all firmware version were updated since the last release. Please see FIRMWARES for the list of currently supported boxes and firmwares. - BusyBox: * updated to version 1.9.2 * removed symlinks to non-existing applets * make some additional busybox features configurable in menuconfig - Web interface: * Freetz + generally, the Freetz-webinterface was updated to be more standards- compliant, load faster, allows for larger amounts of input data, and looks better with different screen resolutions and settings + the width of the webinterface display is now configurable + status of mass storage devices can be displayed in webinterface + more pages are localized + some actions like saving package options are more verbose + implemented avm-firewall web interface + implemented webinterface for samba package + added simple web interface for mini_fo + added favicons by cuma and han-solo * AVM + orange box was removed because it is outdated - Other stuff: * DSMod was completly renamed to Freetz * new unix-conform user management * help texts in menuconfig extended and clarified * autorun/autoend functionality for mass storage devices * use tmpfs instead of ramfs for /var * enabled more packages for inetd * recover-eva: + fix error that tools/tar wasn't found on some systems + fix booting kernel image directly from RAM * fwmod: + add FWMOD_PATCH_TEST and FWMOD_NOPACK environment variable By setting these to y the build process can be interrupted after patching the firmware respectively before packing the firmware. + use "-no-exports, -no-progress and -no-sparse" as additional parameters for squashfs3 + optimise the way FILESYSTEM_BLOCKSIZE is determined * kernel: + activate EPOLL support (needed by AVM phone book daemon (pbd)) + reactivate "replace kernel" for firmwares with up to date sources + add kernel patch for squashfs3 + add kernel patch for ip_conntrack: + don't calculate hashsize, use 256 buckets + ip_conntrack_tcp_be_liberal=1 * add extract-images, a little heuristic (and not very fast) tool which can extract bootloaders (urlader.image) as well as hidden root kernel + SquashFS images (kernel.image) from any type of compound file, e.g. recover-EXEs. * add hexgrep, an awk-driven tool for matching hex sequences in input files It shows decimal file offsets as well as the matched sequences, because the latter are regex-matched and can thus vary. * add shell script for unpacking LZMA-compressed Linux kernel to tools * Rename tools/push_firmware.sh to tools/push_firmware and tools/lib_report.sh to tools/lib_report in order to unify naming of shell scripts tools/*. For instance, tools/ds_* do not have '.sh' extensions either. * add 64-bit fix for TI-chksum === release ds26-15.2 === - Build system: * Makefile: be more tolerant towards users of SUSE oder Mandriva distributions using inofficial GNU diffutils-2.8.7 package (official version is 2.8.1) by using '-U 0' instead of '-u0'. * push_firmware.sh: add heuristic check for 'kernel.image' magic bytes and for firmware tar image erroneously specified as parameter. Add required package 'util-linux' for 'hexdump' to cygwin prerequisite notes. * fwmod: include .config and addon/static.pkg into firmware image for further reference, e.g. user support * Menuconfig online help: more precisely describe that each firmware needs not only at least one branding, but that this branding must correspond to the one defined in the boot loader environment. The shell command for determining it is also provided in the help text. * GCC 4.2.1 * Binutils 2.17.50.0.17 * Add "replace kernel" capability to Speedport configurations by integrating T-Com GPL sources (r4884 for W701V & W900V, r7203 for W501V) * Move definition of VERBOSE variable from make/Makefile.in to Makefile, because it is not only used for packages, but also for tools and toolchain. I had errors during "make tools", because in my local environment, there was VERBOSE=no, and such effects should be avoided. Maybe we should think about a main Makefile.in. * Libmudflap not needed in toolchain (gcc.mk), cf. https://dev.openwrt.org/changeset/7531 * uClibc: remove AVM_VERSION form config so there is only one config file for all versions, because there were no differences between versions except LFS. * Move 'modpatch' shell function to tools/ds_patch and dot-include it from there. * ds_patch works as usual and still reacts to DS_VERBOSITY_LEVEL and AUTO_FIX_PATCHES. Some improvements: + script can also be executed directly + check for valid number of paramaters + usage help + new optional 3rd parameter for 'patch -p' path level + react to "$VERBOSE"=="-v" with verbose output so as to be prepared for script calls from *.mk which are planned to replace direct 'patch' calls. This should help leverage the auto-fix feature to tools, package and toolchain source code patches in the future. + handle case of empty original file + add unsupported, but practical little function 'strip_patch_level' which was used to unify 200+ patches. * Makefiles *.mk: replace all direct calls to 'patch' from *.mk by calls to newly defined variable 'PATCH_TOOL:=$(TOOLS_DIR)/ds_patch'. * Canonise all source code patches to patch level 0 (-p0). Auto-fix a lot of patches by calling all available *-source targets from tools, packages and toolchain. Statistics: 250+ patches checked, 70+ updated. 200+ hunks did not fit perfectly and were auto-fixed, 34 of them with fuzz 1 (18) or fuzz 2 (16). - New packages, libs, modules, tools, hooks: * Integrate Media Server from USB Labor (by derheimi) for boxes with USB host; needs testing * Rrdtool 1.2.23 * Collectd 4.0.5 * Libart 2.3.19 * Libfreetype 2.1.10 * Libpng 1.2.10 * GLib 2.12.12 (lib version 0.1200.12) * Libiconv 1.9.1 (lib version 2.2.0) * Gettext (libintl) 0.16.1 (lib version 8.0.1) - Updated packages, libs, modules, patches: * NetSNMP bugfix provided by derheimi (cf. http://www.ip-phone-forum.de/showpost.php?p=902808) and upgrade DS-Mod package version to 0.4b * NTFS-3G 1.710 * Tor 0.1.2.16: critical security bugfix, see http://archives.seul.org/or/announce/Aug-2007/msg00000.html; major bugfixes as described in http://archives.seul.org/or/announce/Jul-2007/msg00000.html. * Ctorrent dnh3.2 * Haserl 0.9.18 featuring FIFO (pipe) upload capability, so an uploaded archive ist not stored on the box twice (packed and extracted), but can be uncompressed on the fly. This is used by the new firmware update assistant (see below). - Firmware updates: * 7170: Labor DSL 29.04.99-7995 * 7170: Labor WLAN 29.04.98-8020 * 7140: integrate international versions + English, annex A: 39.04.34 + English, annex B: 30.04.34 - BusyBox: * wget patch provided by RalfFriedl: URL with user/password does not work. Uuencode needs string length, not buffer length. NOTE: fixed (in a different way) in upstream since rev. #18955, thus patch can be removed in the future. - Other stuff: * DS-Mod web interface, part 1: layout and language + Change layout a little bit: Both graphical bars now show the percentage on the right hand side of the bar. Both bars show usage information in a common way ("x of y KB used"). + Rearrange buttons on the bottom so they are all the same size, resulting in a cleaner layout. Also reorder them so as to make "reboot" the last one. + Update some de/en language strings (only on main screen, not on subscreens) * DS-Mod web interface, part 2: new firmware update button + The new update assistant lets the user select a FW image and choose if he wants to stop AVM services before flashing (prepare_fwupgrade). + After successful upload, the FW is extracted (tar) and /var/install is called. + Subsequently the output of all steps is shown to the user along with the content of /var/post_install, if it exists. + It is then up to the user if he wants to reboot ("real" FW update) by clicking the corresponding button on the main screen or continue working without a reboot (pseudo update for installing/activating some add-on not requiring FW flashing). + Even if /var/install has been executed successfully and /var/post_install has been created, the user may choose to manually delete post_install in order to interrupt the firmware update process, because if a reboot takes place later and post_install is not available, the firmware will not be flashed, even if /var/tmp/kernel.image still exists. This provides the user with maximum flexibility (and self-responsibility). + Talking about self-responsibility: The assistant does NOT stop any DS-Mod services. If and which ones should be stopped is up to the user who should make up his mind and act accordingly BEFORE clicking the update button. * Auto-select vfat.ko in order to overwrite AVM's buggy fat and vfat modules with our own versions, because they segfault. This auto- selection can be reverted as soon as AVM provides fixed firmwares. * NTFS-3G + FUSE: fix problems * Several NetSNMP makefile fixes * 2170: change kernel layout from ar7 to ohio * Bintuils: add patch by spambin + several other patches and enhancements * Mtr: forgotten dependency ncurses * Transmission: fix problem with ar and ranlib * W900V: 5 answering machines are better than one * Kernel patches: add + update several ones * Rcapid: because of ongoing download site access problems, rcapid.tgz was put on our mirrors, which is not a licence problem because of the GPL the package is under. Thus, the source package is now downloaded using tools/ds_download. * Inotify-tools: fix typo in makefile * W501V: fix firmware patches (don't replace multid, don't copy igdd and libs, use 7141 as tk-firmware) * Speedports: symlink '/usr/www/' should always point to '/usr/www/all', not just 'all', otherwise LCR Auto Updater cannot be initiated properly (mount -o bind failure) * 300IP as Fon: fix symlink (boot failure after factory reset) * Libelf was missing in make/libs/Makefile.in * W701V: fix kernel oops * W701V: update web interface by adapting patch to Speedport2Fritz * Kernel build: disable NTFS module, enable UnionFS module * Gdb for target: fix makefile; add GDB_STAGING_DIR and make it order-only prerequisite for gdb target binaries, so the directory is created on demand * Libffi-sable: fix download URL * OpenSSL: build with zlib-dynamic * tools/depmod.pl: dos2unix line feeds === release ds26-15.1 === - Build system: * Add "SHELL:=/bin/bash" to Makefile because of this: http://www.ip-phone-forum.de/showpost.php?p=896043 I.e. the build now explicitly requires bash instead of sh, so we can use extended file name expansion functionality. * New target 'push-firmware' runs tools/push_firmware.sh to conveniently flash a recently build firmware * New target 'config-clean-deps' automatically deselects all kernel modules, shared libraries and optional BusyBox applets which are not selected by packages explicitly requiring them. * Add sanity checks to Makefile: + Do not run make as root + Heuristic check for falsely unpacked mod archive kriegaex: Thanks to Ralf Friedl for this idea, even though I implemented the checks in a different way technically. :-) - New packages, libs, modules, tools, hooks: * Mtr 0.69: mtr combines the functionality of 'traceroute' and 'ping' * Espeak 1.27 * Downloader CGI 0.1 by hermann72pb (ip-phone-forum.de) See http://www.ip-phone-forum.de/showthread.php?t=134934 - Updated packages, libs, modules, patches: * Midnight Commander (MC) pimp-up without version bump: + Remove 143 KB of unnecessary syntax highlighting definitions in 22 files, because MC 4.5.0 only supports hard-coded syntax highlighting. Thus, the additional files were never used. The fascinating thing is that nobody ever complained about this, so the other language types do not seem to have been missed. Still supported are unified diff, LSM, shell script, Perl, Python, nroff (man-page source), HTML, Pascal, LaTeX 2.09, C/C++, change-log, makefile. Others would have to added inline to the source code. + Update MC default settings, hopefully nobody will complain: # Editor tab width changed from 8 to 4 # Learn keys set to values which putty sends with TERM=xterm in telnet and ssh sessions. The assumption here is that most users probably use Putty on WinXP as their preferred terminal client. Other users can still create their own ~/.mc/ini in debug.cfg or otherwise, assuming that if they are Linux users who need this, they probably are more geek-ish than Windows users. # A few other minor changes which I (kriegaex) had in my long-tested private ini-file + Online help is a separate menuconfig option now. If chosen, the file (115 KB) will be copied from the source to the package directory, otherwise the file will be removed. + Syntax highlighting is a separate menuconfig option now. If switched off, this saves 70 KB in the main binary. Known problem: If syntax highlighting is deativated, somehow mcview does not start the internal MC viewer directly anymore, but yields the normal MC user interface. Anyway, viewing files with F3 from within MC still works. + Internal editor mcedit (activated by F4) can be decativated in menuconfig. If you want to use vi or nano instead, F4 will still work. By default, vi is called on the box, but exporting EDITOR so it points to another editor of your choice will get you the combination of file manager and editor you desire. :-) Switching off this feature saves another 86 KB in the main binary. + The defaults for the new menuconfig options generate a binary with the feature set known from the last package version. * DTMFbox: + Fix scriptadmin.sh + Add espeak (see "new packages" above) * Callmonitor 1.9.7 tries to fix performance problems with too many parallel automatic reverse phone number lookup during start-up. This could freeze a box so it had to be recovered. * Libncurses 5.6 * Checkmaild 0.4.2: fix segfaults * OpenVPN package fixed (one file in package without LZO was not executable) * Dnsmasq: make dnsmasq aware of possible igdd (UPnP server) absence, so it starts multid without UPnP. Furthermore, fix a few quoting problems possibly leading to errors during start-up. Hopefully, this fixes some of the recently reported problems (untested). * Vpnc: increase username maximum length to 40 characters * FUSE 2.7.0 plus fix: includes were not installed into toolchain * NTFS-3G: remove mknod and replace insmod with modprobe * Cpmaccfg 0.4 * Netsnmp: fix package so defaults are applied correctly * Update and fix several firmware patches (also see "other stuff" below) - Firmware updates: * 5050: firmware 08.04.34 * 3020: firmware 09.04.34 * 3030: firmware 21.04.34 * 7170 Labor WLAN: firmware 29.04.35-7816 * 5140 (NEW): firmware 43.04.37 - welcome to the ds26 family ;-) * 7170: firmware 29.04.37 * 7141: firmware 40.04.37 * W701V: set 29.04.37 as tk-firmware - Other stuff: * Wrap /sbin/ar7login with shell script in order to achieve normal user/password logins with telnet, even if telnetd is started with explicit ar7login parameter by 'telefon' (hard-coded). Exception: If no root password has been defined yet, proceed to renamed ar7login.bin for web password login. * Extend editor wrapper script to support disabling of the "do you really want to save" question. How to: echo 0 > /tmp/flash/ask_save; modsave * AVM web menu: Once more change the way the host part of the target URLs is determined. The host name might not always be a good idea if there are multiple boxes with the same host name in one LAN, e.g. a 7170 and a "fritzed" W701V both named "fritz.box". Where would "http://fritz.box:81" really point to, then? So in this case usually the user will call their respective web UIs using their local IPs, and this is what our scripts see in their environment as part of HTTP_REFERER. We pick out the host/IP part and use it as our target host/IP for the redirection to the DS-Mod or WoL web UI. * Improve script tools/push_firmware.sh so it accepts an optional IP parameter (not all boxes have 192.168.178.1) * Yet another push_firmware.sh improvement: script is now Cygwin-enabled (needs ncftpput command line client from ncftp package), so a firmware can also be easily updated from Windows via command line. This does NOT mean that ds26 could be built on Cygwin, so please do not ask about it. * Bugfix for "Eumex 300IP as phone" 3rd phone patch * Midnight Commander (mc): fix missing terminfo problem * Fix FUSE install (fuse.pc was not copied, thus pkgconfig could not detect it) * Ppppd: fix missing prerequisite (libpcap) * Set eumex.ip as hostname for 300ip_as_fon * Fix OpenSSL compilation with gcc-4.2 (also helps with dependent OpenVPN problems) * Add 'chmod 755' for libreadline/libhistory so they are executable * Allow BusyBox to install applets to /usr, e.g. telnetd is now under /usr/sbin insetead of /sbin, because 'telefon' is looking for it there when a user tries to switch it on via "#96*7*". * Fix typo in PPPD make file: TARGET-CFLAGS -> TARGET_CFLAGS * Fix CFLAGS for several other packages * Extend "remove UPnP" patches to make rc.S aware of possible dsld parameter '-g' for starting without igd * W501V: Copy ar7login from TK firmware to ds-mod filesystem, because the 501 does not contain this binary by default. Background: ar7login is needed if a console login with the web password should be performed, e.g. in telnet sessions. * Orange!Box patch failed for W701V -> create patch variant for Speedport * W701V build: fix copy routine for defaults * Add patch for W900V (diff from 7150 web UI to sp2fritz web UI) * Speedport boxes: + ATA patch did not work as expected on the Speedports (at least W501V and W900V): rc.S needs to be patched, too. This makes ATA avaiable to the Speedports. + Add patch that should fix password problem after reset to factory defaults + Force favicon symlink to avoid warning * Fix Tcpdump CFLAGS * Device tables, mounts etc.: + Add /dev/misc/fuse to device.table + Remove devpts mount in rc.S + Add /dev/pts to device.table + Fix mount of /dev, /var, /proc and /sys + Put fstab patch in own file, should be the same for all boxes * Tor / libevent: disable epoll support in libevent due to unresolved problems. This fixes recently reported Tor segfaults. === release ds26-15 === - Many makefile changes, some big, some small, some cosmetic, to * make default target indirectly dependent on 'precompiled': + simple 'make' now also executed 'precompiled' + old 'firmware' target renamed to 'firmware-nocompile' + new 'firmware' target depends on 'firmware-nocompile' and 'precompiled' + The purpose of 'firmware-nocompile' is to enable users to build a firmware manually in special cases (e.g. 'precompiled' failure or the wish to build packages containing binaries). * make the hierarchical build more consistent, * avoid spurious unnecessary rebuilds, * no longer support "external compiler" option in menuconfig. This means that ds26 does not support external toolchains anymore, because we assume that experts who need this will manage to set it up by themselves using links etc. * add makefile prerequisites for target binaries so as to avoid files being stripped and copied unnecessarily. How to: + avoid doing anything in synthetic targets like xy-precompiled + make sure to have targets for source binaries as well as target binaries (e.g. source/xy-1.3/src/xy and packages/xy-1.3/root/usr/bin/xy) * add xy-uninstall to all packages and shared libs, * update make files of eight (8) packages which have sub-options influencing the build result in menuconfig, so they are automatically rebuilt whenever a relevant option has changed. The packages are: Bftpd, Bird, Dropbear, OpenVPN, Apache, PHP, Tinyproxy, Nano. This was achieved by the following structural changes in *.mk: * add config option "all modules", if "replace kernel" is active, * add oldconfig targets for kernel and busybox * make more packages work with + without LFS (large file support) * compile gcc with "--with-float=soft", * not always include toolchain stuff into big makefile, * add libgcc_s to DS_INSTALL_BASE (i.e. it will always be installed) * add each single 'tools' package to 'noconfig_targets', * make DL_DIR and PACKAGES_DIR order-only prerequisites for many dependent targets, * rename busybox-tools targets so they do not collide with busybox package targets anymore, but adhere to naming conventions instead, * add menuconfig bub-section for a few BusyBox applets (currently inetd, ar, diff, patch - see below in BB section), so they can be chosen directly from the main configuation dialog (Advanced options -> BusyBox) * 'make %lib%-clean' will now remove files from toolchain and root/(usr/)lib * new make macro INSTALL_BINARY_STRIP for more easily and cleanly stripping and installing binaries * delete firmware images in common-clean, fix delete command, * get make structure more in sync with Buildroot, * create a clearer dependency structure and * achieve world domination in general... - Multi-job build improvements: * Added new config option for multiple jobs. This can now be configured in menuconfig. * New multijob config option will be used for kernel toolchain, target toolchain, libs and packages. * Targets that cannot be compiled with multiple jobs should use $(MAKE1) instead of $(MAKE). * multijob.sh is not needed anymore and will be removed in future releases. It now does not do anything anymore, just prints a "deprecated" warning. * Target "packages-precompiled" is removed because it is obsolete with these changes. - Enhance fwmod, * so it can be used to handle FW images by either specifying an alternative DOT_CONFIG file name or by explicitly providing command line parameters for often-used settings needed to unpack different firmware versions. Just call fwmod without any parameters to get a proper description. BTW: The DOT_CONFIG alternative may be a very small file consisting only of about five settings, if fwmod is just used to unpack (-u) an image. * output name of rejected patch file during build in fwmod, * create functions for echo, beautify symlink creation in fwmod, * include timestamp into firmware name, * add new menuconfig setting DS_DEVELOPER_VERSION_STRING so as to optionally include SVN repository revision numbers into + firmware image name + target file /etc/.subversion + target script /etc/version * make patch output a little more informative + readable in verbosity level 2: print patch file names and separator lines ("---...") * fix typo: libc.so.0 was not copied into firmware, but as it already exists nobody noticed this. * New feature for modpatch: If $AUTO_FIX_PATCHES == "y", then the applied patch is analysed and automatically fixed, if fuzzy. Now what the h... does that mean and how does it work? 1. Perform dry run in order to check if the patch will be both successful *and* fuzzy (i.e. containing moved or fuzzy-fitting hunks). 2. If so, enter auto-fixing mode and generate a list of all files changed by the patch. 3. Apply patch with the option to create a 'foo.orig' backup for each patched file 'foo'. 4. Finally, auto-fix the original fuzzy patch by creating a new one, cycling through each pair 'foo.orig' / 'foo', creating a fresh 'diff' for them, but preserving the old patch as 'xy.patch.orig'. 5. The 'foo.orig' files are cleaned up once they are not needed anymore, but the 'xy.patch.orig' files are being kept so they can be compared to their auto-fixed versions. Nobody is perfect, so a closer look should be taken. The next time 'fwmod' is run with the newly created, polished-up patches, they should all fit perfectly - no moved hunks, no fuzzy matches. As an exception, modpatch does not try to fix patches containing failed hunks but exits 'fwmod' as usual in this case, because the patch needs to be fixed anyway. It should be enough to fix it roughly so it can be applied as a fuzzy patch - modpatch can do the rest in the next run. ;-) - New packages, libs, modules, tools, hooks: * Added section 'debug helpers' in menuconfig * Debug helper package strace (binary only) * Binary package inotify-tools (inotifywait, inotifywatch), including patches to inotify-enable uClibc * Init script for inotify-tools file access logging (via inotifywait) * New shell function API (/usr/bin/kernel_args) to handle variables defined via boot loader environment variable 'kernel_args' (found in /proc/sys/urlader/environment). A limited set of values are allowed for variables: integer values >= 1 or 'y'|'n'. This makes it easy to handle cases like this: + Permanently (de-)activate certain functionalities during the system init process such as logging, mini_fo overlay file system etc. + Temporarily activate those functionalities by assigning a countdown value to them, e.g. 'FooBar=3 -> 2 -> 1 -> n', so after a certain number of reboots the functionality would deactivate itself. This can be helpful if you want to make sure that a box not booting up with an activated feature for any reason does not get a recover case, but heals itself be just booting up a number of times, until the countdown is down to zero, setting the corresponding variable's value to 'n'. * Boot-time hooks for /etc/rc.S to activate both + inotify-tools file access logging and + dmesg (klogd ring-buffer) output so as not to lose its earliest entries because of the small buffer size of 16 KB. Both logging features use the kernel-args API (/usr/bin/kernel_args) in order to dynamically determine if they should be activated during the boot process. * Debug helper package ltrace 0.5-svn-77 (binary only) * Libelf library needed by ltrace * Debug helper package lsof 4.78, binary-only * Spindown-CGI and sg3_utils (by IPPF user 'derheimi') * Libusb added to menuconfig * Apache 1.3.37 + PHP 5.2.1 package group added. Please cf. menuconfig online help (press 'H' at packages / testing / Apache + PHP) for more information and/or check out http://www.ip-phone-forum.de/showthread.php?t=127089 for tips, tricks, patches and extensions. * Ctorrent dnh3.1 * Bluetooth kernel modules * Nano editor 2.0.6 incl. a set of ten (10) different build options for inclusion of more features at the cost of some disk and RAM space; options are extensively documented in menuconfig online help. * OpenNTPD 3.9p1 * Netcat 0.7.1 * Libcapi20, Common ISDN API (CAPI) 2.0 library 3.0.4 (needed by rcapid) * Rcapid, Remote CAPI daemon 0.1 from isdn4linux (by Nicolai Ehemann) * DTMF-Box 0.3.9 (by Bodega) with pjsip (statically compiled) * Add generic editor wrapper script 'wrap_editors' which can handle files in /var/flash, /var/mod/etc/conf and /var/tmp/flash and call multiple editors via symlinks. Now all n/m-scripts (nvi, mvi, nmcedit, mmcedit, nnano, mnano are just symlinks to 'wrap_editors'. * New helper script 'tools/lib_report.sh' generates a report showing which DS-Mod binaries depend on which shared libraries. Usage: tools/lib_report.sh [ []] ds-mod base directory defaults to '.' fw base directory defaults to 'build/original/filesystem' I.e. the easiest way to call the script is from ds-mod base without parameters in order to get a report about the original file system. Call tools/lib_report.sh . build/original/filesystem to generate a report about the modified file system. * New helper script 'tools/push_firmware.sh' to flash a 'kernel.image' directly to mtd1 using FTP via ADAM2. This is a convenience function for people who are tired of typing in these commands every time. Use at your own risk! * Two new EXPERIMENTAL patch options for menuconfig directly on the front page: 1. Replace AVM websrv by BusyBox httpd and remove web server from firmware image. /etc/init.d/rc.websrv starts + stops httpd on port 80. 2. Remove UPnP daemon (igdd) including two libs, several UPnP XML schemes and a GIF image. If both 1 + 2 are chosen, libwebsrv also becomes obsolete and will be removed, because only those two daemons seem to use it. All in all, those two features in combination make kernel.image about 76 KB smaller on my 7170. The figures should be similar for other boxes. Furthermore, not starting igdd + libs and using the smaller httpd instead of websrv should also save a considerable amount of RAM. both effects are especially desireable for smaller boxes like 5050/7050. * pppd 2.4.3 - Updated packages, libs, modules: * (Download) toolchain (target) + add gcc-4.2.0 + binutils 2.17.50.0.16 and make them default + Remove uclibc download package for download toolchain, instead copy libs from toolchain * BusyBox 1.5.1 (target and tools instances) + a few applets are chosen by mod packages requiring them: Debootstrap -> ar, Inetd-CGI -> inetd + a few applets can be selected from DS-Mod menuconfig, indirectly changing BB configuration: diff, patch + getcons applet reactivated (broken patch finally repaired) + fix stty option parsing, reactivating old 100-profile.patch + activate command line editing + tab completion for 4mb_26 + patch that fixes shifted usage messages (--help) * Inetd support for several server daemons (Telnetd, DS-Mod Web UI, Dropbear) * Lua 5.1.2 * Ntfs-3g 1.516 * Callmonitor 1.9.5 * Syslogd-CGI 0.2.2: allow rotating log files with a value of '-b 1' * SquashFS 2.2-r * Lzma 4.43 * Iptables 1.3.7 * Classpath 0.95 * FUSE 2.6.5 * Dnsmasq 2.39 * Transmission 0.72 * Libevent 1.3b * Tor 0.1.2.14 * Rudi-Shell: save screen real estate by suppressing HTML H1 element "Rudi-Shell" * Cifsmount package 0.2 features a CGI (web config) interface for up to three mounts, start/stop scripts and convenience script 'cifsmount' for more easier command line (un-)mounting. * Debootstrap build process simplified by removing the "convert Debian package to DS-Mod package" intermediate staging step and providing an extensive description about how to build + update the DS-Mod package in packages/debootstrap-0.3.3.2/README instead. This results in + an updated download package 0.2 with mentioned README and without binary + the removal of 01_trap.patch (patched file is part of DS-Mod package) + a dramatically simplified debootstrap.mk * CRC_CCITT compiled as kernel module (Config.4mb_26) * Fakeroot 1.7.1 (build tools section) * uClibc++ 0.2.2 * Libpcap 0.9.6 * Tcpdump 3.9.6 * OpenVPN 2.1-rc4 (incl. option for management console) - Firmware updates: * 7170 Labor USB 29.04.34-7553 * 7170 Labor Phone 29.04.34-7269 * 7170 Labor VPN 29.04.34-7728 * Add 7170 Labor DSL 29.04.34-7584 * Add 7170 Labor WLAN 29.04.35-7787 * Remove 7170 Labor Eco support , because it is obsolete. Its features have been included into the current regular firmware releases. * 7150 firmware 38.04.32 * 7050 firmware 14.04.33 * FB Fon firmware 06.04.33 * Add FB Fon WLAN firmware 08.04.33 * Add Eumex300ip, uses Fon firmware 06.04.33 * Add 3130 WLAN firmware 44.04.34 * Add Speedport W501V (original fw 28.04.38 + 7140 fw 30.04.33) * Remove 7140 international (kernel 2.4.17_mvl21) * Add AVM web interface for W900V * Extension for W701V: /sbin/mailer is copied from tk-firmware * Add ATA Patch for W701V and W900V (Inet over LAN A) * W900V: make web interface available for OEM=avm * W900V: copy modules from tk-firmware * W900V: add patch to copy libgcc_s.so.1 from AVM firmware to modified DS-Mod firmware. This is just a temp solution, as the original T-Com firmware does not have libgcc_s.so.1 - and since a lot of DS-Mod's stuff needs this lib, you sould install it ;) * W701V: integrate copy modules: modules are copied from tk-firmware (29.04.33), so self.built kernel can be used * W701V: accept OEM avm * W501V, W701V, W901V: copy igdd from AVM firmware, so UPnP can be used with the "fritzed" Speedports, too. The patch to remove UPnP can also be applied (no, don't say it!). * run_mount patch enables all firmwares with USB host to mount all file systems, not just FAT - Other stuff: * Fix about 150 or so patches to apply cleanly without any failures or even fuzzy matches * Fix tools/ds_download (fallback mirror download did not work) * Mount sysfs to /sys, symlink /var/sysfs to /sys * New BusyBox httpd patch to make it work better with symbolic links in CGIs, effectively enabling it to be used as an AVM websrv replacement * Sync uclibc.mk with buildroot structure * depmod.pl moved to tools directory and removed from kernel build * Fix netsnmp build (fails with multiple jobs) * Fix bird build (fails with multiple jobs) * Mention 'make precompiled' in previously outdated README * Add uClibc config for 04.30 * Fix typo in make/libs/Makefile.in concerning libpcap, making it dependent on libncurses config switch accidentally. * Fix awk segfault (busybox) when called without any parameters * Clean up some obsolete code in Config.in and fwmod * Fix small error in netsnmp package (update to 0.3): create /var/lib/snmp * Mod version number now says ds26-14.x rather than ds-0.2.9-14 * Bugfix for tools/busybox: make-include tried to apply all tools patches instead of only busybox-specific ones. * Remove cygwin howto because it's out of date * Add several fallbacks for CGI variable HTTP_HOST missing in BusyBox httpd into files /usr/bin/dsmod_{status,wol}. Note: This is a workaround, normally httpd should be enhanced. A corresponding request was sent to the BB mailing list. * /usr/bin/modload: don't exit if loading /var/flash/ds_mod fails but create new file * Add patch that opens a controlling tty instead /dev/console; cf. http://www.busybox.net/lists/busybox/2007-May/027448.html * Remove terminfo stuff from MC, Nano and Screen packages, because it can be copied from the toolchain staging dir. * Activate unionfs module build in kernel configs * Change name of kernel config files to differentiate between ar7 and ohio. Until lately, all 4mb boxes were ar7 and all 8mb boxes were ohio. Since W501V we have a 4mb ohio box, so the old naming scheme has become inappropriate. * Replace package URLs (eiband.info -> magenbrot.net) because Danisahne will soon discard his domain name. eiband.info ist still mentioned in several package README files, but I do not care, because this is plain cosmetics. (kriegaex: And Daniel deserves credits anyway, anywhere.) === release ds26-14.4 === - Busybox patch for 'ash' shell: When a remote client (e.g. ssh) was killed, the remaining shell process would get into an endless loop stressing the CPU with >90%, making the system slow, unresponsive and possibly instable. - Rudi Shell: new optional environment variable (or non-GUI POST parameter, respecively) FORM_download_name enables users to define a target name for files downloaded via scripting. - Menuconfig: help texts for all brandings explaining briefly what a branding is and explaining that at least one of them should be selected for the firmware to work. - Bump callmonitor version to 1.9.2 - Fix busybox rebuild when config changes (copied from openwrt) - Add FritzBox Fon (06.04.30) to ds26 - Disable CONFIG_KMOD kernel option (module auto-loader) because of missing symbol in original kernel. This is needed to make iptables run smoothly, but also makes it necessary to load iptables modules with modprobe or insmod. - Update Firewall CGI to explicitly use modprobe/rmmod, because CONFIG_KMOD was removed from default kernel config - Version update for USB and VPN 'labor' firmware (AURA 7125, VPN 6937) - Ntfs3g: bump version to 1.417 - Fix typo in make/avm-gpl/avm-gpl.mk - Minor menuconfig improvements: * Don't show open source package selection, always usedefault (currently 04.30 for 7141, 04.29 for all other supported boxes) * Rename "firmware type" to "hardware type" * Rename "firmware version" to "firmware language" - Kernel build: do not use /sbin/depmod while cross-compiling - Integrate new AVM open source package (7141-04.30) - Bftpd: bump version to 1.8 and update download site - Fix typo in toolchain/make/target/uclibc/uclibc.mk causing make to always use the precompiled uClibc, the manual build never got fired. - Update Speedport W701V to firmware version 33.04.26 - Improved menuconfig tool adopted from buildroot2: * Comprehensive online help * Options' help texts also show dependency information: + Which condition(s) does an option depend on? + By which other option(s) was an option selected? + Which other options does an option select? + Where is an option defined (file name + line no.)? * Seach mode: wildcard search for option names via "/" hotkey. By the way: search mode also has online help. - Added download mirror #3 to Config.in - tools/make/busybox-tools.mk: activate download target on demand to avoid collision with identical target for regular busybox on one hand and to avoid make complaining about a missing target when building tools busybox from scratch on the other hand. - tools/ds_download: changed 'od -D' to 'od -d' to make it compatible with old versions of GNU coreutils (e.g. od 5.2.1) === release ds26-14.3 === - Cross-cutting changes in ds-mod-specific package download: * New shell script tools/ds_download provides a uniform way to download ds-mod-specific packages such as application and add-on packages as well as precompiled toolchains. The script first checks a predefined list of download servers (mirrors) and only uses an optionally provided "original" server as fallback, which is important for new package versions not available on mirrors yet. * New variable DL_TOOL in Makefile points to tools/ds_download * List of download sites (mirrors) can be edited in menuconfig (Advanced options -> DS-Mod package download sites). Currently there are five slots for download servers, two of which have default values. Two others are reserved for later use and #5 is freely editable by users. This enables users to set up their private mirrors on their own LAN or WAN servers. * *.mk files loading mod-specific packages have all been made "mirror-aware", i.e. they all call DL_TOOL with the appropriate parameters. Specifically, all former primary download sites have been preserved as fallback servers. - Major menuconfig restructuring. For example (there is more): * Iptables' shared libs and kernel modules are dependent on a top level setting and can be deselected as whole groups. * JamVM + classpath + ffi-sable can now be found in one place and are also interdependent. * Sub-menus in packages section * Major case first letters in package names * More and improved menu descriptions * Removed redundant library descriptions for iptables and classpath stuff by putting them in groups (see above). * Some changes in include structure ('source' commands in Config.in files), e.g. several libs' descriptions are now closer to their required top level applications. - Fix firmware build: iptables binary was always included in image, even if not selected in menuconfig. - Fix syslogd ring buffer size parameter leading to "Starting syslogd...failed"; package version updated to 0.2.1 - Mini_fo package now listed as regular package, not "testing" anymore (no known problem reports) - Tinyproxy package now listed as "testing" and "unfinished, experts only", because there is no web config yet. - Obsolete package telefon removed (and "obsolete" section with it) - Fix make target 'busybox-tools-clean', so busybox and makedevs are removed. This avoids an error when subsequently calling 'make precompiled' again. - Fix mini_fo: use modprobe instead of insmod, because module path can differ with other box types. Package updated to 0.2. - External IP can now be determined without calling external servers: Shell script /bin/get_ip prints external IP to stdout, giving the user a choice between three different methods: -w, --webcm - webcm CGI handler method [default] -d, --dsld - showdsldstat method (use only with kernel 2.6 firmwares) -e, --extquery - external site query method (ask whatismyip.org) - Fix typo in make target 'kernel-clean' - netsnmp.cgi is now executable, so the package can be web-configured. - Fix typo in kernel/Config.in: DS_MODULE_crc-ccitt -> DS_MODULE_crc_ccitt. So menuconfig no longer complains about DS_MODULE_ppp_async. - Suppress tar "lone zero block" warning when unpacking certain firmware images - Don't be so restrictive on addon-names (e.g. openvpn-2.1.offline) === release ds-0.2.9_26-14.2 === - Fix fakeroot problems with chown (operation not permitted) on systems with newer glibc + coreutils combinations using *at(). The version has been promoted to fakeroot-1.5.10 and a new patch for *at() is available. - Fix package virtualip-cgi and promote to version 0.4.1. There were bugs in the make script and in the download package itself. - Fixed 'tar --exclude .svn' for dnsmasq, cifsmount and deco: option was not set for '*-package' targets (tar -c), but for unpack targets (tar -x). - Remove "depends on DS_REPLACE_KERNEL" for iptables libs - Checking for and cleaning up Subversion directories in build/modified before packing firmware image - Updated copyright notices and acknowledgements - Updated MOTD to reflect DS-Mod_26 series (different ASCII art) - Fix menuconfig warning concerning download toolchain - Remove kernel-toolchain from target-toolchain prerequisites - Add gcc-4.1.2 to target toolchain menu after it has been fixed - FUSE module got lost when removed KERNEL_MODULES_DIR - Add mirror for download toolchain - Added, fixed and enhanced a few help texts for menuconfig in Config.in and toolchain/Config.in. - Introducing detailed help texts for menuconfig's shared library section. Unfortunately, this blows up libs/Config.in immensely - even more so, because sub-menus cannot get their own help texts for technical reasons. So, for menus containing several entries there is a lot of redundancy (i.e. repetition). The worst example is iptables, but there are others as well. - Add xdelta3 (for binary diffs) to build tools - Added and enhanced menuconfig help texts for several packages: screen, matrixtunnel, lynx, dropbear, wol-cgi, mini_fo, lua, callmonitor, samba, mc, cifsmount, deco. - Set tinyproxy autostart to manual - Bump 5050 Firmware to 04.31 - Add patch and modules for mppe-mppc - Increase MOD_LIMIT default to 61440 - Extra patch for soft-float problem - Delete some unnecessary files - Forgot to add patches for gdb 6.3 and 6.4 === patch ds-0.2.9_26-14.1-p2 === - add ubik2_boot_0, ubik2_boot_last to device.table (should fix 7050 Image) - chmod +x for 250-orangebox.sh === patch ds-0.2.9_26-14.1-p1 === - hide depmod output - fixed gdb-dirclean target - fixed 120-rc.S-dev.patch for 2170,3131,3170,5050,7050 - added gdb-clean and gdb-dirclean targets - reverted .phony targets (toolchain) - fixes gdb build - added 140-printk.patch for 7140 and 7141 - fixed deco (select DS_LIB_libncurses) - fix typo in /root/usr/mww/cgi-bin/file.cgi - add printk.patch for labors - libraries are also having dependencies... === release ds-0.2.9_26-14.1 === - fixed jamvm patch (100-fix-trace.patch) - fixed typo in deco.mk - changed all library-dependencies in packages makefiles. Hopefully there will be no more sensless configure runs. - add "--exclude .svn" to tar for all package-targets - added gdb - fixed deco.mk (forgot ncurses dependency, wrong path) - removed ar7kernel-loader - added evalzmaloader (thanks Enrik) http://www.wehavemorefun.de/fritzbox/EVA - fix error with download and external toolchain: uClibc-libs are not in /root/lib - updated download toolchain to 0.2 - add/remove patches for (non-working) uClibc-0.9.28.3/1 - fix 7170 Labor patches === release ds-0.2.9_26-14 === - fix precompiled toolchain download URL in toolchain/make/download-toolchain.mk - add forgotten cpmaccfg in make/Config.in - remove precompiled libs from root/lib - Moving all files back to SVN project's trunk, because we have given up plans to merge the repository with Danisahne's Sourceforge repository one day (licencing issues concerning AVM copyrighted file patches). So we thought we could as well have our own trunk again. - added download location for toolchain (thanks @ DPR) - updated orangebox to 1.05 - fixed download toolchain - disable tr069 if selected openssl - updated orangebox to 1.02 - fix dropbear-sshd-only package - try different binutil download locations (stable, developer) for target toolchain - fixed rebuilding of a kernel with different modules - small fixes in download-toolchain.mk, kernel/Config.in and make/deco/Config.in - worked on precompiled toolchain - fixed netsnmp-package - added busybox patch - updated 7050 to 04.31 - updated 7170_phone_labor to 6572 - added deco and tinyproxy - prepare for downloadable toolchain (i386) - added more packages to ./packages - updated netsnmp-package to 0.2 - added tinyproxy-1.7.0 package - added deco-39 package - new patch fixes mc-4.5.0 build error on GNOME systems - change in lzma.mk (dos2unix no more needed, thanks aholler) - remove getcons (not working for me) - fixed typo in menuconfig (uClibc-version) - fixed busybox patch (440-httpd_chdir.patch) - added fon_7150 - fixed openvpn-lzo_conf - fixed download location of target toolchain binutils - fixed openvpn-lzo.cgi - fixed Config.in - fixed pingtunnel/Config.in - fixed jamvm/Config.in - fixed target "openvpn-package" (exclude .svn directories) - added ./packages/openvpn-2.1_rc2/ - updated openssl to 0.9.8e - updated to openvpn-2.1_rc2-dsmod-0.6c - removed ./dl/openvpn-2.1_rc2-dsmod-0.6b.tar.bz2 - fixed bug in modhosts (http://www.ip-phone-forum.de/showthread.php?t=128048) - removed packages from dl/ - updated bird.mk - added 2170, 3131, 3170 and 5050 (untested) - added cifsmount (Package and kernel-patch) - removed iptables from vpnc-script - updated dropbear to 0.49 - added debootstrap, lynx and netsnmp (thanks to derheimi) - added gcc-4.1.2 to toolchain-options - fixed classpath, fuse, jamvm, ntfs - updated callmonitor to 1.8.3 - other small changes - added 7050 - updated openvpn to 2.1_rc2 - downgrade matrixssl to 1.7.3 (because of download-source) - fixed ntfs-3g (2 fuse patches) - more busybox-patches - vpnc updated to 0.4.0 - updated backup/restore-cgi to Haserl 0.9.x syntax - added matrixssl-1-8-3-open (lib) - added matrixtunnel-0.2 (package) - added Rudi-Shell - minor fixes in bird.mk, readline.mk - added fuse 2.6.3 - added ntfs-3g-1.0 - added classpath-0.93 - added libffi-sable-3325 - added jamvm-1.4.5 - minor fixes in pingtunnel.mk, streamripper.mk, tcpdump.mk and bird.mk - added busybox-patch (tar -t segfault) - added pingtunnel - minor fixes in libpcap-patches, busybox-patches - added tcpdump - haserl updated to 0.9.16 - minor changes in file.cgi, modhosts - added bird-1.0.11 (thanks to derheimi) - added streamripper-1.61.17 - added libmad-0.15.1b - added Lua scripting language - updated dnsmasq to version 2.38 - updated busybox-patches - make target for uclibc-utils - added backup/restore-cgi - added 7140 30.04.30 - moved missing files into branch - restructured SVN to hold branches (for a later merge into official svn) - added haserl - target toolchain update (binutils 2.17, gcc-4.1.1, uclibc-0.9.28.1) (edit: not working) - added libpcap - added knock-package - updatet 7141 to 40.04.30 - added cpmaccfg-package - added shadow000's webinterface mod (orangebox) - fixed calllist for labor-firmwares (foncalls.patch) - update to busybox-1.4.1 - cpmac-ioctl.patch - kernel-printk.patch - update to busybox-1.4.0 - added some kernel-modules (ntfs, cifs, smbfs) - fixed W701V-webmenu patch - more W701V fixes - added some iptable-modules - updated openvpn-Package to 0.6b - updated .version - fixed W701V patch - added avm-ftpd-remove patch - fixed modules_install with parallel make - added unionfs - added libreadline - initial checkin