Bug 3300 - ssh reports the error when use ssh -o "ConnectTimeout=2147483649"
Summary: ssh reports the error when use ssh -o "ConnectTimeout=2147483649"
Status: CLOSED WORKSFORME
Alias: None
Product: Portable OpenSSH
Classification: Unclassified
Component: ssh (show other bugs)
Version: 8.2p1
Hardware: ARM64 Linux
: P5 major
Assignee: Assigned to nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-04-16 13:50 AEST by kircher
Modified: 2022-02-25 13:58 AEDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description kircher 2021-04-16 13:50:42 AEST
After rectification: The ssh -o "ConnectTimeout=2147483649" root@3.82.3.249 reports the error " ssh: connect to host 3.82.3.249 port 22: Connection timed out".

If ConnectTimeout is greater than or equal to 2147484 in the command, set the maximum value INT_MAX to the variable connection_timeout in the code according to the patch.
However, when the value of ConnectTimeout > 2147484 is 2147483649, the value of connection_timeout overflow in the code is 1000 ms instead of INT_MAX.

Method of reproducing the problem:
1. Integrate https://github.com/openssh/openssh-portable/commit/819b44e8b9af6ce18d3ec7505b9f461bf7991a1f.

2. ssh -o "ConnectTimeout=2147483647" root@3.82.3.249 //connection_timeout=INT_MAX
ssh -o "ConnectTimeout=2147483648" root@3.82.3.249 //: connection_timeout = INT_MAX. The actual test variable connection_timeout is 0, and the command ConnectTimeout is 0.
ssh -o "ConnectTimeout=2147483649" root@3.82.3.249 //: connection_timeout = INT_MAX, the actual test variable connection_timeout = 1000, and the command ConnectTimeout = 1.


#define INT_MAX 2147483647
#define INT_MIN (-INT_MAX - 1)
Comment 1 Darren Tucker 2021-04-30 14:27:51 AEST
You are reporting a bug against a locally modified 8.2p1?  If so, you probably also want
https://github.com/openbsd/src/commit/ca5450d695d8f9e6bd3120068d652f29e732ef3e which changed convtime() to return an int.  With this, current versions will flag your test cases as an error:

$ ssh -o ConnectTimeout=2147483648 localhost
command-line line 0: invalid time value.
$ ssh -o ConnectTimeout=2147483649 localhost
command-line line 0: invalid time value.

Please reopen if you can reproduce the error with an unmodified OpenSSH release.
Comment 2 Damien Miller 2022-02-25 13:58:34 AEDT
closing bugs resolved before openssh-8.9