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

Limit AFP versions reported by FPGetSrvrInfo Over DSI #1749

Merged
merged 1 commit into from
Nov 14, 2024

Conversation

NJRoadfan
Copy link
Contributor

Refer to #1661. Turns out that AppleShare Client 3.7.4 suffers from the 512 byte packet limit bug, including when receiving responses over DSI. Being that this is the only officially supported version with AFP-over-TCP for System 7 clients, it is important that this is fixed.

This change limits Netatalk to replying with AFP versions 2.2 to 3.4 to DSI clients, which poses no compatibility issues as there are technically no TCP/IP clients supporting the older versions.

The only exception to this is the AFPBridge control panel for GS/OS, which identifies as AFPVersion2.0 by default. This TCP/IP client has been tested and still works fine even with this change.

Refer to Netatalk#1661. Turns out that AppleShare Client 3.7.4 suffers from the 512 byte packet limit bug, including when receiving responses over DSI. Being that this is the only officially supported version with AFP-over-TCP for System 7 clients, it is important that this is fixed.

This change limits Netatalk to replying with AFP versions 2.2 to 3.4 to DSI clients, which poses no compatibility issues as there are technically no TCP/IP clients supporting the older versions.

The only exception to this is the AFPBridge control panel for GS/OS, which identifies as AFPVersion2.0 by default. This TCP/IP client has been tested and still works fine even with this change.
@NJRoadfan NJRoadfan requested a review from rdmark as a code owner November 12, 2024 22:17
@rdmark rdmark changed the title Limit versions reported by FPGetSrvrInfo Over DSI Limit AFP versions reported by FPGetSrvrInfo Over DSI Nov 13, 2024
@rdmark
Copy link
Member

rdmark commented Nov 13, 2024

@NJRoadfan how come this wasn't a problem in netatalk 2.x? We always reported AFP 1.2 - 3.3 in the server info response on that version, if I'm not mistaken.

@NJRoadfan
Copy link
Contributor Author

Most people don't use long host names and/or enable all the UAMs. Netatalk 3.0 added AFP3.4 support (another 7 bytes) which tightened how long a hostname could be before crossing the 512 byte boundary, particularly if you have all the UAMs turned on. Things are even worse if you are using LDAP or the server is advertising multiple listening addresses.

@rdmark rdmark merged commit 55e9c13 into Netatalk:main Nov 14, 2024
28 checks passed
@NJRoadfan NJRoadfan deleted the njroadfan-fix-dsi-getsrvrinfo branch December 10, 2024 23:57
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.

2 participants