Nextcloud Server
Go to file
Lukas Reschke a04feff9a7
Properly allow \OCP\Authentication\IApacheBackend to specify logout URL
Any `\OCP\Authentication\IApacheBackend` previously had to implement `getLogoutAttribute` which returns a string.
This string is directly injected into the logout `<a>` tag, so returning something like `href="foo"` would result
in `<a href="foo">`.

This is rather error prone and also in Nextcloud 12 broken as the logout entry has been moved with
054e161eb5 inside the navigation manager where one cannot simply inject attributes.

Thus this feature is broken in Nextcloud 12 which effectively leads to the bug described at nextcloud/user_saml#112,
people cannot logout anymore when using SAML using SLO. Basically in case of SAML you have a SLO url which redirects
you to the IdP and properly logs you out there as well.

Instead of monkey patching the Navigation manager I decided to instead change `\OCP\Authentication\IApacheBackend` to
use `\OCP\Authentication\IApacheBackend::getLogoutUrl` instead where it can return a string with the appropriate logout
URL. Since this functionality is only prominently used in the SAML plugin. Any custom app would need a small change but
I'm not aware of any and there's simply no way to fix this properly otherwise.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-08-18 12:22:44 +02:00
.github Move mention-bot notifications to code owners 2017-07-07 08:44:01 +02:00
.idea
3rdparty@b45407a256 Use symfony/translation for L10N plurals 2017-08-07 19:53:36 +02:00
apps [tx-robot] updated from transifex 2017-08-18 00:08:15 +00:00
build No more root file 2017-07-25 12:47:39 +02:00
config Always log cron execution 2017-08-17 09:45:11 +02:00
contribute
core Properly allow \OCP\Authentication\IApacheBackend to specify logout URL 2017-08-18 12:22:44 +02:00
l10n
lib Properly allow \OCP\Authentication\IApacheBackend to specify logout URL 2017-08-18 12:22:44 +02:00
ocs Suppress deprecated function in \OCP\JSON 2017-08-01 08:20:15 +02:00
ocs-provider
resources bycatch, x-ldif entry was missing 2017-06-14 11:47:44 +02:00
settings [tx-robot] updated from transifex 2017-08-18 00:08:15 +00:00
tests Properly allow \OCP\Authentication\IApacheBackend to specify logout URL 2017-08-18 12:22:44 +02:00
themes Logo claim is not used anymore 2017-08-02 23:08:45 +02:00
.bowerrc
.codecov.yml
.drone.yml Enable object storage tests again 2017-08-17 09:40:12 +02:00
.gitignore
.gitmodules
.htaccess
.jshintrc
.lgtm
.mailmap
.scrutinizer.yml Exclude phan from scrutinizer 2017-07-19 10:28:11 +02:00
.tag
.user.ini
AUTHORS
autotest-checkers.sh Add test to check if new files are added to the root of the repository 2017-07-12 11:52:42 +02:00
autotest-external.sh
autotest-hhvm.sh
autotest-js.sh
autotest.sh Fix drone 2017-07-14 15:04:18 +02:00
bower.json
buildjsdocs.sh
CHANGELOG.md Add link to real changelog 2017-07-19 10:39:55 +02:00
composer.json Install phan manually 2017-07-19 10:28:12 +02:00
console.php Brand it 🙈 2017-08-11 15:47:24 +02:00
CONTRIBUTING.md
COPYING
COPYING-README
cron.php Always log cron execution 2017-08-17 09:45:11 +02:00
index.html
index.php
issue_template.md
occ
public.php Add proper PHPDoc 2017-08-01 08:20:15 +02:00
README.md Add link to mastodon in readme 2017-07-21 08:58:51 +02:00
remote.php Suppress deprecated function in \OCP\JSON 2017-08-01 08:20:15 +02:00
robots.txt
status.php Stricter phan config fixes 2017-08-01 08:20:13 +02:00
version.php Make sure the accounts table exists 2017-08-14 09:52:41 +02:00

Nextcloud Server

Scrutinizer Code Quality codecov CII Best Practices irc irc

A safe home for all your data.

Why is this so awesome?

  • 📁 Access your Data You can store your files, contacts, calendars and more on a server of your choosing.
  • 📦 Sync your Data You keep your files, contacts, calendars and more synchronized amongst your devices.
  • 🔄 Share your Data …by giving others access to the stuff you want them to see or to collaborate with.
  • 🚀 Expandable with dozens of Apps ...like Calendar, Contacts, Mail and all those you can discover in our App Store
  • 🔒 Security with our encryption mechanisms, HackerOne bounty program and two-factor authentification.

You want to learn more about how you can use Nextcloud to access, share and protect your files, calendars, contacts, communication & more at home and at your Enterprise? Learn about all our Features.

Get your Nextcloud

Enterprise? Public Sector or Education user? You may want to have a look into the Enterprise Support Subscription provided by the Nextcloud GmbH

Get in touch

…learn more about how to get support for Nextcloud here!

Contribution Guidelines

All contributions to this repository from June, 16 2016 on are considered to be licensed under the AGPLv3 or any later version.

Nextcloud doesn't require a CLA (Contributor License Agreement). The copyright belongs to all the individual contributors. Therefore we recommend that every contributor adds following line to the header of a file, if they changed it substantially:

@copyright Copyright (c) <year>, <your name> (<your email address>)

Please read the Code of Conduct. This document offers some guidance to ensure Nextcloud participants can cooperate effectively in a positive and inspiring atmosphere, and to explain how together we can strengthen and support each other.

Please review the guidelines for contributing to this repository.

More information how to contribute: https://nextcloud.com/contribute/

Running master checkouts

Third-party components are handled as git submodules which have to be initialized first. So aside from the regular git checkout invoking git submodule update --init or a similar command is needed, for details see Git documentation.

Several apps by default included in regular releases like firstrunwizard or gallery are missing in master and have to be installed manually as required.

That aside Git checkouts can be handled the same as release archives.

Note they should never be used on production systems.