summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* Use httpfetch_async in serverlist announce codeKahrl2013-12-13
|
* Implement urlencode and urldecodeKahrl2013-12-13
|
* Rewrite client media download and support hash-based remote downloadKahrl2013-12-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move most of the media-related code in client.cpp into a new class ClientMediaDownloader (clientmedia.cpp, clientmedia.h). Among other things, this class does the following things: - Download [remote_server][sha1] instead of [remote_server][name]. This is to support servers that provide the same file name with different contents. - Initially fetch [remote_server]index.mth. This file should follow the Minetest Hashset format (currently version 1) and contain a list of SHA1 hashes that exist on the server. - The list of needed SHA1s is uploaded (via HTTP POST) when index.mth is requested, so servers can optionally narrow down the list to the needs of the client. - If index.mth is missing (HTTP response code 404), we enter compat mode, fetching [remote_server][name] as before this commit. - remote_server can now contain multiple servers, separated by commas. The downloader code attempts to split requests between the different servers, as permitted by each server's index.mth. If one server claims to have a file but actually doesn't (or something fails), we ask a different server that also claims to have it. - As before, when none of the remote servers provide a particular file, we download it via the conventional method, i.e. using the minetest protocol: TOSERVER_REQUEST_MEDIA / TOCLIENT_MEDIA. - Bugfix: Every downloaded file's SHA1 is now verified against the SHA1 announced by the minetest server (before loading it and inserting it into the file cache). - Bugfix: Only send TOSERVER_RECEIVED_MEDIA when we actually have all media. This should fix #863.
* Implement httpfetch module and initialize it from main()Kahrl2013-12-13
| | | | | | | | Add curl_parallel_limit setting that will replace media_fetch_threads in a later commit. Fix a typo in MutexedQueue::pop_back() that made it impossible to compile code that used this function. (Noticed this while implementing httpfetch.)
* Fix a bug in GenericCAO GENERIC_CMD_UPDATE_POSITION parsing.Ilya Zhuravlev2013-12-13
|
* Make line_of_sight return blocking node positionstujones112013-12-12
|
* Add 'on_prejoinplayer' callbackkaeza2013-12-12
|
* Add configurable font shadow.Ilya Zhuravlev2013-12-12
|
* Implement search tab and version pickersapier2013-12-11
|
* Check if width, height or start index of a list[] is negativePilzAdam2013-12-09
|
* Optimize shaders code. Add settings at compile time.RealBadAngel2013-12-09
|
* Mapgen Indev: Fix segfault in cave generation due to uninitialized variablekwolekr2013-12-08
|
* Fix shaders on some GPUsNovatux2013-12-08
|
* Fix leak and possible segfault in minetest.set_mapgen_paramskwolekr2013-12-08
|
* EmergeManager: Fix Lua mapgen override param handlingkwolekr2013-12-08
|
* Dungeongen: Create dungeon gen tuneables; add desert temples for Mapgen V6kwolekr2013-12-07
|
* Move script_run_callbacks to LuaShadowNinja2013-12-07
|
* Fix paralax occlusion settingShadowNinja2013-12-06
|
* Fix win32 jthread implementationsapier2013-12-06
|
* Improve (re)spawn, add cache_block_before_spawn and max_spawn_height settingssweetbomber2013-12-05
|
* Use a table in set_physics_override()PilzAdam2013-12-03
|
* Add sneak and sneak_glitch to set_physics_override()PilzAdam2013-12-03
|
* Fix LevelDB mapsSfan52013-12-03
|
* Shaders rework.RealBadAngel2013-12-03
|
* Dont move item back when not clicking on a slotPilzAdam2013-12-03
|
* Rename names -> can_see_far_names in announceproller2013-12-03
|
* Fix broken async locking in release buildsapier2013-12-03
|
* Remove link to #, add unlimited_player_transfer_distance to announceproller2013-12-03
|
* Fix MinGW buildSfan52013-12-01
|
* Cleanup jthread and fix win32 buildsapier2013-12-01
|
* Cavegen: Fix possible out-of-bounds heightmap accesskwolekr2013-12-01
|
* Decoration: Add schematic Y-slice probability supportkwolekr2013-12-01
|
* Fix log threadname lookup handling not beeing threadsafesapier2013-11-30
|
* Add error handler to async stepShadowNinja2013-11-30
|
* Optimize table creationShadowNinja2013-11-30
|
* Add minetest.swap_nodeNovatux2013-11-30
|
* Fix MSVC build.Ilya Zhuravlev2013-11-30
|
* LuaVoxelManip: Add area parameters back to calc_lighting and set_lighting, ↵kwolekr2013-11-30
| | | | made optional this time; also fixed a slight bug with night values being ignored
* LuaVoxelManip: Add get_light_data() and set_light_data()kwolekr2013-11-30
|
* Fixed potential NULL pointer and leak when setting node metadataMetaDucky2013-11-29
|
* Cavegen: Respect is_ground_content MapNode setting; fix some code formatting ↵kwolekr2013-11-29
| | | | issues
* Fix broken thread stop handlingsapier2013-11-30
|
* Fix old gcc buildsapier2013-11-29
|
* Fix modstore/favourites hang by adding asynchronous lua job supportsapier2013-11-29
|
* Split server/client port setting to avoid port number clashes in mainmenusapier2013-11-28
|
* Don't use variable length arraysShadowNinja2013-11-28
|
* Rollback fixes and get_node_actionsShadowNinja2013-11-27
|
* SQLite rollbackMario Barrera2013-11-27
|
* Fix line_of_sight (AGAIN)sapier2013-11-25
|
* Don't continue trying to deserialize blank block datakwolekr2013-11-24
|