|
From: creedon <icr...@us...> - 2005-06-13 19:30:06
|
Update of /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/tcp/im/builtinDrivers/aim/code/p0rY36zUYXrOXdRdhXOJQ In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15080 Modified Files: recv5Fevent Log Message: removed trailing lines Index: recv5Fevent =================================================================== RCS file: /cvsroot/frontierkernel/odbs/frontierRoot/system/verbs/builtins/tcp/im/builtinDrivers/aim/code/p0rY36zUYXrOXdRdhXOJQ/recv5Fevent,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** recv5Fevent 29 Mar 2005 02:18:00 -0000 1.1 --- recv5Fevent 13 Jun 2005 19:29:40 -0000 1.2 *************** *** 1,3 **** FrontierVcsFile:1:scpt:system.verbs.builtins.tcp.im.builtinDrivers.aim.code.core.recv_event ! on recv_event(adrSelf) { ÇI'm thinking here that I can just do a readStringFromStream and be all happy about it. local { header = ""; data=""}; while not header { try { tcp.readStreamBytes(adrself^._socket, 6, 60, @header)} else { Çmsg("looping" + clock.ticks()) case true { tryerror contains "closed" { tcp.im.builtinDrivers.aim.code.core.ferror(adrSelf,tryerror); break}; tryError contains "timed out" { ÇNothing Special, we just didn't get data in timeout seconds 1}} else { tcp.im.builtinDrivers.aim.code.core.derror(adrSelf,tryerror)}; thread.sleepfor(1); }; ÇThis will loop till there is something on the port. Çprobably need to be nicer about it. };}; if header == "" { tcp.im.builtinDrivers.aim.code.core.err_disconnect(adrSelf); return (false)}; local { marker = char(header[1]); mtype = number(char(header[2])); seq = number(number(char(header[3]))*256 + number(char(header[4]))); buflen = number(number(char(header[5]))*256 + number(char(header[6])))}; Ç(marker,mtype,seq,buflen) = struct.unpack("!sBhh",header) Ç#get the info if not tcp.readStreamBytes(adrself^._socket, buflen, 3, @data) { tcp.im.builtinDrivers.aim.code.core.err_disconnect(adrSelf)}; return ({mtype, string(data)}); } \ No newline at end of file --- 1,3 ---- FrontierVcsFile:1:scpt:system.verbs.builtins.tcp.im.builtinDrivers.aim.code.core.recv_event ! on recv_event(adrSelf) { ÇI'm thinking here that I can just do a readStringFromStream and be all happy about it. local { header = ""; data=""}; while not header { try { tcp.readStreamBytes(adrself^._socket, 6, 60, @header)} else { Çmsg("looping" + clock.ticks()) case true { tryerror contains "closed" { tcp.im.builtinDrivers.aim.code.core.ferror(adrSelf,tryerror); break}; tryError contains "timed out" { ÇNothing Special, we just didn't get data in timeout seconds 1}} else { tcp.im.builtinDrivers.aim.code.core.derror(adrSelf,tryerror)}; thread.sleepfor(1); }; ÇThis will loop till there is something on the port. Çprobably need to be nicer about it. }; if header == "" { tcp.im.builtinDrivers.aim.code.core.err_disconnect(adrSelf); return (false)}; local { marker = char(header[1]); mtype = number(char(header[2])); seq = number(number(char(header[3]))*256 + number(char(header[4]))); buflen = number(number(char(header[5]))*256 + number(char(header[6])))}; Ç(marker,mtype,seq,buflen) = struct.unpack("!sBhh",header) Ç#get the info if not tcp.readStreamBytes(adrself^._socket, buflen, 3, @data) { tcp.im.builtinDrivers.aim.code.core.err_disconnect(adrSelf)}; return ({mtype, string(data)})} \ No newline at end of file |