]> rtime.felk.cvut.cz Git - frescor/forb.git/log
frescor/forb.git
14 years agoReference registry disabled when INET proto is default
Michal Sojka [Tue, 26 May 2009 14:50:11 +0000 (16:50 +0200)]
Reference registry disabled when INET proto is default

Reference registry was moved to a regref.c. When INET protocol is used,
the regitration to /tmp/forb is disabled. For now we use a hack to handle
registration with INET protocol.

14 years agoFORB can be initialized with a fixed ID
Michal Sojka [Tue, 26 May 2009 13:19:43 +0000 (15:19 +0200)]
FORB can be initialized with a fixed ID

This will be used to bypass discovery protocol and configure FCB location
and ID statically.

14 years agoHandling of discovered peers moved to a separate file
Michal Sojka [Tue, 26 May 2009 13:17:46 +0000 (15:17 +0200)]
Handling of discovered peers moved to a separate file

14 years agoAllow inet protocol to listen on a fixed port
Michal Sojka [Tue, 26 May 2009 12:02:34 +0000 (14:02 +0200)]
Allow inet protocol to listen on a fixed port

The port can be specified in attr parameter of forb_init().

14 years agoDisable discovery protocol when INET is default protocol
Michal Sojka [Tue, 26 May 2009 10:24:47 +0000 (12:24 +0200)]
Disable discovery protocol when INET is default protocol

14 years agoImplement peer discovery based on incoming requests
Michal Sojka [Tue, 26 May 2009 05:43:59 +0000 (07:43 +0200)]
Implement peer discovery based on incoming requests

For INET protocol, our simple discovery protocol is not reliable,
therfore, we discover peers also according to incomming requests. Whenever
INET protocol receives first request on accept()ed socket, it prepares
a forb_peer_t corresponding to the socket. In iop.c this peers is added
FORB server_id and then the peer is treated as discovered.

14 years agoproto_inet: send wraped in loop to handle interrupted syscalls
Michal Sojka [Tue, 26 May 2009 07:23:15 +0000 (09:23 +0200)]
proto_inet: send wraped in loop to handle interrupted syscalls

14 years agoAdded build dependences to log_domains.inc
Michal Sojka [Tue, 26 May 2009 05:14:42 +0000 (07:14 +0200)]
Added build dependences to log_domains.inc

14 years agoFORB prints remote addresses in debug messages
Michal Sojka [Mon, 25 May 2009 20:07:01 +0000 (22:07 +0200)]
FORB prints remote addresses in debug messages

14 years agoThe log domains registration uses generic uLUt provided helper.
Pavel Pisa [Mon, 25 May 2009 17:58:39 +0000 (19:58 +0200)]
The log domains registration uses generic uLUt provided helper.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
14 years agoFixed big memory leaks in request handling
Michal Sojka [Sun, 24 May 2009 22:46:21 +0000 (00:46 +0200)]
Fixed big memory leaks in request handling

14 years agoMake proto_inet usable also as local protocol
Michal Sojka [Sun, 10 May 2009 21:14:55 +0000 (23:14 +0200)]
Make proto_inet usable also as local protocol

Now inet protocol's TCP socket does not listen on a specific port so
that multiple applications on a single node can communicate using this
protocol.

UDP socket listens on a fixed port and since SO_REUSEADDR is enabled,
multiple applications can receive the same content.

14 years agoAdded error checking of deserialization in skeletons
Michal Sojka [Thu, 21 May 2009 11:10:56 +0000 (13:10 +0200)]
Added error checking of deserialization in skeletons

14 years agoFixed deserialization of empty sequences
Michal Sojka [Thu, 21 May 2009 10:21:58 +0000 (12:21 +0200)]
Fixed deserialization of empty sequences

When an empty sequence was deserialized, malloc(0) returned NULL which
was treated as malloc error. Now allocation of sequence buffers is moved
to a separate function which return allocation success.

14 years agoFixed g++ warning about signedness
Michal Sojka [Wed, 20 May 2009 19:54:23 +0000 (21:54 +0200)]
Fixed g++ warning about signedness

14 years agoSuppress all g++ warnings
Michal Sojka [Wed, 20 May 2009 19:33:37 +0000 (21:33 +0200)]
Suppress all g++ warnings

This suppresses both: unused parameter and statement with no effect warnings

14 years agoMore portable allocation of empty sequences
Michal Sojka [Sun, 17 May 2009 19:15:46 +0000 (21:15 +0200)]
More portable allocation of empty sequences

14 years agoInitialize properly _maximum field of sequences on deserialization
Michal Sojka [Sun, 17 May 2009 11:32:42 +0000 (13:32 +0200)]
Initialize properly _maximum field of sequences on deserialization

14 years agoFixed forb_sequence_alloc macro
Michal Sojka [Sun, 17 May 2009 11:02:41 +0000 (13:02 +0200)]
Fixed forb_sequence_alloc macro

14 years agoAdded helper macros for easier work with sequences
Michal Sojka [Tue, 12 May 2009 23:14:10 +0000 (01:14 +0200)]
Added helper macros for easier work with sequences

14 years agoMaximum request size increased to 4 kB
Michal Sojka [Tue, 12 May 2009 22:32:15 +0000 (00:32 +0200)]
Maximum request size increased to 4 kB

When huge contracts with spare capacity was sent, the limit of request
size was exceeded so we need to provide a bigger buffer. Alternative
solution would be dynamically sized CDR buffers.

14 years agoDo not free buffer when deserializing sequences
Michal Sojka [Tue, 12 May 2009 21:57:43 +0000 (23:57 +0200)]
Do not free buffer when deserializing sequences

This commit fixes crashes of FORB applications. The sequence variable
which is being deserialized might be uninitialized and therefore it is
not good idea to free the memory referenced by an uninitialized pointer
(seq->_buffer).

14 years agoAdded callback for peer discovery
Michal Sojka [Mon, 11 May 2009 01:28:32 +0000 (03:28 +0200)]
Added callback for peer discovery

By using this callback, an application can react on peer discovery.
Note: Peers are discovered by broadcasting "HELLO" packets.

14 years agoorb_id is propagated to peers
Michal Sojka [Sun, 10 May 2009 22:45:11 +0000 (00:45 +0200)]
orb_id is propagated to peers

14 years agoFixed NULL string serialization
Michal Sojka [Sun, 10 May 2009 22:20:32 +0000 (00:20 +0200)]
Fixed NULL string serialization

14 years agoforb_init() prototype changed to be extensible
Michal Sojka [Sun, 10 May 2009 21:41:28 +0000 (23:41 +0200)]
forb_init() prototype changed to be extensible

The third parameter to forb_init() is a pointer to a structure
containing attributes to control FORB initialization. Currently, only
orb_id (the original third parameter of forb_init()) is present in the
structure. Future additions to this structure do not break source code
compatibility.

14 years agoproto_unix: Set socket permission rw-rw-rw
Michal Sojka [Sun, 10 May 2009 11:09:55 +0000 (13:09 +0200)]
proto_unix: Set socket permission rw-rw-rw

This allows processes of different users to communicates each with the
other.

15 years agoAdded discovery debug message
Michal Sojka [Thu, 23 Apr 2009 05:18:44 +0000 (07:18 +0200)]
Added discovery debug message

15 years agoAvoid redefinition of _BSD_SOURCE
Michal Sojka [Thu, 23 Apr 2009 05:16:18 +0000 (07:16 +0200)]
Avoid redefinition of _BSD_SOURCE

15 years agoFixed some problems with big-endian architecture
Michal Sojka [Thu, 23 Apr 2009 05:15:33 +0000 (07:15 +0200)]
Fixed some problems with big-endian architecture

Although this patch fixes the most important problems, there are still
some incompatibilities when big-endian machines communicate with
little-endian ones. Big to big communication works correctly.

15 years agoModified to achieve C++ compatibility
Michal Sojka [Tue, 10 Feb 2009 14:12:04 +0000 (15:12 +0100)]
Modified to achieve C++ compatibility

15 years agoFixed typos
Michal Sojka [Tue, 20 Jan 2009 21:45:06 +0000 (22:45 +0100)]
Fixed typos

15 years agoFixed a memory leak in request processing
Michal Sojka [Thu, 29 Jan 2009 10:02:58 +0000 (11:02 +0100)]
Fixed a memory leak in request processing

15 years agoEpoll event structure zeroed before use
Michal Sojka [Thu, 29 Jan 2009 09:44:18 +0000 (10:44 +0100)]
Epoll event structure zeroed before use

15 years agoRemoved duplicite include
Michal Sojka [Tue, 20 Jan 2009 16:45:00 +0000 (17:45 +0100)]
Removed duplicite include

15 years agoPeer discovery code refactored
Michal Sojka [Tue, 20 Jan 2009 14:07:55 +0000 (15:07 +0100)]
Peer discovery code refactored

15 years agoFixed handling of addresses in HELLO packets
Michal Sojka [Tue, 20 Jan 2009 13:12:12 +0000 (14:12 +0100)]
Fixed handling of addresses in HELLO packets

15 years agoFixed a bug in discovery test
Michal Sojka [Tue, 20 Jan 2009 11:11:50 +0000 (12:11 +0100)]
Fixed a bug in discovery test

15 years agoAdded INET protocol
Michal Sojka [Fri, 16 Jan 2009 10:18:21 +0000 (11:18 +0100)]
Added INET protocol

This protocol uses TCP and UDP sockets to communicate.

15 years agoImproved reference counting of peer structures
Michal Sojka [Tue, 20 Jan 2009 10:33:03 +0000 (11:33 +0100)]
Improved reference counting of peer structures

15 years agopeer_destroy should return void
Michal Sojka [Mon, 19 Jan 2009 11:32:25 +0000 (12:32 +0100)]
peer_destroy should return void

15 years agoAdded error handling to receive thread
Michal Sojka [Mon, 19 Jan 2009 09:29:16 +0000 (10:29 +0100)]
Added error handling to receive thread

15 years agoPort is registered using a port reference instead of forb pointer
Michal Sojka [Mon, 12 Jan 2009 14:18:37 +0000 (15:18 +0100)]
Port is registered using a port reference instead of forb pointer

15 years agoExport port.h for applications
Michal Sojka [Mon, 12 Jan 2009 14:08:48 +0000 (15:08 +0100)]
Export port.h for applications

15 years agoAdded error handling to unix proto initialization
Michal Sojka [Mon, 12 Jan 2009 13:59:22 +0000 (14:59 +0100)]
Added error handling to unix proto initialization

15 years agoPort structure combines some fields in desc structure
Michal Sojka [Mon, 12 Jan 2009 13:00:34 +0000 (14:00 +0100)]
Port structure combines some fields in desc structure

This is to simplify initialization and registration of the port.
Initialization fills desc field and registration the rest.

15 years agoCorrected peer reference counting
Michal Sojka [Wed, 7 Jan 2009 16:59:45 +0000 (17:59 +0100)]
Corrected peer reference counting

15 years agoUpdated to addition of const qualifier to GAVL keys in ULUT library
Michal Sojka [Wed, 7 Jan 2009 15:22:11 +0000 (16:22 +0100)]
Updated to addition of const qualifier to GAVL keys in ULUT library

15 years agoUpdated Makefile.rules
Michal Sojka [Wed, 7 Jan 2009 15:17:04 +0000 (16:17 +0100)]
Updated Makefile.rules

15 years agoCDR_* functions and types renamed to FORB_CDR_*
Michal Sojka [Wed, 26 Nov 2008 13:22:57 +0000 (14:22 +0100)]
CDR_* functions and types renamed to FORB_CDR_*

This is to avoid namespace collision when linking with ORTE.

15 years agoAdded better documentation of executor
Michal Sojka [Sat, 15 Nov 2008 17:17:46 +0000 (18:17 +0100)]
Added better documentation of executor

15 years agoRemoved dependency on GTK
Michal Sojka [Sat, 15 Nov 2008 09:16:45 +0000 (10:16 +0100)]
Removed dependency on GTK

15 years agoforb_exception_occured renamed to forb_exception_occurred
Michal Sojka [Tue, 11 Nov 2008 09:37:57 +0000 (10:37 +0100)]
forb_exception_occured renamed to forb_exception_occurred

15 years agoFixed forb_get_orb_of()
Michal Sojka [Tue, 11 Nov 2008 09:37:21 +0000 (10:37 +0100)]
Fixed forb_get_orb_of()

15 years agoRemoved unused variable
Michal Sojka [Fri, 7 Nov 2008 09:02:45 +0000 (10:02 +0100)]
Removed unused variable

15 years agoSequence output parameters are initialized with set release flag
Michal Sojka [Thu, 6 Nov 2008 15:22:40 +0000 (16:22 +0100)]
Sequence output parameters are initialized with set release flag

15 years agoAdded forb_executor_unregister_object
Michal Sojka [Wed, 5 Nov 2008 11:54:00 +0000 (12:54 +0100)]
Added forb_executor_unregister_object

15 years agoIDL generated serialization functions needs object.h
Michal Sojka [Wed, 5 Nov 2008 11:53:47 +0000 (12:53 +0100)]
IDL generated serialization functions needs object.h

15 years agoAdded deallocation of sequences of native types
Michal Sojka [Tue, 4 Nov 2008 16:58:04 +0000 (17:58 +0100)]
Added deallocation of sequences of native types

15 years agoObjref deserialization is now handled the same way as for other types
Michal Sojka [Tue, 4 Nov 2008 08:05:30 +0000 (09:05 +0100)]
Objref deserialization is now handled the same way as for other types

This was necessary for having object references in structures and other
constructed types. Now, we put the orb object reference to CDR_Codec
structure, so that forb_object_deserialize() can get the information
from there.

15 years agoCommented out sha1 test
Michal Sojka [Tue, 4 Nov 2008 07:30:31 +0000 (08:30 +0100)]
Commented out sha1 test

15 years agoSHA1 code fixed to work correctly on 64-bit systems where long is 64-bits.
Pavel Pisa [Mon, 3 Nov 2008 17:12:53 +0000 (18:12 +0100)]
SHA1 code fixed to work correctly on 64-bit systems where long is 64-bits.

15 years agoFixed previous fix :-(
Michal Sojka [Thu, 30 Oct 2008 23:26:14 +0000 (00:26 +0100)]
Fixed previous fix :-(

15 years agoFixed allocation of out-direction sequence parameters
Michal Sojka [Thu, 30 Oct 2008 14:52:47 +0000 (15:52 +0100)]
Fixed allocation of out-direction sequence parameters

15 years agoAdded application exception
Michal Sojka [Sat, 25 Oct 2008 21:40:21 +0000 (23:40 +0200)]
Added application exception

15 years agoStubs must allocate memory for out-direction sequence parameters
Michal Sojka [Sat, 25 Oct 2008 21:39:33 +0000 (23:39 +0200)]
Stubs must allocate memory for out-direction sequence parameters

15 years agoFixed memory leak in skeletons caused by out-direction sequence parameters
Michal Sojka [Sat, 25 Oct 2008 21:38:39 +0000 (23:38 +0200)]
Fixed memory leak in skeletons caused by out-direction sequence parameters

15 years agoforb-idl: ptr variable renamed to seq
Michal Sojka [Sat, 25 Oct 2008 19:06:25 +0000 (21:06 +0200)]
forb-idl: ptr variable renamed to seq

15 years agoforb-idl: Fixed uninitialized sequences in skeletons
Michal Sojka [Sat, 25 Oct 2008 19:04:55 +0000 (21:04 +0200)]
forb-idl: Fixed uninitialized sequences in skeletons

15 years agoFixed handling of timed-out responses
Michal Sojka [Fri, 24 Oct 2008 18:33:30 +0000 (20:33 +0200)]
Fixed handling of timed-out responses

15 years agoAdded timeout to requests
Michal Sojka [Fri, 24 Oct 2008 18:23:42 +0000 (20:23 +0200)]
Added timeout to requests

15 years agoUpdated comments and other unimportant modifications
Michal Sojka [Fri, 24 Oct 2008 18:06:43 +0000 (20:06 +0200)]
Updated comments and other unimportant modifications

15 years agoAdded function for checking for stale object references
Michal Sojka [Fri, 24 Oct 2008 18:06:05 +0000 (20:06 +0200)]
Added function for checking for stale object references

It is called forb_object_is_stale()

15 years agoFixed unhandeled EOF returned from forb_proto_send()
Michal Sojka [Fri, 24 Oct 2008 18:04:35 +0000 (20:04 +0200)]
Fixed unhandeled EOF returned from forb_proto_send()

15 years agoDocumentation update
Michal Sojka [Thu, 23 Oct 2008 16:16:43 +0000 (18:16 +0200)]
Documentation update

15 years agoFixed dereferencing of out parameters during deserialization
Michal Sojka [Thu, 23 Oct 2008 07:40:57 +0000 (09:40 +0200)]
Fixed dereferencing of out parameters during deserialization

15 years agoFixed freeing of memory for sequence parameters
Michal Sojka [Tue, 21 Oct 2008 15:23:53 +0000 (17:23 +0200)]
Fixed freeing of memory for sequence parameters

15 years agoAdded forb_get_req_source()
Michal Sojka [Tue, 21 Oct 2008 07:17:49 +0000 (09:17 +0200)]
Added forb_get_req_source()

15 years agoAdded forb_get_server_id()
Michal Sojka [Mon, 20 Oct 2008 16:54:40 +0000 (18:54 +0200)]
Added forb_get_server_id()

15 years agoServer ID function prototypes moved to a separate header
Michal Sojka [Mon, 20 Oct 2008 15:46:13 +0000 (17:46 +0200)]
Server ID function prototypes moved to a separate header

15 years agoFixed generation of prototypes with native out types
Michal Sojka [Mon, 20 Oct 2008 13:20:39 +0000 (15:20 +0200)]
Fixed generation of prototypes with native out types

15 years agoFixed freeing of native types in skeletons
Michal Sojka [Fri, 17 Oct 2008 16:13:35 +0000 (18:13 +0200)]
Fixed freeing of native types in skeletons

15 years agoforb-idl: Sequences of native types are supported now
Michal Sojka [Fri, 17 Oct 2008 10:35:39 +0000 (12:35 +0200)]
forb-idl: Sequences of native types are supported now

15 years agoforb-idl: Include header for native types must be specified by --include option
Michal Sojka [Tue, 14 Oct 2008 20:26:16 +0000 (22:26 +0200)]
forb-idl: Include header for native types must be specified by --include option

15 years agoFixed include directive
Michal Sojka [Tue, 14 Oct 2008 19:52:16 +0000 (21:52 +0200)]
Fixed include directive

15 years agoAdded checking for stale registered references
Michal Sojka [Mon, 13 Oct 2008 12:19:57 +0000 (14:19 +0200)]
Added checking for stale registered references

If the registered reference already exists and is detected as stale, it
is replaced by the new one.

15 years agoAdded possibility invoking remote methods on forb_orb interfaces
Michal Sojka [Mon, 13 Oct 2008 12:17:57 +0000 (14:17 +0200)]
Added possibility invoking remote methods on forb_orb interfaces

This was needed for checking for the stale registered references and
it will also be useful in future for some diagnostic tools etc.

15 years agolibforb is now compiled as shared library
Michal Sojka [Sun, 12 Oct 2008 20:46:50 +0000 (22:46 +0200)]
libforb is now compiled as shared library

15 years agoRenamed string.idl to avoid collision with /usr/include/string.h
Michal Sojka [Sun, 12 Oct 2008 20:34:10 +0000 (22:34 +0200)]
Renamed string.idl to avoid collision with /usr/include/string.h

15 years agoUpdated documentation and code cleanups
Michal Sojka [Sun, 12 Oct 2008 20:04:06 +0000 (22:04 +0200)]
Updated documentation and code cleanups

15 years agoAdded more error checking in hello tests
Michal Sojka [Sun, 12 Oct 2008 07:42:38 +0000 (09:42 +0200)]
Added more error checking in hello tests

15 years agoFixed destroying of ports
Michal Sojka [Sun, 12 Oct 2008 07:42:19 +0000 (09:42 +0200)]
Fixed destroying of ports

Now, there is no problem with traversing the forb's peer tree and deleting
the peers belonging to a particular port. Peers are added to port's list,
so during port destroying we only traverse this list and remove remove the
peers found there from forb's tree.

15 years agoFixed bug reported by -fmudflap
Michal Sojka [Sun, 12 Oct 2008 07:37:15 +0000 (09:37 +0200)]
Fixed bug reported by -fmudflap

15 years agoImplemented forb_(register|resolve)_reference()
Michal Sojka [Sat, 11 Oct 2008 19:56:23 +0000 (21:56 +0200)]
Implemented forb_(register|resolve)_reference()

15 years agoUnix protocol changed the location of forb's sockets to /tmp/forb
Michal Sojka [Sat, 11 Oct 2008 19:54:45 +0000 (21:54 +0200)]
Unix protocol changed the location of forb's sockets to /tmp/forb

15 years agoFixed alarms in proto_unix test
Michal Sojka [Sat, 11 Oct 2008 18:22:27 +0000 (20:22 +0200)]
Fixed alarms in proto_unix test

15 years agoorb field of forb_object always points to orb object even in case of orb object itself
Michal Sojka [Sat, 11 Oct 2008 17:33:24 +0000 (19:33 +0200)]
orb field of forb_object always points to orb object even in case of orb object itself

15 years agoAdded unlinking of stale UNIX sockets
Michal Sojka [Sat, 11 Oct 2008 10:22:41 +0000 (12:22 +0200)]
Added unlinking of stale UNIX sockets

15 years agoUpdated TODO list
Michal Sojka [Sat, 11 Oct 2008 09:51:59 +0000 (11:51 +0200)]
Updated TODO list

15 years agoFixed problem with port destroying
Michal Sojka [Wed, 8 Oct 2008 18:15:12 +0000 (20:15 +0200)]
Fixed problem with port destroying

As pthread_join() equivalent is not available in FOSA, we didn't wait
for the port's threads to finish, which caused segmentation faults when
the port's memory was freed and the threads was still running.