Commit Graph

  • 531e905389 Modernize silly example somewhat. master pmai 2016-09-15 11:51:37 +02:00
  • 1395705040 Update silly example to be more useful. pmai 2016-09-15 11:33:00 +02:00
  • 0be606f7a0 Update LWL port to work on modern LispWorks. pmai 2016-09-15 11:32:28 +02:00
  • 9ee91852f9 Update copyright notice. pmai 2012-11-18 03:00:21 +01:00
  • 11c1828816 Add .gitattributes. pmai 2012-11-18 03:00:07 +01:00
  • e7620a0a52 Remove unused CVS keywords, regularize package definition/references. pmai 2012-11-18 02:33:17 +01:00
  • 6d6121bcca Remove unused MD5 implementation, which is stand-alone now anyway. pmai 2012-11-18 02:29:23 +01:00
  • 57f5619329 Add initial support for SBCL, currently restricted to SERVE-EVENT. pmai 2012-11-18 02:12:43 +01:00
  • a5585fac6c Change from MK-DEFSYSTEM to ASDF, rename .cl to .lisp files. pmai 2012-11-18 01:19:00 +01:00
  • 4cfba7a75c Add standard gitignore. pmai 2012-11-18 00:33:21 +01:00
  • 838fe54e2d Added a couple of simple test files for documentation purposes. pmai 2003-02-27 16:00:28 +00:00
  • 683777fe1e Minor fix. pmai 2003-01-29 04:39:35 +00:00
  • 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. pmai 2003-01-25 00:18:27 +00:00
  • cfa3842808 Added md5.lisp file to base module. pmai 2001-11-15 00:31:01 +00:00
  • 5dd805b54c Added ID comment, and fixed doc-string for finalize-md5-state. pmai 2001-11-15 00:16:07 +00:00
  • 15e54c4d35 This fixes the code to properly work when being loaded uncompiled into CMU CL, as noted by John Wiseman. pmai 2001-11-15 00:13:03 +00:00
  • 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. pmai 2001-11-15 00:07:50 +00:00
  • 401b7bc17f First release that works on big-endian CMU CL releases. Should also work on other ANSI CL implementations, but quite suboptimally, of course. pmai 2001-11-14 23:53:48 +00:00
  • 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. pmai 2001-11-14 23:46:29 +00:00
  • 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. pmai 2001-11-14 23:39:20 +00:00
  • 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). pmai 2001-11-14 23:36:03 +00:00
  • 66a41d91a3 Bumped version number to reflect roll-out of Netscape Proxy-Bug fix. pmai 2001-05-23 21:58:09 +00:00
  • 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. pmai 2001-05-23 21:52:53 +00:00
  • 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.: pmai 2001-04-13 11:00:50 +00:00
  • 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. pmai 2001-04-07 17:24:40 +00:00
  • c8b0a61a1d Let file-entities recognize the file-write-date as the last-modified date. pmai 2001-04-07 14:32:26 +00:00
  • da21cd5604 Bumped version number to 1.8.5, to indicate our progress towards release 2.0.0. pmai 2001-04-06 01:42:47 +00:00
  • 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. pmai 2001-04-06 01:42:15 +00:00
  • d432e89e49 Corrected server-product-info to show real CLASH version number. pmai 2001-04-06 01:40:25 +00:00
  • 995fbf131b Corrected logging of time-zone stuff. pmai 2001-04-06 01:39:49 +00:00
  • 69f36101c9 A session-leader doesn't have to be a resource anymore. Added session-leader-resource for those relying on the old behaviour. pmai 2001-03-28 05:49:10 +00:00
  • 9eeeeda3c7 Changed print-object on URLs to take advantage of *read-eval*, when available. pmai 2001-03-28 02:55:33 +00:00
  • 1301101ae6 Added indentation pattern for `process-http-headers'. pmai 2001-03-27 14:01:30 +00:00
  • 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. pmai 2001-03-27 14:00:34 +00:00
  • 384e68fd84 Moved over to three-part version numbering scheme. pmai 2001-03-25 00:22:07 +00:00
  • 0aab94aa24 Added code to add ourself to the CMU CL' startup herald. pmai 2001-03-20 23:40:33 +00:00
  • 9d215d8f1d Added version numbering scheme for CLASH releases. pmai 2001-03-20 23:37:10 +00:00
  • 8802eede9c Flushed superfluous `pathname-filename'. pmai 2001-03-19 03:52:54 +00:00
  • e8ac99790e Updated copyright date. pmai 2001-03-07 00:32:56 +00:00
  • 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. pmai 2001-02-08 18:57:55 +00:00
  • e265243a53 Fixed a small typo in the http-server/0.9 error handler introduced by last commit. pmai 2001-02-07 14:10:30 +00:00
  • f29dd3319e Slight optimization of entity rendering. pmai 2001-02-07 14:08:09 +00:00
  • 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'. pmai 2001-02-07 14:06:14 +00:00
  • 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. pmai 2001-02-07 13:31:29 +00:00
  • 88ec83c086 Optimized buffer code a bit. pmai 2001-02-07 13:24:31 +00:00
  • 7d628b92da Optimized read-http-line a bit in order to reduce gratuitous consing. pmai 2001-02-07 13:23:04 +00:00
  • 352f8b8113 Changed default server-product-info to include the Lisp implementation as a comment. pmai 2001-02-07 13:19:06 +00:00
  • a7ebbf08b3 Added required (require "comm") for LWL and added initialize-clash so as to bring LWL support up to par with other ports. pmai 2000-10-30 23:06:32 +00:00
  • 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). pmai 2000-10-30 23:05:23 +00:00
  • 1853c6d6f2 Added access authorization framework that allows for flexible validation of accesses. pmai 2000-10-30 23:03:00 +00:00
  • 6811f947d6 Added tool to generate ChangeLog files from CVS log entries. This originated with MaiSQL. pmai 2000-10-09 23:15:35 +00:00
  • 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. pmai 2000-10-09 23:14:13 +00:00
  • 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'. pmai 2000-10-09 23:13:06 +00:00
  • 7dde13fd51 Added some user utility functions and macros from MASH. pmai 2000-10-09 23:05:02 +00:00
  • 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... pmai 2000-10-09 22:53:46 +00:00
  • 932ce6a843 Added server-product-info' to provide the information for the Server response-header. Rewrote error handling code to provide more information in the body. Adjust read-request' to pass the connection to `parse-request', see changes in messages.cl. pmai 2000-10-09 22:52:09 +00:00
  • edbfd4eaeb Added `redirector-resource' from MASH. pmai 2000-10-09 22:47:16 +00:00
  • 214066236a Complete rewrite of nearly all list parsing routines. This handles quoted-strings in both key and values of key value pairs and in simple lists correctly. Also factored out all magic constants, added some stuff to make this halfway efficient (profiling to be done). This rewrite makes partition superfluous, maybe remove this from src/utility.cl. pmai 2000-10-09 22:46:24 +00:00
  • 12cd9563f8 Changed request object to carry a reference to the connection object instead of the stream, in our effort to reduce the passing around of streams. This is also necessary in order to allow request handlers to check for the address and/or hostname of the connection the request came in from. Changed `parse-request' accordingly. TODO: Rendering of messages should probably change over, too. pmai 2000-10-09 22:41:11 +00:00
  • c883fcadf6 Added ignore declarations to quiet the compiler. Added flushing of logfile so that the log on disk is always synced. pmai 2000-10-09 22:10:54 +00:00
  • ff709e014d Added ignore declaration to quiet the compiler. pmai 2000-10-09 22:10:01 +00:00
  • cdb9250ea2 Fixed small typo that didn't manifest itself. pmai 2000-10-09 22:09:25 +00:00
  • 0408a74b18 Added new condition for non-URL related parsing errors, used in parsing.cl. This needs further reworking, so that URL-related syntax errors are subtypes of this new condition. pmai 2000-10-09 22:08:40 +00:00
  • 0a61c9d69a Removed superfluous check of the return value of ext:create-inet-listener. pmai 2000-10-09 22:02:28 +00:00
  • e4c22e732c Added driver for LispWorks for Windows/Linux. This hasn't received much testing, but should work out alright. pmai 2000-10-09 22:01:14 +00:00
  • dd8365ec4c Factored locking primitives out to their own implementation-dependend files. Part of the porting effort to LispWorks. pmai 2000-10-09 21:55:43 +00:00
  • 1072ffaf5a Small change that guards against flushable read-sequence in earlier versions of CMU CL, as well as guarding against short reads by read-sequence on socket streams, though my understanding of the standard seems to imply that read-sequence can only return prematurely on EOF. But this way we shouldn't have any problems either way. pmai 2000-07-23 13:13:00 +00:00
  • 04c5a1dd1b Changes that bring CLASH up to extended HTTP/1.0 support: pmai 2000-07-22 01:25:15 +00:00
  • 0b29e10ea3 Changes that bring CLASH up to extended HTTP/1.0 support: pmai 2000-07-22 01:23:02 +00:00
  • c3aa400e66 Changes that bring CLASH up to extended HTTP/1.0 support: pmai 2000-07-22 01:15:06 +00:00
  • d09b872f61 Changes that bring CLASH up to extended HTTP/1.0 support: pmai 2000-07-22 01:11:09 +00:00
  • b3b91e38a1 Changes that bring CLASH up to extended HTTP/1.0 support: pmai 2000-07-22 01:06:44 +00:00
  • 798edd89b0 Changes that bring CLASH up to extended HTTP/1.0 support: pmai 2000-07-22 01:01:56 +00:00
  • f8834bce21 Changes that bring CLASH up to extended HTTP/1.0 support: pmai 2000-07-22 00:49:21 +00:00
  • a53e7391e9 Changes that bring CLASH up to extended HTTP/1.0 support: pmai 2000-07-22 00:45:30 +00:00
  • 2fbc5a621d Changes that bring CLASH up to extended HTTP/1.0 support: pmai 2000-07-22 00:42:03 +00:00
  • a9e2f4c553 Changes that bring CLASH up to extended HTTP/1.0 support: pmai 2000-07-22 00:34:37 +00:00
  • 22b8cd9c8f Changes that bring CLASH up to extended HTTP/1.0 support: pmai 2000-07-22 00:19:55 +00:00
  • 22b2bf1abd Changes that bring CLASH up to extended HTTP/1.0 support: pmai 2000-07-22 00:18:59 +00:00
  • f30daaf80f Changes that bring CLASH up to extended HTTP/1.0 support: pmai 2000-07-22 00:15:46 +00:00
  • 00b1689a8d Changes that bring CLASH up to extended HTTP/1.0 support: pmai 2000-07-22 00:13:03 +00:00
  • d2b1422049 Changes that bring CLASH up to extended HTTP/1.0 support: pmai 2000-07-21 23:24:24 +00:00
  • eac484a06f Changes that bring CLASH up to extended HTTP/1.0 support: pmai 2000-07-21 23:22:25 +00:00
  • 3281e85179 Changes that bring CLASH up to extended HTTP/1.0 support: pmai 2000-07-21 22:53:02 +00:00
  • 8632e84fa2 Changes that bring CLASH up to extended HTTP/1.0 support: pmai 2000-07-21 22:51:02 +00:00
  • 652e45b614 Changes that bring CLASH up to extended HTTP/1.0 support: Added response-initargs and entity-initargs fields to the clash-error conditions, so that signallers can return additional information to the client regarding errors. pmai 2000-07-21 22:45:49 +00:00
  • a890540a42 Added a version of the simple CMUCL driver that uses SERVE-EVENT, for all versions of CMUCL that don't provide multi-processing support, like on all non-x86 platforms. Tested on an UltraSparc running Solaris 2.7 (hawk) and a mid-1999 version of CMUCL 18b+. pmai 2000-04-14 00:07:13 +00:00
  • d7d90fbdb9 Modified base path selection mechanism to support loading from non-working directories, added utility.cl and move around some dependencies to make implementation clearer. pmai 2000-01-28 07:22:31 +00:00
  • f78391efdb Some basic utility definitions for all areas of CLASH. pmai 2000-01-28 07:20:36 +00:00
  • 5745612e87 Nearly complete rewrite to clean up URL/URI parsing, merging and handling, in the face of the much saner RFC 2396. This implementation provides all major capabilities, including low-consing operation, representation of relative and absolute URIs, useful merging and read-write consistency of URIs. Some clean-up work is still needed to purge the implementation from all references to URLs, to support the handling of all URIs. Other minor cleanups and additions are still needed, but after that the handling of URIs should be nearly as robust as the handling of pathnames in CL. pmai 2000-01-28 07:16:56 +00:00
  • d9cf8a6965 Modified the selection of request and response classes to take into account the server we are servicing, so that each server only sees and creates request/response classes he knows he can handle. This also makes it possible to add request/response classes in a running system, and to run servers of different versions side-by-side in an image without affecting each other... pmai 1999-09-19 12:55:29 +00:00
  • 23eb318329 Added some simple syntax/readtable enhancements to ease working with URLs and HTTP-Versions. There will probably be further enhancements later on. pmai 1999-09-19 12:52:40 +00:00
  • 1cf0f56f10 Sample Logos for CLASH... ;) pmai 1999-08-07 18:06:15 +00:00
  • e1c4504ede This is the first checked-in completely working version. It contains nearly all concepts and simple implementations thereof needed to get a simple HTTP/0.9 "compliant" server working (there are some hacks needed that we don't yet provide, since the correct things will be added shortly, like complete HTTP/1.1 request parsing. The hacks needed are provided as part of the basic HTTP/0.9 server demo in src/test/basic-demo.cl). pmai 1999-08-07 17:55:59 +00:00
  • 0a25f68f43 Small bug-fixes in URL printing and parsing. pmai 1999-08-07 17:33:23 +00:00
  • 88cdc8f6c8 Basic development mostly done, need to do HTTP functionality now. We might deprecate CLASH-SYS (both package and system) and incorporate that into the driver itself. For now we've removed all dependencies. pmai 1999-05-25 10:25:20 +00:00
  • 7b11e26c3e Initial revision pmai 1999-05-23 15:47:18 +00:00