Use xattr to store the filesystem initialization state of the overlay.
As long as the filesystem is not marked as initialized yet (happens in
/etc/init.d/done), all overlay data (except for sysupgrade.tgz) will be
discarded before the system is allowed to boot
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 44942
In mtd_verify(), the return value of md5sum() has been
interpreted as error if nonzero, while the function
returns number of processed bytes, which caused
mtd_verify() to always fail.
This patch fixes error checking to interpret only
negative values as errors.
Signed-off-by: Zefir Kurtisi <zefir.kurtisi@neratec.com>
SVN-Revision: 44605
Remove the need for the header file to be exported - we don't need most
of it anyway; all we care about are the offset of the rootfs length and
header crc fields.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 44557
Procd enabled init scripts can now specify:
procd_set_param stdout 1
procd_set_param stderr 1
... to relay their respective standard IO streams to the system log.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 44547
Update to git head in order to switch the block, mount_root etc. logging to
the common ulog() api for putting early boot messages into dmesg.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 44545
Update to git head in order to switch the kmodloader logging to the common
ulog() api for putting early boot messages into dmesg.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 44544
Update to git head in order to switch the procd logging to the common ulog()
api for putting early boot messages into dmesg.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 44543
- Support external overlays on non-MTD systems again
- Account for new directory structure of overlayfs partitions (additional upper/ component)
- Support executing block from either overlay or rom
- Support loading fstab from either overlay or rom
- Log extroot failures to dmesg
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 44535
This is required during early boot in the extroot setup phase to support
loading kmods from the overlay that depend on kmods on the rom partition.
The subsequent mount_root updates will use the LD_LIBRARY_PATH env
variable to pass kmod directories to kmodloader.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 44533
Update to latest git head in order to support disabling the build
of upgraded which causes linker errors on avr32.
This also adds some fixes to the ubus system.info and system.board
methods.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 44134
fixes a bug where wdt write happened with no valid fd available
--> procd: WDT failed to write: Bad file descriptor
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 43711
if the initramfs kernel and payload were flashed in one block, the payload might not be at the start of the ubi partition due to bad blocks inside the kernel partition.
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 43513
it is now possible to flash a initramfs kernel and a sysupgrade tar file inside the ubi partition. on first boot, the takeover script will find the tar file, extract and finally sysupgrade it. this allows us to flash owrt/ubi images in a 2 phase setup using ODM webuis that are not ubi aware. this is needed by some mediatek and brokencom devices.
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 43505
this can be used on nand flashes and will skip bad blocks and run ecc on the
read data before dumping it.
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 43500
mtd.c:544:7: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘ssize_t’ [-Wformat]
mtd.c:602:1: warning: label ‘done’ defined but not used [-Wunused-label]
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 43383
1) nand_upgrade_tar: use a simpler condition that matches if () { }
logic and fix check of $kernel_length variable
2) nand_do_upgrade_stage2: use case, otherwise one could believe we
always call nand_upgrade_tar
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 43373
setsid is called fixing the pgrp issue
trigger the wdt while modules are being inserted
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 43193
Note, that licensing stuff is a nightmare: many packages does not clearly
state their licenses, and often multiple source files are simply copied
together - each with different licensing information in the file headers.
I tried hard to ensure, that the license information extracted into the OpenWRT's
makefiles fit the "spirit" of the packages, e.g. such small packages which
come without a dedicated source archive "inherites" the OpenWRT's own license
in my opinion.
However, I can not garantee that I always picked the correct information
and/or did not miss license information.
Signed-off-by: Michael Heimpold <mhei@heimpold.de>
SVN-Revision: 43155
- Consider not installed feeds as well
- Add option to decide whether to comment disabled feeds
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 42931
[base-files] shell-scripting: fix wrong usage of '==' operator
normally the '==' is used for invoking a regex parser and is a bashism.
all of the fixes just want to compare a string. the used busybox-ash
will silently "ignore" this mistake, but make it portable/clean at least.
this patch does not change the behavior/logic of the scripts.
Signed-off-by: Bastian Bittorf <bittorf@bluebottle.com>
SVN-Revision: 42911
Implementing "add-cert.sh" functionality described at
http://wiki.openwrt.org/doc/howto/wget-ssl-certs into Makefile
otherwise you need to create symbolic links for certificate hashes
yourself.
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
SVN-Revision: 42660
Without running fixtrx the image will not boot at the second time,
because the CRC the boot loader check is invalid at that time.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 42639
when running the postinst trigger we set PKG_UPGRADE=1 if this is an upgrade
and not an install.
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 42468
On brcm47xx (Huawei E970), I noticed that sysupgrade now tries to flash trx images which don't fit into the flash, resulting in non-booting system.
I found that mtd does trx size checking only when flashing to a partition called "linux". This patch changes this to be "firmware".
This matches the following patch which changed partition name in bcm47xxpart.c driver to "firmware":
commit 86b4d5ef68ca77ff6724ebb9bddd6b93239c87fc
Author: hauke <hauke@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Date: Sun Dec 1 16:32:32 2013 +0000
brcm47xx: use "firmware" partition name
...
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 38973
Signed-off-by: Mathias Adam <m.adam--openwrt@adamis.de>
SVN-Revision: 42403
somebody started to set a function returncode in the validation
stuff and everybody copies it, e.g.
myfunction()
{
fire_command
return $?
}
a function automatically returns with the last returncode,
so we can safely remove the command 'return $?'. reference:
http://tldp.org/LDP/abs/html/exit-status.html
"The last command executed in the function or script determines the exit status."
Signed-off-by: Bastian Bittorf <bittorf@bluebottle.com>
SVN-Revision: 42278
This changeset implements a new menuconfig option to generate separate
repositories for each enabled package feed instead of one monolithic one.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 42002
A missing path prevents the rootfs type contained in a SysupgradeNAND
tar file from being determined correctly.
This fixes it, and also corrects a minor spelling mistake.
Signed-off-by: Ben Mulvihill <ben.mulvihill@gmail.com>
SVN-Revision: 41564
in r41439 a flag for enabling remote logging was added,
but the actual check was done on a different variable.
Signed-off-by: Reiner Herrmann <reiner@reiner-h.de>
SVN-Revision: 41467
Regardles of the return code from validate_data _error variable will be 0 due
to 'local' command in the previous line. With this patch we are able to catch
the return code from validate_data tool.
Signed-off-by: Luka Perkov <luka@openwrt.org>
SVN-Revision: 41414
sysupgrade otherwise skips kernel part on devices which got
kernel in ubi due to kern_length being undefined, kernel_length
is being used instead.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 41327
Removed unused ubi file file from template as ubinized images are
passed directly and not inside the tarball.
Also removed left-over white-space.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 41237
i got complaints about the bad naming of the api. lets rename it while there are no users yet.
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 41220
Without this patch, /etc/hotplug.d/tty/30-3g won't be called when you insert or remove a USB-serial cellular modem.
(see Ticket #14117)
Signed-off-by: Matthew Reeve <mreeve@tenxnetworks.com>
SVN-Revision: 41039
Allow to use "package", "type", "name", "error" and "result"
as config option names:
package some_service
config section 'foo'
option name 'bar'
option type 'unknown'
Signed-off-by: Maxim Storchak <m.storchak@gmail.com>
SVN-Revision: 41006
The /sbin/block binary now requires and additional shared library, therfore set
LD_LIBRARY_PATH accordingly when invoking it from the temporary overlay.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 40526
This is required to make object "session" procedure "access" dump ACLs
when no "object" or no "function" parameters are passed.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 40496
NAND flash is very likely to contain bad blocks.
Currently, mtd and therefore sysupgrade fails when it encounters a single bad block, potentially leaving an unbootable system.
This patch allows the mtd utility to skip bad blocks in NAND flash and complete sysupgrade successfully.
Patch by: Matthew Redfearn <matt.redfearn@nxp.com>
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 40021
use the fd handover api of ubus to transfer log data
the uci option log_buffer_size can be used to override the default size of 16k
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 39898
Reorder BuildPackage calls, as libubox needs to come first for ABI
version handling to work
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 39722
- fix CMakeFile to support rpcd out of tree builds
- fix a possible file descriptor leak in the session deserialization code
- add uci.state call which is equivalent to uci -P /var/state get ...
- make uci.changes "config" argument optional to allow listing all deltas in one go
- fix inverted check in uci.commit and uci.revert, resulting in eroorneous permission denied responses
- only trigger config change events if libuci was able to parse the config
- rename misleading "commit" argument of uci.apply to the more appropriate name "rollback"
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 39224
Upstream development now takes place in a git repository which was clone
from the old svn repository. Switch the source location to the git tree
using the commit that corresponds to the old svn r618 revision.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 39153
The instance_config_move() function in the procd instance managing code is
missing a blobmsg_list_move() call to update the tracked file items with the
newly calculated checksums in case of a file change.
Without that change, services are always reloaded after the first change to
a tracked file regardless of whether there are any subsequent changes or not.
Add a missing instance of blobmsg_list_free() as well.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 39132
* fix up the order of respawn parameters for ubus
* add a event broadcast function
* add debug level handover between preinit and main process
* make the service running trigger be queued directly after the service was startetd
* Allow process respawning forever
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 38868
move log service from procd to ubox
some debloating on procd
the preinit part of procd is now also a seperate binary
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 38822
The current implementation of mtd will not append the backup
file created by sysupgrade to the correct partition, as mtd will append
the data to first jffs2 partition it finds. As the kernel is also
stored on a jffs2 partition (which resides before the overlay
partition), the data will be appended to this partition.
To fix this problem, a new option
-s <number> skip the first n bytes when appending data to the jffs2 partiton, defaults to "0"
is added to mtd.
Signed-off-by: Peter Wagner <tripolar@gmx.at>
SVN-Revision: 38807
swapon/swapoff are no longer provided by swap-utils; they are provided
by block-mount instead.
Signed-off-by: Nathan Hintz <nlhintz@hotmail.com>
SVN-Revision: 38795
The jffs2_ready() function in mount_root.c checks
the presence of various JFFS2 markers at the start
of a given MTD device. The function works on NOR
flashes because JFFS2 puts 'cleanmarker' nodes at
the start of freshly erased blocks.
However if jffs2 is used on a MTD device emulated
by the gluebi layer, the 'cleanmarker' nodes are
not present and the jffs2_ready() function fails.
Update the code to handle jffs2 correctly even on
MTD devices emulated by the gluebi layer.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38654
Fixes issues with UBIFS file system when due to unclean shutdown files would
end up with size 0. Furthermore, few style fixes are included too.
Signed-off-by: Luka Perkov <luka@openwrt.org>
SVN-Revision: 38410
The kmodloader executable disregarded the global directory prefix in
scan_module_folder() leading to a broken extroot for non-builtin modules.
Update to current git head to fix the prefix handling again.
SVN-Revision: 38392
This is to work around issues with package list generators creating
empty fields in some environments.
Based on a patch by Paul Selkrik <pselkrik@isc.org>
Signed-off-by: Steven Barth <steven@midlink.org>
SVN-Revision: 38390
Add package signing key and certificate configuration options to the
"Image configuration" submenu. If enabled, the Packages.gz list will
be signed as file Packages.sig. The passphrase for the signing key can
be sourced from a file or entered by the user. The signing certificate
is automatically added to the firmware image if opkg-smime is selected.
Signed-off-by: Evan Hunt <each@isc.org>
Signed-off-by: Steven Barth <steven@midlink.org>
SVN-Revision: 38284
After this change, "rmmod" and "modinfo" works even if the user gives
the file name spelling instead of the kernel internal one, so that e.g.
"rmmod nls_iso8859-1.ko" and "rmmod nls_iso8859_1" will both succeed.
SVN-Revision: 38252
Instead of canonicalizing module names in the internal avl tree simpyl use a
custom strcmp() variant for the avl tree key comparisation. The custom comperator
simply treats dashes and underscores the same, so "nls_iso8859-15" is equal to
"nls-iso8859-15".
This allows us to simplify the code considerably and makes manual "modprobe"
invocations more forgiving when looking up the given module name.
SVN-Revision: 38248