aboutsummaryrefslogtreecommitdiffstats
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
* tools/cmake: Update to 3.12.4Daniel Engberg2018-11-121-2/+2
| | | | | | Update cmake to 3.12.4 Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* tools: firmware-utils: mksercommfw build on DarwinKevin Darbyshire-Bryant2018-11-091-2/+21
| | | | | | | | | asm/byteorder.h & hence __cpu_to_be32() doesn't exist on Darwin Shamelessly copy some byte swap functions from oseama.c Acked-by: Koen Vandeputte <koen.vandeputte@ncentric.com> Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* ramips: fix netgear r6120 factory image generationKoen Vandeputte2018-11-081-169/+317
| | | | | | | | | | | | | | | | | | | | | | | as indicated in commit c5bf408ed6bd "(ramips: fix image generation for mt76x8") more rework was needed to fix the other issues. Building on another machine, but using the same arch, showed the application failing again for different reasons. Fix this by completely rewriting the application, fixing following found issues: - buffer overflows, resulting in stack corruption - flaws in memory requirement calculations (too small, too large) - memory leaks - missing bounds checking on string handling - non-reproducable images, by using unitilized memory in checksum calculation - missing error handling, resulting in succes on specific image errors - endianness errors when building on BE machines - various minor build warnings - documentation did not match the code actions (header item locations) - allowing input to be decimal, hex or octal now Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ramips: fix image generation for mt76x8Koen Vandeputte2018-11-061-1/+1
| | | | | | | | | | | | | | | | | | | | | Buildbot fails to generate images for targets also generating a Sercomm binary with following error: Opening file: /mnt/ramdisk/koen/firmware/builds/owrt_mt76x8/build_dir/target-mipsel_24kc_musl/linux-ramips_mt76x8/tmp/openwrt-ramips-mt76x8-netgear_r6120-squashfs-factory.img.rootfs.zip Filesize: 3648606 . mksercommfw: malloc.c:2427: sysmalloc: Assertion `(old_top == initial_top (av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0)' failed. Makefile:287: recipe for target '/mnt/ramdisk/koen/firmware/builds/owrt_mt76x8/build_dir/target-mipsel_24kc_musl/linux-ramips_mt76x8/tmp/openwrt-ramips-mt76x8-netgear_r6120-squashfs-factory.img' failed Debugging using valgrind shows stack corruption due to a buffer overflow. The author of the generator assumes the filename ends with "root", while it should be "rootfs". Fix this by accounting for the 2 missing characters which solves the build issues. More work is required to cleanup this source, which will be done later on. Reported-by: Hannu Nyman <hannu.nyman@iki.fi> Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* tools/bison: update to version 3.2Hannu Nyman2018-11-051-2/+2
| | | | | | Update bison to version 3.2 Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
* tools/patch: Add fedora patch for crashing git style patchesRosen Penev2018-11-012-1/+54
| | | | | | | | https://lists.gnu.org/archive/html/bug-patch/2018-10/msg00000.html I assume a CVE number will be assigned soon. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* build: fix libressl build on x32 (amd64ilp32) hostThorsten Glaser2018-11-011-0/+4
| | | | | | disable use of assembly code since x32 gets misdetected as amd64 Signed-off-by: Thorsten Glaser <tg@mirbsd.org>
* tools/ccache: update to 3.5Hannu Nyman2018-11-012-3/+3
| | | | | | Update ccache to 3.5 Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
* ar71xx: fix sysupgrade generation for some targetsKoen Vandeputte2018-10-291-12/+6
| | | | | | | | | | | | | | | | | These targets are already defined as having a dynamic partition but the safeloader was not adapted for them. This causes a build warning for the sysupgrade image being too big. Targets: - c58-v1 - c60-v1 - c60-v2 - TL-WR1043 v5 - TL-WR902AC v1 - TL-WR942N V1 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ar71xx: switch more targets to dynamic partitioningKoen Vandeputte2018-10-291-30/+13
| | | | | | | | | | | | | Targets: - TP-LINK ER355 - TP-LINK C25 V1 - TP-LINK C59 V1 - TP-LINK C7 V4 - TP-LINK C7 V5 Fixes build issues seen due to the kernel being too big Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ar71xx: switch TP-Link RE450 v1 to dynamic partitioningRadek Dostál2018-10-291-7/+2
| | | | | | | | | | | | | | | | | As mentioned in commit 5f24933 recent changes on ar71xx (switch to 4.14, memory compaction, ...) cause an increase in kernel size, making it too big for RE450. RE450 images were not build due to the following error message: os-image partition too big (more than 1572864 bytes): Success Tested on RE450, device boots and was used to send this patch. Reported-by: Enrico Mioso <mrkiko.rs@gmail.com> Suggested-by: David Bauer <mail@david-bauer.net> Signed-off-by: Radek Dostál <rd@radekdostal.com> [rewrote commit msg keeping it tight + fixed SoB lines] Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* tools/pkg-config: pass arguments at the endArthur Skowronek2018-10-201-1/+1
| | | | | | | | | | | | | | | | | | Go for openwrt passes pkg-config arguments in the format of pkg-config --cflags -- pkg-name which in turn will be passed down to the real pkg-config as something like pkg-config.real --cflags -- pkg-name --define... and causes the real pkg-config implementation to missinterpret the given argument list. This also helps to fix https://github.com/golang/go/issues/27940 Signed-off-by: Arthur Skowronek <arthur.skowronek@tuta.io>
* tools/xz: Add PKG_CPE_ID for proper CVE trackingRosen Penev2018-10-161-0/+1
| | | | Signed-off-by: Rosen Penev <rosenp@gmail.com>
* tools/libressl: Add PKG_CPE_ID for proper CVE trackingRosen Penev2018-10-161-0/+2
| | | | Signed-off-by: Rosen Penev <rosenp@gmail.com>
* tools: patch: Add missing CVE-2018-6951 fixRosen Penev2018-10-164-12/+33
| | | | | | | | | | uscan reports a new CVE now that PKG_CPE_ID was added. Reordered patches by date. Signed-off-by: Rosen Penev <rosenp@gmail.com> [re-title commit & refresh patches] Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* tools: patch: Fix build by not modifing Makefile.amHauke Mehrtens2018-10-143-73/+3
| | | | | | | | | | | | | | A new test case was adding in one of the patches fixing a problem, this also included a change in the test/Makefile.am to add this test case. The build system detected a change in the Makefile.am and wants to regenerate the Makefile.in, but this fails because automake-1.15 is not installed yet. As automake depends on patch being build first, make sure we do not modify the Makefile.am. This fixes build problem seen by the build bots. Fixes: 4797dddfde6 ("patch: apply upstream cve fixes") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* tools: patch: make patch build depend on automakeHauke Mehrtens2018-10-141-0/+1
| | | | | | | | | | The Makefile.am changed and now patch wants to use automake to regenerate the Makefile.in. Make sure automake was build before we build patch. This fixes build problem seen by the build bots. Fixes: 4797dddfde6 ("patch: apply upstream cve fixes") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* patch: apply upstream cve fixesRussell Senior2018-10-143-0/+241
| | | | | | | | | | | | | Apply two upstream patches to address two CVEs: * CVE-2018-1000156 * CVE-2018-6952 Add PKG_CPE_ID to Makefile. Build tested on apm821xx and ar71xx. Signed-off-by: Russell Senior <russell@personaltelco.net>
* mkfwimage: Add image type definition for WA imagesTobias Schramm2018-10-072-47/+129
| | | | | | | | | | | | | This patch adds a new type of ubiquiti image, the WA image. First seen on the NanoStation AC loco the generic name implies that we will see this type of image on more ubiquiti devices thus it makes sense to implement it in mkfwimage. The main difference is that WA images are signed. The "END" header has been replaced by a "ENDS" header followed by a 2048 bit RSA signature. This signature is not being generated by mkfwimage and filled with 0x00. Signed-off-by: Tobias Schramm <tobleminer@gmail.com>
* tools/cmake: Update to 3.12.3Daniel Engberg2018-10-072-14/+2
| | | | | | Update CMake to 3.12.3 Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* tools/bison: Update to 3.1Daniel Engberg2018-10-073-6/+4
| | | | | | Update bison to 3.1 Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* tools/libressl: Update to 2.8.1Daniel Engberg2018-10-071-3/+3
| | | | | | Update libressl to 2.8.1 Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* tools/mtools: Update to 4.0.19Daniel Engberg2018-10-071-4/+3
| | | | | | Update mtools to 4.0.19 Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* tools/e2fsprogs: fix build with clangFelix Fietkau2018-09-151-0/+3
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* tools/expat: fix docbook2man error on some systemsMarko Ratkaj2018-09-111-0/+3
| | | | | | | | On some systems (Gentoo) configure stage fails because of docbook2man working with SGML rather than with XML. We don't need xmlwf man pages so we disable this. Signed-off-by: Marko Ratkaj <marko.ratkaj@sartura.hr>
* tools/expat: Update to 2.2.6Daniel Engberg2018-09-101-2/+2
| | | | | | Update (lib)expat to 2.2.6 Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* tools/e2fsprogs: Update to 1.44.4Daniel Engberg2018-09-101-2/+2
| | | | | | Update e2fsprogs to 1.44.4 Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* firmware-utils: mkedimaximg: add "big-endianness mode" optionINAGAKI Hiroshi2018-09-101-8/+35
| | | | | | | | | In addition to the default little-endianness format, I added a mode so that we can generate firmware with big-endianness format. example: ELECOM WRC-300GHBK2-I (QCA9563) Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
* tools/cmake: Update to 3.12.2Daniel Engberg2018-09-091-2/+2
| | | | | | Update CMake to 3.12.2 Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* build: add mkrasimageDavid Bauer2018-08-282-0/+460
| | | | | | | | | | | | | | | The current make-ras.sh image generation script for the ZyXEL NBG6617 has portability issues with bash. Because of this, factory images are currently not built correctly by the OpenWRT buildbots. This commit replaces the make-ras.sh by C-written mkrasimage. The new mkrasimage is also compatible with other ZyXEL devices using the ras image-format. This is not tested with the NBG6616 but it correctly builds the header for ZyXEL factory image. Signed-off-by: David Bauer <mail@david-bauer.net>
* firmware-utils/mksercommfw: fix build with clang/macOSRyan Mounce2018-08-141-1/+1
| | | | | | | | fixes error: non-void function 'main' should return a value Fixes: FS#1770 Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
* firmware-utils/mksercommfw: fix musl buildAndy Walsh2018-08-131-0/+1
| | | | | | * add missing <sys/types.h> for musl Signed-off-by: Andy Walsh <andy.walsh44+github@gmail.com>
* tools/cmake: Update to 3.12.1Daniel Engberg2018-08-132-3/+3
| | | | | | Update cmake to 3.12.1 Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* firmware-utils: add sercomm/netgear toolLudwig Thomeczek2018-08-132-0/+255
| | | | | | | | | | | This adds a tool to generate a firmware file accepted by Netgear or sercomm devices. They use a zip-packed rootfs with header and a custom checksum. The generated Image can be flashed via the nmrpflash tool or the webinterface of the router. Signed-off-by: Ludwig Thomeczek <ledesrc@wxorx.net>
* tools: findutils: fix compilation with glibc 2.28Luis Araneda2018-08-101-0/+104
| | | | | | | Add a temporary workaround to compile with glibc 2.28 as some constants were removed and others made private Signed-off-by: Luis Araneda <luaraneda@gmail.com>
* tools: m4: fix compilation with glibc 2.28Luis Araneda2018-08-101-0/+118
| | | | | | | Add a temporary workaround to compile with glibc 2.28 as some constants were removed and others made private Signed-off-by: Luis Araneda <luaraneda@gmail.com>
* ar71xx: add support for TP-LINK CPE510 V2.0Andrew Cameron2018-08-021-1/+11
| | | | | | | | Adds Support for the TP-LINK CPE510 V2.0 by TP-Link. The hardware is almost the same as the CPE510 V1.0 Follow the same processes as for the CPE510 V1.0 Signed-off-by: Andrew Cameron <apcameron@softhome.net>
* ar71xx: add support for TP-Link Archer C59 v2Keith Maika2018-07-301-0/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TP-Link Archer C59v2 is a dual-band AC1350 router based on Qualcomm/Atheros QCA9561+QCA9886 chips. Specification: - 775/650/258 MHz (CPU/DDR/AHB) - 128 MB of RAM (DDR2) - 16 MB of FLASH (SPI NOR) - 3T3R 2.4 GHz - 2T2R 5 GHz - 5x 10/100 Mbps Ethernet - USB 2.0 port - UART header on PCB Flash instruction: - via web UI: 1. Download openwrt-ar71xx-generic-archer-c59-v2-squashfs-factory.bin 2. Login to router and open the Advanced tab 3. Navigate to System Tools -> Firmware Upgrade 4. Upload firmware using the Manual Upgrade form - via TFTP: 1. Set PC to fixed ip address 192.168.0.66 2. Download openwrt-ar71xx-generic-archer-c59-v2-squashfs-factory.bin and rename it to tp_recovery.bin 3. Start a tftp server with the file tp_recovery.bin in its root directory 4. Turn off the router 5. Press and hold Reset button 6. Turn on router with the reset button pressed and wait ~15 seconds 7. Release the reset button and after a short time the firmware should be transferred from the tftp server 8. Wait ~30 second to complete recovery. Signed-off-by: Keith Maika <keithm@aoeex.com>
* tools/cmake: Update to 3.12.0Daniel Engberg2018-07-296-75/+7
| | | | | | | Update cmake to 3.12.0 Remove 140-curl-fix-libressl.patch as fix is in upstream Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* tools/e2fsprogs: Update to 1.44.3Daniel Engberg2018-07-161-2/+2
| | | | | | Update e2fsprogs to 1.44.3 Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* tools: kernel2minor: update to latest versionMathias Kresin2018-07-121-3/+4
| | | | | | 9fa9190 create reproducible images Signed-off-by: Mathias Kresin <dev@kresin.me>
* tools/ccache: update to 3.4.2Hannu Nyman2018-07-062-5/+5
| | | | | | update version and refresh patch Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
* tools/cmake: update to 3.11.4Hannu Nyman2018-07-062-3/+3
| | | | | | Update cmake and refresh patches. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
* firmware-utils: tplink-safeloader: add calloc error handlingHyeonsik Song2018-07-041-0/+4
| | | | Signed-off-by: Hyeonsik Song <blogcin@naver.com>
* ath79: add support for TP-Link RE450 v2Peter Lundkvist2018-07-021-0/+40
| | | | | | | | | | | | | | | | | | | | | | | | TP-Link RE450 v2 is a dual band router/range-extender based on Qualcomm/Atheros QCA9563 + QCA9880. Specification: - 775 MHz CPU - 64 MB of RAM (DDR2) - 8 MB of FLASH (SPI NOR) - 3T3R 2.4 GHz - 3T3R 5 GHz - 1x 10/100/1000 Mbps Ethernet (AR8033 PHY) - 7x LED, 4x button - UART header on PCB (needs unmounted R64 & R69 0201 resistors/jumpers) Flash instruction: Apply factory image in OEM firmware web-gui. U-Boot does not seem to have any recovery functions, so debricking requires connection via UART. Signed-off-by: Peter Lundkvist <peter.lundkvist@gmail.com>
* firmware-utils: tplink-safeloader: switch tl-wr1043nd-v4 to dynamic partitionsLucian Cristian2018-06-271-7/+2
| | | | | | | Use the new dynamic partition split in tplink-safeloader so we no longer have to worry about kernel size increases. Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
* firmware-utils: tplink-safeloader: switch RE350 to dynamic partitionsAlex Maclean2018-06-261-6/+2
| | | | | | | Use the new dynamic partition split in tplink-safeloader so we no longer have to worry about kernel size increases. Signed-off-by: Alex Maclean <monkeh@monkeh.net>
* firmware-utils: tplink-safeloader: add dynamic partitionsAlex Maclean2018-06-261-13/+58
| | | | | | | | | | | | | | | | | Add support to dynamically split the firmware partition into os-image and file-system partitions. This is done by replacing those entries in the partition table with a single unified firmware partition, which is then split according to actual kernel image size. The factory image will have the file-system partition aligned to a 64K erase block, but the sysupgrade image skips this and aligns only the JFFS2 EOF marker to squeeze out more space. This should prevent further creeping updates to the kernel partition size while maximizing space for the overlay filesystem on smaller devices. Signed-off-by: Alex Maclean <monkeh@monkeh.net>
* firmware-utils: mktplinkfw: add rootfs offset for combined imagesAlex Maclean2018-06-261-1/+10
| | | | | | | | | | | Add an option (-O) to calculate rootfs offset for combined images. This is needed for the TP-Link mtdsplit driver to locate the rootfs when the start is not aligned to an erase block. This will be the case for sysupgrade images produced by tplink-safeloader with upcoming dynamic partition splitting. Signed-off-by: Alex Maclean <monkeh@monkeh.net>
* ar71xx: Add support for TP-Link CPE210 v2Adrian Schmutzler2018-06-231-0/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This PR adds support for a popular low-cost 2.4GHz N based AP Specifications: - SoC: Qualcomm Atheros QCA9533 (650MHz) - RAM: 64MB - Storage: 8 MB SPI NOR - Wireless: 2.4GHz N based built into SoC 2x2 - Ethernet: 1x 100/10 Mbps, integrated into SoC, 24V POE IN Installation: Flash factory image through stock firmware WEB UI or through TFTP To get to TFTP recovery just hold reset button while powering on for around 4-5 seconds and release. Rename factory image to recovery.bin Stock TFTP server IP:192.168.0.100 Stock device TFTP adress:192.168.0.254 Notes: TP-Link does not use bootstrap registers so without this patch reference clock detects as 40MHz while it is actually 25MHz. This is due to messed up bootstrap resistor configuration on the PCB. Provided GPL code just forces 25MHz reference clock. That causes booting with completely wrong clocks, for example, CPU tries to boot at 1040MHz while the stock is 650MHz. So this PR depends on PR #672 to remove 40MHz reference clock. Thanks to Sven Eckelmann <sven@narfation.org> for properly patching that. Signed-off-by: Robert Marko <robimarko@gmail.com> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>