test: adjust expecting error for getaddrinfo() under EMFILE

When getaddrinfo() cannot allocate file descriptor glibc/musl-libc on
linux report EAI_SYSTEM error. But this is not true for freebsd libc [1]
(and hence apple libc [2]), they report EAI_NONAME error instead, so
adjust expectation.

  [1]: https://github.com/freebsd/freebsd/blob/master/lib/libc/net/getaddrinfo.c
  [2]: https://opensource.apple.com/source/Libc/

Refs: #749
Refs: https://github.com/libevent/libevent/issues/749#issuecomment-457838159
This commit is contained in:
Azat Khuzhin 2019-01-26 18:52:33 +03:00
parent 91a2f1346e
commit 4ffc711617
No known key found for this signature in database
GPG Key ID: B86086848EF8686D

View File

@ -1218,7 +1218,14 @@ test_bufferevent_connect_hostname(void *arg)
if (emfile) {
success = BEV_EVENT_ERROR;
#ifdef __linux__
/* on linux glibc/musl reports EAI_SYSTEM, when getaddrinfo() cannot
* open file for resolving service. */
default_error = EVUTIL_EAI_SYSTEM;
#else
/* on osx/freebsd it returns EAI_NONAME */
default_error = EVUTIL_EAI_NONAME;
#endif
}
be_connect_hostname_base = data->base;