1 ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: CL-USER; Base: 10 -*-
2 ;;; $Header: /usr/local/cvsrep/hunchentoot/packages.lisp,v 1.34 2008/02/13 16:02:18 edi Exp $
4 ;;; Copyright (c) 2004-2010, Dr. Edmund Weitz. All rights reserved.
6 ;;; Redistribution and use in source and binary forms, with or without
7 ;;; modification, are permitted provided that the following conditions
10 ;;; * Redistributions of source code must retain the above copyright
11 ;;; notice, this list of conditions and the following disclaimer.
13 ;;; * Redistributions in binary form must reproduce the above
14 ;;; copyright notice, this list of conditions and the following
15 ;;; disclaimer in the documentation and/or other materials
16 ;;; provided with the distribution.
18 ;;; THIS SOFTWARE IS PROVIDED BY THE AUTHOR 'AS IS' AND ANY EXPRESSED
19 ;;; OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20 ;;; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 ;;; ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
22 ;;; DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23 ;;; DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
24 ;;; GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25 ;;; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
26 ;;; WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
27 ;;; NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 ;;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 (defpackage #:HUNCHENTOOT
34 (:use
:cl
:cl-ppcre
:chunga
:flexi-streams
:url-rewrite
)
35 (:shadow
#:DEFCONSTANT
37 ;; see ASDF system definition
38 (:import-from
:hunchentoot-asd
:*hunchentoot-version
*)
40 (:import-from
:lw
#:WITH-UNIQUE-NAMES
#:WHEN-LET
)
42 #:*ACCESS-LOG-PATHNAME
*
43 #:*APPROVED-RETURN-CODES
*
49 #:*CONTENT-TYPES-FOR-URL-REWRITE
*
50 #:*DEFAULT-CONNECTION-TIMEOUT
*
51 #:*DEFAULT-CONTENT-TYPE
*
55 #:*HANDLE-HTTP-ERRORS-P
*
57 #:*HTTP-ERROR-HANDLER
*
58 #:*HUNCHENTOOT-DEFAULT-EXTERNAL-FORMAT
*
59 #:*LISP-ERRORS-LOG-LEVEL
*
60 #:*LISP-WARNINGS-LOG-LEVEL
*
61 #:*LOG-LISP-BACKTRACES-P
*
63 #:*LOG-LISP-WARNINGS-P
*
64 #:*MESSAGE-LOG-PATHNAME
*
65 #:*METHODS-FOR-POST-PARAMETERS
*
68 #:*REWRITE-FOR-SESSION-URLS
*
70 #:*SESSION-GC-FREQUENCY
*
72 #:*SESSION-REMOVAL-HOOK
*
74 #:*SHOW-LISP-BACKTRACES-P
*
75 #:*SHOW-LISP-ERRORS-P
*
77 #:*USE-REMOTE-ADDR-FOR-SESSIONS
*
78 #:*USE-USER-AGENT-FOR-SESSIONS
*
80 #:+HTTP-AUTHORIZATION-REQUIRED
+
86 #:+HTTP-EXPECTATION-FAILED
+
87 #:+HTTP-FAILED-DEPENDENCY
+
89 #:+HTTP-GATEWAY-TIME-OUT
+
91 #:+HTTP-INTERNAL-SERVER-ERROR
+
92 #:+HTTP-LENGTH-REQUIRED
+
93 #:+HTTP-METHOD-NOT-ALLOWED
+
94 #:+HTTP-MOVED-PERMANENTLY
+
95 #:+HTTP-MOVED-TEMPORARILY
+
97 #:+HTTP-MULTIPLE-CHOICES
+
99 #:+HTTP-NON-AUTHORITATIVE-INFORMATION
+
100 #:+HTTP-NOT-ACCEPTABLE
+
102 #:+HTTP-NOT-IMPLEMENTED
+
103 #:+HTTP-NOT-MODIFIED
+
105 #:+HTTP-PARTIAL-CONTENT
+
106 #:+HTTP-PAYMENT-REQUIRED
+
107 #:+HTTP-PRECONDITION-FAILED
+
108 #:+HTTP-PROXY-AUTHENTICATION-REQUIRED
+
109 #:+HTTP-REQUEST-ENTITY-TOO-LARGE
+
110 #:+HTTP-REQUEST-TIME-OUT
+
111 #:+HTTP-REQUEST-URI-TOO-LARGE
+
112 #:+HTTP-REQUESTED-RANGE-NOT-SATISFIABLE
+
113 #:+HTTP-RESET-CONTENT
+
115 #:+HTTP-SERVICE-UNAVAILABLE
+
116 #:+HTTP-SWITCHING-PROTOCOLS
+
117 #:+HTTP-TEMPORARY-REDIRECT
+
118 #:+HTTP-UNSUPPORTED-MEDIA-TYPE
+
120 #:+HTTP-VERSION-NOT-SUPPORTED
+
121 #:ABORT-REQUEST-HANDLER
124 #:ACCEPTOR-ACCESS-LOG-PATHNAME
126 #:ACCEPTOR-DISPATCH-REQUEST
127 #:ACCEPTOR-ERROR-TEMPLATE-DIRECTORY
128 #:ACCEPTOR-INPUT-CHUNKING-P
129 #:ACCEPTOR-LOG-ACCESS
130 #:ACCEPTOR-LOG-MESSAGE
131 #:ACCEPTOR-MESSAGE-LOG-PATHNAME
133 #:ACCEPTOR-OUTPUT-CHUNKING-P
134 #:ACCEPTOR-PERSISTENT-CONNECTIONS-P
136 #:ACCEPTOR-READ-TIMEOUT
137 #:ACCEPTOR-REPLY-CLASS
138 #:ACCEPTOR-REQUEST-CLASS
140 #-
:hunchentoot-no-ssl
#:ACCEPTOR-SSL-CERTIFICATE-FILE
141 #-
:hunchentoot-no-ssl
#:ACCEPTOR-SSL-PRIVATEKEY-FILE
142 #-
:hunchentoot-no-ssl
#:ACCEPTOR-SSL-PRIVATEKEY-PASSWORD
143 #:ACCEPTOR-STATUS-MESSAGE
144 #:ACCEPTOR-WRITE-TIMEOUT
164 #:CREATE-FOLDER-DISPATCHER-AND-HANDLER
165 #:CREATE-PREFIX-DISPATCHER
166 #:CREATE-REGEX-DISPATCHER
167 #:CREATE-STATIC-FILE-DISPATCHER-AND-HANDLER
168 #:DEFAULT-DOCUMENT-DIRECTORY
169 #:DEFINE-EASY-HANDLER
170 #:DELETE-AUX-REQUEST-VALUE
171 #:DELETE-SESSION-VALUE
172 #:DISPATCH-EASY-HANDLERS
179 #:HANDLE-INCOMING-CONNECTION
180 #:HANDLE-IF-MODIFIED-SINCE
192 #:HUNCHENTOOT-CONDITION
194 #:HUNCHENTOOT-WARNING
195 #:INITIALIZE-CONNECTION-STREAM
197 #:MAYBE-INVOKE-DEBUGGER
201 #:ONE-THREAD-PER-CONNECTION-TASKMASTER
214 #:RECOMPUTE-REQUEST-PARAMETERS
223 #:REPLY-EXTERNAL-FORMAT
224 #:REPLY-EXTERNAL-FORMAT
*
231 #:REQUIRE-AUTHORIZATION
232 #:RESET-CONNECTION-STREAM
234 #:RESET-SESSION-SECRET
244 #:SESSION-COOKIE-NAME
245 #:SESSION-COOKIE-VALUE
252 #:SESSION-REMOTE-ADDR
261 #:SINGLE-THREADED-TASKMASTER
262 #-
:hunchentoot-no-ssl
#:SSL-ACCEPTOR
269 #:TASKMASTER-ACCEPTOR
275 (defpackage :simple-hunchentoot
277 (:export
#:start-server