Commit Graph

326 Commits

Author SHA1 Message Date
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
csoler
10eab84b7c fixed bug due to misinterpreting non SSLid drectories as potential locations
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5328 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-25 22:43:43 +00:00
csoler
ee77ec8c6c added warning for unsupported keys. It is triggered when no valid keypairs are found at start, and when unsupported keys pairs are found when copying the keyring
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5317 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-20 19:00:10 +00:00
csoler
7a04f22eef attempt at fixing the .gnupg/ lookout issue at start
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5306 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-16 21:23:01 +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
f5c276c9b5 improved error handling
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5289 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-12 19:20:31 +00:00
csoler
c9eb267165 implemented export of identity (to create additional locations easily). Import still to do...
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5285 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-10 21:40:53 +00:00
csoler
0a6c60d2df added filtering of private key for login window, and fixed uid at cert creation time
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5282 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-08 21:06:41 +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
drbob
91b878fd61 bugfixes: added debug printout and added as service.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5243 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-21 23:52:39 +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
csoler
9357a228a6 added read/write of trust database in private format
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5237 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-20 21:59:04 +00:00
thunder2
af19809ef7 Fixed crash and memory leak in parse_literal_data.
Added "break" in RsInit::InitRetroShare.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5225 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-16 09:40:59 +00:00
thunder2
f50edd228f - Fixed compile on Windows. Added new type "rs_lock_handle_t" for file locking functions.
- Added missing check of file pointer in PGPHandler::decryptTextFromFile
- Added missing fclose of the ssl passphrase file in RsLoginHandler::getSSLPasswdFromGPGFile. Is this still needed, because PGPHandler::decryptTextFromFile does the same check?
- Fixed possible memory leak in ops_decrypt_memory.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5222 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-14 22:53:02 +00:00
csoler
dba66cdd7a added check for DSA/RSA key algorithm. Disabled make friend, login and cert creation, with unsupported keys
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5221 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-14 20:13:31 +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
csoler
f30a3f1b16 - moved lock handle functions to rsdir.h/cc
- created a scope guard to manage file lock handles
- added lock gards to PGP keyring read/writes.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5216 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-12 20:31:13 +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
csoler
a91e859b66 added dialog box to import existing keyrings when starting the new pgp version for the first time
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5210 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-09 21:01:22 +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
thunder2
a6dfac2a37 Removed std::stringstream.
Removed not necessary include <sstream>.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5112 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-19 22:10:00 +00:00
thunder2
545743ad77 Removed some std::ostringstream.
To be continued.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5097 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-14 00:30:23 +00:00
csoler
fa429ad8d4 added caching of GPG information to PGPHandler
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5086 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-09 17:03:47 +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
drbob
f08c5bea2e Added BSD specific changes - data directory and #including <sys/params.h>
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4968 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-19 20:05:41 +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
a2982f3370 Fixed private message notification. Remove offline private messages of none friends at startup and when a friend is removed.
Moved the removing of the history of removed friends from p3PeerMgrIMPL to p3ChatService.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4940 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-14 22:55:14 +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
00ff694e10 Fixed default data rates to sensible options: 200 kB/s down, 50 kB/s up.
Added StoreAllKeys() call after adding new GPG Certificate.
Added Check for successful Req creation (was crashing with NULL pointer).
Switched std::vector.data => &(std::vector[0]) to remove linuxism in radix64.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4851 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-27 13:03:59 +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
fc949ce5d0 --- Merging r4753 through r4779 from /svnroot/retroshare/branches/v0.5-dhtmods
Merging Dht Relay improvements into the trunk. These changes should finally make relays functional.
There are still some service changes required to reduce the traffic over relays.

Summary of Changes
---------------------

 * Changed the way proxy/relay peers are selected in bdConnection. (needs more work).
 * Added LinkType to peer info in p3LinkMgr & rspeers.h interface.
 * Added getConnectionType() to p3PeerMgr. This defaults to FRIEND for the moment.
 * Provide information about Bandwidth, Transport and Peer Type via LinkType().
 * Added RateCap() to limit traffic over Relay connections.
 * Set Internal Rate to 75% of Relay Limit to account for transport overhead.
 * Added various #include "util/rswin.h" to fix compile errors with standard ssl package.
 * Removed Local variables (mConnectProxyAddr, etc) which were hiding Class Variables.
 * Cleaned up bits in pqissl.cc and p3linkmgr.cc
 * Increased UDP Relay Packet size (max transport of 1400 bytes per UDP packet)
 * Modified checkRelay() to use Low Pass Filter to calculate Relay Bandwidth.
 * Improved udprelay debugging.
 * increased (x2) Relay Lifetimes - this is so that enough useful data can be transported (1meg).
 * Added LOCALNET_TESTING code to rsinit.cc. This allows Port Restrictions to simulate firewalls.
 * more debugging and minor bugfixes.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4780 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-11 11:54:28 +00:00
drbob
9e5e07d3f0 Reversed Changes for Testing Purposes.
* Disabled lots of debugging.
 * Disabled LOCAL test mode in udpstunner, rsinit
 * Enabled BadPeer checking in bitdht.
 * Restored normal timeout periods for connection attempts.
 * Restored normal connection levels for dht status.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4779 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-11 10:24:37 +00:00
drbob
5936b6542a Hack to disable proxy connections - for testing.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4757 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-07 12:22:30 +00:00
drbob
af5f23e0e7 Changes to enable a LAN Relay Test Environment.
NB: Reverse Most of these changes - before adding to Trunk!!!!

 * Added missing BitDht callback functions for test/example code.
 * Switch tests/example to OSX compile.
 * DISABLE_BAD_PEER_FILTER (as it doesn't like local net)
 * Reduced Minimum Peer Counts for DHT to be considered active.
 * Added LOCALNET_TESTING to rsinit.cc 
	- new Commandline Option -R <lport-uport> to restrict UDP ports.
	- Enables LocalNet in UdpStunner.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4756 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-07 11:28:00 +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
drbob
73471b2618 Bugfixes for ZeroConf under OSX.
- Added Timeouts for Resolve and QueryIP, as these can continue indefinitely.
	- Added more debugging.
	- rotated port number using ntohs().
	- Filtered Self.
	- Allowed Other SSL IDs of Self to connect.
	- Fixed QueryIP to use hosttarget instead of servicename.
	- fixed Id order in mPeerMgr->addFriend().
	- fixed p3ZeroConf initialisation call.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4752 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-06 12:48:04 +00:00
csoler
43be20c0ed added manual entry for plugins
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4734 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-22 20:17:59 +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
thunder2
f3a0924461 Reverted some of my last changes:
- removing the core lock in RsServer::ConfigGetDataRates
- changes in p3ConfigMgr::loadConfig

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4726 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-12 16:07:38 +00:00
thunder2
e150e31401 Optimized startup of RetroShare by removing two unnecessary calls to AuthGPGimpl::storeAllKeys.
Fixed small hangs of RetroShare by removing the core lock in RsServer::ConfigGetDataRates. Is that needed?

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4725 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-12 09:37:03 +00:00
csoler
c9fc77f2d1 removed calls to exit() in rsinit. Replaced them by proper return false
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4711 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-06 23:00:42 +00:00
drbob
92c53ff0d2 * silly ( A || B) bug... B isn't called if A is true. Stopped addition of Entries in p3BanList
* Only include External Addresses in the Peer Ban scheme (done in LinkMgr and p3BanList)
 * Disabled p3Dsdv before it is too widely used.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4704 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-01 17:21:52 +00:00
drbob
85ea54395b Improvement to BanPeers Sharing Code.
* Added p3BanList as a service.
 * Added interfaces to communicate addresses.
 * Added debug to p3BanList.
 * Fixed several bugs in the AddEntry/Condense
 * Fixed Mutex deadlocks.

Improvements to Dsdv code too.
 * Added p3Dsdv as a service.
 * Added Function to create a TEST service for routing.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4687 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-25 00:58:01 +00:00
drbob
7b0a33c318 Incremental DHT improvement - support in libretroshare.
- Added missing Mutex protection in p3BitDht.
	- Added p3BitDht::addKnownPeer() to communicate with libbitdht.
	- Disabled placeholder versions (addFriend/AddFriendOfFriend)
	- Added netAssistKnownPeer() libretroshare interface.
	- Added calls to netAssistKnownPeer() from p3disc and p3NetMgr.
	- Check for NULL ptr in p3NetMgr before calling p3PeerMgr.
	- Added FIX to maintain MANUAL FORWARD port (untested!)
	- Removed some compiler warnings.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4681 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-22 13:24:42 +00:00
chrisparker126
c1af9b13ad fix for windows plugin system
uses call back to expose the retroshare interface to plugins



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4633 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-10-08 17:47:36 +00:00
thunder2
363af69254 Fixed utf8 issue in history manager.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4626 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-10-01 13:12:28 +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
thunder2
43c0594d18 Changed some parameters from "std::string" to "const std::string&" in rsinit.h.
Log the error messages from gpgme (ProcessPGPmeError) to stderr.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4560 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-12 20:02:00 +00:00
thunder2
687b2ecd36 The password dialog can be canceled.
Fixed an error when cancel the login password dialog at startup. RetroShare did not start after this.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4537 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-05 20:45:09 +00:00
drbob
8066862833 Fixed Bug in choosing port for Proxy UDP. Chooses a Random one between 30000-50000.
It was using the same port as the DHT, and switching to a Random one, on its own.
 * Added debugging for net reset.
 * Added further debugging for ssl (reset + killing existing connections)



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4530 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-04 22:57:12 +00:00
drbob
e993068521 Added Test Service for determining VoIP possibilities.
* Measures Lag and Clock offset, by pinging peers periodically.
 * added interface so the results can be plotted.
 * added serialisers for ping/pong data types.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4519 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-03 17:43:26 +00:00
drbob
31ec7a074b Net, Dht and Configuration changes.
* set PortForward in NetStateBox when the Network has been setup.
 * add GeneralConfig to rsConfig external interface.
 * enabled ADVANCED configuration option.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4500 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-30 16:57:40 +00:00
drbob
86bdc5dfd0 More Plumbing changes.
* Forgot that RELAY connections need extra parameters.
 * Added proxyAddr, srcAddr and Bandwidth parameters to connection attempts.
 * Completed UDP connection callouts from p3bitdht.
 * Added TCP connection attempt initiation from p3bitdht.
 * Added PASSIVE / ACTIVE determination in p3bitdht.
 * completed UDP connection logic in pqissludp.
 * enabled UDPSTUN_ALLOW_LOCALNET for testing.
 * added CONSTs for TOU Receiver Indices.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4446 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-14 14:56:33 +00:00
drbob
8d5bde1b50 Added Virtual Interfaces for p3LinkMgr, p3NetMgr & p3PeerMgr.
Shifted real functionality to p3LinkMgrIMPL, p3NetMgrIMPL p3PeerMgrIMPL
This allows us to test most objects with dummy objects (i.e. no need for full AuthSSL/AuthGPG objects)



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4441 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-13 14:22:25 +00:00
drbob
c2a0309f05 Added RsConfig class which will in the future support most of the interface from rsinit.h & rsiface.h
* Moved rsnetwork.h => rsconfig.h
 * Implemented Network functions (call p3NetMgr) in RsConfig.
 * Implemented UserLevel (New/Basic/Casual/Power) Levels
 * added p3PeerMgr::haveOnceConnected() function, for UserLevel support.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4431 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-11 18:48:56 +00:00
drbob
59abce2d48 Added missing functions to get retroshare running again.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4420 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-10 01:49:39 +00:00
drbob
bbd11e69c1 Changes to libretroshare to get it to compile (still missing fns - so won't link yet!)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4419 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-10 00:41:39 +00:00
drbob
f6f721a492 Removed p3ConnectMgr. Replaced it with p3LinkMgr, p3NetMgr and p3PeerMgr.
Updated references in other classes.
 * Most classes need p3LinkMgr, and only use two functions: OwnId() and getOnlineList()




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4416 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-09 18:39:34 +00:00
drbob
11cc3fce04 Added External DHT Interface to display Connection Information.
* added retroshare/rsdht.h
 * extended p3bitdht to provide RsDht interface. (p3bitdht_interface.cc)
 * added UdpRelay to networking stack. 
 * started expansion of p3bitdht to handle connections.
 * added <string> header to rsthreads.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4399 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-06 13:04:50 +00:00
csoler
ccfbfa9984 Improvement of the plugin system:
- Added configuration saving for plugin manager and serialization methods
	- added a list of accepted plugin hashes
	- added plugin widget for each plugin in settings, to allow enabling/disabling plugins
	- updated LinkCloud plugin to new rsPlugin class
	- put the addconfiguration for plugin manager in rsinit.cc a bit earlier to allow to load 
		the list of accepted hashes early enough
	- added icon for disabled plugins



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4393 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-05 20:29:07 +00:00
drbob
b683e663d6 Merged Changes /branches/v0.5-peernet/libretroshare/:r4237-4358
Major changes are:
 * Improvements to tcponudp library to allow multiple UdpStacks / ports, with alternative recievers.
 * Resurrected the UdpStunner code, and improved it.
 * Added UdpRelay code.
 * Modified startup code and ssludp code to use the new tcponudp and add a stunner.
 * fixed buggy rs_inet_ntoa
 * fixed a bunch of apple gcc warnings. mainly for(;;); => for(;;) ;

These changes shouldn't affect libretroshare stability... those changes will follow!




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4359 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-06-29 18:02:44 +00:00
csoler
e07e8e8d48 made "." be a plugin directory for debugging only
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4326 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-06-23 18:55:15 +00:00
csoler
e6f2d22a8c added settings page for plugins.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4283 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-06-17 19:59:01 +00:00
csoler
a2c91a7924 - Added basic infrastructure to plugin system in libretroshare and retroshare-gui.
- ported LinksCloud to a new plugin, and removed it from main sources

Next moves:
- add gui for managing plugins
- handle windows compilation



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4275 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-06-16 21:59:26 +00:00
thunder2
72d9f352e3 Removed the difference of the separator for Linux and Windows.
Removed extra "/" of the filename (e.g. "E://") of the hashed file when sharing a whole drive.
Recompile of the gui needed.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4200 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-05-15 12:42:55 +00:00
thunder2
20fa00c40e Added handling of RetroShare protocol under Windows.
Added new command line parameter "-r retroshare://..." for adding links to the registered running RetroShare.
Recompile of the GUI needed.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4156 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-04-14 21:59:51 +00:00
thunder2
bc113326e4 Fixed problem with utf characters in the %APPDATA% path on Windows.
Added function for opening files on Windows and Linux - RsDirUtil::rs_fopen.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4124 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-04-03 23:11:38 +00:00
thunder2
f9c896c3ac Fixed crash on shutdown of RetroShare, when the cache loading is running.
Now the p3distrib threads are stopped before the instance of AuthGPG is deleted.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4119 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-04-03 16:20:47 +00:00
thunder2
cfcb6ac5c4 Show last error (GetLastError) in log when lock file cannot be accessed on Windows.
Fixed german language.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4101 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-03-21 22:16:03 +00:00
chrisparker126
2dd6581f14 added lockfile path info to the multiple-instances warning window in rs-
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4098 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-03-16 23:25:57 +00:00
thunder2
c64cb3b5f2 Share the download directory by default.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4090 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-03-08 23:29:21 +00:00
csoler
081cfee461 made init port random, depending on the SSL id
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4026 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-02-09 20:21:28 +00:00
drbob
0dcef10ec2 Fixed the FriendFeed backup of messages:
* switched to one universal PendingCache list.
   * added mHistoricalCaches variable to p3distrib - to indicate when old caches have been loaded.
   * added calls to p3GroupDistrib::HistoricalCachesDone() in rsinit.cc
   * added "historical" parameter to lots of p3distrib functions.
   * updated child classes to only add FeedItems if (historical == false).
   * Switched Validate / Duplicate Msg checks to speed up historical data load.
   * corrected rsrandom function for OSX.
   * bugfix to rsloginhandler function. (compile error).
   


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4008 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-02-02 21:03:46 +00:00
csoler
8c35ecdc67 Cleaned the login code:
- Added a RsLoginHandler class, responsible for storing/loading the SSL passwd from keyrings/disk/gpg file
- Removed RsInitConfig::havePasswd, RsInitConfig::haveHelp, etc.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4007 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-02-01 23:27:53 +00:00
drbob
71798f4e8a moved p3distrib loading to background thread.
* Added Cache Queues to p3distrib.
 * Created p3ThreadedService class.
 * added code to launch these threads.
 * debug code to see loading.

Seems to be far too many called to gpg->verifySignature()... to look at.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3998 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-30 01:37:59 +00:00
drbob
1f9395058c Added OSX keychain functionality.
* Done save and read, need to do "remove autologin" . 
       This can be done manually through KeyChain Acess program.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3997 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-30 00:13:52 +00:00
csoler
29d143bebc - made the SSL passwd more secure (10^126 different passwds now) and random, based on the internal Mersenne twister.
- kepts compatibility with existing autologin passwds. Only new locations will have a long 64 chars passwd.
- implemented storage of SSL password in gnome keyring for autologin on ubuntu
- added UBUNTU define in both .pro files.
- suppressed display of SSL passwd at login



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3993 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-29 14:27:16 +00:00
csoler
8de9d39cc0 Suppressed 4 memory leaks:
- authssl would call OPENSSL_malloc without OPENSSL_free
- pqistore was not deleting items in pqiSSLStore when BIN_FLAGS_NO_DELETE is not here
- rsdir/rsinit were calling opendir withoug closedir (which might eat FDs, in addition)
- udplayer was not freeing it's 16KB buffer at end of loop.


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3948 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-01 20:37:10 +00:00
csoler
98f471c56b added auto-remove of unused and dummy locations every 10 minutes (still keeping at least one location for each GPG key). Suppressed exchange of p3disc info for dummy locations.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3915 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-12-14 21:56:37 +00:00
csoler
516bfa4b9a moved crashfile retro.log into the current SSLID directory to avoid conflict between multiple RS instances running on the same computer
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3889 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-30 22:12:41 +00:00
csoler
b4da2948ed corrected spell error in data directory for linux to enable consistency with packager installation: /usr/bin/Retroshare -> /usr/bin/RetroShare
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3830 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-19 22:40:08 +00:00
thunder2
0e41211f3c Added new return codes to RsInit::InitRetroShare to know, what failed.
Show error box when gpg initialization failed.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3744 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-03 22:54:34 +00:00
thunder2
8e583f58be Changed path for the DHT bootstrap file to RetroShare's exe dir for Windows.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3742 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-03 01:33:49 +00:00
drbob
634dbca14f Added Installation of BitDHT bootstrap file.
* new DataDirectory Function in rsinit.cc
  * new copyFile() and checkFile() functions in rsdirutils.
  * bdboot.txt is checked for and copied over if missing.

NB: This has been tested under OSX, but Linux / Windows need checking.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3713 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-28 22:59:46 +00:00
thunder2
3a60e8cecb Added service functionality to AuthGPG for load and save of certificates in the background (prepared for more when needed).
Added p3disc as service and process the certificats of RsDiscReply with AuthGPG service.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3669 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-13 16:15:26 +00:00
thunder2
f4bbd3e933 Limit the concurrent connection attempts in Windows XP. Its's only a hack.
Problem:
RetroShare connects to all ssl's at once. In Windows XP there is a build-in connection limit of concurrent incomplete connections.

Quote:
"The TCP/IP stack in Windows XP with Service Pack 2 (SP2) installed limits the number of concurrent, incomplete outbound TCP connection attempts. When the limit is reached, subsequent connection attempts are put in a queue and resolved at a fixed rate so that there are only a limited number of connections in the incomplete state."

This results in a high usage of the nonepaged pool and when it runs over the limit it results in the following error in the system log:
German:  "TCP/IP hat das Sicherheitslimit erreicht, das für die Anzahl gleichzeitiger TCP-Verbindungsversuche festgelegt wurde."
English: "TCP/IP has reached the security limit imposed on the number of concurrent (incomplete) TCP connect attempts."

After a longer runtime of RetroShare and a very high usage of the nonepaged pool all connections of all running programs are lost and no new connections can be made. At the end it can cause a blue screen.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3631 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-07 11:17:42 +00:00
drbob
6cf3521e0b * Extra Debugging for DHT integration.
* Moved bootstrap location from current directory to CONFIG/bdboot.txt
 * Corrected DHT OwnId.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3579 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-01 19:48:53 +00:00
thunder2
0ebcdaabd9 Prevent multiple instances from running on Windows systems.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3566 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-09-30 00:27:23 +00:00
thunder2
37fe5ff3a3 Save incoming not read private chat messages in config and delete it after reading.
Added queue for outgoing private offline chat messages. The queue is also saved until the private chat message could be delivered.
It does not work in the short time between the shutdown of the peer and the switch of the state to offline for that peer. For this we need a response of the peer.
Need recompile.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3517 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-09-21 00:08:06 +00:00
chrisparker126
52e0d2a095 added new individual config saving system
global signature file format will be converted


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3514 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-09-18 19:09:11 +00:00
csoler
b3f27e13db corrected compilation bug
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3432 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-09-02 18:58:10 +00:00
chrisparker126
fd76e2ec4b checked in fix to cmd console rsinit.cc, pls test and get back to me
use USE_CMD_ARGS define in windows which enables use of cmd 
line console args 

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3423 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-09-01 21:08:08 +00:00
thunder2
8832f7dfc5 Introduced a minimal version of RetroShare.
You can enable it in libretroshare.pro and RetroShare.pro by uncomment
CONFIG += minimal

This enables two new defines for stripping all not needed things
- libretroshare: MINIMAL_LIBRS
- GUI:           MINIMAL_RSGUI

and removes not needed files from build (see end of the files libretroshare.pro and RetroShare.pro).

Beware: All data of the stripped services are lost

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3414 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-08-31 20:00:49 +00:00
leander-256
4bb4fc11e2 This intimidating patch renames libretroshare/src/rsiface/ to
libretroshare/src/retroshare/

All the relevant headers have been modified to reflect that change.

This allows installation of libretroshare on a system, headers will
be put in $WHEREVER/retroshare/ and we keep the ability to compile
against them, be it on the system or in the SVN tree.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3342 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-08-06 09:40:23 +00:00
drbob
627b0f88a2 * Fixed up UDP Port "netReset()" (was stuck on 7812, now follows your tcp port).
* OSX Bug: doesn't like classes in C files. switched to void * pointer.
 * A little extra debugging in pqissl on disconnects.
 * switched on bitdht by default in libretroshare.pro



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3334 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-08-02 23:21:59 +00:00
drbob
fcdd7ee113 Changes to integrate bitdht into libretroshare.
Mainly re-organising tcponudp... 
	tests->test area
	network->trash (uses libbitdht classes).
	new udp interfaces (udppeer + udpstunner)

Changes include:
	* p3bitdht: added "addReceiver() call, and more debugging. 
	* p3bitdht: added DO_IDLE flag so searches are continous.
	* p3bitdht/pqiassist: matched up Assist interface.
	* fixed pqiNetListener interface.
	* rsinit/p3connmgr: setup udp init
	* tcpstream: switched to new udp receiver.
	* added "blogs" switch in libretroshare.pro (was stopping compiling ;)
	* added "bitdht" switch in libretroshare.pro 



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3323 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-31 18:14:10 +00:00
thunder2
e3e4c97369 RsAutoUpdatePage
- Changed the timer of RsAutoUpdatePage to a single-shot timer.
  The update can take longer than the given timer interval.

Changed status service:
- send status when the peer connects (new monitor)
- send status to all online peers only when user changed it (not in every timer tick)

MessengerWindow:
- remove load and save of custom state string in settings

p3ChatService::sendCustomState
- send empty custom state string too

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3307 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-20 19:45:07 +00:00
drbob
4157aff291 * Removed old DHT Code, removed other references too.
* Added interface class to bitDHT. (p3bitdht.h)
 * Added Optional section in libretroshare.pro



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3296 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-17 17:00:19 +00:00
drbob
518de7b8c8 'open' Complained it needed 3rd argment (don't know why???)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3250 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-04 10:59:04 +00:00
drbob
ae4ee9df00 Networking REWORK: Changes for other bits
* Fixed #includes in upnp
 * switched p3disc over to the new data types.
 * added new source to .pro file
 * minor changes to other code.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3249 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-04 10:42:17 +00:00
leander-256
fe46d7618a Prevent multiple instances from running on Unix systems.
Every call to RsInit::LoadCertificates() now creates a file:
~/.retroshare/xxxxxxxxxxxxxxxxxxxx/lock
which is then bound to a system lock (fcntl F_SETLK).

If the lock request fails, it means another instance is already
running with the same profile.


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3241 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-01 20:30:36 +00:00
csoler
f7ff141a37 restored the retroshare-nogui executable
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3225 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-27 16:28:44 +00:00
thunder2
918decfd0d fixed compile on Windows
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3224 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-27 00:18:33 +00:00
drbob
863a29fda1 NETWORK REWORK (cont)
Rework of AuthSSL: cleanup and split up.

 * Split out independent SSL functions into sslfns.h / sslfns.cc
 * Reworked SSL certificate storage.
 * Reworked SignDataBin / VerifyDataBin (fixed memory leaks).
 * Removed funny code: /* cert->cert_info->key->pkey is NULL */ 
     - just use X509_get_pubkey() instead.
 * Removed lots of old code.
 * Fixed up Mutex usage in AuthSSL - which was random.
 * Removed certificates from tlvSignature serialiser obj.
 * removed certificates from p3distrib messages.
 * Starting removing "unused parameter" compiler warnings.
 * Various related changes to make libretroshare compile.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3222 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-26 12:31:24 +00:00
drbob
47a2f06094 * disabled UDP and TUNNEL connections for debugging purposes.
This is done in libretroshare.pro - if you want to reenable them.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3201 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-24 18:06:10 +00:00
drbob
30210cf9ec * removed SSL ex_data sharing of sslids in pqissl+authssl.
This used an unprotected singleton -> bad... Probably killed a lot of connections.
 * removed mConnMgr tests in authssl 
	AuthSSL shouldn't use ConnectMgr. what happened to abstraction / seperation of function???
	This code prevents quick reconnections.

 * Disabled AuthSSL from adding new SSL peers.
	This functionality is important... but should be handled elsewhere (p3connmgr or pqissl)



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3200 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-24 17:41:34 +00:00
thunder2
c3b6da6386 cleaned some compiler warnings
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3092 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-09 19:51:46 +00:00
thunder2
334c9b61d3 moved rsGlobalShutDown from MainWindow::doQuit to main
rsGlobalShutDown now cleans the threads and some memory on exit

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3028 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-29 15:14:25 +00:00
drbob
61e8d588a8 Added ClearFeedItems() function to pqinotify interface.
Clear NewsFeeds after Cache loading so we only see new stuff.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2974 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-23 16:35:42 +00:00
chrisparker126
e48ede4841 added key backup and restore to p3distrib service
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2957 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-19 22:40:53 +00:00
astei
a726f3c063 rm a few blankies
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2871 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-08 21:48:14 +00:00
astei
f2f7a3b77d Close tracker id 2994519 by applying patch, looks clean to me.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2870 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-08 21:44:08 +00:00
chrisparker126
7652e831e8 removed unused files qblog
- redundant 



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2868 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-08 17:00:41 +00:00
chrisparker126
e1c4992680 added some minor feature to channels
- clean up of channels old (> storeperiod) cache file downloads called at rsglobal shutdown

- added extrafilehash and extra-remove to rschannels, so it chooses appropriate way to add files (correct book-keeping)
   - added extra files not copied to chan dir if over 100mb (high overhead)
- added limit to channels auto-download (1gig)




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2866 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-08 16:10:34 +00:00
thunder2
ed566d85b9 sorry, forgot one #ifdef for portable version
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2841 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-02 22:28:33 +00:00
thunder2
e5e43741d6 Portable version for Windows.
RetroShare checks for locale gpg.exe and gpgme-w32spawn.exe and if exists, it starts as portable version.
Modified version of libgpgme-11.dll needed.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2815 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-30 14:34:48 +00:00
csoler
1b4a70dbb3 - ported trunk commit 2801 into branch
Currently the only way to induce a bug is start rs for an ssl_id which
	which does not have a password saved, then try use an ssl id at start
	dialog  which does or does not have a pword (help_pword:bool enters an
	illegal state) 

	I have fixed it by checking if rsinit::passwd == "" then trying to load for
	that ssl_id, if that fails then i set help_pword to false; does not have
	password and pass flow to gpg to ask for passwd. (problem was rs thought
	user had help/pass file and they didn't).

	i have checked it in and tested for
	1. starting with ssl_id which has saved pword, and switching ids at start
		dialog
	2. secondary id may or may not have saved pword. 

- added check for the result of fscanf



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2802 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-27 18:50:37 +00:00
chrisparker126
3364b35064 Currently the only way to induce a bug is start rs for an ssl_id which which does not have a password saved, then try use an ssl id at start dialog which does or does not have a pword (help_pword:bool enters an illegal state)
I have fixed it by checking if rsinit::passwd == "" then trying to load for that ssl_id,
if that fails then i set help_pword to false; does not have password and pass flow to gpg to ask for passwd. (problem was rs thought user had help/pass file and they didn't).

i have checked it in and tested for
1. starting with ssl_id which has saved pword, and switching ids at start dialog
2. secondary id may or may not have saved pword. 


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2801 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-27 15:39:21 +00:00
defnax
3577fb9acf fixed to get work rsStatus under Windows moved out from if def.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2745 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-20 17:10:45 +00:00
csoler
38463c905e ported branch commit 2732: fixed deadlock in passwd callback
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2734 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-19 21:50:03 +00:00
chrisparker126
300952d2a6 finished status service
- can be called use rs interface rstatus
- does not save last rs session status yet

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2715 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-15 10:47:48 +00:00
chrisparker126
aef367ebff added commandline option '-U' to allow user to access different profile
- in the situation where autologin is enabled 
- BUG found (or rather autologin induced it), if one asks to make friends to a peer (in ConfCertDialg) 'within' a session that uses autologin it freezes 

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2703 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-10 22:06:11 +00:00
joss17
9f8a032d93 block the notify callback of authgpg when the main windows is launched
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2698 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-08 19:08:41 +00:00
chrisparker126
1485ccbe87 tested autologin on windows, seems fine
-removed #ifdef , seems

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2691 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-08 13:24:08 +00:00
chrisparker126
658946bcd2 Added support for Auto-login
- Using rc4 to store ssl pword on file for linux,  for windows already using cryptprotect
 - yes its not safe, but its the user's choice to keep pword or not
 - consider using method closely hooked to linux kernel (another layer of obfuscation)
 - windows i believe is stronger (because its proprietary/ heavily obfuscated)

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2690 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-08 12:02:46 +00:00
joss17
bba533a392 disable the ssl cert config persistance
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2436 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-02-26 16:43:08 +00:00
joss17
5de1f4db50 implementation of an SSL binary encryption
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2424 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-02-25 22:42:42 +00:00
csoler
3d11b15490 warning suppression, removed unused p3portservice from compilation
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2408 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-02-23 22:17:06 +00:00
csoler
b899327f13 improved display of turtle routing info, corrected some minor compilation issues
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2248 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-02-08 23:09:46 +00:00
joss17
bf67301d71 remove a maximum of debug outputs for the release
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2232 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-02-07 21:28:40 +00:00
chrisparker126
cf6d69c66e added blogs
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2182 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-02-03 22:53:35 +00:00
joss17
e142c63180 update start wizard, change gui settings directory into ssl profile directory (RestroShare.conf)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2141 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-27 22:31:25 +00:00
csoler
7fd5c7ad4b restaured priority queue methods, and made better context menues.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2135 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-26 23:25:00 +00:00
csoler
7b35b7dc6a added some more robust tests in certificate creation
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2134 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-26 20:41:55 +00:00
joss17
8bfd696430 solve a bug with gpg signature summary
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2119 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-24 22:20:13 +00:00
joss17
ac580a6c07 add location to account detail at startup, and improve the peersdialog
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2075 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-18 22:44:09 +00:00
joss17
af68fa36ce add key generation at startup if no gpg key found
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2068 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-18 12:30:54 +00:00
joss17
3f22602b6c adding a deleted ssl friends persistence in p3disc to avoid getting back a friend we just deleted
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2051 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-15 21:09:25 +00:00
joss17
3742d3bd8b add persistence of accepted gpg key to connect with
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2019 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-13 21:26:30 +00:00
joss17
9976b80566 remove the ssl cert storage. Big rewrite of ssl cert and friend management
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2017 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-13 21:22:52 +00:00
joss17
485f27dc11 allow ssl connection with a new cert, ad a friend when happening
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2014 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-13 21:16:56 +00:00
joss17
bb45fa3db5 working gui version for peers dialog
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2013 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-13 21:16:18 +00:00
joss17
45b2287d41 remove the store of the pgp password
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2008 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-13 21:06:53 +00:00
joss17
9c17aced37 implemented the sign, trust and validitty functionnality in authGPG. Fix a singleton bug for authGPG and authSSL
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2007 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-13 21:05:38 +00:00
joss17
6055c30832 code cleaning
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2006 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-13 21:03:36 +00:00
joss17
7d0854fd90 fix a bug in rsinit with pgp name
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2004 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-13 21:01:55 +00:00
joss17
9d53481946 make it run
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2003 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-13 21:01:06 +00:00
joss17
a0a64fb588 make it compile
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2002 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-13 20:58:58 +00:00
joss17
c23407cae3 get rid of p3authmgr
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2001 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-13 20:56:55 +00:00
joss17
bd5df3a9ea first separation between authSSL and authGPG
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1999 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-13 20:52:31 +00:00
joss17
6b9392fcae Add heartbeat (an empty packet, wich is 100 bytes long) in p3disc every 4 seconds
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1929 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-12-22 10:41:19 +00:00
joss17
b7ace087e6 remove DHT from rsInit
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1881 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-12-14 18:10:49 +00:00
joss17
fdb3673ce2 Add the tunneling connection. Warning, encryption is not implemented yet for tunnel connection, use only for testing.
Redesign the udp connection
Remove the rsiface duplicates from retroshare-gui.
Add some randomness in timings for connect manager

Merge branch 'connectionTunneling'

Conflicts:
	libretroshare/src/libretroshare.pro
	libretroshare/src/pqi/p3connmgr.cc
	retroshare-gui/src/RetroShare.pro
	retroshare-gui/src/rsiface/rsfiles.h
	retroshare-gui/src/rsiface/rstypes.h

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1867 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-12-13 21:59:26 +00:00
csoler
37adbae4c1 suppressed unused include of p3files
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1794 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-11-05 20:16:14 +00:00
joss17
6fba28ee0d Solve windows gpg bug and modify windows .pro project files qtcreator
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1787 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-10-30 00:46:58 +00:00
joss17
5d6f6f00f4 initialization of a variable
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1783 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-10-30 00:45:40 +00:00
joss17
173ae69b9f solve configuration bug
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1742 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-10-28 18:08:17 +00:00
joss17
8db756eda3 removed useless log
;

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1741 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-10-27 20:50:55 +00:00
joss17
c00928a349 change back the engine setting. Now it should work with gpg1 and gpg2
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1740 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-10-27 20:50:30 +00:00
joss17
6f7b21944c fix the length of the encrypting ssl passphrase
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1738 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-10-27 20:48:31 +00:00
joss17
af3e43ce4e code cleaning
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1732 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-10-27 20:46:17 +00:00
joss17
96fd660065 code cleaning
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1731 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-10-27 20:45:58 +00:00
joss17
9132dcf700 code cleaning
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1729 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-10-27 20:39:14 +00:00
joss17
070bc5bdd3 Revert "removed useless initAuth"
This reverts commit 19e73391f92581fb6b7ce3216e8bd23bd143e9ec.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1587 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-09-02 21:12:05 +00:00
csoler
6de5024634 corrected bug in conversion char * (from gpgme) into string
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1586 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-09-02 19:31:10 +00:00
joss17
055f9141a6 removed useless initAuth
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1584 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-09-02 19:20:15 +00:00
joss17
674a6dc719 remove log sslPassword
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1583 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-09-02 17:49:28 +00:00
joss17
6db7ae1fe5 add error handling. Maybe some code review ciould be a good idea
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1556 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-08-18 12:44:54 +00:00
joss17
1bb1aa0fc5 add return when decrypting went wrong
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1555 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-08-18 12:44:32 +00:00
joss17
0a28f35eea encrypt and decrypt ssl password
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1550 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-08-18 12:43:19 +00:00
drbob
2bf94b909a Reworking of networking code to enable Net Restart.
* Stun code now runs continually - to check external network state.
  * Udpsorter controls DHT stun is on/off. (via p3ConnectMgr)
  * added code to enable threads to join/restart 
  * enabled NetRestart for UDP and TCP.
  * tweaked networking code for faster startup (now ~30 seconds - can still be improved).
  * tweaked debug messages for testing networking
  * Added test for checking external IP address determination.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1492 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-08-04 23:22:44 +00:00
drbob
502183da88 Bug fixes to get the Windows V0.5.0 working.
* Missing some RsInitConfig::s
 * Updated config-mingw.mk for pgp configuration.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1454 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-07-31 13:11:33 +00:00
drbob
a023a0bfcd Major change to the way certificates are stored now defaults to ~/.retroshare/SSLID/
* supports Multiple Accounts on same computer.
	* Enabled libretroshare tests using Makefiles.
	* restructured RsInit functions: Config Data is now private.
	* switch OpenPGP on by default (added #define to rsinit).
	


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1451 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-07-30 21:27:47 +00:00