address-apis.txt - clic - Clic is an command line interactive client for gopher written in Common LISP (HTM) git clone git://bitreich.org/clic/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/clic/ (DIR) Log (DIR) Files (DIR) Refs (DIR) Tags (DIR) README (DIR) LICENSE --- address-apis.txt (1688B) --- 1 2 -*- text -*- 3 4 Step 2 of the master plan: Implementing (get-local-address sock) and 5 (get-peer-address sock). 6 7 8 Step 2 is about implementing: 9 10 (get-local-address sock) -> ip 11 (get-peer-address sock) -> ip 12 (get-local-port sock) -> port 13 (get-peer-port sock) -> port 14 (get-local-name sock) -> ip, port 15 (get-peer-name sock) -> ip, port 16 17 18 ABCL 19 ==== 20 21 FFI / J-calls to "getLocalAddress"+"getAddress", "getLocalPort" (local) 22 FFI / J-calls to "getInetAddress"+"getAddress", "getPort" (peer) 23 24 (see SLIME / swank-abcl.lisp for an example on how to do that) 25 26 27 Allegro 28 ======= 29 30 (values (socket:remote-host sock) 31 (socket:remote-port)) -> 32bit ip, port 32 33 (values (socket:local-host sock) 34 (socket:local-port sock)) -> 32bit ip, port 35 36 CLISP 37 ===== 38 39 (socket:socket-stream-local sock nil) -> address (as dotted quad), port 40 (socket:socket-stream-peer sock nil) -> address (as dotted quad), port 41 42 43 CMUCL 44 ===== 45 46 (ext:get-peer-host-and-port sock-fd) -> 32-bit-addr, port (peer) 47 (ext:get-socket-host-and-port sock-fd) -> 32-bit-addr, port (local) 48 49 50 LispWorks 51 ========= 52 53 (comm:socket-stream-address sock-stream) -> 32-bit-addr, port 54 or: (comm:get-socket-address sock) -> 32-bit-addr, port 55 56 (comm:socket-stream-peer-address sock-stream) -> 32-bit-addr, port 57 or: (comm:get-socket-peer-address sock) -> 32-bit-addr, port 58 59 60 OpenMCL 61 ======= 62 63 (values (ccl:local-host sock) (ccl:local-port sock)) -> 32-bit ip, port 64 (values (ccl:remote-host sock) (ccl:remote-port sock)) -> 32-bit ip, port 65 66 67 SBCL 68 ==== 69 70 (sb-bsd-sockets:socket-name sock) -> vector-quad, port 71 (sb-bsd-sockets:socket-peer-name sock) -> vector-quad, port 72 73