michael@uni-paderborn.de (Michael Schmidt) (12/01/90)
sendmail dumps core if it is started with frozen config file. In "getservbyname"!! (Yes, I used the ../uiuc/malloc.c) Without .fc all is fine, besides the warning messages in the log files. Any idea? Michael -- Michael Schmidt, FB 17, Uni-GH Paderborn, Warburgerstr. 100, D-4790 Paderborn, West Germany Mail: michael@pbinfo.UUCP or michael@uni-paderborn.de
cudcv@warwick.ac.uk (Rob McMahon) (12/12/90)
In article <MICHAEL.90Nov30222935@pbinfo.uni-paderborn.de> michael@uni-paderborn.de (Michael Schmidt) writes: >sendmail dumps core if it is started with frozen config file. In >"getservbyname"!! (Yes, I used the ../uiuc/malloc.c) Has anyone got a fix for this ? Note that I haven't got NAMED_BIND defined. The stack trace I get is #0 0x24d10 in _yp_dobind_soft () #1 0x24c1c in _yp_dobind () #2 0x25d80 in yp_first () #3 0x23c1c in getservent () #4 0x239a0 in getservbyname () #5 0x4d70 in getrequests () #6 0xc210 in main () I'm convinced it's some sort of state being kept by the Yellow Pages (oops, sorry BT, NIS). I imagine the change that's provoked this is moving some YP access to before the freeze stage. I tried a quick *** /tmp/,RCSt1a02053 Wed Dec 12 12:02:59 1990 --- main.c Mon Oct 29 17:19:14 1990 *************** *** 954,959 **** --- 954,967 ---- if (freezefile == NULL) return; + #if YP + { + char *domain; + if (yp_get_default_domain(&domain) == 0) + yp_unbind(domain); + } + #endif YP + /* try to open the freeze file */ f = creat(freezefile, FileMode); if (f < 0) to reset the NIS before dumping. This gets it past a `-bv -v' test, but it still dumps core when invoked with `-bd'. Cheers, Rob -- UUCP: ...!mcsun!ukc!warwick!cudcv PHONE: +44 203 523037 JANET: cudcv@uk.ac.warwick INET: cudcv@warwick.ac.uk Rob McMahon, Computing Services, Warwick University, Coventry CV4 7AL, England
cudcv@warwick.ac.uk (Rob McMahon) (12/12/90)
Ugh. Having been provoked into looking into this again, I find that if you use dynamic linking, sendmail runs in daemon mode, but doesn't accept mail properly. The client side gets as far as DATA ... . but never sees an `Ok'. The server-side process shows `HELO clover'. This is with GCC. With CC and no -Bstatic all seems well. I'm stopping here ... "if it works, don't fix it". Curiouser and curiouser said Alice .... Rob -- UUCP: ...!mcsun!ukc!warwick!cudcv PHONE: +44 203 523037 JANET: cudcv@uk.ac.warwick INET: cudcv@warwick.ac.uk Rob McMahon, Computing Services, Warwick University, Coventry CV4 7AL, England
rdr@cl4.alliant.com (Roger Roles) (12/14/90)
In article <1990Dec12.143759.20693@warwick.ac.uk> cudcv@warwick.ac.uk (Rob McMahon) writes: >access to before the freeze stage. I tried a quick > <code to do yp_unbind before freeze> > >to reset the NIS before dumping. This gets it past a `-bv -v' test, but it Try inserting an identical piece of code before the read of the freeze file in the "thaw" routine. While fixing a similar problem in a different version of sendmail, I discovered that in addition to the saving of the state used by the NIS in the freeze, the readback of the freeze file destroyed similar information, causing strange results later due to the unexpected closing of a file descriptor by a piece of code using a stale copy. Roger D. Roles rdr@Alliant.COM, alliant!rdr Alliant Computer Systems Corporation 508-486-1211