Commit Graph

4330 Commits

Author SHA1 Message Date
Robin Appelman 4ecf710dcd dont download the existing file for webdav if we're going to overwrite it 2015-09-21 13:45:25 +02:00
Bjoern Schiessle d2e90b6050 improved error message if user doesn't exists 2015-09-21 13:19:35 +02:00
Thomas Müller 0f2865abb2 Repeated calls to loginWithApache() should not not try to set user information in the session again 2015-09-21 11:55:41 +02:00
Thomas Müller 6006a03ef1 Merge pull request #19122 from owncloud/discardexpirationdatefornonlinkshares
Discard expiration date from result for non-link shares
2015-09-21 11:47:37 +02:00
Georg Ehrke b3ff773bbf delete cached preview when rolling back file's version
add random number using OC.parseQueryString and _.extend()

version rollback: add missing prefix to OC\Preview::post_delete

add test to assure that the rollback hook is called
2015-09-20 11:22:40 +02:00
Thomas Müller 9dc136a0d0 Merge pull request #19028 from owncloud/McNetic-zipstreamer-0.7
[jenkins] changed ZipStreamer to use composer for updates, update to 0.7
2015-09-18 17:03:49 +02:00
Thomas Müller bbf128f1b2 Merge pull request #19098 from owncloud/db-lock-no-transaction
Remove the need for the transaction in the database locking backend
2015-09-18 17:02:18 +02:00
Thomas Müller eb41a4da7f Merge branch 'zipstreamer-0.7' of https://github.com/McNetic/owncloud_core into McNetic-zipstreamer-0.7 2015-09-18 14:43:37 +02:00
Lukas Reschke 7c6d811584 Prefer OCS Id from database
To be consistent with other logic the app id from the database needs to be prefered. Especially when it comes to be able to replace an outdated OCS id.
2015-09-18 13:27:26 +02:00
Lukas Reschke 947e3d7ab5 Add repair step for outdated OCS IDs
There is the case where OCs IDs might become outdated such as it has been with the calendar and contacts app which refer to the old dummy entry. This means that users with the old OCS id can't update updates as well will receive invalid state flags. (e.g. "experimental" instead of "approved")

To allow instances to properly update the applications in the future we need to migrate the OCS IDs for now manually.
2015-09-18 13:27:26 +02:00
Thomas Müller 188d6d2e28 Merge pull request #18911 from owncloud/preview-show-cached-directly
Show cached previews directly
2015-09-18 13:02:10 +02:00
Thomas Müller 0101b1c65f Merge pull request #18840 from owncloud/fix-app-disable-route
Rebuild app navigation in JS
2015-09-18 13:00:58 +02:00
Thomas Müller 0eb37e2d64 Merge pull request #19092 from owncloud/allow-checking-for-notifiers
Allow checking whether there are notifiers registered
2015-09-18 11:57:56 +02:00
Thomas Müller 2eeb1b2b79 Merge pull request #19088 from owncloud/fix-availability-int
Explicitly cast number to integer
2015-09-18 08:31:56 +02:00
Thomas Müller 100d9e1976 Merge pull request #19095 from owncloud/set-priority-to-1-for-maintenance
Make sure Maintenance is checked before auth and others
2015-09-18 08:17:58 +02:00
Joas Schilling 44e6c4f398 Do not "use" Server 2015-09-17 15:11:05 +02:00
Robin Appelman e9b1aa6037 improve doc 2015-09-17 14:09:28 +02:00
Joas Schilling 5eddde6486 Add a Sabre plugin that emits an event for apps 2015-09-17 13:59:27 +02:00
Robin Appelman 05fddec022 expire old lock rows 2015-09-17 13:55:04 +02:00
Vincent Petry 1911472b88 Discard expiration date from result for non-link shares 2015-09-17 13:45:26 +02:00
Jörn Friedrich Dreyer 773941dfb0 prevent 0 byte downloads when storage returns false 2015-09-17 11:16:00 +02:00
Joas Schilling c3420fface Allow checking whether there are notifiers registered 2015-09-17 11:08:17 +02:00
Robin Appelman 7c66328381 Remove the need for the transaction in the database locking backend 2015-09-17 11:07:59 +02:00
Joas Schilling bc89bca803 Make sure Maintenance is checked before auth and others 2015-09-17 11:06:51 +02:00
Thomas Müller a1e343ae7c Merge pull request #19086 from owncloud/restore-loadapp-autoload
Restore loadApp() autoload registration
2015-09-16 15:19:41 +02:00
Thomas Müller b0414f6a30 Merge pull request #19022 from owncloud/console-loader-validroot
Register valid root for all installed apps in console
2015-09-16 15:17:43 +02:00
Robin McCorkell a0094d28f1 Explicitly cast number to integer 2015-09-16 11:22:52 +01:00
Robin McCorkell 862afd80b3 Restore loadApp() autoload registration
Also changes the autoloader validRoots into a hashmap to try and reduce
duplicate entries
2015-09-16 10:48:03 +01:00
Thomas Müller ed872589a3 Merge pull request #19077 from owncloud/check-maintenance-before-everything-else-master
Check for maintenance mode first so we send the 503 instead of login…
2015-09-16 10:22:10 +02:00
Joas Schilling e0992c1297 Check for maintenance mode first so we send the 503 instead of login verification 2015-09-16 09:38:36 +02:00
Arthur Schiwon c17d022ca4 started to implement sharee list view. not completed yet, do not cry please. 2015-09-16 07:23:27 +02:00
Arthur Schiwon ffd4e0dc5a split off expirationView 2015-09-16 07:23:26 +02:00
Arthur Schiwon f9c232c4ce split off linkShareView 2015-09-16 07:23:26 +02:00
Arthur Schiwon dcb084a617 split ShareDialogResharerInfoView from base view 2015-09-16 07:23:26 +02:00
Arthur Schiwon 83d91ddf20 further work on reimplementing the dialog layout 2015-09-16 07:23:25 +02:00
Arthur Schiwon edd163a611 refactor share dialog for multi-purpose use (dropdown, sidebar) and better maintainability 2015-09-16 07:23:25 +02:00
Bjoern Schiessle 9bd4f2d41e occ script to disable encryption and to decrypt all files again 2015-09-15 22:39:44 +02:00
Robin Appelman 9883d5b85d Merge pull request #18915 from owncloud/node-getfoldercontents-use-view-logic
Use the view logic for getFolderContent for the node api
2015-09-15 18:04:01 +02:00
Robin Appelman e545c2eec5 Merge pull request #17811 from owncloud/dav-lock-wide
Wrap the entire dav PUT in a read lock
2015-09-15 17:22:00 +02:00
Thomas Müller decdaf0018 Merge pull request #19024 from owncloud/remove-get_temp_dir
Remove get_temp_dir()
2015-09-15 14:18:29 +02:00
Thomas Müller e82a225d04 Merge pull request #18964 from owncloud/availability-integer
Use integer for availability instead of bool
2015-09-15 13:24:55 +02:00
Lukas Reschke 8e1b403b16 Catch apps which have been removed manually 2015-09-15 12:10:23 +02:00
Lukas Reschke 4680691ca6 Define allowed app roots earlier
The autoloader needs to be run before including the app.php, otherwise it depends on what app gets executed first and apps that rely on the dependency of other apps in app.php may break.
2015-09-15 12:10:23 +02:00
Robin McCorkell f8619870ea Remove get_temp_dir() 2015-09-15 11:33:25 +02:00
Robin McCorkell 5ca690e2f8 Use integer for availability instead of bool 2015-09-15 10:18:32 +02:00
Robin McCorkell 35d4851af2 Merge branch 'master' into fix-app-disable-route 2015-09-14 19:50:52 +01:00
Robin Appelman 688981b55c allow hook cancel 2015-09-14 20:35:33 +02:00
Robin Appelman 75f126da49 use the correct path for cache updates when doing chunked assembly 2015-09-14 20:35:33 +02:00
Robin Appelman 6386327150 work directly on storages when doing a chunked upload assembly 2015-09-14 20:35:33 +02:00
Robin Appelman b424151459 handle notfound exceptions in lock plugin 2015-09-14 20:35:33 +02:00
Robin Appelman e612d3123f wrap the entire put operation in a read lock 2015-09-14 20:35:33 +02:00
Robin Appelman 209abaadbb expose locking api in sabre connector 2015-09-14 20:35:33 +02:00
Thomas Müller fb9e75edb6 Merge pull request #18973 from owncloud/try-fixing-app-config-on-oracle
Do not compare the value on Oracle
2015-09-14 17:59:52 +02:00
Robin McCorkell dad56921ae Register valid root for all installed apps in console
We need to use commands from apps that aren't enabled (so don't get loaded).
2015-09-14 16:58:25 +01:00
Nicolai Ehemann 6c6be72e6b use zipstreamer via composer 2015-09-14 15:33:28 +02:00
Nicolai Ehemann be2023dae3 lib/private/files.php: adapted to minimally changed ZipStreamer API 2015-09-14 12:57:50 +02:00
Joas Schilling 0e805d5310 Do not compare the value on Oracle
As per docs: http://docs.oracle.com/cd/E11882_01/server.112/e26088/conditions002.htm#i1033286
> Large objects (LOBs) are not supported in comparison conditions.
2015-09-14 12:14:25 +02:00
Lukas Reschke 3adbfbfd69 Use / instead of an empty string as cookie path
When an empty string is used as cookie path PHP will assign the current directory as cookie path.

This means when an user had installed an ownCloud under "/", which is mapped to an empty string in \OC::$WEBROOT, and accessed it the cookie was set to values such as "/index.php/apps/files" since the web browser assumed this to be a directory. This means that multiple encryption cookies were set for the same domain resulting in potential havoc.

With this patch the path will be set to "/" in case an empty web root is installed which makes the cookie accessible to the whole domain.

To test this setup multiple ownCloud instances on the same domain under different ports and have both installed under "/", then try to login in both of it and previously this can in some cases lead to a lockout of the user.

Note that this affects the cookies that the browsers do sent and thus to test this you need to clear all cookies from your browser previously. I consider this an acceptable behaviour for now since this code is only in master.

Fixes https://github.com/owncloud/core/issues/18919
2015-09-14 11:22:34 +02:00
Bernhard Posselt fd74522804 make resolve public to avoid boiler plate code
add resolve to public interface
2015-09-13 17:44:24 +02:00
Frank Karlitschek 7562e4959b Merge pull request #18658 from owncloud/configurable-temp
Configurable temporary directory
2015-09-12 22:04:41 +02:00
Lukas Reschke 1924dd348a Merge pull request #18653 from owncloud/dav-stream-guzzle
stream webdav downloads using http client
2015-09-11 17:10:10 +02:00
Robin McCorkell 188d0e09b8 Add reset method to mimetype loader
Used to solve concurrency issues
2015-09-11 12:44:53 +01:00
Robin McCorkell e99988b9c7 Merge pull request #18676 from owncloud/ext-eventdispatcher
files_external event dispatcher
2015-09-11 09:34:05 +01:00
Robin McCorkell 620173c792 Merge pull request #18851 from owncloud/memcached-getallkeys-fallback
Fallback to complete Memcached flush if getAllKeys fails
2015-09-10 20:33:18 +01:00
Lukas Reschke fb717f254f Merge pull request #18699 from owncloud/notification-manager
Notification manager
2015-09-10 15:26:36 +02:00
Lukas Reschke 89cd929560 Merge pull request #17791 from owncloud/make-eventsource-compatible-with-win10
Add custom CSP for Win 10 compatibility
2015-09-10 15:00:35 +02:00
Lukas Reschke 0b91087489 Write to session in batch at the end of the request 2015-09-09 12:48:37 +02:00
Lukas Reschke e579dd62fd Write session data to single key
This prevents decrypting values multiple times.
2015-09-09 12:48:08 +02:00
Lukas Reschke bfa26db472 Use md5 over the version file to prevent cyclyc dependency 2015-09-09 12:48:08 +02:00
Morris Jobke c4c9c5ffad Merge pull request #18684 from owncloud/explicit-upgrade-version
Explicit upgrade version + prevent downgrades
2015-09-09 11:08:55 +02:00
Björn Schießle acee9d4750 Merge pull request #18908 from owncloud/allow-0-as-password
Allow 0 and false as password
2015-09-09 10:29:29 +02:00
Robin Appelman 9f11b27797 Use the view logic for getFolderContent for the node api 2015-09-08 22:38:50 +02:00
Lukas Reschke a03422c55a Cache generated result
Saves 50ms
2015-09-08 21:28:15 +02:00
Robin Appelman 1b708e26ef Show cached previews directly 2015-09-08 19:51:15 +02:00
Lukas Reschke 7cbf2bc56d Allow 0 and false as password
When we use the check for "empty" here passwords such as 0 will not work.

Fixes https://github.com/owncloud/password_policy/issues/8
2015-09-08 17:53:29 +02:00
Joas Schilling 38001d824b Move interfaces to private until they are no longer experimental 2015-09-08 09:01:02 +02:00
Joas Schilling 190d2c3d5b Add tests for the notification manager 2015-09-08 09:01:02 +02:00
Joas Schilling c6469be8bd Add tests for notification 2015-09-08 09:01:02 +02:00
Joas Schilling acf8149f17 Add tests for Action 2015-09-08 09:01:01 +02:00
Joas Schilling 0d154595f8 Fix the subject of notifications 2015-09-08 09:01:01 +02:00
Joas Schilling 57c273b2da Fix closures and adding parsed Actions 2015-09-08 09:01:01 +02:00
Joas Schilling d04021b1ac Fix the request type and the validity 2015-09-08 09:01:01 +02:00
Joas Schilling 21b83dc730 Allow getting the request type 2015-09-08 09:01:01 +02:00
Joas Schilling 913e2e9ae6 Use an INotification to getCount() and markProcessed() 2015-09-08 09:01:01 +02:00
Joas Schilling 3bdfef9107 Add the request type to the action 2015-09-08 09:01:01 +02:00
Joas Schilling f0ecfa6e6c Add the app id to the markProcessed method 2015-09-08 09:01:01 +02:00
Joas Schilling 0bcae89d14 Handle InvalidArgumentException more gracefully 2015-09-08 09:01:01 +02:00
Joas Schilling f16c5a38a8 Add language to the preparation method 2015-09-08 09:01:01 +02:00
Joas Schilling 4e347170ac Notification API 2015-09-08 09:00:57 +02:00
Lukas Reschke 84797023ed Remove XSendFile support
Required to ensure proper locking
2015-09-07 16:52:50 +02:00
Morris Jobke c57595bcb4 Merge pull request #18839 from owncloud/autoloader-supersecure
Restrict autoloaded paths to loaded apps (and other enhancements)
2015-09-07 00:09:00 +02:00
Roeland Douma 24f5f50b20 Merge pull request #18742 from owncloud/mimetype-updatedb
Introduce mimetype DB update occ command
2015-09-06 16:56:35 +02:00
Robin McCorkell b64e3f8db6 Fallback to complete Memcached flush if getAllKeys fails
Newer Memcached's do not support the underlying protocol commands that
getAllKeys() is implemented with. We should fallback to clearing
everything in that case, as causing (temporary) performance problems for
other applications on the server is better than having stale cached data.
2015-09-05 20:02:49 +01:00
Robin McCorkell 0fac2e3f3a Unique exception for invalid autoload paths, better handling
Background jobs are tolerant of stale entries left by disabled apps,
which will cause an autoload exception.
2015-09-05 16:50:02 +01:00
Robin McCorkell b06bc409e0 Rebuild app navigation in JS
Retrieve all app navigations to prevent reloading appinfo/app.php and
causing an error when the app isn't fully loaded. The addition/deletion
logic has been moved to JS, simplifying a lot of code.
2015-09-05 02:24:18 +01:00
Robin McCorkell b3acf09c60 Only add valid root for enabled apps 2015-09-05 00:04:58 +01:00
Robin McCorkell cdf01f0419 Split mimetype handling to new class 2015-09-04 17:28:20 +01:00
Morris Jobke 7f8bca64cb Merge pull request #18833 from owncloud/share-prevent-twice
Prevent sharing twice with user when already a group
2015-09-04 18:26:50 +02:00
Vincent Petry f100ef0fc6 Prevent sharing twice with user when already a group 2015-09-04 16:22:01 +02:00
Morris Jobke e54513cddd Merge pull request #18799 from owncloud/appconfig-with-one-request
Only query the appconfig once per request
2015-09-03 16:13:14 +02:00
Joas Schilling 38a164aa7a Make sure the array exists 2015-09-03 15:41:30 +02:00
Robin Appelman 8123df9489 setup owner when getting users for share 2015-09-03 14:34:46 +02:00
Morris Jobke a1e13d95ad Merge pull request #18777 from owncloud/locking-default
enable transational locking by default
2015-09-03 11:33:10 +02:00
Joas Schilling 21ba3b8737 Only query the appconfig once 2015-09-03 11:30:57 +02:00
Lukas Reschke f9e90e92d4 Encode HTML tags in JSON
While not encoding the HTML tags in the JSON response is perfectly fine since we set the proper mimetype as well as disable content sniffing a lot of automated code scanner do report this as security bug. Encoding them leads to less discussions and a lot of saved time.
2015-09-03 00:44:46 +02:00
Joas Schilling 8f2110e5da Revert "Soft fail when deleting and no entry found" 2015-09-02 19:52:45 +02:00
Robin Appelman 4880d7729b enable transational locking by default 2015-09-02 16:56:47 +02:00
Robin McCorkell c9c246a3f5 Soft fail when deleting and no entry found 2015-09-02 14:50:07 +01:00
Robin Appelman 0f6df2e0b6 Allow creating previewss that cover the specified dimensions 2015-09-02 10:32:39 +02:00
Robin Appelman 1c10fb5c9f also use httpclient for uploadFile 2015-09-01 18:01:27 +02:00
Robin McCorkell 5b2529b448 Delay adding OCS prefix to route collection until all is loaded
->addPrefix() iterates over all registered routes, so must be run after
all apps have had a chance to load their OCS routes.
2015-09-01 15:42:41 +01:00
Vincent Petry 87b3e28f06 Merge pull request #18730 from owncloud/appframework_proper_304
Properly return 304 in AppFramework
2015-09-01 15:39:59 +02:00
Robin McCorkell 9e9ffb1356 Allow access to full alias and mapping arrays 2015-09-01 14:07:14 +01:00
Roeland Jago Douma f12caf930e Properly return 304
The ETag set in the IF_NONE_MODIFIED header is wraped in quotes (").
However the ETag that is set in response is not (yet). Also we need to
cast the ETag to a string.

* Added unit test
2015-09-01 11:04:41 +02:00
Vincent Petry 6ccbf4bce6 Improved update version detection logic 2015-08-31 18:35:35 +02:00
Vincent Petry 85b62c7d82 Merge pull request #18635 from owncloud/stickify-files-and-sharing-notification-types
Sticky the notification types of files and sharing
2015-08-31 17:56:48 +02:00
Robin McCorkell 3142a20f25 Expose files_external services from Server
Not exposed to OCP yet
2015-08-31 15:18:26 +01:00
Vincent Petry f8d8de5da6 Merge pull request #17899 from owncloud/enc_make_key_storage_root_configurable
Make root of key storage configurable
2015-08-31 15:58:30 +02:00
Morris Jobke c34fbea197 Merge pull request #18691 from owncloud/request-no-read
Decode request content only on getContent
2015-08-31 14:58:48 +02:00
Vincent Petry 3b37c20319 Simplify comparison algo 2015-08-31 14:31:17 +02:00
Robin McCorkell e60c4bada1 Decode request content only on getContent 2015-08-31 01:05:25 +01:00
Robin McCorkell a0dfaf9be3 Clean up TempManager to follow code guidelines
tmpBaseDir can be overridden for unit testing purposes
2015-08-30 23:30:56 +01:00
Morris Jobke b50ac6ff2f Merge pull request #10149 from owncloud/storage-wrapper-check
Check result of storage wrappers
2015-08-30 19:48:37 +02:00
Bjoern Schiessle 37513f9411 don't read certificates if ownCloud is not installed 2015-08-30 19:00:03 +02:00
Bjoern Schiessle 289e9130f3 make system root of key storage configurable 2015-08-30 19:00:03 +02:00
Vincent Petry d5b0b55eef Throw exception on downgrade attempt 2015-08-30 18:07:22 +02:00
Vincent Petry 2b08659f7d Restrict upgrades to explicit allowed version
version.php now contains the previous ownCloud version from which
upgrades are allowed. Any other upgrades will show a message that the
upgrade/downgrade is not supported.
2015-08-30 18:04:18 +02:00
Vincent Petry 045f8cc971 Merge pull request #18651 from owncloud/ocs_share_create_with_expire
Allow to directly set the expireDate on a new (link)share
2015-08-30 10:50:12 +02:00
Roeland Jago Douma 2aff11c80b Actually validate the expire date on share
* Added more intergration tests
2015-08-30 10:31:43 +02:00
Robin Appelman 4cb8ca1860 Check result of storage wrappers 2015-08-30 10:02:42 +02:00
root acae208f2f moved code to /lib/private/tempmanager.php
fix for unit test

some fixes
2015-08-29 16:59:02 +01:00
Vincent Petry 723f8c8f1b Merge pull request #18620 from owncloud/add-public-interface-for-factory
Add a public interface for the language factory so apps can use it
2015-08-29 16:44:08 +02:00
Robin Appelman df8cb2cc63 stream webdav downloads using http client 2015-08-29 14:56:15 +02:00
Robin Appelman b67d395089 allow streamed responses in http client 2015-08-29 14:56:08 +02:00
Joas Schilling 0ddcc7da44 Merge pull request #18511 from owncloud/downgrad-sharing-error-logs-to-debug
Change log level of debugging logs to debug
2015-08-28 21:05:02 +02:00
Björn Schießle 6e210d960c Merge pull request #18423 from owncloud/occ_encrypt_all
occ command line tool to encrypt all files
2015-08-28 20:44:55 +02:00
Joas Schilling 42f0651b83 Sticky the notification types of files and sharing 2015-08-28 18:40:50 +02:00
Joas Schilling a12d354762 Deprecate OC_L10N::get() 2015-08-28 12:04:52 +02:00
Joas Schilling c3c7689b67 Add a public interface for the language factory so apps can use it 2015-08-27 13:14:50 +02:00
Bjoern Schiessle e51fe617d8 copy always file by file to encrypt/decrypt it if needed 2015-08-26 14:58:22 +02:00
Lukas Reschke 3d2ee95f1e Remove last occurence of `forcessl`
This shoudl have been adjusted as well, now it's consistent with `setMagicInCookie`. While it does not have a security impact directly some automated scanners reported this all the time.
2015-08-26 14:29:36 +02:00
Thomas Müller 749e3d5219 Merge pull request #18553 from owncloud/write-l10n-on-login
Save detected l10n of browser on login
2015-08-26 08:44:25 +02:00
Thomas Müller 534b2e407a Merge pull request #17662 from owncloud/locking-db
Database backend for locking
2015-08-26 03:56:37 +02:00
Lukas Reschke f3561e2349 Explicitly specify status code 200 as response code
Potentially fixes https://github.com/owncloud/core/issues/17586
2015-08-25 18:07:40 +02:00
Morris Jobke 4f13f96981 Save detected l10n of browser on login
* fixes owncloud/activity#373
2015-08-25 15:47:31 +02:00
Thomas Müller 6f6a5f6c29 Adding path to log message 2015-08-25 14:31:21 +02:00
Thomas Müller 2f86be9ced Merge pull request #18523 from owncloud/crazy-scanner
Prevent bkg scanner going crazy with unavailable storages (ajax/scan.php)
2015-08-25 09:23:42 +02:00
Vincent Petry fe575feca8 Prevent scanner going crazy with unavailable storages 2015-08-24 16:42:53 +02:00
Morris Jobke e88b380973 Remove DEBUG constant and use config value
* introduces config.php option 'debug' that defaults to false
* migrate DEBUG constant to config value
2015-08-24 15:14:05 +02:00
Lukas Reschke bd13126a80 Fix master again
Caused due to merge of two PRs
2015-08-24 12:19:03 +02:00