#
# $Id: README,v 1.2 2004/08/18 15:20:51 evertonm Exp $
#

This file provides introductory notes about the Guile extension for
RULI.


INSTALLATION

1) Make sure you have Guile and RULI properly installed on your
   system.

2) Compile the Guile extension for RULI (libguile-ruli.so):

   make

3) Put libguile-ruli.so in the dynamic loader path and ruli.scm in the
   Guile autoload path.

   See the comments in the file ruli.scm, if you need more detailed
   instructions.


USAGE

In the Guile interpreter, you can load the ruli module (extension)
with:

   (use-modules (ruli))


SCHEME FUNCTIONS

This module provides the following functions:

   (ruli-sync-query service domain fallback_port [options])

   (ruli-sync-smtp-query domain [options])

Possible results are:

   1) Symbol 'timeout'
   2) Symbol 'unavailable'
   3) List of errors: ( (srv-code <number>) [(rcode <number>)] )
   4) List of SRV records, possibly empty, as in this example:

      (
       ( 
        (target "host1.domain")
        (priority 0)
        (weight 10)
        (port 25)
        (addresses "1.1.1.1" "2.2.2.2") 
       )
       (
        (target "host2.domain")
        (priority 0)
        (weight 0)
        (port 80)
        (addresses "3.3.3.3" "4.4.4.4") 
       )
      )


EXAMPLES

These are examples of invokation for the functions provided in this
module:

   (ruli-sync-query "_http._tcp" "web-domain.tld" -1)

   (ruli-sync-smtp-query "mail-domain.tld")


				 -x-
