From f4ea7b9a0857d40846260f7315cc497e8f70c293 Mon Sep 17 00:00:00 2001 From: Ismael Luceno Date: Sun, 10 Oct 2021 19:41:42 +0200 Subject: wine (devel) 6.19 --- x11-libs/wine/DETAILS | 2 +- x11-libs/wine/HISTORY | 7 ++ ...1-dnsapi-Work-around-missing-ns_name_skip.patch | 92 ++++++++++++++++++++++ ...0002-server-Fix-missing-include-for-uid_t.patch | 33 ++++++++ x11-libs/wine/patches/dnsapi.diff | 76 ------------------ 5 files changed, 133 insertions(+), 77 deletions(-) create mode 100644 x11-libs/wine/patches/0001-dnsapi-Work-around-missing-ns_name_skip.patch create mode 100644 x11-libs/wine/patches/0002-server-Fix-missing-include-for-uid_t.patch delete mode 100644 x11-libs/wine/patches/dnsapi.diff (limited to 'x11-libs') diff --git a/x11-libs/wine/DETAILS b/x11-libs/wine/DETAILS index 81e51258b8..62342f954d 100755 --- a/x11-libs/wine/DETAILS +++ b/x11-libs/wine/DETAILS @@ -1,7 +1,7 @@ . "$GRIMOIRE/FUNCTIONS" SPELL=wine case "$WINE_BRANCH" in -(devel) VERSION=6.18 ;; +(devel) VERSION=6.19 ;; (stable) VERSION=6.0.1 ;; esac; case "$WINE_BRANCH" in (scm) diff --git a/x11-libs/wine/HISTORY b/x11-libs/wine/HISTORY index 1620423a3b..2aa3112feb 100644 --- a/x11-libs/wine/HISTORY +++ b/x11-libs/wine/HISTORY @@ -1,3 +1,10 @@ +2021-10-10 Ismael Luceno + * DETAILS: updated (devel) to 6.19 + * dnsapi.diff, 0001-dnsapi-Work-around-missing-ns_name_skip.patchi: + renamed patch, added description and updated status + * 0002-server-Fix-missing-include-for-uid_t.patch: + added patch to build 6.19 against musl + 2021-09-29 Ismael Luceno * DETAILS: updated (devel) to 6.18 diff --git a/x11-libs/wine/patches/0001-dnsapi-Work-around-missing-ns_name_skip.patch b/x11-libs/wine/patches/0001-dnsapi-Work-around-missing-ns_name_skip.patch new file mode 100644 index 0000000000..a7a2c93b40 --- /dev/null +++ b/x11-libs/wine/patches/0001-dnsapi-Work-around-missing-ns_name_skip.patch @@ -0,0 +1,92 @@ +From 930a2109f1d11f1c0571b869faea94d228440f7b Mon Sep 17 00:00:00 2001 +From: Hans Leidekker +Date: Sun, 10 Oct 2021 23:51:49 +0200 +Subject: [PATCH 1/2] dnsapi: Work around missing ns_name_skip + +On some non-glibc systems (specifically musl) ns_name_skip may be missing. + +Fixes: 0d26dd2afbc3 ("dnsapi: Get rid of imported domain name parsing code.") +[ismael@iodev.co.uk: Edited commit message] +Upstream-Status: Submitted [https://bugs.winehq.org/show_bug.cgi?id=50985] +Signed-off-by: Ismael Luceno +--- + dlls/dnsapi/libresolv.c | 35 +++++++++++++++++++++++++++++++---- + 1 file changed, 31 insertions(+), 4 deletions(-) + +diff --git a/dlls/dnsapi/libresolv.c b/dlls/dnsapi/libresolv.c +index 197ca84aeae9..032efb88a884 100644 +--- a/dlls/dnsapi/libresolv.c ++++ b/dlls/dnsapi/libresolv.c +@@ -548,6 +548,33 @@ static unsigned int get_record_size( const ns_rr *rr ) + return size; + } + ++/* based on ns_name_skip from libresolv */ ++static int skip_name( const unsigned char **ptr, const unsigned char *end ) ++{ ++ const unsigned char *cp = *ptr; ++ unsigned int len; ++ ++ while (cp < end && (len = *cp++)) ++ { ++ switch (len & NS_CMPRSFLGS) ++ { ++ case 0: ++ cp += len; ++ continue; ++ case NS_CMPRSFLGS: ++ cp++; ++ break; ++ default: ++ return -1; ++ } ++ break; ++ } ++ ++ if (cp > end) return -1; ++ *ptr = cp; ++ return 0; ++} ++ + static DNS_STATUS copy_rdata( ns_msg msg, const ns_rr *rr, DNS_RECORDA *r, WORD *dlen ) + { + DNS_STATUS ret = ERROR_SUCCESS; +@@ -594,7 +621,7 @@ static DNS_STATUS copy_rdata( ns_msg msg, const ns_rr *rr, DNS_RECORDA *r, WORD + r->Data.MINFO.pNameMailbox = dname_from_msg( msg, pos ); + if (!r->Data.MINFO.pNameMailbox) return ERROR_NOT_ENOUGH_MEMORY; + +- if (ns_name_skip( &pos, ns_msg_end( msg ) ) < 0) ++ if (skip_name( &pos, ns_msg_end( msg ) ) < 0) + return DNS_ERROR_BAD_PACKET; + + r->Data.MINFO.pNameErrorsMailbox = dname_from_msg( msg, pos ); +@@ -655,7 +682,7 @@ static DNS_STATUS copy_rdata( ns_msg msg, const ns_rr *rr, DNS_RECORDA *r, WORD + r->Data.SIG.pNameSigner = dname_from_msg( msg, pos ); + if (!r->Data.SIG.pNameSigner) return ERROR_NOT_ENOUGH_MEMORY; + +- if (ns_name_skip( &pos, ns_msg_end( msg ) ) < 0) ++ if (skip_name( &pos, ns_msg_end( msg ) ) < 0) + return DNS_ERROR_BAD_PACKET; + + /* FIXME: byte order? */ +@@ -680,7 +707,7 @@ static DNS_STATUS copy_rdata( ns_msg msg, const ns_rr *rr, DNS_RECORDA *r, WORD + r->Data.SOA.pNamePrimaryServer = dname_from_msg( msg, pos ); + if (!r->Data.SOA.pNamePrimaryServer) return ERROR_NOT_ENOUGH_MEMORY; + +- if (ns_name_skip( &pos, ns_msg_end( msg ) ) < 0) ++ if (skip_name( &pos, ns_msg_end( msg ) ) < 0) + return DNS_ERROR_BAD_PACKET; + + r->Data.SOA.pNameAdministrator = dname_from_msg( msg, pos ); +@@ -690,7 +717,7 @@ static DNS_STATUS copy_rdata( ns_msg msg, const ns_rr *rr, DNS_RECORDA *r, WORD + return ERROR_NOT_ENOUGH_MEMORY; + } + +- if (ns_name_skip( &pos, ns_msg_end( msg ) ) < 0) ++ if (skip_name( &pos, ns_msg_end( msg ) ) < 0) + return DNS_ERROR_BAD_PACKET; + + r->Data.SOA.dwSerialNo = ntohl( *(const DWORD *)pos ); pos += sizeof(DWORD); +-- +2.33.0 + diff --git a/x11-libs/wine/patches/0002-server-Fix-missing-include-for-uid_t.patch b/x11-libs/wine/patches/0002-server-Fix-missing-include-for-uid_t.patch new file mode 100644 index 0000000000..f4958180b5 --- /dev/null +++ b/x11-libs/wine/patches/0002-server-Fix-missing-include-for-uid_t.patch @@ -0,0 +1,33 @@ +From b9fcfd6e79f3e5169e1ad82d24c6ca2f56ab4e48 Mon Sep 17 00:00:00 2001 +From: Ismael Luceno +Date: Sun, 10 Oct 2021 22:56:59 +0200 +Subject: [PATCH 2/2] server: Fix missing include for uid_t + +Explicitly include to make uid_t available to users of +server/security.h. + +This is a problem on musl, and possibly other non-glibc systems. + +Fixes: c954e5b9e6a6 ("server: Avoid using wine/port.h.") +Upstream-Status: Submitted [https://bugs.winehq.org/show_bug.cgi?id=51860] +Signed-off-by: Ismael Luceno +--- + server/security.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/server/security.h b/server/security.h +index 5388bc9c4195..39e7218ec5fa 100644 +--- a/server/security.h ++++ b/server/security.h +@@ -21,6 +21,8 @@ + #ifndef __WINE_SERVER_SECURITY_H + #define __WINE_SERVER_SECURITY_H + ++#include /* for uid_t */ ++ + extern const LUID SeIncreaseQuotaPrivilege; + extern const LUID SeSecurityPrivilege; + extern const LUID SeTakeOwnershipPrivilege; +-- +2.33.0 + diff --git a/x11-libs/wine/patches/dnsapi.diff b/x11-libs/wine/patches/dnsapi.diff deleted file mode 100644 index 9f748fd922..0000000000 --- a/x11-libs/wine/patches/dnsapi.diff +++ /dev/null @@ -1,76 +0,0 @@ -Upstream-Status: Backport - -diff --git a/dlls/dnsapi/libresolv.c b/dlls/dnsapi/libresolv.c -index ac52147af01..633169e6d66 100644 ---- a/dlls/dnsapi/libresolv.c -+++ b/dlls/dnsapi/libresolv.c -@@ -344,6 +344,33 @@ static unsigned int get_record_size( const ns_rr *rr ) - return size; - } - -+/* based on ns_name_skip from libresolv */ -+static int skip_name( const unsigned char **ptr, const unsigned char *end ) -+{ -+ const unsigned char *cp = *ptr; -+ unsigned int len; -+ -+ while (cp < end && (len = *cp++)) -+ { -+ switch (len & NS_CMPRSFLGS) -+ { -+ case 0: -+ cp += len; -+ continue; -+ case NS_CMPRSFLGS: -+ cp++; -+ break; -+ default: -+ return -1; -+ } -+ break; -+ } -+ -+ if (cp > end) return -1; -+ *ptr = cp; -+ return 0; -+} -+ - static DNS_STATUS copy_rdata( ns_msg msg, const ns_rr *rr, DNS_RECORDA *r, WORD *dlen ) - { - DNS_STATUS ret = ERROR_SUCCESS; -@@ -390,7 +417,7 @@ static DNS_STATUS copy_rdata( ns_msg msg, const ns_rr *rr, DNS_RECORDA *r, WORD - r->Data.MINFO.pNameMailbox = dname_from_msg( msg, pos ); - if (!r->Data.MINFO.pNameMailbox) return ERROR_NOT_ENOUGH_MEMORY; - -- if (ns_name_skip( &pos, ns_msg_end( msg ) ) < 0) -+ if (skip_name( &pos, ns_msg_end( msg ) ) < 0) - return DNS_ERROR_BAD_PACKET; - - r->Data.MINFO.pNameErrorsMailbox = dname_from_msg( msg, pos ); -@@ -451,7 +478,7 @@ static DNS_STATUS copy_rdata( ns_msg msg, const ns_rr *rr, DNS_RECORDA *r, WORD - r->Data.SIG.pNameSigner = dname_from_msg( msg, pos ); - if (!r->Data.SIG.pNameSigner) return ERROR_NOT_ENOUGH_MEMORY; - -- if (ns_name_skip( &pos, ns_msg_end( msg ) ) < 0) -+ if (skip_name( &pos, ns_msg_end( msg ) ) < 0) - return DNS_ERROR_BAD_PACKET; - - /* FIXME: byte order? */ -@@ -476,7 +503,7 @@ static DNS_STATUS copy_rdata( ns_msg msg, const ns_rr *rr, DNS_RECORDA *r, WORD - r->Data.SOA.pNamePrimaryServer = dname_from_msg( msg, pos ); - if (!r->Data.SOA.pNamePrimaryServer) return ERROR_NOT_ENOUGH_MEMORY; - -- if (ns_name_skip( &pos, ns_msg_end( msg ) ) < 0) -+ if (skip_name( &pos, ns_msg_end( msg ) ) < 0) - return DNS_ERROR_BAD_PACKET; - - r->Data.SOA.pNameAdministrator = dname_from_msg( msg, pos ); -@@ -486,7 +513,7 @@ static DNS_STATUS copy_rdata( ns_msg msg, const ns_rr *rr, DNS_RECORDA *r, WORD - return ERROR_NOT_ENOUGH_MEMORY; - } - -- if (ns_name_skip( &pos, ns_msg_end( msg ) ) < 0) -+ if (skip_name( &pos, ns_msg_end( msg ) ) < 0) - return DNS_ERROR_BAD_PACKET; - - r->Data.SOA.dwSerialNo = ntohl( *(const DWORD *)pos ); pos += sizeof(DWORD); -- cgit v1.2.3