summaryrefslogtreecommitdiff
path: root/core/io
AgeCommit message (Collapse)Author
2019-08-21Merge pull request #29871 from Faless/crypto/initial_prRémi Verschelde
More Crypto, SSL server, crt/key as Resource, HashingContext
2019-08-21Rewrite StreamPeerSSL with SSLContext helper classFabio Alessandrelli
connect_to_stream now accepts optional parameter to specify which certificates to trust. Implement accept_stream (SSL server) with key/cert parameters to specify the RSA key and X509 certificate resources.
2019-08-21Support for file not found in ConfigFile::Load and handle a few specific casesPouleyKetchoupp
EditorSettings::set_project_metadata: creates project_metadata.cfg if it doesn't exist EditorPlugin::get_config: removed (not used) Fixes #31444
2019-08-19Move CryptoCore to it's own folder.Fabio Alessandrelli
Crypto classes will be placed in core/crypto.
2019-08-17DirAccessPack: Fix dir_exists and file_exists for res:// pathsRémi Verschelde
Both methods check against containers using relative paths as index, so the `res://` part needs to be stripped. Fixes #26009.
2019-08-17Replace last occurrences of 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG'Rémi Verschelde
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.
2019-08-17Replace 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG' in 'core/' and 'editor/'Braden Bodily
Condensed some if and ERR statements. Added dots to end of error messages Couldn't figure out EXPLAINC. These files gave me trouble: core/error_macros.h, core/io/file_access_buffered_fa.h (where is it?), core/os/memory.cpp, drivers/png/png_driver_common.cpp, drivers/xaudio2/audio_driver_xaudio2.cpp (where is it?)
2019-08-12Remove redundant author doc commentsIAmActuallyCthulhu
2019-08-10Remove old doc comments in image_loader headerIAmActuallyCthulhu
2019-08-07Merge pull request #31077 from qarmin/coverity_bugsRémi Verschelde
Change some code proposed by Coverity and Cppcheck
2019-08-07Add some code changes/fixes proposed by Coverity and Clang Tidyqarmin
2019-08-05Fixed EOF flag not resetting on seek backTGRCDev
2019-07-23Fix some code found by Coverity Scan and PVS Studioqarmin
2019-07-20Changed some code showed in LGTM and Coverageqarmin
2019-07-08Add TCP connect timeout.Fabio Alessandrelli
Default timeout is 30 seconds (i.e. after 30 seconds of calling connect_to_host if the TCP peer is not connected the connection will error out). This value can be configured in project settings: `network/limits/tcp/connect_timeout_seconds`
2019-07-06Added release function to PoolVector::Access.Ibrahn Sahir
For clarity, assign-to-release idiom for PoolVector::Read/Write replaced with a function call. Existing uses replaced (or removed if already handled by scope)
2019-07-05Merge pull request #24086 from RandomShaper/bundle-pck-to-executableRémi Verschelde
Enhance game export
2019-07-04WebSocket module now uses wslay library.Fabio Alessandrelli
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.
2019-07-03Add embedded PCK option to PC platformsPedro J. Estébanez
The basic point is as in 2.1 (appending the PCK into the executable), but this implementation also patches a dedicated section in the ELF/PE executable so that it matches the appended data perfectly. The usage of integer types is simplified in existing code; namely, using plain `int` for small quantities.
2019-07-03Add TCP Server is_listening methodFabio Alessandrelli
2019-07-02Fix editor crash when StreamPeerSSL is unavilable.Fabio Alessandrelli
The fix for EditorNode is a bit hacky, but the handling of the buttons and features there is hacky too (based on enums that might not reflect the actual state).
2019-07-02CryptoCore class to access to base crypto utils.Fabio Alessandrelli
Godot core needs MD5/SHA256/AES/Base64 which used to be provided by separate libraries. Since we bundle mbedtls in most cases, and we can easily only include the needed sources if we so desire, let's use it. To simplify library changes in the future, and better isolate header dependencies all functions have been wrapped around inside a class in `core/math/crypto_base.h`. If the mbedtls module is disabled, we only bundle the needed source files independently of the `builtin_mbedtls` option. If the module is enabled, the `builtin_mbedtls` option works as usual. Also remove some unused headers from StreamPeerMbedTLS which were causing build issues.
2019-07-01Merge pull request #30126 from qarmin/remove_unnecessary_codeRémi Verschelde
Remove unnecessary code and add some error explanations
2019-07-01Remove unnecessary code and add some error explanationsqarmin
2019-06-29Merge pull request #29380 from bojidar-bg/16086-docs-default-valueRémi Verschelde
Add default values to the editor help, docs, and generated RST
2019-06-27Add default values to the editor help, docs, and generated RSTBojidar Marinov
Also, make spacing of "=" in the editor help a bit more consistent. Closes #16086
2019-06-27Add encrypted files support to ConfigFileVasiliy Makarov
Fix #26477 Add in ConfigFile this methods: load_encrypted(path, key) load_encrypted_pass(path, password) save_encrypted(path, key) save_encrypted_pass(path, password)
2019-06-27Merge pull request #29941 from qarmin/redundant_code_and_othersRémi Verschelde
Remove redundant code, possible NULL pointers and others
2019-06-26Some code changed with Clang-Tidyqarmin
2019-06-26doc: Document EncodedObjectAsID, expose its propertyRémi Verschelde
2019-06-21Merge pull request #29935 from Faless/net/get_if_multicast_prRémi Verschelde
Multicast, more network interfaces info
2019-06-21Multicast support in NetSocket/PacketPeerUDPFabio Alessandrelli
2019-06-21Implement IP.get_local_interfaces.Fabio Alessandrelli
Allow getting interfaces names and assigned names. On UWP this is not supported, and the function will return one interface for each local address (with interface name the local address itself).
2019-06-20Merge pull request #29283 from qarmin/fix_some_always_same_valuesRémi Verschelde
Remove always true/false values
2019-06-20Fix always true/false valuesqarmin
2019-06-19Made use of semicolons more consitent, fixed formattingJohnJLight
2019-06-18Unexpose subclasses of ResourceFormatLoader and -SaverRémi Verschelde
ResourceFormatLoader and ResourceFormatSaver are meant to be overridden to add support for different formats in ResourceLoader and ResourceSaver. Those should be exposed as they can be overridden in plugins. On the other hand, all predefined subclasses of those two base classes are only meant to register support for new file and resource types, but should not and cannot be used directly from script, so they should not be exposed. Also unexposed ResourceImporterOGGVorbis (and thus its base class ResourceImporter) which are editor-only.
2019-06-12Merge pull request #29306 from qarmin/small_code_fixesRémi Verschelde
Small fixes to unrechable code, possibly overflows, using NULL pointers
2019-06-11Fix error macro calls not ending with semicolonRémi Verschelde
It's not necessary, but the vast majority of calls of error macros do have an ending semicolon, so it's best to be consistent. Most WARN_DEPRECATED calls did *not* have a semicolon, but there's no reason for them to be treated differently.
2019-06-06Fix a random SSL crash I saw once.Hein-Pieter van Braam-Stewart
I don't know why this happened, I was debugging another issue. This should take care of it though.
2019-06-03Small fixes to unrechable code, possibly overflows, using NULL pointersqarmin
2019-06-03Fix errors when attempting to set UNIX permissions when unavailableHugo Locurcio
This makes exporting from Windows to Linux work again. This closes #29416.
2019-05-30Merge pull request #25148 from capnm/capnm-print-corrupt-image-pathRémi Verschelde
Print the path of a corrupt image
2019-05-30Properly unlock mutexqarmin
2019-05-29FileAccessEncrypted: Be more explicit on decryption failureRémi Verschelde
Fixes #24505. Supersedes #25278.
2019-05-21Merge pull request #29011 from zann1x/masterRémi Verschelde
Initialize padding on PoolByteArray serialization
2019-05-20Style: Fix issues with clang-format 8.0Rémi Verschelde
2019-05-19Initialize padding on PoolByteArray serializationLukas Zanner
2019-05-19Fix typos with codespellRémi Verschelde
Using codespell 1.15.0. Method: ``` $ cat > ../godot-word-whitelist.txt << EOF ang curvelinear doubleclick leapyear lod merchantibility nd numer ois ony que seeked synching te uint unselect webp EOF $ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po" $ git diff // undo unwanted changes ```
2019-05-12Better handle some self-RSET/RPC in MultiplayerAPIFabio Alessandrelli
Allow calling yourself via RPC/RSET if the mode allows it. Better error messages when you are not allowed to call yourself.