aboutsummaryrefslogtreecommitdiff
path: root/drivers/unix
Commit message (Collapse)AuthorAgeFilesLines
* Use HTTPS URL for Godot's website in the headersRémi Verschelde2017-08-2722-22/+22
|
* Explicitily unsed AI_NUMERICHOST flag to fix HTML5Fabio Alessandrelli2017-08-131-0/+1
| | | | (cherry picked from commit f863c0ca14111d4bab06604fb4e2bf42fc83f0da)
* get_executable_path slight change to make it work under OpenBSDDavid Carlier2017-07-301-2/+2
| | | | (cherry picked from commit df87ad14d0be851ecdc02e592c3593b696762d26)
* BuildSystem: generated files have .gen.extPoommetee Ketson2017-06-251-1/+1
|
* Merge pull request #9022 from RandomShaper/improve-mem-class-2.1Rémi Verschelde2017-06-171-7/+7
|\ | | | | Remove mutex-locking from non-debug memory routines (2.1)
| * Remove mutex-locking from non-debug memory routinesPedro J. Estébanez2017-06-081-7/+7
| | | | | | | | | | | | since the malloc() suite is nowadays thread-safe by itself (from MSVC 2010 you don't even have a non-MT runtime and for POSIX-based OSs it's mandatory by the spec. Bonus: Clear about-to-be-released blocks with a better magic number for better debugging of dangling pointers.
* | Fix cherry-picking issues caused by code updatesGeorge Marques2017-06-071-2/+0
| |
* | Fix drivers coding for WinRTGeorge Marques2017-06-071-4/+10
|/ | | | | | | - Add a proper function to retrieve IP addresses. - Solve issues with Windows FileAccess and DirAccess to use the same code for WinRT. - Add patches to the GLES2 rasterizer to workaround ANGLE issues.
* Fix local ip addresses (interfaces) detection.Fabio Alessandrelli2017-05-121-4/+11
| | | | | | Ignore non-IP addresses for both windows and unix (cherry picked from commit a1c41be56977e22e953191dd9e90621d09f294cc)
* Socket helpers now fall back to ipv4 on systems where ipv6 is disabled.Fabio Alessandrelli2017-05-121-1/+9
| | | | (cherry picked from commit 020f6a7f2082a6039ce6a5b4410dce47f6ea2607)
* Fix UDP wait() not returning after first received packetFabio Alessandrelli2017-05-121-0/+2
| | | | (cherry picked from commit 5c6715a291e0e843b56f0a168191b3d89657d43f)
* Allow non blocking UDP put_packet in C++.Fabio Alessandrelli2017-05-122-1/+37
| | | | | | | | - Add blocking mode option to PacketPeerUDP. - put_packet returns ERR_UNAVAILABLE when operation would block. - ENet module uses non-blocking UDP. (cherry picked from commit 5f681d0b0f28cd39bc033c0cdf8eb3cb3a4acbe6)
* Add "Godot Engine contributors" copyright lineRémi Verschelde2017-04-0822-0/+22
|
* Fix buffer size check in UDP socket.Fabio Alessandrelli2017-03-221-1/+1
| | | | | | | We were reserving 12 bytes from the buffer for ip, port, and length, but since IPv6 introduction we should be reserving 24 (IPv6 are 16 bytes) (cherry picked from commit 5dc7c920bf1c4bb160d39e13ad6136d80badd7ae)
* Use default UDP ring buffer size of 65536 for clientsFabio Alessandrelli2017-03-221-2/+2
| | | | | | | | | We should probably create a specific function for setting the recv buffer anyway. UDP sockets does not need to bind (listen) to be able to call recvfrom. This is especially useful for clients who just call set_send_address and start communicating with a server. (cherry picked from commit 93368571326e3472522669b76998f58aed78864f)
* Fix bug causing UDP socket to close after the first send if not listeningFabio Alessandrelli2017-03-221-0/+1
| | | | | | The ring buffer for receiving packets was not resized in constructor (cherry picked from commit 68dc969f8ca242d0c4f927a417557288e4b1b75f)
* Avoid deadlock when writing/reading data on a connecting TCP socketFabio Alessandrelli2017-03-222-10/+5
| | | | | | | TCP status polling is always performed as non blocking. Trying to put a packet on a connecting socket will fail immediately. (cherry picked from commit fa0cb7da0e096e01476eabef37c225404c7f6f26)
* Bind to IPv4 on OpenBSD when using wildcardFabio Alessandrelli2017-03-222-0/+8
| | | | | | OpenBSD does not support binding on both IPv4 and IPv6 using the same socket (cherry picked from commit 619e7a2c8ba19d0dc45467e29d9d9aa8b3506ac8)
* Remove set_ip_type from network classes (no longer needed)Fabio Alessandrelli2017-03-224-9/+5
| | | | | | | | | | | | | | | - TCP: - `listen` bind to wildcard "*" -> dual stack socket - `listen` bind to address -> socket from address type - `connect` -> resolve using best protocol (UNSPEC), socket from address type - UDP: - `listen` bind to wildcard "*" -> dual stack socket - `listen` bind to address -> socket from address type - `put_packet`/`put_var` -> resolve using TYPE_ANY (UNSPEC), socket from address type (to change socket type you must first call `close` it) (cherry picked from commit 88a56ba783d36d52a1023759e69f026b1ae255b4)
* Implement UDP listen bind addressFabio Alessandrelli2017-03-222-6/+21
| | | | (cherry picked from commit 2fe4ef66991b483640f59873c22b3af671626ccc)
* Implement TCP Server bind addressFabio Alessandrelli2017-03-224-11/+29
| | | | (cherry picked from commit b2839343cab66880f647c77da7b2e1826761776a)
* Convert validity checks of IP_Address to is_valid method.Fabio Alessandrelli2017-03-223-3/+3
| | | | (cherry picked from commit 98a7e2b4e09791705cd9dfd4d13611bc02fe47d4)
* Avoid calling close when polling a UDP peer without socketFabio Alessandrelli2017-03-221-0/+4
| | | | (cherry picked from commit e4b9b37ccf8495be674bc15cf0bf9d76fe94e6be)
* TCP connect always opens correct socket typeFabio Alessandrelli2017-03-222-5/+9
| | | | | | TCP client connections does not need to rely on ipv6 dual stack sockets (cherry picked from commit 55b4f3686d8f51958132a1a1745cc4e128fd118d)
* Bring that Whole New World to the Old Continent tooRémi Verschelde2017-03-1923-898/+761
| | | | | Applies the clang-format style to the 2.1 branch as done for master in 5dbf1809c6e3e905b94b8764e99491e608122261.
* Prevent MSVC build issue after clang-format includes reorderRémi Verschelde2017-03-181-2/+3
|
* Add a simple signal handler for SIGCHLD on UnixHein-Pieter van Braam2017-03-181-0/+15
| | | | | | This fixes #6631 (cherry picked from commit cff6840ff7da010112b94f9be13deaa8288e90cd)
* Improvements to scons defined WINVER/_WIN32_WINNTFabio Alessandrelli2017-01-122-9/+5
| | | | (cherry picked from commit 65483d57bf322f847ecb1ab906e8f4fac49f2557)
* Windows: Workaround missing includes in MinGW-w64 < 4Rémi Verschelde2017-01-121-1/+13
| | | | | | | | | | | The MinGW-w64 version we have on our Travis build environment (Ubuntu 12.04, mingw-w64 2.0.1, gcc 4.6) is old and has some missing includes in the dependencies of the `tcpmib.h` header [0] [1] [2]. Those were not triggered before 6323779596dea0db7f58afef7d3d3d5588ef20cb probably due to conflicting WINVER definitions which prevented triggering the code specific to >= 0x0600 (Vista). We ensure it won't be triggered by defining the _WIN32_WINNT macro to Windows XP compatibility. (cherry picked from commit b24fe6879a2d26b530c1198ba7abb8cf2719f06c)
* Windows: Define _WIN32_WINRT to 0x0600 (Vista)Rémi Verschelde2017-01-121-9/+3
| | | | | | | | | | Passed as a compiler define to be sure it is always define before windows.h is loaded. This means that Godot officially requires Vista API or later, it will not work on Windows XP or earlier. Also fix a bogus check for Windows 7 API. (cherry picked from commit 6323779596dea0db7f58afef7d3d3d5588ef20cb)
* Welcome in 2017, dear changelog reader!Rémi Verschelde2017-01-1222-22/+22
| | | | | | | | | | That year should bring the long-awaited OpenGL ES 3.0 compatible renderer with state-of-the-art rendering techniques tuned to work as low as middle end handheld devices - without compromising with the possibilities given for higher end desktop games of course. Great times ahead for the Godot community and the gamers that will play our games! (cherry picked from commit c7bc44d5ad9aae4902280012f7654e2318cd910e)
* Remove old unused AI_V4MAPPED flag to getaddrinfoFabio Alessandrelli2017-01-041-8/+0
| | | | (cherry picked from commit de23ce11b51847b7b8bfc10ecf5926827516ac5a)
* IP_Address now handle IPv4 and IPv6 transparentlyFabio Alessandrelli2017-01-044-38/+30
| | | | | | | | | | | | IP_Address changes: - Converts to and from String transparently while handling IPv4 as IPv6 mapped (::ffff:[IP]) address internally. - Completely remove AddrType enum. - Setting/Getting of ip array is now only possible through dedicated functions (ie. set_ipv4, get_ipv4, set_ipv6, get_ipv6) - Add function to know if the address is a valid IPv4 (for IP implementation and enet) (cherry picked from commit 1aff508dd9713abf0db0d0436fa7f7c4788c5a4a)
* Migrate int.IP_TYPE_ constants to IP.TYPE_Fabio Alessandrelli2017-01-047-18/+18
| | | | (cherry picked from commit c18c5013f837ea7d4de2f022d36f84e0abce6439)
* Move V6ONLY flag selection inside helpersFabio Alessandrelli2017-01-043-19/+4
| | | | (cherry picked from commit 4d90a4fcd5fcdca42df47062f94a1fa4e5635a94)
* Automatically map IPv4 address to IPv6 when neededFabio Alessandrelli2017-01-043-7/+19
| | | | (cherry picked from commit 9200da58e4c2498c833d9f2505600c7049e80940)
* Use an instance variable for ip_type in raw socketsFabio Alessandrelli2017-01-046-18/+22
| | | | | | | | | PacketPeerUDP/StreamPeerTCP/TCP_Server now uses an instance variable to store the selected ip_type (IPv4/IPv6/ANY, where ANY = dual stack). All calls to resolve addresses, sending/receving data, connecting/listening will use that socket type. (cherry picked from commit 95bdd977686005d3d813eb09aca625384f1774c1)
* Properly handle tcp connection failureFabio Alessandrelli2017-01-041-1/+6
| | | | (cherry picked from commit 4f07b595a17a633c65c5df43ecdaa37667a475e9)
* Fix _set_ip_addr_port not setting the address.Fabio Alessandrelli2017-01-041-1/+1
| | | | (cherry picked from commit cdc1ca0f1301bb907121292db83f98706722ff1e)
* Fix getaddrinfo failing on androidFabio Alessandrelli2017-01-041-0/+5
| | | | (cherry picked from commit 311f1f165be12ea290799e42f9951011d997ab40)
* Define IPV6_V6ONLY flag if not defined on windows (old mingw versions)Fabio Alessandrelli2016-12-111-0/+7
| | | | (cherry picked from commit bdc7ca84cac727f3f94663f23e1229450230bd2e)
* TCP/UDP Listen sockets can now be set to IPv6 onlyFabio Alessandrelli2016-12-114-5/+31
| | | | (cherry picked from commit eb27e993f0f2fb3de48b7b8aa01c74cc1635a178)
* Fix windows debugger connection problems.Fabio Alessandrelli2016-12-114-11/+26
| | | | | | | Unify network socket creation between platform. Ensure IPV6_V6ONLY flag is not set on sockets (allow IPv4 connection in IPv6 socket, dual-stack). (cherry picked from commit 812908e236e83db368dfef49b8badb9a6182e1de)
* TCPServer listen now default to IP type ANY (v6 socket with v4 support)Fabio Alessandrelli2016-12-111-1/+1
| | | | (cherry picked from commit ee69bd81cfa67eb5c642604f0f43d711ab370faf)
* Fix PacketPeerUDP get_packet_port()Fabio Alessandrelli2016-12-111-2/+2
| | | | | | Properly convert port field from network to system ordering on incoming packets. (cherry picked from commit 25e29972a9df712cb51fc66e553b34f3dc441e51)
* Pass correct address size (ipv4,ipv6) to socket connect, bind, sendtoFabio Alessandrelli2016-12-114-12/+16
| | | | | | | The address size passed to network system calls now reflects the the actual IP type (v4 or v6). Fix Windows and OSX ipv6 sockets (cherry picked from commit 80e911647c5df21c5b6a06876f1d48e21cd1f5fc)
* added windows support for ipv6, cleaned up unix codeAriel Manzur2016-12-114-72/+81
| | | | (cherry picked from commit 672225b710815865449e7930255468d1c085b137)
* fixed some byte order and parsing problemsAriel Manzur2016-12-111-1/+1
| | | | (cherry picked from commit 1d45f35a4a190360fea74e51b66457efe44d3177)
* adding ipv6Ariel Manzur2016-12-117-77/+220
| | | | (cherry picked from commit 887a897c02144f2d01896d3112bdae5ce7d6df5c)
* OS additions and fixes for WebAssembly/asm.jseska2016-12-031-3/+0
| | | | | | | - Implement alert, shell_open, set_window_title - Add locale lookup, fixes #2477 - Print without color control sequences - Move get_executable_path implementation to OS_JavaScript