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