FTPS "Protocol version" error upon upload from Reolink NVR's ftp client
This Relolink NVR (security camera recorder) has an FTP client which always tries TLS and if successful, uses that. Unfortunately, it always thinks the file upload is unsuccessful and the server-side always logs the same cryptlib error: "Protocol version"
Here's a server-side log:
2024-10-21T21:41:36.747809-07:00 git sbbs: ftp 0115 [47.156.x.y] Connection accepted on 71.95.196.36 port 21 from port 53724
2024-10-21T21:41:36.760087-07:00 git sbbs: ftp 0115 New active client highwater mark: 2
2024-10-21T21:41:36.760142-07:00 git sbbs: ftp 0115 TX: 220-Vertrauen (cvs.synchro.net)
2024-10-21T21:41:36.760158-07:00 git sbbs: ftp 0115 TX: Synchronet FTP Server 3.20a-Linux Ready
2024-10-21T21:41:36.760169-07:00 git sbbs: ftp 0115 TX: Anonymous/Guest logins allowed.
2024-10-21T21:41:36.760179-07:00 git sbbs: ftp 0115 TX: Telnet to vert.synchro.net to create a full-access account.
2024-10-21T21:41:36.760189-07:00 git sbbs: ftp 0115 TX: Synchronet files are mirrored on ftp.synchro.net (faster).
2024-10-21T21:41:36.760202-07:00 git sbbs: ftp 0115 TX: 220 Please enter your user name.
2024-10-21T21:41:36.932735-07:00 git sbbs: ftp 0115 <47.156.x.y> RX: AUTH TLS
2024-10-21T21:41:36.932878-07:00 git sbbs: ftp 0115 TX: 234 Ready to start TLS
2024-10-21T21:41:37.043266-07:00 git sbbs: ftp 0115 <47.156.x.y> initialized TLS successfully
2024-10-21T21:41:37.100947-07:00 git sbbs: ftp 0115 <47.156.x.y> RXS: USER Reolink
2024-10-21T21:41:37.101099-07:00 git sbbs: ftp 0115 TXS: 331 User name okay, need password.
2024-10-21T21:41:37.221120-07:00 git sbbs: ftp 0115 <47.156.x.y> RXS: PASS xxxxx
2024-10-21T21:41:37.221155-07:00 git sbbs: ftp 0115 <reolink> logged-in (17 today, 17 total)
2024-10-21T21:41:37.221169-07:00 git sbbs: ftp 0115 TXS: 230 You are allowed 240 minutes of use for this session.
2024-10-21T21:41:37.342326-07:00 git sbbs: ftp 0115 <reolink> RXS: CWD Main
2024-10-21T21:41:37.342476-07:00 git sbbs: ftp 0115 TXS: 250 CWD command successful.
2024-10-21T21:41:37.463505-07:00 git sbbs: ftp 0115 <reolink> RXS: CWD xxxxx
2024-10-21T21:41:37.463621-07:00 git sbbs: ftp 0115 TXS: 250 CWD command successful.
2024-10-21T21:41:37.583639-07:00 git sbbs: ftp 0115 <reolink> RXS: MODE S
2024-10-21T21:41:37.583741-07:00 git sbbs: ftp 0115 TXS: 200 STREAM mode.
2024-10-21T21:41:37.700265-07:00 git sbbs: ftp 0115 <reolink> RXS: TYPE A
2024-10-21T21:41:37.700347-07:00 git sbbs: ftp 0115 TXS: 200 All files sent in BINARY mode.
2024-10-21T21:41:37.832506-07:00 git sbbs: ftp 0115 <reolink> RXS: PBSZ 0
2024-10-21T21:41:37.832541-07:00 git sbbs: ftp 0115 TXS: 200 OK
2024-10-21T21:41:37.952787-07:00 git sbbs: ftp 0115 <reolink> RXS: PROT P
2024-10-21T21:41:37.952826-07:00 git sbbs: ftp 0115 TXS: 200 Accepted
2024-10-21T21:41:38.073110-07:00 git sbbs: ftp 0115 <reolink> RXS: PASV
2024-10-21T21:41:38.073806-07:00 git sbbs: ftp 0115 TXS: 227 Entering Passive Mode (71,95,196,36,4,0)
2024-10-21T21:41:38.194103-07:00 git sbbs: ftp 0115 <reolink> RXS: STOR NVR_00_20241021214136.txt
2024-10-21T21:41:38.194175-07:00 git sbbs: ftp 0115 <reolink> uploading: NVR_00_20241021214136.txt to /Main/xxxx/ (/xfer/xx/) in passive mode
2024-10-21T21:41:38.194201-07:00 git sbbs: ftp 0115 TXS: 150 Opening BINARY mode data connection for file transfer.
2024-10-21T21:41:38.222120-07:00 git sbbs: ftp Created TLS private key and certificate 4711
2024-10-21T21:41:38.404119-07:00 git sbbs: ftp 0110 TLS dbg 'Received TLS alert message: Close notify' (-24) popping data
2024-10-21T21:41:38.404159-07:00 git sbbs: ftp 0115 <reolink> DATA Transfer successful: 69 bytes received in 0 seconds (138 cps)
2024-10-21T21:41:38.404170-07:00 git sbbs: ftp 0115 <reolink> DATA Extracting DIZ from: /xfer/xxx/NVR_00_20241021214136.txt
2024-10-21T21:41:38.404298-07:00 git sbbs: ftp 0115 <reolink> DATA DIZ does not exist in: /xfer/xxxx/NVR_00_20241021214136.txt
2024-10-21T21:41:38.412580-07:00 git sbbs: ftp 0115 <reolink> DATA uploaded file: NVR_00_20241021214136.txt
2024-10-21T21:41:38.415624-07:00 git sbbs: ftp 0115 TX: 226 Upload complete (138 cps).
2024-10-21T21:41:38.442861-07:00 git sbbs: ftp 0115 TLS info 'Received TLS alert message: Protocol version' (-20) popping data
2024-10-21T21:41:38.442957-07:00 git sbbs: ftp 0115 !ERROR: recv on socket returned unexpected value: -20 (line 525)
2024-10-21T21:41:38.443202-07:00 git sbbs: ftp 0115 <reolink> logged-out
2024-10-21T21:41:38.443302-07:00 git sbbs: ftp 0115 [47.156.x.y] Session thread terminated (1 clients and 2 threads remain, 10 served)