Frequently Asked Questions for Unix SafeTP

This page is divided unto three sections:

Also see the Troubleshooting page, which deals mostly with run-time problems.


Problems Encountered

These are problems people have reported, that are not necessarily bugs in SafeTP, but for which workarounds or ideas are known.

  1. Problem: Shared libraries.

    Example: During make check, you get an error message like

          datablok: can't load library 'libstdc++.so.2.9'
        

    Diagnosis: Something may be wrong with your shared-library configuration. You can figure out more about your config with ldd, ldconfig, and man ld.so.
    Also, make sure you have libstdc++ installed somewhere.

    Workaround: SafeTP does not require linking with shared libraries, so you might try adding -static to the "ccflags" line in the Makefile. (You may have to start over by doing a make veryclean before recompiling.)
    Note: There appears to be a bug in the SunOS 5.6 and 5.7 linkers.

    Workaround: This has been reported as necessary on some Solaris systems:

        ln -s /usr/local/lib/libstdc++.so.2.8.1.1 /usr/lib/libstdc++.so.2.8.1.1
        ln -s /usr/local/lib/libstdc++.so.2.10.0 /usr/lib/libstdc++.so.2.10.0
        
  2. Problem: g++ chokes, saying exceptions are disabled

    Cause: Older g++ had exceptions disabled by default

    Workaround: Either

  3. Problem:

        $  make
    	    CC -O -c breaker.cpp
        Make: Cannot load CC.  Stop.
        *** Error exit code 1
        

    Cause: OS vendor's make doesn't support the syntax used in the Makefile, and therefore doesn't recognize the rule for compiling C++ source files.

    Workaround: Use GNU make. It may already be installed as gmake, or you may have to get it from GNU's website.

  4. Problem: When using sftpc from one account, a user sees "530 Login Incorrect" (or something to that effect), but from another account it works fine.

    Cause: On some systems (Solaris 2.6 at least), the user's shell must be listed in /etc/shells, and when it isn't, the system(3) call does something strange. (I still don't completely understand this one.)

    Workaround: Add the user's shell to /etc/shells.

  5. Problem: In 959 compatibility mode, passive transfers yield "425 Possible PASV port theft, cannot open data connection."

    Cause: In 959 compatibility mode, all commands are relayed straight to ftpd, regardless of switches like "-3". The underlying ftpd is noticing that the data channel IP differs from the control channel IP, and complains.

    Workaround: Reconfigure ftpd to not complain. For wu-ftpd, use the --disable-pasvip switch to ./configure. For other servers, try grepping the source (if you have it..) for the error message.

  6. Problem: Link errors with GMP; for example

      init.c:34: Undefined symbol `___gmp_allocate_func' referenced from text segment
    

    Cause(1): More than one version of GMP is installed, and the compiler is using gmp.h from one version but libgmp.a from another.

    Workaround(1): Move the conflicting version out of the way, and recompile: "make distclean; ./configure; make".

    Cause(2): GMP may be built with a different ABI than SafeTP. If you're using a Sparc processor, see the SafeTP & Sparc Architecture page for more information.


Known bugs in 1.50

There are no known bugs in 1.50.


Documentation Errata

There are no errata for 1.50.