Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Eclipse Titan » SSH login(SSH login)
SSH login [message #1807056] Tue, 21 May 2019 20:33 Go to next message
David Laurent is currently offline David LaurentFriend
Messages: 68
Registered: September 2018
Member
Hi Elemer,

After cloning, the following SSH Client: https://github.com/eclipse/titan.TestPorts.SSHCLIENTasp
We came across this compiling error (Cannot determine the type of the incoming message) on these specific lines in SSHCLIENTasp_echo.ttcn and SSHCLIENTasp_functions.ttcn:
 [] SSH_PCO.receive(?) -> value respFragment
 [] SSH_PCO.receive(?) -> value msg


Would it come from (?) due to missing API ?

Regards - David

[Updated on: Tue, 21 May 2019 20:33]

Report message to a moderator

Re: SSH login [message #1807061 is a reply to message #1807056] Wed, 22 May 2019 05:29 Go to previous messageGo to next message
roland gecse is currently offline roland gecseFriend
Messages: 20
Registered: December 2015
Junior Member
Add the type of the variable to qualify the matching in the receive operation, e.g.:

[] SSH_PCO.receive(TYPE:?) -> value msg

where TYPE could be any type listed as in/inout in the port type definition of SSH_PCO.
Re: SSH login [message #1807062 is a reply to message #1807061] Wed, 22 May 2019 06:18 Go to previous message
Elemer Lelik is currently offline Elemer LelikFriend
Messages: 1120
Registered: January 2015
Senior Member
Hi David,

Roland is right ,


in 6.5.1 we have introduced a more restrictive (and backwards incompatible) behaviour to align with the standard:

Changes implemented:
 - '*' (any value or none) is no longer allowed as the matching template of 'receive', 'catch' and 'done' operations and  as the return values' matching template in 'getreply' operations;
 - the type of the value redirect is no longer used to determine the incoming message type (in 'receive', 'catch' and 'done' operations); the compiler must be able to determine the type from the matching template alone (if multiple message types), or an error is displayed.)
Example:
someport.receive(*)  -> value var0 {}  will be replaced with someport.receive(vartype:?)  -> value var0 {}  
(where vartype is the type of variable var0)
someport.receive(?)  -> value var0 {} will be  replaced with someport.receive(vartype:?)  -> value var0 {}
(in case several message types can be received)
Note: someport.receive(?)  -> value var0 {}  remains valid if only one message type can be received (the compiler will infer the vartype)
someport.receive(*) {} will be  replaced with someport.receive {}
someport.receive(?) {} will be  replaced with someport.receive {}



but we did not correct all the sample codes affected.


The change suggested by Roland should fix it.


Best regards
Elemer
Previous Topic:Reg. GCC versions
Next Topic:OsmoDevCon 2019 TTCN-3 /Titan videos
Goto Forum:
  


Current Time: Fri Apr 19 08:32:59 GMT 2024

Powered by FUDForum. Page generated in 0.02318 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top