diff -Nur -x '*.orig' -x '*.rej' qmail-workaround-0.0.1/no_connect_zero.c mezzanine_patched_qmail-workaround-0.0.1/no_connect_zero.c --- qmail-workaround-0.0.1/no_connect_zero.c 2006-04-13 10:15:21.000000000 -0400 +++ mezzanine_patched_qmail-workaround-0.0.1/no_connect_zero.c 2006-04-13 10:14:10.000000000 -0400 @@ -15,22 +15,25 @@ static int (*lib_connect)(int sockfd, const struct sockaddr *serv_addr, socklen_t addrlen) = NULL; void *handle; - char *error; struct sockaddr_in * sip; if (!lib_connect) { - handle = dlopen("/lib/tls/libc.so.6", - RTLD_LAZY); + handle = dlopen("libc.so.6", RTLD_LAZY); if (!handle) { const char *e = dlerror(); + write(2, "Z", 1); write(2, e, strlen(e)); write(2, "\n", 1); errno = ELIBACC; return -1; } lib_connect = dlsym(handle, "connect"); - if ((error = dlerror()) != NULL) + if (!lib_connect) { + const char *e = dlerror(); + write(2, "Z", 1); + write(2, e, strlen(e)); + write(2, "\n", 1); errno = ELIBACC; return -1; }