- memory leaks in pqi/cleanupxpgp.cc , 2 new char[] => 2 delete[]
- reordering some constructors' initializing order
- char* myString = "foo" constructs must be prefixed by "const"
- using size_t for variable types when dealing with STL
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3079 b45a01b8-16f6-495d-af2f-9b41ad6348cc
3068: added verification for file size computation (bug correction)
3069: set heartbeat values to intermediate values
3070: suppressed uninitialised memory read
3071: automatic removal of file lists from deleted peers, at restart (After
double check that this does not alter exchange of file lists in any way)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3072 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This avoids that an attacker that captures a broadcast hash request can also ask for the file.
This needed to add back explicit sources in SearchDialog and private chat transfer. I dynamically search
for sources in file lists just before calling FileRequest.
When RS links anchorClick() will work properly with Qt, we can remove the search flag "EXTRA" from the
tunnel digging in p3turtle.cc, otherwise, people having this bug can't transfer files in private chat by
copy+paste of a RS link.
Also:
- added missing mutexes in search requests into fimonitor.cc
- suppressed some debug info in connect manager
- added check for write fails when dumping config files
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3027 b45a01b8-16f6-495d-af2f-9b41ad6348cc
The problem was that libretroshare handles files in UTF-8 but Windows's ANSI/POSIX C functions automatically assume that the char* parameters are encoded with the system's code page. There is no way to set that code page as UTF-8. So now under Windows the code translates the file name to UTF-16 before feeding it to one of the Unicode functions (they are usually prefixed or suffixed by 'w'). Please note that it is not very efficient.
Furthermore, Windows does not provide a Unicode version of opendir/readdir/closedir, so it was necessary to use FindFirstFileW/FindNextFileW/FindClose which has a different behaviour as well as different structures. The FolderIterator class was created in order to mimic the Unix way of traversing folders contents. Hence the algorithm is unchanged and the systems differences masked.
As it was necessary to use some functions from the Windows API, <windows.h> had to be included in a few files were it didn't appear before, creating macros and #define conflicts. In order to solve them, util/rswin.h must be included first in a file (if necessary). Otherwise the preprocessor will fail on purpose to avoid the code being compiled with different _WIN32_WINNT values.
As another side-effect, rstlvutil.h and rstlvutil.cc have been removed from libretroshare.pro file. They are only used by testing units and include util/utest.h which defines a macro FAILED that already exists in <windows.h>. I don't know if unit tests are still in use and I don't plan on coding often on Windows, so I'll leave that as an exercise (hot potato?) to a motivated fellow Windows programmer.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2924 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- Bug fix: Checkbox for automatic share of the incoming directory doesn't correctly set with setDown, use setChecked
- ShareManager and RSettingsWin doesn't need to be created all the time
- RSettingsWin: Save the last active page for the current runtime
- ShareManager and DirectoryPage: Show changed shared directories direct after the change
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2777 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* Modified tlvitems to support future expansions.
* added random tlv test functios.
* added dummy Wide Directory functions to rsdir (for the future;)
* Fixed Mutex Bug in fimonitor.
* added netiface_test for hiberation / net change testing.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1620 b45a01b8-16f6-495d-af2f-9b41ad6348cc
-downloading directories from search dialog not implemented yet
-needs more code clean and beautify the directory tree
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1566 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- suppressed auto-collapse of directories when updated.
Still To do:
- auto-update QTreeView in PostMod() to avoid display inconsistencies.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1520 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- now, only files with the NETWORK_WIDE flag are searchable by turtle hopping.
Next move:
- integrate turtle search in default gui.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1512 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- 1st attempt at displaying share properties in the SharedFlagsDialog.
- added share flags in DirDetails structure in place of Rank, that is not used anymore.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1509 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- own directory browsing is now done through FileIndexMonitor. This allows:
- to browse shared directories independently of their flags
- to update files as they get hashed (yeah!)
- still to do:
- turtle requests should respect the share flags
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1507 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- now only the directories with flag "browsable" on are dispatched to friends
- when switching flags, directories are re-sent to friends
Still to do:
- turtle search only files with "Network wide" flag on
- test what happens when 2 directories have the same base name
- display own directories by calling FileIndexMonitor instead of FileIndexStore
Warning: at this time, directories that are not browsable do not appear in the Files dialog under "my directories".
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1506 b45a01b8-16f6-495d-af2f-9b41ad6348cc
What works:
- the gui shows the flags in ShareManager
- the flags are loaded/saved to ft_shared.cfg and passed on to FileIndexMonitor
What does not work yet:
- the flags are not accounted for yet by FileIndexMonitor
In addition:
- simplified the directories dialog in Preferences, so that it calls the ShareManager instead of dupplicating the directories management
code that becomes larger.
- setup the ShareManager to be a singleton, so as to coherently call it from different places.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1486 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This reverts commit 1bf9ed770532f3093548fa4120209be3a31c5c21, reversing
changes made to 5b0464d7a0aaa034851dfc80ca0a2d367f4c28ef.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1179 b45a01b8-16f6-495d-af2f-9b41ad6348cc