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

Make BOINC urls case-insensitive #4937

Closed
makeasnek opened this issue Sep 29, 2022 · 4 comments · Fixed by #5027
Closed

Make BOINC urls case-insensitive #4937

makeasnek opened this issue Sep 29, 2022 · 4 comments · Fixed by #5027

Comments

@makeasnek
Copy link

Describe the problem
When a user is given a URL to attach to a BOINC project, it will not work if the case is not correct. For example: boincproject.com/boinc would work but boincproject.com/BOINC would not. Domain names are case-insensitive, and I see no reason for case-sensitive URL handling. There is a chance that a user without the correct case-sensitive URL may try to attach to a project and therefore have issues doing so. Making URL handling case-insensitive would eliminate this source of error and confusion.

This is a further extension of #4801

I realize this is a small issue and there are more important ones, just wanted to raise it as an idea.

Describe the solution you'd like
Make BOINC server URL handling case-insensitive

@AenBleidd AenBleidd added this to Backlog in Client and Manager via automation Oct 7, 2022
@AenBleidd AenBleidd added this to the Client/Manager Undetermined milestone Oct 7, 2022
@Vulpine05
Copy link
Contributor

This appears to be a problem for URLs with additional '/' after 'http(s)://'. I was able to reproduce this for projects such as Amicable Numbers and Rosetta@home, but not with Climateprediction.net or World Community Grid.

Error is "Project not found - The URL you supplied is not that of a BOINC-based project. Please check the URL and try again."

@davidpanderson
Copy link
Contributor

handle_project_attach() should call canonicalize_master_url() instead of massaging the URL itself.
canonicalize_master_url() should convert to lower case.

@Vulpine05
Copy link
Contributor

handle_project_attach() should call canonicalize_master_url() instead of massaging the URL itself. canonicalize_master_url() should convert to lower case.

I think I understand what you're saying for handle_project_attach(), sounds like the code should get simplified there. However, I'm not sure canonicalize_master_url() converts the url to lower case:

boinc/lib/url.cpp

Lines 201 to 207 in 1016b87

// Canonicalize a master url.
// - Convert the first part of a URL (before the "://") to http://,
// or prepend it
// - Remove double slashes in the rest
// - Add a trailing slash if necessary
//
void canonicalize_master_url(char* url, int len) {

I'm not too familiar with changing upper/lower case, but the comments on this function appear to do what it says and nothing more.

@AenBleidd
Copy link
Member

Closing this as an invalid.
Explanation: #5027 (comment)

@AenBleidd AenBleidd closed this as not planned Won't fix, can't repro, duplicate, stale Nov 28, 2022
Client and Manager automation moved this from Backlog to Done Nov 28, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
Development

Successfully merging a pull request may close this issue.

4 participants