Subject: Re: SGI & NIS

From: [email-masked] (John Benjamins)
Date: Fri, 28 May 1993 10:09:12 -0400

Jamie,

further to my note of last night,  i just built 3.07 "out of the box"
and the NIS password routines work okay.  this is on machines running
IRIX 4.0.1 and 4.0.5F.  the fact that the NIS passwd file is not
/etc/passwd is a red herring, because NIS passwd lookups go to the NIS
server, not to a file on the local machine.

On May 27,  9:02am, you wrote:
} Subject: SGI & NIS
} I am having problems getting pine to use NIS entries on an SGI platform.
} Any local user ids that can't be found end of with a TO: entry of
} 
} To:  e <[email-masked]>
} 
} I noticed that the make does include the sun lib which is suppose to then
} use the NIS calles for getpw... but it does not look like it is working.
} The NIS password file is in a separate file from /etc/passwd.
} 
} Anyone else have similar problems or suggestions.
} Thanks
} Jamie
}-- End of excerpt of May 27,  9:02am

as for the following, i don't see ANY of these problems.

On May 28,  8:02am, Mike Brudenell wrote:
} Subject: Re: SGI & NIS
} [ ... Jamie's message deleted for brevity ... ]
} 
} Yes!  I had exactly this problem too!
} 
} I traced the problem to some apprarent incompatibility between the compatibility
} routines declared in the c-client/os_sgi.c & .h files and the ones provided by
} the real operating system.
} 
} For some strange reason the c-client for SGI comes shipped with its own
} functions for these functions: strtok; strchr; strrchr; strstr; strpbrk;
} strerror; memcpy; memmove; memset; strtol.  These are all available as standard
} IRIX provided routines (an din fact keeping the extra c-client routines in leads
} to some warning mesages later from ld about multiply defined routines).
} 
} I "cured" the problem simply by removing *all* the above routines from the
} c-clinet/os_sgi.[ch] files, did a "make clean" to remove *all* the .o and .a
} files, and doing a total rebuild.
} 
} This problem was in Pine 3.05 too (where I originally encountered and traced
} it); when Pine 3.07 came along I just reapplied my context diffs to elimiate the
} bogus routines again.
} 
}                                                         Mike B-)
} 
} 
}-- End of excerpt of May 28,  8:02am

what version of IRIX are you running?  are you using the SGI C
compiler?  rather than include my entire build log, here are the
warnings i see:

Making Pico
	....
        cc -c -cckr -Dsgi -DJOB_CONTROL -g osdep.c
ccom: Warning: osdep.c, line 149: void * and function pointers are not convertible to each other
          signal(1      , (void *)do_hup_signal);       
      -----------------------------------------^
ccom: Warning: osdep.c, line 150: void * and function pointers are not convertible to each other
          signal(14     , (void *)do_alarm_signal); 
      -------------------------------------------^
ccom: Warning: osdep.c, line 155: void * and function pointers are not convertible to each other
          signal(25     , (void *)winch_handler); 
      -----------------------------------------^
ccom: Warning: osdep.c, line 558: void * and function pointers are not convertible to each other
          signal(28     , (void *)rtfrmshell);  
      --------------------------------------^
ccom: Warning: osdep.c, line 595: void * and function pointers are not convertible to each other
          signal(14     , (void *)do_alarm_signal);
      -------------------------------------------^
ccom: Warning: osdep.c, line 609: void * and function pointers are not convertible to each other
        signal(1        , (void *)do_hup_signal);
      -----------------------------------------^
ccom: Warning: osdep.c, line 1323: void * and function pointers are not convertible to each other
          signal(25     , (void *)winch_handler);
	.....
 
Making Pine.
	.....
cpp: warning ./os.h:318: DF_OLD_STYLE_REPLY redefined
[ ... this warning is repeated everytime os.h is #include'ed ... ]
ccom: Warning: init.c, line 370: illegal combination of pointer and integer, op =
                  if ((p=getenv("HOME")) !=0)     
      ---------------------------------^
ccom: Warning: init.c, line 370:  types :  pointer to unsigned char  versus  int
                  if ((p=getenv("HOME")) !=0)     
      ---------------------------------^
ccom: Warning: init.c, line 391: illegal combination of pointer and integer, op =
                          if ((p=getenv(word)) !=0) 
      ---------------------------------------^
ccom: Warning: init.c, line 391:  types :  pointer to unsigned char  versus  int
                          if ((p=getenv(word)) !=0) 
      ---------------------------------------^

that's it.  no warnings about the string functions at all.  i agree
though that there's no need for definitione of all the string
functions in c-client/os_sgi.c, when they are already in the standard
IRIX libraries.  as for the original NIS problem, i don't see off-hand
why these multiple definitions, etc. would cause the problem of NIS
passwd lookups failing from pine.

i will volunteer to clean up the SGI stuff, unless someone else wants
to:-).  it may take me some time before i can get to this though.

Mark Crispin,

On May 28, 12:49am, you wrote:
} Subject: Re: SGI & NIS
} Mike -
} 
}      Thank you for informing me about the problem with the SGI port.  I have
} fixed it in the c-client sources, and eventually the change will percolate
} into the Pine distribution.  I have no access to any SGI systems, so I am
} completely dependent upon those who do for information.  The SGI port was
} supplied by a user, modified from one of the other ports (probably the BSD
} port).
} 
}      I would like to plead with everyone that if you discover this sort of
} incompatibility, don't just fix it at your site and let the matter be.  Tell
} us about it!  We are interested, and will do our utmost to get fixes in later
} releases.  Most of the Pine development at UW is done under Ultrix or NeXT,
} since those are the machines used by the Pine team.  We have access to a few
} other machines (most notably, we support Pine/imapd on the computer center's
} PTX machine), but otherwise we are dependent upon you for ports for other
} platforms as well as keeping these ports from succumbing to software rot.
} 
} -- Mark --
} 
}-- End of excerpt of May 28, 12:49am

hope this helps.

-- 
 //  E. John Benjamins -- <[email-masked]>
// Calvin: "Verbing weirds language."
\\ Hobbes: "Maybe we can eventually make language a complete impediment
 \\         to understanding."