Commit Graph

137 Commits

Author SHA1 Message Date
Lukas Reschke d26a9c3c58 Add some security utilities
This adds some security utilities to core including:
- A library for basic crypto operations (e.g. to encrypt passwords)
- A better library for cryptographic actions which allows you to specify the charset
- A library for secure string comparisions

Remove .htaccess

Remove .htaccess

Fix typo

Add public API

Use timing constant comparision

Remove CBC constant

Adjust code

Remove confusing $this
2014-08-27 00:18:04 +02:00
Vincent Petry 173059f6d0 Fixed file list sorting
Now using a natural sort algorithm that is more consistent between JS
and PHP (although not perfect in some corner cases)

- added OC.Util.naturalSortComparator that uses the same algo that was
  used for the user list
- changed user list and files list to use OC.Util.naturalSortComparator
- removed toLowerCase() and changed the comparator to use
  String.localeCompare()
- added unit tests
- added OC_NaturalSort that is used by OCP\Util::naturalSortCompare()
2014-08-11 13:28:53 +02:00
Bjoern Schiessle ecc1f92bb6 add OCS api call to set expire date for link shares 2014-07-25 13:38:18 +02:00
Joas Schilling 01878153e0 Add language parameter to public API for getL10N()
Fix #9756
2014-07-21 14:50:34 +02:00
Vincent Petry 799205488c Prevent loadApps on upgrade
Moved OC::needUpgrade() to OCP\Util::needUpgrade() to make it accessible
form the router.
Moved maintenance + upgrade check to the router.
2014-06-18 11:10:07 +02:00
Bjoern Schiessle 12338e0ef0 allow admin to disable sharing for specific groups of users 2014-05-22 10:43:44 +02:00
Morris Jobke dc36d30953 Remove all occurences of @brief and @returns from PHPDoc
* test case added to avoid adding them later
2014-05-19 17:50:53 +02:00
Bjoern Schiessle b6e14af861 allow admin to enforce passwords for public link shares 2014-05-16 17:41:09 +02:00
Robin McCorkell 87b548ed91 Fix all PHPDoc types and variable names, in /lib 2014-05-13 19:08:14 +01:00
Robin McCorkell b5bc37d2e4 Fix @return array PHPDocs, in /lib 2014-05-13 19:08:14 +01:00
Robin McCorkell b653ad164b Replace @returns with @return, in /lib 2014-05-13 19:08:14 +01:00
Vincent Petry 4a493c8835 Some expected Sabre exceptions are now logged with DEBUG level 2014-05-07 11:43:50 +02:00
Lukas Reschke e88731a477 Some more PHPDoc fixes 2014-04-21 15:44:54 +02:00
Thomas Müller 3eb5898f7b use \OC_Mail::validateAddress() to validate the email address - fixes #7862 2014-03-24 15:35:07 +01:00
Lukas Reschke 2c561c9c50 Merge pull request #7794 from owncloud/extstorage-obfuscatepasswords
Obfuscate passwords in ext storage config
2014-03-20 16:31:12 +01:00
Thomas Tanghus 51fe3b8ccd Fix 'Undefined variable: message' in OCP\Util::logException 2014-03-20 10:23:40 +01:00
Vincent Petry 80180bea32 Added IV for ext storage password encryption 2014-03-19 11:42:22 +01:00
Vincent Petry 797e0a614c Added extra checks for invalid file chars in newfile.php and newfolder.php
- added PHP utility function to check for file name validity
- fixes issue where a user can create a file called ".." from the files UI
- added extra checks to make sure newfile.php and newfolder.php also
  check for invalid characters
2014-02-18 17:54:32 +01:00
icewind1991 2a7509ee50 Merge pull request #6748 from owncloud/fileinfo
Add a FileInfo class which holds all info of a file ...
2014-02-14 15:16:39 +01:00
Robin Appelman 1e79369338 merge master into storagestatistics-reuse 2014-02-05 13:36:55 +01:00
Pellaeon Lin 099b71c712 Merge branch 'master' into pr-exceed_upload_limit_msg
Conflicts:
	apps/files/templates/index.php
	apps/files_sharing/templates/public.php
2014-01-30 22:50:20 +08:00
Robin Appelman 4e2b52a376 merge master into fileinfo 2014-01-29 16:33:27 +01:00
Thomas Müller ab9ddda8f2 Merge pull request #6907 from owncloud/webdav-logexceptions
Added exception logger plugin for sabre connector
2014-01-27 07:48:40 -08:00
Robin Appelman 3c1ab66eda Reuse the calculated free_space in buildFileStorageStatistics 2014-01-27 15:56:57 +01:00
Vincent Petry 11ef12a106 Added exception logger plugin for sabre connector
Whenever an exception occurs in the sabre connector code or code called
by it, it will be logged.

This plugin approach is needed because Sabre already catches exceptions
to return them to the client in the XML response, so they don't appear
logged in the web server log.

This will make it much easier to debug syncing issues.
2014-01-27 11:40:17 +01:00
Jens-Christian Fischer 0f6c607171 added function documentation 2014-01-24 14:22:42 +01:00
Jens-Christian Fischer 506393090b Add 'mail_from_address' configuration
In environments where there are rules for the email addresses, the "from
address" that owncloud uses has to be configurable.

This patch adds a new configuration variable 'mail_from_address'.
If it is configured, owncloud will use this as the sender of *all*
emails. (OwnCloud uses 'sharing-noreply' and 'password-noreply' by
default). By using the 'mail_from_address' configuration, only this
email address will be used.
2014-01-24 14:04:37 +01:00
Robin Appelman 617acbd6f9 Add a FileInfo class which holds all info of a file and return that from getFileInfo, getDirectoryContent and search 2014-01-13 14:28:49 +01:00
Vincent Petry 2a1d6d3106 Do not use L10n when logging exceptions
In some specific situations, the L10N bundle isn't loadable yet (for
example when there is an issue with the app_config table). In such case,
we still want to be able to log the real exception.

This fixes errors that say "OC_L10N_String::__toString must not throw
exceptions"
2013-12-16 15:11:13 +01:00
Pellaeon Lin fc607e6bce Separate PHP upload limit and free space 2013-12-08 22:59:46 +08:00
Morris Jobke ef592981ea unify license headers for public API files 2013-11-03 13:51:39 +01:00
Morris Jobke 0dbe90cc9a fix documentation stuff 2013-10-31 19:00:53 +01:00
Vincent Petry c4dee281e6 Added $app parameter to logException 2013-10-23 13:58:42 +02:00
Vincent Petry 42c58220de Moved logException to OCP\Util class 2013-10-23 10:48:27 +02:00
Bjoern Schiessle 53bb89824d check if some encrypted files are left after the app was disabled and warn the user 2013-08-12 17:25:27 +02:00
Robin Appelman d509a0c403 return result from getL10N 2013-07-22 15:52:02 +02:00
Bart Visscher 9bf12da750 Merge pull request #3880 from owncloud/code-checker
Add classes replaced by the public api to the code checker
2013-07-21 11:19:20 -07:00
Bart Visscher a22940d3cd Add OC_L10N to public api 2013-07-19 11:40:11 +02:00
Victor Dubiniuk 5a3fce12a4 Implement encodePath 2013-07-09 17:46:11 +03:00
itheiss 568c256aff Fix #2499
The mail domain can now be configured in config.php and get´s used in function getDefaultEmailAddress.

e.g. 'mail_domain' => 'example.com'
2013-03-22 10:07:06 +01:00
Thomas Mueller 6019cdd5bd adding test case for getDefaultEmailAddress() + fixing #1844 again 2013-03-04 21:10:18 +01:00
Thomas Mueller 6c304fa5c0 validate the generated email address and fall back to localhost.localdomain in case it is not valid
fixes #1844
2013-03-01 22:24:19 +01:00
Bart Visscher ffae6f4b84 Style-fix: Breakup long lines 2013-02-14 08:38:37 +01:00
Bart Visscher ed1dc3e064 Fix files router download links 2013-02-08 22:05:13 +01:00
Christian Koch a4f909cefd Update lib/public/util.php
The call of \OC_MAIL::send() overrides all optional parameters. This is not necessary. But if you want to have html mail templates (what I'm thinking about) it is a real problem
2013-02-06 17:22:07 +01:00
Stefan Herbrechtsmeier ab2b79cda6 add multiple domains reverse proxy support
Add support for a reverse proxy that handles multiple domains via different
web roots (http[s]://proxy.tld/domain.tld/owncloud).

As the reverse proxy web root is transparent for the web server the
REQUEST_URI and SCRIPT_NAME need manual adjustments. This patch replace
the direct use of this _SERVER variables with function calls and extend
this functions to overwrite the web root. Additionally it adds a Sabre
request backend that extends the Sabre_HTTP_Request to use the same
functions.
2013-01-31 18:42:31 +01:00
Thomas Müller 31cc9aa80d Merge pull request #986 from owncloud/fixing-784-master
the maximum upload size is now part of the response of the upload and de...
2013-01-18 14:06:00 -08:00
Thomas Mueller 5ff29b4348 fixing indent 2013-01-18 20:09:03 +01:00
Bart Visscher a8f963d9cf Spaces to tabs 2013-01-16 18:09:16 +01:00
Thomas Mueller a21da9f9fd fixing returns 2013-01-06 23:59:02 +01:00
Thomas Mueller bae1755184 Merge branch 'master' into fixing-784-master
Conflicts:
	apps/files/ajax/upload.php
	apps/files/js/files.js
	lib/helper.php
2013-01-06 22:40:35 +01:00
Robin Appelman 54f6f1e6b7 phpdoc fixes for public api 2013-01-02 16:38:20 +01:00
Thomas Müller 986f5d9f3e fixing variable name 2012-12-21 00:04:58 +01:00
Thomas Müller 39d874cd90 the maximum upload size is now part of the response of the upload and delete operation.
the maximum upload size is updated within the browser once an upload or delete operation has been finished
2012-12-20 17:16:53 +01:00
Randolph Carter d2828bab07 fixes default email sender address 2012-12-19 01:09:14 +01:00
Felix Moeller bc4382c5c5 Checkstyle: fix the last NoSpaceAfterEquals 2012-11-04 18:31:44 +01:00
Felix Moeller afadf93d31 Checkstyle: many fixes 2012-11-02 19:53:02 +01:00
Bart Visscher 22d22d19c0 Do urlencoding in linkTo functions 2012-09-28 22:27:52 +02:00
Georg Ehrke 2b42893fa9 style fixes for public util api 2012-09-08 16:18:47 +02:00
Thomas Mueller 3829460ab8 adding space between) and { 2012-09-07 15:22:01 +02:00
Bart Visscher 1a46192433 Add args parameter to linkTo(Absolute) function, to append the args automaticly 2012-09-03 21:51:32 +02:00
Bart Visscher db18218a1b Space before tab fixes 2012-08-29 20:34:44 +02:00
Michael Gapczynski 0a9d1ed3a6 Initial previewer for public links 2012-08-27 20:37:38 -04:00
Bart Visscher 99ce7ba1df Move serverHost and serverProtocol functions to OC_Request 2012-08-07 20:43:00 +02:00
Arthur Schiwon 6b320a2604 provide recursiveArraySearch as Helper function and make available through API 2012-07-25 12:56:08 +02:00
Jörn Friedrich Dreyer e59a1806cf remove superfluous ?> at the end of .php files (left out apps/*/templates) 2012-07-09 16:51:16 +02:00
Arthur Schiwon 52822652bc provide multibyte aware helper functions mb_str_replace, mb_substr_replace and mb_array_change_key_case for handling with UTF 8 2012-07-02 20:31:19 +02:00
Bjoern Schiessle 6644511124 remove unnecessary comment 2012-06-20 16:29:19 +02:00
Bjoern Schiessle d2936bd90c introducing a sanitize HTML function for the internal and the public API. This
allows to easily convert strings to HTML before displaying them on the web page
to reduce the risk of xss vulnerabilities.
2012-06-19 17:20:19 +02:00
Thomas Tanghus 8fd9cbcc54 White-space fix. 2012-06-14 13:23:12 +02:00
Frank Karlitschek 344299a074 add two csrf check calls. Review and lot´s of porting needed. 2012-06-09 15:05:14 +02:00
Frank Karlitschek 24d14783d7 added a serverProtocol function that correctly returns the used protocol even if the ssl connection is terminated at a reverse_proxy or at a load balancer 2012-06-01 10:38:44 +02:00
Frank Karlitschek a945fa10a6 update copyright 2012-05-26 19:14:24 +02:00
Frank Karlitschek 08f7d4c552 document the public classes a bit more 2012-05-19 10:36:57 +02:00
Philipp Roggan bba434ca37 fixed typo in lib/public/util.php:106 (varname to ) 2012-05-09 15:17:40 +02:00
Bart Visscher 4dbc2093c6 Create a function for linking to remote.php 2012-05-07 21:47:14 +02:00
Thomas Tanghus cde60dba0f Fix typo. 2012-05-07 04:46:09 +02:00
Frank Karlitschek 5d55c709dd some more documentation cleanups. much more is needed.
And greeting from the Atlanta airport. ;-)
2012-05-06 22:02:16 +02:00
Frank Karlitschek 9bcc5c11a8 porting the hooks and starting with the templates 2012-05-05 10:18:45 +02:00
Frank Karlitschek 8c7f854671 move all the files stuff into a files class 2012-05-02 12:54:31 +02:00
Frank Karlitschek 93b63cf375 ported the rest of the OC_Helper calls 2012-05-02 00:20:45 +02:00
Frank Karlitschek e48f511606 port linkto and serverHost 2012-05-01 23:19:39 +02:00
Frank Karlitschek 31e32e3c10 ported checkLoggedIn and checkAdmin 2012-05-01 22:59:38 +02:00
Frank Karlitschek e2fb094693 some more porting 2012-05-01 21:07:08 +02:00
Frank Karlitschek d0554bef06 finish porting of the LOG calls or the apps to the public api 2012-05-01 17:38:27 +02:00
Frank Karlitschek 0195d5b439 some more work on the public API 2012-05-01 09:39:12 +02:00
Frank Karlitschek f5c9fe9ece first step to an public api of ownCloud for the apps. In the future they shouldn´t call internall classes, functions or session variables because this will change and break in upcoming versions. Apps should only call this public interface that we will kepp stable over different releases. The namespace is OCP for ownCloud public. This is just the first step. more coming soon 2012-04-23 15:50:30 +02:00