summaryrefslogtreecommitdiff
path: root/modules/websocket
AgeCommit message (Collapse)Author
2021-12-09Replace String comparisons with "", String() to is_empty()Nathan Franke
Also: - Adds two stress tests to test_string.h - Changes to .empty() on std::strings
2021-12-04Auto-Increment Debugger PortNathan Franke
Note: This PR also changes the port of the GDScript Language Server from 6008 to 6005. This opens enough ports above the debug port (6007) for this change to be useful.
2021-11-19wslay: Sync with upstream 45d22583bRémi Verschelde
https://github.com/tatsuhiro-t/wslay/commit/45d22583b488f79d5a4e598cc7675c191c5ab53f Mostly style changes, a couple new methods and fixes. Tweak file structure a bit.
2021-10-29Merge pull request #54344 from mhilbrunner/rpc-error-msgsFabio Alessandrelli
Websockets: Fix buffer size checks in put_packet(), silent failures/connection hangs
2021-10-29Websockets: Fix buffer size checks in put_packet()Max Hilbrunner
Also check the error return value of wslay_event_queue_msg()
2021-10-28Fix Macros -> Mactos typo in WEBSOCKETMACTOS_HMax Hilbrunner
2021-10-26Save all 64 bits of get_ticks_msec() in more casesMax Hilbrunner
2021-10-09Fix missing argument names in bindingsRémi Verschelde
While at it, tweak some boolean setters to use `p_enabled` for the bool. Also renames `draw_minimap()` to `set_draw_minimap()`.
2021-10-06Fix small typos regarding WebSocketPeerInfinixius
2021-09-30Use range iterators for `Map`Lightning_A
2021-09-28Merge pull request #52481 from Faless/net/4.x_native_peersFabio Alessandrelli
[Net] Extension system for network peers, webrtc.
2021-09-25Document Android permission requirements for network access where neededHugo Locurcio
2021-09-24[Net/Docs] Update extensions documentation.Fabio Alessandrelli
2021-09-24[Net] MultiplayerPeer cleanup, defaults.Fabio Alessandrelli
2021-09-20Don't generate empty doc sections and reduce code duplicationAaron Franke
2021-09-14Merge pull request #52226 from Faless/debugger/4.x_start_optionsRémi Verschelde
2021-09-08Multiplayer networking renames/simplificationMax Hilbrunner
Removes _networking_ prefix from some methods and members, now that multiplayer has been largely moved out of Node and SceneTree and is seperated into its own set of classes.
2021-09-07[Net] Move multiplayer to core subdir, split RPCManager.Fabio Alessandrelli
Move multiplayer classes to "core/multiplayer" subdir. Move the RPCConfig and enums (TransferMode, RPCMode) to a separate file (multiplayer.h), and bind them to the global namespace. Move the RPC handling code to its own class (RPCManager). Renames "get_rpc_sender_id" to "get_remote_sender_id".
2021-08-30Try other resolved IPs if one fails to connectHaoyu Qiu
2021-08-29[Editor] Editor debugger binds according to editor settings.Fabio Alessandrelli
2021-08-06HTML5: Fix warnings and re-enable `werror=yes` on CIRémi Verschelde
Add a missing call to disable warnings on a forked env for freetype's `sfnt.c`.
2021-08-04Merge pull request #51005 from Faless/mp/4.x_channelsRémi Verschelde
[Net] Implement RPC channels in MultiplayerAPI.
2021-08-01Merge pull request #51036 from winterpixelgames/master-ws-fixRémi Verschelde
WebsocketPeer outbound buffer fixes and buffer size query
2021-07-31Websocket peer outbound buffer fixes. Expose outbound buffered amount.Jordan Schidlowsky
2021-07-30[Net] Implement RPC channels in MultiplayerAPI.Fabio Alessandrelli
2021-07-30doc: Use self-closing tags for `return` and `argument`Rémi Verschelde
For the time being we don't support writing a description for those, preferring having all details in the method's description. Using self-closing tags saves half the lines, and prevents contributors from thinking that they should write the argument or return documentation there.
2021-07-29[Net] Add generate_unique_id to MultiplayerPeer.Fabio Alessandrelli
Used by ENetMultiplayerPeer and WebSocketServer to generate network IDs, and exposed to the user for p2p networks (e.g. WebRTCMultiplayerPeer) and custom MultiplayerPeer implementations.
2021-07-26Use Ref<T> references as iterators where relevantRémi Verschelde
And const when possible.
2021-07-25Fix various typos with codespellluz paz
Found via `codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,fave,findn,hist,inout,leapyear,lod,nd,numer,ois,ony,paket,seeked,sinc,switchs,te,uint`
2021-07-23Use C++ iterators for Lists in many situationsAaron Franke
2021-07-18Optimize StringName usagereduz
* Added a new macro SNAME() that constructs and caches a local stringname. * Subsequent usages use the cached version. * Since these use a global static variable, a second refcounter of static usages need to be kept for cleanup time. * Replaced all theme usages by this new macro. * Replace all signal emission usages by this new macro. * Replace all call_deferred usages by this new macro. This is part of ongoing work to optimize GUI and the editor.
2021-07-17Expose the resource name the client used to the websocket serverMeriipu
This information is exposed to the websocket server through the client_connected-signal. example.com/chat?id=10 gives the resource name "/chat?id=10"
2021-07-15Misc cleanup of header includesRémi Verschelde
Was looking for misuse of module headers without checking that the module is actually enabled and got carried away...
2021-07-13Implement the ability to disable classesreduz
* This PR adds the ability to disable classes when building. * For now it's only possible to do this via command like: `scons disable_classes=RayCast2D,Area3D` * Eventually, a proper UI will be implemented to create a build config file to do this at large scale, as well as detect what is used in the project.
2021-07-12[Net] Rename NetworkedMultiplayerPeer to MultiplayerPeer.Fabio Alessandrelli
2021-07-05Improve error reporting in WebSocketServerHugo Locurcio
This should make troubleshooting easier.
2021-06-30Protocol shadows a variable.K. S. Ernest (iFire) Lee
2021-06-29Merge pull request #49966 from Faless/net/4.x_ws_timeoutRémi Verschelde
[Net] Add WebSocketServer handshake_timeout property.
2021-06-28[Net] Add WebSocketServer handshake_timeout property.Fabio Alessandrelli
Allows customization of the maximum time a client is allowed to stay in the the "pending" state (i.e. awaiting HTTP handshake). This used to be 1 second by before, the new default is 3 seconds.
2021-06-28[Net] Fix WebSocketClient path parsing.Fabio Alessandrelli
Recent changes to parse_url caused the client to make invalid HTTP requests if no path was specified.
2021-06-19Rename `instance()`->`instantiate()` when it's a verbLightning_A
2021-06-18Merge pull request #49698 from aaronfranke/prop-no-usageRémi Verschelde
Add PROPERTY_USAGE_NONE and use it
2021-06-18Better format arguments in variant parserMichael Alexsander Silva Dias
2021-06-17Add PROPERTY_USAGE_NONE and use itAaron Franke
2021-06-11Rename Reference to RefCountedPedro J. Estébanez
2021-05-06Rename `IP_Unix`, `IP_Address` and `TCP_Server` to remove underscoresHugo Locurcio
2021-05-03Merge pull request #48205 from Faless/net/4.x_url_parsingFabio Alessandrelli
[Net] Implement String::parse_url for parsing URLs.
2021-04-30Add WebSocketMultiplayerPeer _incoming_packets check boundMaxStgs
2021-04-27Core: Drop custom `copymem`/`zeromem` definesRémi Verschelde
We've been using standard C library functions `memcpy`/`memset` for these since 2016 with 67f65f66391327b2967a20a89c3627e1dd6e84eb. There was still the possibility for third-party platform ports to override the definitions with a custom header, but this doesn't seem useful anymore.
2021-04-26[Net] Implement String::parse_url for parsing URLs.Fabio Alessandrelli
Splits the URL into (scheme, host, port, path). Supports both literal IPv4 and IPv6. Strip credentials when present (e.g. http://user:pass@example.com/). Use that function in both HTTPRequest and WebSocketClient.