Commit Graph

801 Commits

Author SHA1 Message Date
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
csoler
c27f695a37 updated to trunk of openpgp-sdk
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5078 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-04 19:27:07 +00:00
thunder2
9f627783aa Fixed deadlock when receiving a chat message with open history browser.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5042 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-03-20 21:25:39 +00:00
csoler
889a2b2433 Added deferred check of chunks during file transfer. Chunk sha1 sums are requested to the sources and checked for downloaded data.
Validated chunks are shared to other peers. Force check is now very simple since it just turns all chunks into "needs checking" mode
and sums are asked to sources. Sources maintain a temporary cache of chunks. Since sums are requested sparsely, this should not 
affect the sources in terms of performance. We can still imagine precomputing and saving sha1 of chunks while hashing them.

For backward compatibility reasons, the following has been setup *temporarily* in this version:
- unvalidated chunks are still considered as already obtained, and are shared and saved
- force check has been disabled
- final file check is maintained
- in case of file fail, the old checking mode will be used.

All changes for next version are kept in the define 'USE_NEW_CHUNK_CHECKING_CODE' that will be made the default in a few weeks.
At start, I expect most chunk to stya yellow during download, until most sources are able to provide chunk hashs.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5019 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-03-15 19:55:43 +00:00
thunder2
45ac04e2e7 Count the friends (gpg id's) instead of the locations (ssl id's) in the statusbar.
Moved update of the friends from QTimer to signals.
Combined p3LinkMgr::getFriendCount and p3LinkMgr::getOnlineCount and moved to p3PeerMgr.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4986 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-25 01:48:56 +00:00
drbob
9544b61d77 * removed debugging from gpg cache.
* fixed position of #endif



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4954 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-17 20:28:59 +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
e024ea36e9 Added Cache system for GPG Certificates.
- This should reduce gpg calls by 90+%.
Updated rsversion svn to 4942 



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4942 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-15 16:44:45 +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
57c7e66a38 Attempted fix for maintaining External Port in Manual Forwarded Mode.
- added check for RS_NET_MODE_EXT instead of RS_NET_MODE_TRY_EXT... as trys aren't used in p3PeerMgr.
 - removed tryMode from external interface - as this data is not available anymore.
 - Removed setting this parameter in p3peers.cc



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4919 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-11 12:18:56 +00:00
drbob
eb77648cd2 Added Minimal certificates to discovery exchange.
They are invoked if the standard cert is over 10k.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4853 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-27 13:46:31 +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
csoler
5a5c0264d0 fixed uninitialized values
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4848 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-26 20:03:54 +00:00
csoler
a8456a2332 Plugged-in method for removing signatures in PGP keys => now RS has small and constant-sized certificates.
- added checkbox in ConfCertDialog to allow adding/removing signatures
- enabled again key signature button in friend wizard
- RS cert links now use small keys.


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4836 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-23 20:55:08 +00:00
drbob
87944f251e * Enabled Relays by default.
- This will only effect people who upgrade from a very old version.
 	- Other people will have to switch it on manually.
	- Default is 0 friends, 1 FOF & 1 General @ 1kb/s... max 4kb/s usage per peer.
 * Switched off lots of debugging.
 * Bugfix for natassist (zeroconf returns 0.0.0.0:0 when its doesn't work).
 * Logged IP Addresses for Failed incoming connections.
 * Hacked IP address into the NewsFeed notifications (ugly).



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4827 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-20 17:50:19 +00:00
drbob
6ac2cad4aa cleaned up some of the std::cerr output.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4824 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-20 15:13:50 +00:00
drbob
611db96fb9 Attempt 3 at fixing disconnections :)
* Added limit of 10kB for Certificate size. If it is bigger - discard certificate.
 * Remove certificates for slow / trickle connections (for Relay connections).



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4822 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-20 14:41:45 +00:00
drbob
761bca8678 Fix number 2 for disconnections: Temporarily Disable Transmission of GPG Certificates in Discovery.
Certificate transmission will be disabled until we have worked out how to export Minimal Certs.
 * Disabled check for gpgcert text in p3disc.
 * Disabled creation of GPG Cert in AuthGPG.
 * Added extra error code to pqinetwork.

This change will mean that friends of friends certificates will no-longer be shared if you have discovery on.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4821 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-20 01:05:46 +00:00
drbob
4aec00a0c2 Attempt at fixing the Disconnection issue.
* Added DataRate accounting to Relay and Dht.
 * Rates are exposed through rsDht.h interface.
 * Added LastIncomingTS() to pqistreamer.
 * Turned HeartBeat reset() into a warning.
 * Added NoPacket in 60 sec reset().
 * Minor typos/errors corrected.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4818 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-19 16:23:57 +00:00
drbob
8a86c980fc Improved logging of Connection Behaviours.
- Hid lots of DEBUG_BASIC behind #defines in pqissl.
	- Added PeerID() in many places, so grep for a single peer.
	- fixed linkMgr output so we can tell a FAILURE vs FAILED ATTEMPT
	- reduced most logging to a single line.
	- print out of errno in HumanText for SSL errors.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4814 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-18 22:51:38 +00:00
thunder2
3a271abf11 Added history for chat lobbies and disabled it until the lobbies are saved.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4813 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-18 20:47:32 +00:00
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
d138dde66c --- Merging r4780 through r4795 from /retroshare/branches/v0.5-dhtmods
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)
* Added NumQueryNodes() function to bdDhtFunctions.
* Switched bdquery.cc to use bdNumQueryNodes().
* Extended bdStdDht class to bdModDht to allow NodesPerBucket to be modified.
* Fixed up Connection Fail Callback for Relay Servers.
* Added Extra debugging for Proxy Connections.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4796 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-14 09:28:16 +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
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
3d4feaaaf7 Set a RateCap that is 75% of absolute bandwidth limit. This reduced rate is required because
of the overhead associated with TCP and Relay connections:
 * The Internal rate is calculated based on transmitted data (a reliable stream).
 * The Relay rate is calculated at UDP packet level and is x1.1 - x1.2 higher than internal rate.
The Relay will drop the connection if peers exceed specified level - so best to leave some head room.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4773 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-10 19:40:35 +00:00
drbob
8267739b02 Final core changes required to get relay links working.
* Added LinkType to p3LinkMgr => exposed via rspeers.h
 * Added ConnectionType to p3PeerMgr. This is dummy default to FRIEND at the moment.
 * Flag bandwidth limited Relay links as such.
 * Switched DNS Address connect to in front of historical addresses.
 * Reverted Flags in p3LinkMgr to what they were.
 * Added LinkType Flags to rspeers.h
 * removed getConnectFlags() as it was a bad way to do things.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4769 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-08 22:15:19 +00:00
drbob
dc8e596c0f Added Rate Cap to RateInterface, and enabled it for Relay Connections.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4768 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-08 18:40:09 +00:00
drbob
abbebf48ff Partially completed changes to implement final relay bits.
* Adding more detailed flags to each connection.
 * Cleaned up unneeded stuff from p3LinkMgr.
 * Added rswin.h includes before openssl - allows compilation using std Win OpenSSL.
 * Added getConnectFlags() to Net Base.
 * removed net_attempt and associated obsolete variables from pqissl
 * Made NetBinInterface protected in pqiperson (is this okay?)



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4767 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-08 16:28:44 +00:00
drbob
88774bbbd3 BUGFIX: removed local variables which were hiding class variables.
+ more debugging.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4764 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-08 12:22:35 +00:00
thunder2
e430612714 Add the ip address of the DNSResolver to the top of the list of the connect addresses.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4754 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-06 22:03:46 +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
58d8606d00 Added extra function to retrieve Peer's GPG IDs.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4750 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-05 15:41:24 +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
drbob
4c8d15de58 --- Merging r4700 through r4704 --- from https://retroshare.svn.sourceforge.net/svnroot/retroshare/branches/v0.5-dhtmods
Summary Of Changes:
 * Reduced Default DHT Message rate from (50msg/sec) => (5msg/sec)
 	- Searches now take longer, but it should make crappy firewalls happy.
 * Added Interface to allow this rate to be dynamically changed.
 * Bugfixes for p3BanList: removed internal IPs from Lists, fixed AddBanPeer() logic bug.
 * Disabled p3Dsdv, after brief test.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4705 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-01 17:50:26 +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
0d118c7033 Merging r4674 through r4699 from https://retroshare.svn.sourceforge.net/svnroot/retroshare/branches/v0.5-dhtmods into trunk.
Full Changes can be extracted from logs associated with the following checkins:
r4674 r4678 r4679 r4680 r4681 r4684 r4686 r4687 r4697 r4698 r4699

Summary of changes:
	
DHT Improvements:
	Added knowledge of Friends / FoFs and Relays to DHT.
	Added bdFriendList class to store this information.
	Added Checks against known Peer:IP information to detect bad peers.
	Bad Peer Checking is in Test Mode Only for the moment,
	New Interfaces to exchange above information with libretroshare
	Cleaned up various compiler warnings.

libretroshare Improvements:
	Added p3BanList Service and DataTypes to exchange Bad Peer information.
	Added Plumbing to get info from network to DHT and back.
	Supply Friend List from p3LinkMgr
	Supply Friend of Friend List from p3Disc.
	Added p3Dsdv Service and DataTypes for NetworkWide Routing (Testing Mode).
	Various BugFixes.
	Patch Manual Forward mode to preserve user selected Port.





git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4700 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-29 19:32:51 +00:00
thunder2
031629d528 Removed compiler warnings.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4689 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-25 13:32:46 +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
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
b3bcfe9d30 Fixed compile on Linux.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4624 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-29 09:52:01 +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
526f71bebd Fixed crash in "pqiSSLstore::readPkt" when "rsSerialiser->deserialise" returns NULL.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4605 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-14 11:05:17 +00:00
csoler
7373b602e3 apparently this file was missing.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4595 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-08 19:25:17 +00:00
csoler
258aea44f7 apparently this file was missing.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4594 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-08 19:22:50 +00:00
csoler
c8e2a4c828 put some pqissl warnings in log file only in debug mode, since this is quite CPU demanding
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4590 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-06 18:54:55 +00:00
csoler
0ed60eaf86 merge of QoS branch into trunk
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4588 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-04 20:01:30 +00:00
csoler
663ce50630 patch from AsamK to fix up crash at startup due to a missing else
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4587 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-03 22:16:51 +00:00
csoler
8941aa5991 corrected a few bugs in the cert cleaning method. Added feedback to the GUI and error codes for the cert cleaning function of rspeers
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4580 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-30 21:49:49 +00:00
thunder2
01fa9eec3f Added a new checbox in the settings (NotifyPage) to enable/disable the new SecurityItem. It is enabled by default, but all existing users need to enable it.
Added new buttons to SecurityItem to add/remove the peer and view peer details.
Added new call to notifyListChange with NOTIFY_LIST_FRIENDS in AuthGPGimpl::AllowConnection.
Fixed german language.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4572 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-21 22:28:19 +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
c6beee44ec Removed unused parameter warnings in libretroshare.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4558 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-12 13:42:30 +00:00
drbob
ce0a36607d As certificate cleaning is very much more brutal now... (strip all SSL certs not connected to recently).
I've reduced the frequency, and increased the age for removal.
 * Cleared every 31 minutes, first cleaning after 1 hour.
 * old peer is no contact for 90 days.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4547 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-08 12:02:17 +00:00
drbob
8688c65f4c * Added "lastcontact = now" when added SSL Peer. This ensures that new certificates will be retained for at least 30 days.
=> Giving new peers a chance to connect.
 * Fixed missing return in p3PeerMgr::removeUnusedLocations()
 * moved RTT defines to top of file, and increased to 150 results.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4546 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-08 11:27:40 +00:00
thunder2
cd41eda638 Fixed compile on Windows.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4545 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-07 22:23:53 +00:00
drbob
8e3e7d5209 Cleaned up rsPeers to remove 10 minute reconnect. The reconnect was caused by
the periodical call of cleanupUsedLocation, which was reloading all the GPG Keys - for each cleanup Key.
This required cleaning up various bits (AuthGPG, rsPeers, p3Disc).

 * moved rsPeer::cleanUnusedLocations => p3PeerMgr::removeUnusedLocations();
 	- made the function light-weight, no loading of GPG Keys.
 * moved getSSLCertsFromGPG() fn from rsPeers => p3PeerMgr
 * added p3PeerMgr::removeAllFriendLocations() to cleanup when removing a GPG Friend.
 * cleaned up rsPeers, made addFriend() / removeFriend() universal functions.
 * remove bool   p3Peers::setAcceptToConnectGPGCertificate(const std::string &gpg_id, bool acceptance)
 * removed all Dummy SSL Ids. - There is no need for this!
 * Major changes to p3disc to correct FLAWED logic.  (needs more testing).
 * removed as many dependancies on retroshare/rspeer.h as possible.
 * changed p3turtle dependancy on rsPeers ==> mLinkMgr.
 * added p3LinkMgr::getPeerName() and p3PeerMgr::getPeerName()
 * added return 1 to pqissllistener::closeConnection().
 * removed unused code from AuthGPG().
 * removed storeAllKeys() calls in AuthGPG::AllowConnection().



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4542 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-07 21:11:00 +00:00
thunder2
0043320ea7 Modified Windows TCP hack.
- Reduced the limit of the half-open connections from 5 to 3.
- Only the TCP connections are queued.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4540 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-07 18:48:48 +00:00
drbob
aa63ca1aa6 Added Further debugging to try and catch this 10minute reset bug.
* log p3disc::sendHeartbeat(), successful  p3linkmgr::connectAttempt()
 * log reason for each pqissl::reset().
 * log linkmgr & peermgr  addFriend() and removeFriend().
 * log pqiperson::connect(), p3PeerMgr::cleanUnusedLocations().
 * Modify timing of cleanUnusedLocations (=>8min) & NETSTATE_PARAM_TIMEOUT (=>15min) (see if it has an effect).



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4539 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-06 12:27:23 +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
b1ac8bc9d2 Added Second Queue, to check if connections are actually valid before installing.
* SSL_Peek is called on new connections, and we only accept it when there is data.
 * This should stop some of the unstable connections caused by wrong IP:Ports



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4533 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-05 16:04:35 +00:00
thunder2
23e49f7302 Optimized the Windows connection hack. Suppressed unnecessary count of connection attempts when no connection is waiting.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4531 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-04 23:27:58 +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
3ef08fead5 Added Address update from p3NetMgr => p3PeerMgr, when external address has been determined.
* extract external address from DhtStunner if possible.
 * added p3PeerMgr::UpdateOwnAddress(), which should only be called by p3netmgr.
 


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4512 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-02 19:05:27 +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
91e10f1590 * Fixed up network configuration.
- p3peermgr now uses RS_NET_MODE_XXXX instead of RS_NET_MODE_TRY_XXXX
	- p3netmgr maintains both TRY and ACTUAL mode.
	- actual mode is not visible through old interface (TO FIX).
	- added default to UPNP mode.
 * Added debug to show changes to peer->VisState.
	- It seems that this is never updated by p3disc. BUG, (TO FIX).
 * disabled extra debug in rsdiscitems.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4498 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-30 12:18:56 +00:00
drbob
da0d410b8d * Added further debug to pqistreamer.
* clear mOldNatHole/NatType during netReset.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4497 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-29 15:20:40 +00:00
csoler
b903217317 fixed declarations instead of initialization
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4494 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-27 17:02:05 +00:00
csoler
ab37ea0ce1 fixed uninitialized memory read
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4493 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-27 16:56:37 +00:00
csoler
095168f4ec fixed uninitialized memory read
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4491 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-27 16:29:25 +00:00
csoler
b3052e0208 set maximum port value to 65535 instead of old arbitrary value of 50000, and warned about system-reserved ports in server settings gui
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4486 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-23 20:07:06 +00:00
drbob
b56ddfeb5b * Switched on Dht "Attach" Mode if RS is firewalled. (and not nice firewall).
* Added interfaces to enable AttachMode switch.
 * Added further tcponudp tests.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4484 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-21 11:28:19 +00:00
csoler
179693e2a4 fixed missign return, and pointer-to-uint32_t cast
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4475 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-19 18:55:32 +00:00
drbob
ed114cc9e5 Enable TCP connections again.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4471 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-19 00:17:54 +00:00
drbob
cc9df9a80f Removed Lots of Debug, and fixed a couple of bugs.
* Increased Timeout Periods for UDP connections - this was stopping half of them from succeeding.
 * The other bug (Heartbeat / stream issues) has not been solved.
 * Fixed up initialisation of p3BitDht data. 
 * add DropPeers() as NON-ACTIVE (this allows peers which aren't VISIBLE to still try and connect)
 * export AddFriends/FOF/Others to LinkMgr to allow further SSL IDs to be added to p3BitDht.
 * Export UDP Addresses to DhtWindow.
 * switch off lots of debugging.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4469 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-19 00:06:09 +00:00
drbob
b61b590f79 Silly Bug, overwritten the mConnectFlag with the Bandwidth parameter.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4467 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-18 18:28:20 +00:00
drbob
619b2416ac disabled Relay connections, and enabled UDP connections.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4464 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-18 08:37:11 +00:00
drbob
c33b415ef4 Bugfixes for ExclusiveProxy Mode.
* changed PeerConnectStateBox::getNetState() to calcNetState() to provide up-to-date info (internal mNetState can be stale!)
 * Added "bool addrChangeLikely" parameter to ReleaseProxyExclusiveLock() - this parameter is determined by whether we actually started a UDP connection.
 * disabled ForceRestun in UdpStunner if addrChange is unlikely.
 * Reduced Stunner Period Slow from 3 minutes to 2 minutes - exact value will only be known after real-world testing.
 * More debugging.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4458 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-17 16:24:45 +00:00
drbob
0229ef1fe8 Disabled UDP connections (in p3LinkMgr) for now.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4447 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-14 15:01:41 +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
22debbce34 Turns out that the current implementation of p3NetMgr has NO dependancies on p3PeerMgrIMPL or p3LinkMgrIMPL.
Infact, it doesn't use these two classes at all (so you could pass void in the init function)...
  - It should actually update p3PeerMgr when it detects a Net Address change (TODO).

This means that there is potentially no need for a dummy object - p3NetMgrIMPL can be used almost as is!

 * changed p3PeerMgrIMPL & p3LinkMgrIMPL pointers back to p3PeerMgr and p3LinkMgr pointers.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4445 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-13 23:23:47 +00:00
drbob
387db6e7b6 Done most of the piping/callback between the DHT and LinkMgr/NetMgr.
* Added ConnectionFeedback fn to NetAssistConnect & p3BitDht.
 * Added TYPE definitions to pqiassist.h
 * added extra parameters to p3LinkMgr::connectAttempt() (flags which will be used to pass DIRECT/PROXY/DIRECT + PASSIVE/ACTIVE)
 * Added callback from p3LinkMgr to NetMgr::netAssistStatusUpdate() => Dht::ConnectionFeedback.
 * updated peerConnectRequest to trigger either TCP attempt (first) or UDP connection.
 * updated parameters for p3LinkMgrIMPL::tryConnectUDP()
 * added p3LinkMgrIMPL::locked_ConnectAttempt_SpecificAddress() for DHT => TCP attempt.
 * added extra parameter to addAddressIfUnique... bool addFront =>  DHT attempts get pushed to front of Queue due to timing requirements.
 * added extra parameter (flags) to pqiperson::connect() - matches extra parameters to p3LinkMgr::connectAttempt().
 * added p3NetMgr::netAssistStatusUpdate()
 * added mConnectFlags to pqissludp



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4443 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-13 22:23:40 +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
85d232ff4f * added DETERMINISTIC_SYMMETRIC NAT type to Connect Logic. (CBS_NETSTATE_EXCLUSIVENAT)
* added DETERMINISTIC_SYMMETRIC NAT to retroshare/rsconfig and NetStateBox.
 * added ExclusiveMode to udpStunner.
 * Tweaked UdpStunner ping logic.
 * added TCP_WAIT to Connect Logic.

NB: This stuff is still to be tested!



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4440 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-13 11:41:25 +00:00
drbob
6c5d5f6cc2 Integrated NetStateBox and Activated Stunners.
* Added tick() and setRefreshPeriod() to pqiAddrAssist
 * Fixed up NETSTATE #defines, all refer to retroshare/rsconfig.h
 * added #define => string translations for NETSTATEs
 * Added NetStateBox as an independent Network State determination (has no effect on existing code).
 * added slowTick() to p3NetMgr.
 * connected p3NetMgr::getNet... to NetStateBox.
 * piped network state into NetStateBox.
 * added p3NetMgr check for changes in NatType. (to update Stun Rate / Attach Mode (TODO))
 * added NetStateBox.reset()
 * tweaked lots of debugging.
 * added Default Stun Period (pass -1 to setRefreshPeriod()) 



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4435 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-12 14:16:46 +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
96b4651b7c Updated flags to add additional NewsFeed Type: Security!
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4428 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-11 15:52:29 +00:00
drbob
d643f168a0 Fixed up Adding / Removing Peers.
* added OthersList to p3linkmgr. this is important so we can send ACTIONS for removed Peers.
 * added missing mStatusChanged when adding Friend.
 * added printPeerLists to PeerMgr and LinkMgr.
 * tweaked debugging.
 


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4427 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-11 12:11:58 +00:00
drbob
53c71daca0 Major improvement to libretroshare!
* Catch Failed Connections, and add to NewsFeed for GUI notifications.
 * outgoing connections are captured via pqissl::FailedCertificate() functions.
 * incoming connections are captured at certificate verification.
 * Certs are passed to AuthSSL, which calls the notification system.
 * Additional types have been added to rsnotify to handle these cases.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4425 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-11 00:55:06 +00:00
drbob
81dc1d77b7 Cleaned up More debugging and started work on connections.
* switched off lots of debugging, and removed "common" messages, so we can focus on the actions.
 * Added extra debugging focused on the connections.
 * Removed "lastconnect" from p3LinkMgr.
 * added p3PeerMgr::updateLastConnect() fn, so this parameter will be stored.
 * added calls from p3LinkMgr at connect and disconnect.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4424 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-11 00:52:12 +00:00
drbob
f7ff55237e Bugfixes galore!
* Split p3bitdht_peers.cc debugging in two. Hid Id Translation debug (that code is fine)
 * Added initialisation of p3bitdht peer data structure (using values from peernet).
 * Added BITDHT_QFLAGS_UPDATES flag.
 * Added Tick() interface to NetAssistConnect  interface, tick it from p3NetMgr.
 * FIXED OLD BUG: netAssistFriend was not being called from p3LinkMgr::connectResult() this meant all peers where being searched for.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4423 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-10 19:50:12 +00:00
drbob
b2e25680ac General debugging:
* Improved debugging messages for p3linkmgr & p3netmgr, switched on debugging.
 * added ids to p3bitdht peers.
 * added datatypes to RsDht peers data structure, and translate the data.
 * add const to PeerConnectStateBox::connectState().
 * cleaned up p3LinkMgr::locked_ConnectAttempt_AddDynDNS() a bit.
 * filled in friend data types in p3LinkMgr (allows connections now!)
 * added printConnectState() in p3LinkMgr



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4421 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-10 18:19:46 +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
21487bfdf6 Splitting p3ConnectMgr into three parts:
* p3PeerMgr: handles configuration.
 * p3LinkMgr: handles connections to peers.
 * p3NetMgr: handles network state, and firewalls / dhts.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4411 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-09 09:36:37 +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
thunder2
de87a89437 Added a name to the RsMutex class.
You can enable the debugging of the waiting time for a lock of RsMutex in rsthreads.h with
#define RSMUTEX_DEBUG 300
That means all locks waiting longer than 300ms are logged into the stderr.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4392 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-04 22:59:39 +00:00
thunder2
2a376253e0 Fixed compile with gpgme before 1.3.1.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4388 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-02 21:35:29 +00:00
csoler
e9853b655c added a signature add/remove button in connect wizard, only when gpgme-1.3.1 or greater is used, based on the availability of the GPGME_EXPORT_MODE_MINIMAL option.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4372 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-01 20:47:58 +00:00
thunder2
aab46a5295 Changed parameter of the methods of pqiNotify from "std::string" to "const std::string&"
Stops loading of a cache in p3GroupDistrib::loadFileMsgs on shutdown of RetroShare.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4363 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-06-29 22:54:44 +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
drbob
d58f838269 Cleaned up formatting, and OSX zombie debugging
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4358 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-06-29 17:08:39 +00:00
thunder2
a9b85c83ae Moved define of the debug output from libretroshare.pro to pqissl.cc.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4346 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-06-27 22:28:33 +00:00
csoler
fc959a0ad6 fixed a bug in pqissl and pqistreamer. The 2nd one was responsible for disconnections and errors in GetTlvString type
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4332 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-06-24 21:44:29 +00:00
chrisparker126
3455067373 moved authgpgtest.cc/.h back to src/pqi from test/pqi
removed test directory in src/pqi

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4323 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-06-22 23:33:43 +00:00
chrisparker126
f12d2c46bc moved authgpg fake module to tests folder
fixed ficachetest and fimontest 

makefile update for serialiser for previous revision


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4321 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-06-22 21:44:40 +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
chrisparker126
00c1bfcf54 fixed bug related to opening cache hist file in text mode for windows
added cleaning of cipher context to authssl encrypt decrypt functions 

added header to trustview which caused compilation error


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4199 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-05-15 12:01:23 +00:00
csoler
05ed2bec88 fast simplification of code in pqistreamer, and added a missing =null in p3service that could cause a bug
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4135 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-04-08 20:57:16 +00:00
thunder2
8f0793f071 Removed automatic cleaning of the certificate in p3Peers::loadDetailsFromStringCert.
Added new button in ConnectFriendWizard for cleaning the certificate.
Fixed cleaning:
- added blank line after the armor header
- moved the checksum to a new line
Recompile of the GUI needed.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4134 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-04-08 18:53:12 +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
csoler
bc78397a64 removed comment in log abotu bandwidth restriction (not applied)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4123 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-04-03 20:15:55 +00:00
csoler
7049920f68 attempt to make GPG errors more verbose at cert exchange time
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4096 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-03-15 23:15:46 +00:00
thunder2
0a42b7899e The working (hashing) thread FileIndexMonitor is now stopped when RetroShare is closed.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4072 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-03-03 23:30:08 +00:00
csoler
ebfe8b9828 disabled error msg from pqistreamer, as it is not an error in 99% of the cases it happens
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4051 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-02-23 19:32:51 +00:00
thunder2
4b8766aec3 Fixed compile on Windows and removed some compiler warnings.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4033 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-02-11 21:23:44 +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
csoler
40f4009ca7 made the DNS calls in a separate thread, using new DNSResolver class. Added test program for that class as well. Moved extaddrfinder to util/
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3980 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-24 22:05:10 +00:00
csoler
107d904c22 added debug info to packet errormessage for devs
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3977 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-23 14:35:43 +00:00
thunder2
42e32b9514 Fixed compile under Windows.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3975 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-23 12:37:42 +00:00
drbob
1f33bdc471 Fixed the OSX GPG bug!!!! Turns out that the gpg processes were not being cleaned up,
so RS ended up with 200+ zombie child processes. This prevented gpg from being called.
The fix was to add waitpid() calls to cleanup the zombies.

 * added cleanupZombies() to authgpg.cc (OSX only).
 * updated OSX gpgme libraries to 1.3.0 (added libassuan to RetroShare.pro).



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3974 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-23 11:57:09 +00:00
csoler
474aa31fd1 suppressed debug printfs and costly outputs
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3967 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-20 17:25:30 +00:00
thunder2
f82a9a3c5f Faster processing of the gpg keys for discovery.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3959 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-09 12:31:41 +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
thunder2
312f23bd4e Used GPGME_VALIDITY_... constants in ConfCertDialog and NetworkDialog.
Changed the usage of RsPeerDetails.validLvl to RsPeerDetails.trustLvl for the display in the column "Did I authenticated peer" in NetworkDialog.
Added an icon to the MessageBox of the NotifySysMessage.
Fixed german language.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3926 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-12-21 21:13:08 +00:00
thunder2
35f91f5e07 Added some optimizations (const std::string&) to the load of the caches at startup and to the p3ConnectMgr.
Added PRE_TARGETDEPS in RetroShare.pro for Windows too.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3923 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-12-19 23:50:46 +00:00
chrisparker126
2f559dae96 removed channel delete feature
added optimisation suggestion with load/savelist

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3920 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-12-18 19:35:07 +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
1495758d45 allowed EXTAddrFinder service by default
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3914 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-12-13 22:34:22 +00:00
thunder2
38203704f0 Count the own gpg id as friend, when another location exists.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3896 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-12-05 00:20:11 +00:00
csoler
ad01becb1a restaured connexion to self GPG key with different location
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3888 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-30 22:02:18 +00:00
csoler
ac26433450 removed debug info and unused code
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3875 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-27 20:13:43 +00:00
csoler
4f80b2557e corrected a cross lock between p3ConnectMgr::connectResult() ->...-> UdpBitDht::removeFindNode() and bdNodeManager::iteration() ->...-> p3ConnectMgr::retryConnectUDP(), by making calls to netAssisFriend() off-mutex.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3874 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-27 20:00:26 +00:00
drbob
cd33979729 I am an idiot... silly mistake in last checkin.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3862 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-23 20:04:14 +00:00
drbob
d9847e2622 Fixed deadlock between p3connmgr::mtx and libbitdht::mtx
* shifted dht stats call outside of p3connmgr's mtx.

NB: As Dht callback functions hold DHT lock, then lock p3ConnectMgr...
    we cannot have any opposite locks (p3connmgr, then DHT) or we have
    potential for a deadlock.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3861 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-23 19:32:19 +00:00
drbob
7203229126 Cleaned up Transfer debug, now that we've found the windows bug.
* new uniform #define DEBUG_TRANSFERS to switch on packet timings.
 * switched off by default.
 * enabled BinData printing again.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3785 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-13 11:46:17 +00:00
thunder2
f769c66991 Fixed upload speed problem of Windows systems.
Set TCP buffer size to 128 KB.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3782 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-12 21:05:59 +00:00
drbob
d649a27fd9 Added TRANSFER debug to pqistreamer.
* print packet size and time - when actually sending it.
 * print reason for stopping to read or send packets.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3780 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-11 23:59:04 +00:00
thunder2
c19c8b5532 Send RsDiscReply information of the connected friend to himself too, when there is only one ssl id available. The reason is, that the signers of the gpg key has to be transfered. The friend skips the own RsDiscReply informations, but imports the gpg key.
Reload all gpg keys in AuthGPGimpl::LoadCertificateFromString, when new signatures are added - not only the key was imported.
Changed parameters of RsPeers and AuthGPG from "std::string" to "const std::string&"

Recompile of the GUI needed.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3753 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-06 16:40:18 +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
drbob
519075c70b Changes to get DHT On/Off working, and get DHT status working too:
* Plumbed stats through the the retroshare interface.
  * Also changed Channel store period back to 10 minutes.... (Reduce overall file count).
    	This must be done some time before the any changes are made to Channels periods.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3721 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-31 13:53:28 +00:00
drbob
644f2fcbcc Added Address Test Function to strip out bad connection attempts. Logic is:
- FAIL if too old.
  - FAIL if invalid address.
  - FAIL if on BannedIpList (=1.0.0.0)
  - ACCEPT if extAddress.
  - ACCEPT if !extAddress && sameNet(localAddr).
  - FAIL all the rest.

 * Test Results are printed if CONN_DEBUG is switched on.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3705 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-27 22:16:55 +00:00
thunder2
10aa75d2c6 Removed potential memory leak in AuthSSLimpl::encrypt/decrypt in case of an error.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3693 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-23 14:03:35 +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
c2c52a81ec Fixed crash on load of the config, when the first attempt loads some RsItem's but failed and the second attempt failed too. The loaded items are deleted twice, because the std::list of the loaded items is not clear'ed after the delete of the items of the first attempt.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3657 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-08 19:22:03 +00:00
thunder2
1207b5793b Changed p3Peers::getPeerCount to count also gpg id's only.
Show count of friends in MainWindow, not the count of locations.

Recompile of GUI needed.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3653 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-08 12:03:25 +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
csoler
a90f332a40 bug correction. Please do not use begin ( ) from returns of a function without const & s
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3612 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-05 15:46:08 +00:00
drbob
0ea899de29 * Added hack to remove DODGEY peers. (This should probably be moved to libbitdht).
* NOTE about how to correctly implement Peer filtering.
 * added peerConnectRequest() when PeerCallback(success) happens... starts UDP connection.
 * Split the p3conmgr::tryConnect() functions into sub functions.
 * added p3ConnMgr functions for UDP connections.
 * Added AddifUnique(conect_address), to ConnMgr, this should reduce the number of connection attempts, by removing dups.
 * Disabled bitdht in libretroshare.pro for the moment.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3605 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-04 21:42:31 +00:00
chrisparker126
fa6af9a1ca fixed channel edit problem and added some documentation for pqimonitor
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3596 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-03 21:48:19 +00:00
drbob
05e908df12 Changes to Integrate DHT... first tests appear successful.
* Added testing stuff to libretroshare.pro, enabled UDP again,
 * fixed NO_TCP #define in p3connmgr.cc
 * Added PeerStatus() call to p3bitdht.cc to start connect to DHT address.
 * HACK change to p3peers.cc to display DHT results.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3586 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-02 00:52:59 +00:00
thunder2
acf57ed3fd Removed read/write mutex from AuthGPGimpl and from the sources.
Added RsThread as base class to AuthGPGimpl and load all gpg keys every hour.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3571 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-09-30 19:05:43 +00:00
thunder2
d3fc7f3982 Reindroduce the read/write mutex for AuthGPG as mutex for the data member.
Added second mutex for the gpg engine.
Now the call to the gpg engine (for example AuthGPGimpl::LoadCertificateFromString) doesn't block the GUI.
The existing problem is still the call of AuthGPGimpl::storeAllKeys every minute before access the gpg data.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3555 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-09-28 22:30:57 +00:00
chrisparker126
22472209b7 enabled two pass load for new config saving. was mistakenly not enabled i.e. bug
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3543 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-09-27 21:42:44 +00:00
thunder2
077b2871f1 Groups for friends in PeersDialog.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3523 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-09-22 22:37:57 +00:00
chrisparker126
8b1ffdb5d9 fixed transitioning of msg service config files from global signature format
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3522 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-09-21 22:02:35 +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
thunder2
340982b996 p3ConnectMgr::connectResult
- added "mStatusChanged = true" on disconnect of a peer - the statusChange was not notified in time

MessengerWindow
- removed unused method updatePeersAvatar

Changes in status service:
- removed unused method statusAvailable
- new notifier for status change
- enabled the tick for receiving items
  - always up to date status map
  - no huge memory usage, if no list is visible who call getStatus and processed the received items
  - send notify on status change
- renamed getStatus to getStatusList and created a new method getStatus to get status of one peer
- fixed: send status directly after the connect of a peer

Now the frame around the avatar in private chat changes when the peer change the state.


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3380 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-08-20 18:45:44 +00:00
thunder2
fa9ea81ad7 Changed some mutex around p3ConnectMgr::mOwnState. Please review.
Made getIPAddressFromString thread safe, just in case.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3374 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-08-16 07:29:51 +00:00
thunder2
8ef8174227 Optimized usage of getOwnId in p3ConnectMgr::loadList
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3371 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-08-15 12:48:09 +00:00
thunder2
efac8eec85 Removed compiler warnings
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3369 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-08-14 14:17:49 +00:00
thunder2
c4167ba0ac Removed memory leak in cleanUpCertificate when the certificate can't be cleaned.
Switched from char* to std::string, because the char* is unnecessary and wasn't freed on some returns.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3368 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-08-14 11:51:15 +00:00
thunder2
7b4364035e Added missing break in AuthGPGimpl::VerifySignature
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3348 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-08-06 22:45:59 +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
thunder2
e69300ccdc Changed the values of ETIMEDOUT to 10060 like in pthread.h to prevent compiler warnings.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3341 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-08-04 11:27:16 +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
csoler
012808ea00 - Implemented CRC32 map traffic through direct downloads
- replaced the findItems() call into a hand-written search (this was causing a rare bug in displaying downloads)


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3318 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-29 21:07:07 +00:00
csoler
cee8600a93 - implemented bidirectional exchange of chunk maps for direct downloads, to allow showing proper completion of transfers from direct friends.
- moved the direction flag upward in the pipeline (ftDataSend instead of p3turtle)




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3313 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-25 19:04:31 +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
chrisparker126
3291e61291 reimplemented encrypt/decrypt using openinit and sealinit envelope encryption of openssl
- to aid with portability into the future

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3291 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-14 21:27:26 +00:00
thunder2
04366bc279 fixed unlock of connMtx in p3ConnectMgr::netExtCheck
unlock was too early

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3288 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-13 14:03:05 +00:00
drbob
31c9832978 Fixed Bad SSL Timeout code.
* Added TS check to SSL_RETURN_ZERO code. 
	- Existing code was dependent on tick rate. (could kill connection in 2-3 seconds)
	- If nothing is received within 15 seconds - the connection will be killed.
  * Removed "No send if RETURN_ZERO" check. 
	- This causes deadlocks and kills connections.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3287 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-13 12:13:56 +00:00
thunder2
c005f7d4a8 pqinetwork.cc: removed compiler warnings on windows, errors was fixed already
sslfns.h: test for existing function with #ifdef doesn't work, used OPENSSL_VERSION_NUMBER instead - please test

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3284 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-11 00:07:19 +00:00
drbob
9efe0b2e9e another windows bugfix.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3283 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-10 23:51:04 +00:00
drbob
fba4a1b4da Bugfix for windows compilation?
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3282 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-10 23:22:47 +00:00
drbob
648e15bcf7 Found cause of OSX network resets / lost connections: inet_ntoa is not thread-safe.
* Added thread-safe rs_inet_ntoa function (util/rsnet.cc)
 * Switched all calls to this function (most of the changes)
 * Modified getLocalInterfaces() and getPreferredInterface() to avoid string conversions.
   - NB: Modified windows functions too, but unable to test (hope it compiles!)

Also:
 * Added  EVP_CIPHER_CTX_rand_key() replacement function for old versions of SSL (pre 0.9.8)  (for OSX 10.5)
   - NB: This code should be reworked to remove these calls anyway.
 * Updated tests/pqi to handle above changes.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3281 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-10 20:34:03 +00:00
drbob
0b298f6ca1 Fix p3ConnectMgr:;setExtAddress() bug... my fault.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3280 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-10 17:53:34 +00:00
thunder2
1a9d68b536 Fixed compile on Windows
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3255 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-05 11:37:07 +00:00
drbob
6a40e1b2f3 Switched p3distrib (forums) personal signatures from ssl to pgp.
* Changed calls from AuthSSL to AuthGPG and tested. looks like it works!
 * added extra connect addresses in p3connmgr (current[local/server]addr)
 * added mConnMgr->addFriend() call to pqissllistener to add unknown ssl certs.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3253 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-04 22:23:45 +00:00
drbob
8b2cb688a8 Restored p3disc functionality.
* Bugfix in correctly adding ipList.
 * restored setLocal/Ext calls from peer.
 * Added extra debugging in p3disc.
 * Cleaned up debugging in p3connmgr.
 * switched off debugging in rsdiscitems.
 * reorder ipList (most recent first).
 * removed DEBUG switches in libretroshare.pro



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3252 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-04 15:16:52 +00:00
drbob
6f219d4fef Bugfixes:
* Corrected mLocal -> mExt in ipset.cc
  * Added pqiipset_test
  * added both Ext and Local address to GUI display.
  * p3connmgr: Ip Addresses only updated if we connected (otherwise port is wrong).
  * p3connmgr: update external address when we get it.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3251 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-04 13:19:09 +00:00
drbob
f4331da483 Networking REWORK: Major cleanup of p3ConnectMgr.
(Sorry for the ridiculously large check-in, wants to fix lots of stuff.)

Other Changes:
 * Added SSL Test Harness. (authssltest)
 * Added GPG Test Harness. (authssltest)
 * Reworked SSL/GPG startup to enable test harnesses
 * pqiperson: added notify of FAIL if connection method unavailable.
 * added p3tunnel to pqissltunnel init.
 * pqimonitor: added ipHistory to connect callback.
 
p3ConnectMgr Changes:
 * removed STUN system - wasn't operating correctly anyway without DHT.
 * switched to new IpAddress history data types. (removed lots of code)
 * Added Addr history for both Local and Ext addresses.
 * removed p3tunnel references in p3connmgr
 * fixed up mUseTunnelConnection flags (now used!)
 * fixed up mUseExtFinder flags (now used!)
 * added improved Net Status.
 * corrected UPNP / EXT / UDP startup. (was always UPNP).
 * fixed netReset() and netStartup().
 * removed unnecessary DEBUG code.
 * added UPNP timeout code (600 secs - why does it take so long?)
 * added improved netExtCheck().
 * removed wierd netConsistencyCheck() ... to rework.
 * corrected connect / reconnect code.
 * removed DHT notify code.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3247 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-04 10:35:38 +00:00
drbob
3575f12240 Network REWORK
* Added separate classes to handle IpAddress History.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3245 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-04 10:15:56 +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
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
713d956882 NETWORK REWORK (cont)
* removing old tests and unused code.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3220 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-25 22:10:21 +00:00
drbob
bfa9965c9b NETWORK REWORK (cont)
* Removed unused FLAGS from pqi_base.h
 * corrected pqiStatus() fn signature in dhtmgr.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3219 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-25 22:09:07 +00:00
drbob
5df785ed4e NETWORK REWORK (cont)
* restored AuthSSL::Failed/CheckCertificate() calls.
 * removed mConnMgr->isConnected() checks. These should be elsewhere.
 * enabled exit(1) call if cannot open listening socket.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3218 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-25 22:06:49 +00:00
drbob
981724a8f1 NETWORK REWORK (cont)
p3connmgr: This needs major help... and will be revisited. 
Only changes to get code compiling for now.

 * revert peerStatus() function signatures (to match pqimonitor.h)



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3217 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-25 22:02:59 +00:00
drbob
9f4deb1cf7 NETWORK REWORK (cont)
pqiperson / pqipersongrp: generally okay, One Nasty BUG.

  * removed pqipersongrp::getPeer() fn. Violated Mutex protections!!!!
  * reworked heartbeat code, which used getPeer() fn.
  * switched all notifyConnect() calls to include remote_addr.
  * added explicit stoplistening() call when removing peer.
  * removed funny DO_NEXT_ATTEMPT callback code.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3216 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-25 22:00:38 +00:00
drbob
00d0d999dc * Removed list<IpAddressTimed> from callback
This functionality might need to be restored later, 
     but should be done with list<> for both Local and Remote Addrs.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3215 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-25 21:54:41 +00:00
drbob
ab3b044791 * changed misleading comment about Mutexs
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3214 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-25 21:52:21 +00:00
drbob
e4e80778e4 Networking REWORK (cont)
AuthSSL / AuthGPG: Bits and pieces still need fixing up.
AuthSSL will be rechecked later ;)

 * Mutex bug in authGPG (not very serious one).
 * removed _locked() suffix from functions (as they do the locking now).
 * added dummy FailedCertificate / CheckCertificate fns to AuthSSL
 * removed last bits of awful SSL_ex_data hack.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3213 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-25 21:50:46 +00:00
drbob
69ba03dbd2 First of the Networking REWORK checkings. I'm doing these is stages,
so I can properly document what is being changed!

Revert / Merge : pqissl / pqissludp code.
   * restored original timeout system.
   * removed weird testing code - should never have been here!
   * switched extra checks to generate ALERT msgs - we want to know if they happen.
   * removed quietShutdown (breaks TLS protocol - why was this added?)
   * switched listening on all the time. (helps restore disconnects).
   * restored common connect parameters (removed duplicates in ssludp).
   * restored AuthSSL->Failed/CheckCertificate() calls ... useful.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3212 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-25 21:44:24 +00:00
thunder2
825ba0af79 AuthGPG: fixed some memory leaks in case of gpg error
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3207 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-25 14:38:38 +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
19674c4d86 memory leaks from missing gpgme_data_release
- AuthGPG::privateSignCertificate
- AuthGPG::privateTrustCertificate


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3160 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-18 22:58:27 +00:00
thunder2
ec6c252d62 fixed crash (asserts) by parallel calls to gpg.exe
changed the RsReadWriteMutex to RsStackMutex in AuthGPG


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3158 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-18 20:19:04 +00:00
csoler
95c5c4b1a1 Added in RsItem a new virtual method queueType() that returns the type of the queue to
use for handling the packet: RsItem::DATA_QUEUE for data and RsItem::CONTROL_QUEUE for 
control packets, to be used in pqistreamer.

Up to now, File data chunks where the only packets that were going into the --less prioritized--
data queue. Now, the default in RsItem::queueType() being to return CONTROL_QUEUE, developpers can
choose which queue t use by simply overloading this method so that it returns a different value.

The first use of this was to make generic turtle tunnel packets use the data queue instead of 
the control queuem, which restores a correct balance between turtle downloads and friends downloads.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3153 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-16 21:09:58 +00:00
csoler
347c80fb1e Ported branch commits:
3148: modified the update system for address lists, so that the list is totally
      replaced (and not merged) when it comes from the peer itself. This helps
      cleaning wrong addresses

	  libretroshare/src/pqi/authssl.cc
	  libretroshare/src/pqi/p3connmgr.cc
	  libretroshare/src/pqi/p3connmgr.h
	  libretroshare/src/services/p3disc.cc

3149: removed uninitialized memory read
      
	  libretroshare/src/pqi/authgpg.cc

3151: corrected missed update of peer info when connected. Disabled setting
	  peer connexion IP from p3disc info (does not make sense, and leads to
	  errors)

      libretroshare/src/services/p3disc.cc



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3152 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-16 20:18:46 +00:00
csoler
b941d733cc Ported branch commit 3143: corrected bug responsible for mixing IP lists between peers of same GPG id (connection attempt to other peer responded with connection to oneself). Added additional debug info in p3disc.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3144 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-15 21:28:27 +00:00
thunder2
6f8e75c14f p3connmgr.cc: fixed compiler warning
p3distrib.cc: fixed compiling under windows

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3127 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-13 15:24:59 +00:00
thunder2
0d1eaba890 p3StatusService::getStatusQueue
- memory leak -> "RsItem* item" was not freed, when "dynamic_cast<RsStatusItem*>" failed
- optimized return of std::list as parameter and not as return. return will copy the list and its not necessary

p3StatusService::getStatus
- memory leak -> items in "std::list<RsStatusItem* > status_items" was not freed
- potential crash, when receiving a status for an unknown peer

p3Peers::getPeerDetails
- optimized - call to "AuthSSL::getAuthSSL()->OwnId()" only once
- optimized - add ip addresses directly to "d.ipAddressList"

PeersDialog::insertPeers
- fixed possible crash, when ssl child has disappeared and was removed from tree, there was a missing continue

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3125 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-13 12:26:23 +00:00
ruchijain
9b91590cbf - Changes for Message Toaster
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3119 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-13 10:14:04 +00:00
ruchijain
5107fbdd0a - Changes for Message Toaster
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3118 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-13 10:12:56 +00:00
ruchijain
5b0aa33995 git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3117 b45a01b8-16f6-495d-af2f-9b41ad6348cc 2010-06-13 10:10:04 +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
leander-256
21efccfdd6 Memory leak and compiler warnings fixes:
- memory leaks in pqi/cleanupxpgp.cc , 2 new char[] => 2 delete[]
- reordering some constructors' initializing order
- char* myString = "foo" constructs must be prefixed by "const"
- using size_t for variable types when dealing with STL


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3079 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-07 01:47:15 +00:00
csoler
7b0757c4bc Merged branch commits:
3068: added verification for file size computation (bug correction)

3069: set heartbeat values to intermediate values

3070: suppressed uninitialised memory read

3071: automatic removal of file lists from deleted peers, at restart (After
      double check that this does not alter exchange of file lists in any way)



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3072 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-05 19:16:39 +00:00
csoler
860f3a0568 augmented the heartbeat parameters, to reduce the stress on connections. Seems to help a lot when the traffic is high.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3047 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-01 20:33:27 +00:00
thunder2
c23ea03190 comment out unused method AuthGPG::updateTrustAllKeys_locked
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3042 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-31 19:20:52 +00:00
csoler
b80aef1228 Suppressed the possibility for browsable only files to be searched by hash from turtle router.
This avoids that an attacker that captures a broadcast hash request can also ask for the file.

This needed to add back explicit sources in SearchDialog and private chat transfer. I dynamically search
for sources in file lists just before calling FileRequest.

When RS links anchorClick() will work properly with Qt, we can remove the search flag "EXTRA" from the
tunnel digging in p3turtle.cc, otherwise, people having this bug can't transfer files in private chat by
copy+paste of a RS link.
    
	Also:
	    - added missing mutexes in search requests into fimonitor.cc
		- suppressed some debug info in connect manager
		- added check for write fails when dumping config files



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3027 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-29 13:17:09 +00:00
csoler
a3a75b7aea Ported branch commit 3017:
- added failure tests for fwrite. Some where missing.
	- added a test against the IP 1.0.0.0, which pops up on MacOS (when the peer is not connected to the internet?)
	- put some additional debug messages.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3018 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-28 14:00:35 +00:00
drbob
0b31b54be3 * Debugging for MacOSX, print out NET_RESET stuff.
* Fix discspace for OSX.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3012 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-27 22:34:45 +00:00
joss17
7db10d1f6f add a modular (with friends number taking into account) retry time for connection attempt
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2991 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-24 18:56:11 +00:00
csoler
c54d581472 fixed proper sorting of IP lists. (branch comit 2989)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2990 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-24 12:17:05 +00:00
csoler
757aa7a95d Ported branch commits 2980/1: cleaned the code in IP address lists management. Removed some bugs. Changed the strategy a bit: only keep the most recent port for identical ips. Changed the interface of extAddrFinder to make it mroe secure.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2983 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-23 22:27:10 +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
csoler
0634e461fb implemented a safety check for low disc space, and safe drop of disk access if too low
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2968 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-21 20:49:48 +00:00
csoler
4b9b15be27 Ported branch commits:
2951: cleaned up some desastrous code in rsdiscitems.cc

	2952: put back an exit when the local address+port are already in use. 
			Otherwise this corrupts file lists, config files etc.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2953 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-19 20:08:58 +00:00
leander-256
b30056e17f This patch allows Windows users to share files and folders with "exotic" characters.
The problem was that libretroshare handles files in UTF-8 but Windows's ANSI/POSIX C functions automatically assume that the char* parameters are encoded with the system's code page. There is no way to set that code page as UTF-8. So now under Windows the code translates the file name to UTF-16 before feeding it to one of the Unicode functions (they are usually prefixed or suffixed by 'w'). Please note that it is not very efficient.

Furthermore, Windows does not provide a Unicode version of opendir/readdir/closedir, so it was necessary to use FindFirstFileW/FindNextFileW/FindClose which has a different behaviour as well as different structures. The FolderIterator class was created in order to mimic the Unix way of traversing folders contents. Hence the algorithm is unchanged and the systems differences masked.

As it was necessary to use some functions from the Windows API, <windows.h> had to be included in a few files were it didn't appear before, creating macros and #define conflicts. In order to solve them, util/rswin.h must be included first in a file (if necessary). Otherwise the preprocessor will fail on purpose to avoid the code being compiled with different _WIN32_WINNT values.

As another side-effect, rstlvutil.h and rstlvutil.cc have been removed from libretroshare.pro file. They are only used by testing units and include util/utest.h which defines a macro FAILED that already exists in <windows.h>. I don't know if unit tests are still in use and I don't plan on coding often on Windows, so I'll leave that as an exercise (hot potato?) to a motivated fellow Windows programmer.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2924 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-16 23:26:45 +00:00
leander-256
e49cc6552c Minor fixes
pqi/authgpg.cc:
- remove French comment (with nasty non-unicode characters)
- use std::cerr instead of fprintf

tcponudp/extaddrfinder.cc:
- initialize correctly the sockaddr_in, former code wouldn't pad sin_zero
  (which is required by the standard)


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2909 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-14 18:50:20 +00:00
thunder2
84a87fa11b New methods for calculating the count of peers and messages. It should be faster than getting all data in std::list.
Now used in MainWindow.cpp, MessagesDialog.cpp and peerstatus.cpp

void p3Peers::getPeerCount (unsigned int *pnFriendCount, unsigned int *pnOnlineCount);
void p3Msgs::getMessageCount(unsigned int *pnInbox, unsigned int *pnInboxNew, unsigned int *pnOutbox, unsigned int *pnDraftbox, unsigned int *pnSentbox);


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2898 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-13 19:20:40 +00:00
thunder2
b242b73f31 Memory leaks:
- ftController::copyFile -> buffer and file pointer leaks in case of error
- PeersDialog::insertSendList -> new QTreeWidgetItem for all online peers, this function is not ready yet
- PeersDialog::insertPeers -> gpg_item = new QTreeWidgetItem(0); in case of no more accept connection
- pqissl::reset -> missing SSL_free of ssl_connection

Missing return:
- IntroPage::nextId


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2891 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-12 20:10:22 +00:00
thunder2
465cd42463 Memory leak:
- getLocalInterfaces -> iptable = (MIB_IPADDRTABLE *) malloc(dwSize);
- main -> RshareSettings  *_settings = new RshareSettings();

ExtAddrFinder::~ExtAddrFinder - use free for pointer allocated with malloc


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2882 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-09 21:58:28 +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
joss17
3b1d1d35fe add a loopback test
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2806 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-27 21:59:59 +00:00
joss17
f6f22e1e5b lower the timing to avoid network problem under winxp
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2805 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-27 21:59:37 +00:00
chrisparker126
8b893fc312 removed authxpgp source files
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2792 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-27 12:01:47 +00:00
thunder2
38e06135a4 - The settings in the settings window are only loaded once.
- Saving the settings without changing the network settings doesn't shutdown the connections

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2786 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-25 23:28:10 +00:00
csoler
78644a2441 - Removed some potentially harmful (deadlock) code.
- Put some printf into debugging #ifdef



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2784 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-25 19:26:37 +00:00
joss17
a6b5e8c364 remove debug outputs
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2782 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-25 17:07:18 +00:00
joss17
293efbf702 Set the trust lvl to 3 when accepting a friend and the trust lvl is unknown.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2780 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-25 17:06:48 +00:00
csoler
695226301a added security check against malformed packets
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2764 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-23 12:57:59 +00:00
joss17
b2b32be32a Udp connection uses now dynsns when available
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2759 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-22 18:50:39 +00:00
joss17
770ea5eada Small rand() fix
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2758 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-22 18:50:25 +00:00
joss17
d70e7a3b71 Add the setDynDNS to the confcertdialog
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2756 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-22 18:49:51 +00:00
joss17
948e4fb61d Commmit the code from Thunder
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2754 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-22 18:49:08 +00:00
csoler
2dd10e5151 included patch for openssl-1.0.0 compatibility
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2747 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-21 08:52:04 +00:00
csoler
7c6ad47bcf forgot to commit this one! Sorry.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2739 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-20 12:08:25 +00:00
chrisparker126
f2a3486e4b fixed compile time error
- call back function did not pass prev_was_bad as parameter
to gui/qtnotify function which requests password

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2738 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-20 11:51:18 +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