Commit Graph

141 Commits

Author SHA1 Message Date
drbob
3ab62f147e Adding backends for new Plugin Services: Photo and Wiki.
- These are dummy services at the moment, 
	- they only hold stuff the current session and don't use the network at all.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@4889 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-04 14:16:39 +00:00
drbob
ac6f0fcfe4 --- Merging r4718 through r4752 from branches/v0.5-dhtmods
Added ZeroConf for OSX.
Changes for Relay Support.

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

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

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




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4753 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-06 15:33:51 +00:00
drbob
73471b2618 Bugfixes for ZeroConf under OSX.
- Added Timeouts for Resolve and QueryIP, as these can continue indefinitely.
	- Added more debugging.
	- rotated port number using ntohs().
	- Filtered Self.
	- Allowed Other SSL IDs of Self to connect.
	- Fixed QueryIP to use hosttarget instead of servicename.
	- fixed Id order in mPeerMgr->addFriend().
	- fixed p3ZeroConf initialisation call.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4752 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-06 12:48:04 +00:00
csoler
43be20c0ed added manual entry for plugins
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4734 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-22 20:17:59 +00:00
drbob
e232b1d47d Finished up Relay Interface code to p3bitdht.
- RelayServers, Relay Parameters & Relay Mode supported.
 - Store configuration via p3config.
 - New interface code in p3bitdht_relay.cc
 - Updated external interface rsdht.cc



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



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4727 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-13 16:19:37 +00:00
thunder2
f3a0924461 Reverted some of my last changes:
- removing the core lock in RsServer::ConfigGetDataRates
- changes in p3ConfigMgr::loadConfig

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

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



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

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



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



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



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4633 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-10-08 17:47:36 +00:00
thunder2
363af69254 Fixed utf8 issue in history manager.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4626 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-10-01 13:12:28 +00:00
thunder2
29c090fb44 Moved the chat history into the libretroshare.
Now the history is saved encrypted. Please delete all files with "chat*.xml" in your profile folder.
Added new config p3HistoryMgr and interface p3History.
Added new option to limit the count of the saved history items.
Added new simple html optimizer "RsHtml::optimizeHtml" to reduce the size of the html strings.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4623 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-29 09:20:09 +00:00
thunder2
43c0594d18 Changed some parameters from "std::string" to "const std::string&" in rsinit.h.
Log the error messages from gpgme (ProcessPGPmeError) to stderr.

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

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



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



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



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



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



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



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




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



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



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

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




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

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



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

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

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

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

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

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


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



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

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



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



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



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


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

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3744 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-03 22:54:34 +00:00