[Bug 280036] Data corruption over if_ovpn (OpenVPN DCO) observed

From: <bugzilla-noreply_at_freebsd.org>
Date: Sun, 21 Jul 2024 10:46:40 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=280036

--- Comment #3 from ss3bsd <3226388001@jcom.home.ne.jp> ---
Has anyone else reproduced this?

Since I have already decided not to use if_ovpn, this additional comment below
will be the last one unless someone can reproduce the issue.

--

The issue has been confirmed using Hyper-V (10.0.22621 [SP3]) too.
Also, another issue (server-side file corrption during FTP GET over if_oven) is
observed there.

[procedure #2] 
  Test condition is almost same as the already reported one.
  Smaller test file is enough this time, but GET multiple times instead.

  ** prepare test data
   # dd if=/dev/random bs=1M count=4 of=randomfile


  ** transfer data over if_ovpn (put and get back)

  ftp> put randomfile
  local: randomfile remote: randomfile
  229 Entering Extended Passive Mode (|||56921|)
  150 Opening BINARY mode data connection for 'randomfile'.
  100%
|********************************************************************************************************|
 4096 KiB  107.39 MiB/s    00:00 ETA
  226 Transfer complete.
  4194304 bytes sent in 00:00 (104.75 MiB/s)


  ftp> get randomfile randomfile.returned1
  local: randomfile.returned1 remote: randomfile
  229 Entering Extended Passive Mode (|||52890|)
  150 Opening BINARY mode data connection for 'randomfile' (4194304 bytes).
  100%
|********************************************************************************************************|
 4096 KiB  106.43 MiB/s    00:00 ETA
  226 Transfer complete.
  4194304 bytes received in 00:00 (106.16 MiB/s)

  ftp> get randomfile randomfile.returned2
  local: randomfile.returned2 remote: randomfile
  229 Entering Extended Passive Mode (|||51626|)
  150 Opening BINARY mode data connection for 'randomfile' (4194304 bytes).
  100%
|********************************************************************************************************|
 4096 KiB  112.00 MiB/s    00:00 ETA
  226 Transfer complete.
  4194304 bytes received in 00:00 (111.72 MiB/s)

  ftp> get randomfile randomfile.returned3
  local: randomfile.returned3 remote: randomfile
  229 Entering Extended Passive Mode (|||50186|)
  150 Opening BINARY mode data connection for 'randomfile' (4194304 bytes).
  100%
|********************************************************************************************************|
 4096 KiB  116.54 MiB/s    00:00 ETA
  226 Transfer complete.
  4194304 bytes received in 00:00 (116.23 MiB/s)

  ftp> get randomfile randomfile.returned4
  local: randomfile.returned4 remote: randomfile
  229 Entering Extended Passive Mode (|||56341|)
  150 Opening BINARY mode data connection for 'randomfile' (4194304 bytes).
  100%
|********************************************************************************************************|
 4096 KiB   96.91 MiB/s    00:00 ETA
  226 Transfer complete.
  4194304 bytes received in 00:00 (96.68 MiB/s)

  ftp> bye
  221 Goodbye.

  # md5sum randomfile*
  76b3ea410e4d56b9b684116a2a8319cb  randomfile
  76b3ea410e4d56b9b684116a2a8319cb  randomfile.returned1  -- file is small, so
corruption at the network did not occur this time
  13f1d329379862cd1e157eeb55c6a436  randomfile.returned2  -- the server-side
file has been destroyed by the previous GET (*)
  4d3846965ad68016d545ae4222a33ed5  randomfile.returned3  -- same as above
  ebfc8ff8ee13841599562a8a211c5b31  randomfile.returned4  -- same as above

   (*) example of the file corruption by GET command.
     -- At the ftp server side --
     * before "get randomfile randomfile.returned4"
       # md5sum randomfile
       ebfc8ff8ee13841599562a8a211c5b31  randomfile  -- matches to
randomfile.returned4 at the client side later

     * after "get randomfile randomfile.returned4"
       # md5sum randomfile
       5a49c61306c82a4c57768876b95c4ae4  randomfile  -- destroyed

-- 
You are receiving this mail because:
You are the assignee for the bug.