libApp/tools
2011-10-17 14:58:47 +00:00
..
.cvsignore Removed useless self-mention of .cvsignore in .cvsignore files 2011-07-29 00:28:45 +00:00
appbroker.c Fixed build 2011-03-28 00:02:42 +00:00
appclient.c Code cleanup 2011-10-17 14:58:47 +00:00
Makefile Re-generated Makefiles 2011-09-16 11:54:13 +00:00
project.conf Compilation cleanup 2011-06-02 21:33:11 +00:00
README libSystem will no longer depend on external dependencies 2011-03-27 23:15:38 +00:00

broker reads a configuration file for a given AppInterface, eg:

=== BEGIN FILE ===
service=VFS

[chmod]
ret=INT32
arg1=STRING,pathname
arg2=UINT32,mode
=== END FILE ===

which is then translated into a C header file, eg:
=== BEGIN FILE ===
/* $Id$ */



#ifndef VFS_H
# define VFS_H

# include <stdint.h>
# include <System.h>


/* types */
typedef Buffer * BUFFER;
typedef int32_t INT32;
typedef uint32_t UINT32;
typedef String * STRING;


/* functions */
INT32 VFS_chmod(STRING pathname, UINT32 mode);

#endif /* !VFS_H */
=== END FILE ===

This service definition file and corresponding header may then be committed
along the relevant source code.

It would also be helpful to:
- add scripting possibilities to configure (to regenerate the headers
  accordingly)
- place this code directly inside AppInterface's class
- implement dynamic port assignment: it currently has to be explicitly specified
  in the interface file