Unix: Remove now unnecessary I/O defines, cleanup
- `LIBC_FILEIO_ENABLED` wasn't defined anywhere, even in _other platforms_. - `NO_NETWORK` is also never defined. It probably isn't enough anyway to disable network APIs in the current codebase. - `UNIX_SOCKET_UNAVAILABLE` is never defined in this code but used by some other platforms, clarify that. - `NO_STATVFS` can be removed as Android supports it since API level 19, which is our current min SDK level. It's also only used for `DirAccessUnix::get_space_left()` which is anyway overridden by `DirAccessJAndroid::get_space_left()` so it shouldn't make a difference. * Fixed documentation for `DirAccess.get_space_left()`. - `NO_FCNTL` is likely also a remnant of early Android days, in current NDK r23 it seems to be available. Also cleaned up unused `fcntl.h` includes. - `NO_ALLOCA` is never defined, and we use alloca in many places now.
This commit is contained in:
parent
d331b803b8
commit
f501e4f665
18 changed files with 44 additions and 118 deletions
|
|
@ -30,32 +30,30 @@
|
|||
|
||||
#include "net_socket_posix.h"
|
||||
|
||||
// Some proprietary Unix-derived platforms don't expose Unix sockets
|
||||
// so this allows skipping this file to reimplement this API differently.
|
||||
#ifndef UNIX_SOCKET_UNAVAILABLE
|
||||
|
||||
#if defined(UNIX_ENABLED)
|
||||
|
||||
#include <errno.h>
|
||||
#include <fcntl.h>
|
||||
#include <netdb.h>
|
||||
#include <netinet/in.h>
|
||||
#include <netinet/tcp.h>
|
||||
#include <poll.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <sys/ioctl.h>
|
||||
#include <sys/socket.h>
|
||||
#include <sys/types.h>
|
||||
#include <unistd.h>
|
||||
#ifndef NO_FCNTL
|
||||
#include <fcntl.h>
|
||||
#else
|
||||
#include <sys/ioctl.h>
|
||||
#endif
|
||||
#include <netinet/in.h>
|
||||
|
||||
#include <sys/socket.h>
|
||||
#ifdef WEB_ENABLED
|
||||
#include <arpa/inet.h>
|
||||
#endif
|
||||
|
||||
#include <netinet/tcp.h>
|
||||
|
||||
// BSD calls this flag IPV6_JOIN_GROUP
|
||||
#if !defined(IPV6_ADD_MEMBERSHIP) && defined(IPV6_JOIN_GROUP)
|
||||
#define IPV6_ADD_MEMBERSHIP IPV6_JOIN_GROUP
|
||||
|
|
@ -93,7 +91,7 @@
|
|||
#define SIO_UDP_NETRESET _WSAIOW(IOC_VENDOR, 15)
|
||||
#endif
|
||||
|
||||
#endif
|
||||
#endif // UNIX_ENABLED
|
||||
|
||||
size_t NetSocketPosix::_set_addr_storage(struct sockaddr_storage *p_addr, const IPAddress &p_ip, uint16_t p_port, IP::Type p_ip_type) {
|
||||
memset(p_addr, 0, sizeof(struct sockaddr_storage));
|
||||
|
|
@ -309,14 +307,9 @@ void NetSocketPosix::_set_socket(SOCKET_TYPE p_sock, IP::Type p_ip_type, bool p_
|
|||
void NetSocketPosix::_set_close_exec_enabled(bool p_enabled) {
|
||||
#ifndef WINDOWS_ENABLED
|
||||
// Enable close on exec to avoid sharing with subprocesses. Off by default on Windows.
|
||||
#if defined(NO_FCNTL)
|
||||
unsigned long par = p_enabled ? 1 : 0;
|
||||
SOCK_IOCTL(_sock, FIOCLEX, &par);
|
||||
#else
|
||||
int opts = fcntl(_sock, F_GETFD);
|
||||
fcntl(_sock, F_SETFD, opts | FD_CLOEXEC);
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
|
||||
Error NetSocketPosix::open(Type p_sock_type, IP::Type &ip_type) {
|
||||
|
|
@ -658,7 +651,7 @@ void NetSocketPosix::set_blocking_enabled(bool p_enabled) {
|
|||
ERR_FAIL_COND(!is_open());
|
||||
|
||||
int ret = 0;
|
||||
#if defined(WINDOWS_ENABLED) || defined(NO_FCNTL)
|
||||
#if defined(WINDOWS_ENABLED)
|
||||
unsigned long par = p_enabled ? 0 : 1;
|
||||
ret = SOCK_IOCTL(_sock, FIONBIO, &par);
|
||||
#else
|
||||
|
|
@ -781,4 +774,5 @@ Error NetSocketPosix::join_multicast_group(const IPAddress &p_multi_address, Str
|
|||
Error NetSocketPosix::leave_multicast_group(const IPAddress &p_multi_address, String p_if_name) {
|
||||
return _change_multicast_group(p_multi_address, p_if_name, false);
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif // UNIX_SOCKET_UNAVAILABLE
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue