我有一个非常小的程序,它打开一个套接字并接受一个连接。然后它会获取远程 IP 和端口。
我想向远程计算机(telnet)发送一条短信并关闭连接。
我无法确定哪个函数用于向 telnet 客户端发送消息。
The Clozure手册 http://ccl.clozure.com/manual/chapter7.2.html#Sockets-Dictionary列出了一个名为“send to”的函数,但它说它用于 UDP 套接字,而我正在使用 TCP 套接字。
我希望有人能告诉我正确的功能是什么,或者,如果“发送到”是正确的功能,如何正确使用它。
Thanks
(setq my-socket (ccl:make-socket :connect :passive :format :text
:local-port 20000 :reuse-address t))
(setq connection (ccl:accept-connection my-socket))
(setq remote-host (ccl:remote-host connection))
(setq remote-port (ccl:remote-port connection))
CCL:ACCEPT-CONNECTION 的文档说它返回一个流。
因此,您可以将 Common Lisp 的正常 I/O 操作(例如:PRINC)与该流一起使用。对于 I/O 操作,请参阅 HyperSpec 有关“流”和“打印机”的章节。
(defun st (port)
(ccl:with-open-socket (socket :connect :passive
:format :text
:local-port port
:reuse-address t)
(with-open-stream (stream (ccl:accept-connection socket))
(princ "CCL example response" stream))))
; example call
(st 20000)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)