An opensource OpenWrt variant for mainland China users.
Go to file
Etan Kissling f76307035c dnsmasq: distinct Ubus names for multiple instances
Currently, when using multiple dnsmasq instances they are all assigned
to the same Ubus instance name. This does not work, as only a single
instance can register with Ubus at a time. In the log, this leads to
`Cannot add object to UBus: Invalid argument` error messages.
Furthermore, upstream 3c93e8eb41952a9c91699386132d6fe83050e9be changes
behaviour so that instead of the log, dnsmasq exits at start instead.

With this patch, all dnsmasq instances are assigned unique names so that
they can register with Ubus concurrently. One of the enabled instances
is always assigned the previous default name "dnsmasq" to avoid breaking
backwards compatibility with other software relying on that default.
Previously, a random instance got assigned that name (while the others
produced error logs). Now, the first unnamed dnsmasq config section is
assigned the default name. If there are no unnamed dnsmasq sections the
first encountered named dnsmasq config section is assigned instead.

A similar issue exists for Dbus and was similarly addressed.

Signed-off-by: Etan Kissling <etan.kissling@gmail.com>
[tweaked commit message] dnsmasq was not crashing it is exiting
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2021-06-29 23:50:49 +08:00
config build: create profiles.json per default 2021-06-22 15:26:48 +08:00
include target: tweak default packages 2021-06-22 13:16:25 +08:00
LICENSES LICENSE: sync with upstream 2021-02-16 14:19:09 +08:00
package dnsmasq: distinct Ubus names for multiple instances 2021-06-29 23:50:49 +08:00
scripts build,json: fix generation with empty profiles 2021-06-21 20:35:32 +08:00
target ipq40xx: specify FritzBox 7530 LAN port label numbers 2021-06-24 23:09:16 +08:00
toolchain glibc: update to latest 2.33 HEAD (BZ #27646, bug 27896, BZ #15271) 2021-06-27 23:10:48 +08:00
tools tools/cmake: update to 3.20.3 + build with Ninja 2021-06-21 20:35:31 +08:00
.gitattributes fix permisson 2019-08-16 15:09:42 +08:00
.gitignore build: improve ccache support 2021-01-02 12:08:17 +08:00
BSDmakefile build: use SPDX license tags 2021-02-06 12:07:10 +08:00
Config.in build: use SPDX license tags 2021-02-06 12:07:10 +08:00
CONTRIBUTED.md scripts/download.pl: remove unavailable mirror 2021-04-17 00:12:02 +08:00
COPYING LICENSE: sync with upstream 2021-02-16 14:19:09 +08:00
feeds.conf.default feeds: routing: update project url 2021-06-13 12:20:55 +08:00
Makefile Revert "build: replace which with Bash command built-in" 2021-03-04 12:10:58 +08:00
README.md LICENSE: sync with upstream 2021-02-16 14:19:09 +08:00
rules.mk build: add ninja build tool and make it available for cmake 2021-06-13 11:59:14 +08:00

PROJECT IMMORTALWRT

The Core Source Code of ImmortalWrt

Welcome to our Telegram Group: @ctcgfw_openwrt_discuss.


How to make it

Minimum requirements

Linux with case sensitive
2G DDR2 RAM
2 CPU Cores (AMD64, 1.4Ghz)
25G disk space left
Has access to both ChinaNet & Internet

Install the necessary packages (for Ubuntu user)

sudo apt-get update -y
sudo apt-get full-upgrade -y
sudo apt-get install -y build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib g++-multilib p7zip p7zip-full msmtp libssl-dev texinfo libreadline-dev libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint ccache curl wget vim nano python python3 python-pip python3-pip python-ply python3-ply haveged lrzsz device-tree-compiler scons antlr3 gperf intltool rsync

For mainland China & Ubuntu(16.04+) user, you may run the following command to setup quickly:

sudo bash -c "bash <(curl -s https://build-scripts.project-openwrt.eu.org/init_build_environment.sh)"

Clone the source

git clone -b openwrt-18.06 --single-branch https://github.com/immortalwrt/immortalwrt && cd immortalwrt
./scripts/feeds update -a && ./scripts/feeds install -a

For developer, you may use openwrt-18.06-dev branch instead of openwrt-18.06.

Configure your firmware

make menuconfig

Make it

make -j$(nproc) V=s

Tips

You'd better not use root to make it, or you may be not able to use.
Default login address: 192.168.1.1, username is root and password is password.

Contributed

See CONTRIBUTED.md.

License

GNU General Public License v3.0.