[so] robocheck

Tudor so@cursuri.cs.pub.ro
Sun, 19 Dec 2004 13:32:47 +0200


--=====================_3693234==_
Content-Type: text/plain; charset="us-ascii"; format=flowed

Salut,

Am adaugat la robocheck functiile socket() si accept() (din linux) de
care am avut nevoie la tema 4 (nu era mare lucru). L-am atasat la
mesajul asta ca sa il poata folosi si alti colegi de ai mei, daca vor.

Pe de alta parte, as vrea ca macar tema mea sa fie corectata
cu o varianta de robocheck care sa aiba functiile astea doua ca sa
nu dea Segmentation Fault la close-uri.  Asa o sa fie?

--Tudor



---------------------------------------------------------------
Posteaza gratuit anunturi de orice dimensiune si ai audienta de sute de mii, lunar.

--=====================_3693234==_
Content-Type: application/zip; name="robocheck.zip";
 x-mac-type="705A4950"; x-mac-creator="705A4950"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="robocheck.zip"

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
AAAACQAJAF0CAADWNAAAAAA=
--=====================_3693234==_--