nextcloud/lib/private
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
..
Accounts Remove account data on user deletion 2017-05-15 13:31:31 +02:00
Activity More phpstorm inspection fixes 2017-07-24 11:39:29 +02:00
App Fix L10N::t 2017-08-01 08:20:17 +02:00
AppFramework If there is no content don't error 2017-08-09 15:51:13 +02:00
Archive More phpstorm inspection fixes 2017-07-24 11:39:29 +02:00
Authentication Fix auth provider 2017-08-02 09:48:16 +02:00
BackgroundJob Add |null to PHPDoc 2017-08-01 08:20:15 +02:00
Cache support pushing to CappedMemoryCache 2017-03-30 11:21:32 +02:00
Command More phpstorm inspection fixes 2017-07-24 11:39:29 +02:00
Comments Can not insert auto increment on oracle 2017-08-02 09:48:16 +02:00
Console Fixed typo 2017-05-19 15:58:13 +02:00
Contacts/ContactsMenu Do not show an email action for contacts with emtpy email addresses 2017-05-02 14:12:04 +02:00
DB Add a method to compare empty strings with an expression 2017-08-02 09:50:41 +02:00
Diagnostics Run phan over code base 2017-07-19 10:28:11 +02:00
Encryption only collect detailed access list if it is really needed 2017-07-06 11:33:08 +02:00
Federation Fix DI of the cloud id manager into apps 2017-02-14 12:47:46 +01:00
Files Merge pull request #6052 from nextcloud/fix_jail_copy 2017-08-10 10:21:56 +02:00
GlobalScale add new config switched for the global scale architecture 2017-05-29 18:19:28 +02:00
Group Take IUser instead of User 2017-08-01 08:20:15 +02:00
Hooks Add workaround for https://github.com/etsy/phan/issues/1033 2017-07-19 11:08:43 +02:00
Http/Client Rebrand to "Nextcloud" and add 100% coverage 2017-01-02 14:51:16 +01:00
IntegrityCheck Remove ownCloud Root Authority as per todo 2017-03-22 08:54:40 +01:00
L10N Use symfony/translation for L10N plurals 2017-08-07 19:53:36 +02:00
legacy Properly allow \OCP\Authentication\IApacheBackend to specify logout URL 2017-08-18 12:22:44 +02:00
Lock Add Phan plugin to check for SQL injections 2017-07-20 22:48:13 +02:00
Lockdown Make declaration compatible 2017-08-09 15:12:01 +02:00
Log Use constants 2017-04-13 12:04:32 -05:00
Mail Use non-deprecated INTL_IDNA_VARIANT_UTS46 2017-08-09 15:12:02 +02:00
Memcache More phpstorm inspection fixes 2017-07-24 11:39:29 +02:00
Migration Add |null to PHPDoc 2017-08-01 08:20:15 +02:00
Notification More phpstorm inspection fixes 2017-07-24 11:39:29 +02:00
OCS Fix OCS Exception 2017-08-01 08:20:17 +02:00
Preview Use IConfig instead of static OCP\Config 2017-07-27 13:43:18 +02:00
Repair Merge pull request #6004 from nextcloud/forward-5902-repair-drop-account-terms-on-oc-migration 2017-08-10 21:18:06 +02:00
RichObjectStrings @since 9.2.0 to @since 11.0.0 2016-11-15 18:51:52 +01:00
Route Fix require once for actionInclude 2017-08-09 23:51:49 +02:00
Search Properly name variable 2017-08-01 08:20:16 +02:00
Security null is a valid parameter 2017-08-01 08:20:16 +02:00
Session Fix MigrationSchemaChecker and CryptoWrapper 2017-08-01 08:20:16 +02:00
Settings Always log cron execution 2017-08-17 09:45:11 +02:00
Setup Install from migrations 2017-07-25 12:47:37 +02:00
Share Merge pull request #6123 from nextcloud/cleanup-shareItem 2017-08-15 13:57:00 +02:00
Share20 Move pre_shared and post_shared events to EventDispatcher 2017-08-03 15:14:29 +02:00
SystemTag More phpstorm inspection fixes 2017-07-24 11:39:29 +02:00
Tagging Fix others 2016-07-21 18:13:57 +02:00
Template Cleanup unused methods 2017-08-15 10:09:47 +02:00
Updater Remove unused use statements 2017-04-22 19:23:31 -05:00
User Can not insert auto increment on oracle 2017-08-02 09:48:16 +02:00
AllConfig.php More phpstorm inspection fixes 2017-07-24 11:39:29 +02:00
AppConfig.php Make sure the spreed TURN server secret stays a secret 2017-01-17 11:29:10 +01:00
AppHelper.php Fix others 2016-07-21 18:13:57 +02:00
Avatar.php Add message to NotSquareException thrown from Avatar 2016-10-24 11:27:27 +02:00
AvatarManager.php avatar to appdata 2016-10-05 11:00:16 +02:00
CapabilitiesManager.php Simplify if condition for public capabilities 2017-06-30 14:18:16 +02:00
Config.php Fix escaped HTML on error pages 2017-05-08 21:16:08 -05:00
ContactsManager.php Fix others 2016-07-21 18:13:57 +02:00
DatabaseException.php Remove unneeded parameter in DatabaseException 2017-07-24 13:44:12 +02:00
DatabaseSetupException.php Fix others 2016-07-21 18:13:57 +02:00
DateTimeFormatter.php Fix others 2016-07-21 18:13:57 +02:00
DateTimeZone.php Fix others 2016-07-21 18:13:57 +02:00
ForbiddenException.php Fix others 2016-07-21 18:13:57 +02:00
HintException.php add missing phpdoc to HintException 2016-11-28 11:34:23 +01:00
HTTPHelper.php Fix others 2016-07-21 18:13:57 +02:00
Installer.php Register autoloading before running migrations 2017-07-07 12:01:11 +02:00
LargeFileHelper.php Merge pull request #1890 from nextcloud/downstream-25428 2016-10-25 14:44:27 +02:00
Log.php Don't log passwords on dav exceptions 2017-06-29 17:20:10 +02:00
NaturalSort.php Fix others 2016-07-21 18:13:57 +02:00
NaturalSort_DefaultCollator.php Fix others 2016-07-21 18:13:57 +02:00
NavigationManager.php Properly allow \OCP\Authentication\IApacheBackend to specify logout URL 2017-08-18 12:22:44 +02:00
NeedsUpdateException.php Update with robin 2016-07-21 18:13:58 +02:00
NotSquareException.php Fix others 2016-07-21 18:13:57 +02:00
PreviewManager.php Add PHPDoc 2017-05-02 13:43:47 +02:00
PreviewNotAvailableException.php Opening the trashbin causes errors in log for files without preview 2016-09-09 13:53:06 +02:00
RedisFactory.php no ternary 2017-03-25 21:25:38 -06:00
Repair.php Add a repair step to drop the account_terms table on oc migration 2017-08-07 12:08:36 +02:00
RepairException.php Fix others 2016-07-21 18:13:57 +02:00
Search.php Update with robin 2016-07-21 18:13:58 +02:00
Server.php Merge pull request #5897 from nextcloud/add-share-mail-for-user-share 2017-08-01 13:27:15 +02:00
ServerContainer.php Fix missing argument 2 for Settings classes 2017-05-19 22:32:50 +02:00
ServerNotAvailableException.php Fix others 2016-07-21 18:13:57 +02:00
ServiceUnavailableException.php Update with robin 2016-07-21 18:13:58 +02:00
Setup.php Fix L10N::t 2017-08-01 08:20:17 +02:00
Streamer.php Revert "Always enable Zip64 extension for zipstreamer" 2017-06-09 10:21:26 +02:00
SubAdmin.php Fix CamelCasing 2017-01-18 11:45:26 +01:00
SystemConfig.php Don't show mail domain and from in config report 2017-07-07 09:53:55 +02:00
TagManager.php Fix others 2016-07-21 18:13:57 +02:00
Tags.php Fix L10N::t 2017-08-01 08:20:17 +02:00
TemplateLayout.php Properly handle if the deps file if for some reason empty 2017-07-19 00:10:46 +02:00
TempManager.php More phpstorm inspection fixes 2017-07-24 11:39:29 +02:00
Updater.php Use the existing array of OC versions 2017-08-07 12:09:05 +02:00
URLGenerator.php Prefer custom theme over theming app 2017-07-12 11:42:15 +02:00