int XCBOpenUnix(const char *file) { int fd; struct sockaddr_un addr = { AF_UNIX }; strcpy(addr.sun_path, file); fd = socket(AF_UNIX, SOCK_STREAM, 0); if(fd == -1) return -1; if(connect(fd, (struct sockaddr *) &addr, sizeof(addr)) == -1) return -1; return fd; }