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

WebDAV Auth Connector: Check if already logged in #4042

Merged
merged 1 commit into from Jul 17, 2013

Conversation

guruz
Copy link
Contributor

@guruz guruz commented Jul 12, 2013

See code comment on what it does.

Basically, we don't need our WebDAV server to do the basic auth handling if the session is already authenticated (by cookie).

So this one will work, given the correct cookies:
curl -v -X PROPFIND -H "Cookie: oc0b4d3e5b1b=biljubj3n0pnmougco5hddg317" http://127.0.0.1/remote.php/webdav

And this one will still ask for HTTP auth:
curl -v -X PROPFIND http://127.0.0.1/remote.php/webdav

@guruz
Copy link
Contributor Author

guruz commented Jul 12, 2013

@karlitschek
Copy link
Contributor

That's a great idea. 👍 from me if it is tested with litmus, our mobile apps and csync.

@DeepDiver1975
Copy link
Member

@guruz @karlitschek is there a signed contributors agreement?

@DeepDiver1975
Copy link
Member

Litmus is fine:

$ litmus -k http://localhost/oc/core/remote.php/webdav/ admin admin
-> running `basic':
 0. init.................. pass
 1. begin................. pass
 2. options............... pass
 3. put_get............... pass
 4. put_get_utf8_segment.. pass
 5. put_no_parent......... pass
 6. mkcol_over_plain...... pass
 7. delete................ pass
 8. delete_null........... pass
 9. delete_fragment....... pass
10. mkcol................. pass
11. mkcol_again........... pass
12. delete_coll........... pass
13. mkcol_no_parent....... pass
14. mkcol_with_body....... pass
15. finish................ pass
<- summary for `basic': of 16 tests run: 16 passed, 0 failed. 100.0%
-> running `copymove':
 0. init.................. pass
 1. begin................. pass
 2. copy_init............. pass
 3. copy_simple........... pass
 4. copy_overwrite........ pass
 5. copy_nodestcoll....... pass
 6. copy_cleanup.......... pass
 7. copy_coll............. pass
 8. copy_shallow.......... pass
 9. move.................. pass
10. move_coll............. pass
11. move_cleanup.......... pass
12. finish................ pass
<- summary for `copymove': of 13 tests run: 13 passed, 0 failed. 100.0%
-> running `props':
 0. init.................. pass
 1. begin................. pass
 2. propfind_invalid...... pass
 3. propfind_invalid2..... pass
 4. propfind_d0........... pass
 5. propinit.............. pass
 6. propset............... pass
 7. propget............... pass
 8. propextended.......... pass
 9. propmove.............. pass
10. propget............... pass
11. propdeletes........... pass
12. propget............... pass
13. propreplace........... pass
14. propget............... pass
15. propnullns............ pass
16. propget............... pass
17. prophighunicode....... pass
18. propget............... pass
19. propremoveset......... pass
20. propget............... pass
21. propsetremove......... pass
22. propget............... pass
23. propvalnspace......... pass
24. propwformed........... pass
25. propinit.............. pass
26. propmanyns............ pass
27. propget............... pass
28. propcleanup........... pass
29. finish................ pass
<- summary for `props': of 30 tests run: 30 passed, 0 failed. 100.0%
-> running `locks':
 0. init.................. pass
 1. begin................. pass
 2. options............... pass
 3. precond............... pass
 4. init_locks............ pass
 5. put................... pass
 6. lock_excl............. pass
 7. discover.............. pass
 8. refresh............... pass
 9. notowner_modify....... pass
10. notowner_lock......... pass
11. owner_modify.......... pass
12. notowner_modify....... pass
13. notowner_lock......... pass
14. copy.................. pass
15. cond_put.............. pass
16. fail_cond_put......... pass
17. cond_put_with_not..... pass
18. cond_put_corrupt_token pass
19. complex_cond_put...... pass
20. fail_complex_cond_put. pass
21. unlock................ pass
22. fail_cond_put_unlocked pass
23. lock_shared........... pass
24. notowner_modify....... pass
25. notowner_lock......... pass
26. owner_modify.......... pass
27. double_sharedlock..... pass
28. notowner_modify....... pass
29. notowner_lock......... pass
30. unlock................ pass
31. prep_collection....... pass
32. lock_collection....... pass
33. owner_modify.......... pass
34. notowner_modify....... pass
35. refresh............... pass
36. indirect_refresh...... pass
37. unlock................ pass
38. unmapped_lock......... pass
39. unlock................ pass
40. finish................ pass
<- summary for `locks': of 41 tests run: 41 passed, 0 failed. 100.0%
-> running `http':
 0. init.................. pass
 1. begin................. pass
 2. expect100............. pass
 3. finish................ pass
<- summary for `http': of 4 tests run: 4 passed, 0 failed. 100.0%

@danimo
Copy link
Contributor

danimo commented Jul 15, 2013

@DeepDiver1975 yes, @guruz is under contract.

@danimo
Copy link
Contributor

danimo commented Jul 15, 2013

Tested with csync/mirall by @guruz

return true;
}

return parent::authenticate($server, $realm);
Copy link
Contributor

Choose a reason for hiding this comment

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

intendation ;)

guruz added a commit that referenced this pull request Jul 17, 2013
WebDAV Auth Connector: Check if already logged in
@guruz guruz merged commit 3fd4ff7 into owncloud:master Jul 17, 2013
@DeepDiver1975
Copy link
Member

@karlitschek backport to stable5?
@danimo

@danimo
Copy link
Contributor

danimo commented Jul 17, 2013

yes. Is a cherry-pick fine?

@blizzz
Copy link
Contributor

blizzz commented Jul 17, 2013

Cherry-Picking is good

@guruz
Copy link
Contributor Author

guruz commented Jul 17, 2013

I backported it, the mirall part is also in.. :)
owncloud/client@ab7bfab

@DeepDiver1975
Copy link
Member

@guruz thanks for backporting - generally speaking we add the backport commit

@DeepDiver1975
Copy link
Member

2fe849d

@lock lock bot locked as resolved and limited conversation to collaborators Aug 23, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants