summaryrefslogtreecommitdiffstats
path: root/modules/websocket
Commit message (Collapse)AuthorAgeFilesLines
* Update docs to version 4.0clayjohn2020-01-314-4/+4
|
* Disable Nagle's algorithm for WebSocket TCP.Fabio Alessandrelli2020-01-289-0/+27
| | | | | | This should greatly decrease latency for the most common use cases. A new function WebSocketPeer::set_no_delay will allow to configure it if so desired.
* Merge pull request #35516 from Faless/ws/fix_latency_32Rémi Verschelde2020-01-263-4/+6
|\ | | | | Lower WebSocket latency, fixes.
| * Lower WebSocket latency, fixes.Fabio Alessandrelli2020-01-243-4/+6
| | | | | | | | | | WSLPeer now tries to flush packet queue after put_packet call. WSLServer::listen correctly returns TCP_Server::listen return value.
* | doc: Drop unused 'category' property from headerRémi Verschelde2020-01-264-4/+4
| | | | | | | | | | | | | | | | | | | | We already removed it from the online docs with #35132. Currently it can only be "Built-In Types" (Variant types) or "Core" (everything else), which is of limited use. We might also want to consider dropping it from `ClassDB` altogether in Godot 4.0.
* | doc: Misc updates for AnimationNode* and othersRémi Verschelde2020-01-231-1/+1
|/ | | | | | | | | | | | | - Add some missing descriptions. - Add links to tutorials for ARVR and AnimationTree. - Style fixes. - Engine changes: * Make `AnimationNodeTransition.input_<number>` properties internal so that they don't appear in the docs. They still appear in the inspector based on the actual number of inputs requested. * Drop unimplemented `CPUParticles.flatness`. It's only used for 3D particles in `ParticlesMaterial`, and thus only relevant for `CPUParticles3D`.
* Fix MultiplayerAPI crash when peer impl misbehave.Fabio Alessandrelli2020-01-211-1/+1
| | | | | Also fix WebSocketMultiplayer::get_available_packet_count() return value when peer is not configured to use the multiplayer API.
* Validate input in (CPU)Particles set_emission_shape()Rémi Verschelde2020-01-161-1/+1
| | | | | | Fixes #29777. Co-authored-by: Cameron Reikes <cameronreikes@gmail.com>
* Prevent GDScript language server from listening to external hosts by defaultHoukime2020-01-154-1/+24
| | | | | | | | | | * Add bind_ip property to WebSocketServer defaulting to "*" (listen to everyone) * Set default for GDscript Language Server to listen only to localhost Fixes potential security issue with GDScript language server being exposed to the broad net by default. Since it is the server which primary usage is to provide utility to the local editor there is no need to expose it.
* Update documentation to reflect HTML5 limitations.Fabio Alessandrelli2020-01-142-2/+4
|
* Update copyright statements to 2020Rémi Verschelde2020-01-0124-48/+48
| | | | | | | | | | | Happy new year to the wonderful Godot community! We're starting a new decade with a well-established, non-profit, free and open source game engine, and tons of further improvements in the pipeline from hundreds of contributors. Godot will keep getting better, and we're looking forward to all the games that the community will keep developing and releasing with it.
* WSLPeer now prevents receiving data after close.Fabio Alessandrelli2019-12-212-1/+4
| | | | | Used to spit error and report empty packets when connection was still half-closed (waiting for confirmation from other end).
* Fix Visual Studio throwing C4334 warning.Marcel Admiraal2019-11-151-1/+1
|
* Trim protocol field from spaces in WS classes.Fabio Alessandrelli2019-10-162-5/+15
|
* Fix HTML5 build after 67a4c30.Fabio Alessandrelli2019-10-154-5/+11
| | | | I messed up a rebase and a commit was partly skipped
* doc: Sync classref with current sourceRémi Verschelde2019-10-111-2/+2
|
* Document all this new improvements.Fabio Alessandrelli2019-10-092-0/+31
|
* Custom headers support in WebSocketClient.Fabio Alessandrelli2019-10-0910-22/+30
| | | | | This commit also converts all PoolVector<String> parameters to `const Vector<String>` in both WebSocketServer and WebSocketClient.
* Implement WebSocketServer SSL support.Fabio Alessandrelli2019-10-094-1/+75
|
* WebSocketClient can now use custom SSL certificateFabio Alessandrelli2019-10-094-2/+26
| | | | Via the `trusted_ssl_certificate` property.
* Re-implement WebSocket get host/port.Fabio Alessandrelli2019-10-097-13/+19
| | | | Was lost during library switch
* doc: Fix parsing of self-closing XML tagsRémi Verschelde2019-09-241-2/+2
| | | | | | | Follow-up to #31925, `<member />` tags just before `</members>` would cause a parsing issue, and we'd never notice that we're no longer parsing members. Also added space before closing `/>`.
* Run doctool after overridden properties changesBojidar Marinov2019-09-041-0/+4
|
* Style: Fix copyright headers in new filesRémi Verschelde2019-08-281-1/+1
|
* Merge pull request #29871 from Faless/crypto/initial_prRémi Verschelde2019-08-211-1/+1
|\ | | | | More Crypto, SSL server, crt/key as Resource, HashingContext
| * Move CryptoCore to it's own folder.Fabio Alessandrelli2019-08-191-1/+1
| | | | | | | | Crypto classes will be placed in core/crypto.
* | Merge pull request #31483 from Faless/ws/fix_double_relayRémi Verschelde2019-08-201-8/+2
|\ \ | | | | | | Fix WebSocketServer relaying message twice.
| * | Fix WebSocketServer relaying message 2 times.Fabio Alessandrelli2019-08-191-8/+2
| |/ | | | | | | | | | | | | | | | | The WebSocketMultiplayerPeer was relaying the same message two times, both in _server_relay and _process_multiplayer (which was only supposed to store the packet, given the server was one of the destination). _process_multiplayer now only store the packet, and calls _server_relay which will relay the message to other clients if needed.
* / WebSocketServer now sanitize destination peers.Fabio Alessandrelli2019-08-191-1/+4
|/ | | | | | | When relaying messages in multiplayer mode. Could cause a crash in case a malicious client sends a bogus packet and for those cases where a peer has just disconnected and a message arrive from another peer with the disconnected one as destination.
* Replace last occurrences of 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG'Rémi Verschelde2019-08-172-28/+23
| | | | | | | | | | The last remaining ERR_EXPLAIN call is in FreeType code and makes sense as is (conditionally defines the error message). There are a few ERR_EXPLAINC calls for C-strings where String is not included which can stay as is to avoid adding additional _MSGC macros just for that. Part of #31244.
* Replace 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG' in rest of 'modules/'Robin Hübner2019-08-124-61/+23
|
* Fix WebSocketClient crash when unref during signalFabio Alessandrelli2019-07-281-6/+6
| | | | | Always call disconnect before emitting signals, to avoid calling it on a freed object if the user decides to unreference it in a signal.
* Fix WebSocketClient consuming data during hanshakeFabio Alessandrelli2019-07-081-0/+1
| | | | | Was missing a break of the while loop on connection. This potentially caused early data frames to be trashed.
* Merge pull request #30419 from Faless/ws/wslay_server_protoRémi Verschelde2019-07-082-8/+31
|\ | | | | (Re-)Implement subprotocols in websocket server.
| * (Re-)Implement subprotocols in websocket server.Fabio Alessandrelli2019-07-082-8/+31
| |
* | Fixes minor issues found by static analyzerqarmin2019-07-072-2/+2
|/
* Optimize header reads (avoid extra allocs)Fabio Alessandrelli2019-07-044-46/+63
|
* Remove libwebsocket. No longer used, yay!Fabio Alessandrelli2019-07-0410-1342/+5
|
* WebSocket module now uses wslay library.Fabio Alessandrelli2019-07-0410-4/+1299
| | | | | | | | | | Both client and server are supported on native builds (as usual). SSL server is still not supported, but will soon be possible with this new library. The API stays the same, we just need to work out potential issues due to this big library switch.
* SCons: Use CPPDEFINES instead of CPPFLAGS for pre-processor definesRémi Verschelde2019-07-031-1/+1
| | | | | | | | It's the recommended way to set those, and is more portable (automatically prepends -D for GCC/Clang and /D for MSVC). We still use CPPFLAGS for some pre-processor flags which are not defines.
* Proofread and improve the whole class referenceHugo Locurcio2019-06-274-27/+33
| | | | | | | | | | | | | - Document a few more properties and methods - Add more information to many classes - Fix lots of typos and gramar mistakes - Use [code] tags for parameters consistently - Use [b] and [i] tags consistently - Put "Warning:" and "Note:" on their own line to be more visible, and make them always bold - Tweak formatting in code examples to be more readable - Use double quotes consistently - Add more links to third-party technologies
* doc: Replace all [code]CONSTANT[/code] by new [constant CONSTANT] hyperlinksRémi Verschelde2019-06-271-1/+1
|
* Some code changed with Clang-Tidyqarmin2019-06-261-1/+1
|
* Expose WebSocket set_buffers and document it.Fabio Alessandrelli2019-06-153-0/+20
|
* Allow setting websocket buffers sizes internally.Fabio Alessandrelli2019-06-1510-0/+40
| | | | Needed by LSP.
* Revert "Update libwebsockets to 3.1 (plus UWP patch)"Fabio Alessandrelli2019-05-012-64/+58
| | | | This reverts commit 90210c48627692d281554d6185b5db17a86c852a.
* SCons: Always use env.Prepend for CPPPATHRémi Verschelde2019-04-301-3/+3
| | | | | | Include paths are processed from left to right, so we use Prepend to ensure that paths to bundled thirdparty files will have precedence over system paths (e.g. `/usr/include` should have lowest priority).
* SCons: Review uses of CCFLAGS, CXXFLAGS and CPPFLAGSRémi Verschelde2019-04-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Many contributors (me included) did not fully understand what CCFLAGS, CXXFLAGS and CPPFLAGS refer to exactly, and were thus not using them in the way they are intended to be. As per the SCons manual: https://www.scons.org/doc/HTML/scons-user/apa.html - CCFLAGS: General options that are passed to the C and C++ compilers. - CFLAGS: General options that are passed to the C compiler (C only; not C++). - CXXFLAGS: General options that are passed to the C++ compiler. By default, this includes the value of $CCFLAGS, so that setting $CCFLAGS affects both C and C++ compilation. - CPPFLAGS: User-specified C preprocessor options. These will be included in any command that uses the C preprocessor, including not just compilation of C and C++ source files [...], but also [...] Fortran [...] and [...] assembly language source file[s]. TL;DR: Compiler options go to CCFLAGS, unless they must be restricted to either C (CFLAGS) or C++ (CXXFLAGS). Preprocessor defines go to CPPFLAGS.
* doc: Drop unused <demos> tagRémi Verschelde2019-04-194-8/+0
|
* Move IDHandler JS module to platform from WebsockFabio Alessandrelli2019-04-121-19/+0
|