c2c01e9f4c
Added functionality for dnsd: * some new auxiliary functions to deal with FQDNs. * better support for TXT- and HINFO-Ressource-Records. * extensions to the message parser like message-compression with mc-message->octets
nofreude2006-11-12 17:48:36 +00:00
28cd440b4e
Re-implement session timeouts using a hash table mapping session ids to timeouts and let the surveillance thread walk the table to find outdated surflets. The previous implementation was nothing but bogus.
mainzelm2006-08-02 15:23:32 +00:00
8a2351a190
Fix handling of session timeouts by using the session-id as the only key.
mainzelm2006-08-01 15:19:19 +00:00
ef819fa581
Add structure surflets/send-xml' which provides send-xml/finish' and `send-xml/suspend'. These functions produce XML output rather than HTML.
eknauel2006-07-10 12:02:39 +00:00
91da112ec1
Use Sunterlib's rt-modules implementation instead of our own.
mainzelm2005-05-03 12:39:31 +00:00
bccf27785d
rename READ-AND-DISCARD-TRAILER to DISCARD-TRAILER for naming consistency
http-1-1
vibr2005-04-20 11:40:23 +00:00
d06479ee4b
adapt httpd-handler-lib-interface and httpd-handler structure to implementation of chunked transfer coding in handler-lib
vibr2005-04-16 20:49:29 +00:00
15049e1c58
implementing chunked transfer coding: *new proc READ-MESSAGE-BODY: a high-level interface for reading in message bodies (should be used by all handlers) *new proc READ-ORDINARY-BODY: reads in message bodies with no transfer coding applied *new proc READ-CHUNKED-BODY: reads in message bodies in chunked transfer coding *new proc GET-CHUNK-SIZE: reads in and parses the size of the next chunk in a chunked message body *helper procs READ-AND-DISCARD-TRAILER and DISCARD-LINE-TERMINATOR *minor changes to GET-NUMERIC-FIELD-VALUE (cosmetic)
vibr2005-04-16 20:45:33 +00:00
555d52806d
modify seval-handler: *don't use concept of reader-writer-body (which is broken), use writer-body instead -> seval-handler now works correctly *use new interface READ-MESSAGE-BODY from handler-lib for reading in the message body *rename READ-REQUEST-SEXP to PARSE-REQUEST-SEXP *catch errors thrown by READ in PARSE-REQUEST-SEXP to answer 400 instead of 500 for requests whose message body doesn't contain a valid s-expression
vibr2005-04-16 20:33:35 +00:00
36db985453
in PARSE-HTTP-REQUEST: catch errors thrown by READ-RFC822-HEADERS and answer 400 instead of 500 for requests with bad headers
vibr2005-04-16 20:22:41 +00:00
0554b2d494
move copyright declarations to COPYING
vibr2005-04-16 20:19:32 +00:00
630c77d83f
syntax of comma separated list which is the field value of the Transfer-Encoding header: needs a single SP less
vibr2005-04-15 15:50:30 +00:00
d174ad3954
add a copy of the regexp definitions HEX and ESCAPED from structure url to resolve mutual dependency
vibr2005-04-15 15:34:48 +00:00
6c80f06dd6
file handler-lib.scm was initially added on branch http-1-1.
vibr2005-04-15 15:23:32 +00:00
184c284c4a
move these procs from lib/sunet-utilities to httpd/handler-lib: GET-SOCKET-HOST-STRING GET-NUMERIC-FIELD-VALUE GET-BODY-LENGTH-FROM-CONTENT-LENGTH CHUNKED-TRANSFER-CODING? reason: they are httpd-specific in using httpd's data types
vibr2005-04-15 15:23:32 +00:00
d915722a9b
implementing chunked transfer coding: * new predicate CHUNKED-TRANSFER-CODING? tests wether a request's entity body is sent in chunked transfer-encoding
vibr2005-04-15 12:31:43 +00:00
4c1e1a16a8
trivia: towards a more modern HTML: closing slash within empty HTML elements *new: EMIT-EMPTY-TAG *use EMIT-EMPTY-TAG instead of EMIT-TAG where appropriate
vibr2005-04-14 21:15:21 +00:00
e8dc69b745
we must send a "Connection: close" header as long as we don't support persistent connections
vibr2005-04-14 19:17:16 +00:00
db826a9c1f
add comment explaining why the concept of http-reader-writer-body (which is used by the seval-handler only) doesn't work
vibr2005-04-14 15:18:54 +00:00
f605367c1a
answer 400 (Bad Request) for 1.1-Requests which don't include a Host header: *new proc CHECK-HOST-HEADER
vibr2005-04-13 20:53:53 +00:00
453a7cdde6
correct call of http-error in MAKE-HOST-NAME-HANDLER
vibr2005-04-13 20:48:57 +00:00
97f730075d
trivia: formatting of error responses
vibr2005-04-13 20:46:40 +00:00
40d7c923a2
answer 505 (Version not supported) for requests with major version > implemented version: *new proc CHECK-MAJOR-HTTP-VERSION *new case in MAKE-ERROR-RESPONSE
vibr2005-04-13 19:35:22 +00:00
9342e0e593
*replace call of PARSE-REQUEST-URI (relict of old URL parser) with call of URL-STRING->HTTP-URL
vibr2005-04-06 22:45:48 +00:00
2dcdd41ed9
*reinsert lost line *replace calls of UNESCAPE-URI (relict of old URL parser) with UNESCAPE *simplify URI-HAS-PROTOCOL?
vibr2005-04-06 22:43:53 +00:00
512ccfaed3
removal of old URL parser relicts: *replace calls of UNESCAPE-URI with UNESCAPE *remove imports of uri package where no longer needed
vibr2005-04-06 22:41:10 +00:00
ed53670895
*add comment explaining why we don't need to support "*" and authority Request-URIS *comment on when unescaping is done *don't unescape query when building a http-url record *don't escape query when unparsing a http-url record. *remove PARSED-URI->HTTP-URL, integrate its code into URL-STRING->HTTP-URL *add dummy encoder ESCAPE-NOT-UNRESERVED-CHARS
vibr2005-04-06 22:31:33 +00:00
745a123735
adapt code to remove calls of URI-PATH->URI (relict of old URL parser)
vibr2005-04-06 12:32:17 +00:00
61a63b4d4b
adapt URI-HAS-PROTOCOL? to new URL parser
vibr2005-04-06 11:59:05 +00:00
0de6fe79b4
replace calls of HTTP-URL->STRING (relict of old URL parser) with calls of HTTP-URL->URL-STRING
vibr2005-04-06 11:44:28 +00:00
17a46a7e71
rename URI-STRING->HTTP-URL to URL-STRING->HTTP-URL
vibr2005-04-06 11:35:37 +00:00
5836ae567b
export HTTP-URL-PATH->PATH-STRING in url-interface
vibr2005-04-05 18:45:53 +00:00
9399bf9397
remove MY-REPORTED-PORT (relict of old URL parser)
vibr2005-04-05 18:45:02 +00:00
da10de6309
add function HTTP-URL-PATH->PATH-STRING (unparses path in http-url record into string)
vibr2005-04-05 18:43:23 +00:00
e5c8cae17f
rename HTTP-URL->URI-STRING to HTTP-URL->URL-STRING
vibr2005-04-05 10:59:13 +00:00
1e93a6cb9f
rename PARSE-URI to PARSE-URL
vibr2005-04-05 10:50:12 +00:00
c3b855ae22
minor changes: *HTTP1.1 (this is wishful thinking) *we don't have a general URI parser, just a URL parser *typos *alles irdische hat einen namen
vibr2005-04-04 21:23:16 +00:00
3548b25c26
rename HTTP-URL-SEARCH to HTTP-URL-QUERY (adaption to restructured http-url type in url.scm)
vibr2005-04-04 21:13:35 +00:00
d0c64d371a
further restrict url-interface
vibr2005-04-04 21:10:05 +00:00
46645ccd58
*remove definition of PARSE-REQUEST-URI (relict of Olin's old URL parser) *use URI-STRING->HTTP-URL instead
vibr2005-04-04 21:07:55 +00:00
d864e4da80
correct reference in comment
vibr2005-04-04 20:57:36 +00:00
cf747a97b4
*add solution for mistake in RFC 2616 (where query part of Request-URIs is only allowed for absoluteURIs) *rename PARSE-HTTP-URL to URI-STRING->HTTP-URL
vibr2005-04-04 15:35:50 +00:00
ba78eba433
*add comment on another mistake in RFC 2616 (query part of Request-URIs only allowed for absoluteURIs) *add copy of Appendix A of RFC 2396 for convenience
vibr2005-04-04 13:36:54 +00:00
1ec6dc4f79
It's FTP-SET-TYPE! not SET-FTP-TYPE!
eknauel2004-12-21 08:46:05 +00:00
3d29fb1766
Bump version number to 2.1
mainzelm2004-10-26 07:48:08 +00:00
69948e9561
adapt definitions of interfaces and structures to new URI parsing framework
vibr2004-10-18 18:33:19 +00:00
ed1e4428c5
*move general procedures ESCAPE, UNESCAPE and their helper procs from url.scm to uri.scm -->Parser/Unparser for HTTP 1.1 URIs is now complete and resides in url.scm; Encoder/Decoder applicable to URIs in general resides in uri.scm. (All has been rewritten from scratch, next to nothing of Olin's code is left). <--
vibr2004-10-18 18:23:03 +00:00
584bfa2cdb
*work around scsh bug (?) in definition of charset UNRESERVED *new procs for encoding URIs: -general proc ESCAPE taking an RegExp representing forbidden chars as argument -specialized procs ESCAPE-SEGMENT, ESCAPE-QUERY *new helper proc ASCII->ESCAPED *use ESCAPE-SEGMENT and ESCAPE-URI in HTTP-URL->URI-STRING
vibr2004-10-18 17:35:40 +00:00
c48446ba7f
*remove ESCAPE-URI (didn't reliably differentiate between different portions of a URI) *move INT->HEXCHAR to url.scm
vibr2004-10-18 16:37:32 +00:00
44a8ef28be
*new procedure UNESCAPE (unescape URI-components using RegExps) *move HEXCHAR->INT from uri.scm to here *use UNESCAPE in PARSED-URI->HTTP-URL
vibr2004-10-14 17:18:24 +00:00
902a34ae01
really remove that POST-bindings-cache bug
interp2004-09-24 13:49:05 +00:00
306d104c5b
Fix broken startup procedure SERVER if called with no args.
interp2004-09-24 13:00:50 +00:00
f0ca612665
Remove bug that inhibited POST cache to shrink
interp2004-09-24 11:28:49 +00:00
d904121149
Fix typos and do some rephrasing.
interp2004-09-17 15:54:21 +00:00
cd22ab11d4
Corrected bug: SEVAL now generates a response-body even if the request's body isn't form-url encoded or doesn't contain a program
vibr2004-08-15 12:44:55 +00:00
38f2594ba5
emit less newlines
vibr2004-08-15 12:40:06 +00:00