- added api client which reads the password from stdin. This allows to login from the webinterface and from the terminal at the same time.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@8103 b45a01b8-16f6-495d-af2f-9b41ad6348cc
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
- 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
Switched to the release version of pthread so the name of the dll changes from pthreadGC2d.dll to pthreadGC2.dll. The new dll can be found in the bin directory of MinGW.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6794 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- 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
--- Merging r6107 through r6332 into the rest of retroshare.
Updated version of RPC protocol with fancy new features like:
- streaming.
- add / remove friends.
- file listings.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6335 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- Added dummy files for generated protobuf files. Without these files qmake doesn't add it to the makefile.
- Added svnignore:* to gencc directory.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6180 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This is because the gnu getopt extension for optional arguments is very confusing: -S7022 is accepted but -S 7022 is not.
Switching to non-optional will save the confusion.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6006 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This provides ExternalPort + DHTKey to Client. To be used to find and connect - even if Dynamic IP address changes :)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6004 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* converted to new flags format for File Operations.
* converted from PUBLIC to VISIBLE lobbies. NB: This required name changes to protobuf definitions.
* converted DataRates to new function.
* directory sharing shifted to using OTHERS flags (text menus) - No support for group Flags yet.
* Added == operator to Flags Type.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6000 b45a01b8-16f6-495d-af2f-9b41ad6348cc
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
- 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
* System: Quit & shutdown.
* Search: New Search, List Searches, Close Search, Search Results.
* Files: TranferLists, ControlDownloads (Start, Stop, Pause, etc).
Changed the way NotifyTxt records search results.
* Must register searchId for results to be saved.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5528 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- RPC commands are outlined in the proto file.
- You can: get listing, send msg, register for recv events, change nickname and join/create lobbiey
- updated chat & core generated files.
* Added RpcUniqueId(chan_id, req_id) for identifying requests.
- Modified Responses Queues to use new datatype.
* Fixed reset to occur after the connection has died.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5508 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* added chan_id parameter to many RPC calls, this allows RPC to support multiple SSH clients.
- the combination of (chan_id, req_id) rather than req_id, should be unique now
-> TODO inside rpcserver queued requests.
* Modified SSH server to match the new API. Multiple client support has not been added here yet.
* Modified Menu System to match these changes too.
* Added an Registration Framework to RpcQueueService, to enable easy event support.
This code has not been throughly tested yet.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5500 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* Switched from BASE => CORE in proto files.
* finished first RPC call to list peers.
* return "NO_IMPL_YET" for other peer fns (Not Implemented Yet)
* Added SystemStatus RPC call too.
* Disable Verbose SSH logging - so we can see debug better.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5469 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* Added generated protobuf code in proto/gencc
* Added rpcprotopeers.h : Interface for getting/modifying peer information.
* Added Stuff to .pro file. (disabled at the moment)
* tweaked update times for SSH Menu, as they were too slow.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5460 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* Adds Shared Dir SubMenu with Add, Toggle Flags, Remove Shared Dir Commands.
I tweaked it a bit:
* Changes the Add Command to not use std::stringstream (as Windows don't like it!)
* Added Check that the directory exists.
* Changed Virtual Folder name to the top directory from the path.
Still to do on the SubMenu;
* Listing should be updated if a Share is Added/Removed.
* Descriptions are too long, should be changed to short descriptions: Add Share, Toggle Browsable, etc.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5459 b45a01b8-16f6-495d-af2f-9b41ad6348cc
The protocol message format is as follows:
[HEADER: 16 bytes: 4 x Network Order uint32_t][ VARIABLE LENGTH BODY ]
[ MAGIC_CODE ] [ MSG_ID ] [ REQ_ID ] [ BODY_SIZE ] [ ........ BODY ......... ]
MagicCode = 0x137f0001 ... this will be incremented for new versions of the protocol.
MsgID = Corresponds to the format of the Body.
ReqID = Generated by Requester, Returned in Response, make sure its unique. (undefined behaviour for duplicates)
BodySize = Byte Length of Body.
The Body will consist of a protobuf encoded message.
For the moment, the RPC server just ECHOs the request back to the sender - for testing purposes.
Usage:
* Create SSH connection to retroshare-nogui.
* Create Request Message(s), and send over SSH channel - You can send as meny requests as you want.
* They will processed, and responses sent back (potentially in an arbitary order).
Specific Changes here:
* Modified rssshd to support arbitary recv/send applications. (interface is RpcComms).
* Added rpc directory, with server, setup and echo service.
* Modified Menu System to use the new interface to rssshd
* Wrote new matching interface for Terminal Usage.
- NOTE: Strange BUG in Terminal version.... causes stderr to disappear. TODO.
* Added -C commandline option to switch on RPC system.
This is the first version - so I expect there will be bugs. Please report for a prompt fix!
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5444 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* Menu System basic structure complete.
* Added functions to NotifyTxt to handle search results.
* Running from std::cin at the moment.
* Functional Commands:
- List Friends, Network.
- Show Transfers, Cancel Transfers.
- Basic Search, and Download.
* Not Connected to SSH server at this point, TODO.
* Lots of Other Commands to add (e.g. import/add/remove friends, forums, etc)
* Enable via option in retroshare-nogui.pro, instructions at bottom of file.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5390 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* Using libssh in a seperate thread.
* Binds to fixed port, and accepts connections from standard SSH clients.
* Only an Echo Server at the moment: Interface to be decided yet.
* Only accepts 1 connection, 2nd connection hangs at the moment.
* A long way to go before it will be useful!
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5380 b45a01b8-16f6-495d-af2f-9b41ad6348cc