Commit Graph

263 Commits

Author SHA1 Message Date
csoler
454daf1981 Iproved file list handling:
- Implemented correct cacheData send to clients usign constant subid value.
- At start, the association between peers and available file list is always recomputed
- overloaded cacheAvailable() and refreshCache() in FileIndexMonitor
- added callback in rsFiles to force re-generating cache items when group layout has changed
- force re-sent file lists when moving peers between groups in the GUI
(Fixes group leaking problem) Needs full recompilation of libretroshare.


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5813 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-12 22:51:27 +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
drbob
6906f47fa7 Bits and pieces to get forums compiled.
- Added some MACROS - could be moved to GXS headers?
 - fixed some GXS compile warnings.
 - added MsgReadStatus to forums interface



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5806 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-11 15:56:34 +00:00
drbob
eeb96c5e62 Lots of progress with Gxs Services:
- Added gxsForum interface, service + serialiser to libretroshare.
 - Bugfix in rsgenservices getSize() at the wrong point, Added lots of debug too.
 - Dummy Collections to Wiki, can now create and retrieve Groups from the GUI.
 - Bugfix in rsinit (wrong backend for wiki) + added forum to startup.
 - improved debugging in GxsId serialiser.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5797 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-09 00:56:07 +00:00
drbob
0327b47ccc * Enabled pgphash background work.
* Fixed lots of little bugs: ServiceString decoding, not saving to variables, etc.
 * Added createIdentity fns. - Can create Anon, but not PGPLinked ones yet? no idea why.
 * Added lots more debugging.
 * Added mutex protection for class variables.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5789 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-07 21:38:43 +00:00
csoler
6edb9eb4f8 Merged branch that provide group-based file permissions.
Now users can sort peers into groups in the friend list, and attribute flags and parent groups to the
directories in the share manager.

Flags are B-B-N, meaning in order:
- browsable for peers in the parent groups
- browsable for everyone
- network wide for everyone
Backward compatibility makes previously BN flags been interpreted as -BN, meaning browsable/network wide for everyone.

Be careful with this new feature. It has been tested, but it's a bit early to rely on it for highly sensitive data.

The merge also includes a significant improvement of the naming of flags with incompatible types
which should sort out some existing bugs as well, since inconsistencies in flag usage have been
found during the process.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5787 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-07 20:03:16 +00:00
drbob
c09cab4439 * Added back idKnown, and pgpHash to rsIdentity Group type. (needed in GUI)
* added in scheduling_tick() for coordinating background and pgphash ticks.
 * disabled Signatures until thread-safe version is present.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5782 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-06 19:18:11 +00:00
drbob
17e42f1ceb Added core code for pgphash calculations.
- Reworked GxsIdGroup members... moved IdType -> groupFlags, so Hash & Sign are only ones.
 - Reworked GroupServiceString storage.
 - Added core processing functions - yet to test!



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5777 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-05 22:28:08 +00:00
csoler
e753f22909 fixed flags conflicts
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-FileSharingPermissions@5758 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-02 13:52:29 +00:00
csoler
dc82cee700 First shot of file sharing permissions. Compiles, but needs some testing/debugging.
- added type-safe flags in retroshare/rsflags.h. This should be used to make new flags types in order to prevent mixing flags up in function prototypes.
- group handling is left to rsPeers. We'll move it to rsCircles later.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-FileSharingPermissions@5754 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-01 10:06:12 +00:00
thunder2
afa3248429 Moved loadCertificate from main, StartDialog and GenCertDialog to Rshare.
Switched StartDialog from QMainWindow to QDialog.
Updated english translation file.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5752 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-01 01:07:36 +00:00
drbob
cddeaeea81 Got GxsId service compiling and linking.
- Added entries in rsinit.cc
	- Added serialiser functions.
	- Tweaked some datatypes.
	- Fixed up duplicate headers.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5736 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-28 23:13:15 +00:00
thunder2
af2257b1a9 Added settings for the blinking icons
- private chat window/tab
- chat lobby tab
- all tray notifier

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5729 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-27 15:59:12 +00:00
thunder2
232af8e71e Changed SoundManger to allow the plugins to play sounds.
Added example to VOIP (commented out).

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5709 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-21 21:38:55 +00:00
chrisparker126
c518bd2f19 Removed references to postedVEG from GxsGroupDialog and associated classes and PostedDialog (GUI does not work now but does not crash)
Removed V2 references: TokenQueueV2 and RsTokReqOptionsV2 are now TokenQueue and RsTokReqOptions and renamed file
Added initialisation of Posted back end service successfully
Added new msg status flags  GXS_SERV::MSG_STATUS_UNPROCESSED and ::MSG_STATUS_UNREAD



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5707 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-21 19:45:35 +00:00
csoler
03d4936b12 improved display in share manager. Updated RemoteDirModel to show groups.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-FileSharingPermissions@5706 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-21 19:39:56 +00:00
drbob
57a99d1aa3 Made p3identity compile. (but won't run yet!)
- Lots of tweaks to rsidentity & rsgixs interfaces to make them match.
 - added "mask" to gxs flag set operations.
 - added dummy RsMsgMetaData print functions.
 - enable compilation of code in .pro.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5702 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-21 15:48:18 +00:00
csoler
56e26ba00a First bit of group sharing permissions
- Added icons for share flags
- added new class to handle sharing permission widget
- Updated share manager
to be continued...



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-FileSharingPermissions@5701 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-21 14:06:33 +00:00
drbob
d4bf742268 Added basic GXS Wiki Service.
* Filled in p3wiki and rswiki
 * tweaked VEG files to prevent clashes.
 * added serialiser header.

Still to do: 
 * complete design of Wiki Links, and the like.
 * Finish serialiser




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5692 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-19 00:16:35 +00:00
drbob
1ec5c7fe69 Added first pass at new RsIdentity service.
* Updated rgixs with new interfaces. (tentative)
 * Switched rsIdentity to GXS basis.
 * Added Subscribe Function to rsGxsIfaceImpl + return false to functions.
 
This code needs to be reviewed by chris ASAP, to see how it fits into the whole structure.
This code is currently not compiled, or compilable.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5677 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-14 18:32:33 +00:00
thunder2
a0162ced8f Changed the path for the external translations to "data dir/translations".
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5670 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-12 18:44:02 +00:00
chrisparker126
8f2d85ed52 laid groundwork for newcache posted
re-enabled postedVEG
added convenience base class for gxs services
fixed posted and gxs gui
removed tokenservicev2, now just tokenservice 

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5641 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-05 18:12:52 +00:00
chrisparker126
0fc3a2704b Fixed compile issues for VEG in librs (rs-gui VEG ui cannot be compiled as was the case prior to issues)
removed VEG photoservice
Enabled group synchronisation between retroshare peers! test synchro between two rs peers worked.
Added crude commenting facility to photoshare, much tuning to be done



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5602 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-25 21:04:04 +00:00
chrisparker126
eaa7342165 emergency commit, computer acting up bad!
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5565 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-17 22:08:23 +00:00
drbob
bfef2c659f Reorganisation of the New GXS Services.
* The Example services have been renamed eg. p3posted => p3postedVEG, to allow the real services to be added.
 * The ServiceIDs have been shifted, to allow both VEG and GXS versions of services to run side-by-side for now.
 * The DataTypes have not been renamed - but potentially should be in the future - if they cause clashes.
 * Interface variables have also been renamed. eg. rsPosted => rsPostedVEG.
 * This means that the GUI will not operate without changes too - TODO.

Minor changes to GXS services to better seperate them from the VEG versions.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5551 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-15 00:16:06 +00:00
chrisparker126
9f20c75f83 about 70% done with PhotoDialog
- can add album (with thumbnail!)
- add photo (with photo!)
- can subscribe, but not added to ui yet

need to try some dummy msgs and bring up gxs_net





git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5549 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-13 22:58:42 +00:00
csoler
88b2b67174 updated include path
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5541 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-12 14:42:24 +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
24a3fb58d4 Improved plugin system:
- the user is asked at start wether to load or deny unregistered plugins, but can make it mind later in config->plugins
- added API and SVN numbers into required external plugin symbols
- user-defined plugin rules are dropped when a plugin changes (hash changes) or when the main executable changes.
- added new status flags (Plugin denied, missing API/SVN numbers)
- modified saveList()/loadList() to allow saving a list of rejected plugins as well.
- added methods in notifyBase and inherited classes to ask for plugin confirmation.

- adapted VOIP plugin to follow these new rules (API+SVN numbers). Other plugins should be adapted as well by addign the 
 missing symbols (RETROSHARE_PLUGIN_api and RETROSHARE_PLUGIN_revision).



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5529 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-09 13:59:21 +00:00
csoler
6782671951 - added help dialog to plugins
- added svn revision number checking to plugin system. If svn revision is > 0 and matches the compiled revision number, the plugin is always accepted.
- improved version number scripts to add the missing revision number as a int


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5512 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-04 21:59:49 +00:00
chrisparker126
5425ab36b5 laptop power supply dead, commiting,
added tokens to submissions, got it working
added generic service string to meta
added msg and grp creation
 

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5439 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-08-18 10:01:35 +00:00
csoler
b714d68523 fixed code for certificate link generation.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5420 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-08-14 19:31:47 +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
chrisparker126
a715947046 Added Rs photo v2 item serialisation test, fixed subsequent bugs
Reactivated Photodialog. almost completed integration, publishing and item storage working, 
but data retrieval algorithm needs to be changed (request flags need to be translated, based on update call rather than client assumption)
fixed bug in rsgenexchange notification. 
Added LGPL notices


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5387 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-08-06 21:00:38 +00:00
chrisparker126
d220e14c4a fresh recompile needed!
TokenQueueV2 added, 
first change to photoshare to deal with gxs backend 
needed to redirect meta types to mine in order to get compilation working and definition fixes 
to rsgenexchange. 
Next step is to get GxsRunner going

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5377 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-08-03 06:39:50 +00:00
thunder2
09b5d7a8c6 Added the first version of the FeedReader plugin.
Added a new method to RsPlugInInterfaces to stop the plugins at shutdown of RetroShare.


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5372 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-08-02 13:17:53 +00:00
drbob
c3ea5cbab6 * Added FlagFilter to TokenOptions.
* Added data to posted data
 * modified dummyData to have nested Comments.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5365 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-08-01 01:44:23 +00:00
drbob
363374947f Added functions to modify the Sorting Algorithm for PostedLinks.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5359 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-30 23:39:16 +00:00
drbob
2ba3f73a74 Same fixes to the branch.
- comment out line from future prototype.
 - added missing #include



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5356 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-30 11:35:26 +00:00
drbob
29e0b2b7a3 Missed a line which should have be commented out - sorry.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5353 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-30 11:12:36 +00:00
drbob
6a24bdc62c Improved the Id Reputation System to the point of compilation.
-> Its not tested, or running with the checkin.
 * Added NEWMSG Flag to groups in test backend.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5348 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-29 13:09:36 +00:00
chrisparker126
17da89938f gxs back end now compilable, need to test
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5346 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-28 20:01:30 +00:00
drbob
bec1407648 Merged Code from: /branches/v0.5-new_cache_system/ into main trunk.
- Revisions 4771 => 5334

 * This merge brings a lot of unfinished code for GXS (new cache system)
 	- See branch commits for more details.
 * Code is disabled, and should have minimal effect on trunk build.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5338 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-27 15:03:16 +00:00
chrisparker126
d50ecd145f cache stuff does not compile. just saving lots of coding i've done.
Completed most of the coding for first new cache service, need to fix compile errors and test. 

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5330 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-26 21:48:54 +00:00
chrisparker126
5fbd591517 replaced string grp and msg ids with typedefs
started implementing gen exchange client calls
finished implementing msgrelated info dataAccess routine
more refinements to various interface - need to think about how meta is passed about the various
layers of gxs and kept consistent with sqldb

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5321 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-22 21:38:15 +00:00
csoler
ee77ec8c6c added warning for unsupported keys. It is triggered when no valid keypairs are found at start, and when unsupported keys pairs are found when copying the keyring
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5317 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-20 19:00:10 +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
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
drbob
2d31efd69b Bugfixes and testing stuff.
- Modified dummy data so new comments / votes get added in (testing background processing).
	- exposed fns for GUI rankings & testing.	
	- corrected order of extraction from ranking Map.
	- fixed up debug output.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5280 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-08 01:26:55 +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
drbob
8387c538f1 * Refinement of new Cache Interface:
- Defined expected parameters for GxsGroups (see comments in rsidentity.h)
	- Added Various #defines for Groups / Msgs (again in rsidentity.h)
	- Converted new Group / new Msg into async "token" calls, returing MetaData.
	- Refined Grp/Msg Status Flags... similarly to how Forums used them...
		Expect UNREAD & UNPROCESSED flags to be set for a new msg, 
		and UPDATED flag to be set for the corresponding group. 
		There is flexibility for services to add their own flags too.
	- removed groupsChanged(). This can alternatively be implemented using.
		getGroupList(opts.Status == UPDATED)...
	- refined SubscribeFlags in a similar manner.
	- Added "ServiceString" to Group/Msg MetaData. This is freeform cache
	  storage for service to use... currently p3Posted uses it to count Votes.
	- Added MsgStatus & SubscribeFlag filtering to Cache Requests.
	- Implemented these filters in GxsDataProxy (no efficient yet!)

 * Cleaned up all 6 new Cache Services to conform to new interface.
 * Removed old interface code that was #ifdef'd out.

 * Implemented Basic Ranking algorithms for p3posted:
	- Background process to process new votes/comments.
	- getRanking(token) interface call.
	- Intercept StatusRequests, etc to hide internal data requests.
	- While the basic code is complete, it needs much testing / tweaking.
		- Should shift work to a seperate thread.
		- Comment Ranking has still to be done.
		- Interfacing with GUI not yet attempted.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5276 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-06 23:14:18 +00:00
chrisparker126
081b59ee1a Mods:
Updated dataservice tests and fixed subsequent bugs
added bug fixes for RetroDb and fixed postability issue (removed map.at use)

Added:

Data access module used as token service
gxs service backend (RsGenExchange) 
RsPhotoV2 which is a modification to deal with different interface provided by RsGenExchange
also added subsequent p3photoserviceV2
NxsTestHub to help with testing nxsnetservice (RsGxsNetService is not yet working)

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5274 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-05 21:26:14 +00:00
drbob
d83e1ea6ec More improvements to new Cache Services.
* Added p3Posted service. This is a *better* Links Cloud, based on the new Cache system.
 * Fixed p3GxsService retrival of Thread / Children messages.  (for Forum support).
 * Added Dummy Data for testing Forum integration.
 * switched on both these services in libretroshare



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5268 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-01 23:00:54 +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
drbob
8af268e8c8 Improvements to the photoservice & underlying GS test service.
- added PublishTS and AuthorID to GropuMetaData.
	- added Mod & Set Flags to PhotoData. (mainly for the GUI).
	- added "isNew" parameter to sumbitPhoto/Album calls.
	- support modifications to Photos.
	- improved Photo Thumbnail handling. (still not right).
	- added LATEST msg search in GxsService.
	- added ATTRIB flags to rsphoto.h



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5238 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-21 15:50:27 +00:00
csoler
36198b7e6a Enabled full chunk checking code:
- unchecked chunks are not made available to swarming sources, not saved as done.
- force check now uses the simple method to put all chunks in checking mode
- force checked files can be cancelled (finally!)
- improved display (use red for active chunks, yellow for checking)
- cache file are not using chunk checking (assume_availability=true)
The code still contains the #ifdef. It should be removed soon if everything works ok.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5235 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-19 21:36:10 +00:00
csoler
8ef3d851de fixed bug in display of upload progress
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5228 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-17 13:45:17 +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
drbob
4ba7130884 Major Rewrite of the New Cache Based Services.
- Defined a generalised Group/Msg retrieval interface (RsTokenService), which is defined in rsidentity.h
	- Defined MetaData for both Groups and Messages (not finalised yet).
	- Implemented a general Data Backend for Local Testing of interface - inside p3gxsservice.cc
	- Modified services to use this temporary backend.
	- Added Wire and ForumV2 services.

Still lots to do:
	- work out request options.
	- finalise metadata.
	- group permissions.
	- identities



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5219 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-14 00:27:28 +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
drbob
a27cecc522 Modified WikiPages service to Request / Response format in libretroshare.
As opposed to the previous ones, this ends up with a massively complicated set of data calls to build 
the tree of modifications... It suggests the need for a dbase cache of MetaData for both Groups and Msgs.

	- modified rsphoto/p3PhotoService interface to conform to 'developing style'
	- shifted fakeprocessrequests() to p3GxsService - as its generic.
	- added requestMsgRelatedList() request to allow searching for OrigMsgId, MsgVersions + LatestVersions.
	- added RsTokReqOptions class to allow fine tuning of requests.
	- major changes to p3WikiService to conform to new standard.
	




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5204 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-08 22:03:09 +00:00
drbob
d85aff3d0e Convert PhotoService to Request / Response data access.
- Added generic RsTokenService interface to simplify requesting data.
	- Put the thumbnail images inside RsPhotoPhoto. etc.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5202 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-08 13:52:32 +00:00
drbob
d29f158a66 Changed the RsIdentity GUI Interface from sync to async calls.
Added p3GsxService which provides example utility functions (to be incorporated in GXS at some point)




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5199 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-07 17:10:47 +00:00
thunder2
1855d19436 Added check for empty lobby nick name.
Moved notify of lobby nick name change from the gui to p3ChatService.
Added missing mutex locks for p3ChatService::_default_nick_name.
Recompile needed.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5184 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-23 22:33:45 +00:00
notdefine
d5bdae7bd9 Display old and new nickname to Peers during nickname change in ChatLobby.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5151 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-06 22:57:08 +00:00
notdefine
22bfcb62bc Preparation for mute Peers in the Chat Lobby.
RS_CHAT_LOBBY_EVENT_PEER_CHANGE_NICKNAME is send, when changing nickname, so the blocklist can be updated (in future).

This will never wort for 100% as discussed in the developer forum, but should stop the most spam.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5150 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-06 22:19:59 +00:00
thunder2
b81a911793 Friend recommendation message
- renamed subject
- added to system message
Recompile needed


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5145 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-05 22:20:05 +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
thunder2
d28ffb9c0d Added new notify on connect attempt by the local message system.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5124 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-26 23:41:14 +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
3678766a93 Changed parameter of RsChannels from "std::string" to "const std::string&".
Recompile needed.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5117 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-04-24 12:49:54 +00:00
thunder2
37986e00a3 Added three new toasters - private chat, group chat and chat lobby.
Fixed some utf8 issues in toasters and feeds.
Fixed german language.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5065 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-03-30 23:02:52 +00:00
csoler
65cde95fba - added/fixed patch from defnax to allow setting up a topic for each chat lobby. The topic is displayed to friends.
- handled backward compatibility by keeping/sending old LobbyList item. Should be remove in the near future.
- removed constraint to have at least one friends invited when creating a new lobby.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5024 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-03-16 22:47:49 +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
csoler
96fd780502 added ability for plugins to return their own PopupChatDialog class
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4988 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-25 12:17:36 +00:00
csoler
826e8f3728 - added ability to plugins to add a tab in transfers dialog
- improved VOIP plugin to add RTT statistics tab to RS gui.
- added comments in rsplugins.h
- added big tooltip in transfers that would be stuck in checking... mode



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4979 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-21 21:53:25 +00:00
csoler
ee5dcd1a8c - moved RsAutoUpdatePage into retroshare-gui/ directory, to allow plugins to use it
- removed VOIP code from main executable. Moved it into VOIP plugin (c.f next commit)



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4963 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-19 15:03:07 +00:00
csoler
2c6a2b4ee7 improved plugin management to allow services to be used, and config pages to be added
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4960 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-18 20:29:03 +00:00
csoler
5679a30e67 Improvement to plugin system:
- made config page system more automatic, to allow addign config pages from plugins
- added (disabled) checkbox and function to allow all plugins for development
- added config page methods to RsPlugin class



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4957 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-18 14:55:50 +00:00
drbob
459b51e814 Addition of the Basics of the New Identity Service.
- Provides Real & Pseudonym Ids.
	- Real Ids are tied to GPG Ids using a One-Way Hash.
Added IDS for QCHESS and ARADO plugins.
Added new RsIdentity external interface.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@4932 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-13 18:22:35 +00:00
thunder2
07ea6829b6 The channel message (in channels) is set to read when the user clicks on the show more button.
The forum/channel news feed is removed when the user reads the message in forums/channels.
Recompile needed.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4927 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-12 00:58:47 +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
csoler
fd83e5950f added control over TR forward rate, so that we can experiment with it on large bandwidth servers
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4918 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-10 22:23:06 +00:00
drbob
3ab62f147e Adding backends for new Plugin Services: Photo and Wiki.
- These are dummy services at the moment, 
	- they only hold stuff the current session and don't use the network at all.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@4889 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-04 14:16:39 +00:00
csoler
c3be19227d Suppressed echoes in chat lobbies by:
- adding a time stamp to lobby events (new item tag)
- controllign time stamp of lobby msg and event: drop packets if time is older than cache duration.
- moved connexion challenge code to lobby management loop
- added new type of lobby invite to handle connexion challenges and avoid false invitations in the GUI

New lobby event format is not backward compatible -> "peer typing" and "peer joined/left" will need 
the new version. Messages are still compatible)



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4859 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-27 23:13:28 +00:00
csoler
fe156882ae added keep-alive packet to lobbies to maintain up-to-date list of listenners. Will need to play a bit with delays...
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4839 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-23 22:49:47 +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
csoler
bd9cd22387 added RequestDirDetails(path,...) for file sync plugin.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4807 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-17 20:38:25 +00:00
thunder2
35c7605704 Extracted a new widget ChatWidget for the basic chat handling from the PopupChatDialog and use it in ChatLobbyDialog too.
Added an own ui for the ChatLobbyDialog.
Saved settings of the ChatLobbyDialog.
Changed parameters of RsStatus interface from "std::string" to "const std::string&"
Fixed german language.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4806 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-17 20:36:36 +00:00
csoler
036bd64811 - Added chat lobby privacy type to lobby invite => lobby type is propagated correctly to friends
that are invited.
- added auto-clean of nicknames
- added auto-clean of public lobby records.

Warning: this commit breaks one small bit of compatibility:
 * direct invitations from new versions will pass accross versions (private lobbies will need the new version)
 * but people can still join public lobbies accross versions.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4801 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-14 21:09:04 +00:00
thunder2
6c626e180f Chat lobby:
- added new notifier to p3ChatService
GUI:
- list all public and private chat lobbies
- added subscribe/unsubscribe
- added new basic widget ChatTabWidget and use it in PopupChatWindow and ChatLobbyDialog
- added a tabbed dialog for every subscribed chat lobby

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4782 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-12 00:13:25 +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
csoler
1164c66d3a added new variable in config->transfers to allow reserving n slots to non cache transfers
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4775 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-10 23:07:53 +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
csoler
485c394e2b added interface methods for public lobby exchange and subscription to public lobbies. Need a GUI now
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4759 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-07 19:52:58 +00:00
csoler
434ba06c82 added exchange and auto-update of public chat lobby lists.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4758 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-07 13:33:30 +00:00
csoler
e9d6940b09 Improvements to chat lobbies:
- added generic methods and items for bouncing generic objects through lobbies
	- added handling of peer typing status
	- proper handling of peer join/leave lobby
	- added sub item ids to lobby messages to allow proper message splitting
	- made 2 different message splitting methods for normal chat vs. lobbies. In v0.6, we'll have to handle all messages the same way.
	- added parent id to RsChatLobbyMsgItem, to allow threaded chat.
	- added possibility to make a lobby public/private (not yet fully working)
	- added items for requesting/exchanging list of public lobbies at friends' (not yet fully working)
	- major cleaning of p3chatservice.cc

Next move:
	- gui for listing friend public lobbies, joining them, etc.
	- load/save of persistent lobbies.
	- autoremove of inactive lobbies

Warning: lobby message items of this version are incompatible with previous versions. It won't crash, but
messages will not pass through.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4755 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-06 22:17:08 +00:00