34901 Commits

Author SHA1 Message Date
Rafał Miłecki
a4d6091866 brcm47xx: image: switch Motorola devices to the new building system
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

Backport of r48971

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48999 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-11 08:54:06 +00:00
Rafał Miłecki
0683576eac brcm47xx: image: switch D-Link DWL-3150 to the new building system
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

Backport of r48970

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48998 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-11 08:54:03 +00:00
Felix Fietkau
fb51a40992 kernel: rework bcm47xx backport, fix build errors on the brcm47xx target (#21974)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48925 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-05 10:24:00 +00:00
Hauke Mehrtens
af131d792e CC: curl: detect the library as renamed wolfssl
Without this patch curl does not detect the new cyassl/wolfssl version
and would be build without ssl support instead when cyassl was selected.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>


git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48900 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-03 22:30:22 +00:00
Felix Fietkau
df7603824b mac80211: improve rate control performance
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

Backport of r48897

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48899 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-03 22:29:13 +00:00
Felix Fietkau
88b4fb7e2a mt76: update to the latest version, adds stability fixes
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

Backport of r48895

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48898 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-03 22:29:11 +00:00
Hauke Mehrtens
5ce6da3d7a CC: kernel: update kernel 3.18 to version 3.18.27
Changelog:
* https://cdn.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.24
* https://cdn.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.25
* https://cdn.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.26
* https://cdn.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.27

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>


git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48896 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-03 22:28:12 +00:00
John Crispin
124c1ca86a ramips: EX2700: remove unused kernel modules
Remove the kmod-mt76 package from the EX2700 profile to free up
around 100 KiB of space on the root filesystem.

This patch applies to both trunk and Chaos Calmer.

Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com>

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48887 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-03 20:16:23 +00:00
Felix Fietkau
197d34388b mac80211: add a number of pending fixes
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

Backport of r48883

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48884 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-02 14:57:49 +00:00
Felix Fietkau
7a4bf5434d mac80211/hostapd: rework 802.11w driver support selection, do not hardcode drivers in hostapd makefile
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

Backport of r46903

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48878 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-02 13:06:57 +00:00
Jo-Philipp Wich
d6742f9ca2 CC: cyassl: disable Intel ASM for now
With ASM support enabled, CyaSSL fails to build on all x86 subtargets.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

Backport of r48876

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48877 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-02 10:01:48 +00:00
Jo-Philipp Wich
805193d361 curl: bump pkg revision
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48875 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-02 09:51:47 +00:00
Hauke Mehrtens
3728299e80 CC: cyassl: update to wolfssl version 3.8.0 to fix security problems
Backport of:
r46167: cyassl: version bump to 3.4.6
r46168: cyassl: update to wolfssl 3.6.0
r46551: cyassl: the upstream package in version 4.6.0 changed
r47791: cyassl: update to wolfSSL version 3.7.0
    This version and version 3.6.8 are fixing the following security problems:
    * CVE-2015-7744
    * CVE-2015-6925
r48616: cyassl: update to wolfssl version 3.8.0

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>


git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48873 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 22:50:29 +00:00
Hauke Mehrtens
ceaedb643a CC: curl: fix CVE-2016-0755
This fixes the following security problem:
CVE-2016-0755: NTLM credentials not-checked for proxy connection re-use
http://curl.haxx.se/docs/adv_20160127B.html

backport of r48614.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>


git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48872 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 22:42:51 +00:00
Hauke Mehrtens
22b4bcfdf5 CC: bcm53xx: make patches apply again
Commit r48849 changed the drivers/mtd/spi-nor/spi-nor.c file and broke
this patch in bcm53xx.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>


git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48871 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 22:11:12 +00:00
Felix Fietkau
4537d45ae8 iw: update to version 4.3, sync with trunk r47782
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48870 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 21:32:22 +00:00
Jo-Philipp Wich
24547b4f1a CC: openssl: update to 1.0.2g (8 CVEs)
CVE-2016-0704

s2_srvr.c overwrite the wrong bytes in the master-key when applying
Bleichenbacher protection for export cipher suites. This provides a
Bleichenbacher oracle, and could potentially allow more efficient variants of
the DROWN attack.

CVE-2016-0703

s2_srvr.c did not enforce that clear-key-length is 0 for non-export ciphers.
If clear-key bytes are present for these ciphers, they *displace* encrypted-key
bytes. This leads to an efficient divide-and-conquer key recovery attack: if
an eavesdropper has intercepted an SSLv2 handshake, they can use the server as
an oracle to determine the SSLv2 master-key, using only 16 connections to the
server and negligible computation. More importantly, this leads to a more
efficient version of DROWN that is effective against non-export ciphersuites,
and requires no significant computation.

CVE-2016-0702

A side-channel attack was found which makes use of cache-bank conflicts on
the Intel Sandy-Bridge microarchitecture which could lead to the recovery of
RSA keys. The ability to exploit this issue is limited as it relies on an
attacker who has control of code in a thread running on the same hyper-
threaded core as the victim thread which is performing decryptions.

CVE-2016-0799

The internal |fmtstr| function used in processing a "%s" format string in
the BIO_*printf functions could overflow while calculating the length of a
string and cause an OOB read when printing very long strings. Additionally
the internal |doapr_outch| function can attempt to write to an OOB memory
location (at an offset from the NULL pointer) in the event of a memory
allocation failure. In 1.0.2 and below this could be caused where the size
of a buffer to be allocated is greater than INT_MAX. E.g. this could be in
processing a very long "%s" format string. Memory leaks can also occur.
The first issue may mask the second issue dependent on compiler behaviour.
These problems could enable attacks where large amounts of untrusted data is
passed to the BIO_*printf functions. If applications use these functions in
this way then they could be vulnerable. OpenSSL itself uses these functions
when printing out human-readable dumps of ASN.1 data. Therefore applications
that print this data could be vulnerable if the data is from untrusted sources.
OpenSSL command line applications could also be vulnerable where they print out
ASN.1 data, or if untrusted data is passed as command line arguments. Libssl is
not considered directly vulnerable. Additionally certificates etc received via
remote connections via libssl are also unlikely to be able to trigger these
issues because of message size limits enforced within libssl.

CVE-2016-0797

In the BN_hex2bn function the number of hex digits is calculated using an int
value |i|. Later |bn_expand| is called with a value of |i * 4|. For large
values of |i| this can result in |bn_expand| not allocating any memory because
|i * 4| is negative. This can leave the internal BIGNUM data field as NULL
leading to a subsequent NULL ptr deref. For very large values of |i|, the
calculation |i * 4| could be a positive value smaller than |i|. In this case
memory is allocated to the internal BIGNUM data field, but it is insufficiently
sized leading to heap corruption. A similar issue exists in BN_dec2bn. This
could have security consequences if BN_hex2bn/BN_dec2bn is ever called by user
applications with very large untrusted hex/dec data. This is anticipated to be
a rare occurrence. All OpenSSL internal usage of these functions use data that
is not expected to be untrusted, e.g. config file data or application command
line arguments. If user developed applications generate config file data based
on untrusted data then it is possible that this could also lead to security
consequences. This is also anticipated to be rare.

CVE-2016-0798

The SRP user database lookup method SRP_VBASE_get_by_user had confusing memory
management semantics; the returned pointer was sometimes newly allocated, and
sometimes owned by the callee. The calling code has no way of distinguishing
these two cases. Specifically, SRP servers that configure a secret seed to hide
valid login information are vulnerable to a memory leak: an attacker connecting
with an invalid username can cause a memory leak of around 300 bytes per
connection. Servers that do not configure SRP, or configure SRP but do not
configure a seed are not vulnerable. In Apache, the seed directive is known as
SSLSRPUnknownUserSeed. To mitigate the memory leak, the seed handling in
SRP_VBASE_get_by_user is now disabled even if the user has configured a seed.
Applications are advised to migrate to SRP_VBASE_get1_by_user. However, note
that OpenSSL makes no strong guarantees about the indistinguishability of valid
and invalid logins. In particular, computations are currently not carried out
in constant time.

CVE-2016-0705

A double free bug was discovered when OpenSSL parses malformed DSA private keys
and could lead to a DoS attack or memory corruption for applications that
receive DSA private keys from untrusted sources. This scenario is considered
rare.

CVE-2016-0800

A cross-protocol attack was discovered that could lead to decryption of TLS
sessions by using a server supporting SSLv2 and EXPORT cipher suites as a
Bleichenbacher RSA padding oracle. Note that traffic between clients and non-
vulnerable servers can be decrypted provided another server supporting SSLv2
and EXPORT ciphers (even with a different protocol such as SMTP, IMAP or POP)
shares the RSA keys of the non-vulnerable server. This vulnerability is known
as DROWN (CVE-2016-0800). Recovering one session key requires the attacker to
perform approximately 2^50 computation, as well as thousands of connections to
the affected server. A more efficient variant of the DROWN attack exists
against unpatched OpenSSL servers using versions that predate 1.0.2a, 1.0.1m,
1.0.0r and 0.9.8zf released on 19/Mar/2015 (see CVE-2016-0703 below). Users can
avoid this issue by disabling the SSLv2 protocol in all their SSL/TLS servers,
if they've not done so already. Disabling all SSLv2 ciphers is also sufficient,
provided the patches for CVE-2015-3197 (fixed in OpenSSL 1.0.1r and 1.0.2f)
have been deployed. Servers that have not disabled the SSLv2 protocol, and are
not patched for CVE-2015-3197 are vulnerable to DROWN even if all SSLv2
ciphers are nominally disabled, because malicious clients can force the use of
SSLv2 with EXPORT ciphers. OpenSSL 1.0.2g and 1.0.1s deploy the following
mitigation against DROWN: SSLv2 is now by default disabled at build-time.
Builds that are not configured with "enable-ssl2" will not support SSLv2.
Even if "enable-ssl2" is used, users who want to negotiate SSLv2 via the
version-flexible SSLv23_method() will need to explicitly call either of:
SSL_CTX_clear_options(ctx, SSL_OP_NO_SSLv2); or SSL_clear_options(ssl,
SSL_OP_NO_SSLv2); as appropriate. Even if either of those is used, or the
application explicitly uses the version-specific SSLv2_method() or its client
or server variants, SSLv2 ciphers vulnerable to exhaustive search key recovery
have been removed. Specifically, the SSLv2 40-bit EXPORT ciphers, and SSLv2
56-bit DES are no longer available. In addition, weak ciphers in SSLv3 and up
are now disabled in default builds of OpenSSL. Builds that are not configured
with "enable-weak-ssl-ciphers" will not provide any "EXPORT" or "LOW" strength
ciphers.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

Backport of r48868.

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48869 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 15:18:24 +00:00
John Crispin
3ea83f0688 CC: toolchain: use latest glibc 2.21 revision
Fixes "CVE-2015-7547 --- glibc getaddrinfo() stack-based buffer
overflow"

Signed-off-by: Michael Marley <michael@michaelmarley.com>

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48864 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:53:27 +00:00
John Crispin
706ffd8068 kernel: add Realtek USB to Ethernet modules
https://forum.openwrt.org/viewtopic.php?pid=279394

Signed-off-by: Dirk Neukirchen <dirkneukirchen@web.de>

Backport of r46031

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48863 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:15:04 +00:00
John Crispin
fd52d9e16d base-files: add /etc/profile.d support
OpenWrt should support an optional /etc/profile.d directory like
most other Linux distributions. This allows packages to install
their own scripts into /etc/profile.d/ directory.

The file suffix should make clear, that these scripts
are (sourced) shell-snippets. If the user needs e.g. php or lua,
one must make sure that the interpreter is called.
The reverse failsafe test makes sure, that the effective returncode is 0.

A typcal usecase is the inclusion of private helpers,
special variables or aliases, which at the moment needs
patching the sourcecode and is not well maintainable.
Now the builder can simply add there files.

v1 initial work of Hendrik Lüth <hendrik@linux-nerds.de>
v2 changes regarding RFC (e.g. thomas.langer@lantiq.com)
v3 changes regarding RFC (e.g. mschiffer@universe-factory.net)
v4 keep it simple and mimic OpenWrt style

Signed-off-by: Bastian Bittorf <bittorf@bluebottle.com>

Backport of r46965

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48862 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:15:04 +00:00
John Crispin
d9c6c33108 x86/generic: enable pata_atiixp driver
This enables booting from devices that use an ATI PATA controller for
the boot device, such as the embedded CF cards in Fujitsu-Siemens Futro
thin-clients.

Signed-off-by: Felix Kaechele <heffer@fedoraproject.org>

Backport of r47304

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48861 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:15:03 +00:00
John Crispin
4f7d786658 ar71xx: add support for TP-LINK TL-WR941ND v6 (international version)
The international version is completely different from the already
supported Chinese version. The WLAN of the QCA956x SoC used by this router
has been fixed in r46948.

This patch looks like it changes a lot in
700-MIPS-ath79-openwrt-machines.patch; that is not the case. Unfortunately,
quilt decided to completely reorganize the Kconfig patch even though only
a single section has been added.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

Backport of r47420

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48860 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:15:02 +00:00
John Crispin
fe9611fb34 ar71xx: rename firmware for Chinese version of TL-WR941ND v6
It seems there are two *different* versions on TL-WR941ND v6: Chinese
and European one. Currently supported by OpenWrt is Chinese one. Rename
firmware to make it clear.
For details see:
http://wiki.openwrt.org/toh/tp-link/tl-wr941nd
https://forum.openwrt.org/viewtopic.php?id=59295

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

Backport of r47107

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48859 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:59 +00:00
John Crispin
9af27e4d49 mac80211: set mcast-rate for mesh point interfaces
In order to set the multicast rate for mesh point interfaces the "mesh join"
was made explicit and moved to mac80211_setup_vif(), similar to how it is
done for IBSS interfaces.

Previously, the mesh join was made implicit in case authentication (i.e.
$key) was not used when creating the interface in mac80211_prepare_vif(),
while using authentication would create the interface first, then join
later in mac80211_setup_vif() by starting authsae.

Signed-off-by: Nils Schneider <nils@nilsschneider.net>

Backport of r47408

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48858 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:59 +00:00
John Crispin
c2f41fefe5 ar71xx: compex wpj531 register usb support
Signed-off-by: Christian Mehlis <christian@m3hlis.de>

Backport of r46283

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48857 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:58 +00:00
John Crispin
43028aaf76 ar71xx: compex wpj531 fix setting mac address on ethernet
Signed-off-by: Christian Mehlis <christian@m3hlis.de>

Backport of r46282

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48856 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:57 +00:00
John Crispin
c0d468b25d ar71xx: compex wpj531 fix ethernet registration
In fb6f62e97733312053ab593fcf68eea47a21169e several settings
are set on the ethernet device, but they are not working.

Fix Ethernet by setting the right values.

Signed-off-by: Christian Mehlis <christian@m3hlis.de>

Backport of r46281

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48855 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:56 +00:00
John Crispin
d5b9846f54 ar71xx: rework patch for qca953x/956x
Patch cherry-picked from the following location:
https://www.codeaurora.org/cgit/quic/qsdk/oss/system/openwrt/commit/?h=release/coconut_ioe4531_2.0&id=5c357bf6c763e4140dddcc9a3bc5f005525a9c0e

Changelist,
    - add more register defines
    - add EHCI support
    - fix GPIO pin count to 18
    - fix chained irq disabled
    - fix GMAC0/GMAC1 initial
    - fix WMAC irq number to 47
    - merge the changes of dev-eth.c from the patch to file.

Signed-off-by: Miaoqing Pan <miaoqing@codeaurora.org>
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

Backport of r46207

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48854 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:55 +00:00
John Crispin
da2592c20e ar71xx: fix ethernet initialization on QCA953x-based boards (TP-Link TL-WR841N/ND v9, Compex WPJ531)
The initialization routines for these boards were relying on some (wrong)
defaults for the QCA953x ethernet. Make these defaults explicit to prevent
breaking them when the QCA953x defaults are fixed.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

Backport of r46206

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48853 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:53 +00:00
John Crispin
708f8c1ca7 ar71xx/lzma-loader: fix O32 ABI conformance
According to the calling convention of the o32 ABI the caller
function must reserve stack space for $a0-$a3 registers in case
the callee needs to save its arguments.

The assembly code of the loader does not reserve stack space for
these registers thus when the 'loader_main' function needs to save
its arguments, those will be stored in the 'workspace' area instead
of the stack.

Because the workspace area is also used by other part of the code, the
saved register values gets overwritten and this often leads to failed
kernel boots.

Fix the code to reserve stack space for the registers to avoid this
error.

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

Backport of r48279

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48852 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:52 +00:00
John Crispin
76b79b5635 kernel/gpio_keys: load module on pre-init
fix rescue mode on wdr4900

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>

Backport of r48793

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48851 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:51 +00:00
John Crispin
ca4b30daed brcm2708-gpu-fw: move pkg build dir to kernel build dir to fix rebuild bugs after cleaning the kernel tree
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

Backport of r48732

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48850 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:50 +00:00
John Crispin
765d0e4a09 kernel: disable software protection bits for macronix flash chips at init
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

Backport r47626

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48849 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:49 +00:00
John Crispin
8871ec8c28 firmware-utils: mkfwimage: fix firmware_max_length for XM layout
The new u-boot version bundled with the 5.6.x firmwares from Ubiquiti gets
confused by the smaller rootfs partition size; this can lead to various
issues:

1. We've gotten reports that flashing from the 5.6.x stock firmware to
   OpenWrt will brick devices; I wasn't able to reproduce this myself
2. Flashing from 5.5.x stock firmware to OpenWrt and back to stock (via
   TFTP recovery), following by an update to 5.6.x via web interface can
   yield a bricked device with the following properties:
   - It can't be booted without entering commands over a serial console, as
     u-boot supplies the wrong MTD layout
   - The web interface won't accept any image with the original flash
     layout, so stock firmware upgrades are impossible
   - As the TFTP recovery doesn't update u-boot, returning to the old
     u-boot from firmware 5.5.x is impossible

To recover from 2., creating an OpenWrt image which doesn't set u-boot as
read-only and flashing a backup of the old u-boot from there is the only
way known to me. (Fixing the mtdparts variable in u-boot-env from OpenWrt
might also work; settings this from u-boot over serial didn't have
any permanent effect.)

Fix all of this by setting the correct flash layout also used by the stock
firmware. Flashing has been tested from both firmware 5.5.x and 5.6.x. The
fixed layout also matches the mtdparts defined by OpenWrt.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

Backport of r48829

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48848 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:48 +00:00
John Crispin
e1aa6a82ef ar71xx, firmware-utils: split ubdev01 flash layout from XM
The ubdev01 profile defines its own MTDPARTS with smaller firmware
partition, so give it its own UBNT_BOARD in mkfwimage.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

Backport of r48828

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48847 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:47 +00:00
John Crispin
68492ba72f firmware-utils: mkfwimage: add -Wall, fix obvious bugs causing compile warnings
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

Backport of r48827

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48846 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:47 +00:00
John Crispin
483155ac89 OpenSSL: Added source/old to PKG_SOURCE_URL
OpenSSL moves old versions of the library from
http://www.openssl.org/source/ to
http://www.openssl.org/source/old/$version/ breaking the old links.
That behavior breaks the OpenWRT-build every time OpenSSL releases
a new version.

This patch adds http://www.openssl.org/source/old/$version/ to the
PKG_SOURCE_URL of OpenSSL to avoid breaking the build whenever
OpenSSL releases a new version.

Signed-off-by: Kevin Kirsch <ranlvor@starletp9.de>
Reviewed-by: Alexander Dahl <post@lespocky.de>

Backport of r47860

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48845 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:46 +00:00
John Crispin
594058253f ar71xx: fix AR71XX_MODEL on TP-Link TL-WR703N
The hwid check was wrong, causing the AR71XX_MODEL value to end with a
space (as $hwver was unset).

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

Backport of r47553

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48844 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:45 +00:00
John Crispin
ef94ef7c24 ar71xx: add support for the TP-LINK TL-WR1043ND v3
The hardware of the v3 is identical to the v2.

Based-on-patch-by: Andreas Ziegler <github@andreas-ziegler.de>
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

Backport of r47406

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48843 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:44 +00:00
John Crispin
0c598d5392 tools/firmware-utils: tplink-safeloader: add version 1.1 support to CPE210/220/510/520
The hardware is identical to version 1.0, add the new models to the support
list.

Also remove the empty line at the end of the support list, the current
stock images don't have it either.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

Backport of r47212

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48842 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:43 +00:00
John Crispin
cc33ca5af4 tools/firmware-utils: tplink-safeloader: fix support-list format, clean up vendor information
The first 4 bytes of the support list and the vendor information are
supposed to contain the length of these fields.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

Backport of r47211

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48841 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:43 +00:00
John Crispin
ca759acc8e tools/firmware-utils: tplink-safeloader: clean up code
There is no reason for the internal functions not to be static.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

Backport of r47210

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48840 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:42 +00:00
John Crispin
86a0b8364f odhcp6c: minor fixes
Better synchronize RA & DHCPv6 events
Accumulate some events to avoid flooding
Restart softwires for address and prefix changes

Signed-off-by: Steven Barth <steven@midlink.org>

Backport of r46518

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48839 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:41 +00:00
John Crispin
f4598c54e5 base-files: default_postinst: propagate the real postinst return code
Using the postinst script for sanity checks and expecting opkg to fail
if the postinst didn't return 0 was possible in Barrier Breaker, propagate
the real postinst return code through default_postinst to restore this
behaviour.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

Backport of r46653

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48838 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:40 +00:00
John Crispin
a45758c507 odhcp6c: add option "sourcefilter" to disable source filter
Signed-off-by: Steven Barth <steven@midlink.org>

Backport of r46408

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48837 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:39 +00:00
John Crispin
940bd5adbc sunxi: respect CONFIG_TARGET_IMAGES_GZIP
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

Backport of r46608

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48836 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:38 +00:00
John Crispin
e8e35f5e43 sunxi: fix uboot install location
Install uboot files to KERNEL_BUILD_DIR instead of BIN_DIR to fix
ImageBuilder. Similar fixes are necessary for many (all?) other uboot
targets.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

Backport of r46605

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48835 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:37 +00:00
John Crispin
5f362de124 sunxi: don't copy DTS files to BIN_DIR
The DTS files aren't useful (other targets don't copy them either) and
clutter BIN_DIR with files unrelated to the chosen profile.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

Backport of r46604

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48834 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:36 +00:00
John Crispin
d86f4173cb ar71xx: add support for TL-WR741ND v5
This device is identical to the TL-WR740N v5, it even uses the same HWID (which
wasn't the case for older TL-WR741ND revisions).

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

Backport of r46238

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48833 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:35 +00:00
John Crispin
68358b9d28 ar71xx: add support for tp-link wr740n v5.0 (EU)
TP-Link ships wr740n v5.0 to Romania (so probably everywhere except
China) with 4 MB flash and 32 MB memory (confirmed by their local
support). This patch adds support for the v5.0 clone of v4, i just
tested it on my own v5.0 router and it works.

Signed-off-by: Daniel Petre <daniel.petre@posteo.net>

Backport of r46115

git-svn-id: svn://svn.openwrt.org/openwrt/branches/chaos_calmer@48832 3c298f89-4303-0410-b956-a3cf2f4a3e73
2016-03-01 08:14:35 +00:00