ayeteadoe
25f5936dee
CMake: Rename serenity_* helper functions/macros to ladybird_*
2025-07-03 23:19:41 +02:00
Ali Mohammad Pur
d49106c007
LibDNS: Send the dnssec queries in parallel
2025-06-25 08:20:40 +02:00
Ali Mohammad Pur
833617c8fe
LibDNS+dns: Avoid multi-question queries
...
This is not supported by much of anything (correctly), so send the
requests in parallel instead.
2025-06-25 08:20:40 +02:00
Tomasz Strejczek
6fb2be96bf
Everywhere: Replace DateTime::to_string() with UnixDateTime::to_string()
...
Replace LibCore::DateTime::to_string() with
AK::UnixDateTime::to_string().
Remove unncessary #include <LibCore/DateTime.h>.
2025-06-19 18:42:45 -06:00
rmg-x
5e9ceac16c
LibDNS: Add debug messages for error response codes in resolver
2025-06-13 11:42:01 +02:00
Ali Mohammad Pur
b24fb0a836
LibDNS: Add support for local DNSSEC validation
2025-06-11 18:16:29 +02:00
Timothy Flynn
7280ed6312
Meta: Enforce newlines around namespaces
...
This has come up several times during code review, so let's just enforce
it using a new clang-format 20 option.
2025-05-14 02:01:59 -06:00
Luke Wilde
08246bfa8c
LibCore: Don't discard subsequent results in Socket::resolve_host
...
Previously, we only returned the first result that looked like an IPv6
or IPv4 address.
This cropped up when attempting to connect to https://cxbyte.me/ whilst
IPv6 on the server wasn't working. Since we only returned the first
result, which happened to be the IPv6 address, we wasn't able to
connect.
Returning all results allows curl to attempt to connect to a different
IP if one of them isn't working, and potentially make a successful
connection.
2025-02-28 15:14:35 +01:00
Andrew Kaster
eb4c565e57
LibDNS: Add missing Core::Socket include to resolver
...
Without this, we get incomplete type errors
2025-02-20 15:04:50 -07:00
rmg-x
1083046f65
LibDNS: Check if cached lookup result is done before resolving
2025-02-11 07:24:33 +01:00
rmg-x
ec481aa08a
LibDNS+RequestServer: Fix UAF in lookup() by changing Span -> Vector
...
Co-authored-by: Ali Mohammad Pur <ali.mpfard@gmail.com>
2025-02-11 07:24:33 +01:00
rmg-x
4904326244
LibDNS: Fix check for cache entries that can be removed
...
Co-authored-by: Ali Mohammad Pur <ali.mpfard@gmail.com>
2025-02-11 07:24:33 +01:00
rmg-x
4a16c89603
LibDNS: Fix deadlock when receiving invalid lookup result
...
Previously, we would stop the repeat timer even if we got a null result.
This caused the pending lookup to:
- Never resolve, and
- Never get purged for too many retries
I believe the underlying issue is something on the socket level, but we
should handle this case regardless.
2024-12-01 11:32:45 +01:00
Ali Mohammad Pur
9648c83b7d
LibDNS: Don't purge lookup entries that are not yet fully resolved
2024-11-30 23:18:13 +01:00
Ali Mohammad Pur
ff311c1560
RequestServer+LibDNS: Don't .await() the DNS lookup promise
...
...and make sure it will eventually complete (or fail) by adding a
timeout retry sequence.
Fixes an issue where RequestServer would stick around after exit,
waiting for piled up DNS requests for a long time.
2024-11-25 11:46:35 +01:00
Pavel Shliak
cd14b215d1
LibDNS: Clean up #include directives
...
This change aims to improve the speed of incremental builds.
2024-11-21 14:08:33 +01:00
Ali Mohammad Pur
63a5717bc7
LibDNS: Immediately resolve IPv4/IPv6 "hostnames" if A/AAAA is queried
...
This makes e.g. lookup(192.168.1.1, A) resolve to the IP instead of
querying DNS for the IP.
2024-11-20 21:37:58 +01:00
Ali Mohammad Pur
c5afe58540
LibDNS: Add a default entry for localhost
...
In the future, we may want to parse /etc/hosts (or equivalent) into the
cache; this commit only adds localhost to make the normal workflow work.
2024-11-20 21:37:58 +01:00
Ali Mohammad Pur
3bcd91b109
LibDNS: Hide some debug logs behind DNS_DEBUG
2024-11-20 21:37:58 +01:00
Ali Mohammad Pur
6911c45bab
LibDNS: Respect records' TTL in the resolver cache
2024-11-20 21:37:58 +01:00
Ali Mohammad Pur
7e20f4726f
LibDNS+LibWeb+Ladybird+RequestServer: Let there be DNS over TLS
...
This commit adds our own DNS resolver, with the aim of implementing DoT
(and eventually DoH, maybe even DNSSEC etc.)
2024-11-20 21:37:58 +01:00