Socket library ghc 5.02.1

Simon Marlow simonmar@microsoft.com
Thu, 22 Nov 2001 15:22:04 -0000


This is a multi-part message in MIME format.

------_=_NextPart_001_01C17369.70E62D9C
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable


> In local.glasgow-haskell-users, you wrote:
> > It seems that the Socket library does still not work
> > with ghc 5.02.1.
>=20
> [ghci clarification]
> There, it crashes for me even on the 2nd invocation:
>=20
> connect(13, {sin_family=3DAF_INET, sin_port=3Dhtons(80),=20
> sin_addr=3Dinet_addr("137.226.194.33")}}, 16) =3D -1 EINPROGRESS=20
> (Operation now in progress)
> gettimeofday({1006436761, 219035}, NULL) =3D 0
> select(14, [], [13], NULL, {134, 217727}) =3D 1 (out [13], left=20
> {134, 220000})
> getsockopt(13, SOL_SOCKET, SO_ERROR, [1835091456], [1]) =3D 0
> write(1, "*", 1)                        =3D 1
>=20
> whereas on the first, succeeding call to 'connect' it says;
>=20
> select(14, [], [13], NULL, {134, 217727}) =3D 1 (out [13], left=20
> {134, 210000})
> getsockopt(13, SOL_SOCKET, SO_ERROR, [0], [1]) =3D 0

I'm sad to say there was another bug in SocketPrim.getSocketOption in
5.02.1.  Please try the enclosed patch.

Cheers,
	Simon

------_=_NextPart_001_01C17369.70E62D9C
Content-Type: application/octet-stream;
	name="patch"
Content-Transfer-Encoding: base64
Content-Description: patch
Content-Disposition: attachment;
	filename="patch"

KioqIFNvY2tldFByaW0uaHNjCTIwMDEvMTAvMTUgMTY6Mjk6MzcJMS4xNQotLS0gU29ja2V0UHJp
bS5oc2MJMjAwMS8xMS8xMyAxMToyNDo0MQkxLjE2CioqKioqKioqKioqKioqKgoqKiogMSw1ICoq
KioKICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQohIC0tICRJZDogU29ja2V0UHJpbS5oc2MsdiAxLjE1
IDIwMDEvMTAvMTUgMTY6Mjk6Mzcgc2ltb25tYXIgRXhwICQKICAtLQogIC0tIChjKSBUaGUgR1JB
U1AvQVFVQSBQcm9qZWN0LCBHbGFzZ293IFVuaXZlcnNpdHksIDE5OTUtMTk5OCwKICAtLSAgICAg
VGhlIEdIQyBUZWFtIDE5OTktMjAwMQotLS0gMSw1IC0tLS0KICAtLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LQohIC0tICRJZDogU29ja2V0UHJpbS5oc2MsdiAxLjE2IDIwMDEvMTEvMTMgMTE6MjQ6NDEgc2lt
b25tYXIgRXhwICQKICAtLQogIC0tIChjKSBUaGUgR1JBU1AvQVFVQSBQcm9qZWN0LCBHbGFzZ293
IFVuaXZlcnNpdHksIDE5OTUtMTk5OCwKICAtLSAgICAgVGhlIEdIQyBUZWFtIDE5OTktMjAwMQoq
KioqKioqKioqKioqKioKKioqIDY2MCw2NjYgKioqKgogIAkJLT4gSU8gSW50CSAtLSBPcHRpb24g
VmFsdWUKICBnZXRTb2NrZXRPcHRpb24gKE1rU29ja2V0IHMgXyBfIF8gXykgc28gPSBkbwogICAg
IGFsbG9jYSAkIFxwdHJfdiAtPgohICAgICAgd2l0aE9iamVjdCAxICQgXHB0cl9zeiAtPiBkbwog
ICAgICAgICB0aHJvd0Vycm5vSWZNaW51czEgImdldFNvY2tldE9wdGlvbiIgJAogIAkgY19nZXRz
b2Nrb3B0IHMgKHNvY2tldE9wdExldmVsIHNvKSAocGFja1NvY2tldE9wdGlvbiBzbykgcHRyX3Yg
cHRyX3N6CiAgICAgICAgIGZyb21JbnRlZ3JhbCBgbGlmdE1gIHBlZWsgcHRyX3YKLS0tIDY2MCw2
NjYgLS0tLQogIAkJLT4gSU8gSW50CSAtLSBPcHRpb24gVmFsdWUKICBnZXRTb2NrZXRPcHRpb24g
KE1rU29ja2V0IHMgXyBfIF8gXykgc28gPSBkbwogICAgIGFsbG9jYSAkIFxwdHJfdiAtPgohICAg
ICAgd2l0aE9iamVjdCAoZnJvbUludGVncmFsIChzaXplT2YgKHVuZGVmaW5lZCA6OiBDSW50KSkp
ICQgXHB0cl9zeiAtPiBkbwogICAgICAgICB0aHJvd0Vycm5vSWZNaW51czEgImdldFNvY2tldE9w
dGlvbiIgJAogIAkgY19nZXRzb2Nrb3B0IHMgKHNvY2tldE9wdExldmVsIHNvKSAocGFja1NvY2tl
dE9wdGlvbiBzbykgcHRyX3YgcHRyX3N6CiAgICAgICAgIGZyb21JbnRlZ3JhbCBgbGlmdE1gIHBl
ZWsgcHRyX3YK

------_=_NextPart_001_01C17369.70E62D9C--