* fixed utf8 in dropping links to channels
* fixed pasting cert links in the friend list
* added code to allow pasting GPG certificates missing a newline at the end.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5064 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- handled backward compatibility by keeping/sending old LobbyList item. Should be remove in the near future.
- removed constraint to have at least one friends invited when creating a new lobby.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5024 b45a01b8-16f6-495d-af2f-9b41ad6348cc
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
- 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
Added an own ui for the ChatLobbyDialog.
Saved settings of the ChatLobbyDialog.
Changed parameters of RsStatus interface from "std::string" to "const std::string&"
Fixed german language.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4806 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* 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
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
* Disabled lots of debugging.
* Disabled LOCAL test mode in udpstunner, rsinit
* Enabled BadPeer checking in bitdht.
* Restored normal timeout periods for connection attempts.
* Restored normal connection levels for dht status.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4779 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* 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
NB: Reverse Most of these changes - before adding to Trunk!!!!
* Added missing BitDht callback functions for test/example code.
* Switch tests/example to OSX compile.
* DISABLE_BAD_PEER_FILTER (as it doesn't like local net)
* Reduced Minimum Peer Counts for DHT to be considered active.
* Added LOCALNET_TESTING to rsinit.cc
- new Commandline Option -R <lport-uport> to restrict UDP ports.
- Enables LocalNet in UdpStunner.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4756 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- added generic methods and items for bouncing generic objects through lobbies
- added handling of peer typing status
- proper handling of peer join/leave lobby
- added sub item ids to lobby messages to allow proper message splitting
- made 2 different message splitting methods for normal chat vs. lobbies. In v0.6, we'll have to handle all messages the same way.
- added parent id to RsChatLobbyMsgItem, to allow threaded chat.
- added possibility to make a lobby public/private (not yet fully working)
- added items for requesting/exchanging list of public lobbies at friends' (not yet fully working)
- major cleaning of p3chatservice.cc
Next move:
- gui for listing friend public lobbies, joining them, etc.
- load/save of persistent lobbies.
- autoremove of inactive lobbies
Warning: lobby message items of this version are incompatible with previous versions. It won't crash, but
messages will not pass through.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4755 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- 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
- 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
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
* 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
- 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
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
* Compilation for FreeBSD.
* Notes that MT is not cryptographically secure.
* modified sorting of DHT Window.
Only one change that I didn't commit:
bitdht {
- LIBS += ../../libbitdht/src/lib/libbitdht.a
- PRE_TARGETDEPS *= ../../libbitdht/src/lib/libbitdht.a
+ LIBS += ../../libbitdht/src/libbitdht.a
+ PRE_TARGETDEPS *= ../../libbitdht/src/libbitdht.a
}
As this would have broken compilation on the other platforms.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4619 b45a01b8-16f6-495d-af2f-9b41ad6348cc
=> 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
* WARNING is printed out & LOGGED if it takes more than 0.2 Seconds to complete.
-> This happens occasionally, need to watch it.
-> This is one of the things that kills connections.
-> Ideally want to get the cycle down to 0.05 seconds.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4544 b45a01b8-16f6-495d-af2f-9b41ad6348cc
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
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
* 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
* 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
* 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
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
* 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
- 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
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
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
- 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
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
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
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
* 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
- 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
* 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
* 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
- 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
- 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
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