Because there is no AC_CHECK_FUNCS(sscanf), trio_sscanf is called
because of the following in include/trio.h on systems that require
trio (Solaris 2.5.1 and Tru64 UNIX 4.0D):
  #ifndef HAVE_SSCANF
  # define sscanf trio_sscanf
  #endif

In src/ResMgr.cc, we have:
  const char *ResMgr::FloatValidate(char **value)
  {
     char *v=*value;

     int n=0;

     double f;
     if(1>sscanf(v,"%lf%n",&f,&n))
        return _("invalid floating point number");

     v[n]=0;

     return 0;
  }

This prints an error on startup for the two systems above:
  $ lftp ftp.gnu.org
  Default value for net:reconnect-interval-multiplier is invalid: invalid floating 
point number

I added some debugging and v='1.5' and the return value of
trio_sscanf() is '-1'. However, with the system sscanf(), the return
value is '1'. Upgrading to the latest trio didn't change the result.

I'll submit a patch for this later.

-- 
albert chin ([EMAIL PROTECTED])

Reply via email to