% $OpenXM: OpenXM/src/kan96xx/plugin/sm1Socket.sm1,v 1.3 2004/09/24 13:15:27 takayama Exp $ [(plugin-sm1.socket) [ $[(sm1.socket) key [args] ] extension result-object$ ( key : open, connect, accept, select, mselect, read, write, readByte, writeByte, close.) (Note that read and write are used for only string data.) (See also Kan/debug/server.sm1) ( ) $ (open) [portNumber hostname] ---> [fd0 portNumber] $ $ (accept) [fd0] ---> fd $ $ (connect) [portNumber hostname] -> [fd portNumber] $ $ (select) [fd time] ---> 1 (ready) or 0 $ $ if (time < 0) then it waits until data comes. $ $ (mselect) [[fd0 fd1 ... ] time] -> [s0 s1 s2 ... ] $ $ (read) [fd] ---> string-obj $ $ (write) [fd string-obj] ---> n-of-bytes-written $ $ (readByte) [fd] ---> data(byte) $ $ (writeByte) [fd data(byte)] ---> n-of-bytes-written $ $ (writeByte) [fd array_of_data]---> n-of-bytes-written $ $ (close) [fd] ---> status $ % $ (readHTTP) [fd] ---> string-obj $ % buggy ]] putUsages