Commit Graph

269 Commits

Author SHA1 Message Date
csoler
fc8dfcf65b Merged branch v0.5-OpenPGP into trunk:
User-level changes:
==================
- libgpgme is not used anymore; it is replaced by a built-in piece of code called OpenPGP-SDK 
  (http://openpgp.nominet.org.uk/cgi-bin/trac.cgi) that was improved to be used by RetroShare
  for handling PGP keys.

- the gnupg keyring is not used anymore. Now, RetroShare has it's own gpg keyring, shared by all instances.
  On linux it's located in ~/.retroshare/pgp/. A lock system prevents multiple locations to read/write keyrings
  simultaneously.

- the trust database from gnupg is not documented, so RetroShare cannot import it. This comes from the fact that
  the GPG standard (RFC4880) asks explicitly not to export trust information. So RetroShare has it's own 
  trust DB shared by locations. This means you need to re-trust people. Sorry for that!

- at start, if no keyring is found, RS will propose to copy the gnupg keyring to use your existing keys. Clicking on 
  "OK" will do the copy, and you should find back all existing locations, except for DSA keys.

- locations for which the suitable keypair is not in the keyring will not be displayed in the login window
- locations for which the suitable keypair is not a RSA/RSA key will not be displayed. RetroShare does not
  support DSA/Elgamal keypairs yet.

- a key import/export exchange function has been added in the certificate creation window (you go there from the login
  window by clicking on "manage keys/locations". This allows to easily create a new location with the same pgp key on
  another computer. To obtain a suitable keypair using gnupg, you need to concatenate the encrypted private key and the 
  public key into an ascii file. This can be done using:
  		gpg -a --export-secret-keys [your ID] > mykey.asc
		gpg -a --export [your ID] >> mykey.asc

- importing a key with subkeys in not yet possible. Please remove subkeys before importing.

- The code has been tested for a reasonnable amount of time, but it's not possible to prevent some new bugs 
  to appear. Please report them asap supplying: call-stacks if possible, and terminal output. In particular,
  openpgp has some assert()'s that should not be triggered unless RetroShare is calling it in an improper way.

Internal changes
================
- a specific component, PGPHandler, takes care of the interface between openpgp-sdk and RetroShare
  openpgp-sdk is c-code, with it's own memory management, which has been kept well separated from 
  RetroShare.

- GPG Ids are now a specific class (not a std::string anymore) for code consistency reasons. As strings are
  still used in many places, this requires a few conversions. In particular, AuthGPG takes strings as
  function params and calls GPGHandler with the proper PGPIdType class. In the future, RetroShare should
  only use PGPIdType. The same will be done for SSL ids.

- signature cleaning is still handled by the Retroshare built-in function, not by openpgp, but we will 
  do this later.

Still to do
===========
- DSA needs subkey handling, since the encryption is performed by a Elgamal subkey. Not sure this will be done.
- GPGIds/SSLIds cleaning (meaning replace strings by appropriate types). Lots of confusion throughout the code in retroshare-gui in particular.
- key removal from keyring. This is a challenge to keep locations synchronised.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5293 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-13 21:53:39 +00:00
csoler
f68cc45461 updated .pro files for compilation
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5261 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-01 13:15:36 +00:00
drbob
7501d92882 Added new display window for monitor bandwidth rates with peers.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5242 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-21 23:24:53 +00:00
thunder2
1885fb66c4 - Enabled compile on Windows (bzip2 library needed).
- Fixed crash after the second call to RsInit::InitRetroShare when keyring does not exist.
The instance of AuthSSL was created twice and AuthGPG was deleted without stopping the thread. Stopped the AuthGPG thread on exit of RetroShare.
- Added the correct path to the keyring for Windows in RsInit::copyGnuPGKeyrings.
- Changed the detection of the portable version on Windows from the file "gpg.exe" to the file "portable".

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5211 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-10 00:29:46 +00:00
thunder2
50bc57b0fe Sort participants list in the chat lobby case insensitive.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5186 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-24 19:26:43 +00:00
thunder2
22a0f89751 Redesigned ConnectFriendWizard as ui file.
Added new base class DropLineEdit.
Fixed german language.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5181 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-22 22:24:10 +00:00
thunder2
443703e61f Switched back to not optimized compile on Windows.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5178 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-21 19:06:16 +00:00
thunder2
dc2d6c975e - Moved HandleRichText from the folder "chat" to "util" and redesigned the source
- Extended RsHtml::formatText to replace the RetroShare links with an image and enabled this for the certificate links in the system messages (friend recommendation and user request)
- Added new ObjectPainter for painting a button on a pixmap


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5160 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-12 00:40:53 +00:00
thunder2
9df55782a3 Switched on optimized compile on Windows.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5136 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-03 14:33:34 +00:00
csoler
ce5e6d3949 fixed password handling
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5127 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-29 11:57:03 +00:00
thunder2
9501a4fe2c Added new friend request toaster from defnax.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5120 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-25 19:19:16 +00:00
thunder2
10400faf4c Removed minimal version.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5113 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-20 15:17:52 +00:00
csoler
b43fb7e8b3 - added encryption / decryption of files and memory
- started implementation of new AuthGPG


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5084 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-08 14:52:01 +00:00
thunder2
7756b093bf Added new basic class for a QLineEdit with a clear button - LineEditClear.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5080 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-05 21:03:03 +00:00
defnax
70a7d6ce40 Added Friend Request Dialog for SecurityItem
Fixed the horizontal spacers

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5077 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-04 15:44:35 +00:00
thunder2
37986e00a3 Added three new toasters - private chat, group chat and chat lobby.
Fixed some utf8 issues in toasters and feeds.
Fixed german language.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5065 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-03-30 23:02:52 +00:00
thunder2
523d0c0865 Fixed compile with shadow build.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5011 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-03-10 00:23:22 +00:00
thunder2
96199fabc5 Fixed linking of the VOIP plugin on Windows.
Exports all symbols from RetroShare.exe and import it in the plugins.
Removed the direct linking of the libretroshare and libbitdht from the plugins.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5003 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-28 21:59:01 +00:00
defnax
67c3321ae4 update changelog and corrected some path for win libs
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4974 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-20 12:38:04 +00:00
csoler
ee5dcd1a8c - moved RsAutoUpdatePage into retroshare-gui/ directory, to allow plugins to use it
- removed VOIP code from main executable. Moved it into VOIP plugin (c.f next commit)



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4963 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-19 15:03:07 +00:00
csoler
5679a30e67 Improvement to plugin system:
- made config page system more automatic, to allow addign config pages from plugins
- added (disabled) checkbox and function to allow all plugins for development
- added config page methods to RsPlugin class



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4957 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-18 14:55:50 +00:00
thunder2
970d88200d Removed some more compiler warnings from Windows compile (GCC 4.4).
Added -Wextra to the Windows compile.
Added new define in libbitdht for snprintf and fprintf to proper handling of "%ll" under Windows.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4951 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-17 10:03:38 +00:00
thunder2
340a313fea Fixed bug when the user clicks on a link without http:// in a QTextBrowser. This link was opened directly in RetroShare.
Show clickable links in the channel feed message.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4923 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-11 13:42:42 +00:00
thunder2
3b314e3a69 Added multi friend recommendation dialog.
You can start it from the tools menu in FriendsDialog.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4913 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-09 19:18:15 +00:00
drbob
4e5e149a95 Patch from Peter - to build Retroshare on FreeBSD.
- Fixup BSD qmake parameters: mainly library locations.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4863 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-29 14:27:14 +00:00
thunder2
e6816c9d6f Added new common widget FriendSelectionWidget for selecting friends and use it in CreateLobbyDialog, ShareKey (forums and channels) and MessageComposer.
Fixed german language.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4850 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-27 00:32:17 +00:00
thunder2
3cba51abf4 Reworked SoundManager and SoundPage in the settings.
Added new icon in the statusbar to switch off the sound.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4832 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-22 22:58:23 +00:00
thunder2
35c7605704 Extracted a new widget ChatWidget for the basic chat handling from the PopupChatDialog and use it in ChatLobbyDialog too.
Added an own ui for the ChatLobbyDialog.
Saved settings of the ChatLobbyDialog.
Changed parameters of RsStatus interface from "std::string" to "const std::string&"
Fixed german language.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4806 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-17 20:36:36 +00:00
thunder2
6c626e180f Chat lobby:
- added new notifier to p3ChatService
GUI:
- list all public and private chat lobbies
- added subscribe/unsubscribe
- added new basic widget ChatTabWidget and use it in PopupChatWindow and ChatLobbyDialog
- added a tabbed dialog for every subscribed chat lobby

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4782 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-12 00:13:25 +00:00
csoler
30411659e0 a bit of gui. Not working yet.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4760 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-07 21:01:43 +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
drbob
ac6f0fcfe4 --- Merging r4718 through r4752 from branches/v0.5-dhtmods
Added ZeroConf for OSX.
Changes for Relay Support.

Summary of Changes:
libbitdht
----------
 * added Relay Flags to bdNode::setNodeDhtMode()
 * added dropRelayServers() / pingRelayServers() functions for mode switches
 * added utility function:  bdFriendList::findPeersWithFlags()
 * added utility function:  bdSpace::clean_node_flags(uint32_t flags)
 * added RelayMode to ConnectManager.
 * added failedConnection callback when in Server Mode.
 * added incomplete udpproxylayer code. (not compiled)

libretroshare
-------------
 * added Configuration to p3BitDht for storing Relay Settings. (bit Hackish!)
 * added RelayHandler & getRelayReceiver() - to outsource some Relay functions.
 * + RelayHandler_InstallRelayConnection() & RelayHandler_LogFailedProxyAttempt()
 * added RelayServer, Mode and RelayAllowance to external DHT interface.
 * added p3PeerMgr::getGpgId() for ZeroConf usage.
 * updated parts of pqiassist virtual interfaces.
 * added Bandwidth storage to udprelay.
 * modified the way Relay Slots are allocated to match GUI interface.
 * ZeroConf now working on OSX.
 * added ZeroConf to OSX compilation.
 * extended rsDht interface to expose Relay configuration.

retroshare-gui
--------------
 * added Relay configuration panel.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4753 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-06 15:33:51 +00:00
csoler
60bb76e3df Imported chat lobby function from branch v0.5-ChatLobby (merged commits 4682-4739)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4740 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-27 16:32:19 +00:00
drbob
00b1161ace Added Relay Configuration Panel.
- Handles rsDht Relay settings.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4731 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-20 02:09:27 +00:00
thunder2
0ee35b55f4 Added new widget for hashing files.
Added new common class FilesDefs to handle informations of file types like icons and names.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4713 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-07 13:08:12 +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
csoler
6c93253050 - derived new class of PopupChatDialog to handle chat lobbies
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-ChatLobby@4694 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-27 21:04:10 +00:00
csoler
5cdc36d730 Basic methods and a bit of interface for chat lobby.
Next:
- chat lobby algorithmics (cache+broadcast system)
- invitation handling
- specification of chat lobby window with list of known/unknown participants


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-ChatLobby@4685 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-23 22:10:37 +00:00
csoler
43cbc153ed added dialog to select files to DL from collection files
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4667 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-09 21:26:51 +00:00
csoler
50d5c1159d Added the hability to create and handle collection files. A collection file contains a directory structure
and files that RS can DL seamlessly in the DL directory. Collection files are created from shared files
and can be handled by righ-clicking on them in Transfers and Shared files. Handling is based on the extension,
that must be "rscollection".


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4664 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-07 23:07:25 +00:00
csoler
01a93b5f36 commited rest of AsamK patch for factoring friend list.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4645 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-10-20 21:34:44 +00:00
csoler
6a585517f0 corrected previous commit. Included file that does not exist yet
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4640 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-10-15 17:41:48 +00:00
csoler
2b6d2ede7c added missing lib to link line for ubuntu oneiric
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4639 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-10-15 17:38:43 +00:00
thunder2
29c090fb44 Moved the chat history into the libretroshare.
Now the history is saved encrypted. Please delete all files with "chat*.xml" in your profile folder.
Added new config p3HistoryMgr and interface p3History.
Added new option to limit the count of the saved history items.
Added new simple html optimizer "RsHtml::optimizeHtml" to reduce the size of the html strings.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4623 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-29 09:20:09 +00:00
drbob
5ea8cfb67d Added Ben's patches:
* Compilation for FreeBSD.
	* Notes that MT is not cryptographically secure.
	* modified sorting of DHT Window.

Only one change that I didn't commit:

 bitdht {
-       LIBS += ../../libbitdht/src/lib/libbitdht.a
-       PRE_TARGETDEPS *= ../../libbitdht/src/lib/libbitdht.a
+       LIBS += ../../libbitdht/src/libbitdht.a
+       PRE_TARGETDEPS *= ../../libbitdht/src/libbitdht.a
 }

As this would have broken compilation on the other platforms.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4619 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-28 15:16:21 +00:00
thunder2
62b2de63b7 Added new widget to display an avatar with or without the status frame - AvatarWidget.
Changed all existing avatars to AvatarWidget.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4589 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-05 21:19:07 +00:00
thunder2
b35d32ef15 Added avatar image to ConfCertDialog (defnax).
Added new class AvatarDefs to get the avatar for a ssl id or gpg id.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4585 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-02 10:22:44 +00:00
thunder2
d25730eabb - Removed not used function RsDirUtil::createBackup.
- Moved ProfileView and ProfileEdit to the folder unfinished.
- Removed "location:" before the ssl name in FriendsDialog and MessengerWindow.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4567 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-14 22:31:05 +00:00
thunder2
cd0854c4e8 Removed duplicate labels in ui files and some other compiler warnings.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4565 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-13 22:26:51 +00:00
drbob
70d0328a3b Hacked up Cyril's TurtleStatistics to provide plot of RTT measurements.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4520 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-03 17:45:03 +00:00