summary refs log tree commit diff stats
path: root/gitlab/issues/target_missing/host_missing/accel_missing/1837.toml
diff options
context:
space:
mode:
Diffstat (limited to 'gitlab/issues/target_missing/host_missing/accel_missing/1837.toml')
-rw-r--r--gitlab/issues/target_missing/host_missing/accel_missing/1837.toml47
1 files changed, 47 insertions, 0 deletions
diff --git a/gitlab/issues/target_missing/host_missing/accel_missing/1837.toml b/gitlab/issues/target_missing/host_missing/accel_missing/1837.toml
new file mode 100644
index 00000000..63eb7fbb
--- /dev/null
+++ b/gitlab/issues/target_missing/host_missing/accel_missing/1837.toml
@@ -0,0 +1,47 @@
+id = 1837
+title = "Support IP_MULTICAST_IF socket option in linux-user"
+state = "opened"
+created_at = "2023-08-18T13:15:51.932Z"
+closed_at = "n/a"
+labels = ["linux-user"]
+url = "https://gitlab.com/qemu-project/qemu/-/issues/1837"
+host-os = "n/a"
+host-arch = "n/a"
+qemu-version = "n/a"
+guest-os = "n/a"
+guest-arch = "n/a"
+description = "n/a"
+reproduce = "n/a"
+additional = """I've run into this limitation in qemu-aarch64-static version Debian 1:6.2+dfsg-2ubuntu6.12, but from the link above, it doesn't seem to be implemented on master yet.
+
+Here's some source code that demonstrates the failure:
+```
+#include <sys/socket.h>
+#include <arpa/inet.h>
+#include <netinet/ip.h>
+#include <unistd.h>
+#include <assert.h>
+#include <stdio.h>
+
+int main()
+{
+    int fd, ret;
+    struct in_addr addr = {htonl(INADDR_LOOPBACK)};
+
+    fd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
+    assert(fd >= 0);
+    ret = setsockopt(fd, IPPROTO_IP, IP_MULTICAST_IF, &addr, sizeof(addr));
+    if (ret < 0)
+    {
+        perror("setsockopt failed");
+        return 1;
+    }
+    close(fd);
+    printf("Success!\\n");
+    return 0;
+}
+```
+
+When run under qemu, it gives the error `setsockopt failed: Protocol not available`.
+
+It doesn't look like it should be too hard to support (certainly no worse than IP_ADD_MEMBERSHIP). Let me know if I can help with a patch."""