Commit Graph

744 Commits

Author SHA1 Message Date
vibr 932f03a638 *fix two typos in RegExps
*better comments for PARSE-URI, SPLIT-PATH
*make SPLIT-PATH really accept PARSE-URI's return values
*restructure record-type HTTP-URL
*new procedure PARSED-URI->HTTP-URL
*rewrite PARSE-HTTP-URL to use PARSE-URI and PARSED-URI->HTTP-URL
*remove out-dated comments
*remove out-dated procedure PARSE-HTTP-URL-STRING
*remove DEFAULT-HTTP-SERVER (relict of server record-type)
*rewrite HTTP-URL->STRING
*rename HTTP-URL->STRING to HTTP-URL->URI-STRING
2004-10-11 17:01:32 +00:00
vibr fe08e779f0 remove record-type server and associated procedures
(being a relict of parsing of general URIs)
2004-10-11 09:05:24 +00:00
vibr 41d3e29766 *add comment on how ambiguous definition of Request_URIs in RFC 2616
is 'solved' by uri-parser

*add comment on record-type server and associated procedures
2004-10-11 08:54:41 +00:00
vibr a1e79c4fc7 parse HTTP 1.1 URIs:
* add RegExps
* add proc PARSE-URI
* add proc SPLIT-ABS-PATH
2004-10-06 19:10:49 +00:00
vibr d9950a9b0b remove PARSE-URI from exports of module uri 2004-10-06 19:08:19 +00:00
vibr 2cb8502f9e remove uri-parser PARSE-URI
(completely out-of-date, has never seen RFC 2396)
2004-10-06 13:33:45 +00:00
vibr 649f374e8b add comment on uri-parser 2004-10-06 13:29:06 +00:00
vibr 53e3e9672f adapt to RFC terminology:
rename PARSE-HTTP-SERVERS-URL-FRAGMENT to PARSE-REQUEST-URI
rename variable uri-string to request-uri
2004-10-05 10:24:29 +00:00
vibr 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
2004-08-15 12:44:55 +00:00
vibr 38f2594ba5 emit less newlines 2004-08-15 12:40:06 +00:00
vibr 35565068fb char-set:blank = LWS from RFC 2616 (after folding) 2004-08-15 12:02:36 +00:00
vibr ffac0ebcac simplified get-numeric-field-value (now uses string-trim-both),
adapted packages.scm
2004-08-15 11:49:15 +00:00
vibr 8bf71fc3a5 get-numeric-field-value: correct error message 2004-08-15 11:06:39 +00:00
vibr 44100cbf5e Added type NO-BODY for responses which must not contain a message-body
(201, 304, 404). Added export of type-predicate no-body?.  Adapted
SEND-HTTP-RESPONSE to check for no-body responses. Extended
MAKE-ERROR-RESPONSE to make responses 201, 304, 404.
2004-08-15 11:03:28 +00:00
vibr 0bb601a0e0 make server-generated webpages XHTML 1.0 Strict: emit prolog
(not tested)
2004-08-14 22:08:07 +00:00
vibr 549594bef4 with-tag* outputs no newlines 2004-08-14 22:05:06 +00:00
vibr ef48e4e5ae make-host-name-handler now uses get-header from sunet-utilities.scm 2004-08-14 22:03:19 +00:00
vibr 8cf841bad3 rename get-content-length to get-body-length-from-content-length
move get-body-length-from-content-length and get-numeric-field-value
from seval.scm to sunet-utilities.scm

adapt packages.scm
2004-08-14 21:58:11 +00:00
vibr f8559581d2 GET-NUMERIC-FIELD-VALUE now uses GET-HEADER from utilities.scm
and returns #f if GET-HEADER does so

adapted GET-CONTENT-LENGHT
2004-08-14 21:18:12 +00:00
vibr aea0e950ba removed definition of GET-HEADER which conflicted with definition of
GET-HEADER in utilities.scm and wasn't exported anyway
2004-08-14 20:54:57 +00:00
vibr ffbe3b21cd factor out parsing of content-length header value -> GET-CONTENT-LENGTH
generalize parsing of content-length header value to parse all header field
values of the form 1*DIGIT -> GET-NUMERIC-FIELD-VALUE

check for valid content-length header in SEVAL before answering 200

TODO: SEVAL is still buggy for request with invalid _body_
2004-08-14 19:07:23 +00:00
vibr 9fcfcf36f0 add comments explaining why seval-handler is buggy 2004-08-14 15:47:29 +00:00
vibr 06ec0f0293 server-generated webpages -> XHTML 1.0 Strict:
add XML namespace declaration to html element
2004-08-13 15:49:19 +00:00
vibr 6969b80206 - move XHTML stuff from responses.scm to htmlout.scm
- new function EMIT-PROLOG
- define XML namespace declaration
- adapt macro %hack-attr-elt: special treatment of xmlnsdecl-attr
(this is not nice, but the only alternative was hard-coding the XML
namespace declaration into the various handlers)
- element names -> lower case
2004-08-13 15:46:53 +00:00
vibr 96f0ae41d5 -move XHTML stuff from responses.scm to htmlout.scm
-don't use WRITE-STRING with \n (\n within strings is not in R5RS),
instead use FORMAT with ~%
-use EMIT-PROLOG and EMIT-TAG from htmlout.scm
2004-08-13 15:37:31 +00:00
vibr c089e26e96 move XHTML stuff from responses.scm to htmlout.scm, adapt
packages.scm
2004-08-13 15:34:00 +00:00
vibr a9ae5061d0 make server generated html pages XHTML 1.0 Strict:
element names -> lower case
2004-08-13 15:26:50 +00:00
vibr 4d7f10960c fix typo 2004-08-11 19:38:16 +00:00
vibr 7b6f5675af allow header in 405 answers 2004-08-11 14:53:11 +00:00
vibr 880a05229c -adapt calls of make-error-response
-allow header in 405 answers
-answer 501, not 405, for unimplemented/unrecognized methods
2004-08-11 14:51:51 +00:00
vibr 5f64e72cd0 make-error-response:
more meaningful error description: show parsed uri
2004-08-11 14:48:11 +00:00
vibr 3abe557a86 make-error-response in response.scm uses http-url->string 2004-08-11 14:45:32 +00:00
vibr 8b09f2b338 -adapt calls of make-error-response
-answer 501, not 405, for unimplemented/unrecognized methods
2004-08-11 12:28:46 +00:00
vibr f22f43ccd1 make-error-response:
use stuff in req where req isn't #f
2004-08-11 10:17:14 +00:00
vibr 2ee378aea9 add comments:
-make clear difference between http-error and
fatal-syntax-error
-refer to make-error-response for args of http-error
2004-08-11 09:20:31 +00:00
vibr a3dd880c7a +catch calls of make-error-response with too few arguments 2004-08-10 14:26:50 +00:00
vibr 4b37826de8 +comment/question 2004-08-10 14:25:55 +00:00
vibr 1bdac52ad6 adapt calls of make-error-response: remove tautologous description of errors 2004-07-30 22:26:50 +00:00
vibr 7c7be57a22 changes to make-error-response:
(1)no special treatment of first "optional" argument
- rationale: a different number of args is required depending on the
specific error code

(2)use close-html to write out all _effectively_ optional args

(3)generated html-pages are valid XHTML 1.0 Strict

(4)require header Allow for 405 errors

(5)more exact descriptions of errors in generated html-pages

TODO: handle calls of make-error-response with too little args
2004-07-30 22:25:03 +00:00
vibr 63e4761c58 adapt calls of make-error-response:
no URI header field in 1.1
2004-07-29 16:09:31 +00:00
vibr 5e14a326b9 adapt make-error-response:
- no URI header field in 1.1
- new 30x status codes in 1.1
2004-07-29 16:08:30 +00:00
vibr f96d93b355 re-commit revision 1.22, this time to branch http-1-1 2004-05-27 14:47:46 +00:00
vibr e4a887d491 Revert last commit. 2004-05-24 15:54:58 +00:00
vibr a2a656ad99 1.0->1.1: updated status codes 2004-05-24 15:42:13 +00:00
vibr 1bd77d4b10 added comments 2004-05-17 16:42:45 +00:00
vibr 96216b243d answer HTTP/1.0 for requests with unknown HTTP-version 2004-05-17 16:39:17 +00:00
interp 7a04cf81d5 Omit warning message if INFOPATH is not set. 2004-05-12 19:28:17 +00:00
interp e13ad264bc Omit warning message if MANPATH is not set. 2004-05-12 19:28:04 +00:00
sperber 0db253e1a1 Add hack for the benefits of ftpds on AFS directories, to enable
anonymous-upload directories:

We don't list a directory unless the Unix permissions would allow us
to.
2004-03-26 13:46:56 +00:00
mainzelm 6cf0413f98 Export a whole bunch of procedures from the low-level interface of the
DNS library.
2004-03-24 20:53:19 +00:00
mainzelm 222f5c5052 Return 'unsupported-message-type if message type is unknown, return
'unsupported-message-class if message class is unknown.

This makes it possible to parse replies that contain IP6 addresses in
the additional section.
2004-03-24 20:52:12 +00:00
mainzelm a65a5c5f86 Fixed severe bug in WITH-LOCK. Noted by Taylor Campbell 2004-03-16 07:30:14 +00:00
mainzelm f328c0537f In copy-ascii-port->port, get length of line only after checking for EOF. 2004-02-17 16:07:22 +00:00
mainzelm a65dbd70e4 On restart, set the file port to unbuffered mode before seeking to
work around scsh limitiation.
2004-02-10 12:27:57 +00:00
interp 1fe7ec1e6f Moving SUrflets webserver to top level,
adjusting startup scripts and documentation accordingly.
Replaced index.html (small & no content) by index2.html.
2004-02-02 17:49:37 +00:00
mainzelm ed74e197ee The annotation of an address is not put into the URL so URI escaping
it is superfluous and wrong.
2004-02-02 17:37:01 +00:00
mainzelm b65323b81b URI escape address annotations 2004-02-02 10:24:05 +00:00
mainzelm ff5bca073d Added a missing port argument. 2004-02-02 10:22:21 +00:00
mainzelm 2066f225bf Fixed parsing of comments in resolv.conf 2004-02-02 10:21:20 +00:00
mainzelm cf8911921d Fixed bug in send-receive-message-tcp where a WITH-HANDLER was called
with erroneous arguments.
2004-01-27 16:29:42 +00:00
interp 5ece0109b1 another todo task (tell about cygwin) 2004-01-22 00:48:11 +00:00
interp 63d708b219 Move SUrflet howto into main documentation.
Merge 2 decls.tex together.
Drawback: can't use url package anymore.
2004-01-17 01:35:16 +00:00
interp 25e03fe5e4 More example files for the surflet howto. 2004-01-15 03:47:39 +00:00
interp 721fee4e07 More howto. Draft like version. 2004-01-15 03:46:27 +00:00
interp 05a17e07d7 Use own decls.tex for HowTo. Might merge with doc/decls.tex in the future. 2003-11-21 19:10:12 +00:00
interp 8baad2666f Initial version of How To Use SUrflets.
Needs still some additions.
2003-11-21 19:09:36 +00:00
interp 52e0a557e2 Some example files mentioned in the howto. 2003-11-21 19:09:12 +00:00
interp 07ef3aa5c2 SSAX (and we) need this patch to work. 2003-11-21 19:05:54 +00:00
interp 25fa9fbca5 Make it a bit more portable.
Change default port from webcache to http-alt.
2003-11-21 19:05:02 +00:00
interp 73dfefd439 Exclude some LaTeX files 2003-11-21 19:03:54 +00:00
interp c2109e2e67 Adjust MAKE-RESUME-URL and
DEFAULT-MAKE-SESSION-TIMEOUT-TEXT to surflets that are
in subdirectories.
2003-11-18 20:25:59 +00:00
mainzelm 217596b510 Return text/css for files with .css extension. 2003-10-24 08:16:07 +00:00
mainzelm a5d9b210f0 Fixed wrong parentheses in FTP-APPEND 2003-10-21 05:44:56 +00:00
cresh 6f52781aa6 * added dns-check-nameservers
* fixed alists in send-receive-message-tcp
* fixed and added documentation
2003-08-19 14:36:08 +00:00
interp c42a467ce5 Sorry for the messed up previous commits. Here are the collected messages:
Insert forgotten point to argument list of MAKE-SELECT, making the last
arguments optional. This was the reason for a "bug" in admin-surflet.scm.

Remove bug from MAKE-SELECT;
  MAKE-SELECT used the wrong argument name in calls to
  make-multiple-select or make-single-select, respectively.
2003-08-01 18:00:51 +00:00
interp 0ffbe611dc Sorry for the messed up previous commits. Here are the collected messages:
* Use "Internal Error" instead of "Bad Gateway" as the surflet handler is not a
gateway.
* Thus, rename BAD-GATEWAY-ERROR-RESPONSE to BAD-SURFLET-ERROR-RESPONSE.
Move SESSION-ADJUST-TIMEOUT from SEND/SUSPEND to RESUME-URL where it belongs to.
Let SET-SESSION-DATA! raise an error, if the instance isn't alive anymore (instead of returning #t or #f).
Add small comment to RESET-SESSION-TABLE!
Remove unused variable in DELETE-CONTINUATION!
Remove superfluous FILE-NAME-NON-DIRECTORY from RESUME-URL, as RESUME-URL-IDS uses this anyway.
Small change in error message in MAKE-HTTP-RESPONSE.
2003-08-01 17:59:27 +00:00
interp 64ef783d8d `cat ~/diff-sunet/$num/log` 2003-08-01 17:41:11 +00:00
interp 92dc531fa2 `cat ~/diff-sunet/$num/log` 2003-08-01 17:41:06 +00:00
interp d134f033d6 `cat ~/diff-sunet/$num/log` 2003-08-01 17:41:02 +00:00
interp c0773d8e55 `cat ~/diff-sunet/$num/log` 2003-08-01 17:40:58 +00:00
interp 5214f767d7 `cat ~/diff-sunet/$num/log` 2003-08-01 17:40:49 +00:00
interp 4673e0012f `cat ~/diff-sunet/$num/log` 2003-08-01 17:40:44 +00:00
interp 6f27658c68 `cat ~/diff-sunet/4/log` 2003-08-01 17:36:18 +00:00
interp f106614a75 `cat ~/diff-sunet/3/log` 2003-08-01 17:33:21 +00:00
interp d26c61799b Rename callback-functor to callback-function. 2003-08-01 15:02:43 +00:00
mainzelm 0656c89fca + Moved WITH-DATA-CONNECTION closer to call to LS to avoid stray connections in case of an error
+ Call surrounding exception handler in WITH-DATA-CONNECTION

+ Add arguments to two calls of escape proecures
2003-07-28 07:50:16 +00:00
interp d7fb759988 Assure at least one digit for each ID in regexp for cont-URL. 2003-07-24 09:18:53 +00:00
interp 32a2473d2d Remove wrong multiple value return from RESUME-URL-SURFLET-NAME 2003-07-24 09:17:05 +00:00
interp afe38a4147 Add task callback-functor. 2003-07-23 14:07:22 +00:00
interp 0f91f5f1c4 Remove done tasks. 2003-07-23 14:06:33 +00:00
interp d34380c1fa what we have to do 2003-07-23 14:05:29 +00:00
interp 2cc9c209f0 Drop WITH-REAL-INPUT-FIELD. Use INPUT-FIELD-REAL-INPUT-FIELD instead (and instead of CADR). 2003-07-23 13:45:34 +00:00
interp 4ec94f293e Remove superfluous reset in RESUME-URL. 2003-07-21 07:13:50 +00:00
interp 2e3b217145 Remove accidently commited code. 2003-07-18 16:10:57 +00:00
interp 2067f77670 Remove surflet-path bug in SURFLET-HANDLER.
The surflet-path could be given either explicitly or by options-structure.
This introduced an unexpected behavior: the explicitly given surflet-path
argument was completely ignored when options were given.
Now we accept only one argument to SURFLET-HANDLER that must be an option,
like HTTPD does it.
2003-07-18 15:06:53 +00:00
interp 0a510b7c76 Rename SELECT-MULTIPLE-TRANSFORMER to MULTIPLE-SELECT-TRANSFORMER to make things clearer. 2003-07-15 14:39:55 +00:00
interp 3d5a92eb44 Renamen MAKE-ADDRESS-CONSTRUCTOR to MAKE-ADDRESS-RECORD to make things clearer. 2003-07-15 14:06:17 +00:00
interp 0cfc9491d9 Use 'hidden' as internal type of hidden-fields. 2003-07-15 14:05:22 +00:00
interp 2ff183fa28 Move definition of deprecated MAKE-ANNOTATED-SELECT behind the definition of MAKE-SELECT. 2003-07-14 17:33:37 +00:00
interp b532f8a991 Minor change in FIND-IMAGE-BUTTON-COORDINATE. 2003-07-14 09:10:36 +00:00