1584 Commits

Author SHA1 Message Date
Shauren
ac266c45b1 Core/PacketIO: Support using std::string_view in ClientPacket with WorldPackets::SizedString and WorldPackets::SizedCString 2025-12-24 13:03:25 +01:00
Shauren
90be8fafb3 Core/Misc: Use std::scoped_lock instead of unique_lock where possible (and old lock_guard) 2025-11-30 14:25:32 +01:00
Shauren
3331699906 Build: Modernize include directory management using target_sources(FILE_SET) 2025-11-12 22:53:54 +01:00
Shauren
57489f4ca9 Core/PacketIO: Reduce the number of catch blocks in WorldSession::Update 2025-11-02 17:19:01 +01:00
Shauren
df02bec2a1 Core/Network: Minor include cleanup in SocketConnectionInitializer related files 2025-09-22 16:12:01 +02:00
Shauren
1e4232e7af Core/Scripts: Use std::string_view to find script id from script name 2025-09-14 14:13:16 +02:00
Shauren
f26f6c6220 Core/Misc: Add splice/pop_front/pop_back to LinkedListHead 2025-07-18 20:06:00 +02:00
Shauren
838d7c6364 Core/Misc: Shrink LinkedListHead size 2025-07-18 20:05:05 +02:00
Shauren
52add56a7f Core/DataStores: Reduce the number of string copies when loading db2 hotfixes 2025-07-12 15:44:43 +02:00
Shauren
6d79a4cd68 Core/Misc: Improve LinkedList iteration - simplify code generated for begin, end and operator++ 2025-07-11 19:02:53 +02:00
Shauren
419cdf87dd Core/Misc: Rename LinkedListHead insertion functions to push_back/push_front to fit standard container naming 2025-07-11 18:47:08 +02:00
Shauren
f4c0ede726 Core/Misc: Rename LinkedListHead::getSize to size to fit standard container naming 2025-07-11 17:51:49 +02:00
Shauren
fbbcc31670 Core/Misc: Simplify LinkedListHead::isEmpty and rename to empty to fit standard container naming 2025-07-11 17:47:14 +02:00
Shauren
39c06d40e2 Core/Misc: Use new Field::Get*OrNull where possible 2025-06-24 16:11:11 +02:00
Shauren
7002766c0a Core/Shared: Update PCH content to include most commonly used headers 2025-06-12 19:33:09 +02:00
Shauren
7657a289d7 Core/Misc: Kill copy/move constructors for singleton classes 2025-06-10 13:12:33 +02:00
Shauren
74d9da7f32 Core/Network: Make ip address formattable with fmt 2025-06-02 18:38:41 +02:00
Shauren
1027c42352 Core/PacketIO: Replace static_asserts with concepts and add them to PacketUtilities as well 2025-05-23 15:20:57 +02:00
Shauren
85e621f01a Core/PacketIO: Remove ByteBuffer constructor from MessageBuffer 2025-05-23 14:41:39 +02:00
Shauren
5bebf05209 Core/PacketIO: Mark packet parsing exception throwing code paths as [[noreturn]] 2025-05-22 23:17:01 +02:00
Shauren
7ca9e9005d Core/PacketIO: Disable implicit bool to int conversions for ByteBuffer operators 2025-05-21 21:17:38 +02:00
Shauren
8c01996cae Core/PacketIO: Add char overloads to ByteBuffer operators 2025-05-21 18:32:19 +02:00
Shauren
ad9984b8a3 Core/PacketIO: Move ObjectGuid and Position::PackedXYZ packet functions out of ByteBuffer 2025-05-16 19:11:12 +02:00
Shauren
c6050a319c Core/PacketIO: Rename ByteBuffer::contents to ByteBuffer::data 2025-05-15 19:18:41 +02:00
Shauren
546d23264c Core/Misc: Make string and string_view literal suffixes globally available 2025-05-13 11:41:54 +02:00
Shauren
38f40f5413 Core/PacketIO: Improved bit functions - no longer reads each bit separately 2025-05-12 16:27:55 +02:00
Shauren
71b681bbf0 Core/Network: Move to separate project 2025-04-09 21:02:31 +02:00
Shauren
e8b2be3527 Core/Network: Socket refactors
* Devirtualize calls to Read and Update by marking concrete implementations as final
* Removed derived class template argument
* Specialize boost::asio::basic_stream_socket for boost::asio::io_context instead of type-erased any_io_executor
* Make socket initialization easier composable (before entering Read loop)
* Remove use of deprecated boost::asio::null_buffers and boost::beast::ssl_stream
2025-04-08 19:15:16 +02:00
Shauren
401502ea3c Core/Grids: Modernize TypeContainer with variadic template 2025-01-05 20:22:34 +01:00
Shauren
27860c3316 Core/Database: Added std::span based functions to Field and PreparedStatement 2025-01-03 13:04:19 +01:00
Shauren
aa3a62e518 Core/PacketIO: Fixed writing exactly 32 bits 2024-12-20 17:27:18 +01:00
Shauren
5f212c6916 Core/PacketIO: Improved bit functions - no longer writes each bit separately 2024-12-19 19:47:26 +01:00
Shauren
5a1fe84978 Core/PacketIO: Read directly into output variable for numeric ByteBuffer::operator>> overloads 2024-12-19 19:45:58 +01:00
Shauren
736836a3f5 Core/PacketIO: Fixed endian conversions for array operations 2024-12-19 19:43:06 +01:00
Shauren
9ed5f8812b Core/PacketIO: Remove overriding Underlying type from ByteBuffer reads in favor of PacketUtilities::As 2024-12-19 14:57:28 +01:00
Shauren
8eb2a4de78 Core/Misc: Apply consistent formatting in ByteBuffer 2024-12-19 14:42:38 +01:00
Shauren
c81183a660 Dep: Replace basic_deadline_timer with std::chrono based basic_waitable_timer 2024-12-09 21:13:18 +01:00
Shauren
3e2abd2535 Core/Misc: Port std::ranges::contains from c++23 2024-12-01 19:05:26 +01:00
Shauren
e8d949c794 Core/JSON: Prevent out of bounds memory accesses in json deserialization 2024-11-13 00:24:39 +01:00
Shauren
af4dcc93ed Core/Networking: Support IPv6 2024-11-12 13:54:43 +01:00
Shauren
7ac0c685dd Build: Add WITH_WARNINGS_AS_ERRORS cmake option that turns compile warnings into compile errors 2024-09-20 13:19:42 +02:00
Shauren
8ec9b5841e Core/DataStores: Refactor DBStorageIterator to make it usable with more std::ranges algorithms 2024-09-09 23:21:23 +02:00
Shauren
e94558d078 Core/Client Builds: Refactor build_info structure to support any client variants 2024-08-30 00:52:33 +02:00
Shauren
82031dc720 Core/Client Builds: Move build info out of RealmList class 2024-08-29 20:32:45 +02:00
Shauren
d277be8718 Build fix for libstdc++-11 2024-08-29 15:50:55 +02:00
Shauren
8e15952659 Core/Auth: Refactor client auth key storage to support more future client variants and preserve more information about client version 2024-08-29 15:08:47 +02:00
Motive
6b2d12206c Core: Allow macOS arm64 client to connect (#30173) 2024-08-28 19:59:19 +02:00
Shauren
c4b710446d Core/Realms: Realmlist refactors
* Removed global realm variable from World and use RealmList everywhere
* Match auth build key with client version
* Restored allowedSecurityLevel checks for realmlist packet building
* Restored updating population field, mysteriously removed 15 years ago in f20b25d1c9
2024-08-18 18:59:58 +02:00
Shauren
a4ecb2dfae Core/PacketIO: Fixed handling CMSG_UPDATE_ACCOUNT_DATA - compressed value is not a null-terminated string 2024-08-05 14:13:17 +02:00
Shauren
d72e91bee2 Core/PacketIO: Use std::string_view to read strings from ByteBuffer 2024-08-03 13:40:17 +02:00