Commit graph

293 commits

Author SHA1 Message Date
Benjamin Neff
4b0e77b25a add more info to errors for better logging 2016-06-21 04:56:41 +02:00
Benjamin Neff
117ee79c8c validate that Participation parent exists and parent-author is local 2016-06-21 02:39:13 +02:00
Benjamin Neff
d054d42b86 use .to_h instead of Hash[] 2016-06-20 03:59:23 +02:00
Benjamin Neff
206b8d1eb9 use private_class_method with returned symbol of def 2016-06-20 03:35:26 +02:00
Benjamin Neff
f243082def only allow photos from the same author to be nested in status message 2016-06-17 18:34:27 +02:00
Benjamin Neff
4d7c7422c3 only allow messages from the same author to be nested in conversation 2016-06-17 18:28:42 +02:00
Benjamin Neff
c62bede41c message not relayable anymore
receive only from author and ignore signature checking, or from parent
author with valid signature.

see #36
2016-06-17 18:16:40 +02:00
Benjamin Neff
7f869a5cdf participation not relayable anymore
receive only from author and no signature checking

see #35
2016-06-17 17:52:58 +02:00
Benjamin Neff
77c3165c51 set parent_author_signature on RelayableRetraction if author is parent author
the target_author_signature is only checked, if the parent author
receives it. so the parent_author_signature is the important signature.
2016-06-05 16:17:05 +02:00
Benjamin Neff
4bde03e2de use RelatedEntity as normal nested entity, but don't add it to xml 2016-06-05 04:13:55 +02:00
Benjamin Neff
e5203182bf replace invalid characters from xml 2016-05-31 04:25:43 +02:00
Benjamin Neff
653b0fe276 instantiate nested entities if they are provided as hash
also add debug logging to entity constructor
2016-05-30 03:23:57 +02:00
Benjamin Neff
4ded6da139 Entity#to_h returns nested entities as hash 2016-05-30 03:22:07 +02:00
Benjamin Neff
8d422ddff1 debug logging for send magic envelope 2016-05-29 02:44:53 +02:00
Benjamin Neff
72ea858e25 add logger also as class method when included 2016-05-29 02:44:33 +02:00
Benjamin Neff
38922d5f30 add string representation to entities for better and easier logging 2016-05-15 00:11:04 +02:00
Benjamin Neff
58b22df9c5 convert entity name to needed format for fetching 2016-05-14 17:56:34 +02:00
Benjamin Neff
458265b78f fix rubocop offenses for rubocop 0.40.0 2016-05-11 02:22:48 +02:00
Benjamin Neff
a0f39b4f3a Revert "add ParentNotFound error, if parent can't be fetched"
This reverts commit 5a9ba266b4.

There is already a NotFetchable error ...
2016-05-07 12:44:58 +02:00
Benjamin Neff
5a9ba266b4 add ParentNotFound error, if parent can't be fetched 2016-05-07 03:12:33 +02:00
Benjamin Neff
5f3d25e5c4 fixed typo in logging 2016-05-02 03:58:25 +02:00
Benjamin Neff
c9d0b978d4 add validators for empty arrays 2016-04-29 03:59:24 +02:00
Benjamin Neff
28ab54abef use default values after parse xml 2016-04-29 02:59:09 +02:00
Benjamin Neff
8aa353a438 add validator for poll_answers 2016-04-29 01:32:49 +02:00
Benjamin Neff
4953d0c736 add debug logging on unenvelop 2016-04-27 23:14:05 +02:00
Benjamin Neff
53ba96acca simplify diaspora ID regex
hostname doesn't allow underscores, fixes #33
2016-04-23 23:48:03 +02:00
Benjamin Neff
0c4307a4de better logging for receiving 2016-04-03 03:34:53 +02:00
Benjamin Neff
a8af94f192 validates entity on receive if it can be public but is not 2016-04-03 00:01:50 +02:00
Benjamin Neff
c8be9083f0 move sender_valid? logic to Retraction and Relayable 2016-04-02 22:14:38 +02:00
Benjamin Neff
05cd90f073 validate sender for retraction and relayable 2016-04-01 03:51:24 +02:00
Benjamin Neff
c7c2957b07 fetch from remote if parent unknown locally 2016-03-31 04:33:52 +02:00
Benjamin Neff
6ef1545fd0 cleanup parent_type for relayables 2016-03-29 03:45:32 +02:00
Benjamin Neff
1d4d3d732d use shorter callback keys for key-callbacks 2016-03-29 02:42:19 +02:00
Benjamin Neff
2db0931ce5 write more tests for retractions 2016-03-29 02:30:43 +02:00
Benjamin Neff
f88a3abb3d use RelatedEntity as target for all Retractions 2016-03-28 21:15:21 +02:00
Benjamin Neff
01d45e225d use RelatedEntity as target for RelayableRetraction 2016-03-28 20:14:25 +02:00
Benjamin Neff
8f2b3e6a14 use data from parent-RelatedEntity for Relayables 2016-03-28 19:52:57 +02:00
Benjamin Neff
23fc8dc180 use related entity as parent for relayables 2016-03-28 17:46:37 +02:00
Benjamin Neff
3ac21b585b add fetch_related_entity callback 2016-03-28 17:23:38 +02:00
Benjamin Neff
1ee9d30ddb add related entity 2016-03-28 17:23:38 +02:00
Benjamin Neff
51723f95fa release version 0.0.13 2016-03-26 00:37:21 +01:00
Benjamin Neff
e67629041e require version for user agent 2016-03-26 00:37:12 +01:00
Benjamin Neff
6eb36931be improve documentation 2016-03-25 23:20:43 +01:00
Benjamin Neff
ef43104880 create new Contact entity
* replaces Request entity (better name)
* with following/sharing state
* should also be used as retraction-type

see #32
2016-03-23 01:28:06 +01:00
Benjamin Neff
20675b941a create public/private receiver 2016-03-21 01:05:13 +01:00
Benjamin Neff
ca0a853134 return MagicEnvelope after parsing a Slap 2016-03-21 01:05:13 +01:00
Benjamin Neff
e4b5e79842 create MagicEnvelope instance after unenvelop 2016-03-20 21:07:47 +01:00
Benjamin Neff
0990eff69c don't add key_id to legacy private encrypted slap xml 2016-03-20 17:54:52 +01:00
Benjamin Neff
3811cd0c03 move parse logic to receive methods 2016-03-20 17:39:41 +01:00
Benjamin Neff
3a83dc97ac use author_id from slap to fetch pubkey in magic-env 2016-03-20 17:16:08 +01:00
Benjamin Neff
4e0c7e205b create attr_reader for payload entity and sender on magic env instance 2016-03-20 17:08:58 +01:00
Benjamin Neff
930c3051c7 handle SignedRetraction and RelayableRetraction as Retraction after parse 2016-03-18 03:12:31 +01:00
Benjamin Neff
bd9cc67f5e create receiver for new protocol and write tests 2016-03-18 02:54:17 +01:00
Benjamin Neff
176425f881 rename Fetcher to HttpClient
don't use the same classname twice
2016-03-15 02:17:04 +01:00
Benjamin Neff
d83b6f14f5 create entity fetcher for public entities 2016-03-15 02:17:04 +01:00
Benjamin Neff
4a7fd52844 don't modify the parameter string in Entity.entity_class 2016-03-15 01:30:08 +01:00
Benjamin Neff
7e2815fabc create fetch entity callback
and url_to callback
2016-03-15 01:30:08 +01:00
Benjamin Neff
35ea1d3f70 create abstract post type with shared attributes 2016-03-11 03:44:09 +01:00
Benjamin Neff
57ed20719f add created_at to comment entity
this is a preparation for diaspora/diaspora#4269
2016-03-08 03:08:28 +01:00
Benjamin Neff
10c09752d2 xml_order and additional_xml_elements only for Relayables 2016-02-22 02:42:50 +01:00
Benjamin Neff
2cdaea0d70 move parse code to Entity 2016-02-20 20:23:33 +01:00
Benjamin Neff
2e3bf2f132 refactoring to_xml for SignedRetraction and RelayableRetraction 2016-02-20 02:06:32 +01:00
Benjamin Neff
d616e5fae9 refactoring to_xml and signing 2016-02-19 03:35:01 +01:00
Benjamin Neff
823db3ee18 refactoring xml generation
also refactoring `xml_name`
2016-02-18 03:17:08 +01:00
Benjamin Neff
03fe90ffaa Merge branch 'encrypted-salmon' into develop 2016-02-15 04:17:13 +01:00
Benjamin Neff
f1874f20bd add slap/magic-env switch to the receive-controller 2016-02-14 19:00:43 +01:00
Benjamin Neff
566ac9ff2d rename SlapReceiver and mark them deprecated 2016-02-14 01:36:18 +01:00
Benjamin Neff
76a4ea929b read sender from magic envelope and fetch key 2016-02-13 22:47:58 +01:00
Benjamin Neff
d2cdbd2aff mark slap classes as deprecated 2016-02-13 22:47:23 +01:00
Benjamin Neff
744e194b90 add EncryptedMagicEnvelope
This is a simpler replacement for the EncryptedSlap
2016-02-13 20:34:09 +01:00
Benjamin Neff
160da072b6 add key_id to magic envelope 2016-02-13 20:34:09 +01:00
Benjamin Neff
19621fecdf use different key for envelope and header 2016-02-13 20:34:08 +01:00
Benjamin Neff
c96369b36e add alias functionality to entities
* add diaspora_id alias to Person and Profile for Discovery
* also diaspora_id for AccountDeletion
2016-02-12 03:26:33 +01:00
Benjamin Neff
5ebda543a1 change diaspora_id to author
see #29
2016-02-10 03:17:10 +01:00
Benjamin Neff
1c2e2f560d Request: rename sender_id to diaspora_id
See #29
2016-02-06 21:19:09 +01:00
Benjamin Neff
5ce71f57d6 allow unwrapped XMLs 2016-02-06 03:10:48 +01:00
Benjamin Neff
76f6929668 add unknown xml elements to the xml again 2016-02-06 02:35:26 +01:00
Benjamin Neff
98ff8cbae0 add new (alphabetic) signature logic 2016-02-06 01:36:27 +01:00
Benjamin Neff
1c7a5ad3e6 add additional parsed xml properties to the entity-instance
allow mapping with `name` and `xml_name`
2016-02-05 21:13:30 +01:00
Benjamin Neff
cf5da6e1ab move guid and diaspora_id to Relayable 2016-02-03 01:59:14 +01:00
Benjamin Neff
cfbf401585 static legacy signature order 2016-02-02 03:02:44 +01:00
Benjamin Neff
b19e1b8e52 move signing logic for relayables to Relayable
refactoring exceptions for relayables
2016-01-31 20:22:51 +01:00
Benjamin Neff
714f6d8273 create own sign-logic for SignedRetraction and RelayableRetraction
this is a small code-duplication, but will be removed when
SignedRetraction and RelayableRetraction will be removed.
2016-01-31 15:29:41 +01:00
Benjamin Neff
f4f25e8663 add status to the update_pod callback 2016-01-30 18:28:37 +01:00
Benjamin Neff
530b534c42 Merge branch 'master' into develop 2016-01-23 03:01:00 +01:00
Benjamin Neff
0fb7ebc2c1 release version 0.0.12 2016-01-23 02:40:28 +01:00
Benjamin Neff
08ecfca5d3 rename target_type to parent_type in relayables
this is equivalent to parent_guid and parent_author_signature

also added a validator for parent_type
2016-01-22 01:05:42 +01:00
Benjamin Neff
8bd9c28ce0 override to_h to sign relayables 2016-01-21 23:40:36 +01:00
Benjamin Neff
1aead0ac5b refactoring RelayableRetraction and SignedRetraction signing 2016-01-21 05:27:48 +01:00
Benjamin Neff
adf14283e3 refactoring relayable signature-checking
verify signature after creating the entity instance
2016-01-21 05:27:48 +01:00
Benjamin Neff
583d567d67 bump rubocop and pronto-rubocop
make some refactorings for new cops
2016-01-19 01:32:22 +01:00
Benjamin Neff
fd1dd7988d improve documentation 2016-01-18 00:17:51 +01:00
Benjamin Neff
2d4f9a60d5 use obj_str for logging 2016-01-17 04:27:14 +01:00
Benjamin Neff
a0398430ed refactor encrypted slap to reuse it for every recipient 2016-01-14 03:46:01 +01:00
Benjamin Neff
c7f33d7cf4 rename 'pkey' to 'privkey' and 'pubkey' 2016-01-13 02:20:49 +01:00
Benjamin Neff
d852144f3c add send functionality 2016-01-12 02:36:32 +01:00
Benjamin Neff
aa84c4c40e move Receiver to Federation module 2016-01-11 02:30:32 +01:00
Benjamin Neff
1cc8fac8a1 add http config to DiasporaFederation 2016-01-11 01:54:48 +01:00
Benjamin Neff
0917fc2f19 allow photo.status_message_guid to be nil 2016-01-10 19:05:54 +01:00
Benjamin Neff
cf45416344 allow guid to be nilable 2016-01-10 18:55:32 +01:00