Commit Graph

408 Commits

Author SHA1 Message Date
Hans Dedecker
400c5f03c3 base-files: fix wan6 interface config generation for pppoe
Setting ipv6 to auto in case of a pppoe interface will trigger the
creation of a dynamic wan_6 interface meaning two IPv6 interfaces
(wan6 and wan_6) will be active on top of the pppoe interface.
This leads to unpredictable behavior in the network; therefore set
ipv6 to 1 which will prevent the dynamic creation of the wan_6
interface.
Further alias the wan6 interface on top of the wan interface for pppoe
as the wan6 interface can only be started when the link local address is
ready. In case of pppoe the link local address is negotiated during the
Internet Protocol Control Protocol when the PPP link is setup meaning
all the IP address info is only available when the wan interface is up.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-09-18 09:57:34 +02:00
Kevin Darbyshire-Bryant
7765e442d0 basefiles: allow suid coredumps
Set sysctl fs.suid_dumpable = 2

This allows suid processes to dump core according to kernel.core_pattern
setting.  LEDE typically uses suid to drop root priviledge rather than
gain it but without this setting any suid process would be unable to
produce coredumps (e.g. dnsmasq)

Processes still need to set a non zero core file process limit ('ulimit
-c unlimited' or if procd used 'procd_set_param limits
core="unlimited"') in order to produce a core.  This setting removes an
obscure stumbling block along the way.

>From https://www.kernel.org/doc/Documentation/sysctl/fs.txt

suid_dumpable:

This value can be used to query and set the core dump mode for setuid
or otherwise protected/tainted binaries. The modes are

0 - (default) - traditional behaviour. Any process which has changed
	privilege levels or is execute only will not be dumped.
1 - (debug) - all processes dump core when possible. The core dump is
	owned by the current user and no security is applied. This is
	intended for system debugging situations only. Ptrace is unchecked.
	This is insecure as it allows regular users to examine the memory
	contents of privileged processes.
2 - (suidsafe) - any binary which normally would not be dumped is dumped
	anyway, but only if the "core_pattern" kernel sysctl is set to
	either a pipe handler or a fully qualified path. (For more details
	on this limitation, see CVE-2006-2451.) This mode is appropriate
	when administrators are attempting to debug problems in a normal
	environment, and either have a core dump pipe handler that knows
	to treat privileged core dumps with care, or specific directory
	defined for catching core dumps. If a core dump happens without
	a pipe handler or fully qualifid path, a message will be emitted
	to syslog warning about the lack of a correct setting.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
2017-09-12 22:18:45 +02:00
Stijn Tintel
ef255fc57e base-files: add /etc/profile.d to conffiles
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-03 01:27:46 +03:00
Stijn Tintel
8446d3de05 base-files: order conffiles alphabetically
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-03 01:27:46 +03:00
Rafał Miłecki
b91a38d647 base-files: fix PKG_CONFIG_DEPENDS to include version.mk entries
Including version.mk sets PKG_CONFIG_DEPENDS to config entries used for
VERSION_SED command. We should keep these configs to make sure package
gets refreshed when needed.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-06-22 10:05:23 +02:00
Yousong Zhou
f334a0cdb8 base-files: allocate uid/gid starting from 65536
There already exist static assignment of uid/gid 65533 in packages feed
and we have nobody/nogroup taking 65534 as their ids.  Let's change the
pid of dynamic assignment to start from 65536 so that the two assignment
scheme will not collide with each other

While at it, fix the scan command checking existence of uid/gid

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-06-18 10:39:35 +08:00
Jo-Philipp Wich
7f91cabd0d base-files: network.sh: properly report local IPv6 addresses
Rework the network_get_ipaddr6() and network_get_ipaddrs6() functions to
fetch the effective local IPv6 address of delegated prefix from the
"local-address" field instead of naively hardcoding ":1" as static suffix.

Fixes FS#829.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-06-08 12:06:01 +02:00
Matthias Schiffer
393817df5d
procd: remove procd-nand package
We always want to support staged upgrades now, so it's better to include
upgraded into the main package. /lib/upgrade/nand.sh is moved to
base-files.

The procd-nand-firstboot package is removed for now, it may return later
as a separate package.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-29 23:50:32 +02:00
Vitaly Chekryzhev
01337ba472 build: add devel option to store build config in firmware
Store config.seed in firmware /etc/build.config

Signed-off-by: Vitaly Chekryzhev <13hakta@gmail.com>
2017-03-18 12:08:04 +01:00
Hans Dedecker
5f7a081553 base-files: add /etc/iproute2/rt_protos
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-01-18 13:15:28 +01:00
Felix Fietkau
84bd74057f build: use mkhash to replace various quirky md5sum/openssl calls
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-05 11:09:12 +01:00
Jonas Gorski
afaa34ccd7 base-files: don't modify enabled state of service on upgrade
Properly stop/start services on upgrade, but don't change the enabled
state.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Acked-by: Jo-Philipp Wich <jo@mein.io>
2016-11-21 18:40:15 +01:00
Felix Fietkau
cc853810a4 base-files: validate metadata of sysupgrade images
Use fwtool to extract it, only require metadata to be present if the
platform sysupgrade script sets REQUIRE_IMAGE_METADATA=1

Image metadata is in JSON format and contains a list of supported
devices, along with version information that could be displayed by a UI
later before the actual upgrade happens.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-11-19 11:24:09 +01:00
Florian Fainelli
ef64c8694b base-files: Allow subtargets to define base-files.mk
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2016-09-19 19:42:10 +02:00
Mathias Kresin
5fadd4397b preinit: use only the image config options
The pi_* variables and the fs_failsafe_wait_timeout variable are set by
the CONFIG_TARGET_PREINIT_* config options. No need to maintain the same
values twice.

All other fs_ variables were never used.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2016-08-10 03:04:08 +02:00
Felix Fietkau
5fd2eabeb2 base-files: remove support of profile-specific base-files
It is incompatible with multi-profile builds and has not been used
in-tree anyway.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-26 08:26:24 +02:00
Jo-Philipp Wich
8d51706616 base-files: use LEDE NTP vendor pool
The vendor NTP pool for the LEDE project got approved, so switch to it now.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-06-28 19:14:31 +02:00
Daniel Dickinson
f954f4337b base-files: Add standard os-release file
/etc/os-release is the standard distribution release information
file, therefore add it (and image configuration options for
fields not previously present in LEDE).  Once it is deemed
reasonable the non-standard openwrt_release, openwrt_version,
and device_info files could be removed (that is with this patch
we consider them deprecated in favour of the standard file).

Signed-off-by: Daniel Dickinson <lede@daniel.thecshore.com>
2016-06-24 13:52:53 +02:00
John Crispin
87eb8fad13 base-files: remove fstab symlink
the symlink no longer gets used since we switched to the block-mount tool.

Signed-off-by: John Crispin <john@phrozen.org>
2016-06-17 04:13:07 +02:00
Hannu Nyman
df7581e4c0 base-files: increase default system log size to 64 kB
Increase the default system log buffer size
from 16 kB (built-in default in ubox logd)
to 64 kB by setting the option in /etc/config/system.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-06-07 23:13:29 +02:00
John Crispin
a13f47760c base-files: add a conditional dependency to lede-keyring
Signed-off-by: John Crispin <john@phrozen.org>
2016-04-29 04:15:34 +02:00
John Crispin
b4e33a1c08 base-files: Allow to disable failsafe mode
Signed-off-by: Daniel Dickinson <openwrt@daniel.thecshore.com>
2016-04-19 10:07:35 +02:00
Jo-Philipp Wich
9e04019024 package: flag essential components as nonshared
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-04-06 22:38:47 +02:00
John Crispin
fa69553900 branding: add LEDE branding
Signed-off-by: John Crispin <blogic@openwrt.org>
2016-03-24 22:40:13 +01:00
Jo-Philipp Wich
eced3b3a35 base-files: support passing mode to ucidef_set_led_netdev()
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 48806
2016-02-26 14:49:17 +00:00
Jo-Philipp Wich
117cef6d44 base-files: add netifd's default prelocal table to /etc/iproute2/rt_tables
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 48685
2016-02-09 12:34:05 +00:00
Jo-Philipp Wich
cc289e0adb base-files: honor CONFIG_TARGET_INIT_PATH
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 48678
2016-02-08 14:28:50 +00:00
John Crispin
3f78186f76 base-files: allow timezone to be overriden by zonename (proper zoneinfo support)
Signed-off-by: Roman Yeryomin <roman@advem.lv>

SVN-Revision: 47980
2015-12-23 14:44:31 +00:00
Felix Fietkau
ce98f1d264 base-files: drop the now unnecessary dependency on opkg/host
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47886
2015-12-13 17:03:51 +00:00
John Crispin
2f42d9e27d base-file: remove /tmp/.jail (now useless)
Signed-off-by: Etienne CHAMPETIER <champetier.etienne@gmail.com>

SVN-Revision: 47855
2015-12-11 15:06:31 +00:00
Jo-Philipp Wich
6d3901bf76 base-files: config_generate: honour port_mask property (#20963)
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 47609
2015-11-24 13:39:53 +00:00
Felix Fietkau
b61e77aedd base-files: use the correct path in case of modified preinit options
If the user sets any preinit options in .config, the wrong path may get
applied due to wrong default value in image-config.in and due to Makefile
writing also the unchanged options into 00_preinit.conf

Modify the default path in image-config.in to match the current default
path set by r47080. Also modify the fall-back default in Makefile.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>

SVN-Revision: 47590
2015-11-22 19:06:20 +00:00
Steven Barth
468c1fb320 base-files: revert to default ECN settings
Signed-off-by: Steven Barth <steven@midlink.org>

SVN-Revision: 47160
2015-10-07 21:11:24 +00:00
Steven Barth
d7023fc0bc base-files: sanitize and unify $PATH
Previously init and hotplug paths were different from console.

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

SVN-Revision: 47080
2015-10-02 08:24:32 +00:00
Felix Fietkau
5da85f7a01 base-files: add a dependency on fstools
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47066
2015-09-28 09:40:39 +00:00
Steven Barth
00045fe9d0 base-files: add /etc/iproute2/rt_tables, replace ifconfig-usage
Signed-off-by: Steven Barth <steven@midlink.org>

SVN-Revision: 46830
2015-09-08 17:44:13 +00:00
Jo-Philipp Wich
3d1890053c base-files: add /etc/hosts entries for ::1, ff02::1 and ff02::2
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 46771
2015-09-02 11:54:03 +00:00
John Crispin
3787c32183 sysctl: read settings from /etc/sysctl.d/*.conf
This changes makes it possible to store custom settings
in individual files inside the directory /etc/sysctl.d/.

Signed-off-by: Stefan Tomanek <stefan.tomanek+openwrt@wertarbyte.de>

SVN-Revision: 46239
2015-07-07 13:47:23 +00:00
Felix Fietkau
beca028bd6 build: add integration for managing opkg package feed keys
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45286
2015-04-06 19:39:51 +00:00
Nicolas Thill
fe46689f10 packages: use $(LN) macro, make symlinks relative
Signed-off-by: Nicolas Thill <nico@openwrt.org>

SVN-Revision: 45250
2015-04-03 00:07:43 +00:00
Nicolas Thill
11d4a00c88 base-files: add more config files to conffiles section
Signed-off-by: Nicolas Thill <nico@openwrt.org>

SVN-Revision: 45244
2015-04-02 14:53:24 +00:00
Jo-Philipp Wich
e3744a7cc7 base-files: fix target/subtarget value in /etc/openwrt_release
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 44409
2015-02-11 15:12:32 +00:00
John Crispin
b0d2a9e77a base-files: default_postinst() - create user:group first (resend)
create user:group before running postinst-pkg. the postinst hook might require
the user:group to already exist.

Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>

SVN-Revision: 43472
2014-12-01 16:15:13 +00:00
Nicolas Thill
f4417f7ad8 package/*: replace occurences of 'ln -sf' to '$(LN)'
Signed-off-by: Nicolas Thill <nico@openwrt.org>

SVN-Revision: 43205
2014-11-06 19:35:34 +00:00
John Crispin
74a3a77bcd license info - revert r43155
turns out that r43155 adds duplicate info.

Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 43167
2014-11-03 09:56:44 +00:00
John Crispin
c10d97484a Add more license tags with SPDX identifiers
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
2014-11-03 08:01:08 +00:00
Steven Barth
bec9d38fa4 Add a few SPDX tags
Signed-off-by: Steven Barth <steven@midlink.org>

SVN-Revision: 43151
2014-11-02 12:20:54 +00:00
Jo-Philipp Wich
f63509ac89 base-files: /lib/functions/network.sh: fix network_get_ipaddr6
When looking for the first ipaddr also consider the current prefix just
like network_get_ipaddrs6 does. If ipv6-address was empty the function
did not return the first ipaddr even if the list was non-empty.

fixes commit 83e9122f88a002871d5cdf421cf6aa6052b7e006

Signed-off-by: Henning Schild <henning@hennsch.de>

SVN-Revision: 42139
2014-08-11 18:15:18 +00:00
Felix Fietkau
d5653558ac base-files: properly escape strings for version info
Make sure they don't break the sed command, and also make device_info
and openwrt_release more robust for parsing by scripts

Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 41885
2014-07-29 13:30:23 +00:00
Felix Fietkau
dbb77e39a0 base-files: add extra version configuration options for OEM manufacturer info
Creates /etc/device_info which will be used to fill in information for
WPS and other protocols that need manufacturer/device information

This helps with creating OpenWrt firmware for OEM or rebranded devices.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 41884
2014-07-29 13:30:12 +00:00
John Crispin
818e38625f base-files: add enabled config option for ntp service
Signed-off-by: Luka Perkov <luka@openwrt.org>

SVN-Revision: 41354
2014-06-27 07:52:06 +00:00
Jo-Philipp Wich
7eb721425e base-files: depend on jsonfilter and rewrite network.sh to use it
Switches /lib/functions/network.sh from jshn based json parsing to
jsonfilter expression while keeping the existing api.

Expensive methods like "network_find_wan" are up to 20x faster now.

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

SVN-Revision: 41281
2014-06-19 16:06:44 +00:00
John Crispin
44e2de03a4 base-files: calling stop_service before procd_kill.
Before this patch, doing `/e/c/network restart' will emit the folloing
error by `ubus network.wireless down "{}"' because netifd already quit
by that time.

	Command failed: not found

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>

SVN-Revision: 40906
2014-06-02 12:42:44 +00:00
Felix Fietkau
c622a37101 base-files: remove duplicate stop_service() function.
It was introduced in commit 2f966e8, "base-files: add a post start hook
for procd managed services".

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>

SVN-Revision: 40576
2014-04-27 18:48:57 +00:00
Jo-Philipp Wich
6ae1433ab9 base-files: expose taint flags in /etc/openwrt_release
SVN-Revision: 39437
2014-01-31 15:48:47 +00:00
Luka Perkov
d66d2ad104 base-files: add ucidef_add_switch_port function
Signed-off-by: Luka Perkov <luka@openwrt.org>

SVN-Revision: 39372
2014-01-23 11:33:41 +00:00
John Crispin
f18112883f sysupgrade: do not kill any processes in failsafe
sysugrade killed the lock causing failsafe to stop

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

SVN-Revision: 39318
2014-01-17 22:12:05 +00:00
Gabor Juhos
b7914344ad base-files: add macaddr_canonicalize helper function
In commit r38690, the MAC address canonicalization
has been converted to use 'tr' instead of 'printf'.
This only works if with MAC addresses which uses
the 'xx:xx:xx:xx:xx:xx' format.

However on some boards, the MAC addresses are stored
in different format in the mtd partition. Some vendors
are using hyphens or dots as separators instead of
colons. Also the leading zeroes may be missing from the
individual octets or those are replaced with spaces.

Add a new function which can be used to convert these
into the 'xx:xx:xx:xx:xx:xx' format. Also update the
'mtd_get_mac_ascii' function to use the new helper.

The helper function is based on this code:
  http://isquared.nl/blog/2010/08/11/Bash-function-to-canonicalize-MAC-addresses/

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

SVN-Revision: 38803
2013-11-14 17:44:42 +00:00
Luka Perkov
1df0179b28 base-files: don't enter failsafe if triggered by switch
Fixes failsafe issues with switches after r38725.

Signed-off-by: Luka Perkov <luka@openwrt.org>

SVN-Revision: 38770
2013-11-11 23:34:11 +00:00
Gabor Juhos
23cf426324 base-files: mtd_get_mac_ascii bugfix
The mtd_get_mac_ascii utility function was broken. This fixes it.

  - Remove the superfluous include of /lib/functions.sh. The
    function is already in that file so it is pointless,
  - only use a variable if the whole key word matches,
  - don't try to process the MAC address if it is empty,
  - use 'tr' to canonicalize the MAC address,

Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
[juhosg: add more fixes, update commit message]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 38690
2013-11-08 12:16:21 +00:00
Jo-Philipp Wich
b7f8f212ae base-files: implement -l (--list-backup) sysupgrade parameter to list the files that would be backed up
SVN-Revision: 37627
2013-07-31 18:11:55 +00:00
Jo-Philipp Wich
2a1ccf1830 base-files: abort sysupgrade if file specified with --restore-config is not found
SVN-Revision: 37624
2013-07-31 14:10:34 +00:00
Jo-Philipp Wich
2771edf647 base-files: implement -T (--test) sysupgrade parameter to verify image without actually flashing it
SVN-Revision: 37620
2013-07-30 16:42:05 +00:00
Gabor Juhos
8d55ea10ad base-files: add mtd_get_part_size helper
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 37475
2013-07-20 09:25:49 +00:00
Luka Perkov
67f1d364b8 base-files/busybox: move ntpd init script from base-files to busybox
SVN-Revision: 37383
2013-07-17 22:24:45 +00:00
John Crispin
af95449273 base-files: procd is now the init process
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 36998
2013-06-21 16:53:38 +00:00
John Crispin
aa2fc19800 base-files: procd init is now the default, remove files.old
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 36996
2013-06-21 16:53:26 +00:00
Steven Barth
33c620773d base-files: remove unnecessary early sysctl-hack
SVN-Revision: 36920
2013-06-11 14:10:45 +00:00
Steven Barth
e2f33bedfa base-files: set default IPv6 forwarding value to 1
SVN-Revision: 36918
2013-06-11 13:30:18 +00:00
Steven Barth
3f67360012 base-files: use less entropy when generating ULAs
SVN-Revision: 36865
2013-06-06 09:52:00 +00:00
Jo-Philipp Wich
026271d03c base-files: change network_find_wan() procedure to ignore default gateways in different routing tables
SVN-Revision: 36553
2013-05-06 09:33:56 +00:00
Jo-Philipp Wich
acca7eadc4 package/base-files: change sysctl handling Move /etc/init.d/sysctl to index 00 and add hotplug script that applies interface specific sysctls for interfaces that only appear later - this allows to reliably configure per-interface parameters in sysctl.conf, e.g. to disable ipv6 autoconfig on a specific iface.
SVN-Revision: 36129
2013-03-25 18:43:30 +00:00
Florian Fainelli
513de712f9 base-files: also apply r36107 to files.old
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 36112
2013-03-23 12:44:10 +00:00
Florian Fainelli
3810cc0f46 base-files: sysupgrade fail with eglibc
With eglibc, "ldd busybox" give us
    libcrypt.so.1 => /lib/libcrypt.so.1 (0x774be000)
    libm.so.6 => /lib/libm.so.6 (0x773e4000)
    libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x773c0000)
    libc.so.6 => /lib/libc.so.6 (0x77276000)
    /lib/ld.so.1 (0x774fe000)

Thus /lib/ld.so.1 is not printed by the libs fonction and isn't copied to the 'new' root before pivot root
libs() { ldd $* | awk '{print $3}'; }
https://dev.openwrt.org/browser/trunk/package/base-files/files/lib/upgrade/common.sh

With uclibc the last line of "ldd busybox" is
    ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0x77ada000)

Don't know for musl!

This patch replace https://dev.openwrt.org/changeset/19167, as glibc is gone
The other way around is to rework libs()

Please apply the fix (mine or another) on trunk and AA
Might fix https://dev.openwrt.org/ticket/12273

Signed-off-by: Etienne CHAMPETIER <etienne.champetier@free.fr>
Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 36107
2013-03-22 10:06:06 +00:00
John Crispin
f43b7934d2 make basefiles aware of procd
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 36003
2013-03-13 18:11:19 +00:00
Gabor Juhos
6c627a266b base-files: introduce commonly used helper functions for setting leds
Currently, most platforms define such helpers in their own diag.sh
implementation with almost identical code. By factoring out the
common ground it's possible to simplify maintainability and
homogenize the haptics over multiple platforms (so far as is
reasonably practicable, in a next step).

[juhosg:
 - fix led_set_attr parameters in led_timer
 - add led_morse and status_led_set_morse helpers
 - add status_led_blink_{preinit,failsafe} helpers]

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 35648
2013-02-18 09:56:23 +00:00
Gabor Juhos
5a8c63b47e base-files: add macaddr_{add,2bin,setbit_la} helpers
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 35614
2013-02-16 11:50:22 +00:00
Gabor Juhos
70d40b2ddd base-files: add mtd_get_mac_{ascii,binary} helpers
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 35612
2013-02-16 11:50:19 +00:00
Steven Barth
92ad26d1b6 base-files: Fix IPv6 early sysctls again * Kernel IPv6 /proc interface inconsistency caused races
SVN-Revision: 35417
2013-02-01 12:28:24 +00:00
Steven Barth
ea7c9c85a8 base-files: Fix race-conditions with IPv6 sysctls
SVN-Revision: 35368
2013-01-29 10:13:33 +00:00
Steven Barth
5f735b291f base-files: remove IPv6-forwarding setting for all interfaces
SVN-Revision: 35344
2013-01-28 13:53:38 +00:00
Steven Barth
231f8c2969 base-files: fix network_get_prefix6
SVN-Revision: 35300
2013-01-22 16:47:16 +00:00
Steven Barth
e0a338c969 base-files: Set default value for IPv6 forwarding
SVN-Revision: 35299
2013-01-22 16:47:09 +00:00
Steven Barth
411d818008 base-files: rename ULA generation script
SVN-Revision: 35204
2013-01-17 16:16:02 +00:00
Steven Barth
847cd984b9 base-files: add support for ipv6-prefixes in connection with netifd
SVN-Revision: 35168
2013-01-15 13:07:51 +00:00
Vasilis Tsiligiannis
674439299f base-files: Don't pass '--set-worker /lib/hotplug2/worker_fork.so' to hotplug2 (#12781)
SVN-Revision: 35095
2013-01-11 13:20:51 +00:00
Steven Barth
f657787b52 base-files: Fix a typo in config_list_foreach
SVN-Revision: 34893
2012-12-27 14:10:01 +00:00
Felix Fietkau
bbc6694d98 base-files: add basic procd integration, let procd start (and restart) ubus instead of having an ubus init script
SVN-Revision: 34866
2012-12-22 18:56:09 +00:00
Jo-Philipp Wich
3339316fbe base-files: use json_is_a() in network.sh
SVN-Revision: 34733
2012-12-17 13:07:42 +00:00
Jo-Philipp Wich
1600ba99e4 base-files: various enhancements to network.sh
- support reading inactive gateways and DNS information in
	  network_get_gateway(), network_get_dnsserver() and network_get_dnssearch()
	  by passing "true" as optional last argument
	- internally cache fetched values to speed up subsequent accesses to the same
	  data, introduce network_flush_cache() to clear them
	- add some inline function documentation

SVN-Revision: 34722
2012-12-16 18:22:02 +00:00
Gabor Juhos
38fced86ee base-files: add support for the morse LED trigger
Write "delay" and "message" options to their respective files,
allowing Morse code message configuration through UCI.
The delay (dit length) defaults to 150ms (about 8 words per minute,
suitable for beginners).

Signed-off-by: Petr Viktorin <encukou@gmail.com>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 34380
2012-11-25 17:20:49 +00:00
Florian Fainelli
5ae2524d3a base-files: use a natural mount syntax
Busybox built against musl-libc will choke on these otherwise, besides that
it is more natural to use the filesystem type, then options, then name, then
mountpoint.

Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 34308
2012-11-23 20:02:02 +00:00
Florian Fainelli
d3f22617a2 base-files: skip LEDs handled by rssileds in led init-script
Without this, /etc/init.d/led will try to set the non-existing 'rssi' trigger.
This doesn't harm as the kernel will refuse this setting, but it outputs some
ugly log-lines:
Jun 24 10:15:19 OpenWrt user.info sysinit: setting up led RSSILOW
Jun 24 10:15:19 OpenWrt user.info sysinit: sh: write error: Invalid argument
...

In order to avoid this, skip LEDs with trigger = "rssi" in /etc/init.d/led

Signed-off-by: Daniel Golle <dgolle@allnet.de>

SVN-Revision: 33717
2012-10-11 06:45:02 +00:00
Florian Fainelli
78f4cf3d70 base-files: release an attached loop device on umounting
Signed-off-by: Michael Heimpold <mhei@heimpold.de>

SVN-Revision: 33477
2012-09-19 15:13:44 +00:00
Jo-Philipp Wich
0fd1fb6252 base-files: add uci-defaults script to migrate sysctl.conf (#12196)
SVN-Revision: 33448
2012-09-17 17:15:56 +00:00
Jo-Philipp Wich
70aaa116eb base-files: provide a sysupgrade -r (--restore-backup) option as convenience wrapper for tar -C / -x(v)zf
SVN-Revision: 33147
2012-08-12 13:20:27 +00:00
Florian Fainelli
fb9023bb8a move LIB_SUFFIX from base-files to rules.mk
Some packages are going to need fixups based on LIB_SUFFIX

SVN-Revision: 33080
2012-08-10 14:15:06 +00:00
Jo-Philipp Wich
17dc1d5c44 base-files: fix option parsing of -F/--force parameter
SVN-Revision: 33075
2012-08-09 18:30:47 +00:00
Florian Fainelli
31e46b4293 base-files: check for ldd presence and executability (#11991)
SVN-Revision: 33057
2012-08-08 15:37:34 +00:00
Florian Fainelli
6afd1725f1 base-files: fix detection of standalone ldd
When standalone ldd is selected in config the binary is installed in /usr/bin/ldd.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>

SVN-Revision: 32891
2012-07-27 15:35:00 +00:00
Jo-Philipp Wich
f2dde4f5ba base-files: allow wireless ifaces to be part of multiple networks
SVN-Revision: 32503
2012-06-26 15:25:33 +00:00
Jo-Philipp Wich
57a7257569 base-files: implement network_get_gateway(), network_get_gateway6(), network_find_wan() and network_find_wan6() in /lib/functions/network.sh
SVN-Revision: 32397
2012-06-17 11:50:50 +00:00
Felix Fietkau
9a1d6f0678 base-files: override Build/Compile/Default instead of Build/Compile (fixes #11667)
SVN-Revision: 32339
2012-06-13 16:25:29 +00:00
Felix Fietkau
07826e391d base-files: move all toolchain packages to a separate package directory 'toolchain'
SVN-Revision: 32169
2012-06-10 20:27:30 +00:00
Jo-Philipp Wich
6cdf25289c base-files: add permission exceptions, do not clobber shadow permissions - based on patch by Mark Mentovai <mark@moxienet.com>
SVN-Revision: 32073
2012-06-05 18:02:00 +00:00
Jo-Philipp Wich
5e84df6bac base-files: ship a static initial shadow db instead of creating it from passwd with sed, this fixes registering of users at compile time
SVN-Revision: 32064
2012-06-05 17:48:41 +00:00
Jo-Philipp Wich
a044a43d06 base-files: make user_add() populate the shadow db as well
SVN-Revision: 32063
2012-06-05 17:40:32 +00:00
Felix Fietkau
8a9e94b077 base-files: remove base-files-network, netifd is the only supported option now
SVN-Revision: 31980
2012-05-29 12:59:03 +00:00
Jo-Philipp Wich
f1d04190c5 base-files: introduce /lib/functions/network.sh This file will contain common procedures to deal with network interfaces. Initially provides network_get_ipaddr(), network_get_ipaddr6(), network_get_subnet() and network_get_subnet6() to determine the primary IP addresses or subnets of a given logical interface.
SVN-Revision: 31935
2012-05-28 03:15:02 +00:00
Felix Fietkau
5eed1d8f6b enable netifd by default and add its config variable to PKG_CONFIG_DEPENDS in a few relevant places
SVN-Revision: 31730
2012-05-14 23:33:35 +00:00
Mirko Vogt
232b7aa65b remove special treatment when using glibc - support got dropped
SVN-Revision: 31504
2012-04-28 22:24:16 +00:00
Mirko Vogt
334fd4199b purge support for glibc - use eglibc instead!
for reference: http://www.mail-archive.com/openwrt-devel@lists.openwrt.org/msg13425.html

SVN-Revision: 31503
2012-04-28 22:24:12 +00:00
Florian Fainelli
129afe12b7 base-files: fix typo in 05_firstboot_skip script (#11359)
SVN-Revision: 31492
2012-04-27 16:49:16 +00:00
Jo-Philipp Wich
b4312a8ba1 base-files: reformat banner to better work with varying version string lengths, do not set image options if menu is disabled (#11280)
SVN-Revision: 31289
2012-04-15 15:21:55 +00:00
Jo-Philipp Wich
a43ae30e1b include, base-files, opkg: introduce version configuration to override the embedded version info of generated images - Introduce new Kconfig symbols VERSION_DIST, VERSION_NICK, VERSION_NUMBER and VERSION_REPO to specify distribution, release name, version and repository for a given build - Introduce include/version.mk to provide common helpers for packages dealing with versions - Make opkg use version.mk to populate the opkg.conf template - Make base-files use version.mk to populate /etc/openwrt_version, /etc/openwrt_release and /etc/banner
The available placeholders are:
 %D .. Replace with $(CONFIG_VERSION_DIST), default to "OpenWrt"
 %d .. Like %D, but all characters made lowercase and spaces substituted with "_" (e.g. "openwrt")
 %N .. Replace with $(CONFIG_VERSION_NICK), default to the build tree release (e.g. "Attitude Adjustment")
 %n .. Like %N, but all characters made lowercase and spaces substituted with "_" (e.g. "attitude_adjustment")
 %V .. Replace with $(CONFIG_VERSION_NUMBER), default to the build tree release (e.g. "r31262")
 %v .. Like %V, but all characters made lowercase and spaces substituted with "_"
 %C .. Replace with $(CONFIG_VERSION_NUMBER), default to "Bleeding Edge"
 %c .. Like %C, but all characters made lowercase and spaces substituted with "_" (e.g. "bleeding_edge")
 %U .. Replace with $(CONFIG_VERSION_REPO), default to "http://downloads.openwrt.org/snapshots/trunk/%T/packages"
 %R .. Replace with the current build tree revision (e.g. "r31262" or "75488c4a05b8033cf69e91874a61852db7ba9c6c")
 %T .. Replace with the current target (e.g. "ar71xx")
 %S .. Replace with the current target/subtarget combo (e.g. "adm5120/router_le")

SVN-Revision: 31262
2012-04-12 17:31:16 +00:00
Jo-Philipp Wich
3c3941f109 base-files: remove network preconfig, it collides with ar71xx network firstboot uci-defaults To supply custom network settings, it is better to embed a complete network config file using the files/ overlay, the old image lan preconfig options are also very limited in scope and actually collide with sysupgrade and firstboot hardware detection on at least ar71xx and possibly other targets, therfore drop this facility.
SVN-Revision: 31258
2012-04-12 09:43:44 +00:00
Jo-Philipp Wich
086cae30ce base-files: enable conntrack accounting in sysctl. It used to be a compile time option which got deprecated
SVN-Revision: 30805
2012-03-04 14:53:17 +00:00
Jo-Philipp Wich
6b9bf71881 base-files: add a uci-defaults script which will migrate the root password to /etc/shadow if needed
SVN-Revision: 29865
2012-01-22 22:25:42 +00:00
Jo-Philipp Wich
9fd3886365 base-files: do not pass --set-worker /lib/hotplug2/worker_fork.so to hotplug2 anymore, its statically linked - patch by Viktar Palstsiuk <viktar.palstsiuk@promwad.com>
SVN-Revision: 29806
2012-01-19 15:37:47 +00:00
Jo-Philipp Wich
4e88bcfb00 base-files: implement a --force option for sysupgrade to override image checks, useful to upgrade old ar71xx installations to current trunk ones
SVN-Revision: 29688
2012-01-08 15:30:37 +00:00
Gabor Juhos
ff89832fdb package/base-files: add support for the switch LED trigger
SVN-Revision: 29629
2011-12-31 15:02:35 +00:00
Jo-Philipp Wich
1c6821b42e base-files: add -b (--create-backup) option to sysupgrade, which generates a backup .tar.gz according to the user settings. This will also be reused by LuCI.
SVN-Revision: 29587
2011-12-20 17:25:15 +00:00
Jo-Philipp Wich
d46e17548b base-files: kill remaining processes after running user hooks (#10461)
SVN-Revision: 29256
2011-11-19 16:50:25 +00:00
Jo-Philipp Wich
010e58d209 base-files: another empty password check fix (#10440)
SVN-Revision: 29208
2011-11-17 09:40:06 +00:00
Jo-Philipp Wich
33443d2a8c base-files: now that we have date -k, adjust the kernel timezone after setting up TZ and localtime
SVN-Revision: 29204
2011-11-17 01:18:22 +00:00
Jo-Philipp Wich
6d80ce78f1 base-files: rewrite killing of nonessential services to not rely on top, use the proc filesystem only
SVN-Revision: 29187
2011-11-16 15:01:18 +00:00
Jo-Philipp Wich
8b20bfafdf base-files: prime root password with "x" to notify programs that there is a shadow record, fix /bin/login.sh password detection accordingly. Solves broken key based dropbear login with empty password after r28935.
SVN-Revision: 29130
2011-11-14 19:02:01 +00:00
Jo-Philipp Wich
20ff304ed9 base-files: now that the initial password is completely empty (and not primed with "!") adjust login.sh for it to make telnetd available again
SVN-Revision: 28943
2011-11-11 13:25:31 +00:00
Imre Kaloz
7944b6fa32 enable and use shadow passwords by default
SVN-Revision: 28936
2011-11-10 12:55:01 +00:00
Nicolas Thill
b7b56df707 package/base-files: enhance & cleanup service wrappers
* add service_check function for checking if a process is alive
 * add service_signal for sending arbitrary signals to a process
 * change service_stop to send a TERM signal first, wait for the process to die and send a KILL signal if it doen't
 * have service_kill print a warning on STDERR stating it has been deprecated

SVN-Revision: 28865
2011-11-08 22:47:49 +00:00
Jo-Philipp Wich
daca6a6a97 base-files: do not assume that "top" is busybox' top, but try to call the applet explicitely
SVN-Revision: 28862
2011-11-08 18:48:38 +00:00
Jo-Philipp Wich
a73fffe857 base-files: properly handle wifi ifaces with no network attached, useful for unmanaged interfaces like used for batman or monitoring
SVN-Revision: 28860
2011-11-08 14:42:58 +00:00
Nicolas Thill
b6aef59ea8 package/base-files: move /etc/functions.sh to /lib/functions.sh
SVN-Revision: 28857
2011-11-08 14:14:29 +00:00
Nicolas Thill
93886bc776 package/base-files: use new service wrapper
SVN-Revision: 28835
2011-11-07 22:58:34 +00:00
Jo-Philipp Wich
e3daeabda3 base-files: add some more protected services to sysupgrade kill blacklist
SVN-Revision: 28732
2011-11-03 19:25:25 +00:00
Jo-Philipp Wich
52e93e54bc base-files: sysupgrade: kill all but essential processes before starting the update
SVN-Revision: 28626
2011-10-27 16:52:31 +00:00
Gabor Juhos
4cc48089c7 base-files/sysupgrade: add more busybox applet symlinks to ramdisk
Adds symlinks for printf and wc to make life happier in the sysupgrade ramdisk.
Also make code more readable by escaping that overly long line.

Signed-off-by: Daniel Golle <dgolle@allnet.de>

SVN-Revision: 28616
2011-10-27 07:54:49 +00:00
Jo-Philipp Wich
272d95f0f1 base-files: remove rdate integration, add busybox ntpd init script and server list in /etc/config/system The rdate applet proved to be too unreliable to obtain the current time on boot: - public time servers are rare and often unreachable or overloaded - rdate does not daemonize, it needs a network connection the moment it is started, leading to race conditions - the /etc/config/timeserver configuration is overly complex and there is no reliable way to disable rdate invocations - the time protocol as specified in RFC 868 is considered obsolete This commit adds an init script /etc/init.d/sysntpd which starts and stops the busybox ntpd accordingly. The builtin ntpd can be disabled by either disabling the init script, removing the symlink to busybox or by clearing the timeserver list in /etc/config/system.
SVN-Revision: 28612
2011-10-27 00:21:53 +00:00
Felix Fietkau
55aeabae10 add an initial (experimental) version of netifd, disabled by default
SVN-Revision: 28499
2011-10-21 01:47:49 +00:00
Felix Fietkau
c2b5767572 base-files: move network related scripts to a separate package to make the transition to netifd easier
SVN-Revision: 28495
2011-10-20 15:01:06 +00:00
Jo-Philipp Wich
59c13202e0 base-files: introduce "igmp_snooping" option to toggle IGMP snooping on bridge interfaces
SVN-Revision: 28412
2011-10-11 13:43:08 +00:00
Jo-Philipp Wich
bfbbe5893f base-files: use "zonename" system option to symlink /etc/localtime via /tmp/localtime to /usr/share/zoneinfo for glibc and eglibc
SVN-Revision: 28306
2011-09-26 02:28:04 +00:00
Jo-Philipp Wich
41838f4585 base-files: make ip matching in dns add/remove functions more explicit, avoids overmatching pairs like 1.2.3.35 and 1.2.3.3
SVN-Revision: 28291
2011-09-23 08:35:50 +00:00
Jo-Philipp Wich
aab33e2e9a base-files: fix arp() procedure to properly detect /usr/bin/arp
SVN-Revision: 27965
2011-08-12 14:34:39 +00:00
Jo-Philipp Wich
94c728dc39 base-files: use "reboot -f" after sysupgrade to prevent executing deleted init scripts
SVN-Revision: 27776
2011-07-25 22:19:55 +00:00
Jo-Philipp Wich
365f76551a base-files: attempt bring up related wifi devices when calling ifup If a user invoked /sbin/ifup to bring up an interface, the setup used to fail in case of wireless networks tied to a non-bridged interface definition. Likewise, the bringup of "lan" in the default configuration will reinitialize the bridge but do not re-join the wireless network to it, requiring an extra call to /sbin/wifi (which might not be possible anymore due to a severed link if connected wirelessly).
The changeset modifies the "ifup" command to search for related wireless
devices and call "wifi up" on them if applicable. This way the commands for
wireless and non-wireless interfaces are unified from a cli point of view.

The "ifup -a" case has not been changed to keep the logic of the
/etc/init.d/network boot sequence. This might be changed later.

Solves #9763.

SVN-Revision: 27720
2011-07-22 00:21:20 +00:00
Jo-Philipp Wich
0de28706ca base-files: implement a generic mechanism to map per-interface sysctls to uci. - option ipv4_xyz is mapped to /proc/sys/net/ipv4/{conf,neigh}/xyz - option ipv6_xyz is mapped to /proc/sys/net/ipv6/{conf,neigh}/xyz This allows e.g. "option ipv6_proxy_ndp 1" to enable NDP proxying on wan. Fixes ticket #8699.
SVN-Revision: 27653
2011-07-17 17:10:30 +00:00
Jo-Philipp Wich
1e34c02e3e base-files: add -h and --help options to sysupgrade (#9728)
SVN-Revision: 27630
2011-07-17 09:27:14 +00:00
Jo-Philipp Wich
e0e6d1029e base-files: use uci_toggle_state() to prevent unwanted aggregation of state vars (#9711)
SVN-Revision: 27616
2011-07-15 14:57:44 +00:00
Felix Fietkau
0a7a73261a base-files: do not use the relinked libgcc, fixes c++ exception handling issues (#9185)
SVN-Revision: 27347
2011-07-02 06:50:15 +00:00