Skip to content

Commit

Permalink
fix: ppp pdp context number [backport release-5.2.0] (#4337)
Browse files Browse the repository at this point in the history
* fix: Improved Modem PDP Context parsing (#4329)

* fix: Improved Modem PDP Context parsing

Signed-off-by: MMaiero <matteo.maiero@eurotech.com>

* fix: Copyright date

Signed-off-by: MMaiero <matteo.maiero@eurotech.com>

Signed-off-by: MMaiero <matteo.maiero@eurotech.com>

* fix: merge problem

Signed-off-by: MMaiero <matteo.maiero@eurotech.com>

* chore: copyright date update

Signed-off-by: MMaiero <matteo.maiero@eurotech.com>

Signed-off-by: MMaiero <matteo.maiero@eurotech.com>
  • Loading branch information
MMaiero committed Jan 24, 2023
1 parent e0b9cc6 commit 04f8811
Show file tree
Hide file tree
Showing 9 changed files with 70 additions and 71 deletions.
3 changes: 2 additions & 1 deletion kura/org.eclipse.kura.net.admin/META-INF/MANIFEST.MF
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@ Bundle-Vendor: Eclipse Kura
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Import-Package: javax.microedition.io,
org.apache.commons.io;version="2.4.0",
org.apache.commons.lang3;version="3.4.0",
org.apache.commons.lang3;version="3.12.0",
org.apache.commons.lang3.math;version="3.12.0",
org.eclipse.kura;version="[1.0,2.0)",
org.eclipse.kura.comm;version="[1.0,2.0)",
org.eclipse.kura.configuration;version="[1.1,2.0)",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2011, 2021 Eurotech and/or its affiliates and others
* Copyright (c) 2011, 2023 Eurotech and/or its affiliates and others
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
Expand All @@ -14,6 +14,7 @@

import org.eclipse.kura.net.admin.modem.ModemPppConfigGenerator;
import org.eclipse.kura.net.admin.modem.PppPeer;
import org.eclipse.kura.net.admin.util.PppPdpUtil;
import org.eclipse.kura.net.admin.visitor.linux.util.ModemXchangePair;
import org.eclipse.kura.net.admin.visitor.linux.util.ModemXchangeScript;
import org.eclipse.kura.net.modem.ModemConfig;
Expand Down Expand Up @@ -78,7 +79,7 @@ public ModemXchangeScript getConnectScript(ModemConfig modemConfig) {
if (modemConfig != null) {
apn = modemConfig.getApn();
dialString = modemConfig.getDialString();
pdpPid = getPdpContextNumber(dialString);
pdpPid = PppPdpUtil.getPdpContextNumber(dialString);
}

ModemXchangeScript modemXchange = new ModemXchangeScript();
Expand Down Expand Up @@ -150,8 +151,4 @@ private String formPDPcontext(int pdpPid, PdpType pdpType, String apn) {

return pdpcontext.toString();
}

private int getPdpContextNumber(String dialString) {
return Integer.parseInt(dialString.substring("atd*99***".length(), dialString.length() - 1));
}
}
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
/*******************************************************************************
* Copyright (c) 2020 Eurotech and/or its affiliates and others
*
* Copyright (c) 2020, 2023 Eurotech and/or its affiliates and others
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
*
*
* SPDX-License-Identifier: EPL-2.0
*
*
* Contributors:
* Eurotech
* Sterwen-Technology
Expand All @@ -15,6 +15,7 @@

import org.eclipse.kura.net.admin.modem.ModemPppConfigGenerator;
import org.eclipse.kura.net.admin.modem.PppPeer;
import org.eclipse.kura.net.admin.util.PppPdpUtil;
import org.eclipse.kura.net.admin.visitor.linux.util.ModemXchangePair;
import org.eclipse.kura.net.admin.visitor.linux.util.ModemXchangeScript;
import org.eclipse.kura.net.modem.ModemConfig;
Expand Down Expand Up @@ -79,7 +80,7 @@ public ModemXchangeScript getConnectScript(ModemConfig modemConfig) {
if (modemConfig != null) {
apn = modemConfig.getApn();
dialString = modemConfig.getDialString();
pdpPid = getPdpContextNumber(dialString);
pdpPid = PppPdpUtil.getPdpContextNumber(dialString);
}

ModemXchangeScript modemXchange = new ModemXchangeScript();
Expand Down Expand Up @@ -151,9 +152,4 @@ private String formPDPcontext(int pdpPid, PdpType pdpType, String apn) {

return pdpcontext.toString();
}

private int getPdpContextNumber(String dialString) {
return Integer.parseInt(dialString.substring("atd*99***".length(), dialString.length() - 1));
}

}
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
/*******************************************************************************
* Copyright (c) 2011, 2020 Eurotech and/or its affiliates and others
*
* Copyright (c) 2011, 2023 Eurotech and/or its affiliates and others
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
*
*
* SPDX-License-Identifier: EPL-2.0
*
*
* Contributors:
* Eurotech
*******************************************************************************/
Expand All @@ -15,6 +15,7 @@
import org.eclipse.kura.net.admin.modem.ModemPppConfigGenerator;
import org.eclipse.kura.net.admin.modem.PppPeer;
import org.eclipse.kura.net.admin.modem.telit.he910.TelitHe910AtCommands;
import org.eclipse.kura.net.admin.util.PppPdpUtil;
import org.eclipse.kura.net.admin.visitor.linux.util.ModemXchangePair;
import org.eclipse.kura.net.admin.visitor.linux.util.ModemXchangeScript;
import org.eclipse.kura.net.modem.ModemConfig;
Expand Down Expand Up @@ -76,7 +77,7 @@ public ModemXchangeScript getConnectScript(ModemConfig modemConfig) {
if (modemConfig != null) {
apn = modemConfig.getApn();
dialString = modemConfig.getDialString();
pdpPid = getPdpContextNumber(dialString);
pdpPid = PppPdpUtil.getPdpContextNumber(dialString);
}

ModemXchangeScript modemXchange = new ModemXchangeScript();
Expand Down Expand Up @@ -113,10 +114,6 @@ public ModemXchangeScript getDisconnectScript(ModemConfig modemConfig) {
return modemXchange;
}

private int getPdpContextNumber(String dialString) {
return Integer.parseInt(dialString.substring("atd*99***".length(), dialString.length() - 1));
}

/*
* This method forms dial string
*/
Expand Down
Original file line number Diff line number Diff line change
@@ -1,19 +1,20 @@
/*******************************************************************************
* Copyright (c) 2011, 2020 Eurotech and/or its affiliates and others
*
* Copyright (c) 2011, 2023 Eurotech and/or its affiliates and others
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
*
*
* SPDX-License-Identifier: EPL-2.0
*
*
* Contributors:
* Eurotech
*******************************************************************************/
package org.eclipse.kura.net.admin.modem.telit.he910;

import org.eclipse.kura.net.admin.modem.ModemPppConfigGenerator;
import org.eclipse.kura.net.admin.modem.PppPeer;
import org.eclipse.kura.net.admin.util.PppPdpUtil;
import org.eclipse.kura.net.admin.visitor.linux.util.ModemXchangePair;
import org.eclipse.kura.net.admin.visitor.linux.util.ModemXchangeScript;
import org.eclipse.kura.net.modem.ModemConfig;
Expand Down Expand Up @@ -78,7 +79,7 @@ public ModemXchangeScript getConnectScript(ModemConfig modemConfig) {
if (modemConfig != null) {
apn = modemConfig.getApn();
dialString = modemConfig.getDialString();
pdpPid = getPdpContextNumber(dialString);
pdpPid = PppPdpUtil.getPdpContextNumber(dialString);
}

ModemXchangeScript modemXchange = new ModemXchangeScript();
Expand Down Expand Up @@ -115,14 +116,6 @@ public ModemXchangeScript getDisconnectScript(ModemConfig modemConfig) {
return modemXchange;
}

private int getPdpContextNumber(String dialString) {
int pdpPid = 1;
if (!dialString.isEmpty() && dialString.contains("atd*99***")) {
pdpPid = Integer.parseInt(dialString.substring("atd*99***".length(), dialString.length() - 1));
}
return pdpPid;
}

/*
* This method forms dial string
*/
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2020 Eurotech and/or its affiliates and others
* Copyright (c) 2020, 2023 Eurotech and/or its affiliates and others
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
Expand All @@ -14,6 +14,7 @@

import org.eclipse.kura.net.admin.modem.ModemPppConfigGenerator;
import org.eclipse.kura.net.admin.modem.PppPeer;
import org.eclipse.kura.net.admin.util.PppPdpUtil;
import org.eclipse.kura.net.admin.visitor.linux.util.ModemXchangePair;
import org.eclipse.kura.net.admin.visitor.linux.util.ModemXchangeScript;
import org.eclipse.kura.net.modem.ModemConfig;
Expand Down Expand Up @@ -78,7 +79,7 @@ public ModemXchangeScript getConnectScript(ModemConfig modemConfig) {
if (modemConfig != null) {
apn = modemConfig.getApn();
dialString = modemConfig.getDialString();
pdpPid = getPdpContextNumber(dialString);
pdpPid = PppPdpUtil.getPdpContextNumber(dialString);
}

ModemXchangeScript modemXchange = new ModemXchangeScript();
Expand Down Expand Up @@ -115,14 +116,6 @@ public ModemXchangeScript getDisconnectScript(ModemConfig modemConfig) {
return modemXchange;
}

private int getPdpContextNumber(String dialString) {
int pdpPid = 1;
if (!dialString.isEmpty() && dialString.contains("atd*99***")) {
pdpPid = Integer.parseInt(dialString.substring("atd*99***".length(), dialString.length() - 1));
}
return pdpPid;
}

/*
* This method forms dial string
*/
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
/*******************************************************************************
* Copyright (c) 2011, 2021 Eurotech and/or its affiliates and others
*
* Copyright (c) 2011, 2023 Eurotech and/or its affiliates and others
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
*
*
* SPDX-License-Identifier: EPL-2.0
*
*
* Contributors:
* Eurotech
* Red Hat Inc
Expand All @@ -18,6 +18,7 @@
import org.eclipse.kura.net.admin.modem.ModemPppConfigGenerator;
import org.eclipse.kura.net.admin.modem.PppPeer;
import org.eclipse.kura.net.admin.modem.hspa.HspaModemAtCommands;
import org.eclipse.kura.net.admin.util.PppPdpUtil;
import org.eclipse.kura.net.admin.visitor.linux.util.ModemXchangePair;
import org.eclipse.kura.net.admin.visitor.linux.util.ModemXchangeScript;
import org.eclipse.kura.net.modem.ModemConfig;
Expand Down Expand Up @@ -86,7 +87,7 @@ public ModemXchangeScript getConnectScript(ModemConfig modemConfig) {
if (modemConfig != null) {
apn = modemConfig.getApn();
dialString = modemConfig.getDialString();
pdpPid = getPdpContextNumber(dialString);
pdpPid = PppPdpUtil.getPdpContextNumber(dialString);
authType = modemConfig.getAuthType();
username = modemConfig.getUsername();
password = modemConfig.getPasswordAsPassword();
Expand Down Expand Up @@ -201,8 +202,4 @@ private String formAuthRequest(int pdpPid, AuthType authType, String username, P

return authReq.toString();
}

private int getPdpContextNumber(String dialString) {
return Integer.parseInt(dialString.substring("atd*99***".length(), dialString.length() - 1));
}
}
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
/*******************************************************************************
* Copyright (c) 2019, 2020 3 PORT d.o.o. and others
*
* Copyright (c) 2019, 2023 3 PORT d.o.o. and others
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
*
*
* SPDX-License-Identifier: EPL-2.0
*
*
* Contributors:
* 3 PORT d.o.o.
*******************************************************************************/
Expand All @@ -15,6 +15,7 @@

import org.eclipse.kura.net.admin.modem.ModemPppConfigGenerator;
import org.eclipse.kura.net.admin.modem.PppPeer;
import org.eclipse.kura.net.admin.util.PppPdpUtil;
import org.eclipse.kura.net.admin.visitor.linux.util.ModemXchangePair;
import org.eclipse.kura.net.admin.visitor.linux.util.ModemXchangeScript;
import org.eclipse.kura.net.modem.ModemConfig;
Expand Down Expand Up @@ -80,7 +81,7 @@ public ModemXchangeScript getConnectScript(ModemConfig modemConfig) {
if (modemConfig != null) {
apn = modemConfig.getApn();
dialString = modemConfig.getDialString();
pdpPid = getPdpContextNumber(dialString);
pdpPid = PppPdpUtil.getPdpContextNumber(dialString);
}

ModemXchangeScript modemXchange = new ModemXchangeScript();
Expand Down Expand Up @@ -117,14 +118,6 @@ public ModemXchangeScript getDisconnectScript(ModemConfig modemConfig) {
return modemXchange;
}

private int getPdpContextNumber(String dialString) {
int pdpPid = 1;
if (!dialString.isEmpty() && dialString.contains("atd*99***")) {
pdpPid = Integer.parseInt(dialString.substring("atd*99***".length(), dialString.length() - 1));
}
return pdpPid;
}

/*
* This method forms dial string
*/
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
/*******************************************************************************
* Copyright (c) 2023 Eurotech and/or its affiliates and others
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* Eurotech
*******************************************************************************/
package org.eclipse.kura.net.admin.util;

import static java.util.Objects.isNull;

import org.apache.commons.lang3.math.NumberUtils;

public class PppPdpUtil {

private PppPdpUtil() {
}

public static int getPdpContextNumber(String dialString) {
String pdpNum = "1";
if (!isNull(dialString) && !dialString.isEmpty() && dialString.toLowerCase().startsWith("atd*99***")) {
pdpNum = dialString.substring("atd*99***".length(), dialString.length() - 1);
}

return NumberUtils.toInt(pdpNum, 1);
}
}

0 comments on commit 04f8811

Please sign in to comment.