
                Brutus sample/test README
           Copyright (C) 2004-2008 OMC Denmark ApS.


Your rights
===========

Copying and distribution of this file, with or without 
modification, are permitted in any medium without royalty 
provided the copyright notice and this notice are preserved.
                

Introduction
============

This directory holds sample/test source code for the Brutus 
framework.

Any and all code is written for clarity, not performance or 
smartness. If there is two ways to do things, the clever way 
and the enlightening way, then the enlightening way is chosen. 

The Makefiles are written the same way, although there are 
most likely better and clearer ways to write the Makefiles. 

I am not exactly a GNU make guru, so there are undoubtedly many 
silly and stupid mistakes in those Makefiles, but they work.
Please submit patches to fix this (hint, hint..).

Please visit <http://www.42tools.com/> for more information.


License
=======

All sample/test code is distributed under the terms the GNU 
General Public License. Please see the file COPYING for the 
specifics.


External dependencies
=====================

 Operating system:
     It is possible and very likely that any Linux distributions
     and UNIX like operating systems will work equally well as
     long as the GNU tool chain is available. You will probably
     need to make adjustments to the Makefiles though. YMMV.


Sub projects
============

The following sub projects lives in similar name directories 
directly under the top level directory (in which you are reading 
this README):

 C:
     Source code for the C sample/test client.

 C++:
     Source code for the C++ sample/test client.

 config:
     Configuration files for all test clients are here.


How to build
============

Please see the README in the individual sample directories.


Tips and troubleshooting
========================

1) You get a TRANSIENT exception when the client tries to narrow the 
   BrutusLogOn reference. 
   
   The most likely cause is that your server is started with an invalid
   endpoint or not started at all. You need to use the IP address in 
   your endpoint option (see the configuration file, usually brutus.conf) 
   if your server has a hostname that does not resolve. Try to ping it 
   to see for sure.

   Another explanation could be that your Brutus server is down for 
   some reason.


-- 
  Jules Colding
  colding@42tools.com

  Rasmus Maagaard
  rasmusmaagaard@42tools.com

  Last update: 19 December 2008
