diff options
| -rw-r--r-- | src/passwd/nscd_query.c | 10 | 
1 files changed, 9 insertions, 1 deletions
diff --git a/src/passwd/nscd_query.c b/src/passwd/nscd_query.c index d38e371b..dc3406b8 100644 --- a/src/passwd/nscd_query.c +++ b/src/passwd/nscd_query.c @@ -40,7 +40,15 @@ retry:  	buf[0] = NSCDVERSION;  	fd = socket(PF_UNIX, SOCK_STREAM | SOCK_CLOEXEC, 0); -	if (fd < 0) return NULL; +	if (fd < 0) { +		if (errno == EAFNOSUPPORT) { +			f = fopen("/dev/null", "re"); +			if (f) +				errno = errno_save; +			return f; +		} +		return 0; +	}  	if(!(f = fdopen(fd, "r"))) {  		close(fd);  | 
