summaryrefslogtreecommitdiff
path: root/src/tools/irm/irm.c
Commit message (Collapse)AuthorAgeFilesLines
* build: Comply with -Wextra compiler flagdimitri staessens2016-10-211-0/+3
| | | | | This reduces the risk for some bugs, for instance due to signed/unsigned mismatches and unused variables.
* lib, ipcp: Revise fast path and flow interfacesdimitri staessens2016-10-041-1/+0
| | | | | | | | | | | | IPCPs can now use ap_init() to initialize the memory. All flows are accessed using flow descriptors, this greatly simplifies IPCP development. Reverts the fast path to a single ap_rbuff per process. Splits lib/ipcp into irmd/ipcp and lib/ipcp-dev. Adds a lib/shim-dev holding tailored functions for shims. Moves the buffer_t to utils.h. Fixes the shim-eth-llc length field. Removes the flow from shared.h. Fixes #4 Fixes #5
* irmd, lib: Rebuild the IRMd data modeldimitri staessens2016-08-211-2/+2
| | | | | | | | | | | | | | | | | | | | | | The complete data model inside the IRMd has been restructured. The bind operation was revised to allow binding of AP and AP instances and register those names with different DIFs (see "irm bind" for details). Server applications require to call ap_init with a server name argument, client application that do not the be reachable over any DIF can call ap_init(NULL). Calling ap_init for a client with a specified name will not have adverse consequences for the application, but will consume unnecessary resources in the IRMd. Application servers can now be started at any point after the IRMd has been started. Starting servers, binding AP names and registering names in DIFs can be performed in any order that does not defy temporal logic. Supports naming instances by their pid. In case of IPCP Instances created with the IRM tool, the name assigned during "irm ipcp create" can be used. All the changes required updates in the tools.
* lib, irmd, ipcpd: Change of IRM APISander Vrijders2016-06-281-10/+6
| | | | | | | | | | | | | | This changes the IRM API after discussions with Dimitri. The register operation is now split into a bind and register operation. The same for unregister; unbind and unregister. PIDs are now used as the application instance name. A name for a PID is only provided for scriptability in bash. It is therefore also no longer passed down to the IPCP. Every operation on an IPCP through the IRM API has to use the PID. Quering of the PIDs by name is possible. The IRM tool has been updated to use this new API as well. A subcommand 'ipcp' has been added for operations that take effect on IPCPs only. Fixes #12
* lib, irmd, tools, ipcpd: updates to dev API.dimitri staessens2016-06-131-2/+3
| | | | | | | | | | | | | | | The registration function has been moved to the irm tool, applications now need to be registered by an administrator. Currently only supports one instance per registered name, and an AP can be registered under only one name. The irmd can now start a registered server application on demand. For the full functionality of the tool, execute "irm register". AP name removed from flow allocation. Flow allocation does not send the source ap name as it is quite useless. The accept() call now only returns the AE name.
* lib: renamed rina_name_t to instance_name_tdimitri staessens2016-03-301-1/+1
| | | | | all functions taking a char * ap_name and uint id now take either a instance_name_t or instance_name_t *
* tools: Simple echo applicationSander Vrijders2016-03-211-2/+1
| | | | | | This adds a simple echo application written to show application how to use the API. It also updates the dev.h header file with the insights gained from performing this excercise.
* lib: Add helpers for RINA namesSander Vrijders2016-03-111-0/+1
| | | | This adds helper functions for RINA names, to aid with handling them.
* tools: irm: Change description in irm fileSander Vrijders2016-03-031-1/+1
| | | | This adds the word daemon to the description of the IRM tool.
* tools: irm: Provide all IRM callsSander Vrijders2016-03-031-4/+4
| | | | | | | This commit makes all IRM calls available to the user of the 'irm' tool. The bootstrap_ipcp call does not yet take the anything except the AP name. This will be added once we stabilize what should be configurable in the IPCP.
* tools: irm: Parse arguments for irm and create_ipcpSander Vrijders2016-03-021-0/+84
This parses the arguments passed to irm at the top level, and also the arguments supplied when calling irm create_ipcp. It subsequently calls irm_create_ipcp with these arguments.