Commit Graph

77 Commits

Author SHA1 Message Date
csoler
80f4401e88 - implemented DH protocol for PFS encryption in distant chat between GXS ids.
- changed format of keyId in rstlvkeys.{h,cc}, but kept the serialisation for backward compatibility (A #define needs to be removed to fix it for good). Updated rsrecogn, rsmsgitems, gxssecurity accordingly
- added "chat peer" in IdDialog to help testing distant chat.

Distant chat works and is now encrypted. The GUI still needs some smoothing: display of correct peer names
in chat window, remove the need to add a message in p3chatservice.cc:3217 to force poping up the chat window.

- added MsgAddress class to handle generic address types while keeping type separation in Messages. Not used yet.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7403 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-06-12 10:28:23 +00:00
csoler
b6c68d1812 - started changing distant chat so that it works with GXS ids instead of PGP ids. Something is still broken in
service control. Crypto is not done yet => distant chat is unencrypted.
- changed GUI for distant chat. Removed invitation system.
- added menu item to distant chat GXS ids from IdentityItem (only entry point for now).
- fixed bug in chat lobbies causing re-connexion of lobbies not to happen everytime (bug reported bu Lain)



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7378 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-05-25 21:43:05 +00:00
drbob
190988c3cc Switched most of the services to use p3ServiceControl instead of p3LinkMgr.
- Added a couple of utility fns to p3ServiceControl too.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7211 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-03-29 03:57:44 +00:00
drbob
83a78bcaee Added ServiceControl + ServiceInfo. Basics are working, but still a lot to do!
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7196 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-03-22 03:53:44 +00:00
chrisparker126
0f29d28b1b merge of branch v0.6-idclean 7180
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7187 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-03-17 20:56:06 +00:00
drbob
c0738eec7f Merging branches/v0.6-initdev into trunk.
These split at 6672 -> 7075, so quite a bit merge.
libretroshare compiles - but untested.
retroshare-gui needs GenCertDialog.ui and IdEditDialog.ui to be properly merged. (compile errors).
some plugins will be broken.
retroshare-nogui is untested.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7078 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-02-01 14:16:15 +00:00
csoler
ee4985c935 patch "Fix_ChatLobbyAutoSubscribe_6951.diff" from Phenom. Fixes request for existing lobbies when no lobby ihas been found yet. Code beautification
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6971 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-12-27 20:21:44 +00:00
csoler
5c52890ad5 added grouter as a msg sending service. Not enable yet. Added serialisation for grouter items and test methods in tests/serialiser/. Added saveList/loadList for grouter. set connectToTurtleRouter() and connectToGRouter() to be mandatory methods
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6970 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-12-27 20:06:47 +00:00
csoler
e4e28c733c added the possibility to distant chat with unverified identities, while warning the user about it. Should help distant chatting.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6812 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-10-07 20:49:02 +00:00
csoler
695e417fd5 changed std::wstring for std::string+utf8 in chat, and messages
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6795 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-10-03 21:41:34 +00:00
csoler
8e7fe9f79b made file transfer a service. Removed all the old FT code from pqiHandler, and got rid of deprecated CRC32 computation/exchange methods
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6782 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-10-01 08:11:15 +00:00
csoler
8ffc0e05de added control for suspicious message activity in chat lobbies. Lobby items are not bounced if coming from a peer that sends more messages per seconds than a given limit. The limit is adaptive and depends on lobby count
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6751 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-19 22:10:24 +00:00
csoler
ff0495c684 fixed uninitialized memory read when sendign a message to a lobby that was previously unsubscribed
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6695 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-05 20:55:59 +00:00
csoler
3865c14583 modified patch from AC to remove messages with security issues (e.g. Billion Laughs bomb). The message is replaced by a warning, and is not forwarded
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6562 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-08-08 09:55:19 +00:00
csoler
14890ef007 added ACK system to make sure the secured tunnels for distant chat are actually working, before one starts using it.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6502 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-07-14 13:59:38 +00:00
csoler
7414659bd9 Patch (modified) from Phenom to allow auto-subscribe to chat lobbies
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6466 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-06-29 16:15:33 +00:00
csoler
69bf523c7a Enabled distant chat system.
Added system to collect and create chat invites from pgp keys.
Finished the GUI (some layouts need fixing, especially the link creation window).
Still needed: QoS on generic turtle data items. Will need a new item class for any anyway.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6433 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-06-16 14:39:44 +00:00
csoler
ff544da72e added proper tunnel closing mechanism with notification of the talking peer, and popups to inform the chat participants
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6430 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-06-13 21:12:07 +00:00
csoler
42db43e590 - fixed a few bugs in PopupDistantChatDialog (Possible deadlock, wrong window for private chat)
- added method to properly close distant chat conversation (Still needs some work)
- improved chat link creation window + clipboard copy



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6426 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-06-12 21:10:09 +00:00
csoler
cb9f174efa added tunnel state light to distant chat popup dialog. Added proper peer name. Changed method for adding widgets in the chat bar
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-GenericTunneling@6337 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-23 22:43:19 +00:00
csoler
2485f9fffd added saving of ongoing chat invite links. Fixed a deadlock
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-GenericTunneling@6327 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-22 20:49:58 +00:00
csoler
1c3ff8c54b - lots of debugging.
- added missing bits to turtle router for better handling symmetric traffic 


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-GenericTunneling@6321 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-20 18:56:06 +00:00
csoler
56e71b51fa added notifications so that the distant chat window pops up
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-GenericTunneling@6319 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-19 22:24:25 +00:00
csoler
ff867d0fe5 most of the protocol for distant chat works! Still needs some testing.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-GenericTunneling@6315 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-18 21:41:13 +00:00
csoler
dc0193ae66 added popup chat window for distant chat, decryption code for private chat links. (W) does not compile
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-GenericTunneling@6310 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-16 21:13:42 +00:00
csoler
5a889eb1cd added method to get list of existing private chat links
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-GenericTunneling@6306 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-14 15:05:24 +00:00
csoler
d0703df7e3 basic gui entry for creating a chat link. Fixed a few bugs
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-GenericTunneling@6302 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-10 21:21:52 +00:00
csoler
43b9117293 - added creation of chat link info
- added binary data encryption to PGPHandler



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-GenericTunneling@6301 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-10 20:28:13 +00:00
csoler
f12ad9583d - added functions to add/remove virtual peers in turtle client service
- removed all explicit connections between turtle and FT
- added tunnel and invitation management in p3ChatServer (still needs PGP encryption)



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-GenericTunneling@6300 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-10 08:52:52 +00:00
csoler
e9a51455eb added crypto functions and msg sending/receiving for private distant chat
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-GenericTunneling@6299 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-08 21:25:32 +00:00
csoler
7f53f0e0cc added consistent detection of time-shift in chat lobbies. Shows a warning when the shift is larger than 2^9 seconds (approx. 10 minutes. Warning shown only once).
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6242 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-18 23:19:37 +00:00
csoler
d01745e54f Made the private lobbies more accessible:
- record which friend participates in a lobby even after they unsubscribed. The lobby list that is sent to these 
  friends contains the privaye lobby as well. In practice, people jsut need to be invited once to a private lobby. 
  Afterwards, they get the lobby in the list of nearby lobbies and can join by clicking on it.

- added new item RsChatLobbyList_deprecated2, to replace old existing item. Should be removed in v0.6
- changed PublicLobbies for VisibleLobbies in the code, to avoid confusion

- the change is backward compatible, although old peers won't receive private lobby info from new peers, of course.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5942 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-12-04 21:36:05 +00:00
thunder2
1855d19436 Added check for empty lobby nick name.
Moved notify of lobby nick name change from the gui to p3ChatService.
Added missing mutex locks for p3ChatService::_default_nick_name.
Recompile needed.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5184 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-23 22:33:45 +00:00
notdefine
d5bdae7bd9 Display old and new nickname to Peers during nickname change in ChatLobby.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5151 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-06 22:57:08 +00:00
notdefine
22bfcb62bc Preparation for mute Peers in the Chat Lobby.
RS_CHAT_LOBBY_EVENT_PEER_CHANGE_NICKNAME is send, when changing nickname, so the blocklist can be updated (in future).

This will never wort for 100% as discussed in the developer forum, but should stop the most spam.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5150 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-06 22:19:59 +00:00
csoler
65cde95fba - added/fixed patch from defnax to allow setting up a topic for each chat lobby. The topic is displayed to friends.
- handled backward compatibility by keeping/sending old LobbyList item. Should be remove in the near future.
- removed constraint to have at least one friends invited when creating a new lobby.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5024 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-03-16 22:47:49 +00:00
csoler
aa4eecf467 changed hash calculation of lobby connexion challenge to make it only usable by the receiver (thx bob to point me out this security issue!)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4895 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-06 21:00:09 +00:00
csoler
c3be19227d Suppressed echoes in chat lobbies by:
- adding a time stamp to lobby events (new item tag)
- controllign time stamp of lobby msg and event: drop packets if time is older than cache duration.
- moved connexion challenge code to lobby management loop
- added new type of lobby invite to handle connexion challenges and avoid false invitations in the GUI

New lobby event format is not backward compatible -> "peer typing" and "peer joined/left" will need 
the new version. Messages are still compatible)



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4859 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-27 23:13:28 +00:00
csoler
fe156882ae added keep-alive packet to lobbies to maintain up-to-date list of listenners. Will need to play a bit with delays...
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4839 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-23 22:49:47 +00:00
thunder2
3a271abf11 Added history for chat lobbies and disabled it until the lobbies are saved.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4813 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-18 20:47:32 +00:00
csoler
7d7101a62d improved counting method for public lobbies
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4802 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-15 13:00:57 +00:00
csoler
485c394e2b added interface methods for public lobby exchange and subscription to public lobbies. Need a GUI now
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4759 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-07 19:52:58 +00:00
csoler
434ba06c82 added exchange and auto-update of public chat lobby lists.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4758 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-07 13:33:30 +00:00
csoler
e9d6940b09 Improvements to chat lobbies:
- added generic methods and items for bouncing generic objects through lobbies
	- added handling of peer typing status
	- proper handling of peer join/leave lobby
	- added sub item ids to lobby messages to allow proper message splitting
	- made 2 different message splitting methods for normal chat vs. lobbies. In v0.6, we'll have to handle all messages the same way.
	- added parent id to RsChatLobbyMsgItem, to allow threaded chat.
	- added possibility to make a lobby public/private (not yet fully working)
	- added items for requesting/exchanging list of public lobbies at friends' (not yet fully working)
	- major cleaning of p3chatservice.cc

Next move:
	- gui for listing friend public lobbies, joining them, etc.
	- load/save of persistent lobbies.
	- autoremove of inactive lobbies

Warning: lobby message items of this version are incompatible with previous versions. It won't crash, but
messages will not pass through.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4755 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-06 22:17:08 +00:00
csoler
94608c8467 added list of participants in lobby, handled large messages using splitted display (cannot ensure rebuilt message yet.)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4745 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-29 14:19:53 +00:00
csoler
b6f8e2a306 added leaving notification to chat lobby
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4743 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-28 22:33:37 +00:00
csoler
3addb36e4c added unsubscribe protocol, updated GUI
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-ChatLobby@4738 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-27 13:47:37 +00:00
csoler
cc57ab2462 added load/save of default nickname, plus some debugging
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-ChatLobby@4737 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-26 22:43:54 +00:00
csoler
d4abb42788 added challenge protocol to securely improve lobby connectivity
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-ChatLobby@4735 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-26 14:45:45 +00:00
csoler
71a079b55f added chat lobby creation window
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-ChatLobby@4709 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-04 22:03:54 +00:00