r5230: First upload
[cl-modlisp.git] / impl-clisp.lisp
1 ;;; -*- Mode:Lisp; Syntax:Common-lisp; Package: modlisp; Base:10 -*-
2
3 (in-package #:modlisp)
4
5 (defun make-socket-server (name port function &key wait (format :text))
6   (declare (ignore name))
7   (let ((passive-socket (ext:socket-server port)))
8     (values (start-socket-server passive-socket function :wait wait)
9             passive-socket)))
10
11 (defun start-socket-server (passive-socket function &key wait)
12   (unwind-protect
13        (loop
14         (let ((connection (ext:socket-accept passive-socket)))
15           (unwind-protect
16                (apache-command-issuer connection function)
17             (ignore-errors (close connection)))))
18     (ignore-errors (close passive-socket))))