[758] in bugtraq
accpet(3n) under SOlaris 2.4
daemon@ATHENA.MIT.EDU (Jas (Matthew K))
Wed Jan 25 05:09:48 1995
From: matt@uts.EDU.AU (Jas (Matthew K))
To: bugtraq@fc.net (Bugtraq Mailing List)
Date: Wed, 25 Jan 1995 19:24:59 +1000 (EST)
i recently tried to install identd on my new Solaris 2.4 machine.. i have
since found out it has a problem with accept(3n). now.. im not sure why it
spits the dummy at it, but here is the truss dump, so that those with either
the source or more knowledge than myself could explain why it is barfing..
here below it starts right at the accept.. lines beginning with *** are from
the source code..
*** fd = accept(0, &sad, &sadlen);
2428: sigaction(SIGCLD, 0xEFFFFC50, 0xEFFFFD50) = 0
2428: poll(0xEFFFDD90, 1, -1) = 1
2428: sigfillset(0xEF683BB0) = 0
2428: sigprocmask(SIG_SETMASK, 0xEFFFFC8C, 0xEFFFFCC0) = 0
2428: ioctl(0, I_STR, 0xEFFFFB10) = 0
2428: ioctl(0, I_GETSIG, 0xEFFFFB94) Err#22 EINVAL
2428: sigprocmask(SIG_SETMASK, 0xEFFFFCC0, 0xEFFFFC6C) = 0
*** if (fd == -1)
*** ERROR1("main: accept. errno = %d", errno);
anyway... the ioctl(0,I_GETSIG,xxxxx) seems to be the problem.. fd 0 is a
socket (which will probably make a difference), just a straight normal tcp
listen socket with no options. so anyway there is the problem... if anyone
has a fix or knows what the problem is, it would be appreciated.
Matt
--
Matthew Keenan Systems Programmer Information Technology Division
University of Technology Sydney Australia
email: matt@uts.edu.au www: http://milliways.itd.uts.edu.au/~matt/
ph: +61 2 330 1390 fax: +61 2 330 1999 home: +61 2 416 5722
GCV 2.1 GAT/M/CS d--(-+) H-- s++:-- g+ p? !au a-(?) w+++ v+ C+++$
UVS++++$ P+>+++ L- 3+++ E-(++) N++ K W--- M+ V-- -po+(+) Y+ t+
!5>++ jx R+ G? !tv b+++ D++ B e+ u--(**) h- f+(*) r n- !y