protocol-pulse: ifdef Linux-specific errnos and socket opts

This commit is contained in:
Greg V 2020-11-09 00:39:56 +03:00 committed by Wim Taymans
parent bd57c1a457
commit fba8cd9f56
2 changed files with 8 additions and 0 deletions

View file

@ -93,10 +93,16 @@ static inline int res_to_err(int res)
case -ECONNREFUSED: return ERR_CONNECTIONREFUSED; case -ECONNREFUSED: return ERR_CONNECTIONREFUSED;
case -EPROTO: return ERR_PROTOCOL; case -EPROTO: return ERR_PROTOCOL;
case -ETIMEDOUT: return ERR_TIMEOUT; case -ETIMEDOUT: return ERR_TIMEOUT;
#ifdef ENOKEY
case -ENOKEY: return ERR_AUTHKEY; case -ENOKEY: return ERR_AUTHKEY;
#endif
case -ECONNRESET: return ERR_CONNECTIONTERMINATED; case -ECONNRESET: return ERR_CONNECTIONTERMINATED;
#ifdef EBADFD
case -EBADFD: return ERR_BADSTATE; case -EBADFD: return ERR_BADSTATE;
#endif
#ifdef ENODATA
case -ENODATA: return ERR_NODATA; case -ENODATA: return ERR_NODATA;
#endif
case -EOVERFLOW: return ERR_TOOLARGE; case -EOVERFLOW: return ERR_TOOLARGE;
case -ENOTSUP: return ERR_NOTSUPPORTED; case -ENOTSUP: return ERR_NOTSUPPORTED;
case -ENOSYS: return ERR_NOTIMPLEMENTED; case -ENOSYS: return ERR_NOTIMPLEMENTED;

View file

@ -4264,9 +4264,11 @@ on_connect(void *data, int fd, uint32_t mask)
if (server->type == SERVER_TYPE_UNIX) { if (server->type == SERVER_TYPE_UNIX) {
val = 6; val = 6;
#ifdef SO_PRIORITY
if (setsockopt(client_fd, SOL_SOCKET, SO_PRIORITY, if (setsockopt(client_fd, SOL_SOCKET, SO_PRIORITY,
(const void *) &val, sizeof(val)) < 0) (const void *) &val, sizeof(val)) < 0)
pw_log_warn("SO_PRIORITY failed: %m"); pw_log_warn("SO_PRIORITY failed: %m");
#endif
} else if (server->type == SERVER_TYPE_INET) { } else if (server->type == SERVER_TYPE_INET) {
val = 1; val = 1;
if (setsockopt(client_fd, IPPROTO_TCP, TCP_NODELAY, if (setsockopt(client_fd, IPPROTO_TCP, TCP_NODELAY,