Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LibCore: Support IPv6 for TCP and UDP connection #276

Merged
merged 1 commit into from
Jul 5, 2024

Conversation

xlmnxp
Copy link
Contributor

@xlmnxp xlmnxp commented Jun 24, 2024

This PR will add IPv6 support to Ladybird and give priority to IPv6 over IPv4
the PR still missing support of RFC 8305 and maybe we can add it as Phase 2

image

@xlmnxp xlmnxp requested a review from timschumi as a code owner June 24, 2024 22:09
@xlmnxp
Copy link
Contributor Author

xlmnxp commented Jun 24, 2024

this PR will; fix #90 and it same as #273 ( but with cleaner git history :) )

Userland/Libraries/LibCore/Socket.cpp Outdated Show resolved Hide resolved
Userland/Libraries/LibCore/Socket.cpp Outdated Show resolved Hide resolved
Userland/Libraries/LibCore/Socket.cpp Outdated Show resolved Hide resolved
Userland/Libraries/LibCore/Socket.cpp Outdated Show resolved Hide resolved
Userland/Libraries/LibCore/SocketAddress.h Outdated Show resolved Hide resolved
@xlmnxp xlmnxp force-pushed the master branch 4 times, most recently from a9d08e5 to 120981c Compare June 26, 2024 23:16
@timschumi timschumi removed their request for review June 29, 2024 18:06
@circl-lastname
Copy link
Contributor

CI is failing unfortunately, does it build on your machine?

@xlmnxp
Copy link
Contributor Author

xlmnxp commented Jun 29, 2024

CI is failing unfortunately, does it build on your machine?

yes

@circl-lastname
Copy link
Contributor

Have you tried rebased onto the latest master?

@xlmnxp
Copy link
Contributor Author

xlmnxp commented Jun 29, 2024

Have you tried rebased onto the latest master?

do I have to? It build successfully on my machine

@circl-lastname
Copy link
Contributor

do I have to? It build successfully on my machine

If it doesn't build on CI it likely won't build on other's machines, please do try, this is the error reported by CI

In file included from /home/runner/work/ladybird/ladybird/Tests/LibTLS/TestTLSHandshake.cpp:13:
In file included from /home/runner/work/ladybird/ladybird/Userland/Libraries/LibTLS/TLSv12.h:14:
In file included from /home/runner/work/ladybird/ladybird/Userland/Libraries/LibCore/Socket.h:15:
/home/runner/work/ladybird/ladybird/Userland/Libraries/LibCore/SocketAddress.h:118:10: error: explicitly defaulted equality comparison operator is implicitly deleted [-Werror,-Wdefaulted-function-deleted]
  118 |     bool operator==(SocketAddress const& other) const = default;
      |          ^
/home/runner/work/ladybird/ladybird/Userland/Libraries/LibCore/SocketAddress.h:127:7: note: defaulted 'operator==' is implicitly deleted because there is no viable 'operator==' for member 'm_ip_address'
  127 |     } m_ip_address { IPv4Address() };
      |       ^
/home/runner/work/ladybird/ladybird/Userland/Libraries/LibCore/SocketAddress.h:118:57: note: replace 'default' with 'delete'
  118 |     bool operator==(SocketAddress const& other) const = default;
      |                                                         ^~~~~~~
      |                                                         delete
/home/runner/work/ladybird/ladybird/Userland/Libraries/LibCore/SocketAddress.h:119:10: error: explicitly defaulted equality comparison operator is implicitly deleted [-Werror,-Wdefaulted-function-deleted]
  119 |     bool operator!=(SocketAddress const& other) const = default;
      |          ^
/home/runner/work/ladybird/ladybird/Userland/Libraries/LibCore/SocketAddress.h:119:10: note: defaulted 'operator!=' is implicitly deleted because it would invoke a deleted comparison function
/home/runner/work/ladybird/ladybird/Userland/Libraries/LibCore/SocketAddress.h:118:10: note: explicitly defaulted function was implicitly deleted here
  118 |     bool operator==(SocketAddress const& other) const = default;
      |          ^
/home/runner/work/ladybird/ladybird/Userland/Libraries/LibCore/SocketAddress.h:127:7: note: defaulted 'operator==' is implicitly deleted because there is no viable 'operator==' for member 'm_ip_address'
  127 |     } m_ip_address { IPv4Address() };
      |       ^
/home/runner/work/ladybird/ladybird/Userland/Libraries/LibCore/SocketAddress.h:119:57: note: replace 'default' with 'delete'
  119 |     bool operator!=(SocketAddress const& other) const = default;
      |                                                         ^~~~~~~
      |                                                         delete
2 errors generated.

@xlmnxp xlmnxp force-pushed the master branch 2 times, most recently from 6502aa7 to 21dff27 Compare June 29, 2024 20:45
@xlmnxp
Copy link
Contributor Author

xlmnxp commented Jun 29, 2024

do I have to? It build successfully on my machine

If it doesn't build on CI it likely won't build on other's machines, please do try, this is the error reported by CI

In file included from /home/runner/work/ladybird/ladybird/Tests/LibTLS/TestTLSHandshake.cpp:13:
In file included from /home/runner/work/ladybird/ladybird/Userland/Libraries/LibTLS/TLSv12.h:14:
In file included from /home/runner/work/ladybird/ladybird/Userland/Libraries/LibCore/Socket.h:15:
/home/runner/work/ladybird/ladybird/Userland/Libraries/LibCore/SocketAddress.h:118:10: error: explicitly defaulted equality comparison operator is implicitly deleted [-Werror,-Wdefaulted-function-deleted]
  118 |     bool operator==(SocketAddress const& other) const = default;
      |          ^
/home/runner/work/ladybird/ladybird/Userland/Libraries/LibCore/SocketAddress.h:127:7: note: defaulted 'operator==' is implicitly deleted because there is no viable 'operator==' for member 'm_ip_address'
  127 |     } m_ip_address { IPv4Address() };
      |       ^
/home/runner/work/ladybird/ladybird/Userland/Libraries/LibCore/SocketAddress.h:118:57: note: replace 'default' with 'delete'
  118 |     bool operator==(SocketAddress const& other) const = default;
      |                                                         ^~~~~~~
      |                                                         delete
/home/runner/work/ladybird/ladybird/Userland/Libraries/LibCore/SocketAddress.h:119:10: error: explicitly defaulted equality comparison operator is implicitly deleted [-Werror,-Wdefaulted-function-deleted]
  119 |     bool operator!=(SocketAddress const& other) const = default;
      |          ^
/home/runner/work/ladybird/ladybird/Userland/Libraries/LibCore/SocketAddress.h:119:10: note: defaulted 'operator!=' is implicitly deleted because it would invoke a deleted comparison function
/home/runner/work/ladybird/ladybird/Userland/Libraries/LibCore/SocketAddress.h:118:10: note: explicitly defaulted function was implicitly deleted here
  118 |     bool operator==(SocketAddress const& other) const = default;
      |          ^
/home/runner/work/ladybird/ladybird/Userland/Libraries/LibCore/SocketAddress.h:127:7: note: defaulted 'operator==' is implicitly deleted because there is no viable 'operator==' for member 'm_ip_address'
  127 |     } m_ip_address { IPv4Address() };
      |       ^
/home/runner/work/ladybird/ladybird/Userland/Libraries/LibCore/SocketAddress.h:119:57: note: replace 'default' with 'delete'
  119 |     bool operator!=(SocketAddress const& other) const = default;
      |                                                         ^~~~~~~
      |                                                         delete
2 errors generated.

I don't receive that errors, is it because the version of gcc?

@circl-lastname
Copy link
Contributor

Have you rebased your local branch onto the latest master?

@ladybird-bot
Copy link
Collaborator

Hello!

One or more of the commit messages in this PR do not match the Ladybird code submission policy, please check the lint_commits CI job for more details on which commits were flagged and why.
Please do not close this PR and open another, instead modify your commit message(s) with git commit --amend and force push those changes to update this PR.

@circl-lastname
Copy link
Contributor

I said "rebase" not "merge" :(

@xlmnxp
Copy link
Contributor Author

xlmnxp commented Jun 29, 2024

I said "rebase" not "merge" :(

I will fix it later today

@xlmnxp
Copy link
Contributor Author

xlmnxp commented Jun 30, 2024

I said "rebase" not "merge" :(

fixed

@xlmnxp xlmnxp force-pushed the master branch 2 times, most recently from beda671 to 21dff27 Compare June 30, 2024 18:17
@xlmnxp xlmnxp force-pushed the master branch 2 times, most recently from 814e6be to b9fa818 Compare June 30, 2024 18:52
@xlmnxp
Copy link
Contributor Author

xlmnxp commented Jul 5, 2024

Before After
image image

@ghost
Copy link

ghost commented Jul 5, 2024 via email

@ADKaster ADKaster merged commit ab82fc8 into LadybirdBrowser:master Jul 5, 2024
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants