Commit Graph

155 Commits

Author SHA1 Message Date
csoler
60f51c358c - added new certificate format in ConfCertDialog and ConnectFriendWizard, with a button to switch to old format if necessary
- added automatic cleaning of certificates in both formats
- grouped all certificate cleaning/parsing code in rscertificate.cc
- removed unused files cleanupxpgp.h/cc
- added upper/lower case to rsid template.

The new format is to be tested. It is supposed to be much more robust than the previous format,
in particular, allowing any string for location names.


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5410 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-08-13 19:37:50 +00:00
csoler
bc07b16737 - added new class for certificate handling. Has two input/output format: classical pgp armoured block (old) and
new pure radix format, which is easier to parse and much more robust.
- added test program to load/parse certificates in both formats.


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5403 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-08-11 20:43:10 +00:00
thunder2
70aabe11f0 Switched off optimized compile on Windows (again).
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5376 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-08-02 23:25:28 +00:00
thunder2
fe95818384 Switched on optimized compile on Windows (again).
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5370 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-08-02 00:15:35 +00:00
drbob
bec1407648 Merged Code from: /branches/v0.5-new_cache_system/ into main trunk.
- Revisions 4771 => 5334

 * This merge brings a lot of unfinished code for GXS (new cache system)
 	- See branch commits for more details.
 * Code is disabled, and should have minimal effect on trunk build.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5338 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-27 15:03:16 +00:00
drbob
02b2c72f61 * Added a bunch of unfinished code for Id reputation management (#ifdef'd out).
* Disabled GXS services from compilation, or running as services.
 * moved retrodb.cc into newcache group, as it introduces new sqlite dependancy




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5333 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-27 12:45:52 +00:00
drbob
f34f617f00 Changes to get openpgpsdk version working on OSX.
- switch to OSX10.6 for upgraded SSL, with different fn signature.
 - correct library paths in libretroshare.pro



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5331 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-27 12:28:40 +00:00
thunder2
515a0abdb3 Switched to OpenSSL-1.0.1c for Windows compile.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5329 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-26 16:59:42 +00:00
chrisparker126
b2c74a045f Tidying up of libretroshare.pro, removed gxs from compilation
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5326 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-24 18:55:32 +00:00
thunder2
e305ab547d Moved the include folder OpenSSL to the other external includes for Windows compile.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5319 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-21 23:21:39 +00:00
csoler
9a45ddda5c added include path for proper packagign on ubuntu
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5299 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-14 21:43:24 +00:00
thunder2
703e5def72 Removed usages of gpg.h and cleaned pro-files for Windows.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5296 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-14 00:02:40 +00:00
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
ddf503a793 - moved pgpkey.h/cc into pgp directory
- fixed bug in key cleaning code


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5291 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-13 11:08:13 +00:00
chrisparker126
081b59ee1a Mods:
Updated dataservice tests and fixed subsequent bugs
added bug fixes for RetroDb and fixed postability issue (removed map.at use)

Added:

Data access module used as token service
gxs service backend (RsGenExchange) 
RsPhotoV2 which is a modification to deal with different interface provided by RsGenExchange
also added subsequent p3photoserviceV2
NxsTestHub to help with testing nxsnetservice (RsGxsNetService is not yet working)

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5274 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-05 21:26:14 +00:00
drbob
d83e1ea6ec More improvements to new Cache Services.
* Added p3Posted service. This is a *better* Links Cloud, based on the new Cache system.
 * Fixed p3GxsService retrival of Thread / Children messages.  (for Forum support).
 * Added Dummy Data for testing Forum integration.
 * switched on both these services in libretroshare



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5268 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-01 23:00:54 +00:00
thunder2
eac2c010c3 Fixed compile on Windows.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5264 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-01 20:08:28 +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
chrisparker126
d533a2e580 Nxs items now do not support the concept of version
timestamp has been added to grp sync item 
updated data service and grps to deal with this
added msg and grp meta types which serves to hold meta data of grp and msg 
removed observer temporarily 

updated nxs item tests, need to update data service tests

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5256 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-26 19:52:01 +00:00
csoler
8d070bb030 moved QoS down to pqistreamer pipes. This removes one out queue, and removes lags due to many packets being sent at ones.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5249 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-23 12:10:41 +00:00
drbob
48a1c66c60 Added Bandwidth Monitoring service to libretroshare to help debug Lag.
- p3bwctrl.h/.cc & rsbwctrlitems.h/.cc
	- New Interface in pqihandler to extract the data.
	- New Interface in rsconfig to display in GUI.
	- Added extra debugging in pqistreamer for catching big outqueues.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5241 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-21 23:23:46 +00:00
drbob
4ba7130884 Major Rewrite of the New Cache Based Services.
- Defined a generalised Group/Msg retrieval interface (RsTokenService), which is defined in rsidentity.h
	- Defined MetaData for both Groups and Messages (not finalised yet).
	- Implemented a general Data Backend for Local Testing of interface - inside p3gxsservice.cc
	- Modified services to use this temporary backend.
	- Added Wire and ForumV2 services.

Still lots to do:
	- work out request options.
	- finalise metadata.
	- group permissions.
	- identities



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5219 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-14 00:27:28 +00:00
chrisparker126
441a51757f returned src to compilable stage
added orig msgid and removed sign from nxsmsg, renamed nxsitems more appropriately 
added more code to nxs net service
removed msg versioning from data service and added extra msgField 
modified nxsitem test and datastore service appropriately, all pass 
added serialisation of transactions and added transaction number to nxsitems



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5215 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-11 21:56:23 +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
drbob
d29f158a66 Changed the RsIdentity GUI Interface from sync to async calls.
Added p3GsxService which provides example utility functions (to be incorporated in GXS at some point)




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5199 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-07 17:10:47 +00:00
chrisparker126
822e395f93 added more extensive test for rsdataservice and subsequent bug fixes.
added test for RsNxsTransac item. 
applied rule of three to RsTlvBinaryData (destructor, assign op, copy constructor implemented)

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5196 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-05 14:46:18 +00:00
chrisparker126
768cf49da6 updated rsnxsitem test and added appropriate fixes.
fixed undeclared virtual methods in rsdataservice, added test files
overloaded assignment op for Rstlvbindata 
 

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5187 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-24 22:38:59 +00:00
chrisparker126
add4715da0 implemented most of rsdataservice,
updated rsnxsitems with discrete msgs and grp item rather than collection of msgs/grps
added flags header file 
added first declaration of implemented genexchange service (client API interface)

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5180 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-21 22:07:43 +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
chrisparker126
50a0ed0656 libretroshare src now compilable.
nxsitems not tested yet
renamed retrodb src file to .cc regular librs naming convention
wrote deserialisation section of nxsitems, need to write print and clear rsitem base functions

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5144 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-05 19:55:24 +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
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
4299d09741 patched openpgpsdkfor c++ compilation, added test program, started retroshare PGPHandler component
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5050 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-03-26 21:17:04 +00:00
chrisparker126
030b009f9a added RetroDb:
- tests added which pass on windows. 

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5036 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-03-18 14:06:36 +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
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
drbob
459b51e814 Addition of the Basics of the New Identity Service.
- Provides Real & Pseudonym Ids.
	- Real Ids are tied to GPG Ids using a One-Way Hash.
Added IDS for QCHESS and ARADO plugins.
Added new RsIdentity external interface.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@4932 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-13 18:22:35 +00:00
drbob
3ab62f147e Adding backends for new Plugin Services: Photo and Wiki.
- These are dummy services at the moment, 
	- they only hold stuff the current session and don't use the network at all.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@4889 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-04 14:16:39 +00:00
drbob
15ea61caa3 More changes for V0.5.3a
- Updated English Email Invite (sorry guys, you'll have to redo translations).
 - Set OSX default style to "Cleanlooks" - as AQUA style hides some windows.
 - Updated Version strings to V0.5.3a. / 4874
 - Fixed missing headers for plugin manager.
 - Disabled ZEROCONF for OSX.
 


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4874 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-03 00:15:49 +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
csoler
4422d6557b added method for removign signatures in a PGP certificate, and a test program to test it. Not yet plugged in into RS
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4831 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-22 19:55:10 +00:00
chrisparker126
cf5158d2b0 added new declaration for retrodb and removed sqlite reference.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@4804 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-16 21:52:22 +00:00
chrisparker126
2504c0fd9a added more interface declarations and comments clarifying
resposibility


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@4803 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-15 13:07:31 +00:00
drbob
79998dd70c Added Native (Bonjour API) Nat Port Forwarding to OSX.
* new classe p3zcNatAssist
 * moved some common ZeroConf functions / definitions around.
 * moved virtual tick() to parent class: pqiNetAssist
 * added zcNetAssist section to makefiles. (active for OSX build)
 * setup switch between p3zcNatAssist & upnphandler in rsinit.cc

NOTE: Still to test network restart, etc, and correct exchange of external Ip Address.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4800 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-14 16:41:00 +00:00
drbob
96c9071920 Changes to support Relays.
* added p3BitDht::addKnownNode() so that DhtIds can be used instead of SslIds.
 * switched from bdStdDht() functions to use bdModDht().
 * made DhtFunctions a class variable.
 * added function to modify NodePerBucket() parameter.
 * Bugfix for LinkType. peerConnectAddress.flags was not initialised.
 * Extra debugging of LinkType data (use LINKMGR_DEBUG_LINKTYPE).
 * cleaned up udprelay output.
 * Added Compile Rules to libretroshare.pro for building LocalNet Testing Version. (testnetwork)




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4795 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-14 01:54:17 +00:00
chrisparker126
3f0c811917 initial addition general exchange service interfaces
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@4781 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-11 23:01:29 +00:00
drbob
e232b1d47d Finished up Relay Interface code to p3bitdht.
- RelayServers, Relay Parameters & Relay Mode supported.
 - Store configuration via p3config.
 - New interface code in p3bitdht_relay.cc
 - Updated external interface rsdht.cc



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4730 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-20 02:07:00 +00:00
drbob
4d2175636e Added basic ZeroConf interface.
- registers oneself, browses and resolves services.
 - Lots still TODO:
	- parse TxtRecords.
	- Track peers.
	- feedback to libretroshare
	- etc, etc.
Enabled ZeroConf in libretroshare.pro & rsinit.cc. Compiles and runs on OSX.
Added RelayHandler to Dht, to enable external control of Relays.
Marked pqiAssist Interface for changes... will be revamped with ZeroConf.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4727 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-13 16:19:37 +00:00
drbob
f01d06c806 Added first part of p3banlist.
This is a service to exchange bad IP addresses within Retroshare network.
 


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4684 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-23 16:40:32 +00:00