X-Git-Url: http://git.demorecorder.com/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fxcb_auth.c;h=b44855e74bd4e36e3e4dc2b65a3bdf84480b3804;hb=d79621b25ba6784135b1a3aa51e9561fcf72fe7f;hp=ffc05154791e71899e2e20672bdebf9748344ea1;hpb=3de6ab7b786775d9e7df1523c27cdfe3ffd3a25f;p=free-sw%2Fxcb%2Flibxcb diff --git a/src/xcb_auth.c b/src/xcb_auth.c index ffc0515..b44855e 100644 --- a/src/xcb_auth.c +++ b/src/xcb_auth.c @@ -68,7 +68,7 @@ static size_t memdup(char **dst, void *src, size_t len) return len; } -static int authname_match(enum auth_protos kind, char *name, int namelen) +static int authname_match(enum auth_protos kind, char *name, size_t namelen) { if(strlen(authnames[kind]) != namelen) return 0; @@ -93,6 +93,7 @@ static Xauth *get_authptr(struct sockaddr *sockname, unsigned int socknamelen, family = FamilyLocal; /* 256 */ switch(sockname->sa_family) { +#ifdef AF_INET6 case AF_INET6: addr = (char *) SIN6_ADDR(sockname); addrlen = sizeof(*SIN6_ADDR(sockname)); @@ -104,6 +105,7 @@ static Xauth *get_authptr(struct sockaddr *sockname, unsigned int socknamelen, } addr += 12; /* if v4-mapped, fall through. */ +#endif case AF_INET: if(!addr) addr = (char *) &((struct sockaddr_in *)sockname)->sin_addr; @@ -179,6 +181,7 @@ static int compute_auth(xcb_auth_info_t *info, Xauth *authptr, struct sockaddr * APPEND(info->data, j, si->sin_port); } break; +#ifdef AF_INET6 case AF_INET6: /*block*/ { struct sockaddr_in6 *si6 = (struct sockaddr_in6 *) sockname; @@ -199,6 +202,7 @@ static int compute_auth(xcb_auth_info_t *info, Xauth *authptr, struct sockaddr * } } break; +#endif case AF_UNIX: /*block*/ { uint32_t fakeaddr = htonl(0xffffffff - next_nonce());