From 2a708f215cf3fc2d2057f72c9aa221b3d131d3f2 Mon Sep 17 00:00:00 2001 From: norayr Date: Thu, 13 Apr 2017 19:35:12 +0400 Subject: [PATCH] works! --- irc.Mod | 6 ++++-- sockets.Mod | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/irc.Mod b/irc.Mod index c27c968..40d0394 100644 --- a/irc.Mod +++ b/irc.Mod @@ -30,13 +30,14 @@ END rawWrite; PROCEDURE connect*; VAR hints, res : netdb.addrInfo; pres, pres2, phints: netdb.PaddrInfo; + tmpaddr : SYSTEM.ADDRESS; tmp32 : netdb.Int32; conn : netdb.Int32; str0, str1: ARRAY 255 OF CHAR; BEGIN (*NEW(phints);*) - hints.aiFamily := sockets.AfInet; - (*hints.aiFamily := sockets.AfUnspec;*) + (*hints.aiFamily := sockets.AfInet;*) + hints.aiFamily := sockets.AfUnspec; hints.aiSockType := sockets.SockStream; hints.aiFlags := 0; hints.aiProtocol := netdb.ipprotoTCP; @@ -61,6 +62,7 @@ BEGIN ELSE Out.String("socket() succeeded."); Out.Ln; END; + tmpaddr := SYSTEM.ADR(pres^.aiAddr); tmp32 := sockets.Connect(conn, pres^.aiAddr, pres^.aiAddrLen); IF tmp32 = 0 THEN Out.String("connect() succeeded."); Out.Ln; diff --git a/sockets.Mod b/sockets.Mod index b9fc32a..a352c30 100644 --- a/sockets.Mod +++ b/sockets.Mod @@ -118,7 +118,7 @@ TYPE END Accept; (* int connect(int sockfd, const struct sockaddr *addr, socklen_t addrlen); *) - PROCEDURE -connect(sockfd: Int32; VAR addr: SYS.ADDRESS; addrlen: Int32): Int32 + PROCEDURE -connect(sockfd: Int32; addr: SYS.ADDRESS; addrlen: Int32): Int32 "(INTEGER)(connect(sockfd, addr, addrlen))";