Subject: Re: Help with Taylor UUCP 1.06.1
To: Curt Sampson <cjs@cynic.net>
From: Phil C <pchampon@sefl.satelnet.org>
List: netbsd-help
Date: 10/01/1999 13:53:53
Curt Sampson may have written:
-> 
-> On Thu, 30 Sep 1999, Phil C wrote:
-> 
-> > Ok, I did this... But I have now tried version of uucico, the version that
-> > came with NetBSD 1.4.1 and GNU's ... *all* of them tell me:
-> > 
-> > uucico: mkdir ('/var/spool/uucp'): No such file or directory
-> > 
-> > if I do not use the mkdir that comes with UUCP or:
-> > 
-> > uucico: mkdir ('/var/spool/uucp'): Permission denied
-> > 
-> > regardless of the permissions, with the version of mkdir that comes with UUCP.
-> 
-> Are you sure you're installing uucico with the correct permissions,
-> including proper ownership and the suid/sgid bits? In a standard
-> NetBSD install, /usr/libexec/uucp/uucico is setuid and owned by
-> uucp.
-> 
-> What happened to the UUCP that was already installed on your system
-> when you installed NetBSD, BTW?


Like an unthinking boob, I simply installed it... But all the original UUCP
apps are still in /usr/libexec/uucp, but they fail as miserably as any other
uucico that I have compiled. I am totally lost ... right now uucico us owned by
uucp, suid bit is on and the sgid bit is off. Tho I have nailed where it is
failing, {gnu_uucp_src}/unix/init.c:337 ... An attempt to chdir to the spool
directory fails, then it tries to mkdir the spooldir which also fails and I
receive my LOG_FATAL warning and then it dies... ? The only reason I know that
is I was poking around in the source (not a C programmer tho) and happened to
stuff in some gratuitous warnings... Anyway ... the initial chdir fails, then
somehow mkdir also fails ... after mkdir fails then it dies. ugh ...


This is the chunk it dies on:

    if (chdir (zSspooldir) < 0)
    { 
      ulog(LOG_ERROR, "Could not chdir to %s\n", zSspooldir);/*MY ADDITION*/
      if (errno == ENOENT
          && mkdir ((char *) zSspooldir, IDIRECTORY_MODE) < 0)
        ulog (LOG_ERROR, "mkdir (%s): %s", zSspooldir,
          strerror (errno));
        ulog(LOG_FATAL, "I Scewed YOU (%s): %s  :p ...\n", zSspooldir, strerror(errno)); /*MY ADDITION*/
      if (chdir (zSspooldir) < 0)
        ulog (LOG_FATAL, "chdir (%s): %s", zSspooldir,
          strerror (errno));
    }

Any other thoughts?