Commit graph

473 commits

Author SHA1 Message Date
Björn Schießle
a2ba3c8a43 fix sharing of folders. First we need to collect all files. Than we need to find all users with access to the file because this can vary from file to file and than we can encrypt it for all recipients 2013-04-22 11:58:39 +02:00
Florin Peter
6b47da10be improved rename and file size support
fix missing user_id on write
2013-04-22 04:40:49 +02:00
FlorinPeter
9a0b73070c Merge pull request #2992 from FlorinPeter/files_encryption
fix for trashbin
2013-04-20 05:35:29 -07:00
Björn Schießle
12785b93f1 make sure that all share keys get deleted if a file/folder gets unshared from a user/group 2013-04-19 13:17:08 +02:00
Florin Peter
0e1970438b fixed incorrect filesize, download via web is now possible
fixed broken file-info
2013-04-18 22:34:22 +02:00
Björn Schießle
2bd338c49f getUsersSharingFile() no longer needed, use getSharingUsersArray() instead; fix filterShareReadyUsers() to return the correct results 2013-04-18 20:02:27 +02:00
Björn Schießle
5a7a64df08 Session needs filesystem view as parameter; use getSharingUsersArray(), this function also adds the owner to the list 2013-04-18 20:00:45 +02:00
Björn Schießle
935d039860 necessary changes in util.php after the changes in \OCP\Share::getUsersSharingFile() (fe58e4b1a6) 2013-04-18 17:53:59 +02:00
Björn Schießle
39c717b24c some fixes to the keymanager class to identify the file owner and the owner path correctly. 2013-04-18 17:52:27 +02:00
Björn Schießle
1df36e0c88 rename $shareFilePath to $path to avoid confusions, it is not about paths to share files but about general path to files stored in ownCloud 2013-04-18 16:39:00 +02:00
Björn Schießle
40905c8941 fix file sharing, sharing files works now; moved the identification of file owner and the owner path in the keymanager functions so that other functions doesn't have to deal with it 2013-04-18 16:34:23 +02:00
Björn Schießle
7892fddcb9 remove ToDo, every time the file key gets encrypted new share keys are generated and a new encrypted filekey. We always need to use the latest share-keys and encrypted keyfiles 2013-04-18 15:44:57 +02:00
Björn Schießle
bd3024242f always save key file, the key doesn't change but the encrypted keyfile change always the same way like the share-keys change 2013-04-18 15:42:28 +02:00
Björn Schießle
a646a1169f return filename relative to users file dir and not relative to data dir 2013-04-18 13:41:21 +02:00
Florin Peter
2434739d69 fix for trashbin 2013-04-18 02:03:03 +02:00
Sam Tuke
6dd8c79461 Development snapshot
Working on stream{} write
2013-04-17 17:20:37 +02:00
Sam Tuke
f89a3604aa Working on stream{} writing
Development snapshot
2013-04-16 18:29:22 +02:00
Sam Tuke
770dcbf663 Fixed stream{} reading of encrypted files (stream_read()) 2013-04-16 14:53:54 +02:00
Sam Tuke
b4dd6ae36c Merge pull request #2885 from FlorinPeter/files_encryption
fix performance issues
2013-04-16 04:25:59 -07:00
Sam Tuke
f378a7f572 Fixed proxy class handing of read / write files
Various work on other classes
2013-04-16 13:22:16 +02:00
Jenkins for ownCloud
19afc216cf [tx-robot] updated from transifex 2013-04-13 02:15:54 +02:00
Björn Schießle
854b920787 fix some more paths 2013-04-12 15:18:19 +02:00
Björn Schießle
02d1f86a53 fix some confusion about paths relative to the files dir and to the data dir 2013-04-12 14:30:02 +02:00
Björn Schießle
f87229ddaf fix stream wrapper to make initial encryption work 2013-04-12 14:13:38 +02:00
Florin Peter
8f0bbdc5cb fix performance issues 2013-04-11 22:55:48 +02:00
Björn Schießle
c3a284569b make sure that public-keys dir exists 2013-04-10 16:46:02 +02:00
Björn Schießle
4303d6318e Session expect OC_FilesystemView() 2013-04-10 15:31:19 +02:00
Björn Schießle
fff979a590 add $view as parameter for getFileKey() call 2013-04-10 15:14:44 +02:00
Björn Schießle
98de385b8a add $view as parameter for session constructor 2013-04-10 15:08:28 +02:00
Sam Tuke
109fe198c3 Added info about filesystem method access conventions 2013-04-09 19:19:27 +02:00
Sam Tuke
400cf5beb3 Fixed naming bug of public owncloud key dir, which caused new keypair to be generated on each pageload 2013-04-09 19:11:38 +02:00
Sam Tuke
14451bdaf0 Development snapshot;
Fixed errors from Hooks::login();
Work on enable/disable recoveryAdmin for lost passwords in settings page (template, ajax, js);
Work on fixing sharing files to users (still broken);
2013-03-29 21:11:29 +01:00
Sam Tuke
ff6f52d5ec Merge branch 'master' into files_encryption
Conflicts:
	apps/files_encryption/hooks/hooks.php
	apps/files_encryption/lib/crypt.php
	apps/files_encryption/lib/keymanager.php
2013-03-28 18:39:12 +01:00
Sam Tuke
9ecfd07f23 Added ajax scripts for setting pwd recovery preferences 2013-03-28 18:29:18 +01:00
Björn Schießle
e717f7150e check for dir in deleteFileKey() and delShareKey(), to always handle all share keys and file keys on delete 2013-03-26 16:52:58 +01:00
Björn Schießle
73157133e8 reuse function provided in util.php 2013-03-26 16:22:26 +01:00
Björn Schießle
6beeb2466f also delete share keys if a different user than the owner deletes a shared file 2013-03-26 16:17:26 +01:00
Björn Schießle
b1d620300e delete share keys if file gets deleted 2013-03-26 14:22:18 +01:00
Björn Schießle
5f233ee814 get the correct paths and owner to access shared files 2013-03-26 12:40:31 +01:00
Björn Schießle
a65d741a3f move getUidAndFilename() tu util.php 2013-03-26 12:39:55 +01:00
Björn Schießle
890f0142a2 get shared keys from new location 2013-03-26 12:24:04 +01:00
Björn Schießle
5995b6996b always call stripUserFilesPath(), we need to keep the Shared/ to find the correct owner of the file later 2013-03-26 12:23:28 +01:00
Björn Schießle
f10be4ea17 new file structure for share keys; sub-folder need to be generated each by one (we don't have a recursive mkdir) 2013-03-26 11:58:54 +01:00
Sam Tuke
fd4e59b748 Added method for setting user keyfile recovery preference
Fixed method for checking if keyfile recovery is enabled for a user
Added unit test for above 2 methods
Made proxy{} always use sharing
Made proxy{} work regardless of sharing API enabled or not
Implemented proxy-based sharing to admin if user keyfile recovery is enabled
2013-03-20 19:26:59 +01:00
Jenkins for ownCloud
63e3f978ab [tx-robot] updated from transifex 2013-03-20 00:02:44 +01:00
Sam Tuke
c89fd49870 Improved folder creation code
Created stub method for checking user pwd recovery preference from db
Added pwd recovery column to db
Added comments
2013-03-19 19:53:15 +01:00
Jenkins for ownCloud
63ca84e7bc [tx-robot] updated from transifex 2013-03-19 00:05:52 +01:00
Jenkins for ownCloud
0c123ebf9d [tx-robot] updated from transifex 2013-03-15 00:06:36 +01:00
Jenkins for ownCloud
f3a2daaa9d [tx-robot] updated from transifex 2013-03-13 00:06:21 +01:00
Sam Tuke
c1f1fbda08 Fixed stream wrapper bugs
Switched encryptAll() to use stream-based instead of file-at-a-time encryption
Development snapshot
2013-03-09 19:18:34 +01:00
Tom Needham
dfbf57207d Merge pull request #1584 from owncloud/ocs_multiple_methods
Allow registering of multiple methods on each api route. Add /cloud/capabilities route.
2013-03-09 16:59:13 -08:00
Tom Needham
e58dbd46fc Merge in master 2013-03-09 00:04:33 +00:00
Jenkins for ownCloud
0629ff4dd9 [tx-robot] updated from transifex 2013-03-09 00:06:34 +01:00
Jenkins for ownCloud
97222b1de5 [tx-robot] updated from transifex 2013-03-07 00:16:59 +01:00
Tom Needham
370f202251 Rebase to current master 2013-03-05 00:25:56 +00:00
Björn Schießle
f2b86d0227 make sure that $this->userId is initialized before using it as a parameter 2013-03-04 17:58:56 +01:00
Björn Schießle
e65e6a12f1 define key size in constructor, otherwise the key size will depend on the servers openssl conf 2013-03-04 15:33:38 +01:00
Bernhard Posselt
10b108ed8a Merge pull request #2030 from j-ed/master
suppress log messages like `include path for class ... starts with "apps/"`
2013-03-04 12:59:39 -08:00
j-ed
5352f1e65b Update app.php
suppress log messages like `include path for class \"OCA\\Encryption\\Crypt\" starts with \"apps\/\"`.
2013-03-02 12:18:28 +01:00
Lukas Reschke
7f8eddffe4 [files_encryption] Use p() instead of echo() 2013-02-27 21:20:37 +01:00
Sam Tuke
0bc7d3bcf8 Added notes where to reuse old keys instead of generating new ones 2013-02-27 18:50:57 +00:00
Sam Tuke
953319a2c3 Made proxy class reuse existing keyfiles not gen new ones;
Added notes about reusing shareKeys
2013-02-27 18:46:44 +00:00
Sam Tuke
69bc42f920 Deleting encrypted files with missing keyfiles/shareKeys now succeeds 2013-02-27 16:15:03 +00:00
Sam Tuke
14eae441eb Unsharing a single file now works 2013-02-27 15:31:23 +00:00
Sam Tuke
aae9b0b1bf Started work on post unshare hook
Development snapshot
2013-02-26 18:33:31 +00:00
Sam Tuke
4550ae6a69 Shared encrypted files now readable by both sharer and sharee 2013-02-26 18:11:29 +00:00
Lukas Reschke
c94974cb97 Add missing echo 2013-02-26 16:10:52 +01:00
Björn Schießle
ca1b94d890 make sure that home folders are mounted correctly before write/read keyfile 2013-02-25 12:29:07 +01:00
Björn Schießle
31c434b795 the default should be to encrypt all files if the user/admin doesn't specify a blacklist explicitely 2013-02-22 16:08:08 +01:00
Björn Schießle
40efeb9187 isSharedFile() doesn't detect all shares, just use getUsersSharingFile() directly either you get a list of users or not 2013-02-22 16:02:27 +01:00
Jenkins for ownCloud
dcd93a53e4 [tx-robot] updated from transifex 2013-02-21 00:15:58 +01:00
Sam Tuke
2d267501a1 Development snapshot
Added comments
Added methods
2013-02-20 19:18:00 +00:00
Sam Tuke
1b880f2f96 Moved dependencies out of Crypt methods (encKeyfileToMultipleUsers)(DI)
Fixed bug preventing sharing with users other than 'ownCloud'
Added comments
Moved functionality into filterShareReadyUsers()
Other changes
2013-02-19 19:16:50 +00:00
Sam Tuke
14ae373dfe Fixed wrong array key reference 2013-02-19 17:42:37 +00:00
Björn Schießle
fd629983fa remove debug output 2013-02-19 17:10:32 +01:00
Björn Schießle
109fee7673 remove todo, it is already solved 2013-02-19 14:47:45 +01:00
Jenkins for ownCloud
76c4dc6296 [tx-robot] updated from transifex 2013-02-19 00:06:51 +01:00
Jenkins for ownCloud
c8e7b14ab3 [tx-robot] updated from transifex 2013-02-17 00:26:17 +01:00
Jenkins for ownCloud
b169073169 [tx-robot] updated from transifex 2013-02-15 00:06:50 +01:00
Björn Schießle
8c35bbcba7 remove debug output, fix typo in file names 2013-02-14 16:33:57 +01:00
Bart Visscher
cd35d257bb Fix NoSpaceAfterComma and SpaceBeforeComma 2013-02-14 08:36:26 +01:00
Jenkins for ownCloud
bfe6334cd9 [tx-robot] updated from transifex 2013-02-14 00:06:51 +01:00
Björn Schießle
5005195db0 create keypair for ownCloud with empty passphrase, will be used for public link shares 2013-02-13 17:57:45 +01:00
Björn Schießle
9356f9a6bf add post_unshareALll hook, update recursively all keyfiles if a folder was shared/unshared 2013-02-13 17:23:27 +01:00
Björn Schießle
4952dfe956 add post_unshare hook, also add public link shares to the list of user with access to a file 2013-02-13 14:56:39 +01:00
Björn Schießle
a692264fa4 add option to keep duplicates in the list of users with access to a file, e.g. for the unshare operation we need to know if access was granted more than once, for example as group share and as individual share 2013-02-12 17:00:33 +01:00
Björn Schießle
d1bbb30385 also find users with access to the file if a folder above the actual file was already shared 2013-02-12 16:48:04 +01:00
Björn Schießle
1e5d03da80 use right location of the file is the source and not the target it is shared to 2013-02-12 12:45:54 +01:00
Björn Schießle
8eef919a75 take group shares into account if we retrieve the list a all recipients 2013-02-12 12:08:34 +01:00
Björn Schießle
5a64c96d06 go back to preUnshare hooks since sharing doesn't trigger post unshare hooks 2013-02-11 15:13:42 +01:00
Björn Schießle
9b49832090 unshare all should work the same like unshare single users 2013-02-11 13:50:11 +01:00
Björn Schießle
3e3cee98c8 - moved the enrcyption of the filekey ifg file gets shared from the post shared hook to
Crypt::encKeyfileToMultipleUsers() because this can be reused if files get unshared
- switch from preUnshare hook to postUnshare hook because afterward we can simply get the
  updated list of users with access to the file and call Crypt::encKeyfileToMultipleUsers()
2013-02-11 13:28:37 +01:00
Björn Schießle
2787aafae6 added some TODOs 2013-02-11 12:12:21 +01:00
Sam Tuke
d17d838ecc Updated specfile 2013-02-11 10:34:23 +00:00
Sam Tuke
92f06243be Implementing sharing support
New file-specific methods in lib/public/share
Changes to how keyfiles are stored
2013-02-11 10:21:23 +00:00
Tom Needham
f141f8b523 Add further capabilities to /cloud/capabilitites api call 2013-02-10 14:42:23 +01:00
Sam Tuke
b3e59ca1e3 Work on post_share hook for files_encryption
New method in OCP\Share{}:: getUsersSharingFile()
Development shapshot
2013-02-09 18:39:32 +00:00
Jenkins for ownCloud
68fa0b7dcc [tx-robot] updated from transifex 2013-02-13 00:05:40 +01:00
Jenkins for ownCloud
8d9352a40d [tx-robot] updated from transifex 2013-02-12 15:12:46 +01:00
Jenkins for ownCloud
fb23ac3ce2 [tx-robot] updated from transifex 2013-02-12 00:21:45 +01:00
Jenkins for ownCloud
39d19a9274 [tx-robot] updated from transifex 2013-02-11 15:42:41 +01:00
Robin Appelman
ad360296b9 Update tests and apps to the new \OC\Files\Filesystem::init signature 2013-02-11 11:06:09 +01:00
Jenkins for ownCloud
04146f2059 [tx-robot] updated from transifex 2013-02-11 00:04:49 +01:00
Jenkins for ownCloud
f7d898d835 [tx-robot] updated from transifex 2013-02-10 00:10:29 +01:00
Thomas Müller
7f58e27495 cleanup - more to come after 2013-02-09 18:01:38 +01:00
Sam Tuke
1aba986d9f Fixed bug causing nested file read over webdav to fail 2013-02-09 12:42:18 +00:00
Sam Tuke
b95bc663af Merge branch 'master' into files_encryption-style-fixes
Conflicts:
	apps/files_encryption/lib/crypt.php
	apps/files_encryption/lib/util.php
2013-02-09 11:52:11 +00:00
Jenkins for ownCloud
e5c05e9674 [tx-robot] updated from transifex 2013-02-09 00:14:08 +01:00
Jenkins for ownCloud
59249ebc0c [tx-robot] updated from transifex 2013-02-08 00:13:16 +01:00
Jenkins for ownCloud
35bd7a400d [tx-robot] updated from transifex 2013-02-07 00:11:04 +01:00
Sam Tuke
954a627483 Added comment 2013-02-06 18:24:35 +00:00
Sam Tuke
2b07afc8ab Removed debugging code 2013-02-06 17:59:47 +00:00
Sam Tuke
a3289d3991 Merge branch 'master' into files_encryption 2013-02-06 15:08:53 +00:00
Sam Tuke
6870add18f Development snapshot 2013-02-06 15:08:36 +00:00
Sam Tuke
16a5ace434 Fixed bug causing encrypted files to be doubly encrypted at login
Added comments and docblocks
2013-02-06 14:30:40 +00:00
Jenkins for ownCloud
335b6cd060 [tx-robot] updated from transifex 2013-02-06 00:06:28 +01:00
Sam Tuke
3b9e2f1bab Merge branch 'master' into files_encryption-style-fixes
Conflicts:
	apps/files_encryption/lib/crypt.php
	apps/files_encryption/lib/keymanager.php
2013-02-05 18:43:55 +00:00
Sam Tuke
a528f96b84 Merge branch 'master' into files_encryption-style-fixes 2013-02-05 18:23:03 +00:00
Sam Tuke
20b1d12cbf Fixed comment typo, wrapped return value conditional on var assignment in session{} 2013-02-05 17:28:26 +00:00
Sam Tuke
4ba0ab7f65 Added missing translation wrapping 2013-02-05 17:22:59 +00:00
Sam Tuke
b84e83261e Added notice to personal settings indicating what filetypes are not encrypted 2013-02-05 17:06:15 +00:00
Sam Tuke
680c5b3dad Removed debugging output 2013-02-05 16:11:50 +00:00
Sam Tuke
221b69dd0e Fixed bug relating to Filesystem{} that prevented webdav logins with files_encryption 2013-02-05 16:09:01 +00:00
Sam Tuke
a1f200c1e5 Cleaned up path formatting with new method stripUserFilesPath() 2013-02-05 15:59:28 +00:00
Sam Tuke
53248a9b60 Recryption of legacy encrypted files now working on login 2013-02-05 15:35:29 +00:00
Sam Tuke
fd90b82acd Merge github.com:owncloud/core 2013-02-05 13:44:45 +00:00
Sam Tuke
927d4c98a1 Fixed todos: undefined vars and unreachable code 2013-02-05 13:12:34 +00:00
Jenkins for ownCloud
98f37f4bed [tx-robot] updated from transifex 2013-02-05 00:20:29 +01:00
Jenkins for ownCloud
2936140838 [tx-robot] updated from transifex 2013-02-03 00:06:15 +01:00
Jenkins for ownCloud
b29b55a332 [tx-robot] updated from transifex 2013-02-02 00:08:15 +01:00
Sam Tuke
0677d56ee2 Added debugging output relating to recrypting legacy files 2013-02-01 19:31:15 +00:00
Sam Tuke
06847f609b Improved support for detecting and recrypting legacy files. Bugs remain. 2013-01-31 19:40:51 +00:00
Sam Tuke
c6b3bdd5a0 Fixed compatibility with filecache rewrite merge 2013-01-31 17:51:46 +00:00
Sam Tuke
2183f77527 Fixed incompatibilities with filecache rewrite merge 2013-01-31 16:49:07 +00:00
Sam Tuke
31e723a907 Merge github.com:owncloud/core
Conflicts:
	lib/public/share.php
2013-01-31 16:30:37 +00:00
Jenkins for ownCloud
209d599ec5 [tx-robot] updated from transifex 2013-01-31 17:05:21 +01:00
Jenkins for ownCloud
00a30e6651 [tx-robot] updated from transifex 2013-01-31 00:31:28 +01:00
Sam Tuke
c7b1bdf00e Fixed handling of keyfile subdir creation
Improved keyfile subdir deletion (1 bug remains here)
2013-01-30 18:52:02 +00:00
Sam Tuke
61b23ce6cc Working on support for deleting directories (removing all keyfiles) 2013-01-30 17:25:17 +00:00
Thomas Mueller
8ded07dd5c first style fixes - @samtuke: I added some TODO regarding undefined variables and unreachable code - please review 2013-01-30 17:49:05 +01:00
Jenkins for ownCloud
68266e70f2 [tx-robot] updated from transifex 2013-01-30 00:25:41 +01:00
Sam Tuke
c1f20fe37a Made encyrption keyfiles be deleted when their parents are
Made encryption keyfiles be renamed when their parents are
Fixed bugs with encryptAll() execution on login
2013-01-29 19:54:40 +00:00
Jenkins for ownCloud
8c4931a645 [tx-robot] updated from transifex 2013-01-29 00:06:20 +01:00
Jenkins for ownCloud
b655444709 [tx-robot] updated from transifex 2013-01-28 00:05:43 +01:00
Jenkins for ownCloud
00a28062e1 [tx-robot] updated from transifex 2013-01-27 00:06:21 +01:00
Jenkins for ownCloud
af4411e33d [tx-robot] updated from transifex 2013-01-26 00:10:07 +01:00
Jenkins for ownCloud
6832dddf39 [tx-robot] updated from transifex 2013-01-25 00:05:56 +01:00
Sam Tuke
094213e231 Fixed many coding guidelines issues
Continued work on upgrade path via login hook listener
New spec file with notes
2013-01-24 18:37:34 +00:00
Thomas Mueller
ef88ceba8c drop SimpleTest compatibility 2013-01-24 16:47:17 +01:00
Jenkins for ownCloud
3ff32eba25 [tx-robot] updated from transifex 2013-01-24 00:07:38 +01:00