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

full support for UnixDomainSocket backend #1173

Open
wants to merge 8 commits into
base: dev/3.0.0
Choose a base branch
from

Conversation

Coloryr
Copy link

@Coloryr Coloryr commented Dec 28, 2023

Support paper backend with UnixDomainSocket
Is must work with this
{4E839E59-23CF-4fa3-B0F9-2C75F679304E}
image

refer to #991

@Coloryr Coloryr changed the title full support for UnixDomainSocketAddress full support for UnixDomainSocket backend Dec 28, 2023
@Owen1212055
Copy link
Member

Owen1212055 commented Dec 28, 2023

Seems to already be in 5.0.0 as was done in #991 ?

@Coloryr
Copy link
Author

Coloryr commented Dec 29, 2023

Seems to already be in 5.0.0 as was done in #991 ?

It's look like change the bind, instead of backend support

@Coloryr
Copy link
Author

Coloryr commented Dec 29, 2023

My modification is for the group server

@Coloryr
Copy link
Author

Coloryr commented Dec 29, 2023

My idea is bind not use UDS, and use UDS for backend server transport

StringBuilder data = new StringBuilder().append(proxyPlayer.getVirtualHost().orElseGet(() ->
registeredServer.getServerInfo().getAddress()).getHostString())
.append('\0')
StringBuilder data = new StringBuilder().append(getRemoteAddress())
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this changes the intended behavior here

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unix socket hoststring like /xxx/xxx is a filename, but inetsocketaddress.getHostString is a ipaddress, because of these two differences, resulting in different behaviors?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oh i missing a .append('\0')

// String playerVhost =
// proxyPlayer.getVirtualHost().orElseGet(() -> registeredServer.getServerInfo().getAddress())
// .getHostString();
String playerVhost = getRemoteAddress();
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no

@@ -25,6 +25,8 @@
import io.netty.channel.epoll.EpollEventLoopGroup;
import io.netty.channel.epoll.EpollServerSocketChannel;
import io.netty.channel.epoll.EpollSocketChannel;
import io.netty.channel.epoll.EpollDomainSocketChannel;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

epoll is epoll, we can't just slap it on every single connection type, that is not how that works

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

so i patch the paper

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

so i patch the paper

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.

3 participants