Commit Graph

1060 Commits

Author SHA1 Message Date
csoler
9aba04982e improved cipher string for higher security
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7365 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-05-11 18:42:16 +00:00
drbob
cc6a141b68 disable debug
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7320 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-05-03 06:04:04 +00:00
drbob
23480be883 Added PgpAuxUtils to allow Mocking of Pgp functions for simulations.
Cleaned up some of the debug messages.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7306 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-04-27 13:14:07 +00:00
csoler
a3ddc0ac7d remvoed some debug info
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7292 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-04-21 12:38:08 +00:00
csoler
bce35d26e3 fixed deadlock (found by Phenom)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7290 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-04-21 08:22:58 +00:00
csoler
33abca82e5 - removed LinksCloud from plugins (based on obsolete cache system)
- removed copy constructor of RsGenericId from std::string as it allowed many inconsistencies and double transforms of IDs from/to strings


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7289 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-04-20 16:34:26 +00:00
chrisparker126
ef8f48ae73 Added rsshared ptr helper object (only use in test for memory management)
Added first nxs_test
modified pserviceserver to allow better dependency injection 

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7279 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-04-18 21:58:14 +00:00
drbob
1d17290e78 move #include out of header.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7265 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-04-12 03:53:30 +00:00
csoler
e865ff2fb6 added debug tags to p3ServiceControl
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7227 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-04-03 21:27:22 +00:00
drbob
0dbe55bd05 Fixed serialiser bug in RsTlvList
Switched to proper Ids in gxsCircle gxsId items.
Fixed up Config serialiser.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7218 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-04-01 08:00:20 +00:00
drbob
600639db51 fixed up tlv serialisers:
- Added RsTvlUnit: public RsTlvItem, which handles some of the infrstructure.
 - made TlvSize() SetTlv() and print() const.
 - split rstlvtypes into its bits and cleaned up header files.
 - added templated RsTlvList, imilar to cyrils id one.
 - removed GXS_GEN_TESTNET
 - cleanedup rsserviceids.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7215 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-03-29 15:34:37 +00:00
drbob
0e6302ac6a Removed configuration type (uint32) as its not needed or really used.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7212 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-03-29 05:20:57 +00:00
drbob
190988c3cc Switched most of the services to use p3ServiceControl instead of p3LinkMgr.
- Added a couple of utility fns to p3ServiceControl too.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7211 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-03-29 03:57:44 +00:00
drbob
efe9503c3a Added Function to allow Services to get list of peers currently connected on a service.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7208 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-03-26 07:45:03 +00:00
drbob
0fac6fecf9 finished updateServicePermissions.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7205 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-03-25 12:13:43 +00:00
drbob
a06064e167 Finished Notifications in p3ServiceControl:
- added extra Mutex to make notifications work.
 - Added ServiceControl tick to ServiceServer.
 - switched p3discovery2 from pqiMonitor -> pqiServiceMonitor



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7201 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-03-23 03:30:59 +00:00
drbob
3ecf4a0858 - Exported ServiceInfoCompatible for GUI usage.
- Set the rsServiceControl variable.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7197 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-03-22 06:28:59 +00:00
drbob
83a78bcaee Added ServiceControl + ServiceInfo. Basics are working, but still a lot to do!
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7196 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-03-22 03:53:44 +00:00
chrisparker126
0f29d28b1b merge of branch v0.6-idclean 7180
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7187 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-03-17 20:56:06 +00:00
drbob
1b2ed66814 Implementation of GxsId Opinion, and start of Reputation system.
- Removed old reputation system from p3idservice
 - Removed old Msg types as well (no longer needed)
 - Added real submitOpinion()
 - Modified serviceString to support Reputation System.
 - Added reputation information to both Cached Data, and Standard ID Data.
 - Added basics of new reputation system as alternative service. (not gxs).
 - Added Generic TLV types for maps.
 - Moved configuration files to their own directory .rs/config/
 - Finally, fixed up bits missed from the change to updateGroup!



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7131 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-02-19 11:08:37 +00:00
csoler
a5efb4a59a increased TCP buffer size on windows. Makes transfers faster.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7104 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-02-10 21:50:59 +00:00
csoler
235280399f - changed Sha1CheckSum from hand-made class to instance of t_GenericIdType<> (should be backward compatible)
- updated ft/, p3msgservice and p3chatservice accordingly
- added a new class for Sha1Sum in t_GeneridIdType<>, and an additional template argument to make ids of identical size 
	incompatible.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7082 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-02-01 19:10:45 +00:00
drbob
c0738eec7f Merging branches/v0.6-initdev into trunk.
These split at 6672 -> 7075, so quite a bit merge.
libretroshare compiles - but untested.
retroshare-gui needs GenCertDialog.ui and IdEditDialog.ui to be properly merged. (compile errors).
some plugins will be broken.
retroshare-nogui is untested.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7078 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-02-01 14:16:15 +00:00
csoler
730554d397 improved gui message for known peers that are not friends
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7066 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-01-28 21:33:17 +00:00
csoler
11bc15b9cf generalized the test for valid strings to all methods in AuthGPG
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7050 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-01-21 21:01:22 +00:00
csoler
1f4580304f put a hard limit to packet size in pqistore to avoid calling realloc with fancy numbers when the stream has been corrupted
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7049 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-01-21 20:09:09 +00:00
csoler
43a32f23e1 fixed potential attack by supplying non hexadecimal strings as certificate common name
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7048 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-01-21 18:09:05 +00:00
drbob
ae5942733e - Split majority of p3posted into p3postbase.cc - so that it can be reused by other services.
- Fixed iterator overflow into rsgxsupdateitems.cc
 - Fixed Mutex deadlock in pqiperson.cc
 - Removed old code.
 - Fixed lots of compile warnings - mainly wrong variable ordering in constructors.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@7044 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-01-20 11:42:27 +00:00
chrisparker126
f3afc128ee Chozabu patch
- New db created for parent group id field, you will all previous gxs data
- posted now support sub post topics

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@7042 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-01-19 23:38:48 +00:00
csoler
07239883c8 Allow loading packets of large size from config files (fixed storing of big messages), and continue on config files skipping items that cannot be deserialised (Modified patch from Phenom)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7040 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-01-19 14:29:29 +00:00
drbob
06a582564d Fixes for failed Proxy Connection Attempts:
- create Timeout Fn so it can be called by classes derived from pqissl.
 - set HIDDEN timeout to 30 seconds.
 - add reset_locked() calls on errors in pqisslproxy.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@7039 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-01-19 11:35:31 +00:00
drbob
6526dd6c4b Tweaked linkmgr to allow loopback connections.
This allows STD -> HIDDEN connections!



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@7037 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-01-19 06:25:49 +00:00
drbob
d39c5c028a fixed up hidden addresses and removed whitespace from onion address.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@7036 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-01-18 23:29:22 +00:00
drbob
ee09c3ce9c Allow Local Address to be saved and modified in hidden mode.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@7030 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-01-18 05:05:35 +00:00
drbob
12e7d73941 Added ProxyServer to configuration.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@7029 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-01-18 04:40:39 +00:00
drbob
39db508ce7 Improvements for V0.6 logins to support hidden nodes.
- Separated Acount stuff from rsinit.cc => rsaccounts.cc
 - Moved Account Directory to HID06_xxxxxxx, or STD06_xxxxx
	This allows us to check for Hidden immediately
	And prevents v0.5 accounts being used with 0.6
 - Added functions to support Proxy, and Hidden stuff.
 - Changed Minimum port to 10 to allow port 80 to be used by those who must.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@7027 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-01-18 02:32:55 +00:00
csoler
bbdc978d00 improved display/fixed bugs in security item
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7021 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-01-16 19:57:08 +00:00
csoler
613f822133 added new feed item types and logic to show connection attempts from forged certificates (e.g. bad signature, bad certificate)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7018 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-01-15 20:19:17 +00:00
csoler
630824aa1b Updated the notification system. Main changes are:
- the notification system is now a service, p3Notify, that is a public RsNotify.
- RsNotify does nothing except providing a registration system for new notify clients.
- Clients should derive a notify client from the NotifyClient class and register it to rsNotify
- all registered clients get all notifications, so only derive the needed methods. This should allow 
  plugins to get notifications as well.
- updated the code to call RsServer::notify()->[notification method] from inside libretroshare
- pqiNotify has been removed.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6996 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-01-07 22:51:22 +00:00
csoler
146465a53f fixed cipher list for openssl, since ECDHE is not configured, it cannot be used
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6974 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-12-28 21:41:43 +00:00
csoler
dd22bd24d9 fixed display of correct IP for connected friends. Only the external IP was shown previously. Port is not shown because it is random and could be misleading. Needs full recompilation
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6918 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-11-30 13:48:39 +00:00
thunder2
31fd6f6261 Code maintenance for Qt 5:
- Fixed compile with MinGW-w64 under Windows


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6866 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-10-21 21:42:15 +00:00
thunder2
9095e9bd75 Code maintenance for Qt 5:
- Added some more includes needed by MinGW-w64

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6860 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-10-21 11:00:49 +00:00
thunder2
13e7ac8b43 Fixed compile of the libraries with MinGW 4.8 on Windows.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6814 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-10-07 23:11:10 +00:00
csoler
695e417fd5 changed std::wstring for std::string+utf8 in chat, and messages
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6795 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-10-03 21:41:34 +00:00
csoler
3a82fffd0e - fixed bug (added missing call to addSerialType())
- removed unused RsFileTransferCacheRequestItem and all related functions
- fixed bug in turtle router calling members of a deleted item
- removed some debug info
 


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6789 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-10-02 19:56:01 +00:00
drbob
b587301b5a Added a thread per active peer - to reduce RTT and increase throughout.
* Added pqithreadstreamer, tweaked pqistreamer to support derivation.
 * Shifted RTT from p3Service to p3FastService.
 * Disabled lots of debug.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6787 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-10-02 03:21:04 +00:00
drbob
a7dd9ad9e3 Work-in-progress to reduce latency time:
* service->SendItem() now goes direct to pqistreamer buffer.
 * split p3FastService out of p3Service.
	p3FastService removes the recv buffer for faster processing.
	p3Service maintains its original interface, so derivate classes can remain unchanged.
 * Added uint32_t usec (wait period) to BinInterface.moretoread() & cansend() for future threading.
 * Added Mutex protection to pqistreamer, pqissl and derivatives of both.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6783 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-10-01 10:11:34 +00:00
csoler
8e7fe9f79b made file transfer a service. Removed all the old FT code from pqiHandler, and got rid of deprecated CRC32 computation/exchange methods
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6782 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-10-01 08:11:15 +00:00
thunder2
571099d56b Optimized p3HistoryMgr::cleanOldMessages.
There is no need to check the messages when mMaxStorageDurationSeconds is set to 0.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6779 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-29 13:31:15 +00:00
csoler
4e259fecfd allow max storage duration to be 0, in which case we keep all history
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6777 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-29 12:10:59 +00:00
drbob
90aa57a0f0 Rewrite of the discovery system to be more private, with less traffic.
Split the visState into seperate vs_disc and vs_dht for easier handling.
Split the heartbeat system into a separate service.
Added IPv4 and IPv6 local/ext addresses into discovery & peer config.
Fixed up samenet and samesubnet ipv4 calls.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6773 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-28 08:09:59 +00:00
csoler
e21d869006 - added history parameters for chat lobbies
- added max storage time for items in chat history. Avoids filling up the history with chat from volatile peers.
- worked out the layout in config->ChatPage in a more compact design and added help
- set the max size of chat messages to 6000 bytes instead of 2000 which was a bit too low
- default max number of lobby messages saved in each lobby is 20. Avoids flooding for peers who havn't configured it yet.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6770 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-27 21:18:44 +00:00
thunder2
72c7569619 Fixed compile of libretroshare on Windows.
Cleaned some includes of openssl.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6769 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-26 23:53:06 +00:00
drbob
34ea22d5f6 Implemented sockaddr_storage functions.
Fixed interfaces for UPnP.

Some further tweaks to get TCP connections working again:
 - hiddenNode issue in p3peers.cc
 - fixed socklen_t for bind() and connect() calls.
 - initialise addr to IPv4 for netmgr.
 - change netAssist (Upnp) interfaces.

Still todo: tou address functions, test UDP functionality.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6755 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-24 05:30:01 +00:00
csoler
4b44304aec Enabled PFS for SSH connections, based on a 4096 bits safe prime. This is retro-compatible, meaning that old peers will connect to the new one using PFS if they act as a client (meaning they request the connection)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6738 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-14 12:28:45 +00:00
drbob
6290d8fed9 Massive commit - changing from sockaddr_in => sockaddr_storage.
In preparation for making RS support IPv6.

NB: This breaks the build of retroshare-gui, as the
sockaddr_storage_xxx fns are only defined as prototypes for now.

All the aux libraries like udp / stun / tcponudp / dht have still to be converted.

These changes will probably break various things and need to be tested thoroughly.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6735 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-13 14:35:19 +00:00
drbob
5322040d29 disabled outgoing normal connections - if hidden node.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6730 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-11 07:00:33 +00:00
csoler
9d8d773c3c fixed proper display of crypto params for UDP connections
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6725 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-10 19:31:44 +00:00
drbob
bfd915864b mods to support hidden node: setup & cert sharing.
Also removed old configuration mode from p3cfgmgr



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6720 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-09 02:10:49 +00:00
csoler
eeb2dcaaf2 drop corrupted config files instead of looping into them
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6706 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-07 12:49:36 +00:00
csoler
65e7ad0e5b pqihash now uses Sha1CheckSum
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6692 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-05 19:28:10 +00:00
drbob
a6cf738371 Removing old services, serialisers and other references for:
- forums
	- channels
	- tunnel
	- blog
	- gamelauncher.
	- distrib.

Note this majorly breaks the GUI, for the moment.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6683 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-03 14:51:23 +00:00
drbob
212b4c44c9 First of the V0.6 changes.
- Adding basics for proxy connection.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6682 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-03 13:35:39 +00:00
drbob
f519ae1a0d * Added libretroshare internal storage of "Denied Connections" in linkMgr.
* Added a couple of missing #defines.
 * Tweaked dht connect state strings for easy parsing.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6589 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-08-22 07:26:13 +00:00
drbob
f93ed1fb6e - Removed RsIface, and moved configuration options to RsServerConfig (rsconfig.h)
- Fixed cipher list to "HIGH:!DSS:!aNULL:!3DES", which should disable the weak ones, no idea how to force it to PFS (which it should use).
 - fixed void * pointer maths.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6584 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-08-21 21:36:33 +00:00
thunder2
041bdaab50 Added send of updated discovery information.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6570 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-08-08 23:00:27 +00:00
csoler
1994dfa31a fixed looping in pqistore when a crazily long packet is found. That is the result of an unknown bug, but at least we should handle it correctly.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6568 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-08-08 18:59:35 +00:00
csoler
9cd2f19d6e fixed passphrase question at start
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6565 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-08-08 14:15:50 +00:00
csoler
aba5033604 - added argstream to handle commandline arguments
- switched tests to use the common value of argstream in libretroshare, rather than the one in tests/common
- reworked command line arguments in rsinit and retroshare-nogui.
- improved passwd hash explanations
- improved command-line help.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6559 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-08-06 17:01:38 +00:00
thunder2
9ffb625f9a Added missing IndicateConfigChanged to p3PeerMgrIMPL::setDynDNS
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6558 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-08-05 21:51:07 +00:00
csoler
a570f66e79 no need to drop an entire config file when a single item cannot be serialized.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6548 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-07-30 14:47:41 +00:00
csoler
2b9a211184 fixed memory leak in cert signature verification at connect (Patch from Phenom). Also removed some unused variables reported by gcc
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6516 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-07-18 22:10:30 +00:00
thunder2
af5c31a4f5 Use the best network interface to route an ip instead of the first interface in getLocalInterfaces on Windows.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6469 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-07-01 15:12:06 +00:00
csoler
9f88917ac1 added display of SSL encryption parameters in PeerDetails dialog
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6465 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-06-28 21:47:25 +00:00
csoler
4868a90d81 patch from Henry morgan to fix soem typos (e.g misspelled connexion into connection)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6460 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-06-24 21:23:50 +00:00
csoler
748f7db7a4 Made pqiStore accept packets even after deserialization error, so that it is retrocompatible (Patch from Phenom)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6459 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-06-23 21:53:14 +00:00
thunder2
a304ffbab7 Fixed some compiler warnings
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6419 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-06-09 17:54:54 +00:00
csoler
046a3548fe fixed update of flag for peer signature over own key
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6417 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-06-09 13:09:36 +00:00
csoler
dc2521cf71 Merged branch v0.5-GenericTunneling into trunk (Rev. 6284 to 6410).
- adds turtle router as a generic tunneling service
- made ftServer a client of the service. Now turtle file items are handled in ftServer
- added new client: p3MsgService to send/recv pgp-encrypted distant messages
- added new client: p3ChatService to perform private (AES-encrypted) distant chat through tunnels.
- The GUI is disabled for now, since it needs some polishing before being fully usable.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6411 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-06-06 19:58:30 +00:00
chrisparker126
325fa4f222 merging gxs_phase2 branch
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6401 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-06-04 21:00:43 +00:00
csoler
0d3d8ed2bd fixed uninitialized memory read
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6384 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-05-30 18:26:50 +00:00
csoler
0266329dc8 - Added a drop-down item to allow removing unused keys, in the Network dialog.
- added key removal method in OpenPGP-SDK
- improved FriendSelectionDialog/Widget to enable select all/none keys, and show non friend keys
- added safe key removal method in PGPHandler. Removed keys from other locations will not cause errors.
- added backup system to public keyring, impossibility to remove public parts of owned secret keys, etc.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6382 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-05-29 21:32:02 +00:00
csoler
2986e81f7e added ability to keep track of when keys have been last used for signature check, signing and encryption, so that we can later detect which keys are unused and get rid of them
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6374 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-05-21 22:38:00 +00:00
csoler
6f769b3b54 added message encryption for distant msgs. Still missing decryption.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-GenericTunneling@6351 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-05-03 21:02:44 +00:00
thunder2
be34ede8fd Enabled history for chat lobbies (not saved to disc)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6322 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-21 16:43:49 +00:00
csoler
c2fcd8bc71 patch from Henry Morgan to avoid removing peer permission flags when removing locations
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6309 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-16 20:10:31 +00:00
csoler
43b9117293 - added creation of chat link info
- added binary data encryption to PGPHandler



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-GenericTunneling@6301 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-10 20:28:13 +00:00
csoler
bc463a0f81 fixed remembering flags for own id, tentatively fixed service perm bug
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6292 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-05 21:11:27 +00:00
csoler
3e86fc0640 removed unnecessary debug output
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6289 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-04 13:12:00 +00:00
csoler
8399ce82ee added missing mutex, and warnings if permission flags methods are not called with correct ids
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6287 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-03 22:50:50 +00:00
csoler
ee54247cc2 fixed bug that would reset service permission flags when discovery is enabled and discovery info is received
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6283 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-28 19:48:45 +00:00
csoler
2dcc35d979 further remove of debug info
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6247 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-19 20:21:20 +00:00
csoler
7c0fb5eced fixed other uninitialized memory read
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6204 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-10 22:48:47 +00:00
csoler
22befbfdf4 fxed uninitialized memory read in p3NetMgr
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6202 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-10 22:21:07 +00:00
csoler
e7536960c3 - fixed inconsistency in parameter naming, causing error_string to be mixed up with gpg id (Not a bug).
- removed unimplemented entry loadCertificateFromFile()


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6075 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-01-19 13:43:35 +00:00
csoler
24a40fc665 - make addFriend a virtual (pure) function of the abstract p3LinkMgr class. Useful for testing.
- updated test notes.
- patched netsetup_test and upnpforward to run correctly.


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6051 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-12-27 21:18:16 +00:00
csoler
66207b81e5 - made the names consistent between ftdata, ftdatamultiplex and tests/
- added missing virtual functions in ftDataRecv
- setup initSSL instance as a static member of AuthSSL, instead of an external (does not change much except the init in rsinit.cc)
- changed p3PeerMgrIMPL to take SSL and PGP ids as parameters. This avoids calling AuthSSL and AuthGPG from the constructor => very helpful for tests.
- added random creation function in t_RsGenericId<>
- added functions setAuthSSL_debug() and setAuthGPG_debug() to manually setup the authSSL and authGPG objects to use. Used in tests.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6035 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-12-26 18:12:19 +00:00
thunder2
13ac670eec Changed config type of the FeedReader. There was a conflict with general config.
Added warning in p3ConfigMgr::addConfiguration when a config type is used twice.
Removed checkbox for "Experimental Features" in general page without function.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6027 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-12-22 00:02:40 +00:00
drbob
069b72e0b2 Merged branch v0.5-gxs-b1 into trunk (from -r 5351 -> 5995)
This brings a huge amount of goodness into the trunk,
but there is still a big chunk todo before it can be released.

 * GXS Backend.
 * GXS Services:
	- Identities.
	- Circles
	- Photos
	- Wiki
	- GxsForums
	- Posted.
 * SSH no-gui server.

See branch commits for more info.

To switch on GXS stuff, enable CONFIG += gxs
in both libretroshare.pro and retroshare-gui.pro



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5996 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-12-16 19:17:11 +00:00
thunder2
ef7a2aaa59 Added missing closeConnection when the connection dies with SSL_ERROR_SYSCALL.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5980 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-12-13 22:54:17 +00:00
csoler
60af8cefe0 corrected stupid mistake in previous commit
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5970 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-12-11 22:16:40 +00:00
csoler
71ed00cd68 made warning about missign fingerprint beingprinted only once
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5969 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-12-11 21:55:47 +00:00
csoler
e3da77612a - Added flags for services and service permissions for peers
Flags are identity-related, meaning that all locations of the same peers have the same flags.
- It's now possible to tweak which services each peer can use. Service that can be disabled are
  forums/channels, discovery, anonymous routing.
- by default, peers have all flags on.
- fixed missing error msg in p3cfgmgr when serialisation fails.
- fixed bug in RemoteDirModel causing infinite loop to happen when group name is unknown




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5924 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-12-01 19:22:22 +00:00
thunder2
80dfa620b2 Fixed compile on Windows.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5893 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-25 21:48:00 +00:00
drbob
a134f81f95 Protected waitingIds with Mutex.
NB: This is windows code - which I cannot compile. Sorry for any bugs.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5891 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-25 20:52:10 +00:00
drbob
de80f2aa3e * Moved DataRate interface from rsiface (old) -> rsConfig.
* Internally moved storage of data rate from pqipersongroup -> p3serverconfig
 * made DataRate + Operating Mode work together.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5889 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-25 20:25:34 +00:00
drbob
0fa8d55062 Reviewed Mutex in pqihandler.
- In general it is okay, except for: DataRate Handling, and Win32 specific: WaitingList.
 - Cleaned up some functions.
 - renamed createPerson and createListener to locked_createPerson and locked_createListener.
       This is required as neither Listener nor Person are thread safe (TODO).




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5888 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-25 16:36:55 +00:00
thunder2
09f42dbc3c Added new level gpg id to FriendSelectionWidget (groups, gpg id, ssl id).
Added friend selection to the group dialog for better assigning of friends to groups.
Updated english translation.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5881 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-24 14:48:31 +00:00
chrisparker126
d8dc2a0420 publish key not generated for public groups anymore, added signature creation for publish and id keys (used in main line of code, correctly initialise ur gxs services)
groupid assigned to group before service_CreateGroup now (to help with identity using pgp hashes)
fixed up dummy group creation for photo service and ui 
completed basic functions of GxsGroupDialog




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5809 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-11 23:45:22 +00:00
csoler
9000cf9034 patch from thunder to handle connexion break correctly, and therefore avoid false notification attempt of friend.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5807 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-11 19:28:45 +00:00
drbob
a5f52e85a1 Added new Upnp interface fn, and dummy implementations.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5734 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-28 18:17:06 +00:00
thunder2
78edc7687e Fixed compile of libretroshare on Windows. The corrected pro files are not included.
Moved the includes of rswin.h from the header files to the c files.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5655 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-09 23:07:51 +00:00
chrisparker126
91bf67a7fe fixed compilation issue for linux. needed to add inttypes header file (not needed for windows...)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5633 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-02 19:15:24 +00:00
csoler
fbc937c638 limited number of warnings for missuse of AuthGPG::getGPGName()
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5610 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-26 19:28:32 +00:00
csoler
ea29fd624a removed debug info
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5564 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-17 20:49:52 +00:00
drbob
77edd3e013 disabled all rslog calls in p3dhtmgr.cc with #define,
and unnecessary debugging rslog messages in pqistreamer.cc



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5562 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-17 20:25:22 +00:00
csoler
bb49359fdb removed debug info
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5561 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-17 20:19:02 +00:00
csoler
8e5ddcb0d6 ensure that ssl id is always converted to lower case before being used to add a new friend. This fixes the bug allowing to add multiple times the same friend by changing the case is the SSL id
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5557 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-16 14:43:38 +00:00
csoler
8cca9608f2 Fixed report of failing connexion attempts/recepts. Cleaned the code a little bit
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5550 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-14 21:04:16 +00:00
csoler
b8cee76fa5 added display of IP address for incoming failed connexion attempts
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5532 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-09 20:25:39 +00:00
csoler
60f51c358c - added new certificate format in ConfCertDialog and ConnectFriendWizard, with a button to switch to old format if necessary
- added automatic cleaning of certificates in both formats
- grouped all certificate cleaning/parsing code in rscertificate.cc
- removed unused files cleanupxpgp.h/cc
- added upper/lower case to rsid template.

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


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5410 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-08-13 19:37:50 +00:00
csoler
a28786513e improved pgp cleaning function
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5335 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-27 14:08:35 +00:00
drbob
f34f617f00 Changes to get openpgpsdk version working on OSX.
- switch to OSX10.6 for upgraded SSL, with different fn signature.
 - correct library paths in libretroshare.pro



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5331 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-27 12:28:40 +00:00
thunder2
703e5def72 Removed usages of gpg.h and cleaned pro-files for Windows.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5296 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-14 00:02:40 +00:00
thunder2
7e226558e4 Fixed some memory leaks when config could not be loaded/saved.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5294 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-13 22:10:52 +00:00
csoler
fc8dfcf65b Merged branch v0.5-OpenPGP into trunk:
User-level changes:
==================
- libgpgme is not used anymore; it is replaced by a built-in piece of code called OpenPGP-SDK 
  (http://openpgp.nominet.org.uk/cgi-bin/trac.cgi) that was improved to be used by RetroShare
  for handling PGP keys.

- the gnupg keyring is not used anymore. Now, RetroShare has it's own gpg keyring, shared by all instances.
  On linux it's located in ~/.retroshare/pgp/. A lock system prevents multiple locations to read/write keyrings
  simultaneously.

- the trust database from gnupg is not documented, so RetroShare cannot import it. This comes from the fact that
  the GPG standard (RFC4880) asks explicitly not to export trust information. So RetroShare has it's own 
  trust DB shared by locations. This means you need to re-trust people. Sorry for that!

- at start, if no keyring is found, RS will propose to copy the gnupg keyring to use your existing keys. Clicking on 
  "OK" will do the copy, and you should find back all existing locations, except for DSA keys.

- locations for which the suitable keypair is not in the keyring will not be displayed in the login window
- locations for which the suitable keypair is not a RSA/RSA key will not be displayed. RetroShare does not
  support DSA/Elgamal keypairs yet.

- a key import/export exchange function has been added in the certificate creation window (you go there from the login
  window by clicking on "manage keys/locations". This allows to easily create a new location with the same pgp key on
  another computer. To obtain a suitable keypair using gnupg, you need to concatenate the encrypted private key and the 
  public key into an ascii file. This can be done using:
  		gpg -a --export-secret-keys [your ID] > mykey.asc
		gpg -a --export [your ID] >> mykey.asc

- importing a key with subkeys in not yet possible. Please remove subkeys before importing.

- The code has been tested for a reasonnable amount of time, but it's not possible to prevent some new bugs 
  to appear. Please report them asap supplying: call-stacks if possible, and terminal output. In particular,
  openpgp has some assert()'s that should not be triggered unless RetroShare is calling it in an improper way.

Internal changes
================
- a specific component, PGPHandler, takes care of the interface between openpgp-sdk and RetroShare
  openpgp-sdk is c-code, with it's own memory management, which has been kept well separated from 
  RetroShare.

- GPG Ids are now a specific class (not a std::string anymore) for code consistency reasons. As strings are
  still used in many places, this requires a few conversions. In particular, AuthGPG takes strings as
  function params and calls GPGHandler with the proper PGPIdType class. In the future, RetroShare should
  only use PGPIdType. The same will be done for SSL ids.

- signature cleaning is still handled by the Retroshare built-in function, not by openpgp, but we will 
  do this later.

Still to do
===========
- DSA needs subkey handling, since the encryption is performed by a Elgamal subkey. Not sure this will be done.
- GPGIds/SSLIds cleaning (meaning replace strings by appropriate types). Lots of confusion throughout the code in retroshare-gui in particular.
- key removal from keyring. This is a challenge to keep locations synchronised.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5293 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-13 21:53:39 +00:00
csoler
4fc3ce491a updated self-signatures
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5292 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-13 12:20:44 +00:00
csoler
ddf503a793 - moved pgpkey.h/cc into pgp directory
- fixed bug in key cleaning code


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5291 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-13 11:08:13 +00:00
csoler
f5c276c9b5 improved error handling
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5289 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-12 19:20:31 +00:00
csoler
c9eb267165 implemented export of identity (to create additional locations easily). Import still to do...
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5285 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-10 21:40:53 +00:00
csoler
54511ad390 fixed bug in certificate signature
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5283 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-09 20:20:36 +00:00
csoler
0a6c60d2df added filtering of private key for login window, and fixed uid at cert creation time
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5282 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-08 21:06:41 +00:00
csoler
fa6674fd01 removed old includes of gpgme. Updated values for trust
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5279 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-07 16:26:54 +00:00
csoler
444602e8e6 - added key signatures (not fully debugged yet)
- added locks to prevent concurrent access to PGPHandler
- added output of unverified signatures



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5275 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-05 22:25:46 +00:00
csoler
3b5816e4f8 - added auto-update and sync of keyrings and trustdb between different instances (Not fully tested yet!)
- added checking of compatibility for DSA before calling openssl


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5259 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-29 19:38:19 +00:00
csoler
bde90e16a5 fixed compilation on some ubuntu distribs due to missing include
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5255 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-26 19:30:36 +00:00
csoler
8d070bb030 moved QoS down to pqistreamer pipes. This removes one out queue, and removes lags due to many packets being sent at ones.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5249 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-23 12:10:41 +00:00
drbob
e0af833f47 Added QueueSize information to be exported too.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5245 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-22 01:35:32 +00:00
drbob
48a1c66c60 Added Bandwidth Monitoring service to libretroshare to help debug Lag.
- p3bwctrl.h/.cc & rsbwctrlitems.h/.cc
	- New Interface in pqihandler to extract the data.
	- New Interface in rsconfig to display in GUI.
	- Added extra debugging in pqistreamer for catching big outqueues.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5241 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-21 23:23:46 +00:00
csoler
9357a228a6 added read/write of trust database in private format
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5237 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-20 21:59:04 +00:00
csoler
dba66cdd7a added check for DSA/RSA key algorithm. Disabled make friend, login and cert creation, with unsupported keys
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5221 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-14 20:13:31 +00:00
csoler
043c7a8139 fixed bug in saving accepted pgp ids
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5217 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-12 21:19:38 +00:00
csoler
f30a3f1b16 - moved lock handle functions to rsdir.h/cc
- created a scope guard to manage file lock handles
- added lock gards to PGP keyring read/writes.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5216 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-12 20:31:13 +00:00
thunder2
1885fb66c4 - Enabled compile on Windows (bzip2 library needed).
- Fixed crash after the second call to RsInit::InitRetroShare when keyring does not exist.
The instance of AuthSSL was created twice and AuthGPG was deleted without stopping the thread. Stopped the AuthGPG thread on exit of RetroShare.
- Added the correct path to the keyring for Windows in RsInit::copyGnuPGKeyrings.
- Changed the detection of the portable version on Windows from the file "gpg.exe" to the file "portable".

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5211 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-10 00:29:46 +00:00
csoler
a91e859b66 added dialog box to import existing keyrings when starting the new pgp version for the first time
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5210 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-09 21:01:22 +00:00
csoler
2e05d0ef01 moved tests to test directory
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5209 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-09 18:45:35 +00:00
thunder2
14c1f9f599 Added dynamic locking function for the OpenSSL library.
This is needed when using OpenSSL from multiple threads.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5168 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-15 13:51:24 +00:00
thunder2
c331098203 Added new message flag for system messages like friend request.
Show "RetroShare" as sender of system messages to myself.
Added new quick view in MessagesDialog to filter system messages.
Changed RetroShare link in friend request message to certificate.
Added new subject image for the system messages (defnax).
Removed not used notify in message service.
Recompile needed.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5129 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-01 09:18:55 +00:00
csoler
60fcd981c1 fixed binary signature
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5128 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-01 08:53:32 +00:00
csoler
ce5e6d3949 fixed password handling
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5127 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-29 11:57:03 +00:00
csoler
42687f32aa first working version !
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5123 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-26 21:39:45 +00:00
thunder2
9501a4fe2c Added new friend request toaster from defnax.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5120 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-25 19:19:16 +00:00
thunder2
a6dfac2a37 Removed std::stringstream.
Removed not necessary include <sstream>.

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

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5109 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-18 21:20:37 +00:00
thunder2
83bd45caa4 Removed some std::ostringstream.
To be continued.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5103 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-14 22:38:24 +00:00
thunder2
0ac69b87db Fixed compile on Linux.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5098 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-14 00:36:20 +00:00
thunder2
545743ad77 Removed some std::ostringstream.
To be continued.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5097 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-14 00:30:23 +00:00
thunder2
3b85873313 Added patch from AC
- add missing includes "unistd.h" for compiling with gcc 4.7.0.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5096 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-12 23:29:39 +00:00
csoler
fa429ad8d4 added caching of GPG information to PGPHandler
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5086 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-09 17:03:47 +00:00
csoler
b43fb7e8b3 - added encryption / decryption of files and memory
- started implementation of new AuthGPG


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-OpenPGP@5084 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-08 14:52:01 +00:00
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