Commit Graph
92 Commits
Author SHA1 Message Date
pmai e7620a0a52 Remove unused CVS keywords, regularize package definition/references. 2012-11-18 02:33:17 +01:00
pmai 6d6121bcca Remove unused MD5 implementation, which is stand-alone now anyway. 2012-11-18 02:29:23 +01:00
pmai 57f5619329 Add initial support for SBCL, currently restricted to SERVE-EVENT. 2012-11-18 02:12:43 +01:00
pmai a5585fac6c Change from MK-DEFSYSTEM to ASDF, rename .cl to .lisp files. 2012-11-18 01:19:00 +01:00
pmai 4cfba7a75c Add standard gitignore. 2012-11-18 00:33:21 +01:00
pmai 838fe54e2d Added a couple of simple test files for documentation purposes. 2003-02-27 16:00:28 +00:00
pmai 683777fe1e Minor fix. 2003-01-29 04:39:35 +00:00
pmai f405214372 Fixed a stupid thinko in the padding routine, as reported by Edi Weitz.
Since the code in question was needlessly convoluted, rewrote those
sections to make them clearer.  Added another test-suite to test whether
padding works correctly, when compared with md5sum.
2003-01-25 00:18:27 +00:00
pmai cfa3842808 Added md5.lisp file to base module. 2001-11-15 00:31:01 +00:00
pmai 5dd805b54c Added ID comment, and fixed doc-string for finalize-md5-state. 2001-11-15 00:16:07 +00:00
pmai 15e54c4d35 This fixes the code to properly work when being loaded uncompiled into
CMU CL, as noted by John Wiseman.
2001-11-15 00:13:03 +00:00
pmai 5fda6d7244 First production-quality release:
o This takes on board comments by Raymond Toy, and drops optimizations
  and implementation-specific cruft that isn't really needed.
o The code has been reorganized quite a bit, to better expose the
  structure
o md5-checksum is renamed to md5-digest.
o Added doc-strings and comments where necessary, added documentation to
  the file comment.
o Added md5sum-sequence function.
o Fixed restriction on <512MB of input, we now support unlimited amounts
  of input, as required by the spec.  Since this causes one possibly
  bignum addition per call to update-md5-block, the user can revert
  to the old behaviour by putting :md5-small-length on *features* prior
  to compiling/loading the code.
o Added test suite that is contained in Appendix A.5 of RFC 1321.
2001-11-15 00:07:50 +00:00
pmai 401b7bc17f First release that works on big-endian CMU CL releases. Should also work
on other ANSI CL implementations, but quite suboptimally, of course.
2001-11-14 23:53:48 +00:00
pmai 1c4108cfb4 Actually this release was the first public release. It switches over to
using kernel:32bit-logical-* instead of the silly signed-byte acrobatics
that were previously needed to get the various logical and ash operations
optimized.  Also added rudimentary file-comment.
2001-11-14 23:46:29 +00:00
pmai 9b71d00d16 Initial public release, which moved to simple-array representation of
working state (md5-regs).  This is the first release that doesn't cons
for normal operations.  Posted on cmucl-help on 2001-11-09.
2001-11-14 23:39:20 +00:00
pmai 59a41db8e8 Initial version of MD5 code, using multiple-values, which we abandoned
due to boxing on each call to update-md5-block (might have been caused
by missing inline declaration for that function).
2001-11-14 23:36:03 +00:00
pmai 66a41d91a3 Bumped version number to reflect roll-out of Netscape Proxy-Bug fix. 2001-05-23 21:58:09 +00:00
pmai cb09d17df0 Added call to update-entity-headers, so that all response entities
will get updated before writing out the response, not only those that
happened to be generated via the access-resource standard method.
This might lead to redundant calls to update-entity-headers, which
might be costly, so maybe some form of last-updated time-stamp should
be kept so that update-entity-headers isn't called more than once a
second.

This fixes the problem we had with Netscape's Proxy-Server:  Since
update-entity-headers wasn't called on e.g. redirector-resource
responses, those didn't contain content-length headers.  This
triggered a bug in Netscape's Proxy-Server (version 3.5 at least),
which kept the connection open even after the explicit close by
CLASH.
2001-05-23 21:52:53 +00:00
pmai cab25c41ba Changed date-parsing routines to be less strict when parsing date
strings, i.e. to accept junk after a valid date specification.  This
is in order to support e.g. Netscape 2.x upto 4.7x, which illegally
send an added length field in the If-Modified-Since header, i.e.:

If-Modified-Since: Wed, 28 Mar 2001 05:40:23 GMT; length=5912

This unconforming behaviour is known since 1996, yet nothing ever
changed.  How sad.
2001-04-13 11:00:50 +00:00
pmai abd1f1ca5b Backed out the last, misguided change to entity.cl (what was I
thinking?) and rewrote the whole outbound entity stuff instead.  This
fixes some of the problems, but the whole entity stuff really needs a
complete rethink, especially w.r.t. integrating inbound and outbound
entities.  Maybe we should drop "intelligent", persistent entities
completely, and revert to dumb, transient entities, with the
intelligence lying in the resources.
2001-04-07 17:24:40 +00:00
pmai c8b0a61a1d Let file-entities recognize the file-write-date as the last-modified
date.
2001-04-07 14:32:26 +00:00
pmai da21cd5604 Bumped version number to 1.8.5, to indicate our progress towards
release 2.0.0.
2001-04-06 01:42:47 +00:00
pmai c29758236a Rewrote export-directory to support automatic generation of directory
index-redirectors, fixed lambda-list to use keyword arguments, and
added support for user-selectable entity-class.
2001-04-06 01:42:15 +00:00
pmai d432e89e49 Corrected server-product-info to show real CLASH version number. 2001-04-06 01:40:25 +00:00
pmai 995fbf131b Corrected logging of time-zone stuff. 2001-04-06 01:39:49 +00:00
pmai 69f36101c9 A session-leader doesn't have to be a resource anymore. Added
session-leader-resource for those relying on the old behaviour.
2001-03-28 05:49:10 +00:00
pmai 9eeeeda3c7 Changed print-object on URLs to take advantage of *read-eval*, when
available.
2001-03-28 02:55:33 +00:00
pmai 1301101ae6 Added indentation pattern for `process-http-headers'. 2001-03-27 14:01:30 +00:00
pmai 5c57e50d07 Extensive rewrite of parsing routines, most parsable headers in
requests and entities are now parsed.  Furthermore the whole
request-entity handling has been changed to allow lazy parsing, parsed
entity headers, and flexible choice of entities.  This is all to
support the handling of MIME multipart entities, especially
multipart/form-data.  The current revision is a first cut, and some
further rewrites are needed.
2001-03-27 14:00:34 +00:00
pmai 384e68fd84 Moved over to three-part version numbering scheme. 2001-03-25 00:22:07 +00:00
pmai 0aab94aa24 Added code to add ourself to the CMU CL' startup herald.
Added option to start-http-listener to specify the use of SO_REUSEADDR
as a socket option.
2001-03-20 23:40:33 +00:00
pmai 9d215d8f1d Added version numbering scheme for CLASH releases. 2001-03-20 23:37:10 +00:00
pmai 8802eede9c Flushed superfluous `pathname-filename'. 2001-03-19 03:52:54 +00:00
pmai e8ac99790e Updated copyright date. 2001-03-07 00:32:56 +00:00
pmai 8160dc61cf Added with-query-args' as the equivalent of with-form-data' for
query url requests.  This is probably a stop-gap measure, until a more
general context processing framework (including session and validation
data) has been designed and implemented.
2001-02-08 18:57:55 +00:00
pmai e265243a53 Fixed a small typo in the http-server/0.9 error handler introduced by
last commit.
2001-02-07 14:10:30 +00:00
pmai f29dd3319e Slight optimization of entity rendering. 2001-02-07 14:08:09 +00:00
pmai a803c62958 Improved error response generation. We now keep track of the last
request read on a connection, which allows us to generate the correct
type of response in case of an error which is handled through
`handle-server-error'.

Also added code to correctly escape text that is inserted into error
messages.  This is also a first step towards preventing cross-scripting
attacks through CLASH, although most of the code still has to be audited
for unfiltered passing through of user-supplied text.
2001-02-07 14:06:14 +00:00
pmai 57583b37ce Various fixes to case-dependent code, in order to allow CLASH to work
with Allegro CL in "modern" mode.  Although we don't think that
"modern" mode is the correct approach to case-sensitivity in CL, the
changes we made should also make it easier to work in ANSI-compliant
implementations/modes, with all the settings for readtable-case.  Note
though that this is a first best effort attempt, and so further
case-ification bugs might still remain.  YMMV.
2001-02-07 13:31:29 +00:00
pmai 88ec83c086 Optimized buffer code a bit. 2001-02-07 13:24:31 +00:00
pmai 7d628b92da Optimized read-http-line a bit in order to reduce gratuitous consing. 2001-02-07 13:23:04 +00:00
pmai 352f8b8113 Changed default server-product-info to include the Lisp implementation
as a comment.
2001-02-07 13:19:06 +00:00
pmai a7ebbf08b3 Added required (require "comm") for LWL and added initialize-clash so
as to bring LWL support up to par with other ports.
2000-10-30 23:06:32 +00:00
pmai 5aa138df6d Added access authorization framework, added port to ACL 5. ACL 5
seems to need eval-when wrapped around certain defconstant forms when
used in the same file (maybe because of compiler-macros).
2000-10-30 23:05:23 +00:00
pmai 1853c6d6f2 Added access authorization framework that allows for flexible
validation of accesses.
2000-10-30 23:03:00 +00:00
pmai 6811f947d6 Added tool to generate ChangeLog files from CVS log entries. This
originated with MaiSQL.
2000-10-09 23:15:35 +00:00
pmai 008e29e54d Added new files, and changed to work with the new MK-DEFSYSTEM, which
doesn't import defsystem into the CL-USER package.  Also removed some
cruft.
2000-10-09 23:14:13 +00:00
pmai 4a4feed22b Added exports for new functionality and some older server and
connection stuff, as well as the driver functions
`start-http-listener' and `initialize-clash'.
2000-10-09 23:13:06 +00:00
pmai 7dde13fd51 Added some user utility functions and macros from MASH. 2000-10-09 23:05:02 +00:00
pmai 5e8ff59588 Adjusted `standard-response-body' to take the server as an additional
parameter.  This is part of an ongoing drive to restructure standard
message generation to be more modular.  Still lots to be done...
2000-10-09 22:53:46 +00:00