Skip to content

Commit 934409f

Browse files
committed
0.17.0: - Fehlerbehebungen
- 6 Pipeline-Operationen, die der Nutzer über die OpenKIM-Oberfläche testen kann - Verschlüsseln eines beliebigen Textes mit einem Konnektor der Wahl, der aber in OpenKIM konfiguriert sein muss - Entschlüsseln eines Textes - Senden einer Mail über das OpenKIM-SMTP-Gateway - Empfangen einer Mail über das OpenKIM-POP3-Gateway - Signieren und Verschlüsseln einer Mail (ohne Versand) und Ausgabe der Mail - Entschlüsseln und Signaturüberprüfung einer verschlüsselten Mail, die der Nutzer komplett angeben muss
1 parent 7fa84b7 commit 934409f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+1512
-209
lines changed

CHANGELOG.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,29 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1919
```
2020
```
2121

22+
## [0.17.0]
23+
24+
### Added
25+
```
26+
- Fehlerbehebungen
27+
- 6 Pipeline-Operationen, die der Nutzer über die OpenKIM-Oberfläche testen kann
28+
- Verschlüsseln eines beliebigen Textes mit einem Konnektor der Wahl,
29+
der aber in OpenKIM konfiguriert sein muss
30+
- Entschlüsseln eines Textes
31+
- Senden einer Mail über das OpenKIM-SMTP-Gateway
32+
- Empfangen einer Mail über das OpenKIM-POP3-Gateway
33+
- Signieren und Verschlüsseln einer Mail (ohne Versand) und Ausgabe der Mail
34+
- Entschlüsseln und Signaturüberprüfung einer verschlüsselten Mail, die der Nutzer komplett angeben muss
35+
```
36+
37+
### Changed
38+
```
39+
```
40+
41+
### Fixed
42+
```
43+
```
44+
2245
## [0.16.0]
2346

2447
### Added

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
</parent>
1111
<groupId>net.sberg</groupId>
1212
<artifactId>openkim</artifactId>
13-
<version>0.16.0</version>
13+
<version>0.17.0</version>
1414
<name>openkim</name>
1515
<description>Open KIM Client Modul</description>
1616

src/main/java/net/sberg/openkim/gateway/GatewayKeystoreService.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ public void createSelfSigned() throws Exception {
7777
.replaceAll(System.lineSeparator(), "")
7878
.replace(END_KEY, "");
7979

80-
byte[] encoded = Base64.getDecoder().decode(privateKeyPEM);
80+
byte[] encoded = Base64.getDecoder().decode(privateKeyPEM.getBytes("UTF-8"));
8181

8282
PKCS8EncodedKeySpec spec = new PKCS8EncodedKeySpec(encoded);
8383
KeyFactory kf = KeyFactory.getInstance("RSA");
@@ -116,7 +116,7 @@ public void create(GatewayKeystoreData eldixSmtpKeystoreData) throws Exception {
116116
String privateKey = eldixSmtpKeystoreData.getPrivateKey().replace(BEGIN_RSA_KEY, "");
117117
privateKey = privateKey.replace(END_RSA_KEY, "");
118118
privateKey = privateKey.replaceAll("\\s+", "");
119-
byte[] pkcs8EncodedBytes = Base64.getDecoder().decode(privateKey);
119+
byte[] pkcs8EncodedBytes = Base64.getDecoder().decode(privateKey.getBytes("UTF-8"));
120120

121121
PKCS8EncodedKeySpec keySpec = new PKCS8EncodedKeySpec(pkcs8EncodedBytes);
122122
KeyFactory kf = KeyFactory.getInstance("RSA");

src/main/java/net/sberg/openkim/gateway/pop3/Pop3Gateway.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
import jakarta.annotation.PostConstruct;
2020
import jakarta.annotation.PreDestroy;
2121
import net.sberg.openkim.gateway.GatewayNettyServer;
22-
import net.sberg.openkim.gateway.pop3.signreport.SignReportService;
2322
import net.sberg.openkim.konfiguration.Konfiguration;
2423
import net.sberg.openkim.konfiguration.KonfigurationService;
2524
import net.sberg.openkim.log.LogService;
@@ -48,8 +47,6 @@ public class Pop3Gateway {
4847
@Autowired
4948
private PipelineService pipelineService;
5049
@Autowired
51-
private SignReportService signReportService;
52-
@Autowired
5350
private KonfigurationService konfigurationService;
5451

5552
private boolean startSucces = false;
@@ -115,7 +112,7 @@ private Encryption buildSSLContext(Konfiguration konfiguration) throws Exception
115112
}
116113

117114
protected Protocol createProtocol(Konfiguration konfiguration) throws WiringException {
118-
Pop3GatewayProtocolHandlerChain chain = new Pop3GatewayProtocolHandlerChain(pipelineService, signReportService);
115+
Pop3GatewayProtocolHandlerChain chain = new Pop3GatewayProtocolHandlerChain(pipelineService);
119116
chain.wireExtensibleHandlers();
120117
return new Pop3GatewayProtocol(chain, new Pop3GatewayConfiguration(konfiguration, logService));
121118
}

src/main/java/net/sberg/openkim/gateway/pop3/Pop3GatewayProtocolHandlerChain.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
package net.sberg.openkim.gateway.pop3;
1818

1919
import net.sberg.openkim.gateway.pop3.cmdhandler.*;
20-
import net.sberg.openkim.gateway.pop3.signreport.SignReportService;
2120
import net.sberg.openkim.pipeline.PipelineService;
2221
import org.apache.james.protocols.api.handler.*;
2322
import org.apache.james.protocols.pop3.POP3Session;
@@ -27,12 +26,12 @@
2726

2827
public class Pop3GatewayProtocolHandlerChain extends ProtocolHandlerChainImpl {
2928

30-
public Pop3GatewayProtocolHandlerChain(PipelineService pipelineService, SignReportService signReportService) throws WiringException {
31-
addAll(initDefaultHandlers(pipelineService, signReportService));
29+
public Pop3GatewayProtocolHandlerChain(PipelineService pipelineService) throws WiringException {
30+
addAll(initDefaultHandlers(pipelineService));
3231
wireExtensibleHandlers();
3332
}
3433

35-
protected List<ProtocolHandler> initDefaultHandlers(PipelineService pipelineService, SignReportService signReportService) {
34+
protected List<ProtocolHandler> initDefaultHandlers(PipelineService pipelineService) {
3635
List<ProtocolHandler> handlers = new ArrayList<>();
3736

3837
handlers.add(new Pop3GatewayPassCmdHandler(pipelineService));
@@ -44,7 +43,7 @@ protected List<ProtocolHandler> initDefaultHandlers(PipelineService pipelineServ
4443
handlers.add(new Pop3GatewayRsetCmdHandler());
4544
handlers.add(new Pop3GatewayDeleCmdHandler());
4645
handlers.add(new Pop3GatewayNoopCmdHandler());
47-
handlers.add(new Pop3GatewayRetrCmdHandler(pipelineService, signReportService));
46+
handlers.add(new Pop3GatewayRetrCmdHandler(pipelineService));
4847
handlers.add(new Pop3GatewayTopCmdHandler());
4948
handlers.add(new Pop3GatewayStatCmdHandler());
5049
handlers.add(new Pop3GatewayQuitCmdHandler());

src/main/java/net/sberg/openkim/gateway/pop3/cmdhandler/Pop3GatewayAuthCmdHandler.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import com.google.common.collect.ImmutableSet;
2020
import net.sberg.openkim.common.EnumMailAuthMethod;
2121
import net.sberg.openkim.common.EnumMailConnectionSecurity;
22+
import net.sberg.openkim.common.ICommonConstants;
2223
import net.sberg.openkim.common.metrics.DefaultMetricFactory;
2324
import net.sberg.openkim.gateway.pop3.EnumPop3GatewayState;
2425
import net.sberg.openkim.gateway.pop3.Pop3GatewaySession;
@@ -48,6 +49,7 @@
4849
import javax.mail.Folder;
4950
import javax.mail.Session;
5051
import javax.mail.Store;
52+
import java.io.File;
5153
import java.io.UnsupportedEncodingException;
5254
import java.nio.ByteBuffer;
5355
import java.nio.charset.StandardCharsets;
@@ -415,7 +417,7 @@ protected Response doAuthTest(POP3Session session, Username username, String pas
415417
mailServerHost,
416418
((Pop3GatewaySession) session).getLogger().getDefaultLoggerContext().getMailServerPort(),
417419
konfiguration.getPop3ClientIdleTimeoutInSeconds(),
418-
konfiguration.getGatewayTIMode().equals(EnumGatewayTIMode.FULLSTACK)?konfiguration.getFachdienstCertFilename():null,
420+
konfiguration.getGatewayTIMode().equals(EnumGatewayTIMode.FULLSTACK)?ICommonConstants.BASE_DIR + File.separator + konfiguration.getFachdienstCertFilename():null,
419421
konfiguration.getGatewayTIMode().equals(EnumGatewayTIMode.FULLSTACK)?konfiguration.getFachdienstCertAuthPwd():null,
420422
konfiguration.getGatewayTIMode().equals(EnumGatewayTIMode.FULLSTACK)
421423
);

src/main/java/net/sberg/openkim/gateway/pop3/cmdhandler/Pop3GatewayPassCmdHandler.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import com.google.common.collect.ImmutableSet;
2020
import net.sberg.openkim.common.EnumMailAuthMethod;
2121
import net.sberg.openkim.common.EnumMailConnectionSecurity;
22+
import net.sberg.openkim.common.ICommonConstants;
2223
import net.sberg.openkim.common.metrics.DefaultMetricFactory;
2324
import net.sberg.openkim.gateway.pop3.EnumPop3GatewayState;
2425
import net.sberg.openkim.gateway.pop3.Pop3GatewaySession;
@@ -44,6 +45,7 @@
4445
import javax.mail.Folder;
4546
import javax.mail.Session;
4647
import javax.mail.Store;
48+
import java.io.File;
4749
import java.util.Collection;
4850
import java.util.Properties;
4951
import java.util.concurrent.atomic.AtomicInteger;
@@ -141,7 +143,7 @@ protected final Response doAuth(POP3Session session, Username user, String pass)
141143
mailServerHost,
142144
((Pop3GatewaySession) session).getLogger().getDefaultLoggerContext().getMailServerPort(),
143145
konfiguration.getPop3ClientIdleTimeoutInSeconds(),
144-
konfiguration.getGatewayTIMode().equals(EnumGatewayTIMode.FULLSTACK)?konfiguration.getFachdienstCertFilename():null,
146+
konfiguration.getGatewayTIMode().equals(EnumGatewayTIMode.FULLSTACK)?ICommonConstants.BASE_DIR + File.separator + konfiguration.getFachdienstCertFilename():null,
145147
konfiguration.getGatewayTIMode().equals(EnumGatewayTIMode.FULLSTACK)?konfiguration.getFachdienstCertAuthPwd():null,
146148
konfiguration.getGatewayTIMode().equals(EnumGatewayTIMode.FULLSTACK)
147149
);

src/main/java/net/sberg/openkim/gateway/pop3/cmdhandler/Pop3GatewayRetrCmdHandler.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
import net.sberg.openkim.common.metrics.DefaultMetricFactory;
2121
import net.sberg.openkim.gateway.pop3.EnumPop3GatewayState;
2222
import net.sberg.openkim.gateway.pop3.Pop3GatewaySession;
23-
import net.sberg.openkim.gateway.pop3.signreport.SignReportService;
2423
import net.sberg.openkim.konfiguration.EnumGatewayTIMode;
2524
import net.sberg.openkim.konnektor.Konnektor;
2625
import net.sberg.openkim.log.DefaultLogger;
@@ -54,11 +53,9 @@ public class Pop3GatewayRetrCmdHandler extends AbstractPOP3CommandHandler {
5453
private static final Logger log = LoggerFactory.getLogger(Pop3GatewayRetrCmdHandler.class);
5554

5655
private PipelineService pipelineService;
57-
private SignReportService signReportService;
5856

59-
public Pop3GatewayRetrCmdHandler(PipelineService pipelineService, SignReportService signReportService) {
57+
public Pop3GatewayRetrCmdHandler(PipelineService pipelineService) {
6058
this.pipelineService = pipelineService;
61-
this.signReportService = signReportService;
6259
}
6360

6461
@Override
@@ -79,7 +76,6 @@ private byte[] decryptVerify(
7976
DefaultPipelineOperationContext defaultPipelineOperationContext = new DefaultPipelineOperationContext(logger);
8077
defaultPipelineOperationContext.setEnvironmentValue(DecryptVerifyMailOperation.NAME, DecryptVerifyMailOperation.ENV_ENCRYPTED_MSG, encryptedMsg);
8178
defaultPipelineOperationContext.setEnvironmentValue(DecryptVerifyMailOperation.NAME, DecryptVerifyMailOperation.ENV_USER_MAIL_ADDRESS, userMailAddress);
82-
defaultPipelineOperationContext.setEnvironmentValue(DecryptVerifyMailOperation.NAME, DecryptVerifyMailOperation.ENV_SIGN_REPORT_SERVICE, signReportService);
8379

8480
AtomicInteger failedCounter = new AtomicInteger();
8581
decryptVerifyMailOperation.execute(

src/main/java/net/sberg/openkim/gateway/pop3/cmdhandler/Pop3GatewayTopCmdHandler.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import com.google.common.base.Splitter;
2020
import com.google.common.collect.ImmutableList;
2121
import com.google.common.collect.ImmutableSet;
22+
import com.sun.mail.pop3.POP3Message;
2223
import net.sberg.openkim.common.metrics.DefaultMetricFactory;
2324
import net.sberg.openkim.gateway.pop3.Pop3GatewaySession;
2425
import org.apache.james.protocols.api.Request;
@@ -30,7 +31,6 @@
3031
import org.slf4j.Logger;
3132
import org.slf4j.LoggerFactory;
3233

33-
import javax.mail.Message;
3434
import java.io.InputStream;
3535
import java.util.Collection;
3636
import java.util.List;
@@ -97,8 +97,8 @@ private Response doTop(POP3Session session, Request request) {
9797
return SYNTAX_ERROR;
9898
}
9999
Args args = optionalArgs.get();
100-
Message message = ((Pop3GatewaySession) session).getPop3ClientFolder().getMessage(args.messageNumber);
101-
InputStream stream = message.getInputStream();
100+
POP3Message message = (POP3Message)((Pop3GatewaySession) session).getPop3ClientFolder().getMessage(args.messageNumber);
101+
InputStream stream = message.top(optionalArgs.get().lineCount.get());
102102
String msg = new String(stream.readAllBytes());
103103
POP3Response response = new POP3Response(POP3Response.OK_RESPONSE, "");
104104
response.appendLine(msg + ".");

src/main/java/net/sberg/openkim/gateway/smtp/cmdhandler/SmtpGatewayRcptCmdHandler.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@ protected Response doCoreCmd(SMTPSession session, String command, String paramet
9999
else {
100100
DefaultLoggerContext loggerContext = ((SmtpGatewaySession) session).getLogger().getDefaultLoggerContext();
101101
if (!loggerContext.getRecipientAddresses().contains(recipientAddress.asString().toLowerCase())) {
102+
((SmtpGatewaySession) session).log("rcpt to: "+recipientAddress.asString().toLowerCase());
102103
loggerContext.getRecipientAddresses().add(recipientAddress.asString().toLowerCase());
103104
}
104105
}

src/main/java/net/sberg/openkim/gateway/smtp/hook/SmtpGatewayMailHook.java

Lines changed: 32 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -194,6 +194,7 @@ public HookResult onMessage(SMTPSession session, MailEnvelope mailEnvelope) {
194194
tempMailFile.delete();
195195

196196
String msgContent = null;
197+
List<IErrorContext> errorContexts = new ArrayList();
197198
if (!logger.getDefaultLoggerContext().getKonfiguration().getGatewayTIMode().equals(EnumGatewayTIMode.NO_TI)) {
198199

199200
//check sender
@@ -213,10 +214,6 @@ public HookResult onMessage(SMTPSession session, MailEnvelope mailEnvelope) {
213214
}
214215

215216
//check recipients
216-
boolean senderInRecipients = logger.getDefaultLoggerContext().getRecipientAddresses().contains(logger.getDefaultLoggerContext().getSenderAddress());
217-
if (senderInRecipients) {
218-
logger.getDefaultLoggerContext().getRecipientAddresses().remove(logger.getDefaultLoggerContext().getSenderAddress());
219-
}
220217
if (!checkMailAddresses(smtpGatewaySession, logger.getDefaultLoggerContext().getRecipientCerts(), logger.getDefaultLoggerContext().getRecipientAddresses(), false, true)) {
221218
smtpGatewaySession.getSmtpClient().rset();
222219
smtpGatewaySession.log("mail hook ends - error");
@@ -232,11 +229,7 @@ public HookResult onMessage(SMTPSession session, MailEnvelope mailEnvelope) {
232229
smtpGatewaySession.getSmtpClient().rset();
233230
return sendDsn(logger, List.of(logger.getDefaultLoggerContext().getMailaddressKimVersionErrorContext()), message, false);
234231
}
235-
if (senderInRecipients) {
236-
logger.getDefaultLoggerContext().getRecipientCerts().put(logger.getDefaultLoggerContext().getSenderAddress(), logger.getDefaultLoggerContext().getSenderCerts().get(logger.getDefaultLoggerContext().getSenderAddress()));
237-
}
238232

239-
List<IErrorContext> errorContexts = new ArrayList();
240233
if (!logger.getDefaultLoggerContext().getMailaddressCertErrorContext().isEmpty()) {
241234
errorContexts.add(logger.getDefaultLoggerContext().getMailaddressCertErrorContext());
242235
}
@@ -348,6 +341,37 @@ public HookResult onMessage(SMTPSession session, MailEnvelope mailEnvelope) {
348341
msgContent = new String(msgBytes);
349342
}
350343
else {
344+
//send rcpt to
345+
boolean successfulRcptTo = false;
346+
for (Iterator<String> iterator = logger.getDefaultLoggerContext().getRecipientAddresses().iterator(); iterator.hasNext(); ) {
347+
String rcptAddress = iterator.next();
348+
int res = ((SmtpGatewaySession) session).getSmtpClient().rcpt("<" + rcptAddress + ">");
349+
if (!SMTPReply.isPositiveCompletion(res)) {
350+
logger.getDefaultLoggerContext().getMailaddressRcptToErrorContext().add(rcptAddress, EnumErrorCode.CODE_X024);
351+
}
352+
else {
353+
successfulRcptTo = true;
354+
}
355+
}
356+
357+
if (!successfulRcptTo) {
358+
errorContexts.add(logger.getDefaultLoggerContext().getMailaddressRcptToErrorContext());
359+
smtpGatewaySession.getSmtpClient().rset();
360+
return sendDsn(logger, errorContexts, message, false);
361+
}
362+
363+
if (!logger.getDefaultLoggerContext().getMailaddressRcptToErrorContext().isEmpty()) {
364+
errorContexts.add(logger.getDefaultLoggerContext().getMailaddressRcptToErrorContext());
365+
}
366+
367+
//send dsn for errors
368+
if (!errorContexts.isEmpty()) {
369+
HookResult hookResult = sendDsn(logger, errorContexts, message, false);
370+
if (hookResult.equals(HookResult.DENY)) {
371+
return hookResult;
372+
}
373+
}
374+
351375
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
352376
message.writeTo(byteArrayOutputStream);
353377
byteArrayOutputStream.close();

src/main/java/net/sberg/openkim/konfiguration/Konfiguration.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,11 @@ public class Konfiguration {
6767
@JsonIgnore
6868
private MultipartFile fachdienstCertFile;
6969

70-
private String xkimCmVersion = "OpenKIM_0.15.1";
70+
@JsonIgnore
71+
private String xkimCmVersion = "OpenKIM_0.17.0";
72+
@JsonIgnore
7173
private String xkimPtVersion = "1.5.0-2";
74+
@JsonIgnore
7275
private EnumKomLeVersion xkimPtShortVersion = EnumKomLeVersion.V1_5plus;
7376

7477
private List<Konnektor> konnektoren = new ArrayList<>();

src/main/java/net/sberg/openkim/konfiguration/KonfigurationService.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -197,9 +197,6 @@ private void read() throws Exception {
197197
catch (Exception e) {}
198198

199199
Konfiguration konfiguration = new ObjectMapper().readValue(str, Konfiguration.class);
200-
if (encryptPasswords) {
201-
konfiguration.decryptPwds(encryptionKeys);
202-
}
203200
List<Konnektor> konnektorList = new ArrayList<>();
204201
if (this.konfiguration != null) {
205202
konnektorList.addAll(this.konfiguration.getKonnektoren());
@@ -208,6 +205,9 @@ private void read() throws Exception {
208205
if (konnektorList.size() > 0) {
209206
this.konfiguration.setKonnektoren(konnektorList);
210207
}
208+
if (encryptPasswords) {
209+
konfiguration.decryptPwds(encryptionKeys);
210+
}
211211
}
212212

213213
public String speichern(Konfiguration konfiguration) throws Exception {

src/main/java/net/sberg/openkim/log/DefaultLogger.java

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,10 @@ public class DefaultLogger {
4040
private int depth;
4141

4242
public void logLine(String line) {
43+
logLine(line, false);
44+
}
45+
46+
public void logLine(String line, boolean htmlPreMode) {
4347
if (defaultLoggerContext.isHtmlMode()) {
4448
logContent.append((depth > 0) ? "<br/><span style=\"white-space:nowrap;\" class=\"ml-" + depth + "\">" : "<br/><span style=\"white-space:nowrap;\">");
4549
} else {
@@ -48,7 +52,12 @@ public void logLine(String line) {
4852
logContent.append(" ");
4953
}
5054
}
51-
logContent.append(line);
55+
if (defaultLoggerContext.isHtmlMode() && htmlPreMode) {
56+
logContent.append("<pre>"+line+"</pre>");
57+
}
58+
else {
59+
logContent.append(line);
60+
}
5261
if (defaultLoggerContext.isHtmlMode()) {
5362
logContent.append("</span>");
5463
}

src/main/java/net/sberg/openkim/pipeline/operation/IPipelineOperation.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ public default BiConsumer<DefaultPipelineOperationContext, Exception> getDefault
4343
StringWriter sw = new StringWriter();
4444
PrintWriter pw = new PrintWriter(sw);
4545
e.printStackTrace(pw);
46-
context.getLogger().logLine(sw.toString());
46+
context.getLogger().logLine(sw.toString(), true);
4747
};
4848
}
4949
public default boolean hasError(DefaultPipelineOperationContext defaultPipelineOperationContext, String... prefixes) {

src/main/java/net/sberg/openkim/pipeline/operation/konnektor/GetSignCardHandleOperation.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ public void execute(DefaultPipelineOperationContext defaultPipelineOperationCont
113113
}
114114

115115
defaultPipelineOperationContext.setEnvironmentValue(GetSignCardHandleOperation.NAME, GetSignCardHandleOperation.ENV_RESULT_CARD_HANDLE_FOUND, selectedCard != null);
116-
defaultPipelineOperationContext.setEnvironmentValue(GetSignCardHandleOperation.NAME, GetSignCardHandleOperation.ENV_RESULT_CARD_HANDLE, selectedCard);
116+
defaultPipelineOperationContext.setEnvironmentValue(GetSignCardHandleOperation.NAME, GetSignCardHandleOperation.ENV_RESULT_CARD_HANDLE, selectedCard.getCardHandle());
117117

118118
if (selectedCard == null) {
119119
logger.getDefaultLoggerContext().getMailSignEncryptErrorContext().getErrorCodes().add(EnumErrorCode.CODE_X010);

0 commit comments

Comments
 (0)