On Thu, 8 Jul 2004, Larry Lile wrote:

> On Thu, 8 Jul 2004, Leif Johansson wrote:
> 
> > The problem lies with Authen::SASL::Cyrus which does not correctly
> > set the sockname and peername - they are treated as strings and
> > not as in_addrs
> 
> Okay, maybe I can look into that. 

Eeek, okay now I'm confused and maybe someone out there can speak
to what would be correct here:

SASLv1:

sasl_setprop(26 March 2000)           sasl_setprop(26 March 2000)
 
NAME
       sasl_setprop - Set a SASL property
 
SYNOPSIS
       #include <sasl.h>
 
       int sasl_setprop(sasl_conn_t *conn,
                       int propnum,
                       const void * pvalue);
 
[...] 

       SASL_IP_LOCAL   -    local address (pvalue=sockaddr_in *)
       SASL_IP_REMOTE  -    remote address (pvalue=sockaddr_in *)

As you noted -- All good...

SASLv2

sasl_setprop(10 July 2001)                          sasl_setprop(10 July 
2001)
 
NAME
       sasl_setprop - Set a SASL property
 
SYNOPSIS
       #include <sasl/sasl.h>
 
       int sasl_setprop(sasl_conn_t *conn,
                       int propnum,
                       const void * pvalue)
 
[...]

       SASL_IPLOCALPORT -   string describing the local ip and port in the 
form
                            "a.b.c.d;p", or "e:f:g:h:i:j:k:l;port"
       SASL_IPREMOTEPORT -  string describing the remote ip and port in 
the form                            "a.b.c.d;p", or "e:f:g:h:i:j:k:l;port"
 


What would be the "correct" way to handle this?  The names have
changed in addition the the format of the data.  Should Net::LDAP
be aware of the SASLv1/v2 difference, should Authen::SASL be hiding
the change or should Authen::SASL::Cyrus be more accepting and
convert to the appropriate parameter/format?

Oi!  Specs are great, there are so many to choose from...

-- 
Larry

Reply via email to