mORMot and Open Source friends
File History
Not logged in

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History of SynCrtSock.pas

2014-04-08
13:18
[c8c21967657c5bc4] part of check-in [067be43817] fixed function BinToHexDisplayW() which triggered an unexpected error "HttpCreateRequestQueue failed: Cannot create a file when that file already exists (183)" - thanks DigDiver for the feedback! (user: User branch: trunk)
2014-04-07
18:07
[8d2ed4449125df87] part of check-in [1101f033bb] added THttpApiServer.ServerSessionID and UrlGroupID read-only properties (user: User branch: trunk)
2014-04-01
18:04
[73c9719ad2cbd46a] part of check-in [331aec0f93] enhanced http.sys API server error page, in case of exception raised (user: User branch: trunk)
2014-03-31
07:09
[c0d17b6c61a9e37b] part of check-in [51f977e95f] added SendTimeout and ReceiveTimeout optional parameters (in ms) to TWinHttpAPI constructors (instead of published properties which were not taken in account by the API) and to TSQLHttpClientWinHTTP / TSQLHttpClientWinINet constructors - fix for feature request [bfe485b678] (user: User branch: trunk)
2014-03-29
15:57
[f802647fe35aec5b] part of check-in [4e61734d33] added THttpApiServer.MaxBandwidth and THttpApiServer.MaxConnections properties (for HTTP API 2.0 only) - thanks mpv for the proposal! (user: User branch: trunk)
2014-03-21
15:51
[563c32a13c8fca85] part of check-in [92364b21a9] fixed Unicode compilation (user: User branch: trunk)
2014-03-20
14:43
[5d92254e1bf1ea9a] part of check-in [05e0031069] identifier to the HTTP API 2 session is now encoded as hexadecimal text (to avoid any collision error) (user: User branch: trunk)
2014-03-19
15:59
[23cd06931a0af7c9] part of check-in [60d96b225c] added identifier to the HTTP API 2 session - proposal from mpv - thanks a lot! (user: User branch: trunk)
2014-03-15
20:34
[99714b34288bfe07] part of check-in [ef643fd63f] added TSQLTable.GetAsDateTime() method (user: User branch: trunk)
20:18
[a3fb0e88af6ab0af] part of check-in [e83c032fb8] previous IP4 / IP6 to string cache was somewhat premature optimization (user: User branch: trunk)
20:16
[2d4735ac19dfc53f] part of check-in [ce261255fc] let HTTP_RESPONSE.AddCustomHeader() recognize all known headers (user: User branch: trunk)
2014-03-13
13:24
[7e9eb0a60b545390] part of check-in [8937d37696] fixed ticket [51a9c086f3] about THttpApiServer.SetHTTPQueueLength() (user: abouchez branch: trunk)
2014-03-09
13:06
[7e7b31b9399a487e] part of check-in [1eda390096] newly added THttpApiServer.HTTPQueueLength property (for HTTP API 2.0 only) will now update all its multi-threaded "clones" for proper process in case of highly concurrent client access (more than 20,000 clients at once) (user: User branch: trunk)
08:49
[ee0184075fefa255] part of check-in [f6c856ec05] fixed small typos (user: User branch: trunk)
2014-03-07
15:46
[deff4ddfdf65267e] part of check-in [84d0c88f6c] http.sys kernel-mode server handles HTTP API 2.0 (available since Windows Vista / Server 2008), or fall back to HTTP API 1.0 (for Windows XP or Server 2003) - no need of any conditional definition now: the class will use the highest API available + several fixes after further testing of the initial implementation (user: abouchez branch: trunk)
10:46
[4ac3656c55762623] part of check-in [9ddf00210f] http.sys kernel-mode server now handles HTTP API 2.0 by default (available since Vista/Server2008, so you can define NOHTTPAPI20 in Synopse.inc to support XP/Server2003) - thanks pavel (mpv) for this great contribution! (user: abouchez branch: trunk)
2014-02-28
14:39
[07d77e1d6734fd90] part of check-in [ec1c195359] socket code refactoring to use SetSockOpt() values instead of deprecated select() function (user: abouchez branch: trunk)
13:07
[55560f8df80bc25d] part of check-in [9cd8cc2a17] added TCrtSocket.TCPNoDelay/SendTimeout/ReceiveTimeout/KeepAlive properties - used e.g. for SynMongoDB connection (user: abouchez branch: trunk)
2014-02-27
20:32
[ff42ca9b564bf816] part of check-in [1e476f4643] methods documentation update (user: User branch: trunk)
19:39
[3afecd5c7ac7ccc9] part of check-in [3d2f6c3462] added TWinHttpAPI.Post/Put/Delete() class functions for easy remote resource retrieval using either WinHTTP or WinINet APIs (user: User branch: trunk)
2014-02-26
14:32
[34afff45444e3174] part of check-in [7ed5734831] fixed WinSock-based THttpServer.Process() handling of HTTP_RESP_STATICFILE content (user: abouchez branch: trunk)
2014-02-11
16:23
[018cd7ca525e3695] part of check-in [4b4ec80c29] converted any AnsiString type into a more neutral RawByteString (this is correct for URIs or port numbers, and avoid any dependency to SynCommons) (user: abouchez branch: trunk)
2014-02-07
17:16
[95798fb0a7ed5d60] part of check-in [ef24fc7deb] continuing MongoDB connection work - almost finished for low-level stuff (user: abouchez branch: trunk)
2014-02-05
09:03
[e9b26248ac63c403] part of check-in [cf7047e14c] new optExecInPerInterfaceThread and optFreeInPerInterfaceThread options for interface-based services, allowing server side service class instance execution and release in a thread dedicated to the interface - ticket [8307f8a547] (user: abouchez branch: trunk)
2014-01-29
13:00
[4c38a4a5a23dfaaf] part of check-in [5dd899b5ec] allow to disable the thread pool for THttpServer, if needed (user: abouchez branch: trunk)
12:53
[e781b65542f37435] part of check-in [53f8b7516e] small code refactoring of SynCrtSock implementation, for grouping per-feature class and functions (user: abouchez branch: trunk)
2014-01-18
14:32
[25324e8725cfb324] part of check-in [604f8413e7] try to make THttpServerResp.Execute more stable, especially during clean-up (user: User branch: trunk)
2014-01-11
11:00
[54f542af52061a9f] part of check-in [a21a8b2337] WinSock-based THttpServer will now avoid DoS attacks by limiting the total number of created threads for kept-alife or huge body HTTP requets (user: User branch: trunk)
2014-01-10
12:23
[45462505ad305535] part of check-in [795fa3801b] * to make the implicit explicit, TSQLRestServerURIContext.ID has been renamed TableID, and a new ServiceInstanceID instance has been added * fixed TSQLRestServer.BeginCurrentThread/EndCurrentThread process to be trigerred as expected (and checking that it is from the thread itself) - a specific set of regression tests have been introduced to ensure HTTP multi-threaded process works as exepected * added TSQLRestServerStats.CurrentThreadCount property (user: abouchez branch: trunk)
2014-01-07
14:43
[b34e14b5a7902b38] part of check-in [39036dba97] reverted ticket [73da2c17b1] about Accept-Encoding header in THttpApiServer (user: abouchez branch: trunk)
2014-01-05
16:51
[f67d2c7858c1e9c0] part of check-in [f9b04a46c8] * introduce ESynCrypto exception class dedicated to the SynCrypto.pas unit * added optional aCompressMinSize parameter to RegisterCompress() methods * added CompressShaAes() and global CompressShaAesKey, CompressShaAesIV and CompressShaAesClass variables to be used by THttpSocket.RegisterCompress * added aHttpServerSecurity: TSQLHttpServerSecurity parameter to TSQLHttpServer.Create(), allowing HTTPS secure content publishing, when using the http.sys kind of server, or our proprietary SHA-256 / AES-256-CTR encryption identified as "ACCEPT-ENCODING: synshaaes" * added hcSynShaAes encoding for TSQLHttpClientGeneric.Compression property * updated documentation about new optional AES encryption over HTTP (user: User branch: trunk)
2014-01-01
13:31
[ce4a5a8af3f71b5a] part of check-in [44147954e2] The little mORMot wishes you an happy new year 2014! (user: User branch: trunk)
2013-12-31
10:51
[27bbaefb3f48a05a] part of check-in [977ceb866d] fixed ticket [814f6bd65a] about missing OnHttpThreadStart in CreateClone (user: User branch: trunk)
2013-12-27
13:18
[796d7082259bf0c7] part of check-in [395b247710] THttpApiServer won't try to send an error message when connection is broken (user: User branch: trunk)
2013-12-11
10:38
[9bc4b713ce5fb77d] part of check-in [d7d93f8a2f] * added TWinHttpAPI.Get() class function for easy remote resource retrieval * added TURI structure, ready to parse a supplied HTTP URI (user: abouchez branch: trunk)
2013-09-19
06:54
[dd6b955b3760ba62] part of check-in [1010e725b1] fixed Delphi 5 compilation issues (user: abouchez branch: trunk)
2013-09-16
12:34
[d107b97d26e4f6b1] part of check-in [988000929c] * added STATICFILE_CONTENT_TYPE[_HEADER] as aliases to HTTP_RESP_STATICFILE as defined in SynCrtSock.pas unit, for generic handling * now TSQLRestServerStats.OutcomingFiles reflects the number of files transmitted via OutContentType = STATICFILE_CONTENT_TYPE / HTTP_RESP_STATICFILE (feature request [4a2433c045]) (user: abouchez branch: trunk)
11:39
[4fdc894e3b5ef37d] part of check-in [6d283baef8] let WinSock-based THttpServer.Process() handle HTTP_RESP_STATICFILE (user: abouchez branch: trunk)
2013-09-06
11:55
[cebf42d1ca25f265] part of check-in [f643413f58] fixed Access Violation error at THttpServerResp shutdown (user: abouchez branch: trunk)
2013-07-29
10:13
[005e5d83259fedb8] part of check-in [f456407457] fix multi thread release process of winsock server (user: abouchez branch: trunk)
2013-07-27
17:03
[423d21f7b1c9d91b] part of check-in [25f9a3fe4d] fixed potential Access Violation error at THttpServerResp shutdown (user: User branch: trunk)
2013-07-25
12:15
[6fea0a876f9dfb21] part of check-in [d02a38fdfb] small fixes to enhance code safety of HTTP Winsock server (user: abouchez branch: trunk)
2013-07-19
13:06
[a484b29b09ff87f0] part of check-in [46b99b3e79] fixed ticket [0f6ecdaf55] for better compatibility with HTTP/1.1 cache (user: abouchez branch: trunk)
2013-07-03
12:21
[a979af9a12ca00bb] part of check-in [5b95e24168] fix FPC compilation issue (user: abouchez branch: trunk)
2013-06-11
09:13
[bbc420d0bf7ecb9d] part of check-in [dd50370549] let TCrtSock use a 1KB internal buffer for Delphi 2009+, just as with previous Delphi revision (user: abouchez branch: trunk)
2013-06-10
15:07
[efd500ef50f71b65] part of check-in [91cfffdaf8] fixed ticket [11b327bd77] about TCrtSocket not working with Delphi 2009+ (including a fix also for Win64 proper execution) (user: abouchez branch: trunk)
2013-06-04
18:26
[3cdc44aa18426e57] part of check-in [051187311e] introducing TSQLRestServer.AuthenticationRegister/AuthenticationUnregister methods and associated TSQLRestServerAuthentication* classes, to allow generic class-driven authentication schemes for request [8c8a2a880c] (user: ab branch: trunk)
2013-06-03
09:11
[1ea07c6bee9ff124] part of check-in [3c42eb6183] fixed ticket [2d53fc43e3] about unneeded port 80 (user: ab branch: trunk)
2013-05-19
13:42
[7fb9dc4095a36cab] part of check-in [9275825a41] added aRegisterURI optional parameter to THttpApiServer.AddUrl() method (user: ab branch: trunk)
2013-05-16
14:23
[d8c36bfc773aca8a] part of check-in [d5e77d3d47] removed several compilation hints when assertions are set to off (user: abouchez branch: trunk)
2013-05-15
08:27
[1503fc45c192f3a3] part of check-in [59eb20700d] Delphi XE4 compatibility (Windows target platform only for Win32/Win64) (user: abouchez branch: trunk)
2013-04-17
14:42
[48c181788d494ec0] part of check-in [9e7ba44aa8] added new "ConnectionID: 01234567" header - see feature request [0636eeec54] (user: abouchez branch: trunk)
2013-04-15
17:50
[b0ff5f4f968d844c] part of check-in [454fcef87b] fixed ticket [f79ff5714b] about potential finalization issues as .bpl in IDE (user: abouchez branch: trunk)
2013-04-03
17:55
[5e7d2cedb48d9f8f] part of check-in [d70b52927e] added ResolveTimeout/ConnectTimeout/SendTimeout/ReceiveTimeout properties to TWinHttpAPI classes - feature request [bfe485b678] (user: abouchez branch: trunk)
2013-03-28
06:49
[b23122f82c75f460] part of check-in [1386178766] included more detailed information to HTTP client User-Agent header (user: abouchez branch: trunk)
2013-03-05
16:05
[30414a20f478887a] part of check-in [4901e46624] added ExportPDFUseFontFallBack and ExportPDFFontFallBackName in TGDIPages class (user: abouchez branch: trunk)
2013-02-28
14:03
[468f421010d1a886] part of check-in [8528cf5da5] fix CPU64 compilation issue in SynCrtSock (unexpected ASM) (user: abouchez branch: trunk)
2013-02-24
15:43
[a0dc78a7e9e18f0b] part of check-in [dc441f2a68] fixed and tested 64 bit compilation under Windows with Delphi XE3 - first step, including SynCommons and low-level process [4b11d85be2] (user: User branch: trunk)
2013-02-01
21:03
[fc21742321c3bf69] part of check-in [962215e36f] added EWinHTTP exception, raised when TWinHttp client fails to connect (user: abouchez branch: trunk)
2013-01-30
10:03
[4da99fc5c3d29189] part of check-in [6ffc39cd18] includes CORS support in "04 - HTTP Client-Server" sample - now you can run cross-site AJAX queries with this sample server (user: abouchez branch: trunk)
09:31
[fe14f6e62dd95f7e] part of check-in [b5cbc0c87d] * WinSock-based THttpServer will avoid creating a thread per connection, when the maximum of 64 threads is reached in the pool * added THttpServerRequest.Prepare() method (user: abouchez branch: trunk)
2013-01-29
10:47
[fd0782e701a7132f] part of check-in [9bae7dc630] introducing THttpServerRequest class for HTTP server context (user: abouchez branch: trunk)
06:43
[1a07d4be9631c915] part of check-in [8ab5b30aa9] small speed enhancement when retrieving HTTP headers text from http.sys API (user: abouchez branch: trunk)
06:06
[2dd3306e848c6e77] part of check-in [571074b9fe] fixed ticket [91f8f3ec6f] about error retrieving unknown headers (user: abouchez branch: trunk)
2013-01-04
07:49
[7320bb84760ac1f0] part of check-in [39cce026d1] fixed ticket [cbcbb3b2fc] about PtrInt definition (user: abouchez branch: trunk)
2013-01-02
15:51
[8e35fcc4dc2409c9] part of check-in [9c9d6ebb2a] fixed ticket [540628f498] about 64bit code adjustments, Assert(Sizeof(...),...) (user: abouchez branch: trunk)
14:19
[1b55fe337931dd92] part of check-in [ba0438e17f] enhanced FPC/Lazarus Win32/Win64 compilation (user: abouchez branch: trunk)
2012-12-31
14:34
[b0f6bde96a2b51fa] part of check-in [8e74517c2d] preparing new Year's eve ;) (user: ab branch: trunk)
2012-12-19
22:12
[5d86adbf97c83710] part of check-in [27d6e80702] fixed ticket [73da2c17b1] about unneeded Accept-Encoding header in response (user: ab branch: trunk)
17:49
[c6d8c6168cca9709] part of check-in [5002d81864] fixed ticket [f2ae4022a4] EWinINet error handling (user: ab branch: trunk)
2012-12-12
14:20
[d7debc6f74d0d717] part of check-in [8ef138faf8] fixed Delphi 5 compilation issue (user: abouchez branch: trunk)
2012-12-06
13:49
[cb70ab8565e45d9e] part of check-in [d2bc05859c] fixed ticket [fdc1764f97]: GPF issue in TSQLRestServer.LaunchCallBack() and enhance exception handling and JSON/HTML error messages return (user: abouchez branch: trunk)
2012-12-05
14:14
[f9e4ca095fbdc6ac] part of check-in [2f58a711df] * fixed ticket [842a5ae15a] THttpApiServer.Execute/SendError message * added function HtmlEncode() (user: abouchez branch: trunk)
2012-12-04
17:27
[37abe387106bf1af] part of check-in [ace12b0996] * BREAKING CHANGE in TSQLRestServerCallBackParams use: all method-based services should now be a procedure, and use aParams.Results()/Error() methods to return the content - new definition of aParams features now wfull access to incoming/outgoing context and parameters * TSQLRestServer.URI() method uses now one TSQLRestServerURIParams parameter * added TAuthSession.SentHeaders and RemoteIP properties (for HTTP) (user: abouchez branch: trunk)
2012-12-03
13:52
[a83eba55fc41847a] part of check-in [51f4fb2aee] added aTimeOut optional parameter to TCrtSocket.Open() constructor (user: abouchez branch: trunk)
2012-11-30
20:30
[bf0c423fb6e991b0] part of check-in [56f67181ac] * safer TInterfacedObjectFake.FakeCall() stack use * changed function ExtractInlineParameters() to properly handle nulls * modified named pipe client side to avoid unexpected file not found errors * debugg process of Variant type in TSQLRecord properties * added regression tests for variant JSON serialization for interface-based services and for ORM (aka TSQLRecord) * handle null binding in TSQLRestServerStaticExternal.ExecuteInlined() * handle null binding in TSQLRestServerDB.GetAndPrepareStatement() (user: abouchez branch: trunk)
2012-11-28
13:34
[9dde270f19006a2c] part of check-in [1c6fe7a1fd] all former SQLite3\SQLite3*.pas units have been renamed to SQLite3\mORMot*.pas to match the database-agnostic scheme of the mORMot framework - this is a major break change, so all your "uses" clauses in your code is to be change to follow the new naming (user: abouchez branch: trunk)
2012-11-22
15:35
[7ddaec4f78cc86df] part of check-in [64e0d7b00b] fixed ticket [f0749956af] TWinINet does not work with HTTPS servers (user: abouchez branch: trunk)
15:28
[ea784c8923e37107] part of check-in [d693060f10] fixed ticket [82df275784] about TWinHttpAPI with responses without Content-Length (user: abouchez branch: trunk)
2012-11-13
10:56
[4c2b85888aecd752] part of check-in [9e88fbf69d] fixed Delphi 5 compilation issue (user: abouchez branch: trunk)
2012-11-01
10:18
[449dc64fa43df48b] part of check-in [b817ab4910] force disable range checking and other compiler options for the SynCrtSock unit (user: ab branch: trunk)
2012-10-08
15:42
[71d53aa3ede8bcd1] part of check-in [5e5353438a] refactored HTTP_DATA_CHUNK record definition into HTTP_DATA_CHUNK_* records to circumvent Delphi XE3 alignemnt issue (variable records alignment changed) (user: abouchez branch: trunk)
07:00
[f8df6111898c29a7] part of check-in [f497c6f79b] added error check for HttpSendHttpResponse() API call (user: abouchez branch: trunk)
2012-10-05
09:48
[2801937e6937be29] part of check-in [619937d947] some code cleaning in the unit about 64 bit compilation (user: abouchez branch: trunk)
2012-09-11
12:32
[c019081ee0efee18] part of check-in [fc139d58f3] * added THttpApiServer.RemoveUrl() and TSQLite3HttpServer.RemoveServer() methods * fixed execution if WITHLOG conditional is undefined globally (user: abouchez branch: trunk)
09:30
[02e621744058c521] part of check-in [ca97a46a41] changed GetBitCSV/SetBitCSV CSV format to use 'first-last,' pattern to regroup set bits (reduce storage size e.g. for TSQLAccessRights) - format is still read-compatible with old layout, but will more optimized for size and human-readable (user: abouchez branch: trunk)
2012-09-10
13:20
[3a947ac83b899744] part of check-in [fbe1b2711e] refactored function GetMimeContentType() implementation + associated tests (user: abouchez branch: trunk)
2012-09-07
13:36
[157e2d190dce51c9] part of check-in [ebc0856b21] comments modifications (user: ab branch: trunk)
09:59
[711c6c439e011367] part of check-in [ae8938aa83] small code refactoring about Int64 / UInt64 handling in HTTP ranges (user: ab branch: trunk)
2012-09-06
14:48
[a85aa35fa88354bd] part of check-in [c219e33a98] replaced TSockData string type by the generic RawByteString type (and the default AnsiString for non-Unicode version of Delphi) (user: ab branch: trunk)
2012-09-05
17:21
[8aeae14aaf933559] part of check-in [2362d94f07] small fix in "Range: ...." implementation (user: ab branch: trunk)
17:15
[be6d446b85e7f7d8] part of check-in [ef4ba3f951] handle 'Range: bytes=***-***' request in THttpApiServer (user: ab branch: trunk)
2012-09-04
15:43
[e108632e8a55abec] part of check-in [f5d42ace61] * added virtual TSQLRestServer.BeginCurrentThread method * added new TServiceMethod.ExecutionOptions member, and the new TServiceMethodExecutionOption[s] types - used by ExecuteInMainThread() * added TServiceFactoryServer.ExecuteInMainThread() method, to force a method to be executed with RunningThread.Synchronize() call on multi-thread server instances (e.g. TSQLite3HttpServer or TSQLRestServerNamedPipeResponse) * refactoring of TServiceMethod.InternalExecute low-level asm implementation * added THttpServerGeneric.OnHttpThreadStart property, and associated TNotifyThreadEvent event prototype (user: ab branch: trunk)
2012-08-29
15:50
[5b2a58fdf6321176] part of check-in [9422fb8309] fixed several LVCL and Delphi 5 compilation issues (user: ab branch: trunk)
2012-08-27
06:12
[a1eab420e06f4f32] part of check-in [fc0b11b3ac] fixed Unicode conversion error when using a Proxy with WinHTTP API (user: ab branch: trunk)
06:03
[b355ed1836566046] part of check-in [5c7d491126] * added optional aProxyName, aProxyByPass parameters to TWinHttpAPI / TWinInet and TWinHTTP constructors * added optional aProxyName, aProxyByPass parameters to TSQLite3HttpClientWinGeneric / TSQLite3HttpClientWinINet and TSQLite3HttpClientWinHTTP constructors (user: ab branch: trunk)
2012-08-14
12:47
[15dd701ae904ce42] part of check-in [a97c525673] increased internal units version to 1.17 (user: ab branch: trunk)
2012-05-29
18:41
[05eb358c360b684a] part of check-in [c058f55771] * fixed naming of framework in units header * fixed incorrect call to FormatUTF8() - see [d74020f7c3] (user: G018869 branch: trunk)
2012-05-17
16:47
[0a66aa529ef8721b] part of check-in [83fe4b7eb9] major speed up of THttpApiServer for Windows Vista and up, by processing huge content in chunks: upload of 100Mb file take 25 sec before and 6 sec after changes, according to feedback by MPV - ticket [711247b998] (user: User branch: trunk)
2012-04-25
14:30
[c209e3fdf9d046c7] part of check-in [b2e16aae7d] new THttpServerGeneric.OnHttpThreadTerminate event, available to clean-up any process in the thread context, when it is terminated (to call e.g. TSQLDBConnectionPropertiesThreadSafe.EndCurrentThread in order to call CoUnInitialize from thread in which CoInitialize was initialy made) - see http://synopse.info/fossil/tktview?name=213544b2f5 (user: G018869 branch: trunk)
2012-04-16
08:05
[60c7faee6fc8baac] part of check-in [5b4e96bfbf] added TSQLRestServer.ServiceMethodByPassAuthentication method in order to allow by-pass of the RESTful authentication scheme for some methods (can be used e.g. to server some HTML content for a non SOA client (user: G018869 branch: trunk)
2012-04-15
18:12
[8ba8ca345dec2aeb] part of check-in [9f6337c6f9] Minor compilation issue fixed for Unicode versions of Delphi (user: User branch: trunk)
2012-04-11
11:39
[4a8ae81949303bdb] part of check-in [ef5cd9b40a] continuing compilation with FPC (Win32 platform by now) (user: G018869 branch: trunk)
2012-04-04
05:36
[1f678e86dff04fe4] part of check-in [c3a0bfe771] compilation fix for Delphi 2009+ (user: G018869 branch: trunk)
2012-03-29
16:54
[12f9f2b924b4c28e] part of check-in [a9643f8a7d] added 'RemoteIP: 127.0.0.1' to retrieve the remote IP address in HTTP headers on server side (user: G018869 branch: trunk)
2012-03-28
20:58
[4228b67a00359b7b] part of check-in [ac32fbb645] fixed Delphi <2010 compilation issues (user: User branch: trunk)
17:31
[d516266cd48e1870] part of check-in [160f88b541] most units now compile with Delphi XE2 in 64 Bit mode :) (user: User branch: trunk)
15:39
[d64c7d014308fb87] part of check-in [a2ec3f6c00] fixed issue when creating indexes: only one index shall be created per field (user: G018869 branch: trunk)
2012-01-20
13:33
[3c5d3549499b3aa0] part of check-in [d8b446f0b5] changed copyright notice to "(C) 2012" - yes, happy new year ! (user: G018869 branch: trunk)
2012-01-07
12:20
[de822c86704ca2b2] part of check-in [ddcf953db5] code refactoring to allow compilation with Delphi XE2 background compiler (e.g. syntax check or code completion) (user: User branch: trunk)
2012-01-06
15:05
[aa96a0a0aa9497de] part of check-in [0ca215c155] comments update (user: G018869 branch: trunk)
14:14
[78238de3c6b94292] part of check-in [0c22307d37] fixed issue in TSQLRequest.Reset() which was triggered an error about the latest statement execution (user: G018869 branch: trunk)
2011-12-14
08:33
[06c5e64223dbf987] part of check-in [782a4fa14f] try to avoid use of all unneeded FreeAndNil calls in the code - see http://www.nickhodges.com/post/Using-FreeAndNil.aspx (user: G018869 branch: trunk)
2011-11-28
14:53
[2b3d38b1b8326f06] part of check-in [3888b4eacb] fixed issue in case of wrong void parameter e.g. in THttpApiServer.AddUrl method (user: G018869 branch: trunk)
2011-09-17
18:05
[bebf8574a9923b88] part of check-in [40b9886964] Delphi XE2 compatibility: all tests passed (32 Bit) (user: ab branch: trunk)
2011-09-02
17:21
[e368a8cf3ca0d787] part of check-in [1a9363d4ec] small enhancement to avoid uncessary exceptions (user: G018869 branch: trunk)
2011-08-16
16:06
[a42cbd7006cf56c3] part of check-in [08702b6458] new TSynLog .log/.synlz file vizualizer tool, named LogView (user: G018869 branch: trunk)
15:19
[91636efb58a872ac] part of check-in [481e6424bd] fixed issue in http.sys headers retrieval (user: G018869 branch: trunk)
2011-07-22
09:40
[88513a2536c7b8bc] part of check-in [75b5b81a88] new SynSQLite3 unit extracting the SQLite3 wrapper from the previous SQLite3 unit: this unit can therefore be used with our SynDB classes, without our mORMot overhead (and features) (user: G018869 branch: trunk)
2011-05-31
14:04
[9d5c1a2fabe080cd] part of check-in [da448f54f0] code modifications to compile with Delphi 5 compiler (no ORM code compiles yet: so only low-level units like SynCommons / SynCrypto / SynPdf are tested) (user: ab branch: trunk)
2011-04-18
15:35
[1d2666e053492f68] part of check-in [d8e6e2e17e] new TSQLite3HttpClientWinHTTP class, using WinHTTP API (fast and stable), is therefore now the default TSQLite3HttpClient class (user: ab branch: trunk)
14:00
[af23bb1b49b46a1c] part of check-in [59de047ba4] some code refactoring (user: ab branch: trunk)
13:12
[0efe3bb2c5233c17] part of check-in [9f663b344e] * new TWinHTTP class, using WinHTTP API (faster than THttpClientSocket): this is the class to be used * new TSQLite3HttpClientWinHTTP class, using WinHTTP API (fast and stable): this class should be considered to be used instead of TSQLite3HttpClient for any HTTP/1.1 client connection (user: ab branch: trunk)
09:35
[549c467f93f2890c] part of check-in [047920baba] * TSQLite3HttpClientWinINet now handle optional incoming and outgoing data compression, and fix some potential issues in Unicode Delphi * TSQLite3HttpClientWinINet is now enabled by default (WITHWININET conditional is defined) (user: ab branch: trunk)
2011-04-16
09:48
[a2f2fa9bca480b70] part of check-in [e1b2effaf9] new TWinINet and TSQLite3HttpClientWinINet classes, using WinINet API (very slow - this was just a test... not concluding at all) (user: ab branch: trunk)
2011-03-25
12:19
[b1a2365390d10994] part of check-in [1a3eb8b204] enhanced error message supplied for SockIn/SockOut (user: ab branch: trunk)
2011-03-24
20:43
[5a424f665fa8c3e4] part of check-in [22d53d70a1] Delphi 7 + 2007 + 2010 compatibility fixes (user: ab branch: trunk)
17:37
[70b219eb2f6c21c2] part of check-in [d24db93eeb] * TSockData is now defined as an UTF-8 string for Delphi 2009/2010/XE * HttpApiServer.dpr sample program now handles accentuated file names as expected (user: ab branch: trunk)
2011-03-23
13:25
[95497f53a6318ff2] part of check-in [eee15165fa] enhanced error handling in THttpApiServer.Execute (user: ab branch: trunk)
08:33
[5f015e7392db4e5e] part of check-in [6e50daabb4] fixed issue in receiving body content in THttpApiServer.Execute (was trunked) (user: ab branch: trunk)
07:59
[93d04b350b0cf641] part of check-in [c322380e76] enhanced TSQLRecordMany.DestGetJoinedTable method to handle custom fields (user: ab branch: trunk)
2011-03-22
20:30
[63e719c11ab55db8] part of check-in [55636becc9] fixed issue in HTTP server (user: ab branch: trunk)
2011-03-21
18:42
[57280a5327163ce3] part of check-in [910e72d4ed] * dynamic arrays can now be specified for TSQLRecord published properties: a new sftDynArray field kind has been added - will be stored as BLOB in the database (following the TDynArray.SaveTo binary stream layout), and will be transmitted as Base64 encoded in the JSON stream * dynamic arrays now handled in the JSONToObject and ObjectToJSON functions (will follow TTextWriter.AddDynArrayJSON format, i.e. plain JSON array for common types, but Base64 encoded streom for other arrays) (user: ab branch: trunk)
2011-03-14
17:33
[4c92537aba4c211a] part of check-in [8d0b6de31d] faster base64 decoding (user: ab branch: trunk)
16:11
[d87c6fd61eb95cec] part of check-in [af12348554] added InHeaders parameter for the HTTP web server Request processing event (user: ab branch: trunk)
2011-03-11
22:25
[9bfe9ef54655665b] part of check-in [45f402f767] minor fixes before release (user: ab branch: trunk)
19:47
[a82665b12410c817] part of check-in [faed9f2b35] LVCL and Delphi 2009/2010/XE compatibility fixes (user: ab branch: trunk)
17:08
[795822eb2df4479f] part of check-in [304b4860fd] new HTTP/1.1 server using http.sys now seems complete and working under XP (user: ab branch: trunk)
2011-03-10
21:24
[61e6a0276a6e44f3] part of check-in [aa5a32b8af] various fixes (user: ab branch: trunk)
18:49
[944f1025604bdbc2] part of check-in [7a211f43e4] * new THttpApiServer class, using fast http.sys kernel-mode server for better performance and less resource usage (defined by default) * fixed HTTP client stream layout (to be more RFC compliant) * new THttpServerGeneric.Request virtual abstract method prototype (user: ab branch: trunk)
2011-03-09
16:56
[029537223de1f26f] part of check-in [fe7e01f1f6] THttpApiServer integration - continue (user: ab branch: trunk)
2011-03-08
17:58
[de9c031ebbe2a460] part of check-in [2adfbcdbb1] updated THttpApiServer (user: ab branch: trunk)
2011-03-07
22:05
[14f70c4d1bc80d16] part of check-in [8be53f5555] introducing THttpApiServer (user: ab branch: trunk)
2011-03-02
08:12
[b06ec8aee5027513] part of check-in [9098c15a11] can make TCP/IP stream not HTTP compliant (against antivirus slowdown) (user: ab branch: trunk)
2011-03-01
19:13
[883b7a08a61624e5] part of check-in [f35f39f17a] compatibility fix for Delphi 2009/2010/XE (user: ab branch: trunk)
15:46
[8dd55f20e722c49b] part of check-in [d6285dd1ad] * now can compress its content using deflate or faster SynLZ algorithm: by default, the SynLZ algorithm will be used between a Delphi Client and Server over HTTP/1.1 - there will be no speed penalty on the server side, whereas deflate would use much more CPU * by default, will handle SynLZ compression for TSQLite3HttpServer and TSQLite3HttpClient (prefered than much slower deflate algorithm) (user: ab branch: trunk)
11:22
[9155d35b23199450] part of check-in [0eda3328c4] new functions for gzip/deflate/synlz/synlzo compression algorithms, to be used with OnCompress/OnDeCompress properties pairs of THttpSocket (user: ab branch: trunk)
08:55
[2b7d2b6d775298be] part of check-in [d50b9d8d0b] try to fix slow network access (user: ab branch: trunk)
2011-02-21
13:37
[a8dd02e9c0f6ad61] part of check-in [f8725678fd] * wider usage of TSQLRecordProperties, for faster RTTI access, via the new class function TSQLRecord.RecordProps: TSQLRecordProperties: only virtual class function or procedure are now defined in TSQLRecord * introducing the GarbageCollector TObjectList for handling a global garbage collector for instances which must live during the whole executable process (used e.g. to avoid a memory leak for "class var" or such variables) * new PatchCodePtrUInt() procedure (user: ab branch: trunk)
2011-02-08
17:07
[73faa40cdf9f6aa4] part of check-in [b59d83be6d] we reach year 2011 - let's celebrate! (user: ab branch: trunk)
2011-02-02
14:16
[4e6ce4b5ece3e8f9] part of check-in [bceafe99e4] * added connection check and exception handling in THttpServerSocket.GetRequest, which now is a function returning a boolean * added DOS / TCP SYN Flood detection if THttpServerSocket.GetRequest spent more than 2 seconds to get header from HTTP Client (user: ab branch: trunk)
2010-09-17
17:41
[119995c658b9db23] part of check-in [616186a28e] new CROnly parameter for TCrtSocket.SockRecvLn, to handle #13 as line delimiter: by default, #10 or #13#10 are line delimiters (as for normal Window/Linux text files) (user: ab branch: trunk)
2010-09-11
17:42
[674558da96dd59b1] part of check-in [8646d927d6] a dedicated background thread is now used if the incoming HTTP request has POSTed a body content of more than 16 KB (to avoid Deny Of Service, and preserve the Thread Pool to only real small processes) (user: ab branch: trunk)
2010-09-05
13:55
[8cce7b46b8f819ac] part of check-in [933dd6ba2c] deleted deprecated DOS related code (used with DWPL Dos Extender) (user: ab branch: trunk)
2010-09-04
14:35
[efb3c9ba082ff77b] part of check-in [b03e814c32] new GetExtended overloaded function, and new HttpPost function (user: ab branch: trunk)
2010-09-01
21:31
[cef4118afe7e7e47] part of check-in [17264e2747] small fixes in the report manager and creation from RTTI + improved comments and some modification to avoid any GPF (user: ab branch: trunk)
2010-08-23
15:02
[3013336b3f0c8dcc] part of check-in [b8fd7b8094] HTTP Server now use a Thread Pool to speed up multi-connections: this speed up a lot HTTP/1.0 requests, by creating a Thread only if really necessary (user: ab branch: trunk)
2010-08-11
13:04
[3951cb273b6c5082] part of check-in [e8acc283db] small enhancements in THttpServerResp.Execute (user: ab branch: trunk)
2010-08-09
08:53
[0f2768ab4683f29a] part of check-in [beaaa4176b] rewrite HTTP Server handle request loop keep alive timing (user: ab branch: trunk)
2010-07-27
20:06
[722e896e3d7aad1f] part of check-in [4c5adbef4f] Improve compatibility for Delphi 2009/2010 SQLite3 framework User Interface, and prepare release of main sample demo (user: ab branch: trunk)
2010-07-05
14:46
[9aa27c9ab03ed056] part of check-in [164a717451] minor comment update (user: ab branch: trunk)
2010-07-04
19:37
[5daccf3ebe0c7087] part of check-in [accc9db54a] HTTP OnDisconnect method was not called on purpose in SynCrtSock.pas (user: ab branch: trunk)
2010-07-02
17:19
[51c54b2082f45ee6] part of check-in [0375ad50a7] * new direct methods to handle BLOB fields from clients or servers * new URI to GET or PUT BLOB fields: ModelRoot/TableName/ID/BlobFieldName (user: ab branch: trunk)
2010-06-29
16:42
[83c0181f2d72eab6] part of check-in [cb80fdeb96] new features in SynPdf like UNDERLINE + STRIKEOUT or Jpeg compression of bitmaps, from REDDWARF / ONDREJ - see [http://synopse.info/forum/viewtopic.php?id=36] (user: ab branch: trunk)
2010-06-23
14:04
[d0f87bdf18ce7a52] part of check-in [9226a861e3] Initial Check-In of all Synopse components (user: User branch: trunk)