Commit Graph

123 Commits

Author SHA1 Message Date
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
b9af3bab92 made FileEntry derive from SmallObject class, to improve memory cache efficiency (50% time gained)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4122 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-04-03 20:10:26 +00:00
csoler
6edee55e57 added error message when thread creation fails
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4112 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-03-30 22:32:13 +00:00
thunder2
127eac1118 Fixed utf8 issues when the partial or the download dir is set to a utf8 dir.
Use the native dialog for selecting the shared folder.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4083 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-03-06 20:19:16 +00:00
drbob
e72155c9dc Added missing return... which was crashing OSX during directory creation.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4077 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-03-05 03:43:40 +00:00
chrisparker126
ec0ce30103 checked in first bits of code for cache service data optimisation,
distrib can build grps xml document
added pugixml src code into utilities

pls see design document:
http://retroshare.sourceforge.net/wiki/index.php/Documentation:design_services_histories

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4076 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-03-04 22:16:25 +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
800cc281c5 suppressed potential SIGSEGV as exit time
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4068 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-03-02 14:33:32 +00:00
csoler
e39a04ee7f last fix to missing ftello64 calls (hopefully)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4057 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-02-24 22:44:41 +00:00
csoler
ea84a81886 fixed bug with big files. To be tested.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4056 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-02-24 22:22:59 +00:00
csoler
f6dc46da73 fixed bug with big files. To be tested.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4055 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-02-24 22:19:04 +00:00
csoler
827dbd8cf3 added a memory management class for small objects.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4046 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-02-20 21:36:21 +00:00
csoler
9de341953d removed duplicate hashing function. Now the hash buffer is always 512 bytes.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4038 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-02-14 19:59:06 +00:00
drbob
0dcef10ec2 Fixed the FriendFeed backup of messages:
* switched to one universal PendingCache list.
   * added mHistoricalCaches variable to p3distrib - to indicate when old caches have been loaded.
   * added calls to p3GroupDistrib::HistoricalCachesDone() in rsinit.cc
   * added "historical" parameter to lots of p3distrib functions.
   * updated child classes to only add FeedItems if (historical == false).
   * Switched Validate / Duplicate Msg checks to speed up historical data load.
   * corrected rsrandom function for OSX.
   * bugfix to rsloginhandler function. (compile error).
   


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4008 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-02-02 21:03:46 +00:00
thunder2
23782a9d28 Fixed compile on Windows.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4004 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-30 21:04:09 +00:00
csoler
c4b8094d8e restored random seeding of the Mersenne twister (plz dont remove this! If it does not compile on windows, use time(NULL) only)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4000 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-30 15:27:02 +00:00
thunder2
91c2c0e4bf Fixed compile on Windows.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3996 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-29 19:08:30 +00:00
csoler
25056b3623 added function for generating random ascii strings, and improved the test program to test for this as well
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3992 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-29 14:23:07 +00:00
csoler
e57f8836e4 suppressed debug info, added lock
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3983 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-25 23:28:22 +00:00
csoler
6d44694c7a corrected bug in DNSSolver that caused high CPU usage
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3982 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-25 23:03:44 +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
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
ab42691a31 Removed unnecessary loops for debug output in CacheStrapper::loadList without debug enabled.
Changed parameter of RsDirUtil::cleanupDirectory from "std::list<std::string> keepFiles" to "const std::list<std::string> &keepFiles".

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3925 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-12-21 13:30:45 +00:00
drbob
06273fa775 Hackish changes to debug Windows Transfers...
Committing these so others can run tests.
Most of these changes will be removed once the problem is fixed!
 * Fixed formatting of various serialiser item::print() fns.
 * Disabled printout of TlvBinaryData - data.
 * added AccurateTimeString() function to util/rsprint.cc
 * print serialise / deserialise of FileRequest & FileData + Timestamps.
 * added print + timestamp in ftFileProvider::getFileData()
 * #define TRANSFER_DEBUG to isolate these changes.
 * enabled debugging in fttransfermodule.cc



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3779 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-11 20:51:17 +00:00
drbob
634dbca14f Added Installation of BitDHT bootstrap file.
* new DataDirectory Function in rsinit.cc
  * new copyFile() and checkFile() functions in rsdirutils.
  * bdboot.txt is checked for and copied over if missing.

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



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3713 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-28 22:59:46 +00:00
csoler
36337b5011 put a warnign and check in rsdiscspace when rsFiles is null
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3583 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-01 20:28:27 +00:00
csoler
6fc8f8831b put some consts& around std::string in rsdir to improve performance
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3581 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-01 20:05:09 +00:00
csoler
edd5aaf87a suppressed bug in CRC32 computation of files
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3575 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-09-30 21:44:31 +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
thunder2
ed737e2c9f Fixed umlauts (utf8) in Windows. Changed some parameters to reference pointer. Added virtual folders to the lib.
Recompile needed.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3509 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-09-17 18:27:30 +00:00
thunder2
00ef48b45d Fixed crash on Windows.
The mutex rndMtx was not initialized when calling RSRandom::seed on startup.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3497 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-09-15 10:42:24 +00:00
chrisparker126
9e86265f91 moved test sources to test directory and deleted a few dead files , created new util test directory.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3396 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-08-25 19:54:28 +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
csoler
30e4509043 added a thread-safe and cross-plateform random number generator
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3373 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-08-15 20:20:51 +00:00
defnax
a911e1ac28 update revision string
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3370 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-08-15 01:33:38 +00:00
thunder2
e046ebd480 Fixed linking of RetroShare.
undefined reference to `operator<<(std::basic_ostream<char, std::char_traits<char> >&, sockaddr_in const&)'

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3358 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-08-11 20:14:29 +00:00
csoler
09d5014df5 suppressed double definition of operator<<() when using libbitdht
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3343 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-08-06 12:26:49 +00:00
leander-256
4bb4fc11e2 This intimidating patch renames libretroshare/src/rsiface/ to
libretroshare/src/retroshare/

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

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



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3342 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-08-06 09:40:23 +00:00
thunder2
a595ba4fc7 Moved constructor of class bdThread from bdThreads.h to bdThreads.cc.
Initialized member mTid of class RsThread too.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3338 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-08-03 14:26:54 +00:00
csoler
8bfc74485a First implementation of per-chunk CRC32 check. This is triggered
- by the right-click+Force Check on files.
- when a global hash on a downloaded file does not match the announced hash.

When a CRC map check is ordered, the CRC map is requested to one of the sources for the current file download.
When received, all downloaded chunks are checked w.r.t the reference CRC and marked as not done if the CRCs do not match.
The exchange of CRC32 map and requests has been tested, as well as CRC map checking during download (force check).

To be implemented soon:
    - caching of CRC32 maps (although these are fast to compute)
    - CRC32 map packets for normal downloads. For now these work only for turtle tunnels.
    - handling of errors if the CRC never comes. For now, the download will stay stuck in "Checking..." mode.

So, don't play too much with the force check feature for now...





git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3310 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-21 23:14:10 +00:00
defnax
724e6f81a8 update revision string
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3298 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-17 20:51:25 +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
csoler
458a8faf70 - implemented post-download hash re-check. For now, if the hash does not match, the download is canceled, but in the near future, per-chunk comparison wil occur
.
- corrected a bug that caused file copy error: a closeFile() was missing when the file is complete. Because of delays in fwrite, the file would not be always co
mplete, nor exist at all for small files (e.g. cache files), which in the later case caused the copy error.

Warning: needs a make clean in libretroshare to recompile.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3261 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-06 05:04:11 +00:00
defnax
54c8b2b0fa update rs version
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3254 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-05 10:52:50 +00:00
thunder2
918decfd0d fixed compile on Windows
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3224 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-27 00:18:33 +00:00
thunder2
ec6c252d62 fixed crash (asserts) by parallel calls to gpg.exe
changed the RsReadWriteMutex to RsStackMutex in AuthGPG


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3158 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-18 20:19:04 +00:00
thunder2
c5eade329b revert my last changes, because _thread_id is useful for debugging
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3130 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-13 21:12:25 +00:00
thunder2
a5b7950065 moved the member _thread_id from class RsMutex inside the define RSTHREAD_SELF_LOCKING_GUARD
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3128 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-13 17:47:00 +00:00
csoler
0d14351b8a Ported branch commits:
3099: libretroshare/src/tcponudp/udplayer.cc 
      libretroshare/src/tcponudp/udplayer.h 	
      libretroshare/src/util/rsnet.cc 	
      libretroshare/src/util/rsnet.h

	moved operator<<(ostream&,sockaddr_in) to rsnet.h, as it is used at
	different places

3100: libretroshare/src/util/rsdiscspace.cc
	suppressed debug mode

3101: libretroshare/src/serialiser/rsdiscitems.cc

	put correct (i.e. non conservative) size for RsDiscReply packets

3102: libretroshare/src/services/p3disc.cc

	Made a pass on the code in p3disc. Corrected some bugs:
		- suppressed an unwanted return in packet treatment
		- prevented sending info to a peer about itself
		- changed askInfoToAllPeers() such as not to discard info
		  from peers with NODISC flag (because we especially need
		  info for these)
		- enabled receiving p3disc info even if p3discovery is
		  disabled. Indeed, disabeling p3disc is a measure of
		  protection, so it should limit the export of p3disc info,
		  not the import.
		- removed test discarding info about dummy friends, because
		  it is useless
		- don't discard info about peers that have the NODISC flag
		  (meaning that we especially need info for them)
		- added safety check about received GPG keys. Before we
		  relied on this test being performed by
		  p3ConnMgr::addFriend()
		- added some debug info

3103: libretroshare/src/ft/ftcontroller.cc
	removed debug info



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3104 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-10 13:42:49 +00:00