qtbase: durable patch for Redox in6_pktinfo (not yet wired)
Records the fix that unblocked qtbase on Redox: relibc lacks struct in6_pktinfo, which Qt sizes cmsg buffers with in both datagram paths. Define it at file scope (outside the QT_NO_SCTP guard that Redox compiles out). The current qtbase.pkgar was built from the equivalent in-tree source edit; this patch is the durable form. NOT yet added to recipe.toml patches[] — wiring it invalidates the qtbase cache and forces a full re-cook, so it is wired as the final step once the ISO assembles (during the desktop-stack fix phase qtbase stays cached).
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
--- a/src/network/socket/qnativesocketengine_unix.cpp
|
||||
+++ b/src/network/socket/qnativesocketengine_unix.cpp
|
||||
@@ -37,6 +37,18 @@
|
||||
# include <net/if_dl.h>
|
||||
#endif
|
||||
|
||||
+#ifdef __redox__
|
||||
+// Redox relibc does not define struct in6_pktinfo (IPV6_PKTINFO ancillary data),
|
||||
+// but Qt sizes its cmsg control buffers with sizeof(struct in6_pktinfo) in both
|
||||
+// the send and receive datagram paths. Define it at file scope (Linux layout) —
|
||||
+// crucially OUTSIDE the QT_NO_SCTP guard above, which Redox compiles out.
|
||||
+#include <netinet/in.h>
|
||||
+struct in6_pktinfo {
|
||||
+ struct in6_addr ipi6_addr;
|
||||
+ unsigned int ipi6_ifindex;
|
||||
+};
|
||||
+#endif
|
||||
+
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
/*
|
||||
Reference in New Issue
Block a user