diff --git a/ad-connector/src/main/java/net/jami/jams/ad/connector/service/UserProfileService.java b/ad-connector/src/main/java/net/jami/jams/ad/connector/service/UserProfileService.java index 101d79a726544dd48a2ffe814197de9e53c73b2c..7d002e79a69d06ed7f09ea5f017050b43055d43c 100644 --- a/ad-connector/src/main/java/net/jami/jams/ad/connector/service/UserProfileService.java +++ b/ad-connector/src/main/java/net/jami/jams/ad/connector/service/UserProfileService.java @@ -39,8 +39,6 @@ import lombok.extern.slf4j.Slf4j; import net.jami.jams.ad.connector.ADConnector; import net.jami.jams.common.objects.user.UserProfile; -import java.net.URLEncoder; -import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.HashMap; import java.util.List; diff --git a/authentication-module/src/main/java/net/jami/jams/authmodule/UserAuthenticationModule.java b/authentication-module/src/main/java/net/jami/jams/authmodule/UserAuthenticationModule.java index 899feccc1d34512136519ab0be6fbe2dd4dd28e3..078490992905e188dbebe9d328ae2fd74d8bc6fa 100644 --- a/authentication-module/src/main/java/net/jami/jams/authmodule/UserAuthenticationModule.java +++ b/authentication-module/src/main/java/net/jami/jams/authmodule/UserAuthenticationModule.java @@ -23,7 +23,6 @@ package net.jami.jams.authmodule; import com.nimbusds.jwt.SignedJWT; -import lombok.NoArgsConstructor; import lombok.extern.slf4j.Slf4j; import net.jami.datastore.main.DataStore; import net.jami.jams.common.authentication.AuthenticationSource; diff --git a/datastore/src/main/java/net/jami/datastore/dao/JwtDao.java b/datastore/src/main/java/net/jami/datastore/dao/JwtDao.java index 78cd9661baa24560046f3cc659524b1bc21f745a..9f40420fe72ab6aaca6015b6d374e12c0d24f10b 100644 --- a/datastore/src/main/java/net/jami/datastore/dao/JwtDao.java +++ b/datastore/src/main/java/net/jami/datastore/dao/JwtDao.java @@ -7,10 +7,7 @@ import net.jami.jams.common.dao.StatementList; import net.jami.jams.common.dao.connectivity.SQLConnection; import java.sql.PreparedStatement; -import java.sql.ResultSet; import java.sql.SQLException; -import java.sql.Types; -import java.util.ArrayList; import java.util.List; @Slf4j diff --git a/jami-nameserver/src/main/java/net/jami/jams/nameserver/LocalNameServer.java b/jami-nameserver/src/main/java/net/jami/jams/nameserver/LocalNameServer.java index c0cce956321a4a023b95c34fb9d7242e5596007a..f9bae1a01f8eeb82b04a219fcfa94fc9dd4b1819 100644 --- a/jami-nameserver/src/main/java/net/jami/jams/nameserver/LocalNameServer.java +++ b/jami-nameserver/src/main/java/net/jami/jams/nameserver/LocalNameServer.java @@ -40,6 +40,8 @@ import java.util.List; @Slf4j public class LocalNameServer implements NameServer { + private static final String NAME_SERVER_PATH = "/api/nameserver"; + private final DataStore dataStore; private final String nameserverURI; private final AuthenticationModule authenticationModule; @@ -91,7 +93,7 @@ public class LocalNameServer implements NameServer { @Override public String getNameFromAddress(String address) { StatementList statementList = new StatementList(); - StatementElement statementElement = new StatementElement("ethAddress","=",address,""); + StatementElement statementElement = new StatementElement("jamiId","=",address,""); statementList.addStatement(statementElement); List<User> results = dataStore.getUserDao().getObjects(statementList); if(results.size() == 0) return null; @@ -100,6 +102,6 @@ public class LocalNameServer implements NameServer { @Override public String getURI() { - return this.nameserverURI; + return this.nameserverURI + NAME_SERVER_PATH; } } diff --git a/jams-common/src/main/java/net/jami/jams/common/objects/responses/DeviceRegistrationResponse.java b/jams-common/src/main/java/net/jami/jams/common/objects/responses/DeviceRegistrationResponse.java index 44d2d8f7ed665998616b5164a5aecb1d1335a131..0e271218d6841996c17c75d8274a601ff87017b4 100644 --- a/jams-common/src/main/java/net/jami/jams/common/objects/responses/DeviceRegistrationResponse.java +++ b/jams-common/src/main/java/net/jami/jams/common/objects/responses/DeviceRegistrationResponse.java @@ -41,7 +41,7 @@ public class DeviceRegistrationResponse { public void setCertificateChain(X509Certificate[] certificateChain){ StringBuilder stringBuilder = new StringBuilder(); - for(int i=0;i<certificateChain.length;i++){ + for(int i=certificateChain.length-1;i > 0;i--){ stringBuilder.append(X509Utils.getPEMStringFromCertificate(certificateChain[i])).append("\n"); } //remove the last \n because it's useless. diff --git a/jams-common/src/main/java/net/jami/jams/common/serialization/decoders/CSRDecoder.java b/jams-common/src/main/java/net/jami/jams/common/serialization/decoders/CSRDecoder.java index 59d664a035fc76fda9b3596dc84a1395520fa22c..dd99f792d6d2f25998916fa58d87f5799bbaf5ef 100644 --- a/jams-common/src/main/java/net/jami/jams/common/serialization/decoders/CSRDecoder.java +++ b/jams-common/src/main/java/net/jami/jams/common/serialization/decoders/CSRDecoder.java @@ -30,8 +30,18 @@ import java.io.IOException; public class CSRDecoder implements Decoder { + private static final String CSR_HEAD = "-----BEGIN NEW CERTIFICATE REQUEST-----\n"; + private static final String CSR_TAIL = "\n-----END NEW CERTIFICATE REQUEST-----"; + @Override public Object decode(JsonIterator jsonIterator) throws IOException { - return X509Utils.getCSRFromString(jsonIterator.readString()); + //This is legacy code, we need to sanitize the string + String input = jsonIterator.readString(); + input = input.replace(CSR_HEAD,""); + input = input.replace(CSR_TAIL,""); + input = input.replace("\n",""); + input = CSR_HEAD + input + CSR_TAIL; + //Once all legacy clients stop existing, this can safely be removed leaving only the jsonIter.readString() + return X509Utils.getCSRFromString(input); } } diff --git a/jams-server/src/main/java/net/jami/jams/server/Server.java b/jams-server/src/main/java/net/jami/jams/server/Server.java index b4c0ada26e4621e1c8ece56da3a0eff760ae6b65..582bb165f2da7044a44325765cc4489ebce6a796 100644 --- a/jams-server/src/main/java/net/jami/jams/server/Server.java +++ b/jams-server/src/main/java/net/jami/jams/server/Server.java @@ -26,7 +26,6 @@ import com.jsoniter.JsonIterator; import javassist.ClassPool; import lombok.extern.slf4j.Slf4j; import net.jami.datastore.main.DataStore; -import net.jami.jams.common.annotations.ScopedServletAnnotationScanner; import net.jami.jams.common.authentication.AuthenticationSourceType; import net.jami.jams.common.authentication.local.LocalAuthSettings; import net.jami.jams.common.authmodule.AuthenticationModule; @@ -42,12 +41,10 @@ import net.jami.jams.server.core.TomcatLauncher; import net.jami.jams.server.licensing.LicenseService; import net.jami.jams.server.startup.AuthModuleLoader; import net.jami.jams.server.startup.CryptoEngineLoader; -import net.jami.jams.server.startup.PackageScanner; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; -import java.util.HashSet; import java.util.concurrent.atomic.AtomicBoolean; @Slf4j diff --git a/jams-server/src/main/java/net/jami/jams/server/servlets/api/auth/directory/SearchDirectoryServlet.java b/jams-server/src/main/java/net/jami/jams/server/servlets/api/auth/directory/SearchDirectoryServlet.java index 01da9c32b669ba437837a280586dcffa648f063e..e7a5e8583df67e5b03410b2302eb0db3fbe90e86 100644 --- a/jams-server/src/main/java/net/jami/jams/server/servlets/api/auth/directory/SearchDirectoryServlet.java +++ b/jams-server/src/main/java/net/jami/jams/server/servlets/api/auth/directory/SearchDirectoryServlet.java @@ -31,8 +31,6 @@ import jakarta.servlet.http.HttpServletResponse; import net.jami.jams.common.objects.user.UserProfile; import java.io.IOException; -import java.net.URLDecoder; -import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.Arrays; import java.util.List;