| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
| |
Previously, m_proto_ver was set to the serialisation version
inside the legacy init packet.
Now, if the server doesn't send a protocol version (protocols < 25),
we set m_proto_ver to some value < 25 and > 0.
|
| |
|
|
|
|
|
| |
Fix grammar error and missing number conversion for version.
Also add deployed protocol to log line.
|
| |
|
|
|
|
|
|
|
|
| |
* Use enum for GENERIC_CMD_*
* Rename m_attachements to attachement_parent_ids (public member and clearer name)
* Rename GENERIC_CMD_SET_ATTACHMENT to GENERIC_CMD_ATTACH_TO
* USHRT_MAX + 1 buffer sizes to prevent overflows as @kahrl suggested
* Remove unneccessary m_id from GenericCAO (shadowing protected superclass member for no reason) as @kahrl suggested
|
|
|
|
| |
Thanks to @UltimateNate for pointing this out :)
|
|
|
|
|
|
| |
Also, clean up surrounding code style
Replace by-value parameter passing with const refs when possible
Fix post-increment of iterators
|
|
|
|
|
| |
Its a possible mistake to log in to a server with twice the same name.
Before, it triggered a server wide error message, now it logs to actionstream.
|
|
|
|
| |
Also rename method to better match what it does.
|
|
|
|
| |
This enables srp.
|
|
|
|
|
|
|
| |
Adds everything needed for SRP (and everything works too),
but still deactivated, as protocol v25 init packets aren't final yet.
Can be activated by changing the LATEST_PROTOCOL_VERSION header to 25
inside networkprotocol.h.
|
| |
|
|
|
|
| |
Also fix std::logic_error when server::DenyAccess() is used with only two arguments.
|
|
|
|
|
|
|
| |
Change types for passed password from wstring to string, which removes converting
back and forth in most cases. Move the narrow_to_wide conversion, where its neccessary,
closer to irrlicht. Remove trailing spaces in guiPasswordChange.cpp. Make parameters for
translatePassword passed as const reference.
|
| |
|
|
|
|
|
|
| |
exception.
Also set the packet size at creation not when pushing rawString, no functional change
|
| |
|
|
|
|
| |
This seems to be a debug message which has been forgotten to be removed.
|
|
|
|
| |
which can be unreliable
|
|
|
|
|
|
|
|
|
|
|
|
| |
Move debug streams to log.cpp|h
Move GUI-related globals to clientlauncher
Move g_settings and g_settings_path to settings.cpp|h
Move g_menuclouds to clouds.cpp|h
Move g_profiler to profiler.cpp|h
|
|
|
|
| |
Use a common function to check the reading offset
|
|
|
|
|
|
|
| |
Because we get a Buffer<u8> from ConnectionEvent, don't convert it to SharedBuffer<u8> and return it to Server/Client::Receive which will convert it to NetworkPacket
Instead, put the Buffer<u8> directly to NetworkPacket and return it to packet processing
This remove a long existing memory copy
Also check the packet size directly into Connection::Receive instead of packet processing
|
|
|
|
| |
remove command from queue on success, else do nothing, instead of remove command from queue and push it front on success
|
| |
|
| |
|
|
|
|
| |
on front, not back
|
|
|
|
| |
This removes a lot of narrow/wide conversions where a wide string was never used.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Combine client and server man pages.
* Update unit test options and available databases in man page.
* Add `--worldname` to man page.
* Fix a bunch of places where `"Minetest"` was used directly instead of `PROJECT_NAME`.
* Disable server build by default on all operating systems.
* Make `ENABLE_FREETYPE` not fail if FreeType isn't found.
* Enable LevelDB, Redis, and FreeType detection by default.
* Remove the `VERSION_PATCH_ORIG` hack.
* Add option to search for and use system JSONCPP.
* Remove broken LuaJIT version detection.
* Rename `DISABLE_LUAJIT` to `ENABLE_LUAJIT`.
* Rename `minetest_*` variables in `version.{h,cpp}` to `g_*`.
* Clean up style of CMake files.
|
|
|
|
|
|
|
|
| |
SendInventory per inventory modification
Client doesn't like to receive multiples SendInventory for one action, this can trigger glitches on clients (sometimes due to incorrect UDP packet ordering due to UDP protocol)
This fix issue #2544
|
|
|
|
|
|
| |
NetworkPacket::oldForgePacket returns Buffer instead of SharedBuffer and is used in ConnectionCommand instead of Connection::Send
This remove the NetworkPacket buffer => SharedBuffer => Buffer copy. Now NetworkPacket => Buffer
|
|
|
|
| |
This call was missing when change looping to triggering SendInventory: 1b2f64473ed4f222d3b7f02df853730d4382105e
|
| |
|
|
|
|
|
|
| |
pointers. Also store the reserved byte to use API properly
Fixes #2509
|
|
|
|
|
| |
* Requested by @Zeno-
* Approved by @nerzhul
|
|
|
|
| |
* Mods can do setHP function to do damages and override the enable_damage value sometimes
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* TOSERVER_INIT and TOCLIENT_INIT renamed to _LEGACY
* TOSERVER_PASSWORD merged from dev-0.5, can use protocol v24 and v25
* TOCLIENT_ACCESS_DENIED merged from dev-0.5, can use protocol v24 and v25, with normalized strings an a custom id for custom errors
* new TOSERVER_INIT packet only send MT version, supported compressions, protocols and serialization, this permit to rework everything later without break the _INIT packet
* new TOSERVER_AUTH packet which auth the client
* new TOCLIENT_HELLO packet which send server serialization version atm
* new TOCLIENT_AUTH_ACCEPTED which is send when TOCLIENT_AUTH was okay. After this packet, the client load datas from servers, like after TOCLIENT_INIT_LEGACY packet
|
|
|
|
|
|
|
| |
TOCLIENT_DELETE_PARTICLESPAWNER
* Rename the handlers from _Legacy to regular, because here we can use same handlers
* Fix some packet names and pseudo handlers
|
|
|
|
| |
between new network changes and old network clients
|
| |
|
|
|
|
|
|
| |
doesn't breath.
Add Player::isDead function to check player is dead
|
| |
|
|
|
|
| |
NDEBUG is defined), replace those usages with persistent alternatives
|
| |
|
|
|
|
| |
fillMediaCache, sendRequestedMedia, sendMediaAnnouncement and related functions
|
| |
|
|
|
|
| |
for better perfs
|
|
|
|
| |
searching it via peer_id
|
|
|
|
| |
* This permit to cleanup the player checking loop
|
|
|
|
|
|
| |
* Call UpdateCrafting into SendInventory because this functions is only called before SendInventory
* Use Player* instead of peer_id for UpdateCrafting because SendInventory already has the Player* pointer, then don't loop for searching Player* per peer_id
* m_env_mutex don't need to be used with this modification because it's already locked before the calls
|