Commit Graph

3873 Commits

Author SHA1 Message Date
Arvid Norberg 3ef9190b01 fix export for settings_map symbol for python binding 2012-02-25 08:02:52 +00:00
Arvid Norberg f221b3d931 export session_settings_map and fix rss issue in client_test 2012-02-24 16:11:31 +00:00
Arvid Norberg ad779a569c fix windows build 2012-02-23 09:13:18 +00:00
Arvid Norberg 14287b8a7b use UNC paths on windows by default 2012-02-23 06:46:23 +00:00
Arvid Norberg 6c395cedee fix build for boost < 1.47 2012-02-23 04:32:50 +00:00
Arvid Norberg f1365a7a52 fail properly if NtSetFileInformation cannot be loaded 2012-02-22 09:29:07 +00:00
Arvid Norberg 28e74a79b7 RSS fixes (exponential back-off), handling feed errors with retries 2012-02-22 08:26:42 +00:00
Arvid Norberg 6627ae86d6 fixed integer overflow in file_storage::map_file 2012-02-21 07:43:25 +00:00
Arvid Norberg e071bf113e fixed connection_queue invariant check issue on shutdown 2012-02-21 06:47:48 +00:00
Arvid Norberg bcf1d6eee8 fixed upload_mode assert 2012-02-21 06:46:36 +00:00
Arvid Norberg 5e4b8f785d add missing state update calls when queue position changes 2012-02-21 05:59:38 +00:00
Arvid Norberg 8bb6635c94 improved rss unit test and fixed one incompatibility. added feature to save which feed items have been added, in order to not re-add them 2012-02-21 03:14:54 +00:00
Arvid Norberg d24a2e30fc rss feed fixes 2012-02-20 23:44:34 +00:00
Arvid Norberg 75fce84ce4 added unit test for RSS feeds and fixed a parsing bug 2012-02-20 07:51:36 +00:00
Arvid Norberg 079a8f8314 ignore failures when asking for local address of sockets and parsing a string into an IP address 2012-02-20 04:13:39 +00:00
Arvid Norberg 065d75b02d fix bug in file storage unit test, and the bug causing mapped files to not be restored correctly from resume files 2012-02-19 19:00:52 +00:00
Arvid Norberg 92992c7eac fix upnp snprintf issue 2012-02-18 20:35:06 +00:00
Arvid Norberg 5a23d04143 fix some clang warnings 2012-02-18 08:23:48 +00:00
Arvid Norberg cde80acbde fixed UDP socket error handling on windows 2012-02-17 18:23:47 +00:00
Arvid Norberg d9db8e20f5 fix another pad file corner case 2012-02-17 07:19:54 +00:00
Arvid Norberg 1244ae8894 remove left-over debug printf from bdecoder 2012-02-17 06:52:08 +00:00
Arvid Norberg b1c59f37c0 fix assert_fail export 2012-02-16 18:24:53 +00:00
Arvid Norberg a9ee05bb25 export assert_fail 2012-02-16 10:38:43 +00:00
Arvid Norberg d5f51f60ab fix issue introduced with updated disconnect-redundant logic for metadata-only seeding 2012-02-16 10:06:21 +00:00
Arvid Norberg d7d4da5b80 fix the fix 2012-02-16 08:51:14 +00:00
Arvid Norberg 71c7956645 fix warnings 2012-02-16 06:12:36 +00:00
Arvid Norberg 91df5d1894 fix out-of-bounds memory access in to_string 2012-02-16 03:54:56 +00:00
Arvid Norberg 35ea214124 fix off-by-one bug in DHT node-ID calculation 2012-02-16 03:51:39 +00:00
Arvid Norberg 47781bf2c5 cleanup, fix warnings 2012-02-15 10:57:49 +00:00
Arvid Norberg eecbb8a0f2 more metadata invariant fixes for edge cases 2012-02-10 16:37:50 +00:00
Arvid Norberg a31134d4a4 fix some invariant check failures in metadata transfer edge cases 2012-02-10 07:31:40 +00:00
Arvid Norberg c384d00dbf make bdecoder more robust when encountering errors (leave the resulting tree consistent) 2012-02-10 04:19:11 +00:00
Arvid Norberg be339c244f fix invalid invariant check 2012-02-09 07:46:23 +00:00
Arvid Norberg 98b3e6eb74 cleanup 2012-02-09 06:56:16 +00:00
Arvid Norberg 679abf2e57 this time, actually remove the encrypted torrent (AES-256 encrypted peer connections) 2012-02-09 06:47:22 +00:00
Arvid Norberg f7b5c10b2b add asserts to try to catch crash in peer_connection::received_valid_data 2012-02-09 06:24:58 +00:00
Arvid Norberg 8b459a27bd remove 'encrypted peer connections' feature (ssl is a better idea) 2012-02-09 06:23:58 +00:00
Arvid Norberg 94a1cae4a3 don't disconnect peers that don't have metadata 2012-02-07 09:18:07 +00:00
Arvid Norberg a6b5f761e8 rename is_local to is_outgoing and m_active to m_outgoing 2012-02-07 03:46:21 +00:00
Arvid Norberg c82695ef8e fix negative file size to add_file 2012-02-07 03:45:13 +00:00
Arvid Norberg 8d7940d47e clean up string constness issue 2012-01-29 23:05:07 +00:00
Arvid Norberg c77ca19140 fix shutdown issue when building without SSL 2012-01-29 23:04:22 +00:00
Arvid Norberg 639039a94e attempt to fix TOS setting (IP type of service) 2012-01-29 20:59:20 +00:00
Arvid Norberg 89ee8463c6 properly authenticate web seeds and trackers over SSL 2012-01-29 02:27:55 +00:00
Arvid Norberg 5d13327fb0 fix typo 2012-01-27 06:21:19 +00:00
Arvid Norberg 7741b732de fixed crash when loading malformed resume file 2012-01-27 05:08:06 +00:00
Arvid Norberg f13a91d8a8 support backtraces on windows 2012-01-26 10:33:39 +00:00
Arvid Norberg 6e9ef9edab fix connection asserts 2012-01-25 07:58:39 +00:00
Arvid Norberg 818620a5a8 fixed release build 2012-01-23 05:14:12 +00:00
Arvid Norberg 1a32205944 graceful shutdown of uTP sockets 2012-01-23 05:02:12 +00:00
Arvid Norberg dce8b3cc1a improve seed rank calculation 2012-01-23 01:57:40 +00:00
Arvid Norberg 5fc9224072 remove invalid assert 2012-01-22 21:24:51 +00:00
Arvid Norberg f23607bc05 make sparse_end support unbuffered files 2012-01-21 23:24:24 +00:00
Arvid Norberg 4706807300 fix issue with outgoing connections not being tied to a torrent 2012-01-21 21:29:22 +00:00
Arvid Norberg 7f90a241b6 don't let hung outgoing connection attempts block incoming connections 2012-01-21 09:05:34 +00:00
Arvid Norberg 5c8d476022 fix http_connection timeout (improves shutdown delay) 2012-01-21 08:18:41 +00:00
Arvid Norberg a478fcaf10 fix bug causing shutdown delays 2012-01-20 08:04:10 +00:00
Arvid Norberg ef1d8b5921 fix build 2012-01-20 06:07:19 +00:00
Arvid Norberg ed56520d24 more asserts around state updates 2012-01-20 05:40:32 +00:00
Arvid Norberg 88c5b35826 add asio debugging to the async shutdown of ssl sockets 2012-01-20 04:41:54 +00:00
Arvid Norberg 88012b6a1c log uTP states to stats log 2012-01-17 03:11:16 +00:00
Arvid Norberg d52eb9ed19 fixed release asserts issue in kademlia code 2012-01-16 22:48:43 +00:00
Arvid Norberg ae90a8f85e verify that torrent names matches the DNS name in its certificate (RFC 2818-style). Fix issues that was breaking SSL support and tidy up a bit 2012-01-15 23:34:43 +00:00
Arvid Norberg 4a40e68a82 landed ssl branch back into trunk 2012-01-14 16:04:25 +00:00
Arvid Norberg dd2db79896 fix overflow bug in progress_ppm field 2012-01-09 14:13:24 +00:00
Arvid Norberg 23c477142e merged integer overflow fix from aio branch 2012-01-05 21:11:55 +00:00
Arvid Norberg 61e8d3dd49 improved peer exchange performance by sharing incoming connections which advertize listen port 2012-01-04 20:49:54 +00:00
Arvid Norberg 315ff0bb83 exporting min_memory_usage() and high_performance_seed() functions from DLL 2012-01-04 12:36:58 +00:00
Arvid Norberg 2967468a8b fixed overflow in assert 2011-12-30 21:32:27 +00:00
Arvid Norberg 152cee19f1 add compile-time feature to enable logging of all peer requests 2011-12-29 12:15:29 +00:00
Arvid Norberg fcab6a257f fix post_torrent_update issue for checking torrents 2011-12-25 12:16:04 +00:00
Arvid Norberg 91b5fde1e2 don't recalculate auto managed files when session is paused 2011-12-24 20:15:22 +00:00
Arvid Norberg ec5555940b fix integer overflow assert 2011-12-24 20:13:51 +00:00
Arvid Norberg 08523e3855 fix state update for checking torrents (when using post_torrent_updates()) 2011-12-24 20:12:34 +00:00
Arvid Norberg 9412506df7 restore assignment removed by mistake 2011-12-23 20:40:13 +00:00
Arvid Norberg c2b8e869f1 one more recalculate_auto_manage postponing fix 2011-12-23 20:02:59 +00:00
Arvid Norberg f60ea6a4a9 support queue positions greater than 32768 2011-12-23 19:30:23 +00:00
Arvid Norberg 231fc30e13 postpone recalculate auto-managed torrents when changing many torrents state 2011-12-23 17:16:14 +00:00
Arvid Norberg d7103ab5b0 updated client_test to use post_torrent_updates() 2011-12-23 05:36:13 +00:00
Arvid Norberg 2877903e75 replaced std::map with boost::unordered_map for torrent list, to scale better with many torrents 2011-12-21 21:21:19 +00:00
Arvid Norberg e47a1eb5b2 fix state subscriptions for checking torrents 2011-12-19 05:55:38 +00:00
Arvid Norberg 7f3aac3959 fix issue with unchoke_slots_limit not preserving its value correctly 2011-12-19 05:53:11 +00:00
Arvid Norberg ef724014aa deprecated per-peer rate limits (and removed them from libtorrent_aio) 2011-12-18 12:52:09 +00:00
Arvid Norberg 78f16cedd9 deprecate torrent::set_ratio 2011-12-18 07:18:42 +00:00
Arvid Norberg 0370fb7632 don't filter local peers received from a non-local tracker 2011-12-12 07:03:51 +00:00
Arvid Norberg 7ee42393a5 simplified DHT parsing a bit 2011-12-01 04:01:36 +00:00
Arvid Norberg 8e8f798905 get rid of read-recurse hack 2011-11-30 20:07:18 +00:00
Arvid Norberg cc6bc5ba17 back-out attempt to make disk cache hits faster. it corrupts data 2011-11-28 17:51:14 +00:00
Arvid Norberg a3f0c04090 fix windows web seed path divider issue with recent web seeding feature 2011-11-28 11:22:51 +00:00
Arvid Norberg c4dded04ca fixed small memory leak in DHT 2011-11-28 11:11:29 +00:00
Arvid Norberg 27b25017f2 fix bug in policy::erase_peers and simplified the logic some 2011-11-28 09:55:00 +00:00
Arvid Norberg 47e81ff90b fixed uninitialized counter for stats logging 2011-11-28 01:27:55 +00:00
Arvid Norberg 413c04abcf fixed windows network path recognition issue 2011-11-27 10:23:50 +00:00
Arvid Norberg f979f7a77b make receive_buffer() not return a range exceeding the actual buffer 2011-11-27 01:08:28 +00:00
Arvid Norberg c3695d9fbb add have_piece function to torrent_handle 2011-11-27 00:01:13 +00:00
Arvid Norberg c279870516 add web seed support for torrents with pad files 2011-11-26 20:48:31 +00:00
Arvid Norberg ce90e17e2b web seeding fix for multi file torrents with a single file 2011-11-25 21:05:39 +00:00
Arvid Norberg faf11fc27d web seed fix 2011-11-25 10:56:33 +00:00
Arvid Norberg 6aba061cb8 fix pad file bug in create_torrent and amend docs about pad files 2011-11-25 09:45:28 +00:00
Arvid Norberg 38889d4bda fixed debug iterator assert 2011-11-24 23:01:35 +00:00
Arvid Norberg cab1f3d207 fix issue when peer list is full, previously we would sometimes reject new connections 2011-11-24 17:50:57 +00:00
Arvid Norberg 9250b551d9 fix stats build 2011-11-21 06:21:06 +00:00
Arvid Norberg 5d8ce01c7a silence valgrind warning about uninitialized memory 2011-11-20 20:49:18 +00:00
Arvid Norberg 0bcdf7706c fix potential invalid access when shutting down broadcast socket 2011-11-19 22:17:13 +00:00
Arvid Norberg 3d04b5cc49 fix logging formatting bug in utp_stream 2011-11-19 20:06:20 +00:00
Arvid Norberg 85ef2528c6 serve cache hits without a round-trip to the disk thread for improved seeding performance 2011-11-16 07:09:12 +00:00
Arvid Norberg fdc5e7e8b2 keep track of where redundant downloads come from. make the timing out of block requests more reasonable in an attempt to actually complete pieces from other peers when stuck on a slow one 2011-11-16 02:29:59 +00:00
Arvid Norberg c342355ab2 back-ported an iterator-debug fix from libtorrent_aio 2011-11-16 02:27:28 +00:00
Arvid Norberg 0320546fee fix build 2011-11-15 06:47:02 +00:00
Arvid Norberg c4232065d8 introduced a more scalable API for torrent status updates (post_torrent_updates()) 2011-11-15 02:34:00 +00:00
Arvid Norberg 5576a98d04 log session_stats to /var/log/ on unixes 2011-11-13 08:12:11 +00:00
Arvid Norberg 4d49d0f20d windows storage fixes 2011-11-13 04:12:56 +00:00
Arvid Norberg 344e6c8a3b align error codes 2011-11-13 03:35:03 +00:00
Arvid Norberg 3eb1b1839d add verbose peer logging for setting TOS byte 2011-11-10 09:18:55 +00:00
Arvid Norberg 2330520c51 change the add_torrent_params API to use flags instead of a bunch of bools (but leave it backwards compatible) 2011-11-08 05:36:22 +00:00
Arvid Norberg 57e7f14024 fixed rare piece picker bug 2011-11-07 04:31:48 +00:00
Arvid Norberg f39b6b19e9 fix initialization issue of fast_resend_seq_nr for incoming uTP connections. Also log the fast_resend_seq_nr 2011-11-06 00:11:33 +00:00
Arvid Norberg 8c0672a9b7 fix overflow in utp logging 2011-11-05 18:28:32 +00:00
Arvid Norberg 4a6e012a5f some uTP tweaks. experimental slow start mode (disabled) 2011-11-05 09:30:38 +00:00
Arvid Norberg 3507e5f909 fix ut_metadata logging 2011-11-03 22:20:37 +00:00
Arvid Norberg 9a49372368 fix invariant check now that interest is calculated lazily 2011-11-03 09:20:16 +00:00
Arvid Norberg 2d6d76c525 fix mistake in last disk I/O patch 2011-11-03 09:19:43 +00:00
Arvid Norberg 1d238fd1d8 ignore EOF error from readv() in unaligned_write 2011-11-03 04:56:24 +00:00
Arvid Norberg 3b1a332d6e fix error reporting for session::add_torrent 2011-11-02 17:08:47 +00:00
Arvid Norberg 0d3eb71ba1 return -1 on failure on truncating file 2011-11-02 09:07:54 +00:00
Arvid Norberg 32dfc469c3 use NtSetInformationFile to truncate files in unbuffered mode (to avoid having to close and re-open them) 2011-11-02 09:02:28 +00:00
Arvid Norberg 99a209e3c9 web_peer_connection fix and assert 2011-11-02 08:04:16 +00:00
Arvid Norberg daedc43d3c fix release build 2011-11-02 05:28:25 +00:00
Arvid Norberg 36c9c663d3 fixed missing includes 2011-11-02 04:50:04 +00:00
Arvid Norberg ca9122861a merged unaligned write fix over from RC_0_15 2011-11-02 04:45:22 +00:00
Arvid Norberg 3c602e8fe8 remove redundant include 2011-11-01 05:41:10 +00:00
Arvid Norberg 9a91518b9a add assert in web_peer_connection 2011-10-30 06:13:34 +00:00
Arvid Norberg ec80a85bdb fixed connection setup and teardown issues 2011-10-28 23:34:55 +00:00
Arvid Norberg b85727c633 another channel state fix 2011-10-28 23:08:52 +00:00
Arvid Norberg dfda3c9a95 another channel state fix 2011-10-28 22:56:23 +00:00
Arvid Norberg 85ff124503 one more channel stat fix 2011-10-28 21:38:45 +00:00
Arvid Norberg becd714bc8 channel state fix 2011-10-27 08:42:51 +00:00
Arvid Norberg 602e0089f9 fixed silly typo 2011-10-26 01:00:53 +00:00
Arvid Norberg 1c8a7b6343 fixed invalid torrent_status::finished_time 2011-10-26 00:58:21 +00:00
Arvid Norberg e58e27e83a change peer_states to be a bitmask (bw_limit, bw_network, bw_disk) 2011-10-25 17:34:42 +00:00
Arvid Norberg da4998bd46 minor fix to broadcast socket patch 2011-10-25 10:28:54 +00:00
Arvid Norberg 0a2b352795 possible dangling pointer fix in broadcast_socket 2011-10-25 05:55:32 +00:00
Arvid Norberg 9afd09d797 optimize sending buffers on peer sockets by corking and uncorking 2011-10-24 04:22:53 +00:00
Arvid Norberg 5e3e4c6146 fixed typo in hash-piece parser 2011-10-23 09:21:07 +00:00
Arvid Norberg 15f20c887d fix msvc build 2011-10-22 17:44:40 +00:00
Arvid Norberg b430152174 post disk job completions in batches to save CPU in the network thread 2011-10-19 05:46:49 +00:00
Arvid Norberg d3fb55e1da optimize socket send buffers a bit 2011-10-19 02:40:37 +00:00
Arvid Norberg a9b51e1579 fix overflow issue when determining number of outstanding bytes 2011-10-18 16:22:36 +00:00
Arvid Norberg 95e462e750 windows version of CPU time measurement 2011-10-18 00:42:05 +00:00
Arvid Norberg 7d20c0b0c4 log CPU usage of network thread 2011-10-17 17:12:08 +00:00
Arvid Norberg 8b6522a763 log buffer sizes passed to read() and write() at the socket layer (to identify performane problems) 2011-10-17 06:54:02 +00:00
Arvid Norberg aab4cb6937 log number of asio messages passed through the queue per second (to track down performance issue) 2011-10-17 05:17:21 +00:00
Arvid Norberg 14e7c9f480 queue position fix 2011-10-15 07:11:50 +00:00
Arvid Norberg ef1ee13d58 fix bug in flush_cache_blocks 2011-10-13 02:19:55 +00:00
Arvid Norberg 01405f32ee added async_add_torrent for increased performance when adding many torrents (no documentation yet though) 2011-10-12 10:27:17 +00:00
Arvid Norberg e6324670a1 fix issue in write_unaligned when writing to a file it's too short 2011-10-11 08:43:15 +00:00
Arvid Norberg e1bfd8541f fixed bugs in dont-have and upload-only extension messages 2011-10-11 07:20:12 +00:00
Arvid Norberg 744a3be65d also use separate lower limits for up and download rates in the TCP/uTP mixed mode algorithm 2011-10-11 05:05:09 +00:00
Arvid Norberg 8aed4eaa7f improve TCP/uTP mixed mode algorithm by only taking peers into account that have outstanding requests (and want to send or expect to receive). Also throttle upload and download independently 2011-10-11 05:00:35 +00:00
Arvid Norberg 2741563711 set alert_mask early 2011-10-08 09:52:36 +00:00
Arvid Norberg f20a63e817 fix web seed race condition when using a proxy 2011-09-30 09:09:33 +00:00
Arvid Norberg d535e6b1ee fix setting of disk_io_write_mode and disk_io_read_mode in set_settings 2011-09-28 18:14:48 +00:00
Arvid Norberg d54c85d31b log uTP receive delay in stats log 2011-09-28 00:03:12 +00:00
Arvid Norberg b078f908f0 one more attempt to fix no-readback cache algorithm 2011-09-27 10:46:56 +00:00
Arvid Norberg b3d2877274 more no-readback fixes 2011-09-27 07:50:58 +00:00
Arvid Norberg d8641705e3 commented out expensive invariant check in disk cache 2011-09-27 04:56:57 +00:00
Arvid Norberg f6b6b57c0e fix avoid-readback cache algorithm 2011-09-27 04:05:05 +00:00
Arvid Norberg 20e261e80a log piece size for pieces that finishes 2011-09-26 02:27:23 +00:00
Arvid Norberg da0f992c47 fix logging build 2011-09-25 23:42:56 +00:00
Arvid Norberg 451c31828f changed semantics of send_buffer_watermark_factor to be specified as a percentage 2011-09-23 21:12:28 +00:00
Arvid Norberg 85db40e2c5 log outstanding reading bytes from peers in stats log 2011-09-23 20:57:42 +00:00
Arvid Norberg cda738abc6 minor logging fix 2011-09-23 05:12:29 +00:00
Arvid Norberg bf4ba45bf3 remove invalid assert in session_impl::listen_on 2011-09-22 21:30:46 +00:00
Arvid Norberg 8c23b0e3ce allow NULL to be passed to create_torrent::set_comment and create_torrent::set_creator 2011-09-22 21:24:50 +00:00
Arvid Norberg 976a50384a some more struct layout optimization 2011-09-22 10:37:47 +00:00
Arvid Norberg 5a7fe934bf fix torrent_info swap with openssl 2011-09-21 09:40:14 +00:00
Arvid Norberg 7a50255865 improved struct layout debug logging and optimized some structs 2011-09-21 09:27:07 +00:00
Arvid Norberg 61ceacca9b fix non-openssl logging build 2011-09-21 03:51:07 +00:00
Arvid Norberg 06cad3a245 fix UPnP issue for routers with multiple PPPoE connections 2011-09-18 20:28:06 +00:00
Arvid Norberg d27430a8c3 clear the queued packets on socks5 error, as a precaution 2011-09-17 23:03:46 +00:00
Arvid Norberg 2a6b019431 don't fail socks5 on 'socket already open' 2011-09-17 23:01:39 +00:00
Arvid Norberg 4e1af65fe0 fix issue where event=stopped announces wouldn't be sent when closing session 2011-09-17 21:15:42 +00:00
Arvid Norberg 52a0760e5b fix release asserts 2011-09-17 05:16:05 +00:00
Arvid Norberg f5b5160169 add incoming_connection_alert for logging all successful incoming connections 2011-09-17 01:44:05 +00:00
Arvid Norberg 986cee3417 fix tracker stopping issue on session shutdown 2011-09-16 08:34:17 +00:00
Arvid Norberg c83865b8ac move set_alert_dispatch out of deprecated function ifdef block 2011-09-16 04:03:54 +00:00
Arvid Norberg 8e6c159c83 fix possible hang in file::readv() on windows 2011-09-15 09:43:29 +00:00
Arvid Norberg 6271ee58f6 fix overflow issue in default disk write queue size limit 2011-09-14 06:22:45 +00:00
Arvid Norberg fb89e58901 fix build issue 2011-09-13 07:02:14 +00:00
Arvid Norberg c952f30820 slight improvement 2011-09-13 02:38:50 +00:00
Arvid Norberg ef496eb00c tracker retry fix 2011-09-13 02:23:18 +00:00
Arvid Norberg 460799d600 fix CPU busy loop issue in tracker announce logic 2011-09-12 05:21:16 +00:00
Arvid Norberg 469414d486 initial BitTorrent over SSL support 2011-09-12 03:51:49 +00:00
Arvid Norberg 90372b6caf fixed bug in auto manager which would never enable local peer discovery for torrents 2011-09-11 03:39:24 +00:00
Arvid Norberg 675721d971 basic support for bittorrent connections over SSL 2011-09-10 05:52:07 +00:00
Arvid Norberg 38a4b58c3a comment on incorrect assert 2011-09-10 05:37:18 +00:00
Arvid Norberg 09c235c936 solaris file allocation support 2011-09-08 23:08:37 +00:00
Arvid Norberg 012bad4b18 added missing setter function on create_torrent 2011-09-05 07:46:10 +00:00
Arvid Norberg 92bcb9ebfd feature to encrypt peer connections with a secret AES-256 key stored in .torrent file 2011-09-05 05:50:41 +00:00
Arvid Norberg 43c9e640ab honor IOV_MAX when using writev and readv 2011-09-05 05:47:50 +00:00