Accepting request 1155610 from home:favogt:branches:X11:XOrg

- Fix n_If-auth-with-credentials-for-hostname-fails-retry-with-XAUTHLOCALHOSTNAME.patch,
  the rebase in 1.16 caused an regression: It loops indefinitely if
  XAUTHLOCALHOSTNAME is unset (boo#1221078)

OBS-URL: https://build.opensuse.org/request/show/1155610
OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/libxcb?expand=0&rev=74
This commit is contained in:
Stefan Dirsch 2024-03-06 15:33:55 +00:00 committed by Git OBS Bridge
parent b6165bf1ad
commit 3c969a975c
2 changed files with 24 additions and 16 deletions

View File

@ -1,3 +1,10 @@
-------------------------------------------------------------------
Wed Mar 6 15:18:25 UTC 2024 - Fabian Vogt <fvogt@suse.com>
- Fix n_If-auth-with-credentials-for-hostname-fails-retry-with-XAUTHLOCALHOSTNAME.patch,
the rebase in 1.16 caused an regression: It loops indefinitely if
XAUTHLOCALHOSTNAME is unset (boo#1221078)
------------------------------------------------------------------- -------------------------------------------------------------------
Sun Mar 3 02:58:42 UTC 2024 - Stefan Dirsch <sndirsch@suse.com> Sun Mar 3 02:58:42 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>

View File

@ -11,10 +11,10 @@ Signed-off-by: Egbert Eich <eich@suse.de>
src/xcb_auth.c | 26 ++++++++++++++++++-------- src/xcb_auth.c | 26 ++++++++++++++++++--------
1 file changed, 18 insertions(+), 8 deletions(-) 1 file changed, 18 insertions(+), 8 deletions(-)
Index: libxcb-1.16/src/xcb_auth.c Index: libxcb-1.16.1/src/xcb_auth.c
=================================================================== ===================================================================
--- libxcb-1.16.orig/src/xcb_auth.c --- libxcb-1.16.1.orig/src/xcb_auth.c
+++ libxcb-1.16/src/xcb_auth.c +++ libxcb-1.16.1/src/xcb_auth.c
@@ -110,7 +110,7 @@ static int authname_match(enum auth_prot @@ -110,7 +110,7 @@ static int authname_match(enum auth_prot
#define SIN6_ADDR(s) (&((struct sockaddr_in6 *)s)->sin6_addr) #define SIN6_ADDR(s) (&((struct sockaddr_in6 *)s)->sin6_addr)
@ -33,7 +33,7 @@ Index: libxcb-1.16/src/xcb_auth.c
family = FamilyLocal; /* 256 */ family = FamilyLocal; /* 256 */
switch(sockname->sa_family) switch(sockname->sa_family)
{ {
@@ -163,17 +165,22 @@ static Xauth *get_authptr(struct sockadd @@ -163,18 +165,23 @@ static Xauth *get_authptr(struct sockadd
addrlen = strlen(addr); addrlen = strlen(addr);
} }
@ -61,11 +61,12 @@ Index: libxcb-1.16/src/xcb_auth.c
+ (unsigned short) strlen(addr), addr, + (unsigned short) strlen(addr), addr,
+ (unsigned short) dispbuflen, dispbuf, + (unsigned short) dispbuflen, dispbuf,
+ N_AUTH_PROTOS, authnames, authnameslen); + N_AUTH_PROTOS, authnames, authnameslen);
+ *stage = 2;
+ return authptr;
} }
+ *stage = 2;
+ return authptr;
} }
return authptr; return authptr;
}
@@ -329,7 +336,7 @@ static struct sockaddr *get_peer_sock_na @@ -329,7 +336,7 @@ static struct sockaddr *get_peer_sock_na
return NULL; return NULL;
} }
@ -84,10 +85,10 @@ Index: libxcb-1.16/src/xcb_auth.c
if (authptr == 0) if (authptr == 0)
{ {
free(sockname); free(sockname);
Index: libxcb-1.16/src/xcbint.h Index: libxcb-1.16.1/src/xcbint.h
=================================================================== ===================================================================
--- libxcb-1.16.orig/src/xcbint.h --- libxcb-1.16.1.orig/src/xcbint.h
+++ libxcb-1.16/src/xcbint.h +++ libxcb-1.16.1/src/xcbint.h
@@ -232,7 +232,7 @@ int _xcb_conn_wait(xcb_connection_t *c, @@ -232,7 +232,7 @@ int _xcb_conn_wait(xcb_connection_t *c,
/* xcb_auth.c */ /* xcb_auth.c */
@ -97,11 +98,11 @@ Index: libxcb-1.16/src/xcbint.h
#ifdef GCC_HAS_VISIBILITY #ifdef GCC_HAS_VISIBILITY
#pragma GCC visibility pop #pragma GCC visibility pop
Index: libxcb-1.16/src/xcb_util.c Index: libxcb-1.16.1/src/xcb_util.c
=================================================================== ===================================================================
--- libxcb-1.16.orig/src/xcb_util.c --- libxcb-1.16.1.orig/src/xcb_util.c
+++ libxcb-1.16/src/xcb_util.c +++ libxcb-1.16.1/src/xcb_util.c
@@ -514,6 +514,7 @@ xcb_connection_t *xcb_connect_to_display @@ -516,6 +516,7 @@ xcb_connection_t *xcb_connect_to_display
char *protocol = NULL; char *protocol = NULL;
xcb_auth_info_t ourauth; xcb_auth_info_t ourauth;
xcb_connection_t *c; xcb_connection_t *c;
@ -109,7 +110,7 @@ Index: libxcb-1.16/src/xcb_util.c
int parsed = _xcb_parse_display(displayname, &host, &protocol, &display, screenp); int parsed = _xcb_parse_display(displayname, &host, &protocol, &display, screenp);
@@ -530,6 +531,7 @@ xcb_connection_t *xcb_connect_to_display @@ -532,6 +533,7 @@ xcb_connection_t *xcb_connect_to_display
} }
#endif #endif
@ -117,7 +118,7 @@ Index: libxcb-1.16/src/xcb_util.c
fd = _xcb_open(host, protocol, display); fd = _xcb_open(host, protocol, display);
if(fd == -1) { if(fd == -1) {
@@ -543,7 +545,7 @@ xcb_connection_t *xcb_connect_to_display @@ -545,7 +547,7 @@ xcb_connection_t *xcb_connect_to_display
if(auth) { if(auth) {
c = xcb_connect_to_fd(fd, auth); c = xcb_connect_to_fd(fd, auth);
} }
@ -126,7 +127,7 @@ Index: libxcb-1.16/src/xcb_util.c
{ {
c = xcb_connect_to_fd(fd, &ourauth); c = xcb_connect_to_fd(fd, &ourauth);
free(ourauth.name); free(ourauth.name);
@@ -552,8 +554,11 @@ xcb_connection_t *xcb_connect_to_display @@ -554,8 +556,11 @@ xcb_connection_t *xcb_connect_to_display
else else
c = xcb_connect_to_fd(fd, 0); c = xcb_connect_to_fd(fd, 0);