Compare commits

...

218 Commits

Author SHA1 Message Date
Omar Kallel
db594e2829 Remove the use of .icwmpd_boot file 2021-11-16 07:29:24 +01:00
Omar Kallel
34c5ea3c75 Ticket refs #5876: icwmp: Init scripts enhancements and cleanup 2021-11-15 15:58:56 +01:00
Grzegorz Sluja
c006db0e21 dectmngr: Remove dependency to libiconv from dectmngr 2021-11-15 14:59:33 +01:00
Amin Ben Ramdhane
4e42968aca bbf: 6.2.1 2021-11-15 13:39:36 +01:00
vdutta
9b48e54734 icwmp: Fix random crashes 2021-11-13 16:21:52 +05:30
Amin Ben Ramdhane
77a41d56a1 bbf: 6.2.0 2021-11-12 14:11:43 +01:00
Andreas Gnau
90fa843074 gryphon-led-module: Build against bcmkernel on Broadcom platforms
Due to the complexity of the Broadcom build system which amongst others
puts dynamically generated symlinks into the kernel dir, we have a fake
kernel "bcmlinux" to please the OpenWrt build system. This kernel is not
used for anything but building the OpenWrt toolchain. To compile against
the right kernel that is running on the target, we need to compile the
kernel module against the kernel inside bcmkernel which is the one
compiled by the BCM SDK.
2021-11-12 12:11:08 +00:00
Jakob Olsson
524c718242 map-agent: 6.1.1 2021-11-12 11:21:52 +01:00
Jakob Olsson
e00102c2b9 map-controller: 5.1.1 2021-11-12 11:19:38 +01:00
Anjan Chanda
2c0b6b76e2 wfadatad: 5.0.5 2021-11-12 09:38:15 +01:00
Anjan Chanda
9e9dc5b1a9 wifimngr: 14.0.0 2021-11-12 09:37:33 +01:00
Anjan Chanda
4535b14305 easy-soc-libs: 6.4.27 2021-11-12 09:36:29 +01:00
Yalu Zhang
478e3a5c8b dectmngr: keep /etc/dect/LA_DB during sysupgrade 2021-11-11 15:24:40 +01:00
Amin Ben Ramdhane
98302e0523 periodicstats: 1.0.4 2021-11-11 13:57:02 +01:00
Amin Ben Ramdhane
4dc45c779a bbf: 6.1.9 2021-11-11 13:56:06 +01:00
Yalu Zhang
c1bef47f50 dectmngr: update Makefile to include the path for external libraries 2021-11-11 12:14:03 +01:00
Andreas Gnau
9fb0c48a22 dectmngr: Add missing iconv-full dependency
dectmngr has required libiconv-full, but did not declare the dependency.
This creates a risk for the build failing due to race conditions. After
we removed another config-option that depended on libiconv-full the
build started to fail because nothing depended on libiconv-full anymore.

Fixes: f6f1644b (iop: config: Don't enable CONFIG_BUILD_NLS, 2021-11-04)
2021-11-11 10:56:08 +01:00
Anjan Chanda
d8e35df684 wfa-capi: 1.1.0 2021-11-11 10:51:12 +01:00
Yalu Zhang
d0189d605f dectmngr: bump the package version to 3.2.0 2021-11-10 14:37:35 +00:00
Grzegorz Sluja
8de1704440 dectmngr: Add phonebook support 2021-11-10 11:18:09 +01:00
Andreas Gnau
f6f1644bab iop: config: Don't enable CONFIG_BUILD_NLS
It seems like CONFIG_BUILD_NLS it is not needed by anything, so disable
it. On an embedded device, we do not need localised output. End-users
will probably never interact via SSH with the device. So it is unclear
why it had been enabled in the first place.
2021-11-10 09:47:40 +00:00
vdutta
b1c705544b Added ifupdate in hotplug 2021-11-09 17:58:36 +01:00
Omar Kallel
bd8d574177 Remove init script logs 2021-11-09 17:57:02 +01:00
Omar Kallel
4b5c88b015 icwmp: Reduce I/O on filesystem 2021-11-09 17:51:48 +01:00
Omar Kallel
32245d37c3 Revert "Added ifupdate in hotplug"
This reverts commit 08244c5392.
2021-11-09 16:35:09 +01:00
Omar Kallel
56d2b9c4e3 Revert "icwmp: Reduce I/O on filesystem"
This reverts commit 146bc95709.
2021-11-09 16:34:59 +01:00
vdutta
08244c5392 Added ifupdate in hotplug 2021-11-09 16:24:21 +01:00
Omar Kallel
146bc95709 icwmp: Reduce I/O on filesystem 2021-11-09 16:23:31 +01:00
Amin Ben Ramdhane
25a861a55f bbf: 6.1.7 2021-11-09 15:49:15 +01:00
vdutta
86fab6969f uspd: Option to configure dm version to use 2021-11-08 11:26:01 +05:30
Amin Ben Ramdhane
5463df37e1 bbf: 6.1.6 2021-11-05 10:55:41 +01:00
Grzegorz Sluja
a480a0c95d dectmngr: Update package dectmngr
c2b5452 Disable dectmngr logging to file by default
6d0af6c SUOTA implementation
79fa843 Fix the bug of syslog messages with incorrect ident and facility
2021-11-04 07:52:37 +01:00
vdutta
89068fa876 icwmp: 8.2.6-2021-11-03 2021-11-03 21:23:20 +05:30
vdutta
c3cee3431c uspd: Enable caching of ubus data 2021-11-03 21:17:08 +05:30
Amin Ben Ramdhane
bf70b518bd bbf: 6.1.5 2021-11-03 16:42:09 +01:00
nevadita.chatterjee
ad293962c1 topology: 3.0.4 2021-11-03 13:36:41 +05:30
nevadita.chatterjee
6badc20bcc map-topology:3.0.3 2021-11-02 16:43:43 +05:30
vdutta
f8b51b9ca5 uspd: Add TransferComplete event with bbf plugin 2021-11-01 16:23:46 +05:30
Jakob Olsson
a5c390efdd ieee1905: 4.0.5 2021-10-29 16:08:31 +02:00
vdutta
6d011f8626 uspd: Extend TransferComplete with json plugin 2021-10-29 18:48:12 +05:30
vdutta
f1d5e5d7cd bbf: Support operate and events with json plugins 2021-10-29 18:45:12 +05:30
vdutta
0fed56903c icwmp: 8.2.6-2021-10-29 2021-10-29 17:20:09 +05:30
Jakob Olsson
2ac7be4652 map-agent: 6.1.0 2021-10-29 13:36:55 +02:00
Jakob Olsson
7e34649ce7 map-controller: 5.1.0 2021-10-29 13:36:26 +02:00
Amit Kumar
a404da9124 libqos: updated broadcom header file 2021-10-29 16:43:19 +05:30
Amit Kumar
d152eb0f17 qosmngr: porttminit added before qcfg 2021-10-29 10:45:10 +00:00
Hemlata Bhatt
fb8ed439b8 Adjustment for the restructure of asterisk UCI config 2021-10-29 11:58:40 +02:00
nevadita.chatterjee
6b23da2314 map-topology: 3.0.2 2021-10-29 13:19:02 +05:30
sverma
bc90649202 wfadatad: 5.0.3 2021-10-28 20:56:19 +05:30
Jakob Olsson
0f31eb632f map-agent: rename map-loop-detection to map-dynamic-backhaul 2021-10-28 16:23:13 +02:00
Stanislaw Gruszka
5c37dc2165 ieee1905: export cmdu_ackq.h 2021-10-28 12:48:19 +00:00
Erik Karlsson
b4ce04d317 map-controller: fix enabling via uci
The service must be started but without any instance in case it is
disabled via uci. If it is stopped entirely, the reload trigger does
not work and it is impossible to re-enable mapcontroller via uci
without explicit reload.
2021-10-28 07:09:23 +00:00
Erik Karlsson
1f817c4e8f map-agent: trigger reload on the right configuration file
Trigger reload, which is currently implemented as restart, when
mapagent rather than ieee1905 configuration is changed.
2021-10-28 07:09:23 +00:00
vdutta
26599ba94e uspd: Added get_supported_dm 2021-10-27 20:17:38 +05:30
vdutta
26fe0bc7de bbf: 6.1.3 2021-10-27 20:16:44 +05:30
Marek Puzyniak
37493eb8be easy-soc-libs: 6.4.6
Signed-off-by: Marek Puzyniak <marek.puzyniak@iopsys.eu>
2021-10-27 09:54:18 +00:00
vdutta
b3dda9b4e5 uspd: align with bbf changes 2021-10-27 13:27:00 +05:30
vdutta
94879c6de9 bbf: 6.1.2 2021-10-27 13:25:55 +05:30
vdutta
a15f586ecf icwmp: Fix raise condition for con-req 2021-10-26 20:04:02 +05:30
nevadita.chatterjee
f3c5face44 ieee1905: version 4.0.4 2021-10-26 15:43:00 +05:30
Jakob Olsson
4488510e4b map-agent: 6.0.8 2021-10-25 11:20:00 +02:00
vdutta
4685cb49d4 icwmpd: 8.2.4-2021-10-25 2021-10-25 12:16:35 +05:30
vdutta
6ad633cbf4 uspd: 2.1.29 2021-10-25 12:14:32 +05:30
vdutta
d97c335cb5 obuspa: Fix compilation errors for gcc 11 2021-10-25 12:03:48 +05:30
vdutta
3563683cec swmodd: Fix compilation error on gcc v11 2021-10-25 11:59:24 +05:30
vdutta
330bb08d1b bbf: 6.1.1 2021-10-25 11:57:29 +05:30
Jakob Olsson
93f2090d0e map-agent: 6.0.7 2021-10-22 16:58:33 +02:00
Jakob Olsson
d9ae18761b map-agent: map-loop-detection: speed up interface removal from bridge and harmonize disconnection 2021-10-22 16:56:15 +02:00
Jakob Olsson
40a1a45412 wifimngr: 05-wifi: publish wps over fronthauls when eth connected 2021-10-22 16:51:41 +02:00
Jakob Olsson
f459eaafb9 map-agent: 6.0.6 2021-10-22 15:21:56 +02:00
Jakob Olsson
a80ed328c3 map-controller: get source url from https 2021-10-22 15:19:04 +02:00
Jakob Olsson
15d9fc0339 map-agent: get source url from https 2021-10-22 15:11:26 +02:00
Amin Ben Ramdhane
916edb4ba3 bbf: 6.1.0 2021-10-22 12:56:13 +01:00
Amin Ben Ramdhane
eb67d5ab6e icwmp: 8.2.4-2021-10-22 2021-10-22 11:13:24 +01:00
Amin Ben Ramdhane
dd43b90e91 bulkdata: 1.0.3 2021-10-22 11:11:46 +01:00
Jakob Olsson
5fee9aa7b4 map-agent: multiap: enable bsta being swapped to 2021-10-22 10:28:32 +02:00
Jakob Olsson
b821c760df map-agent: multiap: implement swap to link function 2021-10-21 17:09:30 +02:00
Andreas Gnau
2dbcf3c75c Update feed [ iopsys ] package [ endptmngr ]
-------------------------------------------------------------------------------
* 6d7b2e9 Adapt Broadcom SDK 5.04 workaround version check to 5.04L.02p1
* f28a1b7 BCM: Adapt to SDK 5.04L.02p1 endpoint_api changes
-------------------------------------------------------------------------------
commit 6d7b2e9c90234767cb56a1e7885f42825bd6287a
Author: Andreas Gnau <andreas.gnau@iopsys.eu>
Date: 2021-10-20 17:43:37 +0200

    Adapt Broadcom SDK 5.04 workaround version check to 5.04L.02p1

    Adapt the version check for the workaround for BCM SDK 5.04 a9e612c (Add a
    workaround need for building with Broadcom 5.04., 2020-11-08) to cover BCM
    SDK 5.04L.02p1.

Base directory -> /
 src/Makefile | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
-------------------------------------------------------------------------------
commit f28a1b7b08a0bcc8faa2b25e1acebf811e05e87c
Author: Andreas Gnau <andreas.gnau@iopsys.eu>
Date: 2021-09-21 16:32:17 +0200

    BCM: Adapt to SDK 5.04L.02p1 endpoint_api changes

    In SDK 5.04L.02p1, Broadcom has changed rtcpXRMode in struct EPZCNXPARAM
    with a bitfield rtcpXRConfig which enables a more fine-grained control of
    the RTCP XR configuration.

    For now, set it to HAPI_RTP_RTCP_XR_GENERATE_VOIP_REPORT as recommended by
    the comment in endpoint_api.h. More bits to set can be found in hapi_rtp.h
    in the SDK.

Base directory -> /
 src/connection.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
-------------------------------------------------------------------------------
2021-10-20 17:59:05 +02:00
Jakob Olsson
952366cbc6 map-agent: multiap: write bssid for same bands when writing bsta section 2021-10-20 12:49:09 +02:00
Jakob Olsson
23a18999d5 ieee1905: 4.0.3 2021-10-20 10:11:43 +02:00
Jakob Olsson
2d2dffbec2 map-agent: 6.0.5 2021-10-20 10:08:24 +02:00
Sukru Senli
758ee8ec9f sulu: 0.2.20 2021-10-19 17:18:48 +02:00
Amin Ben Ramdhane
c38ce1be3b bbf: 6.0.9 2021-10-19 14:43:55 +01:00
Andreas Gnau
2b5332adc3 Update feed [ iopsys ] package [ fdtextract ]
-------------------------------------------------------------------------------
* ef46eb3 Add --image switch for getting attributes from image nodes. Also update the indentation and fix some minor naming issues.
-------------------------------------------------------------------------------
commit ef46eb3be68ae1216d8699234f237fb2243289f1
Author: Markus Gothe <markus.gothe@genexis.eu>
Date: 2021-10-14 10:22:48 +0200

    Add --image switch for getting attributes from image nodes. Also update the
    indentation and fix some minor naming issues.

Base directory -> /
 fdtextract.c  | 122 +++++++++++++++++++++++++++++++++++-----------------------
 util.c        |   2 +-
 version_gen.h |   2 +-
 3 files changed, 76 insertions(+), 50 deletions(-)
-------------------------------------------------------------------------------
2021-10-18 16:56:32 +02:00
Jakob Olsson
70c3d5d5e1 map-agent: multiap: comment out debug print 2021-10-18 13:17:09 +02:00
vdutta
df41990929 icwmp: Revert Init scripts enhancements and cleanup 2021-10-15 20:41:25 +05:30
Jakob Olsson
6edc7cbb94 map-controller: 5.0.3 2021-10-15 10:21:05 +02:00
Jakob Olsson
d7bffebd5b map-agent: 6.0.4 2021-10-15 10:21:05 +02:00
Jakob Olsson
8f81a71b57 ieee1905: 4.0.2 2021-10-15 10:21:05 +02:00
Jakob Olsson
9452ada64f map-agent: 6.0.3 2021-10-15 09:42:41 +02:00
Jakob Olsson
1a3d267ee1 map-agent: map-loop-detection: reconnect enabled supplicants 2021-10-15 09:35:46 +02:00
Jakob Olsson
2f6b40bdd2 map-agent: multiap: add dynamic backhaul funcs 2021-10-15 09:35:46 +02:00
Jakob Olsson
d1c2be5b08 map-agent: multiap: supress uci errors 2021-10-15 09:35:46 +02:00
vdutta
fdee0c734c icwmp: 8.2.4-2021-10-14 2021-10-14 22:01:48 +05:30
Sukru Senli
88513db735 questd: remove reload trigger 2021-10-14 16:12:01 +02:00
Amin Ben Ramdhane
8bdbefcc80 bbf: 6.0.8 2021-10-14 13:51:20 +01:00
Omar Kallel
ee33f0ae7d icwmp: 8.2.4-2021-10-13 2021-10-13 16:21:33 +01:00
Omar Kallel
5cd57a3ee9 Ticket refs #5876: icwmp: Init scripts enhancements and cleanup 2021-10-13 16:11:27 +01:00
Amin Ben Ramdhane
56a6cbf04a bbf: 6.0.7 2021-10-13 14:35:36 +01:00
Omar Kallel
1fb879fca0 icwmp: get dhcp 43 option in icwmp hotplug script instead of netifd package 2021-10-13 11:17:51 +01:00
Omar Kallel
a3fd03c390 icwmp: use both ipv4 and ipv6 addresses for firewall rules 2021-10-12 11:41:07 +01:00
Amin Ben Ramdhane
00594ba01e bbf: 6.0.6 2021-10-11 16:13:33 +01:00
Anjan Chanda
132bba5c20 wfa-capi: 1.0.0 2021-10-11 16:34:22 +02:00
Grzegorz Sluja
06f160af35 dectmngr: Fixes for registration and set HS name
0e937cf Set the HS name during registration if it has the name set in uci
62421c0 Do not send LocateSuggest req when registration mode is opened
2021-10-11 14:42:52 +02:00
Sukru Senli
04bf025b8f questd: remove deprecated router.network object 2021-10-11 09:54:59 +02:00
Sukru Senli
1daa8d7f1a iop: genconfig: remove references to juci 2021-10-11 09:49:07 +02:00
Sukru Senli
97a302a20a juci: remove deprecated package 2021-10-11 09:40:05 +02:00
Anjan Chanda
87a0fbe8bf wfadatad: 5.0.2 2021-10-08 21:48:36 +02:00
Yalu Zhang
54b4140e09 dectmngr 3.1.18: support DECT multiple line mode 2021-10-08 17:16:10 +02:00
vdutta
99267f902b bbf: 6.0.5 2021-10-08 12:45:53 +05:30
vdutta
0338a2fd7c uspd: Configure option for subprocess on get cmd 2021-10-08 11:12:10 +05:30
vdutta
e134a5ed08 obuspa: Align permission for set 2021-10-08 11:08:30 +05:30
vdutta
0d8f4a3de8 obuspa: Fail init if required data is missing 2021-10-08 11:01:47 +05:30
Jakob Olsson
d5e7cb1a28 map-controller: 5.0.2 2021-10-07 17:15:50 +02:00
Jakob Olsson
e995fcb14d map-agent: 6.0.2 2021-10-07 17:12:22 +02:00
vdutta
f865531fa5 bbf: 6.0.4 2021-10-07 17:11:26 +05:30
Markus Gothe
104f3e2e83 qosmngr: updated broadcom.sh to get the ports from the runner.
When using the runner accelerator we need to check how to
map between ethernet interfaces (i.e eth0) and the internal
names used by the runner (i.e. port/index=lan2). Depending on
the hardware the mapping is not always 1:1 as assumed earlier.

This commit also fixes a minor bug with resetting traffic
shaping for the archer accelerator.
2021-10-07 05:12:04 +00:00
Sukru Senli
d298757300 obudpst: install as udpst 2021-10-06 18:48:39 +02:00
vdutta
b66ade378a bbf: 6.0.3 2021-10-06 10:33:58 +05:30
Omar Kallel
be36f2e3e8 icwmp: uci enhancements 2021-10-05 14:37:52 +01:00
Anjan Chanda
00dc43eb39 map-agent: 6.0.1 2021-10-04 14:34:58 +02:00
Anjan Chanda
efeeb00a0a map-topology: 3.0.1 2021-10-04 14:18:57 +02:00
Anjan Chanda
cc5b7a8a17 wfadatad: 5.0.1 2021-10-04 14:18:19 +02:00
Anjan Chanda
ce8425ce70 map-controller: 5.0.1 2021-10-04 14:16:53 +02:00
Anjan Chanda
ce5b916828 ieee1905: 4.0.1 2021-10-04 14:01:39 +02:00
Anjan Chanda
7f04196f58 easy-soc-libs: 6.4.5 2021-10-04 14:01:13 +02:00
Stanislaw Gruszka
762d5a5daa map-agent: fix configuring ssid's and keys with spaces 2021-10-04 10:21:58 +00:00
Anjan Chanda
abc997d3f3 easy-soc-libs: 6.4.1 2021-10-03 21:16:14 +02:00
Markus Gothe
924b54d8d3 grpyhon-led-module: Add ability to read back color
To aid remote debugging we want to be able to
read back the set color on the RGB LED. This commit
implements this functionality.
2021-10-01 16:16:32 +00:00
Jakob Olsson
bd8dd65766 map-topology: 2.1.10 2021-10-01 16:08:21 +02:00
Jakob Olsson
5372956a9a map-agent: multiap: func to sync mapcontroller from wireless
To accomodate datamodel
2021-10-01 10:52:44 +02:00
Jakob Olsson
bf0ddc5321 map-agent: 5.4.2 2021-09-30 16:37:58 +02:00
Jakob Olsson
7895966aa2 map-agent: 5.4.1 2021-09-30 16:28:54 +02:00
Jakob Olsson
0f716b5197 map-controller: 4.2.6 2021-09-30 16:28:19 +02:00
Jakob Olsson
dd56712aa4 map-controller: 4.2.5 2021-09-30 16:28:19 +02:00
Jani Juvan
b7de0cf4bb map-agent: 5.4: traffic separation 2021-09-30 16:28:19 +02:00
Amin Ben Ramdhane
09f6449a6e bbf: 6.0.0 2021-09-30 15:19:19 +01:00
Andreas Gnau
f00e7fe965 iop: config: Use OpenSSL instead of WolfSSL for libustream
In IOPSYSWRT, we use OpenSSL. Instead of shipping WolfSSL just for the
OpenWrt libustream library (which powers the uclient-fetch / wget
commands), make libustream use OpenSSL as well. This decreases security
maintenance and reduces overhead in image size and memory usage.
2021-09-30 15:05:04 +02:00
vdutta
dd7aac2a8c swmodd: Fix compilation issues 2021-09-30 18:27:32 +05:30
vdutta
49ffec4bc9 swmodd: Improve get time 2021-09-30 16:21:32 +05:30
Grzegorz Sluja
0a638e202b dectmngr: Fix some compilation warnings 2021-09-30 12:39:56 +02:00
Grzegorz Sluja
82676d8390 dectmngr: Fixes for setting DECT HS name and setting MWI 2021-09-30 09:24:06 +02:00
Yalu Zhang
95d6cadee1 dectmngr 3.1.17: Fix an issue that the call can't be released properly 2021-09-29 17:34:56 +02:00
vdutta
4672442d50 obuspa: Startup improvements 2021-09-29 16:26:49 +05:30
Amin Ben Ramdhane
7a8759e46a bbf: 5.0.8 2021-09-28 13:39:26 +01:00
Grzegorz Sluja
f28659ebe0 dectmngr: Change uci config file from dectmngr to dect 2021-09-28 13:26:50 +02:00
Grzegorz Sluja
f10457c8cb dectmngr: fixup! Implementation for setting DECT Handset's name 2021-09-27 10:50:12 +02:00
Grzegorz Sluja
bd3f962614 dectmngr: Add dectmngr trigger so that change in uci config reloads it 2021-09-27 10:49:13 +02:00
Grzegorz Sluja
a4aa0b3521 Revert "dectmngr: Add handset name to uci configuration"
This reverts commit 67169eff2a.
2021-09-27 10:49:13 +02:00
Anjan Chanda
06204d8523 wifimngr: 13.0.1 2021-09-26 21:33:52 +02:00
Anjan Chanda
4b5dbec851 easy-soc-libs: 6.3.4 2021-09-26 21:31:51 +02:00
vdutta
ab6035acbd icwmp: Default incoming rule based on port only 2021-09-25 17:22:00 +05:30
vdutta
72b7726f1e icwmp: 8.1.10-2021-09-24 2021-09-24 19:26:16 +05:30
Jakob Olsson
56ab101640 map-controller: 4.2.4 2021-09-24 15:50:33 +02:00
Amin Ben Ramdhane
4ee030a2ea bbf: 5.0.7 2021-09-24 14:10:26 +01:00
Jakob Olsson
ec402a2ea1 map-controller: 4.2.3 2021-09-24 14:32:43 +02:00
Jakob Olsson
52466671ab map-controller: 4.2.2 2021-09-24 13:41:02 +02:00
Jakob Olsson
3a54432533 map-controller: update default pkg config 2021-09-24 12:26:11 +02:00
Jakob Olsson
7a8e1b9076 map-controller: 4.2.1 2021-09-24 12:23:03 +02:00
Jakob Olsson
237e8d7b6d map-agent: 5.3.1 2021-09-24 12:22:31 +02:00
Grzegorz Sluja
bd468e4761 dctmngr: Implementation for setting DECT Handset's name 2021-09-24 10:18:56 +02:00
Grzegorz Sluja
67169eff2a dectmngr: Add handset name to uci configuration 2021-09-24 10:18:47 +02:00
Jakob Olsson
1ad1ef12b4 map-controller: 4.2.0: update default config 2021-09-24 10:11:27 +02:00
Jakob Olsson
a012f98b4c map-agent: bump version 5.3.0 2021-09-24 10:10:51 +02:00
Yalu Zhang
1f3c696867 dectmngr: fix an error in Makefile for PKG_SOURCE_SUBDIR 2021-09-23 15:37:57 +02:00
Sukru Senli
b861a89031 Revert "dectmngr: avoid multiple directories in build_dir when lifting versions"
This reverts commit a94c701f66.
2021-09-23 15:19:31 +02:00
Amin Ben Ramdhane
ca9e4f1765 bbf: 5.0.6 2021-09-23 13:52:44 +01:00
Yalu Zhang
a94c701f66 dectmngr: avoid multiple directories in build_dir when lifting versions 2021-09-23 12:35:09 +02:00
Yalu Zhang
13684e1ce6 dectmngr: 3.1.16
Fix issues in ubus dect status
2021-09-23 11:56:27 +02:00
vdutta
00d5c0849c uspd: module test enhancements 2021-09-22 19:56:41 +05:30
Amin Ben Ramdhane
2ae25830e7 bbf: 5.0.5 2021-09-22 13:47:00 +01:00
nevadita.chatterjee
645a3bb5e5 topology:2.1.9 2021-09-22 14:31:43 +05:30
vdutta
85fbea1d40 Revert "uspd: Fix memory leak"
This reverts commit bb6131b1f7.
2021-09-21 22:28:19 +05:30
Sukru Senli
4be8594678 sulu-0.2.19 2021-09-21 18:17:00 +02:00
Yalu Zhang
1cb7520cb9 Update package dectmngr
Fix compilation error when set ENABLE_DECTMNGR_DEBUG to 1
2021-09-21 17:18:20 +02:00
vdutta
bb6131b1f7 uspd: Fix memory leak 2021-09-21 19:51:21 +05:30
Jakob Olsson
f268b27622 map-agent: 5.3.0 2021-09-21 16:11:15 +02:00
Jakob Olsson
85387d16b1 map-agent: multiap - add backhaul priority sync for bstas 2021-09-21 16:04:30 +02:00
vdutta
566a5ebcc7 obuspa: 4.1.0.5 2021-09-21 14:53:34 +05:30
vdutta
48104e2831 icwmp: Code enhancement 2021-09-21 14:44:48 +05:30
vdutta
f9e6d17778 obuspa: Reverting interface trigger 2021-09-20 20:34:43 +05:30
Sukru Senli
47ffb81c08 obudpst: remove unnecessary Build/InstallDev section 2021-09-19 17:57:43 +02:00
Erik Karlsson
fd050bc759 Revert "owsd: hotplug: map aliases against interface on ifup"
This reverts commit 051826305e.

Reason for revert: This appears unnecessary as individual ifup events
are already being generated for main and alias interfaces. The logic
is also broken. It causes owsd to be reloaded every time there is ifup
event on alias interface, regardless of owsd configuration.
2021-09-19 14:38:18 +00:00
Sukru Senli
76d1fd9cb3 obudpst-7.2.1 2021-09-19 16:32:39 +02:00
vdutta
3bf86b8652 icwmp: 8.1.9-2021-09-17 2021-09-17 20:26:23 +05:30
Yalu Zhang
c914639104 Update package dectmngr
Play dial tone when handset goes off hook without called number
2021-09-17 16:24:38 +02:00
Omar Kallel
425d48e974 icwmp: firewall improvement 2021-09-17 11:33:35 +01:00
Amin Ben Ramdhane
c339eae256 icwmp: 8.1.7-2021-09-17 2021-09-17 10:49:26 +01:00
suvendhu
fa7ef67b91 uspd: Added config option for max blob msg len 2021-09-17 14:36:05 +05:30
sverma
fc374d0f29 ieee1905: 3.3.7 2021-09-17 12:49:58 +05:30
Sukru Senli
01808d21b2 iop: sync genconfig_min versioning with genconfig 2021-09-17 09:06:37 +02:00
Amit Kumar
5a1fdc0b07 qosmngr: updated broadcom.sh for queue shapingrate 2021-09-16 18:19:00 +00:00
Amin Ben Ramdhane
6a84c4511a bbf: 5.0.4 2021-09-16 17:19:40 +01:00
vdutta
11704f2f91 obuspa: Init script enhancement 2021-09-16 19:08:31 +05:30
Amin Ben Ramdhane
d48965a03f bbf: 5.0.3 2021-09-15 15:12:53 +01:00
Janusz Dziedzic
bd12c3d6e8 onboarding, start wps on all available sta ifaces
Signed-off-by: Janusz Dziedzic <janusz.dziedzic@iopsys.eu>
2021-09-15 10:11:09 +00:00
Sukru Senli
249072f280 iop: genconfig: update TARGET_VERSION generation
for non-tagged commits, TARGET_VERSION becomes <LAST_TAG>_<SHORT_COMMIT_HASH>
2021-09-14 19:47:38 +02:00
Yalu Zhang
ece01dd366 Update package dectmngr
Show boolean parameters correctly in ubus outputs
2021-09-14 14:52:39 +02:00
Yalu Zhang
2d82d20613 Update package dectmngr
Add two parameters to UBUS "dect status" for base station
2021-09-14 14:14:40 +02:00
Amin Ben Ramdhane
e6371c74d6 bbf: 5.0.1 2021-09-14 12:03:32 +01:00
Andreas Gnau
aa25a78ff1 iop: feeds_update: Make dev-check check for SSH instead of non-HTTP
Similarly to 986fc5ea (Make dev-check check for SSH instead of non-HTTP,
2020-06-23), check for SSH instead of whether the repo was cloned via
HTTP. Developers might have other remotes such as OpenWrt's configured.
2021-09-14 09:57:48 +02:00
jjoseph
60d1c43735 Update feed [iopsys] package [dslmngr] 2021-09-14 13:10:38 +05:30
vdutta
795fc9e805 icwmp: Reverted uci validation
- Partially reverted ae186df3c9
2021-09-13 19:53:47 +05:30
Hemlata Bhatt
1af894cba6 Digitmap DM parameters implemented 2021-09-13 14:26:48 +02:00
vdutta
4ba1558caa obuspa: Fix read only db warning 2021-09-10 17:08:33 +05:30
Jakob Olsson
cfb06f61d0 map-controller: 4.1.1 2021-09-10 11:01:11 +02:00
Jakob Olsson
d786c69d46 Revert "map-agent: 5.2.4"
This reverts commit 5d2b838d3e.
2021-09-10 11:00:37 +02:00
Jakob Olsson
5d2b838d3e map-agent: 5.2.4 2021-09-10 10:58:23 +02:00
Amit Kumar
88060bc42a libqos: updated log level 2021-09-10 13:03:59 +05:30
Jakob Olsson
16c3f49ff5 map-agent: 5.2.3 2021-09-10 08:44:23 +02:00
Omar Kallel
4b6eaad9a8 icwmp: 8.1.6-2021-09-10 2021-09-10 06:59:22 +01:00
Amit Kumar
af241bb222 qosmngr: corrected portid and unit for rxratecrtl 2021-09-10 05:03:02 +00:00
Amin Ben Ramdhane
ae621822c4 periodicstats: 1.0.3 2021-09-09 18:24:06 +01:00
Amin Ben Ramdhane
1a6ac9fa87 swmodd: 2.0.6 2021-09-09 18:21:46 +01:00
Amin Ben Ramdhane
749e38735a xmppc: 1.0.2 2021-09-09 18:19:54 +01:00
Amin Ben Ramdhane
292276ce75 bulkdata: 1.0.2 2021-09-09 18:17:04 +01:00
Amin Ben Ramdhane
1bcc2854af twamp: 1.0.1 2021-09-09 18:14:40 +01:00
Amin Ben Ramdhane
cee063223e bbf: 5.0.0 2021-09-09 18:13:02 +01:00
67 changed files with 1587 additions and 993 deletions

View File

@@ -1,5 +1,7 @@
if PACKAGE_libbbfdm
menu "Configuration"
config BBF_VENDOR_EXTENSION
bool "Enable Vendor Extension"
default y
@@ -24,4 +26,12 @@ config BBF_TR143
bool "Enable TR-143 Data Model Support"
default y
config BBFDM_ENABLE_JSON_PLUGIN
bool "Enable json plugin to extend datamodel"
default n
config BBFDM_ENABLE_DOTSO_PLUGIN
bool "Enable shared library plugin to extend datamodel"
default n
endmenu
endif

View File

@@ -5,11 +5,11 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libbbfdm
PKG_VERSION:=4.5.9
PKG_VERSION:=6.2.1
PKG_FIXUP:=autoreconf
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/bbf.git
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=0e101a4c48e6a27f3f0a71eab434d8590bc0560a
PKG_SOURCE_VERSION:=428f8d50c863589f6244cc04d5ee3dca978edd02
PKG_RELEASE=$(PKG_SOURCE_VERSION)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip
@@ -23,19 +23,19 @@ PKG_LICENSE_FILES:=LICENSE
include $(INCLUDE_DIR)/package.mk
define Package/libbbf_api
SECTION:=libs
CATEGORY:=Libraries
SUBMENU:=BBF
SECTION:=utils
CATEGORY:=Utilities
SUBMENU:=TRx69
TITLE:=Library for libbbfdm API
DEPENDS:=+libuci +libubox +libubus +libblobmsg-json +libjson-c
endef
define Package/libbbfdm
SECTION:=libs
CATEGORY:=Libraries
SUBMENU:=BBF
SECTION:=utils
CATEGORY:=Utilities
SUBMENU:=TRx69
TITLE:=Library for broadband-forum data model
DEPENDS:=+libuci +libubox +libubus +libblobmsg-json +libjson-c +libtrace +libbbf_api +libopenssl +libmbedtls +libcurl
DEPENDS:=+libuci +libubox +libubus +libblobmsg-json +libjson-c +libtrace +libbbf_api +libopenssl +libcurl
endef
define Package/libbbfdm/config
@@ -81,11 +81,6 @@ CONFIGURE_ARGS += \
--enable-libopenssl
endif
ifeq ($(CONFIG_PACKAGE_libmbedtls),y)
CONFIGURE_ARGS += \
--enable-libmbedtls
endif
ifeq ($(CONFIG_BBF_VENDOR_EXTENSION),y)
CONFIGURE_ARGS += \
--enable-vendor-extension
@@ -96,36 +91,46 @@ CONFIGURE_ARGS += \
endif ##CONFIG_BBF_VENDOR_EXTENSION
ifeq ($(CONFIG_BBFDM_ENABLE_JSON_PLUGIN),y)
CONFIGURE_ARGS += \
--enable-json-plugin
endif
ifeq ($(CONFIG_BBFDM_ENABLE_DOTSO_PLUGIN),y)
CONFIGURE_ARGS += \
--enable-shared-library
endif
define Package/libbbf_api/install
$(INSTALL_DIR) $(1)/lib
$(CP) $(PKG_BUILD_DIR)/bin/.libs/libbbf_api.so* $(1)/lib/
$(INSTALL_BIN) $(PKG_BUILD_DIR)/bin/.libs/libbbf_api.so* $(1)/lib/
endef
define Package/libbbfdm/install
$(INSTALL_DIR) $(1)/lib
$(CP) $(PKG_BUILD_DIR)/bin/.libs/libbbfdm.so* $(1)/lib/
$(INSTALL_DIR) $(1)/usr/share/bbfdm
$(CP) $(PKG_BUILD_DIR)/scripts/* $(1)/usr/share/bbfdm
$(INSTALL_DIR) $(1)/etc/bbfdm
$(INSTALL_DIR) $(1)/etc/bbfdm/dmmap
$(INSTALL_DIR) $(1)/etc/bbfdm/json
$(INSTALL_DIR) $(1)/usr/lib/bbfdm
$(INSTALL_BIN) $(PKG_BUILD_DIR)/bin/.libs/libbbfdm.so* $(1)/lib/
$(INSTALL_BIN) $(PKG_BUILD_DIR)/scripts/* $(1)/usr/share/bbfdm
endef
define Package/libbbfdm/prerm
#!/bin/sh
rm -rf /etc/bbfdm/*
rm -rf /etc/bbfdm/dmmap/*
exit 0
endef
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/lib
$(INSTALL_DIR) $(1)/usr/include/libbbfdm
$(INSTALL_DIR) $(1)/usr/include/libbbf_api
$(CP) $(PKG_BUILD_DIR)/*.h $(1)/usr/include/libbbfdm/
$(CP) $(PKG_BUILD_DIR)/libbbf_api/*.h $(1)/usr/include/libbbf_api/
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/bin/.libs/libbbfdm.{a,so*} $(1)/usr/lib/
$(CP) $(PKG_BUILD_DIR)/bin/.libs/libbbf_api.{a,so*} $(1)/usr/lib/
$(INSTALL_DATA) $(PKG_BUILD_DIR)/*.h $(1)/usr/include/libbbfdm/
$(INSTALL_DATA) $(PKG_BUILD_DIR)/libbbf_api/*.h $(1)/usr/include/libbbf_api/
$(INSTALL_BIN) $(PKG_BUILD_DIR)/bin/.libs/libbbfdm.{a,so*} $(1)/usr/lib/
$(INSTALL_BIN) $(PKG_BUILD_DIR)/bin/.libs/libbbf_api.{a,so*} $(1)/usr/lib/
endef
$(eval $(call BuildPackage,libbbf_api))

View File

@@ -8,9 +8,9 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=bulkdata
PKG_VERSION:=1.0.1
PKG_VERSION:=1.0.3
PKG_SOURCE_VERSION:=e4f39d1bf4678fc05b9d02e81b194c70719909e4
PKG_SOURCE_VERSION:=b35e7862bc17fc11dc1f757c7b93900995a28633
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/bulkdata.git

View File

@@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=dectmngr
PKG_RELEASE:=3
PKG_VERSION:=3.1.12
PKG_VERSION:=3.2.1
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/dectmngr.git
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=3de3dd2c45a0e95d875880c084f468a2f4010e2b
PKG_SOURCE_VERSION:=aafbade1c9af60325973bfa9bc702b63f4f61562
PKG_MIRROR_HASH:=skip
endif
@@ -34,7 +34,7 @@ include $(INCLUDE_DIR)/package.mk
define Package/$(PKG_NAME)
CATEGORY:=Utilities
TITLE:=DECT Manager
DEPENDS:= +libubox +ubus
DEPENDS:= +libubox +ubus +uci +libxml2
endef
define Package/$(PKG_NAME)/description
@@ -47,16 +47,19 @@ define Build/Prepare
endef
endif
MAKE_FLAGS += \
CFLAGS+="-Wall"
TARGET_CFLAGS += \
-Wall \
-I$(STAGING_DIR)/usr/include/libxml2
define Package/$(PKG_NAME)/install
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_DIR) $(1)/etc
$(INSTALL_DIR) $(1)/lib/upgrade/keep.d
$(INSTALL_BIN) $(PKG_BUILD_DIR)/app/dectmngr $(1)/usr/sbin/
$(STRIP) $(1)/usr/sbin/dectmngr
$(CP) ./files/etc/* $(1)/etc/
$(INSTALL_DATA) ./files/lib/upgrade/keep.d/dect $(1)/lib/upgrade/keep.d/dect
endef
$(eval $(call BuildPackage,$(PKG_NAME)))

View File

@@ -1,2 +1,2 @@
config dectmngr 'general'
config dect 'global'
option log_dect_cmbs '0'

View File

@@ -40,8 +40,8 @@ start_service() {
model_id="01.02.03"
[ -n "$model_id" -a ${#model_id} -eq 8 ] && opt_ext="$opt_ext -model $model_id"
config_load dectmngr
config_get_bool log_dect_cmbs general log_dect_cmbs 0
config_load dect
config_get_bool log_dect_cmbs global log_dect_cmbs 0
procd_open_instance
if [ $log_dect_cmbs -eq 0 ]; then
@@ -72,7 +72,7 @@ reload_service() {
service_triggers()
{
procd_add_reload_trigger asterisk
procd_add_reload_trigger asterisk dect
}
boot() {

View File

@@ -0,0 +1 @@
/etc/dect/LA_DB

View File

@@ -13,7 +13,7 @@ PKG_VERSION:=1.1.2
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=82d7208b3182a9cd1e6aec70872bf30f2fa8c82b
PKG_SOURCE_VERSION:=bb754ae620a9fc66fd6fc0745f0fead0708c7a17
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/dslmngr.git
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip

View File

@@ -7,13 +7,13 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=easy-soc-libs
PKG_VERSION:=6.3.2
PKG_VERSION:=6.4.27
PKG_RELEASE:=1
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=a1eedd39d2a1444045fc2a772fd62795cd6d2017
PKG_SOURCE_VERSION:=cd36f0c5a8c4a48182273cca121dcc0fb117a6bf
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/easy-soc-libs.git
PKG_MAINTAINER:=Anjan Chanda <anjan.chanda@iopsys.eu>
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz

View File

@@ -18,6 +18,7 @@ define Build/InstallDev/libeasy
$(CP) $(PKG_BUILD_DIR)/libeasy/utils.h $(1)/usr/include/easy/
$(CP) $(PKG_BUILD_DIR)/libeasy/if_utils.h $(1)/usr/include/easy/
$(CP) $(PKG_BUILD_DIR)/libeasy/debug.h $(1)/usr/include/easy/
$(CP) $(PKG_BUILD_DIR)/libeasy/hlist.h $(1)/usr/include/easy/
$(CP) $(PKG_BUILD_DIR)/libeasy/libeasy*.so* $(1)/usr/lib/
endef

View File

@@ -7,13 +7,13 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=endptmngr
PKG_VERSION:=0.5
PKG_VERSION:=0.6
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/endptmngr.git
PKG_SOURCE_VERSION:=debfc47348d6e1fc1c8b126ad50a7f5f8db3e19d
PKG_SOURCE_VERSION:=1d4f1aafcb929e64597d226a710fd0c1b949ba08
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip
endif
@@ -30,7 +30,7 @@ PKG_BUILD_PARALLEL:=1
# indirectly. This ensures that the package is rebuilt on config-changes.
PKG_CONFIG_DEPENDS:=CONFIG_TARGET_BOARD
export CONFIG_BRCM_SDK_VER_504002
export CONFIG_BRCM_SDK_VER_504021
export CONFIG_BCM_CHIP_ID
include $(INCLUDE_DIR)/package.mk

View File

@@ -12,7 +12,7 @@ PKG_VERSION:=1.0
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/fdtextract.git
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=45575262de7a9690bcb2c760f35e2c74e88e1176
PKG_SOURCE_VERSION:=ef46eb3be68ae1216d8699234f237fb2243289f1
PKG_MIRROR_HASH:=skip
PKG_LICENSE:=GPLv2

View File

@@ -28,6 +28,7 @@ define KernelPackage/$(PKG_NAME)
FILES:=$(PKG_BUILD_DIR)/$(PKG_NAME).$(LINUX_KMOD_SUFFIX)
KCONFIG:=CONFIG_PACKAGE_kmod-gryphon-led-kernel-module=y
AUTOLOAD:=$(call AutoLoad,60,$(PKG_NAME))
DEPENDS:= +(TARGET_iopsys_brcm63xx_arm):bcmkernel
PKG_LICENSE:=GPLv2
PKG_LICENSE_URL:=
endef
@@ -40,6 +41,21 @@ EXTRA_KCONFIG:= CONFIG_RGB_LED=m
MODULE_INCLUDE=-I$(PKG_BUILD_DIR)
ifeq ($(CONFIG_TARGET_iopsys_brcm63xx_arm),y)
LINUX_DIR:=$(BUILD_DIR)/bcmkernel/bcm963xx/kernel/linux-4.19
MODULES_SUBDIR:=lib/modules/4.19.183
KERNEL_CROSS:=$(CONFIG_BCM_TOOLCHAIN)/bin/$(CONFIG_BCM_TOOLTUPLE)
ifeq ($(CONFIG_BCM_CHIP_ID),$(filter $(CONFIG_BCM_CHIP_ID),"63158" "6856" "6858"))
# These targets use a 64-bit kernel
LINUX_KARCH:=arm64
KERNEL_CROSS:=/opt/toolchains/crosstools-aarch64-gcc-9.2-linux-4.19-glibc-2.30-binutils-2.32/bin/aarch64-buildroot-linux-gnu-
endif
# For some reason, Broadcom's kernel does not set the include paths correctly when compiling out-of-tree modules
EXTRA_KCPPFLAGS:="-I $(LINUX_DIR)/../bcmkernel/include -I $(LINUX_DIR)/arch/arm/mach-bcm963xx/include"
endif
define Build/Prepare
mkdir -p $(PKG_BUILD_DIR)/kdevlinks/
$(CP) -s `pwd`/src/* $(PKG_BUILD_DIR)/kdevlinks/

View File

@@ -43,10 +43,15 @@
static ssize_t get_led_color(struct device *dev,
struct device_attribute *attr, char *buf)
{
/* [ln] todo: dummy implementation */
int len;
struct sk9822_leds *sk9822 = dev_get_drvdata(dev);
len = scnprintf(buf, PAGE_SIZE, "%d\n", 123);
if (IS_ERR(sk9822)) {
printk(KERN_ERR "Platform get drvdata returned NULL\n");
return -EIO;
}
len = scnprintf(buf, PAGE_SIZE, "%02x%02x%02x\n", sk9822->led_colors[0].r, sk9822->led_colors[0].g, sk9822->led_colors[0].b);
if (len <= 0) {
dev_err(dev, "sk9822: Invalid sprintf len: %d\n", len);
return -EIO;

View File

@@ -1,5 +1,6 @@
if PACKAGE_icwmp
menu "Configuration"
choice
prompt "Select ACS sever"
default CWMP_ACS_MULTI
@@ -18,6 +19,6 @@ config CWMP_DEBUG
config CWMP_DEVEL_DEBUG
bool "Compile with development debug options"
default n
endmenu
endif

View File

@@ -8,11 +8,11 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=icwmp
PKG_VERSION:=8.1.5-2021-09-03
PKG_VERSION:=8.2.9-2021-11-15
PKG_FIXUP:=autoreconf
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/icwmp.git
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=393e67dec2a1a924423761e73fb376209b871a10
PKG_SOURCE_VERSION:=64310c6cf55128f555c354c1743c6814576db3a6
PKG_RELEASE=$(PKG_SOURCE_VERSION)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip
@@ -29,8 +29,6 @@ PKG_CONFIG_DEPENDS:= \
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
CWMP_REVISION=$(shell svnversion ./src/ -n|cut -f2 -d:)
include $(INCLUDE_DIR)/package.mk
define Package/$(PKG_NAME)
@@ -57,24 +55,8 @@ endef
endif
TARGET_CFLAGS += \
-D_GNU_SOURCE -D_AADJ
ifneq ($(CWMP_REVISION)_,_)
ifneq ($(CWMP_REVISION),exported)
ifneq ($(CWMP_REVISION),Unversioned directory)
TARGET_CFLAGS += "-DCWMP_REVISION=\\\"$(CWMP_REVISION)\\\""
TARGET_LDFLAGS += "-DCWMP_REVISION=\\\"$(CWMP_REVISION)\\\""
endif
endif
endif
TARGET_LDFLAGS += \
-Wl,-rpath-link=$(STAGING_DIR)/usr/lib
CONFIGURE_ARGS += \
--with-uci-include-path=$(STAGING_DIR)/usr/include \
--with-libubox-include-path=$(STAGING_DIR)/usr/include \
--with-libubus-include-path=$(STAGING_DIR)/usr/include
-D_GNU_SOURCE \
"-DCWMP_REVISION=\\\"$(PKG_SOURCE_VERSION)\\\""
ifeq ($(CONFIG_CWMP_ACS_MULTI),y)
CONFIGURE_ARGS += \
@@ -99,26 +81,20 @@ endif
define Package/$(PKG_NAME)/install
$(INSTALL_DIR) $(1)/etc/icwmpd
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/bin/icwmpd $(1)/usr/sbin/
$(CP) ./files/* $(1)/
endef
define Package/$(PKG_NAME)/postinst
#!/bin/sh
if [ -z "$${IPKG_INSTROOT}" ]; then
echo "Enabling rc.d symlink for icwmpd"
/etc/init.d/icwmpd enable
fi
exit 0
endef
define Package/$(PKG_NAME)/prerm
#!/bin/sh
if [ -z "$${IPKG_INSTROOT}" ]; then
echo "Disabling rc.d symlink for icwmpd"
/etc/init.d/icwmpd disable
fi
exit 0
$(INSTALL_DIR) $(1)/etc/config
$(INSTALL_DIR) $(1)/etc/hotplug.d/iface
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_DIR) $(1)/etc/uci-defaults
$(INSTALL_DIR) $(1)/lib/upgrade/keep.d
$(INSTALL_BIN) $(PKG_BUILD_DIR)/bin/icwmpd $(1)/usr/sbin/icwmpd
$(INSTALL_DATA) ./files/etc/config/cwmp $(1)/etc/config/cwmp
$(INSTALL_BIN) ./files/etc/firewall.cwmp $(1)/etc/firewall.cwmp
$(INSTALL_BIN) ./files/etc/hotplug.d/iface/99-icwmp $(1)/etc/hotplug.d/iface/99-icwmp
$(INSTALL_BIN) ./files/etc/init.d/icwmpd $(1)/etc/init.d/icwmpd
$(INSTALL_BIN) ./files/etc/uci-defaults/85-cwmp-set-userid $(1)/etc/uci-defaults/
$(INSTALL_BIN) ./files/etc/uci-defaults/90-cwmpfirewall $(1)/etc/uci-defaults/
$(INSTALL_BIN) ./files/etc/uci-defaults/90-icwmp-set-dhcp-reqopts $(1)/etc/uci-defaults/
$(INSTALL_DATA) ./files/lib/upgrade/keep.d/icwmp $(1)/lib/upgrade/keep.d/icwmp
endef
$(eval $(call BuildPackage,$(PKG_NAME)))

View File

@@ -5,7 +5,6 @@ config acs 'acs'
option periodic_inform_enable 'true'
option periodic_inform_interval '1800'
option periodic_inform_time '0001-01-01T00:00:00Z'
option ParameterKey ''
option dhcp_discovery 'enable'
# compression possible configs: GZIP, Deflate, Disabled
option compression 'Disabled'
@@ -39,6 +38,7 @@ config cpe 'cpe'
option exec_download '0'
option periodic_notify_enable '1'
option periodic_notify_interval '10'
option incoming_rule 'Port_Only'
config lwn 'lwn'
option enable '1'

View File

@@ -1,6 +1,15 @@
#created by the icwmp package
zone_name=""
port=""
#created by the icwmp package
if [ ! -f "/var/state/cwmp" ]; then
exit 0;
fi
zone_name=$(uci -c /var/state -q get cwmp.acs.zonename)
port=$(uci -q get cwmp.cpe.port)
ipaddr=$(uci -c /var/state -q get cwmp.acs.ip)
ip6addr=$(uci -c /var/state -q get cwmp.acs.ip6)
incoming_rule=$(uci -q get cwmp.cpe.incoming_rule|tr [A-Z] [a-z])
if [ "$zone_name" = "" ]; then
exit 0
elif [ "$zone_name" = "icwmp" ]; then
@@ -18,4 +27,48 @@ else
iptables -t filter -D INPUT -j zone_icwmp_input 2> /dev/null
iptables -X zone_icwmp_input 2> /dev/null
fi
#iptables -I FW_ZONE -p tcp -s ACS_ADDRESS --dport PORT -j ACCEPT --comment "Open ACS port"
cmd="iptables -w 1 -I zone_${zone_name}_input -p tcp"
cmd6="ip6tables -w 1 -I zone_${zone_name}_input -p tcp"
# default incoming rule is Port only
if [ -z "${incoming_rule}" ]; then
incoming_rule="port_only"
fi
if [ "${incoming_rule}" = "ip_only" ]; then
if [ -n "${ipaddr}" ]; then
cmd="${cmd} -s ${ipaddr}"
cmd6="${cmd6} -s ${ip6addr}"
fi
elif [ "${incoming_rule}" = "port_only" ]; then
if [ -n "${port}" ]; then
cmd="${cmd} --dport ${port}"
cmd6="${cmd6} --dport ${port}"
fi
else
if [ -n "${ipaddr}" ]; then
cmd="${cmd} -s ${ipaddr}"
cmd6="${cmd6} -s ${ip6addr}"
fi
if [ -n "${port}" ]; then
cmd="${cmd} --dport ${port}"
cmd6="${cmd6} --dport ${port}"
fi
fi
echo ${cmd}|grep -q "\-\-dport \|\-s "
if [ "$?" -eq 0 ]; then
cmd="${cmd} -j ACCEPT -m comment --comment=Open_ACS_port"
${cmd}
fi
echo ${cmd6}|grep -q "\-\-dport \|\-s "
if [ "$?" -eq 0 ]; then
cmd6="${cmd6} -j ACCEPT -m comment --comment=Open_ACS_port"
${cmd6}
fi
uci -c /var/state -q set cwmp.cpe.firewall_restart="init"
uci -c /var/state -q commit cwmp

View File

@@ -2,7 +2,7 @@
. /lib/functions/network.sh
[ "$ACTION" == "ifup" ] || exit 0
[ "$ACTION" == "ifup" -o "$ACTION" == "ifupdate" ] || exit 0
[ -f /etc/config/cwmp ] || exit 0
@@ -23,7 +23,7 @@ handle_icwmp_restart() {
local ifname="$(uci -q get network.$INTERFACE.ifname)"
[ "${ifname:0:1}" == "@" ] && exit 0
mkdir -p /tmp/ipv4
network_flush_cache
@@ -63,11 +63,58 @@ handle_icwmp_restart() {
network_get_device curdev $INTERFACE
[ -n "$curdev" ] && echo $curdev > $devfile || rm -f $devfile
if [ ! -f /var/state/cwmp ]
then
if [ -f /etc/icwmpd/cwmp ]
then
uci -c /etc/icwmpd delete cwmp.acs
uci -c /etc/icwmpd commit cwmp
cp /etc/icwmpd/cwmp /var/state/cwmp
else
touch /var/state/cwmp
fi
fi
uci -q -c /var/state/ get cwmp.cpe
if [ "$?" -ne 0 ]; then
unnamedcpe=`uci -q -c /var/state/ add cwmp cpe`
uci -c /var/state/ -q rename cwmp.$unnamedcpe='cpe'
fi
local vendorspecinf=`ubus call network.interface.${defwan} status | jsonfilter -e "@.data.vendorspecinf"`
[ -n "$vendorspecinf" ] && {
local url=""
case $vendorspecinf in
http://*|https://*)
url="$vendorspecinf"
;;
*)
for optval in $vendorspecinf; do
case $optval in
1=*)
url="$(echo $optval | cut -d"=" -f2-)"
;;
esac
done
;;
esac
if [ ! -f /var/state/cwmp ]; then
touch /var/state/cwmp
fi
uci -q -c /var/state/ get cwmp.acs
if [ "$?" -ne 0 ]; then
unnamed=`uci -q -c /var/state/ add cwmp acs`
uci -c /var/state/ -q rename cwmp.$unnamed='acs'
fi
[ -n "$url" ] && uci -c /var/state -q set cwmp.acs.dhcp_url="$url"
uci -c /var/state commit cwmp
}
local prevopt43url=""
local curopt43url=""
local opt43urlfile=/tmp/ipv4/$INTERFACE-opt43url
prevopt43url=$(cat $opt43urlfile 2>/dev/null)
curopt43url="$(uci -P /var/state -q get cwmp.acs.dhcp_url)"
curopt43url="$(uci -c /var/state -q get cwmp.acs.dhcp_url)"
[ -n "$curopt43url" ] && echo $curopt43url > $opt43urlfile || rm -f $opt43urlfile
[ \
@@ -81,6 +128,8 @@ handle_icwmp_restart() {
[ -z "$prevopt43url" ] && exit 0
}
echo "Restarting icwmp"|logger -t cwmp.hotplug -p info
/etc/init.d/icwmpd reload &
}

View File

@@ -6,125 +6,60 @@ include /lib/network
. /usr/share/libubox/jshn.sh
START=99
STOP=10
STOP=2
USE_PROCD=1
PROG="/usr/sbin/icwmpd"
EXTRA_HELP=" start [GetRPCMethods] Start icwmpd service and send GetRPCMethods"
log() {
echo "${@}"|logger -t cwmp.init -p info
}
validate_url() {
# SCHEMA_LIST: contain list of possible schemas that could be present in the acs url
# Example: SCHEMA_LIST="http https"
SCHEMA_LIST="http"
for schema in $SCHEMA_LIST; do
dest=`echo $1 | sed 's/$schema:\/\///g' | cut -f1 -d \/ | cut -f1 -d:`
if [ "_$dest" != "_" ]; then
return 0
fi
done
return 1
}
get_acs_url() {
local default_acs="http://10.10.1.6:8000/openacs/acs"
local acs_dhcp_discovery="$(uci -q get cwmp.acs.dhcp_discovery)"
local url="$(uci -q get cwmp.acs.url)"
local dhcp_url="$(uci -P /var/state -q get cwmp.acs.dhcp_url)"
if [ "$acs_dhcp_discovery" == "enable" -a -n "$dhcp_url" -o -z "$url" ]; then
url="$dhcp_url"
log "ACS URL from DHCP server: $url"
[ -n "$url" ] && uci -P /var/state -q set cwmp.acs.url="$url" || url="$default_acs"
elif [ -n "$url" ];then
url="$(uci -q get cwmp.acs.url)"
log "ACS URL from configuration: $url"
else
url="$default_acs"
log "Using default ACS URL: $url"
[ -n "$url" ] && uci -P /var/state -q set cwmp.acs.url="$url"
fi
validate_url "$url"
if [ "$?" != "0" ];then
echo "Invalid ACS URL: $url"
exit 1
fi
}
enable_dhcp_option43() {
local wan=$1
local discovery=0
case $2 in
enable|1) discovery=1 ;;
esac
### Ask for DHCP Option 43 only if CWMP is enabled ###
local enabled
local newreqopts=
local baseopts=
local reqopts="$(uci -q get network.$wan.reqopts)"
local proto="$(uci -q get network.$wan.proto)"
local tropts="43"
local oldreqopts="$reqopts"
local ropt iopt
local newreqopts=""
local option43_present=0
for ropt in $reqopts; do
case $ropt in
43) ;;
*) baseopts="$baseopts $ropt" ;;
esac
done
ropt=""
reqopts="$baseopts $tropts"
for ropt in $reqopts; do
case $ropt in
43) [ $discovery -eq 1 ] && newreqopts="$newreqopts $ropt" ;;
*) newreqopts="$newreqopts $ropt" ;;
43) option43_present=1 ;;
*) ;;
esac
done
if [ ${option43_present} -eq 1 ]; then
return;
fi
newreqopts="$reqopts 43"
if [ $proto == "dhcp" ]; then
newreqopts="$(echo $newreqopts | tr ' ' '\n' | sort -n | tr '\n' ' ' | sed 's/^[ \t]*//;s/[ \t]*$//')"
oldreqopts="$(echo $oldreqopts | tr ' ' '\n' | sort -n | tr '\n' ' ' | sed 's/^[ \t]*//;s/[ \t]*$//')"
[ "$newreqopts" == "$oldreqopts" ] && return
uci -q set network.$wan.reqopts="$newreqopts"
uci commit network
ubus call network reload
fi
########################################################
}
wait_for_option43() {
local time=$1
local default_wan_interface dhcp_discovery url
config_get default_wan_interface cpe default_wan_interface "wan"
config_get dhcp_discovery acs dhcp_discovery "0"
config_get url acs url
enable_dhcp_option43 $default_wan_interface $dhcp_discovery
local tm=0
if [ "$dhcp_discovery" == "enable" -o "$dhcp_discovery" == "1" ]
then
log "Waiting for discovery of ACS URL from dhcp server ..."
while [ $tm -le $time ]
do
acs_url=`uci -P /var/state -q get cwmp.acs.dhcp_url`
if [ "$acs_url" != "" ]
then
break
else
sleep 1
fi
tm=$((tm+1))
done
fi
log "Waiting for discovery of ACS URL from dhcp server ..."
while [ $tm -le $time ]
do
acs_url=`uci -c /var/state -q get cwmp.acs.dhcp_url`
if [ "$acs_url" != "" ]
then
break
else
sleep 1
fi
tm=$((tm+1))
done
}
wait_for_resolvfile() {
@@ -154,6 +89,45 @@ set_wan_interface() {
fi
}
copy_cwmp_etc_files_to_varstate() {
if [ ! -f /var/state/cwmp ]
then
if [ -f /etc/icwmpd/cwmp ]
then
uci -c /etc/icwmpd delete cwmp.acs
uci -c /etc/icwmpd commit cwmp
cp /etc/icwmpd/cwmp /var/state/cwmp
else
touch /var/state/cwmp
fi
fi
mkdir -p /var/state/icwmpd
if [ -f /etc/icwmpd/.icwmpd_backup_session.xml ]
then
mv /etc/icwmpd/.icwmpd_backup_session.xml /var/state/icwmpd 2>/dev/null
fi
if [ -f /etc/icwmpd/.dm_enabled_notify.xml ]
then
mv /etc/icwmpd/.dm_enabled_notify /var/state/icwmpd 2>/dev/null
fi
}
copy_cwmp_varstate_files_to_etc() {
if [ -f /var/state/cwmp ]
then
cp /var/state/cwmp /etc/icwmpd 2>/dev/null
fi
if [ -f /var/state/icwmpd/.icwmpd_backup_session.xml ]
then
cp /var/state/icwmpd/.icwmpd_backup_session.xml /etc/icwmpd 2>/dev/null
fi
if [ -f /var/state/icwmpd/.dm_enabled_notify.xml ]
then
cp /var/state/icwmpd/.dm_enabled_notify /etc/icwmpd 2>/dev/null
fi
}
validate_acs_section()
{
uci_validate_section cwmp acs "acs" \
@@ -194,36 +168,79 @@ validate_cpe_section()
'periodic_notify_interval:uinteger'
}
start_service() {
validate_defaults() {
config_load cwmp
set_wan_interface
wait_for_option43 20
get_acs_url
validate_acs_section || {
log "Validation of acs section failed"
return 1;
}
validate_cpe_section || {
log "Validation of cpe section failed"
return 1;
}
[ -z "${default_wan_interface}" ] && {
log "Wan interface is empty"
return 1;
}
return 0;
}
validate_acs_url() {
dhcp_url=`uci -c /var/state get cwmp.acs.dhcp_url`
[ -z "${url}" -a -z "${dhcp_url}" ] && {
log "ACS url is empty"
return 1;
}
return 0
}
start_service() {
[ -f /sbin/netifd ] && log "Waiting for Network to be started ..." && ubus -t 5 wait_for network.interface
[ -f /usr/sbin/dnsmasq ] && log "Waiting for DNS Proxy to be started ..." && ubus -t 5 wait_for dnsmasq
[ -f /etc/config/dhcp ] && log "Waiting for DNS Server(s) ..." && wait_for_resolvfile 20
log "Waiting for usp.raw to be started"
ubus wait_for usp.raw
validate_defaults || {
log "Validation of defaults failed"
return 1;
}
# Set wan interface if not configured
set_wan_interface
# Set dhcp option 43 if dhcp discovery enabled
if [ "${dhcp_discovery}" == "enable" -o "${dhcp_discovery}" == "1" ]; then
enable_dhcp_option43 $default_wan_interface
wait_for_option43 20
fi
validate_acs_url || {
log "Validation of ACS URL failed"
return 1;
}
copy_cwmp_etc_files_to_varstate
procd_open_instance icwmp
procd_set_param command "$PROG"
if [ "$1" = "GetRPCMethods" ]; then
procd_append_param command -g
fi
procd_append_param command -b
procd_set_param respawn \
${respawn_threshold:-5} \
${respawn_timeout:-10} ${respawn_retry:-3}
procd_close_instance
}
stop_service()
{
copy_cwmp_varstate_files_to_etc
}
reload_service() {
stop
start

View File

@@ -1 +1 @@
/etc/icwmpd/.icwmpd_backup_session.xml
/var/state/icwmpd/.icwmpd_backup_session.xml

View File

@@ -5,12 +5,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=ieee1905
PKG_VERSION:=3.3.6
PKG_VERSION:=4.0.5
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=e224f6280173aa0e190f10d38aa0ae3714667c9b
PKG_SOURCE_VERSION:=67ace7d344e287cd8b1d90003ed487cd021e5223
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/ieee1905.git
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz
PKG_MIRROR_HASH:=skip
@@ -110,6 +110,7 @@ define Build/InstallDev/libieee1905
$(INSTALL_DIR) $(1)/usr/include
$(INSTALL_DIR) $(1)/usr/lib/ieee1905
$(CP) $(PKG_BUILD_DIR)/src/cmdu.h $(1)/usr/include/
$(CP) $(PKG_BUILD_DIR)/src/cmdu_ackq.h $(1)/usr/include/
$(CP) $(PKG_BUILD_DIR)/src/1905_tlvs.h $(1)/usr/include/
$(CP) $(PKG_BUILD_DIR)/src/i1905_wsc.h $(1)/usr/include/
$(CP) $(PKG_BUILD_DIR)/src/bufutil.h $(1)/usr/include/

View File

@@ -1,4 +1,3 @@
CONFIG_BUILD_NLS=y
CONFIG_BUSYBOX_CUSTOM=y
CONFIG_CCACHE=y
CONFIG_DEBUG=y
@@ -219,3 +218,7 @@ CONFIG_TARGET_ROOTFS_TARGZ=y
# Disable it. Most SoCs nowadays has HW random generators anyway.
# CONFIG_PACKAGE_urandom-seed is not set
# CONFIG_PACKAGE_urngd is not set
# We use OpenSSL, no need to ship multiple TLS libraries
CONFIG_PACKAGE_libustream-openssl=y
# CONFIG_PACKAGE_libustream-wolfssl is not set

View File

@@ -14,7 +14,7 @@ function feeds_update {
done
git remote -v | grep -q http || developer=1
git remote -v | grep -qE '(git@|ssh://)' && developer=1
cp .config .genconfig_config_bak

View File

@@ -5,7 +5,6 @@ function genconfig {
export IMPORT=1
export SRCTREEOVERR=0
export FILEDIR="files/"
export THEMEDIR="tmp/juci-themes"
CURRENT_CONFIG_FILE=".current_config_file"
export CONFIGPATH="package/feeds/iopsys/iop"
CUSTPATH="customerconfigs"
@@ -238,7 +237,7 @@ function genconfig {
local ALL="$1"
local CUSTOMER="$2"
if [ "$CUSTOMER" -a -d "$CUSTCONF/$CUSTOMER" ]; then
local boards="$(ls -1 "$CUSTCONF/$CUSTOMER" | grep -v common | grep -v juci-theme)"
local boards="$(ls -1 "$CUSTCONF/$CUSTOMER" | grep -v common)"
if [ "$boards" ]; then
echo "$CUSTOMER has following boards:"
for board in $boards; do
@@ -255,7 +254,7 @@ function genconfig {
if [ "$customers" -a "$ALL" == 1 ]; then
for customer in $customers; do
echo $customer
local boards="$(ls -1 $CUSTCONF/$customer | grep -v common | grep -v juci-theme)"
local boards="$(ls -1 $CUSTCONF/$customer | grep -v common)"
if [ "$boards" ]; then
for board in $boards; do
echo -e "\t$board"
@@ -309,13 +308,6 @@ function genconfig {
v "rm -rf $FILEDIR*"
rm -rf $FILEDIR*
fi
if [ ! -d "$THEMEDIR" ]; then
mkdir -p $THEMEDIR
elif [ -d "$THEMEDIR" -a $CLEAN -eq 1 ]; then
v "rm -rf $THEMEDIR/*"
rm -rf $THEMEDIR/*
fi
}
create_and_copy_files()
@@ -404,11 +396,6 @@ function genconfig {
v "cp -ar $CUSTCONF/$CUSTOMER/$BOARDTYPE/fs/* $FILEDIR"
cp -ar $CUSTCONF/$CUSTOMER/$BOARDTYPE/fs/* $FILEDIR
fi
if [ -d "$CUSTCONF/$CUSTOMER/juci-theme" ]; then
customer="$(echo $CUSTOMER | tr 'A-Z' 'a-z')"
v "cp -ar $CUSTCONF/$CUSTOMER/juci-theme $THEMEDIR/juci-theme-$customer"
cp -ar $CUSTCONF/$CUSTOMER/juci-theme $THEMEDIR/juci-theme-$customer
fi
if [ -e "$CUSTCONF/$CUSTOMER/common/common.diff" ]; then
v "Apply $CUSTCONF/$CUSTOMER/common/common.diff"
cat $CUSTCONF/$CUSTOMER/common/common.diff >> .config
@@ -424,8 +411,11 @@ function genconfig {
# Set target version
local GIT_TAG=$(git describe --abbrev=0 --tags)
echo "CONFIG_TARGET_VERSION=\"${GIT_TAG}\"" >> .config
echo "CONFIG_VERSION_CODE=\"${GIT_TAG}\"" >> .config
local GIT_REV=$(git rev-parse --short HEAD)
local GIT_VER="$GIT_TAG"
git describe --contains $GIT_REV >/dev/null 2>&1 || GIT_VER="${GIT_TAG}_${GIT_REV}"
echo "CONFIG_TARGET_VERSION=\"${GIT_VER}\"" >> .config
echo "CONFIG_VERSION_CODE=\"${GIT_VER}\"" >> .config
echo "CONFIG_VERSION_PRODUCT=\"$BOARDTYPE"\" >> .config
# Enable Package source tree override if selected

View File

@@ -404,11 +404,13 @@ function genconfig_min {
# Set target version
local GIT_TAG=$(git describe --abbrev=0 --tags)
echo "CONFIG_TARGET_VERSION=\"${GIT_TAG}\"" >> .config
echo "CONFIG_VERSION_CODE=\"${GIT_TAG}\"" >> .config
local GIT_REV=$(git rev-parse --short HEAD)
local GIT_VER="$GIT_TAG"
git describe --contains $GIT_REV >/dev/null 2>&1 || GIT_VER="${GIT_TAG}_${GIT_REV}"
echo "CONFIG_TARGET_VERSION=\"${GIT_VER}\"" >> .config
echo "CONFIG_VERSION_CODE=\"${GIT_VER}\"" >> .config
echo "CONFIG_VERSION_PRODUCT=\"$BOARDTYPE"\" >> .config
# Enable Package source tree override if selected
[ $SRCTREEOVERR -eq 1 ] && echo CONFIG_SRC_TREE_OVERRIDE=y >> .config

View File

@@ -1,122 +0,0 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=juci
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/juci.git
PKG_SOURCE_VERSION:=70b66bfc7f0e25e77b6920c3d44e5b05f4bfcf95
PKG_VERSION:=2020-05-27
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_SOURCE_SUBDIR)
PKG_RELEASE=$(PKG_VERSION)-$(PKG_SOURCE_VERSION)
PKG_LICENSE:=GPLv2
PKG_LICENSE_FILES:=LICENSE
include $(INCLUDE_DIR)/package.mk
define Package/juci
$(Package/juci/default)
SECTION:=juci
CATEGORY:=JUCI
MENU=1
TITLE:=JUCI Core Package (select this to select default plugins)
DEPENDS:=+libubox +libubus +owsd +rpcd +rpcd-mod-file +questd
endef
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/src/
ln -s $(PKG_BUILD_DIR) $(1)/usr/src/juci
endef
define Build/Compile
$(call Build/Compile/Default,THEME_PATH="$(TOPDIR)/tmp/juci-themes/")
endef
define Package/juci/description
JUCI Javascript UCI Web interface.
endef
define Package/juci/install
$(INSTALL_DIR) $(1)/
$(CP) $(PKG_BUILD_DIR)/bin/juci/* $(1)/
$(CP) ./files/* $(1)/
endef
define Package/juci/postinst
#!/bin/sh
juci-update
exit 0
endef
$(eval $(call BuildPackage,juci))
####### Extensions / Themes and Plugins
define RegisterAddonInner
define Package/$(2)
SECTION:=juci
CATEGORY:=JUCI
TITLE:=default
SUBMENU:=$(1)
TITLE:=$(if $(3),$(3),JUCI $(2) plugin)
DEPENDS:=$(4)
endef
define Package/$(2)/install
$(INSTALL_DIR) $$(1)/
$(CP) $(PKG_BUILD_DIR)/bin/$(2)/* $$(1)/
endef
endef
define RegisterAddon
$(eval $(call RegisterAddonInner,$(1),$(2),$(3),$(4),$(5)))
$(eval $(call BuildPackage,$(2)))
endef
$(eval $(call RegisterAddon,Plugins,juci-catv, CATV Module,@(PACKAGE_catv)))
$(eval $(call RegisterAddon,Plugins,juci-cgroups, CGroups Module,@(PACKAGE_icgroupd)))
$(eval $(call RegisterAddon,Plugins,juci-ddns, DDNS Configuration,@(PACKAGE_ddns-scripts)))
$(eval $(call RegisterAddon,Plugins,juci-diagnostics, Simple Diagnostics,@(PACKAGE_busybox)))
$(eval $(call RegisterAddon,Plugins,juci-ndt, NDT Speed Test client,@(PACKAGE_ndt)))
$(eval $(call RegisterAddon,Plugins,juci-dnsmasq-dhcp, DHCP/DNSMasq Configuration,@(PACKAGE_dnsmasq||PACKAGE_dnsmasq-full)))
$(eval $(call RegisterAddon,Plugins,juci-dropbear, Dropbear Configuration,@(PACKAGE_dropbear)))
$(eval $(call RegisterAddon,Plugins,juci-easyqos, Easy QoS module,@(PACKAGE_easy-qos)))
$(eval $(call RegisterAddon,Plugins,juci-event, Event Module,@(PACKAGE_owsd)))
$(eval $(call RegisterAddon,Plugins,juci-firewall-fw3, Firewall Configuration,@(PACKAGE_firewall)))
$(eval $(call RegisterAddon,Plugins,juci-icwmp, TR-069 Module,@(PACKAGE_icwmp)))
$(eval $(call RegisterAddon,Plugins,juci-config-backup, Config Backup Module))
$(eval $(call RegisterAddon,Plugins,juci-qos, QoS module,@(PACKAGE_qos-scripts)))
$(eval $(call RegisterAddon,Plugins,juci-voice-client, Asterisk Voice Client Module,@(PACKAGE_asterisk)))
$(eval $(call RegisterAddon,Plugins,juci-minidlna, MiniDLNA Configuration,@(PACKAGE_minidlna)))
$(eval $(call RegisterAddon,Plugins,juci-mcproxy, Multicast Proxy Configuration,@(PACKAGE_mcproxy)))
$(eval $(call RegisterAddon,Plugins,juci-mod-status, Status Reporting Module,@(PACKAGE_questd)))
$(eval $(call RegisterAddon,Plugins,juci-mod-system, System Administration Module))
$(eval $(call RegisterAddon,Plugins,juci-mwan3, mwan3 Configuration,@(PACKAGE_mwan3)))
$(eval $(call RegisterAddon,Plugins,juci-natalie-dect, DECT Module,@(PACKAGE_dectmngr2)))
$(eval $(call RegisterAddon,Plugins,juci-netmode, Netmode Module,@(PACKAGE_netmode)))
$(eval $(call RegisterAddon,Plugins,juci-network-device, Network Device Configuration,@(PACKAGE_netifd)))
$(eval $(call RegisterAddon,Plugins,juci-network-dsl, DSL Module))
$(eval $(call RegisterAddon,Plugins,juci-network-netifd, Network Module,@(PACKAGE_netifd)))
$(eval $(call RegisterAddon,Plugins,juci-network-port, Ethernet Port Configuration,@(PACKAGE_port-management)))
$(eval $(call RegisterAddon,Plugins,juci-openvpn, OpenVPN configuration,@(PACKAGE_openvpn)))
$(eval $(call RegisterAddon,Plugins,juci-owsd, OWSD configuration,@(PACKAGE_owsd)))
$(eval $(call RegisterAddon,Plugins,juci-printer, p910nd Printer Server Configuration,@(PACKAGE_p910nd)))
#$(eval $(call RegisterAddon,Plugins,juci-realtime-graphs, Realtime Graphs))
$(eval $(call RegisterAddon,Plugins,juci-samba, Samba Configuration,@(PACKAGE_samba3)))
$(eval $(call RegisterAddon,Plugins,juci-sfp, SFP Configuration,@(PACKAGE_peripheral_manager)))
$(eval $(call RegisterAddon,Plugins,juci-snmpd, SNMP Module,@(PACKAGE_snmpd)))
$(eval $(call RegisterAddon,Plugins,juci-sysupgrade, Sysupgrade Firmware Upgrade,@(PACKAGE_rpcd-mod-rpcsys)))
$(eval $(call RegisterAddon,Plugins,juci-uhttpd, uHTTPD Configuration,@(PACKAGE_uhttpd)))
$(eval $(call RegisterAddon,Plugins,juci-upnp, UPnP Configuration Module,@(PACKAGE_miniupnpd)))
#$(eval $(call RegisterAddon,Plugins,juci-usb, USB Module))
$(eval $(call RegisterAddon,Plugins,juci-wireless, Wireless Management Module))
$(eval $(call RegisterAddon,Plugins,juci-wifilife, WiFi Life Module,@(PACKAGE_wifilife)))
$(eval $(call RegisterAddon,Themes,juci-theme-iopsys))
####### dynamically publish themes as packages #######
$(foreach th,$(wildcard $(TOPDIR)/tmp/juci-themes/*),$(eval $(call RegisterAddon,Themes,$(notdir $(th)))))

View File

@@ -1,66 +0,0 @@
config juci 'juci'
option homepage 'overview'
option theme 'juci-theme-iopsys'
option favicon 'favicon.ico'
config login 'login'
option showusername '1'
option defaultuser 'user'
config localization 'localization'
option default_language 'en'
list languages 'en'
config wiki 'wiki'
option visible '0'
option version 'v4.2.x'
config widget
list name 'overviewWidget11WAN'
list require 'ubus:network.interface'
config widget
list name 'overviewWidget10Network'
list require 'ubus:network.interface'
list require 'ubus:router.network->hosts'
config widget
list name 'overviewWidget00WiFi'
list require 'ubus:wifi'
list require 'ubus:wifi.wps'
config menu
option path 'overview'
option page 'overview'
config menu
option path 'system'
option page 'system'
option redirect 'first'
config menu
option path 'status'
option page 'status'
option redirect 'first'
config menu
option path 'status/system'
option page 'status-system'
list require 'ubus:router.system->info'
config menu
option path 'status/network'
option page 'status-network'
list require 'ubus:network.interface'
config menu
option path 'status/dsl'
option page 'network-dsl-status'
list require 'ubus:dsl->stats'
list require 'ubus:dsl->status'
config menu
option path 'system/upgrade'
option page 'settings-upgrade'
list expose 'admin'

View File

@@ -1,41 +0,0 @@
#!/bin/sh /etc/rc.common
. /lib/functions.sh
START=94
STOP=06
USE_PROCD=1
NAME=juci
start_service() {
mkdir -p /tmp/juci
touch /www/index.html.gz
chmod 755 /www/cgi-bin/luci
# this will simply update index.html to include any files that are for some reason not included
# a good way to make sure all plugins are properly included at each boot
config_load juci
local theme
config_get theme juci theme
if [ "$theme" ]
then
if [ -f /www/themes/theme.js.gz ]
then
rm -f /www/themes/theme.js.gz
fi
if [ -f /www/themes/*$theme.js.gz ]
then
ln -s /www/themes/*$theme.js.gz /www/themes/theme.js.gz
fi
fi
juci-update
}
stop() {
service_stop /sbin/juci
}
service_triggers()
{
procd_add_reload_trigger juci
}

View File

@@ -1,49 +0,0 @@
#!/bin/sh
. /lib/functions.sh
USER_SECTION=""
USER_EXISTS=0
find_user(){
local section="$1"
local user="$2"
config_get username $section username
if [ "$username" == "$user" ]; then
USER_SECTION="$section"
USER_EXISTS=1
fi
}
config_load rpcd
USER_EXISTS=0
config_foreach find_user login root
if [ $USER_EXISTS -eq 1 ]; then
uci delete rpcd.$USER_SECTION
fi
USER_EXISTS=0
config_foreach find_user login admin
if [ $USER_EXISTS -eq 0 ]; then
uci -q add rpcd login >/dev/null
uci -q set rpcd.@login[-1].username="admin"
uci -q set rpcd.@login[-1].password="\$p\$admin"
uci -q add_list rpcd.@login[-1].read="enduser"
uci -q add_list rpcd.@login[-1].read="administrator"
uci -q add_list rpcd.@login[-1].write="enduser"
uci -q add_list rpcd.@login[-1].write="administrator"
fi
USER_EXISTS=0
config_foreach find_user login user
if [ $USER_EXISTS -eq 0 ]; then
uci -q add rpcd login >/dev/null
uci -q set rpcd.@login[-1].username="user"
uci -q set rpcd.@login[-1].password="\$p\$user"
uci -q add_list rpcd.@login[-1].read="enduser"
uci -q add_list rpcd.@login[-1].write="enduser"
fi
uci commit rpcd

View File

@@ -1,21 +0,0 @@
{
"administrator": {
"description": "Administrator Access Rights",
"read": {
"ubus": {
"file": [
"write"
],
"rpc-sys": [
"upgrade_start",
"upgrade_test"
]
}
},
"write": {
"file": {
"/tmp/firmware.bin": ["write"]
}
}
}
}

View File

@@ -1,217 +0,0 @@
{
"enduser": {
"description": "End User Access Rights",
"read": {
"ubus": {
"dect": [
"state",
"handset",
"status",
"call"
],
"dsl": [
"status",
"stats"
],
"network.device": [
"status"
],
"network.interface*": [
"status",
"dump",
"up",
"down"
],
"router.network": [
"clients",
"hosts",
"dump"
],
"router.system": [
"info",
"memory",
"filesystem",
"process",
"processes"
],
"session": [
"access",
"list",
"destroy",
"login"
],
"system": [
"info",
"board",
"reboot"
],
"testnet": [
"status"
],
"uci": [
"*"
],
"voice.asterisk": [
"status",
"call_log",
"platform",
"supported_countries"
],
"wifi": [
"status"
],
"wifi.ap.*": [
"status",
"stats",
"assoclist",
"stations"
],
"wifi.radio.*": [
"status",
"stats",
"scan",
"scanresults",
"autochannel"
],
"wifi.wps": [
"start",
"stop",
"status",
"showpin"
]
},
"uci": [
"dhcp",
"firewall",
"juci",
"network",
"voice_client",
"wireless"
],
"owsd": [
"client",
"wifi.radio",
"wifi.sta",
"wifi.wps"
]
},
"write": {
"uci": [
"dhcp",
"firewall",
"network",
"wireless"
],
"uci_granular": {
"dhcp": [
{
"match": {
".type": "dhcp"
},
"option": [
"*"
]
},
{
"match": {
".type": "host"
},
"option": [
"*"
]
}
],
"firewall": [
{
"match": {
".type": "settings",
".name": "settings"
},
"option": [
"disabled"
]
},
{
"match": {
".type": "zone"
},
"option": [
"masq",
"name",
"network"
]
},
{
"match": {
".type": "redirect"
},
"option": [
"*"
]
},
{
"match": {
".type": "rule"
},
"option": [
"*"
]
},
{
"match": {
".type": "dmz"
},
"option": [
"enabled",
"host",
"ip6addr"
]
}
],
"network": [
{
"match": {
".type": "interface"
},
"option": [
"*"
]
}
],
"wireless": [
{
"match": {
".type": "wifi-status"
},
"option": [
"wps"
]
},
{
"match": {
".type": "wifi-iface",
"mode": "ap"
},
"option": [
"*"
]
},
{
"match": {
".type": "wifi-device"
},
"option": [
"channel"
]
}
]
},
"owsd": [
"client",
"wifi.radio",
"wifi.sta",
"wifi.wps"
]
}
}
}

View File

@@ -5,16 +5,16 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=map-agent
PKG_VERSION:=5.2.2
PKG_VERSION:=6.1.1
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE_VERSION:=e9248b872711e7b6242974684478bdba0f14a7cb
PKG_SOURCE_VERSION:=11c7b8686a936262d25123a3c1eb822da31078a5
PKG_MAINTAINER:=Anjan Chanda <anjan.chanda@iopsys.eu>
PKG_LICENSE:=PROPRIETARY IOPSYS
PKG_LICENSE_FILES:=LICENSE
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=git@dev.iopsys.eu:iopsys/map-agent.git
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/map-agent
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz
PKG_MIRROR_HASH:=skip

View File

@@ -0,0 +1,45 @@
#!/bin/sh
wan=$(db -q get hw.board.ethernetWanPort)
[ -z "$wan" ] && exit 1 # no configuration
[ "$PORT" != "$wan" ] && exit 0
remove_from_bridge() {
config_get ifname "$section" ifname
ubus call network.interface.$bridge remove_device '{"name":"$ifname"}'
}
update_bstas() {
local section="$1"
local action="$2"
local ifname onboarded
config_get ifname "$section" ifname
config_get_bool enabled "$section" enabled 0
if [ "$action" = "down" ]; then
wpa_cli -i "$ifname" disconnect > /dev/null 2>&1
wpa_cli -i "$ifname" disable_network 0 > /dev/null 2>&1
# wpa_cli -i "$ifname" save_config > /dev/null 2>&1
elif [ "$action" = "up" ]; then
[ "$enabled" -eq 0 ] && return
wpa_cli -i "$ifname" reconnect > /dev/null 2>&1
wpa_cli -i "$ifname" enable_network 0 > /dev/null 2>&1
# wpa_cli -i "$ifname" save_config > /dev/null 2>&1
fi
}
if [ "$LINK" = "up" ]; then
touch /tmp/map.agent.bsta_global_disable
config_load "mapagent"
bridge=$(uci get mapagent.agent.al_bridge | cut -d '-' -f2)
config_foreach remove_from_bridge bk-iface $bridge
config_foreach update_bstas bk-iface down
else
rm -f /tmp/map.agent.bsta_global_disable
config_load "mapagent"
config_foreach update_bstas bk-iface up
fi

View File

@@ -1,29 +0,0 @@
#!/bin/sh
wan=$(db -q get hw.board.ethernetWanPort)
[ -z "$wan" ] && exit 1 # no configuration
[ "$PORT" != "$wan" ] && exit 0
update_bstas() {
local section="$1"
local action="$2"
local ifname onboarded
config_get ifname "$section" ifname
config_get_bool onboarded "$section" onboarded 0
[ "$onboarded" -eq 0 ] && return
wpa_cli -i "$ifname" "$action" > /dev/null 2>&1
}
if [ "$LINK" = "up" ]; then
touch /tmp/map.agent.bsta_global_disable
config_load "mapagent"
config_foreach update_bstas bk-iface disconnect
else
rm -f /tmp/map.agent.bsta_global_disable
config_load "mapagent"
config_foreach update_bstas bk-iface reconnect
fi

View File

@@ -5,6 +5,47 @@ STOP=20
USE_PROCD=1
MAP_DEV="map_dev"
MAP_IF="map"
MAP_VETH="lei"
create_map() {
uci -q set network.${MAP_DEV}=device
uci -q set network.${MAP_DEV}.name=br-map
uci -q set network.${MAP_DEV}.type=bridge
uci -q set network.${MAP_DEV}.bridge_empty=1
uci -q set network.${MAP_IF}=interface
uci -q set network.${MAP_IF}.device=br-map
uci -q set network.${MAP_IF}.is_lan=1
uci -q set mapagent.agent.al_bridge=br-map
uci -q commit
ubus call network reload
ubus -t 5 wait_for network.device
ip link add ${MAP_VETH} type veth peer name ${MAP_VETH}_lan 2>/dev/null
brctl addif br-map ${MAP_VETH} 2>/dev/null
brctl addif br-lan ${MAP_VETH}_lan 2>/dev/null
ip link set ${MAP_VETH} up 2>/dev/null
ip link set ${MAP_VETH}_lan up 2>/dev/null
}
remove_map() {
ip link delete ${MAP_VETH} &>/dev/null
uci -q delete network.${MAP_DEV}
uci -q delete network.${MAP_IF}
uci -q set mapagent.agent.al_bridge=br-lan
uci -q commit
ubus call network reload
}
start_service() {
config_load "mapagent"
@@ -16,6 +57,10 @@ start_service() {
config_get_bool enabled agent enabled 1
[ "$enabled" -eq 0 ] && return 1
local ts
config_get_bool ts agent vlan_segregation 0
[ "$ts" -eq 1 ] && create_map #|| remove_map
procd_open_instance
procd_set_param command "/usr/sbin/mapagent" "-d"
procd_set_param respawn
@@ -24,9 +69,13 @@ start_service() {
procd_close_instance
}
#stop_service() {
# remove_map
#}
service_triggers()
{
procd_add_reload_trigger "ieee1905"
procd_add_reload_trigger "mapagent"
}
reload_service() {

View File

@@ -7,6 +7,8 @@
# write_credentials - write bBSS credentials to fBSS
. /lib/functions.sh
. /usr/share/libubox/jshn.sh
. /lib/wifi/traffic_separation
diff=0
@@ -41,10 +43,10 @@ brcm_sync_credentials() {
section=$(uci add ieee1905 ap)
[ "$section" == "" ] && return
uci set ieee1905.${section}.band=$band
uci set ieee1905.${section}.ssid=$ssid
uci set ieee1905.${section}.encryption=$encryption
uci set ieee1905.${section}.key=$key
uci -q set ieee1905.${section}.band=$band
uci -q set ieee1905.${section}.ssid="$ssid"
uci -q set ieee1905.${section}.encryption=$encryption
uci -q set ieee1905.${section}.key="$key"
}
mapagent_process_radio() {
@@ -89,8 +91,8 @@ brcm_write_credentials() {
write_wireless() {
local section=$1
local map_ifname=$2
local bk_ssid=$3
local bk_key=$4
local bk_ssid="$3"
local bk_key="$4"
config_get ifname $section ifname
@@ -98,21 +100,21 @@ brcm_write_credentials() {
[ "$ifname" != "$map_ifname" ] && return
#echo applying bk_ssid = $bk_ssid bk_key = $bk_key
#echo applying bk_ssid = "$bk_ssid" bk_key = "$bk_key"
uci -q set wireless.${section}.multi_ap_backhaul_ssid="$bk_ssid"
uci -q set wireless.${section}.multi_ap_backhaul_key="$bk_key"
}
config_load wireless
config_foreach write_wireless wifi-iface $1 $2 $3
config_foreach write_wireless wifi-iface "$1" "$2" "$3"
}
mapagent_find_fbss() {
local section=$1
local dev=$2
local bk_ssid=$3
local bk_key=$4
local bk_ssid="$3"
local bk_key="$4"
config_get device $section device
config_get multi_ap $section multi_ap "0"
@@ -124,10 +126,10 @@ brcm_write_credentials() {
config_get ifname $section ifname
#echo applying bk_ssid = $bk_ssid bk_key = $bk_key
#echo applying bk_ssid = "$bk_ssid" bk_key = "$bk_key"
# subshell in hopes to maintain mapagent config loaded
$(mapagent_apply_wireless $ifname $bk_ssid $bk_key)
echo $(mapagent_apply_wireless $ifname "$bk_ssid" "$bk_key") 2> /dev/null
}
mapagent_find_bbss() {
@@ -147,9 +149,9 @@ brcm_write_credentials() {
config_get ssid $1 ssid
config_get key $1 key
#echo found ssid=$ssid key=$key
#echo found ssid="$ssid" key="$key"
config_foreach mapagent_find_fbss fh-iface $dev $ssid $key
config_foreach mapagent_find_fbss fh-iface $dev "$ssid" "$key"
}
mapagent_process_radio() {
@@ -210,7 +212,7 @@ write_bsta_config() {
[ "$bsta" == "$ifname" ] || return
#echo setting diff = $diff > /dev/console
uci set wireless.${section}.bssid=$bssid
uci -q set wireless.${section}.bssid=$bssid
echo 1
}
config_load wireless
@@ -295,6 +297,342 @@ brcm_teardown_iface() {
uci commit mapagent
}
brcm_bsta_to_wireless() {
config_load mapagent
mapagent_find_lowest_prio_onboarded() {
mapagent_process_bk() {
config_get priority $1 priority "2"
config_get onboarded $1 onboarded "0"
[ "$onboarded" = "0" ] && return
if [ -z "$sec" -o "$prio" = "-1" -o "$priority" -lt "$prio" ]; then
sec=$1
prio=$priority
fi
}
local sec=""
local prio="-1"
config_foreach mapagent_process_bk bk-iface
echo $sec
}
mapagent_enable_best() {
#echo 1=$1 best=$best > /dev/console
if [ "$1" = "$best" ]; then
uci -q set mapagent.$1.enabled='1'
else
uci -q set mapagent.$1.enabled='0'
fi
}
mapagent_bsta_to_wireless() {
mapagent_apply_wl_bsta() {
apply_config() {
local section=$1
local bsta=$2
local ssid="$3"
local key="$4"
local encryption=$5
local enabled=$6
local bssid=$7
local disabled="0"
config_get ifname $section ifname
[ -z "$enabled" -o "$enabled" = "0" ] && disabled="1"
[ "$bsta" == "$ifname" ] || return
uci -q set wireless.${section}.ssid="$ssid"
uci -q set wireless.${section}.key="$key"
uci -q set wireless.${section}.encryption=$encryption
uci -q set wireless.${section}.bssid="$bssid"
#uci -q set wireless.${section}.disabled=$disabled
[ "$disabled" != "1" ] && return
wpa_cli -i "$bsta" disconnect > /dev/null 2>&1
wpa_cli -i "$bsta" disable_network 0 > /dev/null 2>&1
wpa_cli -i "$bsta" save_config > /dev/null 2>&1
echo 1
}
config_load wireless
config_foreach apply_config wifi-iface $@
uci commit wireless
}
mapagent_find_other_creds() {
#echo "trying to find other creds for $2" > /dev/console
config_get band $1 band
config_get onboarded $1 onboarded "0"
[ "$3" != "$band" -o "$onboarded" = "0" ] && return
config_get ssid $1 ssid
config_get key $1 key
config_get encryption $1 encryption
config_get enabled $1 enabled "0"
config_get bssid $1 bssid
echo $(mapagent_apply_wl_bsta $2 "$ssid" "$key" $encryption $4 "$bssid")
}
config_get band $1 band
config_get ifname $1 ifname
config_get onboarded $1 onboarded "0"
config_get enabled $1 enabled "0"
if [ "$onboarded" = "0" ]; then
config_foreach mapagent_find_other_creds bk-iface $ifname $band $enabled
else
config_get ssid $1 ssid
config_get key $1 key
config_get encryption $1 encryption
config_get bssid $1 bssid
echo $(mapagent_apply_wl_bsta $ifname "$ssid" "$key" $encryption $enabled "$bssid")
fi
}
# best=$(mapagent_find_lowest_prio_onboarded)
#
# [ -z "$best" ] && return
#
# band=$1
# sec=""
# prio=""
#
# config_foreach mapagent_enable_best bk-iface $best
# uci commit mapagent
config_load mapagent
diff=$(config_foreach mapagent_bsta_to_wireless bk-iface)
# [ "$diff" != "" ] && {
ubus call uci commit '{"config":"wireless"}'
# }
}
sync_mapcontroller_from_wireless() {
ubus -t 5 wait_for wifi
[ "$?" != "0" ] && return
[ ! -f "/etc/config/wireless" ] && return
status=$(ubus -S call wifi status)
device_to_band() {
local ifname=$1
json_load "$status"
json_select "radios"
json_get_keys keys
for key in $keys; do
json_select $key
json_get_var name name
if [ "$name" != "$ifname" ]; then
json_select ..
continue
fi
json_get_var band band
if [ "$band" == "5GHz" ]; then
echo "5"
elif [ "$band" == "2.4GHz" ]; then
echo "2"
fi
break
done
json_cleanup
}
wireless_process_iface() {
local section=$1
local type="ap"
local enabled="1"
config_get multi_ap $section multi_ap 0
[ "$multi_ap" != "1" ] && [ "$multi_ap" != "2" ] && return
config_get mode $section mode "ap"
[ "$mode" != "ap" ] && return
config_get device $section device
band=$(device_to_band $device)
[ "$band" == "" ] && return
config_get ssid $section ssid
config_get key $section key
config_get encryption $section encryption
config_get start_disabled $section start_disabled "0"
config_get network $section network
cntlr_section=$(uci add mapcontroller ${type})
uci -q set mapcontroller.${cntlr_section}.ssid="$ssid"
uci -q set mapcontroller.${cntlr_section}.key="$key"
uci -q set mapcontroller.${cntlr_section}.encryption="$encryption"
uci -q set mapcontroller.${cntlr_section}.band="$band"
uci -q set mapcontroller.${cntlr_section}.vid="1"
uci -q set mapcontroller.${cntlr_section}.network="$network"
[ "$multi_ap" == "1" ] && map_type="backhaul" || map_type="fronthaul"
uci -q set mapcontroller.${cntlr_section}.type="$map_type"
[ "$start_disabled" == "1" ] && enabled="0"
uci -q set mapcontroller.${cntlr_section}.enabled="$enabled"
}
mapcontroller_teardown() {
local section=$1
uci delete mapcontroller.$1
}
config_load mapcontroller
config_foreach mapcontroller_teardown ap
config_load wireless
config_foreach wireless_process_iface wifi-iface
uci commit mapcontroller
}
bsta_scan_on_enabled() {
config_load mapagent
mapagent_enable_bk() {
config_get ifname $1 ifname
config_get enabled $1 enabled
echo ifname $ifname enabled $enabled
[ "$enabled" = "0" ] && return
wpa_cli -i "$ifname" enable_network 0 > /dev/null 2>&1
wpa_cli -i "$ifname" reconnect > /dev/null 2>&1
wpa_cli -i "$ifname" save_config > /dev/null 2>&1
}
config_foreach mapagent_enable_bk bk-iface
}
bsta_enable_all() {
mapagent_enable_bk() {
config_get ifname $1 ifname "2"
uci -q set mapagent.$1.enabled="1"
}
config_load mapagent
config_foreach mapagent_enable_bk bk-iface
uci commit mapagent
bsta_scan_on_enabled
}
bsta_disable_lower_priority() {
config_load mapagent
mapagent_get_priority() {
config_get ifname $1 ifname
[ "$ifname" != "$2" ] && return
config_get priority $1 priority "2"
echo "$priority"
}
mapagent_disable_lower_bk() {
mapagent_apply_wl_bsta() {
apply_config() {
local section="$1"
local bsta="$2"
local enabled="$3"
config_get ifname $section ifname
[ "$bsta" == "$ifname" ] || return
[ "$enabled" != "0" ] && return
wpa_cli -i "$ifname" disconnect > /dev/null 2>&1
wpa_cli -i "$ifname" disable_network 0 > /dev/null 2>&1
wpa_cli -i "$ifname" save_config > /dev/null 2>&1
}
local ifname="$1"
local enabled="$2"
[ "$enabled" != "0" ] && return
config_load wireless
config_foreach apply_config wifi-iface $ifname $enabled
}
local enabled="1"
config_get ifname $1 ifname
config_get priority $1 priority
[ "$ifname" != "$2" -a "$priority" -gt "$3" ] && enabled="0"
uci -q set mapagent.$1.enabled="$enabled"
echo $(mapagent_apply_wl_bsta $ifname $enabled) > /dev/null
}
local bsta=$1
prio=$(config_foreach mapagent_get_priority bk-iface $bsta)
#echo bsta $bsta has prio $prio > /dev/console
config_foreach mapagent_disable_lower_bk bk-iface $bsta $prio
uci commit mapagent
# ubus call uci commit '{"config":"wireless"}'
}
bsta_use_link() {
config_load mapagent
mapagent_disable_bk() {
local bsta="$2"
config_get ifname $1 ifname
config_get enabled $1 enabled
[ "$bsta" = "$ifname" ] && return
wpa_cli -i "$ifname" disconnect > /dev/null 2>&1
wpa_cli -i "$ifname" disable_network 0 > /dev/null 2>&1
wpa_cli -i "$ifname" save_config > /dev/null 2>&1
}
local bsta=$1
config_foreach mapagent_disable_bk bk-iface $bsta
}
bsta_swap_to_link() {
bsta_disable_lower_priority $1
bsta_use_link $1
wpa_cli -i "$1" enable_network 0 > /dev/null
wpa_cli -i "$1" reconnect > /dev/null
wpa_cli -i "$1" save_config > /dev/null
}
func=$1
@@ -310,6 +648,14 @@ case "$func" in
set_network) brcm_set_network $@;;
write_bsta_config) write_bsta_config $@;;
teardown_iface) brcm_teardown_iface $@;;
bsta_to_wireless) brcm_bsta_to_wireless $@;;
sync_mapcontroller_from_wireless) sync_mapcontroller_from_wireless $@;;
ts) ts_sub $@;;
bsta_enable_all) bsta_enable_all $@;;
bsta_disable_lower_priority) bsta_disable_lower_priority $@;;
bsta_scan_on_enabled) bsta_scan_on_enabled $@;;
bsta_use_link) bsta_use_link $@;;
bsta_swap_to_link) bsta_swap_to_link $@;;
--help|help) usage;;
*) usage; exit 1;;
esac

View File

@@ -0,0 +1,381 @@
#!/bin/sh
. /lib/functions.sh
### Traffic Separation ###
ts_sub() {
ts_usage() {
cat <<EOF
Usage: $0 [create|delete|populate]
Traffic Separation related functions.
create fh <iface> <vid> - create vlan device and rules for wifi fronthaul
create bh <iface> <vid> <profile> - create vlan device and rules for wifi backhaul
create eth <iface> <vid> <pbits> - create vlan device and rules for logical ethernet interface
delete <iface> - delete vlan device
populate eth <iface> <vid> - add secondary network rules for logical ethernet interface
primary get <iface> - read primary VID for interface from driver (from Association Response frame IE)
EOF
exit 1
}
_get_bridge() {
local bridge=$(ip link show $1 | grep -o "master [^\s]*" | cut -d ' ' -f 2)
echo $bridge
}
ts_create() {
_create_vlan_dev() {
iface=$1 # real iface
vid=$2 # Vlan ID
bridge="$(_get_bridge $iface)" # bridge iface is connected to
vlan_dev=${iface}_vlan${vid} # name of vlan device to create
# remove interface from bridge if it is in one
[ -n "$bridge" ] && brctl delif $bridge $iface &> /dev/null
# create vlan device
vlanctl --mcast --if-create-name $iface $vlan_dev --if $iface --set-if-mode-rg
# bring the vlan device up and add back to bridge if it was in one
[ -n "$bridge" ] && brctl addif $bridge $vlan_dev &> /dev/null
ip link set dev $vlan_dev up
echo $vlan_dev
}
ts_create_fh() {
iface=$1 # fh iface
vid=$2 # SSID specific (secondary) or primary vid
[ -n "$iface" ] && [ -n "$vid" ] || {
cat <<EOF
Adding FH device requires IFACE and VID.
EOF
exit 1
}
# create vlan device
vlan_dev=$(_create_vlan_dev $iface $vid)
# add rules
# Note: removing these for now since these packets are read directly from the iface anyway
# vlanctl --if $iface --rx --tags 0 --filter-ethertype 0x888e --set-rxif $vlan_dev --rule-append # incoming EAPOL
# vlanctl --if $iface --rx --tags 0 --filter-ethertype 0x886c --set-rxif $vlan_dev --rule-append # incoming brcm
vlanctl --if $iface --rx --tags 0 --set-rxif $vlan_dev --push-tag --set-vid $vid 0 --rule-append
vlanctl --if $iface --tx --tags 1 --filter-txif $vlan_dev --filter-vid $vid 0 --pop-tag --dscp2pbits 0 --rule-append
}
# Note: Currently not used (will be needed for Profile 1)
ts_create_bh() {
iface=$1 # bh iface
vid=$2 # primary vid
profile=$3 # agent profile (1 or 2)
[ -n "$iface" ] && [ -n "$vid" ] && [ -n "$profile" ] || {
cat <<EOF
Adding BH device requires IFACE, VID and PROFILE (1 or 2).
EOF
exit 1
}
# create vlan device
vlan_dev=$(_create_vlan_dev $iface $vid)
# add rules
case "$profile" in
1 | profile_1 | profile1 | Profile_1 | Profile1)
vlanctl --if $iface --rx --tags 0 --set-rxif $vlan_dev --push-tag --set-vid $vid 0 --rule-append
vlanctl --if $iface --tx --tags 1 --filter-txif $vlan_dev --pop-tag --rule-append
;;
2 | profile_2 | profile2 | Profile_2 | Profile2)
vlanctl --if $iface --rx --tags 1 --set-rxif $vlan_dev --rule-append
vlanctl --if $iface --tx --tags 1 --filter-txif $vlan_dev --rule-append # note: already default
vlanctl --if $iface --tx --tags 0 --filter-ethertype 0x893a --filter-txif $vlan_dev --push-tag --set-vid $vid 0 --rule-append # note: outgoing IEEE1905.1
vlanctl --if $iface --tx --tags 0 --filter-ethertype 0x888e --filter-txif $vlan_dev --push-tag --set-vid $vid 0 --rule-append # note: outgoing EAPOL
;;
*)
ts_delete $iface
ts_usage
exit 1
;;
esac
}
ts_create_bh_drv() {
iface=$1 # bh iface
vid=$2 # primary vid
profile=$3 # agent profile (1 or 2)
[ -n "$iface" ] && [ -n "$vid" ] && [ -n "$profile" ] || {
cat <<EOF
Adding BH device requires IFACE, VID and PROFILE (1 or 2).
EOF
exit 1
}
wl vlan_mode 0 &> /dev/null # make sure this is OFF, else driver won't handle vlan
wl -i $iface down &> /dev/null
wl -i $iface map_profile $profile &> /dev/null # only has effect on profile 2
wl -i $iface map_8021q_settings $vid &> /dev/null # can only be set on bBSS (read-only on bSTA)
wl -i $iface up &> /dev/null
}
ts_create_eth() {
_ts_setup() {
vlan_bridge=$1
lan_bridge=$2
vlan_dev=$3
lan_dev=${vlan_dev}_lan
ip link show $vlan_dev &> /dev/null || ip link add $vlan_dev type veth peer name $lan_dev
brctl addif $vlan_bridge $vlan_dev &> /dev/null
brctl addif $lan_bridge $lan_dev &> /dev/null
ip link set $vlan_dev up
ip link set $lan_dev up
}
iface=$1 # Multi-AP Logical Ethernet Interface
vid=$2 # primary vid
pbits=$3 # default pbits to apply
vlan_bridge=$4 # name of ts subsystem bridge
lan_bridge=$5 # name of node local bridge
[ -n "$iface" ] && [ -n "$vid" ] && [ -n "$pbits" ] && [ -n "$vlan_bridge" ] && [ -n "$lan_bridge" ] || {
cat <<EOF
Adding ETH device requires IFACE, VID, PBITS and name of vlan and lan bridges.
EOF
exit 1
}
# create virtual eth device between bridges (if it doesn't exist))
_ts_setup $vlan_bridge $lan_bridge $iface
# create vlan device
vlan_dev=$(_create_vlan_dev $iface $vid)
# TODO: how to disable returning traffic back to incoming interface?
# add rules
vlanctl --if $iface --rx --tags 0 --set-rxif $vlan_dev --push-tag --set-vid $vid 0 --set-pbits $pbits 0 --rule-append
vlanctl --if $iface --tx --tags 1 --filter-vid $vid 0 --filter-txif $vlan_dev --pop-tag --rule-append
}
ts_create_dhcp() {
_br_setup() {
local name=$1
local sinkname=$2
local vid=$3
local diff=""
[ -z "$(uci -q get network.${name}_dev)" ] && {
uci -q set network.${name}_dev="device"
uci -q set network.${name}_dev.name="br-${name}"
uci -q set network.${name}_dev.type="bridge"
uci -q set network.${name}_dev.bridge_empty="1"
uci -q add_list network.${name}_dev.ports="${sinkname}"
diff="1"
}
[ -z "$(uci -q get network.${name})" ] && {
uci -q set network.${name}="interface"
uci -q set network.${name}.device="br-${name}"
uci -q set network.${name}.is_lan="1"
uci -q set network.${name}.proto="static"
uci -q set network.${name}.ipaddr="192.168.${vid}.1"
uci -q set network.${name}.netmask="255.255.255.0"
diff="1"
}
[ "$diff" = "1" ] && {
uci -q commit network
ubus call network reload
ubus -t 5 wait_for network.device
}
}
_dhcp_setup() {
local name=$1
[ -n "$(uci -q get dhcp.${name})" ] && return
uci -q set dhcp.${name}=dhcp
uci -q set dhcp.${name}.interface="${name}"
uci -q set dhcp.${name}.start="100"
uci -q set dhcp.${name}.limit="150"
uci -q set dhcp.${name}.leasetime="1h"
uci -q set dhcp.${name}.dhcpv4="server"
uci -q set dhcp.${name}.dhcpv6="server"
uci -q set dhcp.${name}.ra="server"
uci -q set dhcp.${name}.ra_slaac="1"
uci -q add_list dhcp.${name}.ra_flags="managed-config"
uci -q add_list dhcp.${name}.ra_flags="other-config"
uci -q commit dhcp
ubus call uci commit '{"config":"dhcp"}'
}
_wan_setup() {
local name=$1
config_load firewall
_process_zone() {
local section=$1
local sink=$2
local name
local exists=false
config_get name $section name
[ "$name" == "lan" ] || return
_process_list() {
local value=$1
[ "$value" == "$sink" ] && exists=true && return 1
}
config_list_foreach "$section" network _process_list
[ $exists = false ] && {
uci -q add_list firewall.${section}.network="${sink}"
uci -q commit firewall
ubus call uci commit '{"config":"firewall"}'
}
return 1
}
config_foreach _process_zone zone $name
}
vid=$1 # primary vid
[ -n "$vid" ] || {
cat <<EOF
VID required to configure DHCP.
EOF
exit 1
}
br_dev=sink_vlan${vid} # name of vlan device to create
ip l a sink1_vlan${vid} type veth peer name sink2_vlan${vid}
vlanctl --mcast --if-create-name sink2_vlan${vid} sink3_vlan${vid} --if sink2_vlan${vid} --set-if-mode-rg
vlanctl --if sink2_vlan${vid} --rx --tags 1 --filter-vid ${vid} 0 --set-rxif sink3_vlan${vid} --pop-tag --rule-append
vlanctl --if sink2_vlan${vid} --tx --tags 0 --filter-txif sink3_vlan${vid} --push-tag --set-vid ${vid} 0 --rule-append
ip l s sink1_vlan${vid} up
ip l s sink2_vlan${vid} up
ip l s sink3_vlan${vid} up
_br_setup $br_dev sink3_vlan${vid} $vid
_dhcp_setup $br_dev
_wan_setup $br_dev
}
local type=$1
shift
case "$type" in
fh) ts_create_fh $@;;
# bh) ts_create_bh $@;;
bh) ts_create_bh_drv $@;;
eth) ts_create_eth $@;;
dhcp) ts_create_dhcp $@;;
--help|help) ts_usage;;
*) ts_usage; exit 1;;
esac
}
ts_delete() {
iface=$1
path=$(ls -d /sys/class/net/${iface}/upper_*)
[ -z "$path" ] && exit 0
vlan_dev=${path##*upper_}
bridge="$(_get_bridge $vlan_dev)"
vlanctl --if-delete $vlan_dev # note: also removes rules and removes from bridge
brctl addif $bridge $iface &> /dev/null
}
ts_populate() {
local type=$1
shift
[ "$type" == "eth" ] || {
cat <<EOF
Populating ETH rules requires IFACE and VID.
EOF
exit 1
}
iface=$1 # Multi-AP Logical Ethernet Interface
vid=$2 # secondary vid
path=$(ls -d /sys/class/net/${iface}/upper_*)
[ -z "$path" ] && exit 1
vlan_dev=${path##*upper_}
# add rules
vlanctl --if $iface --rx --tags 1 --filter-vid $vid 0 --set-rxif $vlan_dev --rule-append # note: retain secondary vids
vlanctl --if $iface --tx --tags 1 --filter-vid $vid 0 --filter-txif $vlan_dev --rule-append # note: already default
}
ts_primary() {
local func=$1
shift
case "$func" in
get) vid=$(wl -i $1 map_8021q_settings); echo ${vid##* };;
*) ts_usage; exit 1;;
esac
}
ts_unicast() {
local mac=$1
local iface=$2
# TODO: improve?
res=$(ebtables -t broute -L | grep -i "$mac" | grep "$iface")
[ -n "$res" ] && return
ebtables -t broute -D BROUTING -d "$mac" -p 0x893a -j DROP
ebtables -t broute -I BROUTING -i "$iface" -d "$mac" -p 0x893a -j DROP
}
ts_multicast() {
local iface=$1
# TODO: improve?
res=$(ebtables -t broute -L | grep -i "1:80:C2:00:00:13" | grep "$iface")
[ -n "$res" ] && return
ebtables -t broute -D BROUTING -d 01:80:C2:00:00:13 -p 0x893a -j DROP
ebtables -t broute -D BROUTING -i "$iface" -d 01:80:C2:00:00:13 -p 0x893a -j DROP
ebtables -t broute -I BROUTING -i "$iface" -d 01:80:C2:00:00:13 -p 0x893a -j DROP
}
local func=$1
shift
case "$func" in
create) ts_create $@;;
delete) ts_delete $@;;
populate) ts_populate $@;;
primary) ts_primary $@;;
unicast) ts_unicast $@;;
multicast) ts_multicast $@;;
--help|help) ts_usage;;
*) ts_usage; exit 1;;
esac
}

View File

@@ -5,15 +5,15 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=map-controller
PKG_VERSION:=4.1.0
PKG_VERSION:=5.1.1
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE_VERSION:=34e239d8bb0dfade22bce3a4fb583ada826d3736
PKG_SOURCE_VERSION:=234cff05ee7987f50e3d5e76d920f59f9c680212
PKG_LICENSE:=PROPRIETARY IOPSYS
PKG_LICENSE_FILES:=LICENSE
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=git@dev.iopsys.eu:iopsys/map-controller.git
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/map-controller
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz
PKG_MIRROR_HASH:=skip

View File

@@ -2,43 +2,66 @@ config controller 'controller'
option enabled '1'
option registrar '5 2' #bands on which wps registrar supported
option debug '6'
option al_bridge 'br-lan'
option enable_sta_steer '0'
option enable_bsta_steer '0'
option primary_vid '1'
option primary_pcp '0'
config vlan 'lan'
option network 'lan'
option id '1'
config interface 'lan'
option 'dhcp'
config fh-credentials
config ap
option band '5'
option encryption 'psk2'
option encryption 'sae-mixed'
option key '1234567890'
option ssid 'map-net5'
option vlan '1'
option vid '1'
option type 'fronthaul'
option network 'lan'
config fh-credentials
config ap
option band '2'
option encryption 'psk2'
option encryption 'sae-mixed'
option key '1234567890'
option ssid 'map-net2'
# option bk_ssid 'multiap_ssid123'
# option bk_key 'multiap_key123'
option vlan '1'
option vid '1'
option type 'fronthaul'
option network 'lan'
config bk-credentials
config ap
option band '5'
option encryption 'psk2'
option encryption 'sae'
option key '5555555555'
option ssid 'map-bkhaul-5'
option multi_ap '2'
option type 'backhaul'
option disallow_bsta '1' # bitmap, 1 for disallow p1, 2 to disallow p2, 3 to disallow both (probably never applicable)
option vlan '1'
option vid '1'
option network 'lan'
config bk-credentials
config ap
option band '2'
option encryption 'psk2'
option encryption 'sae'
option key '2222222222'
option ssid 'map-bkhaul-2'
option multi_ap '2'
option disallow_bsta '0' # 0 or 1 profile-1 bSTA
option vlan '1'
list disallow_bsta '0' # 0 or 1 profile-1 bSTA
option vid '1'
option type 'backhaul'
option network 'lan'
config policy 'policy'
list steer_exclude '00:11:22:33:44:55'
list steer_exclude_btm '00:aa:bb:cc:dd:ee'
option steer_policy '2' # 0, 1, 2 - see MultiAP spec
option util_threshold '200' # channel-util as in BSS load
option rcpi_threshold '30' # 0 - 220 valid range
option report_scan '0' # 0 or 1 for independent scans
option report_sta_assocfails '1' # 0 or 1 - stas assoc failure
option report_sta_assocfails_rate '2' # reporting rate for STA assoc fails (attempts per minute)
option report_metric_periodic '0' # 0, or 1 - 255 in secs
option report_rcpi_threshold '0' # 0, or 1 - 220
option report_util_threshold '0' # 0, or channel-util value
option rcpi_hysteresis_margin '0' # 0, or > 0 - hysteresis margin
option include_sta_stats '0' # sta stats in AP metric resp
option include_sta_metric '0' # sta metric in AP metric resp
option disallow_bsta_p1 '0' # 0 or 1 profile-1 bSTA
option disallow_bsta_p2 '0' # 0 or 1 profile-2 bSTA

View File

@@ -48,6 +48,8 @@ reload_service() {
config_get_bool enabled controller enabled 1
if [ "$enabled" -eq 0 ]; then
stop
# Start but without instance so reload trigger works.
start
return
fi

View File

@@ -6,11 +6,11 @@ include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=map-topology
PKG_VERSION:=2.1.8
PKG_VERSION:=3.0.4
LOCAL_DEV:=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_VERSION:=68c8ebb9ffd72873bb35971b9ea854a6c1e1df5c
PKG_SOURCE_VERSION:=5763d405ed896140f5ca5ed9073b98d4bb728b14
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/map-topology.git
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.xz

42
obudpst/Makefile Normal file
View File

@@ -0,0 +1,42 @@
#
# Copyright (c) 2020, Broadband Forum
# Copyright (c) 2020, AT&T Communications
#
include $(TOPDIR)/rules.mk
PKG_NAME:=obudpst
PKG_VERSION:=7.2.1
PKG_SOURCE_VERSION:=9c448095c9773bd7e5cea143af07817ad9f3c6ba
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/BroadbandForum/obudpst.git
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip
PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=LICENSE
include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/cmake.mk
define Package/obudpst
CATEGORY:=Utilities
DEPENDS+=+libopenssl
TITLE:=Open Broadband-UDP Speed Test (OB-UDPST)
endef
define Build/Install
:
endef
define Package/obudpst/description
Open Broadband-UDP Speed Test (OB-UDPST) is a client/server software utility to demonstrate
one approach of doing IP capacity measurements described by Broadband Forum TR-471.
endef
define Package/obudpst/install
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/udpst $(1)/usr/sbin/udpst
endef
$(eval $(call BuildPackage,obudpst))

View File

@@ -1,5 +1,7 @@
if PACKAGE_obuspa
menu "Configuration"
config OBUSPA_MTP_ENABLE_STOMP
bool "Enable STOMP as mtp protocol"
default y
@@ -11,5 +13,5 @@ config OBUSPA_MTP_ENABLE_MQTT
config OBUSPA_MTP_ENABLE_COAP
bool "Enable CoAP as mtp protocol"
default y
endmenu
endif

View File

@@ -5,12 +5,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=obuspa
PKG_VERSION:=4.1.0.1
PKG_VERSION:=4.1.0.9
LOCAL_DEV:=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=bb552093a94b0e6afd01a815cfad08236b2ea7e2
PKG_SOURCE_VERSION:=a52205791ef71cb54fa468064075ff85c7f5a638
PKG_SOURCE_URL:=https://dev.iopsys.eu/fork/obuspa.git
PKG_MAINTAINER:=Vivek Dutta <vivek.dutta@iopsys.eu>
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
@@ -29,6 +29,7 @@ include $(INCLUDE_DIR)/package.mk
define Package/obuspa
SECTION:=utils
CATEGORY:=Utilities
SUBMENU:=TRx69
TITLE:=USP agent
DEPENDS:=+libopenssl +libcurl +libsqlite3 +libubox +libubus +uspd +libmosquitto
endef

View File

@@ -5,5 +5,7 @@
[ "$ACTION" = ifup -o "$ACTION" = ifupdate ] || exit 0
[ "$ACTION" = ifupdate -a -z "$IFUPDATE_ADDRESSES" ] && exit 0
echo "Restarting obuspa"|logger -t obuspa.hotplug -p debug
/etc/init.d/obuspa reload

View File

@@ -1,14 +1,12 @@
#!/bin/sh /etc/rc.common
START=99
STOP=2
USE_PROCD=1
PROG=/usr/sbin/obuspa
EXTRA_COMMANDS="remove_db"
EXTRA_HELP=" remove_db Removes obuspa persistent db before restarting, self trigger with uci change"
PARAM_FILE="/tmp/obuspa_param_reset.txt"
CONFIGURATION=obuspa
PARAM_FILE="/tmp/obuspa_param_reset.txt"
KEEP_FILES="/lib/upgrade/keep.d/obuspa"
USP_TEMP_FILE="/tmp/usp.tmp"
controller_num=0
@@ -19,6 +17,7 @@ subs_num=0
challenge_num=0
index=0
role_def_file=""
PROFILE="/root/.profile"
. /lib/functions/network.sh
. /usr/share/libubox/jshn.sh
@@ -43,6 +42,19 @@ db_set() {
fi
}
update_keep() {
keep_file=${1}
if [ -z "${keep_file}" ]; then
return;
fi
grep -q "${keep_file}" ${KEEP_FILES}
if [ "$?" -ne 0 ]; then
echo ${keep_file} >> ${KEEP_FILES}
fi
}
get_index() {
index=$(( index + 1 ))
if [ "$1" = "$2" ]; then
@@ -580,28 +592,38 @@ configure_obuspa() {
fi
if [ -n "${interface}" ]; then
network_get_device ifname ${interface}
network_get_physdev ifname ${interface}
log "ifname from ${interface} is ${ifname}"
fi
# Set this variable for root user and obuspa -c tool
grep -q "export USP_BOARD_IFNAME=${ifname}" /root/.profile || \
echo "export USP_BOARD_IFNAME=${ifname}" >> /root/.profile
if [ -f "${PROFILE}" ]; then
grep -q "export USP_BOARD_IFNAME=${ifname}" ${PROFILE}
if [ "$?" -ne 0 ]; then
grep -q "export USP_BOARD_IFNAME" ${PROFILE}
if [ "$?" -eq 0 ]; then
sed -i "g/export USP_BOARD_IFNAME/d" ${PROFILE}
fi
echo "export USP_BOARD_IFNAME=${ifname}" >> ${PROFILE}
fi
else
echo "export USP_BOARD_IFNAME=${ifname}" > ${PROFILE}
fi
if [ -n "${db_file}" ]; then
echo "${db_file}" >>${KEEP_FILES}
update_keep "${db_file}"
procd_append_param command -f ${db_file}
fi
if [ -n "${trust_cert}" ]; then
echo "${trust_cert}" >>${KEEP_FILES}
update_keep "${trust_cert}"
if [ -f "${trust_cert}" ]; then
procd_append_param command -t ${trust_cert}
fi
fi
if [ -n "${client_cert}" ]; then
echo "${client_cert}" >>${KEEP_FILES}
update_keep "${client_cert}"
if [ -f "${client_cert}" ]; then
procd_append_param command -a ${client_cert}
fi
@@ -612,10 +634,6 @@ configure_obuspa() {
# Create factory reset file
db_init() {
[ -f ${PARAM_FILE} ] && rm -f ${PARAM_FILE}
[ -f /tmp/usp.db ] && rm -f /tmp/usp.db
[ -f ${KEEP_FILES} ] && rm -f ${KEEP_FILES}
# Load configuration
config_load $CONFIGURATION
config_foreach configure_obuspa obuspa
@@ -630,28 +648,6 @@ db_init() {
db_set Internal.Reboot.Cause "LocalFactoryReset"
}
# if uci changes for obuspa remove persistent db and then reload
remove_db() {
local db_file
config_load obuspa
config_get db_file global db_file
log "Removing db file (${db_file})"
[ -f ${db_file} ] && rm -f ${db_file}
sed -i "g/export USP_BOARD_IFNAME/d" /root/.profile
log "Restarting service"
stop
start
}
service_running() {
ubus -t 10 wait_for usp.raw
procd_running ${CONFIGURATION}
}
start_service() {
local enabled
@@ -664,10 +660,6 @@ start_service() {
fi
ubus wait_for usp.raw
if [ "$?" -ne 0 ]; then
log "OBUSPA failed to start usp.raw not available"
return 0
fi
procd_open_instance ${CONFIGURATION}
procd_set_param command ${PROG}
@@ -682,7 +674,19 @@ start_service() {
}
stop_service() {
local db_file
config_load obuspa
config_get db_file global db_file
${PROG} -c stop 2>&1 >/dev/null
if [ -z "${db_file}" ]; then
db_file="/tmp/usp.db"
fi
[ -f ${db_file} ] && rm -f ${db_file}
[ -f ${PARAM_FILE} ] && rm -f ${PARAM_FILE}
}
reload_service() {
@@ -691,8 +695,7 @@ reload_service() {
}
service_triggers() {
procd_add_reload_trigger "uspd" "mosquitto"
procd_add_config_trigger "config.change" "${CONFIGURATION}" /etc/init.d/obuspa remove_db
procd_add_reload_trigger "obuspa" "mosquitto"
# Create a reload trigger if schema update avaialble
procd_open_trigger
@@ -711,13 +714,7 @@ service_triggers() {
json_add_string "" "reload"
json_close_array
json_close_array
json_add_int "" "1000"
json_add_int "" "2000"
json_close_array
procd_close_trigger
# local interface
# config_load obuspa
# config_get interface global interface
# [ -n "$interface" ] && procd_add_interface_trigger "interface.*" "$interface" /etc/init.d/obuspa reload
}

View File

@@ -2,19 +2,6 @@
[ "$ACTION" = ifup ] || exit 0
handle_interface() {
ifname=$(uci get network.$1.ifname)
case "$ifname" in
@*)
alias_interface="$1 $alias_interface"
;;
esac
}
config_load network
config_foreach handle_interface "interface"
compare_owsd_iface() {
local interface
@@ -24,13 +11,6 @@ compare_owsd_iface() {
/etc/init.d/owsd reload
exit
fi
for i in $alias_interface; do
if [ "$INTERFACE" == "$i" ]; then
/etc/init.d/owsd reload
exit
fi
done
}
config_load owsd

View File

@@ -5,12 +5,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=periodicstats
PKG_VERSION:=1.0.2
PKG_VERSION:=1.0.4
LOCAL_DEV:=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=d53b540a89165753922707ed624b315d58abd10a
PKG_SOURCE_VERSION:=17a22d2a74f0ab2af6cec17b9b51ad5aac6fdd48
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/periodicstats.git
PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip

View File

@@ -1,5 +1,6 @@
#!/bin/sh
. /lib/functions.sh
. /lib/network/port.sh
IP_RULE=""
BR_RULE=""
@@ -13,6 +14,7 @@ PREV_ORDER=""
CURR_ORDER=""
MAX_ORDER=""
# Function to handle a queue order and
# update total number of queues
handle_q_order() {
@@ -671,17 +673,20 @@ assign_policer_to_port() {
local pindex="$2"
local portorder="$(db -q get hw.board.ethernetPortOrder)"
local wanport="$(db -q get hw.board.ethernetWanPort)"
local runner_lan_ports="$(bdmf_shell -c `cat /var/bdmf_sh_id` -cmd /b/examine port | grep ': port/index=lan' | sed -e 's#\.##g' | cut -f2 -d' ' | sort -u | xargs)"
local i=1
for port in $portorder; do
if [ "$ifname" == "$port" ]; then
if [ "$wanport" == "$port" ]; then
bdmf_shell -c `cat /var/bdmf_sh_id` -cmd /b/configure port/index=wan0 ingress_rate_limit={traffic_types=8,policer={policer/dir=us,index=$pindex}}
else
local i="${port: -1}"
bdmf_shell -c `cat /var/bdmf_sh_id` -cmd /b/configure port/index=lan$i ingress_rate_limit={traffic_types=8,policer={policer/dir=us,index=$pindex}}
local lanport="$(echo -n "$runner_lan_ports" | cut -f${i} -d' ')"
bdmf_shell -c `cat /var/bdmf_sh_id` -cmd /b/configure $lanport ingress_rate_limit={traffic_types=8,policer={policer/dir=us,index=$pindex}}
fi
break
fi
i=$((i+1))
done
}
@@ -745,11 +750,6 @@ config_ingress_rate_limit() {
local in_burst_size=$3
local wanport="$(db -q get hw.board.ethernetWanPort)"
if [ "$ifname" == "$wanport" ]; then
logger -t qosmngr "policing is not support on port $ifname"
return
fi
# Unit in uci file is in bps while that accepted by ethswctl is kbits
if [ $ingress_rate -lt 1000 ]; then
return
@@ -763,7 +763,10 @@ config_ingress_rate_limit() {
in_burst_size=$((in_burst_size / 1000))
fi
ethswctl -c rxratectrl -n 1 -p $ifname -x $ingress_rate -y $in_burst_size
local unitport="$(get_port_number $ifname)"
local unit=$(echo $unitport | cut -d ' ' -f 1)
local port=$(echo $unitport | cut -d ' ' -f 2)
ethswctl -c rxratectrl -n $unit -p $port -x $ingress_rate -y $in_burst_size
}
#function to handle a classify section
@@ -836,6 +839,7 @@ configure_queue() {
for i in 0 1 2 3 4 5 6 7; do
tmctl delqcfg --devtype 0 --if $intf --qid $i &>/dev/null
done
tmctl porttminit --devtype 0 --if $intf --flag 0 --numqueues 8
mkdir -p /tmp/qos/$intf
touch /tmp/qos/$intf/q_order
@@ -854,10 +858,14 @@ configure_policer() {
# the old config if any and return
if [ $POLICER_SKIP -eq 0 ]; then
for intf in $(db get hw.board.ethernetPortOrder); do
local unitport="$(get_port_number $intf)"
local unit=$(echo $unitport | cut -d ' ' -f 1)
local port=$(echo $unitport | cut -d ' ' -f 2)
# setting rate and burst size to 0 disables rate limiting
ethswctl -c rxratectrl -n 1 -p $intf -x 0 -y 0
if [ $port != "" -a $unit != "" ]; then
ethswctl -c rxratectrl -n $unit -p $port -x 0 -y 0
fi
done
return
fi
# Delete policer
@@ -885,8 +893,11 @@ configure_policer() {
}
configure_qos() {
configure_queue
#queue configuration is being done after shaper configuration,
#If port shapingrate configuration on DISC device is called after queue configuration then
#driver overwrites the queue shaping rate with default value of port shaping rate.
configure_shaper
configure_queue
configure_policer
configure_classify
}

View File

@@ -12,12 +12,3 @@ start_service() {
procd_set_param respawn
procd_close_instance
}
service_triggers()
{
procd_add_reload_trigger network wireless
}
reload_service() {
ubus -t 5 call router.network reload
}

View File

@@ -1,54 +0,0 @@
#!/bin/sh
. /usr/share/libubox/jshn.sh
. /lib/functions/network.sh
. /lib/functions.sh
case "$1" in
list)
echo '{ "dump" : {}, "hosts" : {} }'
;;
call)
case "$2" in
dump)
dump_network() {
local cfg="$1"
local is_lan type bool proto ipaddr netmask ifname
[ "$cfg" == "loopback" ] && return
config_get_bool is_lan $cfg is_lan 0
config_get type $cfg type
config_get_bool defaultroute $cfg defaultroute 1
config_get proto $cfg proto none
config_get ipaddr $cfg ipaddr
[ -z "$ipaddr" ] && network_get_ipaddr ipaddr $cfg
config_get netmask $cfg netmask "255.255.255.255"
config_get ifname $cfg ifname
json_add_object "$cfg"
json_add_boolean is_lan $is_lan
json_add_string type "$type"
json_add_boolean defaultroute $defaultroute
json_add_string proto "$proto"
json_add_string ipaddr "$ipaddr"
json_add_string netmask "$netmask"
json_add_string ifname "$ifname"
json_select ..
}
config_load network
json_init
config_foreach dump_network interface
json_dump
;;
hosts)
ubus call topology hosts | \
sed 's/interface_type/type/g' | \
sed 's/Ethernet/ethernet/g' | \
sed 's/Wi-Fi/wifi/g'
;;
esac
;;
esac

View File

@@ -5,11 +5,11 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=sulu
PKG_VERSION:=0.2.18
PKG_VERSION:=0.2.20
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/sulu.git
PKG_SOURCE_VERSION:=06411282a6c2d02d21599786c0dd12c00c711847
PKG_SOURCE_VERSION:=1cb1723f36718997968e923732fd6327a354689a
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_SOURCE_VERSION)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz

View File

@@ -6,14 +6,14 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=swmodd
PKG_VERSION:=2.0.5
PKG_VERSION:=2.0.9
LOCAL_DEV:=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=682967eaab558d7c4e4559d3a37e3a79a5492485
PKG_SOURCE_VERSION:=2283abeca8f6beb58cbbbe5c4865ed329832f957
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/swmodd.git
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip
endif
@@ -22,10 +22,11 @@ PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
include $(INCLUDE_DIR)/package.mk
define Package/swmodd
SECTION:=utils
CATEGORY:=Utilities
TITLE:= Software Modules Daemon
DEPENDS:=+libuci +libubox +ubus +libuuid +libbbf_api +opkg \
SECTION:=utils
CATEGORY:=Utilities
SUBMENU:=TRx69
TITLE:= Software Modules Daemon
DEPENDS:=+libuci +libubox +ubus +libuuid +libbbf_api +opkg \
+PACKAGE_liblxc:liblxc +PACKAGE_liblxc:cgroupfs-mount \
+@BUSYBOX_CONFIG_BUSYBOX +@BUSYBOX_CONFIG_FEATURE_SHOW_SCRIPT
endef
@@ -54,7 +55,6 @@ define Package/swmodd/install
$(INSTALL_DIR) $(1)/usr/lib/bbfdm
$(INSTALL_DIR) $(1)/etc/swmod
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_CONF) ./files/map_du $(1)/etc/swmod/map_du
$(INSTALL_BIN) ./files/swmodd.init $(1)/etc/init.d/swmodd
$(INSTALL_BIN) $(PKG_BUILD_DIR)/swmodd $(1)/usr/sbin/swmodd
$(INSTALL_BIN) $(PKG_BUILD_DIR)/libswmodd.so $(1)/usr/lib/bbfdm/libswmodd.so

View File

View File

@@ -8,9 +8,9 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=twamp
PKG_VERSION:=1.0.0
PKG_VERSION:=1.0.1
PKG_SOURCE_VERSION:=f6e914508aa1f7458f87bd68026f56262595d9a5
PKG_SOURCE_VERSION:=dbddaa0c4d826dfdf37bb92f98a2b2ad23035ca3
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/twamp.git

14
uspd/Config.in Normal file
View File

@@ -0,0 +1,14 @@
if PACKAGE_uspd
menu "Configuration"
config USPD_MAX_MSG_LEN
int "Maximum message length"
default 10485760
help
Set the maximum data length allowed over ubus in Bytes.
This value should not be larger than UBUS_MAX_MSGLEN from ubusd.
The maximum blob message length allowed is:
(configured value - 128) bytes
endmenu
endif

View File

@@ -5,14 +5,14 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=uspd
PKG_VERSION:=2.1.25
PKG_VERSION:=2.1.35
LOCAL_DEV:=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=b1c599287ee41b1af88d1fe9a5d553b3275cf225
PKG_SOURCE_VERSION:=fc8f0d9e051333fd811f5a6b7a7a6843063851e7
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/uspd.git
PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip
endif
@@ -25,8 +25,10 @@ include $(INCLUDE_DIR)/package.mk
define Package/uspd
SECTION:=utils
CATEGORY:=Utilities
SUBMENU:=TRx69
TITLE:=USP ubus backend
DEPENDS:=+libubox +ubus +libbbfdm
DEPENDS:=+libubox +ubus +libbbfdm +@BBFDM_ENABLE_JSON_PLUGIN +@BBFDM_ENABLE_DOTSO_PLUGIN \
+@BBF_TR181 +@BBF_TR104 +@BBF_TR143
endef
define Package/uspd/description
@@ -34,10 +36,14 @@ define Package/uspd/description
running on top of it.
endef
define Package/uspd/config
source "$(SOURCE)/Config.in"
endef
TARGET_CFLAGS += \
-I$(STAGING_DIR)/usr/include \
-D_GNU_SOURCE
-D_GNU_SOURCE \
-DUSPD_MAX_MSG_LEN=$(CONFIG_USPD_MAX_MSG_LEN)
ifeq ($(LOCAL_DEV),1)
define Build/Prepare
@@ -48,8 +54,10 @@ endif
define Package/uspd/install
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_DIR) $(1)/etc/config
$(INSTALL_BIN) ./files/uspd.init $(1)/etc/init.d/uspd
$(INSTALL_CONF) ./files/uspd.config $(1)/etc/config/uspd
$(INSTALL_DIR) $(1)/etc/bbfdm/json/
$(INSTALL_BIN) ./files/etc/init.d/uspd $(1)/etc/init.d/uspd
$(INSTALL_CONF) ./files/etc/config/uspd $(1)/etc/config/uspd
$(INSTALL_DATA) ./files/etc/bbfdm/json/transferComplete.json $(1)/etc/bbfdm/json/
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/uspd $(1)/usr/sbin/
endef

View File

@@ -0,0 +1,132 @@
{
"Device.LocalAgent.": {
"type": "object",
"version": "2.12",
"protocols": [
"usp"
],
"access": false,
"array": false,
"TransferComplete!": {
"type": "event",
"version": "2.12",
"protocols": [
"usp"
],
"Command": {
"type": "string",
"read": true,
"write": true,
"version": "2.12",
"protocols": [
"usp"
],
"datatype": "string"
},
"CommandKey": {
"type": "string",
"read": true,
"write": true,
"version": "2.12",
"protocols": [
"usp"
],
"datatype": "string"
},
"Requestor": {
"type": "string",
"read": true,
"write": true,
"version": "2.12",
"protocols": [
"usp"
],
"datatype": "string"
},
"TransferType": {
"type": "string",
"read": true,
"write": true,
"version": "2.12",
"protocols": [
"usp"
],
"datatype": "string",
"enumerations": [
"Download",
"Upload"
]
},
"Affected": {
"type": "string",
"read": true,
"write": true,
"version": "2.12",
"protocols": [
"usp"
],
"datatype": "string"
},
"TransferURL": {
"type": "string",
"read": true,
"write": true,
"version": "2.12",
"protocols": [
"usp"
],
"datatype": "URL",
"range": [
{
"max": 2048
}
]
},
"StartTime": {
"type": "dateTime",
"read": true,
"write": true,
"version": "2.12",
"protocols": [
"usp"
],
"datatype": "dateTime"
},
"CompleteTime": {
"type": "dateTime",
"read": true,
"write": true,
"version": "2.12",
"protocols": [
"usp"
],
"datatype": "dateTime"
},
"FaultCode": {
"type": "unsignedInt",
"read": true,
"write": true,
"version": "2.12",
"protocols": [
"usp"
],
"datatype": "unsignedInt"
},
"FaultString": {
"type": "string",
"read": true,
"write": true,
"version": "2.12",
"protocols": [
"usp"
],
"datatype": "string",
"range": [
{
"max": 256
}
]
}
}
}
}

View File

@@ -2,3 +2,4 @@ config uspd 'usp'
option granularitylevel '0'
option debug '0'
option loglevel '1'
option bbf_caching_time '5'

View File

@@ -1,6 +1,6 @@
#!/bin/sh /etc/rc.common
START=98
START=96
STOP=10
USE_PROCD=1
@@ -59,5 +59,5 @@ reload_service() {
service_triggers()
{
procd_add_config_trigger "config.change" "uspd" /etc/init.d/uspd restart
procd_add_reload_trigger "uspd"
}

View File

@@ -5,12 +5,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=wfa-capi
PKG_VERSION:=0.0.17
PKG_VERSION:=1.1.0
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=1079c7a76b3439f8f96ea478f34c59be4aaa99c6
PKG_SOURCE_VERSION:=189c59448ff33fd713a6a218206b18f0c613793a
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/wfa-capi.git
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz
PKG_MIRROR_HASH:=skip

View File

@@ -7,7 +7,7 @@ USE_PROCD=1
start_service() {
procd_open_instance
procd_set_param command "/usr/sbin/capiagent"
procd_set_param command "/usr/sbin/capiagent" "-p 9000"
procd_set_param limits core="unlimited"
# procd_set_param respawn
# procd_set_param stdout 1

View File

@@ -5,10 +5,10 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=wfadatad
PKG_VERSION:=4.0.10
PKG_VERSION:=5.0.5
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=bb7d6e5ee04803bca2391c30cc035a7fab0f1353
PKG_SOURCE_VERSION:=988a20b25f90a9095b0d4e168b4c471fa556a83e
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/wfadatad.git
PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz
PKG_MIRROR_HASH:=skip

View File

@@ -5,12 +5,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=wifimngr
PKG_VERSION:=12.0.3
PKG_VERSION:=14.0.0
LOCAL_DEV=0
ifneq ($(LOCAL_DEV),1)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=4426f003faac796d978092419959adf4cf6440c3
PKG_SOURCE_VERSION:=04b6b7d52f810bf3b1ff59fe6e26e02f2ae3b088
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/wifimngr.git
PKG_MAINTAINER:=Anjan Chanda <anjan.chanda@iopsys.eu>
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)_$(PKG_SOURCE_VERSION).tar.xz

View File

@@ -57,20 +57,53 @@ supp_status() {
return
fi
if [ -f "/tmp/map.agent.bsta_global_disable" ]; then
echo "CONFIGURED"
return
fi
echo "UNCONFIGURED"
}
supp_configured() {
wpasupp=$1
for wpa in $wpasupp
do
logger -t button "WPS $wpa check if configured"
status=$(supp_status $wpa)
if [ "$status" = "CONFIGURED" ]; then
logger -t button "WPS $wpa CONFIGURED"
echo "CONFIGURED"
return
fi
done
echo "UNCONFIGURED"
}
supp_wps() {
wpasupp=$1
for wpa in $wpasupp
do
logger -t button "WPS $wpa start"
ubus -t 1 call $wpa wps_start
done
}
wps_button() {
logger -t button "WPS button is pressed"
wpasupp="$(ubus list wpa_supplicant.* 2>/dev/null | head -1)"
wpasupp="$(ubus list wpa_supplicant.* 2>/dev/null)"
logger -t button "WPS checking: $wpasupp"
if [ -n "$wpasupp" ]; then
status=$(supp_status $wpasupp)
status=$(supp_configured "$wpasupp")
logger -t button "status $status"
if [ "$status" = "CONFIGURED" ]; then
start_ap_wps
else
logger -t button "WPS start $wpasupp"
ubus -t 1 call $wpasupp wps_start
supp_wps "$wpasupp"
fi
else
start_ap_wps

View File

@@ -8,9 +8,9 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=xmppc
PKG_VERSION:=1.0.1
PKG_VERSION:=1.0.2
PKG_SOURCE_VERSION:=a98cdda759418dab1c12a18c345112d94ed4c02e
PKG_SOURCE_VERSION:=4a09b8689d67dcbf3fd1b7e80e53816b7cd12614
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/xmppc.git