newLISP Fan Club
		Forum => Anything else we might add? => Topic started by: pjot on May 31, 2006, 12:40:57 PM
		
			
			
				Lutz,
Today I tested some network stuff on Tru64Unix. The following happened:
Quote
peter> su
Password:
# ./newlisp
newLISP v.8.8.8 on Tru64Unix, execute 'newlisp -h' for more info.
> (net-ping "127.0.0.1")
nil
> (net-error)
(2 "ERR: Host name not known")
> (exit)
# exit
Weird! The IP address '127.0.0.1' is mentioned in the /etc/hosts file, it should work without a problem. Then I checked your file 'nl-socket.c' and at line 1566 I see the following:
   1565 
   1566     if((whereto.sin_addr.s_addr = inet_addr(hostaddr)) == (unsigned)-1);
   1567       {
   1568       if(!(hp = gethostbyname(hostaddr)))
   1569         {
   1570         shutdown(s, SHUT_RDWR);
   1571         return(netError(ERR_INET_HOST_UNKNOWN));
   1572         }
   1573       whereto.sin_family = hp->h_addrtype;
   1574       memcpy((void *)&whereto.sin_addr, hp->h_addr, hp->h_length);
   1575       }
   1576 
Look at the SEMI-COLON at the end of line 1566. The whole IF-clause is skipped now. If I remove the semi-colon and recompile, things work:
Quote
peter> su
Password:
# ./newlisp
newLISP v.8.8.8 on Tru64Unix, execute 'newlisp -h' for more info.
> (net-ping "127.0.0.1")
("127.0.0.1")
> (exit)
# 
So, shouldn't the semi-colon be removed from line 1566?
Peter
			 
			
			
				oops, thanks
Lutz