[Bug 1914117] Re: Short files returned via FTP on Qemu with various architectures and OSes

Chris Pinnock posted 1 patch 3 years, 2 months ago
Failed in applying to current master (apply log)
There is a newer version of this series
[Bug 1914117] Re: Short files returned via FTP on Qemu with various architectures and OSes
Posted by Chris Pinnock 3 years, 2 months ago
This is NOT a fix but we can get working FTPs again with this patch -
narrowing into where the problem is. Looks like the behaviour of this
code is different on macOS to other OSes.

--- slirp.c.orig	2021-02-08 21:05:20.000000000 +0000
+++ slirp.c	2021-02-10 11:00:00.000000000 +0000
@@ -621,18 +621,7 @@
              * This will soread as well, so no need to
              * test for SLIRP_POLL_IN below if this succeeds
              */
-            if (revents & SLIRP_POLL_PRI) {
-               ret = sorecvoob(so);
-               if (ret < 0) {
-                   /* Socket error might have resulted in the socket being
-                     * removed, do not try to do anything more with it. */
-                    continue;
-                }
-            }
-            /*
-             * Check sockets for reading
-             */
-            else if (revents & 
+            if (revents & 
                      (SLIRP_POLL_IN | SLIRP_POLL_HUP | SLIRP_POLL_ERR)) {
                 /*
                  * Check for incoming connections

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1914117

Title:
  Short files returned via FTP on Qemu with various architectures and
  OSes

Status in QEMU:
  New

Bug description:
  
  Qemu 5.2 on Mac OS X Big Sur.

  I originally thought that it might be caused by the home-brew version of Qemu, but this evening I have removed the brew edition and compiled from scratch (using Ninja & Xcode compiler). 
  Still getting the same problem,.

  On the following architectures: 
  arm64, amd64 and sometimes i386 running NetBSD host OS; 
  i386 running OpenBSD host OS:

  I have seen a consistent problem with FTP returning short files. The
  file will be a couple of bytes too short. I do not believe this is a
  problem with the OS. Downloading the perl source code from CPAN does
  not work properly, nor does downloading bind from isc. I've tried this
  on different architectures as above.

  (Qemu 4.2 on Ubuntu/x86_64 with NetBSD/i386 seems to function fine. My
  gut feel is there is something not right on the Mac OS version of Qemu
  or a bug in 5.2 - obviously in the network layer somewhere. If you
  have anything you want me to try, please let me know - happy to help
  get a resolution.)

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1914117/+subscriptions