mirror of
https://github.com/Ysurac/openmptcprouter-feeds.git
synced 2025-03-09 15:40:03 +00:00
commit
f2fe6e4906
7 changed files with 82 additions and 18 deletions
|
@ -75,6 +75,12 @@ if uname.release:sub(1,4) == "5.15" or uname.release:sub(1,1) == "6" then
|
|||
o.datatype = "uinteger"
|
||||
o.rmempty = false
|
||||
o.default = 4
|
||||
|
||||
o = s:option(Value, "mptcp_add_addr_timeout", translate("Set the timeout after which an ADD_ADDR control message will be resent to an MPTCP peer that has not acknowledged a previous ADD_ADDR message."))
|
||||
o.datatype = "uinteger"
|
||||
o.rmempty = false
|
||||
o.default = 120
|
||||
|
||||
else
|
||||
o = s:option(Value, "mptcp_fullmesh_num_subflows", translate("Fullmesh subflows for each pair of IP addresses"))
|
||||
o.datatype = "uinteger"
|
||||
|
|
|
@ -8,25 +8,25 @@
|
|||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=modemmanager
|
||||
PKG_SOURCE_VERSION:=1.20.4
|
||||
PKG_RELEASE:=1
|
||||
PKG_SOURCE_VERSION:=1.20.6
|
||||
PKG_RELEASE:=8
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=https://gitlab.freedesktop.org/mobile-broadband/ModemManager.git
|
||||
#PKG_MIRROR_HASH:=f138effc693456c5040ec22e17c0a8b41143c3b17b62437462995c297a9150dc
|
||||
PKG_MIRROR_HASH:=e90103e2e42bb826bbbac83937a9a69f50348cd6ce0d8da655a12b65494ce7c9
|
||||
|
||||
PKG_MAINTAINER:=Nicholas Smith <nicholas@nbembedded.com>
|
||||
PKG_LICENSE:=GPL-2.0-or-later
|
||||
PKG_LICENSE_FILES:=COPYING
|
||||
|
||||
PKG_BUILD_DEPENDS:=glib2/host libxslt/host
|
||||
PKG_BUILD_FLAGS:=gc-sections
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
include $(INCLUDE_DIR)/nls.mk
|
||||
include $(INCLUDE_DIR)/meson.mk
|
||||
|
||||
TARGET_CFLAGS += -ffunction-sections -fdata-sections -fno-merge-all-constants -fmerge-constants
|
||||
TARGET_LDFLAGS += -Wl,--gc-sections
|
||||
TARGET_CFLAGS += -fno-merge-all-constants -fmerge-constants
|
||||
|
||||
define Package/modemmanager/config
|
||||
source "$(SOURCE)/Config.in"
|
||||
|
|
|
@ -272,6 +272,14 @@ mm_report_event() {
|
|||
local subsystem="$3"
|
||||
local sysfspath="$4"
|
||||
|
||||
# Do not save virtual devices
|
||||
local virtual
|
||||
virtual="$(echo "$sysfspath" | cut -d'/' -f4)"
|
||||
[ "$virtual" = "virtual" ] && {
|
||||
mm_log "debug" "sysfspath is a virtual device ($sysfspath)"
|
||||
return
|
||||
}
|
||||
|
||||
# Track/untrack events in cache
|
||||
case "${action}" in
|
||||
"add")
|
||||
|
|
|
@ -343,11 +343,22 @@ proto_modemmanager_init_config() {
|
|||
proto_config_add_string password
|
||||
proto_config_add_string pincode
|
||||
proto_config_add_string iptype
|
||||
proto_config_add_string plmn
|
||||
proto_config_add_int signalrate
|
||||
proto_config_add_boolean lowpower
|
||||
proto_config_add_boolean allow_roaming
|
||||
proto_config_add_defaults
|
||||
}
|
||||
|
||||
# Append param to the global 'connectargs' variable.
|
||||
append_param() {
|
||||
local param="$1"
|
||||
|
||||
[ -z "$param" ] && return
|
||||
[ -z "$connectargs" ] || connectargs="${connectargs},"
|
||||
connectargs="${connectargs}${param}"
|
||||
}
|
||||
|
||||
proto_modemmanager_setup() {
|
||||
local interface="$1"
|
||||
|
||||
|
@ -355,11 +366,11 @@ proto_modemmanager_setup() {
|
|||
local bearermethod_ipv4 bearermethod_ipv6 auth cliauth
|
||||
local operatorname operatorid registration accesstech signalquality
|
||||
|
||||
local device apn allowedauth username password pincode iptype metric signalrate
|
||||
local device apn allowedauth username password pincode iptype plmn metric signalrate allow_roaming
|
||||
|
||||
local address prefix gateway mtu dns1 dns2
|
||||
|
||||
json_get_vars device apn allowedauth username password pincode iptype metric signalrate
|
||||
json_get_vars device apn allowedauth username password pincode iptype plmn metric signalrate allow_roaming
|
||||
|
||||
# validate sysfs path given in config
|
||||
[ -n "${device}" ] || {
|
||||
|
@ -368,11 +379,6 @@ proto_modemmanager_setup() {
|
|||
proto_set_available "${interface}" 0
|
||||
return 1
|
||||
}
|
||||
[ -e "${device}" ] || {
|
||||
echo "Device not found in sysfs"
|
||||
proto_set_available "${interface}" 0
|
||||
return 1
|
||||
}
|
||||
|
||||
# validate that ModemManager is handling the modem at the sysfs path
|
||||
modemstatus=$(mmcli --modem="${device}" --output-keyvalue)
|
||||
|
@ -397,7 +403,24 @@ proto_modemmanager_setup() {
|
|||
echo "starting connection with apn '${apn}'..."
|
||||
proto_notify_error "${interface}" MM_CONNECT_IN_PROGRESS
|
||||
|
||||
connectargs="apn=${apn}${iptype:+,ip-type=${iptype}}${cliauth:+,allowed-auth=${cliauth}}${username:+,user=${username}}${password:+,password=${password}}${pincode:+,pin=${pincode}}"
|
||||
# setup allow-roaming parameter
|
||||
if [ -n "${allow_roaming}" ] && [ "${allow_roaming}" -eq 0 ];then
|
||||
allow_roaming="no"
|
||||
else
|
||||
# allowed unless a user set the opposite
|
||||
allow_roaming="yes"
|
||||
fi
|
||||
|
||||
# Append options to 'connectargs' variable
|
||||
append_param "apn=${apn}"
|
||||
append_param "allow-roaming=${allow_roaming}"
|
||||
append_param "${iptype:+ip-type=${iptype}}"
|
||||
append_param "${plmn:+operator-id=${plmn}}"
|
||||
append_param "${cliauth:+allowed-auth=${cliauth}}"
|
||||
append_param "${username:+user=${username}}"
|
||||
append_param "${password:+password=${password}}"
|
||||
append_param "${pincode:+pin=${pincode}}"
|
||||
|
||||
mmcli --modem="${device}" --timeout 120 --simple-connect="${connectargs}" || {
|
||||
proto_notify_error "${interface}" MM_CONNECT_FAILED
|
||||
proto_block_restart "${interface}"
|
||||
|
@ -509,7 +532,6 @@ proto_modemmanager_teardown() {
|
|||
json_get_vars device lowpower iptype
|
||||
|
||||
echo "stopping network"
|
||||
proto_notify_error "${interface}" MM_TEARDOWN_IN_PROGRESS
|
||||
|
||||
# load connected bearer information, just the first one should be ok
|
||||
modemstatus=$(mmcli --modem="${device}" --output-keyvalue)
|
||||
|
@ -544,6 +566,9 @@ proto_modemmanager_teardown() {
|
|||
# low power, only if requested
|
||||
[ "${lowpower:-0}" -lt 1 ] ||
|
||||
mmcli --modem="${device}" --set-power-state-low
|
||||
|
||||
proto_init_update "*" 0
|
||||
proto_send_update "$interface"
|
||||
}
|
||||
|
||||
[ -n "$INCLUDE_ONLY" ] || {
|
||||
|
|
|
@ -40,11 +40,11 @@ endef
|
|||
CONFIGURE_ARGS += --without-rpm \
|
||||
--without-nss --without-avahi --without-dyninst \
|
||||
--disable-server --disable-grapher --enable-prologues \
|
||||
--without-python2-probes --disable-translator \
|
||||
--without-python2-probes \
|
||||
--disable-libvirt --disable-sqlite --disable-monitor --without-python3-probes \
|
||||
ac_cv_prog_have_javac=no \
|
||||
ac_cv_prog_have_jar=no
|
||||
|
||||
# --disable-translator
|
||||
HOST_CONFIGURE_ARGS += --without-rpm \
|
||||
--without-nss --without-avahi --without-dyninst \
|
||||
--disable-server --disable-grapher --enable-prologues \
|
||||
|
|
11
systemtap/patches/replace-open64.patch
Normal file
11
systemtap/patches/replace-open64.patch
Normal file
|
@ -0,0 +1,11 @@
|
|||
--- a/setupdwfl.cxx 2023-07-26 20:22:35.427807372 +0200
|
||||
+++ b/setupdwfl.cxx 2023-07-26 20:22:43.855666830 +0200
|
||||
@@ -762,7 +762,7 @@
|
||||
clog << _("Attempting to extract kernel debuginfo build ID from /sys/kernel/notes") << endl;
|
||||
|
||||
const char *notesfile = "/sys/kernel/notes";
|
||||
- int fd = open64 (notesfile, O_RDONLY);
|
||||
+ int fd = open (notesfile, O_RDONLY);
|
||||
if (fd < 0)
|
||||
return "";
|
||||
|
|
@ -1944,6 +1944,16 @@ clear_transparent_proxy() {
|
|||
fi
|
||||
}
|
||||
|
||||
version_over_5_4() {
|
||||
MAJOR_VERSION=$(uname -r | awk -F '.' '{print $1}')
|
||||
MINOR_VERSION=$(uname -r | awk -F '.' '{print $2}')
|
||||
if [ $MAJOR_VERSION -ge 5 ] && [ $MINOR_VERSION -gt 13 ] || [ $MAJOR_VERSION -gt 5 ] ; then
|
||||
return 0
|
||||
else
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
start_instance() {
|
||||
local section="$1"
|
||||
|
||||
|
@ -2054,10 +2064,14 @@ start_instance() {
|
|||
return 1
|
||||
fi
|
||||
fi
|
||||
|
||||
PROG="$NAME.$section"
|
||||
|
||||
TRANSPARENT_PROXY_EXPECTED=1
|
||||
|
||||
procd_open_instance "$NAME.$section"
|
||||
if version_over_5_4; then
|
||||
PROG="mptcpize run ${PROG}"
|
||||
fi
|
||||
procd_open_instance "$PROG"
|
||||
procd_set_param command "$v2ray_file"
|
||||
procd_append_param command run
|
||||
procd_append_param command -config "$temp_config"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue