summaryrefslogtreecommitdiff
path: root/drivers/unix/packet_peer_udp_posix.cpp
AgeCommit message (Collapse)Author
2018-09-12Unify PacketPeerUDP using NetSocketFabio Alessandrelli
2018-09-12ENet wrapper properly detect disconnect on pollFabio Alessandrelli
Now PacketPeerUDP.get_available_packet_count() return -1 if the socket is in error state.
2018-09-12Properly reset socket blocking state on closeFabio Alessandrelli
2018-01-05Add missing copyright headers and fix formattingRémi Verschelde
Using `misc/scripts/fix_headers.py` on all Godot files. Some missing header guards were added, and the header inclusion order was fixed in the Bullet module.
2018-01-01Update copyright statements to 2018Rémi Verschelde
Happy new year to the wonderful Godot community!
2017-12-15Remove "const" from PacketPeer get_packet/get_varFabio Alessandrelli
They are NOT constant methods, as state by the comment message, they fetch the last packet and then forget about it, actively changing the state of the object.
2017-09-02Fix use of unitialized variablesHein-Pieter van Braam
The second in my quest to make Godot 3.x compile with -Werror on GCC7
2017-08-27Use HTTPS URL for Godot's website in the headersRémi Verschelde
2017-08-16Synchronize parameter names in definition and declarationTwistedTwigleg
Fixes #10244.
2017-08-14Use const reference where favorableWilson E. Alvarez
2017-05-05Fix UDP wait() not returning after first received packetFabio Alessandrelli
2017-04-08Add "Godot Engine contributors" copyright lineRémi Verschelde
2017-03-24Allow non blocking UDP put_packet in C++.Fabio Alessandrelli
- Add blocking mode option to PacketPeerUDP. - put_packet returns ERR_UNAVAILABLE when operation would block. - ENet module uses non-blocking UDP.
2017-03-05A Whole New World (clang-format edition)Rémi Verschelde
I can show you the code Pretty, with proper whitespace Tell me, coder, now when did You last write readable code? I can open your eyes Make you see your bad indent Force you to respect the style The core devs agreed upon A whole new world A new fantastic code format A de facto standard With some sugar Enforced with clang-format A whole new world A dazzling style we all dreamed of And when we read it through It's crystal clear That now we're in a whole new world of code
2017-01-23Fix buffer size check in UDP socket.Fabio Alessandrelli
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)
2017-01-23Use default UDP ring buffer size of 65536 for clientsFabio Alessandrelli
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.
2017-01-23Fix bug causing UDP socket to close after the first send if not listeningFabio Alessandrelli
The ring buffer for receiving packets was not resized in constructor
2017-01-23Bind to IPv4 on OpenBSD when using wildcardFabio Alessandrelli
OpenBSD does not support binding on both IPv4 and IPv6 using the same socket
2017-01-23Remove set_ip_type from network classes (no longer needed)Fabio Alessandrelli
- 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)
2017-01-23Implement UDP listen bind addressFabio Alessandrelli
2017-01-23Implement TCP Server bind addressFabio Alessandrelli
2017-01-23Convert validity checks of IP_Address to is_valid method.Fabio Alessandrelli
2017-01-23Avoid calling close when polling a UDP peer without socketFabio Alessandrelli
2017-01-14UDP.set_send_address to UDP.set_dest_addressJuan Linietsky
2017-01-02Merge pull request #7271 from Faless/ipv6_cleanupRémi Verschelde
Fixes and improvementes for IPv6 implementation.
2017-01-01Welcome in 2017, dear changelog reader!Rémi Verschelde
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!
2016-12-09IP_Address now handle IPv4 and IPv6 transparentlyFabio Alessandrelli
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)
2016-12-09Migrate int.IP_TYPE_ constants to IP.TYPE_Fabio Alessandrelli
2016-12-09Move V6ONLY flag selection inside helpersFabio Alessandrelli
2016-12-09Automatically map IPv4 address to IPv6 when neededFabio Alessandrelli
2016-12-09Use an instance variable for ip_type in raw socketsFabio Alessandrelli
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.
2016-10-30TCP/UDP Listen sockets can now be set to IPv6 onlyFabio Alessandrelli
2016-10-30Fix windows debugger connection problems.Fabio Alessandrelli
Unify network socket creation between platform. Ensure IPV6_V6ONLY flag is not set on sockets (allow IPv4 connection in IPv6 socket, dual-stack).
2016-10-26Fix PacketPeerUDP get_packet_port()Fabio Alessandrelli
Properly convert port field from network to system ordering on incoming packets.
2016-10-26Pass correct address size (ipv4,ipv6) to socket connect, bind, sendtoFabio Alessandrelli
The address size passed to network system calls now reflects the the actual IP type (v4 or v6). Fix Windows and OSX ipv6 sockets
2016-10-20added windows support for ipv6, cleaned up unix codeAriel Manzur
2016-10-18adding ipv6Ariel Manzur
2016-06-18Removed lots of printsDaniel J. Ramirez
2016-06-18Add missing license headers in our source files (#5255)Rémi Verschelde
Also removes a couple wrong Godot headers from third-party source files.
2015-11-19Fixed mistake where available buffer size would not be updated for each ↵Trond Abusdal
recvfrom-call in PacketPeerUDPWinsockPposix.
2015-11-09* Winsock UDP messages sent to an unavailable target causing WSAECONNRESET ↵Trond Abusdal
will no longer close the socket. * Ensured that unsigned<->signed conversion would not cause wrong buffer size values sent to recvfrom.
2015-11-09Fixed PacketPeerUDP getting wrongly closed due to recvfrom using ↵Trond Abusdal
rb.data_left instead of rb.space_left.
2015-05-25Haiku: fix building with UNIX_ENABLED.Kostadin Damyanov
2014-11-13UDP FixesJuan Linietsky
-=-=-=-=- Curse the day I decided to port UDP code, as it ended up being two nights of work. At least It's done now (I hope). -Fixed UDP Support, API seems stable -Added UDP Chat demo (chat that can lose your packets, heh) -Added helpers to areas and bodies to get list of collided bodies and contained bodies. -Sped up screen/viewport capture code. -Added code to save an image as PNG -Small fix so scripts register their singletons after modules did.
2014-11-123D Import Import & UDPJuan Linietsky
-=-=-=-=-=-=-=-=-=-=- -Animation Import filter support -Animation Clip import support -Animation Optimizer Fixes, Improvements and Visibile Options -Extremely Experimental UDP support.