Description: fcl-web
This file as text.
(active) Revisions in this set:
6db4ab5012c6a32a4c66da973e0b7e7163b54503,20039e3b77a094ea807ccb318e06df4cce4dcacd,fd91e8263c8acc492a928027b55ed8d44ffa83f9
52813c8965efe348a94bee65ebceb9bc0e81be76,1e3de5db58072959e8d6f75aaa21e922d38f322e,162ecdc543f8022f77bac46223537ece7cbc4188
8bf5eb83229a05e2c630bc4015b9c622ff8e48df,c67a44c07a699e9c70b71f28370f875e1e010bb1,eaffd1deca89d08f780f34c7788c28a0ac49b939
722a37ab2f8b008c750a4a143d49aae8563032cd,676c9a7bf6e181662c5838ced35d0326fe5da564,bf2e3bf51a1e9a5c2156edf112fbb8a83aabe42c
af47d108af4e289f6018b2a386b9c96b2a65c12d,6a2f596b8eb7efa8fb672451a7afe0a00b5a03e9,da10b8141c184e592b1d8d4ab65d675c0755fbcc
8fc1bc276f14fd1deadf250385c408b0973074a7,7ccdcd3d14a35c350c5463d2488906f66d26163a,964a9839d1ed9a4fe9400ec95ef0a0db563f0659
410916ab6bfad9c66f396fb94fef0a256f9610a6,ae1c809a2de4d326571b2f086854feb70c35fdae,ed861e5343dba6e3e10d75a6db8919deaf4b350f
c68c22e9e88413abd80866aa3293e553fb0c5b95,c64c0e617d070de85b11e171d895886c064b1bec,5479663e560bbe906bf05274b74cd168dac41627
675312c201c678c8446482f7e53b1209684b45bd,d502a38f2044a641fac2eb94501f1b49d3b698a5,fdaa1a12d03ab0af27d783a6ebd8c989673f145b
40c359a5510fdbda573a1eb75a50977382f0996d,f6c476ae79112ef1866dab22cee7c307fc8ec98f,5bf9de22d696143e5e25a350cf407312603d183e
f7265bf79e0945845c2b3e9472de654b5a2c9c35,181653162cfa3807e9077176b73800231c40d808,db0d1501e0bfe9166e94f8eb0204b31023f92940
ab7de664719e8421f17c32307eae700c832f2787,4ac009846c7a61d2a3a9965b6e6fc7257691d427,a68a6415f2f559afbde579f1333043090ff5db8d
bb9a1af24849031928f0db2ddfbd1991f91792bc,e6f40c196a4a76aeda73632a67eff84f56c2d7bb,9b8a6438c786637768ad435c10f5cf179b0c4760
bfa0c60e7725ed63f2148de95c4651541716515b,56c3b5b2cd0acd8f0aa531049f7d5b5fc86849e6,f6587d950520e36b23d412c1b370b861e21e62a6
df6d2896931c1f7b9bf9f7b401109bc61dc0fdc6,54e418c5e87435e6e1889d755c499da4554a1562,14dd15373670d02e90897601df347344a3dee709
1083746abf9bd7ec09161cc0819d7ef5c5541d1e,35c45dfbe5a1f1d732071ee4e812684ed1a8e58b,ae0cf1b50fc3f480dbed602d27174f84b77b8ec9
8c5446a03ff70d74427b933ca13c9519e141c0ff,54e0d972783824a2172596154f73bea1d3481944,5dc1d5e93b04b6a5d0afe4260fa2b40278ec0f0d
955e495c217fa558e713aa82cab81ddf7f3c4ea6,ccfb34c518291419b1ba48edbf651335b8d4f8ac,008214ca15812e7f4db97cc9e1ffadce94d68d2d
84c2a0d89e1de298659b7e54ed7cf1b589493839,7ef2012151438c314d82b279c06939140dbf0c41,cb73bb939bc433b9ce5137492fc69a6b5d993b7e
f9c006ca9f5eff265bf1fdba8697e58a1d09a1ef,66a1486f325f7404ddc3679422366fc020185525,a390a2742024ea5a1820ea20ada0ba0ca325111d
4dc1e22f1f8a8d1bf150c3ed1ebb6498439909d2,a206deddfb5f6b634e5da5a7925c1f867d61eda9,886baf4cb901337929a5bbc7a21510835c089b41
06ab6d7fa71af5b4f14a4a31b9d5dfa74c3a4ea3,985ebf3b6360c2850b38ccab36aee38828146843,a2146824956673e5e356da1b3f1429d73e5ebd36
652643499a88e937c4fbaf95169013339b207052,6a9d2cae93de921b982958cbab49ac5ddf64aa58,54415f8f4e0458ae2ab2fb7d0b4ed97e8461cb7d
2650049b2cb15178fddf77cacc477d910a5b5df0,86d48207605bea3e2c72bf3734666999dfef14d8,7c6f3810e3e73c4219e6f6f24bdf702c61843d13
dcf64d8fee683749998f54710fbebe4453f47906,ef0aea8ca241aa5d021d74efa830e690ca447bb9,b08c12ff8ab31b63044bb03ef025dc3c175648a0
711e659f5c91098da657ac2f9dcb4cb52f14a937,8a0fe7bc855ef5b4d17ee674c94bca42fa7719d9,cc8f8dbde854bd3e6ae8663949660924817bb44b
93b3315691f3e89843c8c16edb9c0b22226a51d7,b8102dcdc0e24bd7f7488ad731e330828ce32939,4546673a33b7f31056a5cde492b080b8dd56435e
afa1a549acfdfed6768edaa710258230b70e497c,65101b36dca4a4b8019f2c47944ec81e3988daae,fa9d77e67ee7235fb02b3a6c7576eee573fbc332
03b3f00a0b62488697aab90a5fe362b3053ffc59,4c6cbfe03edaced0be3e1477f48f6d7b927ba858,fd29f25bf1678ba50adb3c8af2717b6782d03b8b
87a785daa07a0375d3271102dadf105aec8e7d43,bd777877124f84665d133944b585e1708b7c7c29,ebd7bb7cb9179937428809e2337f79153ab5bcdb
11d2960db868d02757ae8810018dc661db034fe6,d362d47e88aa2dddbcd35c371a92e5014cca5a02,8a63e7ee5a34f8dfe2f412fd218dbea3d3df9e73
8360b180972a70af23e57128fe54bc0e451b481e,b46f361d91683b19af2ba8ef60826e47b2643126,2be3978bb446ced6857ab18fe0cd186f6fafe217
7d4844919bdb8776c21da2822effe27873885eaa,12616f657973a62154454c10ddf1b1396b808ca1,2f23239ebd4719b743e8b7549e30639c9479faaf
fa7d3d845b8bc4fa7335ed3f5ef73b697c35a3ec,c944484e66a3c67e92ae1a87b2329f98ea73e65a,a18e75eaffb2bea2784a87bb957205510715fe81
c9b988e146512169f283172b60cd97b278fcfcfb,60a09b65f4d23ebc2a5315cc530cf271c2b3cc58,73529f5266940b416f6c943e1c372e1a1454f034
045472a5e7e2535a449abf8f38e3888789db48dc,749c8110b6a41765f5548efa76e4565a9b7e29e7,9e710e298c5952cee4fae64d2408038cda4a1298
b2f46586bc891aeb335b4b8ddac048fa0d204cbd,aa82a2e446bfe225d41400d5784a1092ca905754,58e9d7c6477268f6e55629cbe45264631243644b
07d298d23b8216d64dedb129267a667272e49d22,2460ecb9d9918929c7b3b0e41367811072ab04fb,09b763c698a783efadecf81dbfffe6730d9fd2d0
11ac750e873d31738c2bb344e5e216192c8045e3,f3a0bdd23222cf281539ec545e4185b971e357a2,5a9021c14c39c376b2cf1967989482f0f6bdb4b0
544b58680e3afb95bcf6344daa775a431c1195cd,8386906668afeebf9a06bfd723981b23bd049a28,6347c9d03cc141ac939d09df8d90a35b70e171ce
091e86082dd1043d26fc1be9d1607ed544bb3da0,bb91dadb009f9d8032f1b1ee4c065a0d144911c8,54efcc4bbb79d54d69395782ca00019b36e3cb4c
bef4da339abfd785ccded8821539ac0f8d946bfe,52334737489c37e2e4a01ab62c982d838d64736c,e298e6eccd378a23540f95d22a0a66be14ecbc4c
32d06f2e87710cf749cab40d520a711ba044d65d,ad971df05a418d04027323d423e9527e6374955b,5bedf92bfba41350e1854b43fa9acee704f871e4
ced452e2ef37628854b945de15791f796a52d0e9,4e51973dbaa26581b29ae72d0f345382443205aa,abac7a02bde9cd0bd582e7db028474708b194709
93b8707ed31af9efa328109774c8015a8c32f087,2ec382e68cce7f7fe90c3b4c88b15af79c947d99,7b62186b9c9efddcb0114df889d5830d8634b0bd
925dc4bc7562394c8ea56c3b597c33b0051c551e,3b9035c94638156629666dcdf6e2340db5405809,d4d55f5c877064220bb13a0123e6e67df7e75237
3e9ddf59df740d12ff51122bcdcdf1ce20b0cd56,4f8d6c9df1adac8a8175bedc08f72f826245dd06,6b8ab2c4d2a6fdf412fd6e9e16288ca10c81d59c
14b40473fc2fcad52fdefa632863b7aa76bb2bf8,9e631db928b5bf3bd379830b9376b31fddc343f0,7f8591926af2de78051f2dbe91ee5d9e64a912b9
410c1bbaa0211b56076ede5ec0b2c9605c5cba62,85860f126f2afb5ae384e9cca2c19b2a278de2f9,d1af2c7007e2434f5a848b743c1b8d644fdbc5bd
44902c339b85bd855f65d40836b6aa9f5dc471a1,f0c3d69068b3e9e3156a3b89af62233ed96dc086,bb1b0cdbf0a477f81c30db8ebcd4d989c7d132a3
e339f8b66053c2a35e20e8d71d1b97d2513bd668,ddfe51415b9ce782b80d4ddbbcb94a68baeb4f21,37d107a953a30829760954daf9eaad1057648367
120303576b775f666c7e993cba9baf0296d947b3,efe414f128b6797c2b7bbed9cecdadd02242ab62,a01c20ad20a8741c20f5823dca8465e73908dcab
f77bd0226f76b7bccda774c7b09adf42384d6b00,9f7b814747deb93c7d34dcd35f46adeb895e50d5,32c3e6e844c1b305f3c3e1a5c799b7af8bc7ff38
ac6637276b67c6fe377b3566bbd28c49ae3db365,50af4d03888997a768c626627e395cdc76fcba76,7d0d909a741ab29294313af6fe1eea32bd37075a
7335f0c1d643629c539c221686fd353bdad8096f,a0f69557cc15fa9fcac56658a4cbbfa3c480385b,258b4576a27d5d086c4a5ba33f75c65992b59ecb
0e8d87bc269d3e59a174b8b4bcc84c7dbc7ff6b1,a5486e04cd7dac0acdf4efe24129736650154064,d7801027c4abb7e1a53155dba2026a8b90789791
a08ac618a4ca9c5ace5af9c3b3253f11e6aa297c,4503070f7f140a7696fd3b9ac445865b90179d84,0b24d5f92e1995fc6afe2dd72a23c8ace29bebce
87857252a46b212ac383cdd91ce6a028ed9defb1,8ebced609c453363e0168b1d3b6baff393817896,4c9f2b8b25958fb80887205ff74b3df3e4c1c056
1d95e6087a37fb9ef776e4322d351035a63ce909,87ea9a9e0f5cfbaaa4112fb07f728326214d459c,f8bf34303c62190b66f0cacd081a3c0328c13e99
76aa9b1f8b23c74a174dc436b3865b7fa5c1d7af,bc100eda4d4bb811d63a265a4f13bcce76b64fce,8b3c9e0970507bf7cddfe8946032bf9a20ba93aa
569f83e33dd158cd13c338824a8d3179228732a4,f2580efc1585bf5f3810b7b90321bfae3d7d313f,eb17e6fd2d85f700250dcbf721dd41d3bc096b55
fb7787b11eef04a5f0f136ecfe83cea67a2e8619,850685844b9a0028b7ef11b4239975ab2a61db45,0a2447a9559f579cdd225603a7a4ece9575f5c28
7ee1dea027dc045e8227822987e89db4d592584a,dab6c48b472f83e14173ee55bd3393bbd44222da,56cb11e3efbecf83b509a7709238fa55dc2c6748
6bb59c66cb311a871a7a334362edfa925dac7dc8,029ea37ed940e20e6b491649da808397bb0c96c2,eab28cdd2eb66c32f7e8d6ec186c479d3a70e519
c5f4fe28826b3018bbbff3fa1de3822b35583f3b,a1a30876d596e9bca2a5409b53b0fc637eda5dfd,9e5cdc2abeb9de41e630e3aa6fbe197b7d37c0f7
2fc71285f4f709e0ce764dae6616ae67da4056c4,9145565895b7b8ea393d1818e9c590cfa6c34cfc,71f8893366881e86e16f15dcb7a4befcd0bd6261
d38c3f8073f8e954b1e0224c5e46141eeae63da5,9cda1666a6129b613770a93799ae57b77630d6c1,af4578f8ca12acd094b39f8a263ea6cbefd3e4d5
d338206814796306ab4dc428f1a398326ee0a4df,9cbcd399b1b95b0357a7dd8964d3200f633c8cd0,a5eba4b14f51a52d4d12fa95dda1a3a920d4088e
bc17da25e17d2c3f980427e3587661da33dda827,125dc64b1eb9883711d84acfa144eb2fcd14fe87,ef4a1c74cb71abe10041522cf1aceb0c6b6d9c45
23d61350bdf694f77ccd3015274d3e24ec20f970,4f054f4097fa0e30083f6e4657867c20e031dde3,546919972600998b4d719f123473cde1d5b4b451
a5f49c1cefffcee2e9552407f428a9d01f79cac2,234a9551258b94eebed481ee535a523597cde7db,535f11886de9ddcc3bb52a38f6d7cae06e557e96
99981040483b28e0ba00379b1fa9b4b0919a731c,cee45ea6fc855ac2bf43f3c373cefb0116c238d6,05f5e9ad12d1d647bc4ea7e50619c48fc8a492d6
fba7595bb1ed577ce67c6a10ba466824e5ee0ee5,3224f2c8b5051b038a43d5a1782177913a633fe4,b56ebfa93d381940ffb31102805afee44b5ae7ba
cf50f8ede09526008682cb308d51a2997cc44d26,f1680f05b614cf57de0b89ee20675d222951fb5b,196ab9e12ff5680547f0ba3d8412cda620469390
5cfaac64d558e549fd16112ec0bf622a409262b0,4c3fae270fab5989675a0234265474f7886d50c2,b65efe2756eca2da1bcfaa7b18c8aa70b55694a5
1f74ca0d1def5111f300f824161e3eb2b42cb662,0e77ef6ebf0f9898b92aee0c8bc7a7573824b96e,cdc6ff0a30253c0745a098a89f22771f3b52b7c4
fc6c3cf487947f4fa07a7255b6e4003b1df0ae99,ffd14f449d554e9c4a8ac67cca773f47a14c9eae,e84e0a16e13a4b73192edafd2aa356254dc2ac88
6e5c5f599e5c8d12a7c8da81f949adf7f61e6916,cb0ed2b6f0f06783a77b505b08a49e817eddd56c,d07e34297f55768911c82fa9690511f7bcb07e80
21897ff46c6db3bfbf5243fe875d4bc520066ba6,b292e19862ac103fbab1fbe57b91b05dcde3337e,2780b5f830c4bfe647d985d791c9b23a8bf8495a
11cf24891dee700e81bbb9eeca61f867502f6d7b,3cec86390a07ac742c50cf0d4649608fbf09d7c4,f3c74295e26f48dbb7cb062779b0625a89a5ee0f
3f78ba87a3e5435164cc6d300186e3a6569a4510,8dcabc5796aeac40f559cfa2d56c586242100e0d,9acf1921414cef154677d7dbfa444d811e11878f
a35f66a73071c6f985bdb21fcfca4b6e9e629fcd,652f54fe315daf6508b429517c2a2d17f9eb5524,f2696ef1c8986ba154bfad475524e3450b293eaa
3d08253192da985829e5f7fdbb13c58ded3195d7,acdde37429d46c857bd11c3d2bbd613e86108e8d,5ec1ab2164ab8c1bcb664960bb626defa5f2488f
8bb8e5716eb8b2ba3574369349a0aea2b7c5ee93,c0f9878e2fbc070bbd5db68ae59daff59e6469d7,ce44efdae3c42aa8472a149cd9b93bb1d6dca00e
262904b8c1b8c64801c2a6c24153fe2497f46798,7056ec1a87daa62f01a1834404387e98db43b8a5,add67ca0e3665cdfb6bd5cf5ae1ede76b13df486
dea9aa56a718341d33a4b6257e5351156907e44f,977d123b32a0c36b86b0e91453f8573dfbdb07e3,74e24a38642b79458b6b32d311a30f0d463ce094
b5cc48bf915306623242717b56253ecdb36d48a9,3a808074339418e066d2745dd0c3c98b420db259,1df255cddfa3ecb9b48e6142b302bb28c5193510
168b158514f299c709b146d13b583d5a56c5b5d3,337fff51c5314dccc2aef497c5f963b21b4d43ca,4d8af148643005b1b5fcd548d41b1a0b91a42bfc
f0dd99c65ce8ab8fa3ad6fedeb6c369dc35c142f,ce37431a3f57ce11da4e8025a12a0eda3e651ff0,65f9c5375937ecab75962f7ac60d6bf26fd7b506
b84d32fe04fc1b8d18ea0552027a5b8cfb7b30eb,dbb0b013d69e239da8b5fff861b3b0ade0e719c0,73acc393639e81f667b6b981a7c802e306754f77
81a1447b542ff826727ebace6a954c02dbb475e5,9392e62935ceaf9acb8319ca309a7aab55ebfa81,0c3f7bb6645cc2b5122f78fcf12776a1da55ed76
b6b3cc88f864fa2caa8b609e5acabc574a5c778c,f477b94f0f6ef9fe178f9c14b6c5c6e8b70e1ebb,237e2686f1eeda775d7e6ebfab826f34da3a452e
a0878c9565e5a2912f645fc2ca29a58c418ce503,6fda6f79d8d31ac5d0014aa281e3f374c4490add,6f02e648cce588ad8dc849497baf40c16b556497
c2d76841dfe38444f78fcfd020c283ebe9937767,e78a4d3899022e6afb4b6a1bd408b29c4cf3367a,a462acdb197a0748bbddd7b96b26f00bc696c8eb
8bf8272892aa1cc7bd64d61a2a16eb0d87326325,c90503812ab85049c2dd6adfca0b7d81b3932671,859fa9fe8f4d7424b801f310751f52d3f9de2525
5f9bcc2405e1e59f5aaecde252da955b8721e757,23ac6c3090c5225812370a66b90f0a13760b301a,ddf0774575787508543d1474127c6f5ed1c91e31
f1bc31b057fa8e0947554b76fb9b890193e1ffe9,48d6f5e8a733c94399ce2629a20cf42f2bade46e,daf2dd869b5ace32867c08e89e901283ec3d6b42
5ea775dc58dfc9010ea008f6c1b89d79dcc41acd,2cec5996dfb5d06816c7ea91ac3dafdaa4f92cda,dcadafa1b87f80cf3b0feb110b5ba704ba17448a
910a70ed0d62c54ccb98ee014950ca7d347763ab,d0dd4697fa435112d9e10152a94d015bd40f0189,22c978c33fead9764e6ed6b34ad271bd8740b2db
c53e1b20d774a75aca5a52624da2618edec29bf5,73ee25071d4922d336dd4c1810d5415271b58729,276618563cb97f4689d2389b6b71b6bbecbc36b7
de5b2c519298a13ac253169ffcb6c42f99725dc9,af206dfecdfff756a0c85a01ddc6b7c14a019492,5b46c44b7d47c686996b5576c5bbfa98fda6830c
18e519963f6759ef68e90f6328e9a8902df63550,dfb401506707280f0b745e0c80891e68034e84b5,9352e09849d4ecce1f1dfae8948e864638d70e96
e2431d41ae1e88d795194838f8fa15a97d5b089a,cce871258e703b1305f77f2fbae347beab7a5f1e,db9b2a6a9563f51f8980a265dc4d5366b92e996a
ede14da4d24932f581704fd74871b041c425ae8b,2301f09d7749d3de96f2b13c9f5c919d920c0213,d6efbfb2bbee4486913eafc26e8d0d67b4d8fae4
c422c137f89fb79683924854f34161a2c1fae87e,e2c96612344ee6ecdb8abd1e977fb99a7d993526,7f9def422f1d4e7b8eb5a85a1b45c044024975f8
f6f150f857c46a09447f5b451ec9a32491677cbf,aa182cb14737fce742689f269210acfbc51e2b8d,ec8887baf22cec2dc11e211a547f470eca840680
f406c2400b1b529c74e07ccd33b265ed817fef74,82b458bf3e907c8610ff181a748c39fe54723708,6789d41671467be6e6bfd6fb0b85c07d579e5a65
c083d61c008db1afeb91f9a19df9ef91fe6d89cc,8d82a7ed6306eeb18ba01eb1c5504a91a36d6cee,8e319f567db6d9ad2ad1280052301a56c6e5ccce
609d8bef9038ab6aadd4591ab5713a9110674676,de689cccfafd050c15ffb8b88a45845caf919cd7,21d7fa4e3f17061347af332ca063a615e4e735b4
b3094cef04c5be7d78d6d64abf80a053a48a861c,f5d6f70190af189c8afc765be51a5f0ac74bd955,e020081140cb6a7a5a5358751738e694b12b4c11
2714e2d422c5f739625c8474da16e5c8527e3014,bc19c030709db2ce344f60918a8719cbe3789c37,5f54e2fa0a60fe738f1c7d27797283a9bdc42d88
045cd97d732a3730190bfce20da5af097032c5b3,f7945f9029acf50301639b3f35a2fef75c3d7499,b4ee56eef4de3c2a7881ba2bcf10e30d534d0d81
57fd2963d3902c547def049fa55387408f4f2625,69eb03c54a22b50376c65bc1bd6b9cec7c5c85b4,3a8febac35a9cac76bf50430a08076326bcc80ca
1ddcad0d22e9b04f9bebaeff063afbd3109f3386,196a2c3331cab57351594d5750b54ddae846917e,e8ffed0b3708bf52e770221af94813ad7c834fbb
0871271ee228b85184e7edffd9b842cb6063a9f8,b896b99069f297d944a50842ef99ee4e6cc8f0aa,d2891dbc13f2b86c3df492a455b68391b6a0baab
c5a82f52c3bddcd8c74c8d17691227097ce00f05,f1d800af0dc784e4d3256b6a0e75b72d064ebc4a,baecc97270587fe67cd5e94ec78b91739b5244c1
019cf17a69a889a47c313093e080fbaaada86042,6acc7f1c858a893ef36a054d197b3e89d0a1cab4,f7102d217930b362911575057fd8eac218a1eb5c
561739478e683252ae4f4efb82eb6b5de32c8aeb,49327da10b0e9b8212c17ce2bda907698dbe202b,794bf30ad61f7162b738758a5248a1183bbc6cd9
Clicking a revision will expand files
- Switch to block-based processing of http-content
* Parse the ContentType according to rfc1341
* Fixed processing post-content of unknown content-types
* Fixed mime-multipart processing for solutions that do
not support chunked processing of content. (like CGI)
* Parse the contenttype according to rfc1341 also for non-streaming
processing
TFPCustomHttpServer KeepAlive* properties
TFPCustomHttpServer KeepAlive* properties
Read out KeepAlive only if enabled
Read out KeepAlive only if enabled
Rename KeepAliveSupport->KeepAliveEnabled
Rename KeepAliveSupport->KeepAliveEnabled
add threadedhttpserver demo
add threadedhttpserver demo
Remove the KeepAlive* properties from TFPCustomHttpServer, rename KeepAliveEnabled to EnableKeepAlive
Remove the KeepAlive* properties from TFPCustomHttpServer, rename KeepAliveEnabled to EnableKeepAlive
Info about active connections
Info about active connections
Use InterlockedExchangeAdd to get ConnectionCount
Fix TFPHTTPConnectionThread.Execute repeat loop
Fix TFPHTTPConnectionThread.Execute repeat loop
don't keep alive connections that failed
don't keep alive connections that failed
fphttpclient keepalive: failed socket operations raise exceptions - try to reconnect also in this case
Move GetStatusCode from fphttpserver.pp to httpprotocol.pp in order to use it outside fphttpserver
*http client: rewind RequestBody in SendRequest
TFPHTTPConnection: clear FBuffer when read from it in ReadRequestContent
fphttpclient: new DoDataWrite/OnDataSent event
TFPCustomHTTPClient: do not reconnect when terminated
* Some command-line options
* Request ID and connection ID for logging purposes
* Add interceptor (middleware) functionality to router + Demo
* Make sure size is set after return
* 64-bit ID for 64-bit platforms
* destroy FList in the destructor of TFPHTTPServerConnectionListHandler
* Use FreeAndNil to clear field
* fphttpclient: add new OnIdle event to keep the client responsive in case the server needs a lot of time to respond (and to be able to terminate the request while waiting for data)
* fphttpclient: add new OnIdle event to keep the client responsive in case the server needs a lot of time to respond (and to be able to terminate the request while waiting for data)
* fphttpclient: add new OnIdle event to keep the client responsive in case the server needs a lot of time to respond (and to be able to terminate the request while waiting for data)
* http client: KeepConnectionReconnectLimit to prevent a dead-lock when a server is not available
* check for LastError coming from CanRead()
* More clear variable names
* don't execute DoBeforeDataRead unless OnIdle is set
* Update handler functionality
* Better SetfieldByName/GetFieldByName
* Add http client pool from Ondrej Pokorny
fphttpclient: remove OnIdle and add protected methods so that the feature can be added in a descendant
fcl-web: example missing semicolon and gitignore linux bin
* Use FPC server by default
* Remove module, move module before default
* SetStatus convenience call
* Uppercase argument for GetHTTPStatusText
* Allow to move routes, make route management thread-safe
* Improved solution for issue
gitlab 0038435, json helpers for http request/response
* location management API
* Enable location management API
* New keywords for ECMA2021
* const and let statements
* initialize Result variable of THTTPSysHandler.WaitForRequest
+ implement support for terminating a HTTPSys web service handler that's blocking inside WaitForRequest
* move freeing of the event log to a separate, virtual method so that this can be changed depending on the needs of TCustomWebApplication.CreateEventLog (e.g. when using a TCustomWebApplication descendant together with a TDaemonApplication)
* fix memory leak in TFPPooledConnectionHandler
* Make some properties public
* Allow to specify IP address
* Parse cookies also when setting variable based on name
fcl-js: fixed stackoverflow when freeing long binary list
fcl-js: fixed TJSWriter.WriteExportStatement spacing
* typescript parsing & conversion, initial commit
* TypeScript Improvements, 97% of DefinitelyTyped declarations now parsed
* Publish handler resulttype, add OnContextExecute
* RPC Client code generator (also in pas2js)
* Add RPCMethodName property
* Fix registry search for method name
* Create API description as Pascal
* Fix memleak and compiler hints
* Position stream on start
* Some fixes & improvements
* Initialize APIRequestName
* Move resourcestrings to single unit
* Some clarifying comments
* Some clarifying comments
* Some cleanup, add file headers
Checking the protocol version for websocket is not required on the client side.
* DefinitelyTyped now converts
Added a connection event when clients connect to the server.
The disconnect event is now called once instead of three.
Fixed error if payload = 0
* Use resource strings, add const to string params where appropriate
* Fix warnings & hints, use resourcestrings, add const where appropriate
Typecasting to int64 type fixes the exception.
Added reason for closing the connection.
* Patch from Yuri Silver to read data correctly. fix issue 39517
Websocket server correct work with Ping Pong
Added reaction for incorrect reserved bits.
Added processing of reserved opcodes.
Control message must not be fragmented.
Fixed fragmentation of incoming messages.
UTF-8 support for message.
All Autobahn testsuite tests passed
Added missing units for websocket client example
Client support of HTTP over unix socket
fphttpclient - only handle Unix in conditional compilation for UnixSocketPath feature
Fix memory leak - avoid handler allocation when not needed
fcl-js: switched to TypedParams
In case of incorrect shutdown of the client. The buffer may return =0. There will be an exception.
Fix leak due to bad merge or rebase
* Normalize route when checking for duplicate routes. Fix issue
gitlab 0039570
fcl-js: fixed compile with pas2js
fcl-web: added IWSTransport.PeerPort, fixed compile with fpc 3.2.2
fcl-web: added property TWebSocketServer.Host
* Added some clarifying comments for TWSMessage data
* Publish OnError and OnConnectionHandshake
fcl-web: added TJWTSignerRS256
fcl-web: added TJWTSignerRS384, TJWTSignerRS512
fcl-web: RS256 using sign/verify
fcl-web: TJWTSignerRSA: prefix hash with ASN1 digest info
fcl-web: TJWTSignerPS256, TJWTSignerPS384, TJWTSignerPS512
fcl-web: fpjwarsa: catch exceptions during verification
* Example for RSA signing
pastojs: started TPasElement free instead of refence count
* OnDisconnect before disconnecting objects
* OnDisconnect before disconnecting objects (cleanup). Fix issue
gitlab 0039780
* Free extra headers after disconnect
* OnDisconnect called too often
* need to pass connection. Do not call disconnect event twice
* Actually write error message if there is one
Fix error getting payload when receiving a close command.
* Add Cross-Origin Isolation headers
Added SSL support for Websocket client.
* Use default handler for SSL sockets
* Remove dependency on fpopenssl unit
fcl-web: TCustomWSServer.RemoveConnection: call DoDisconnect on disconnect
fcl-web: TCustomWSServer.OnDisconnect: pass TCustomWebsocketClient as Sender instead of connection
fcl-web: fixed TCustomWebsocketClient.FreeConnectionObjects
* Fix from Kevin Jesshope to correct filename detection in CGI app
* Fix from Kevin Jesshope to fix concurrent access in case of CGI
* Call CheckSession before handling request, but after handling CORS
* Patch from Luca Olivetti to fix memleak in CORS support. Fixes issue
gitlab 0039886
fcl-web: TWSServerConnection.HandshakeResponseSent propagates result
* Fix memleak in case of error.
fcl-web: fixed crash in websocket server on windows when closing when already disconnected
* Added debugcapture route
* Fix handling of options file
* Publish all available & needed properties
use function references for callbacks + change TNotifyEvent to TFPHTTPClientPoolSimpleCallback
both callback interfaces: classic events and function references
* simplify implementation (almost) without touching the public interface
* make function references an option to classic events
httpserver: add KeepConnectionIdleTimeout property and OnKeepConnectionIdle event. Fix KeepConnectionTimeout to match the meaning from the comment and the name
disable KeepAlive flag in CloseConnectionSocket to close hanging keep-alive connections
async pool: procedure references simpler
* Allow to specify DB connection params on command-line
* Modifier for allowed schemas
* Version number for compatibility with lazarus webserver
fphttpclient allow to override supported protocols from url
* Obey -p/--port command-line option
* Patch from Andrew Haines to actually pass OutgoingFrameMask to frames. Add woSendErrClosesConn flag
* Patch from Andrew Haines: do not send close connection message if already closed
* Sample program from Andrew Haines to test echo servers
* RFC states that client must use mask: enforce mask on connect
* Fix missing fields in TSQLDBRestResource.Assign
* Add PATCH method to router
The test for '' after getting the location into BaseDir should test BaseDir not BaseURL.
* Fix dynamic array (managed types) handling in restbase.pp (Ref
gitlab 0040094)
Fixes code in method TBaseObject.SetArrayProperty
and removes private method SetArrayElements
This fixes AVs and memory leaks.
* more fixes to googleapiconv (ref
gitlab 0040094)
(googlediscoverytopas)
-Fix unit clause and "uses" for generated units
(googleapiconv)
-Add --version parameter
-Fix logging messages
-Set OutputUnitName so units have correct clause
(restbase)
-Add #todo notes for follow up
-Move function RFC3339ToDateTime next to related functions
* Remove conditional code for compiling googleapiconv with v2.6.4 on i386
(restbase.pp)
- Remove {$ifdef ver2_6} directives and associated code
- Remove {$ifndef ver2_6} directives (but keep code)
(googleapiconv.pp)
- Remove {$ifdef ver2_6} directives and associated code
- Remove synapse defines and associated code line
(googlediscoverytopas.pp)
- Remove {$ifdef ver2_6} directives and associated code
* More fixes and cleanups in restbase.pp (googleapiconv)
- Move test functions out of class to local procedures and into
{$IFDEF DUMPARRAY} and change the parameters to match the rtl versions:
function GetDynArrayProp(P: PPropInfo) : Pointer; virtual;
procedure SetDynArrayProp(P: PPropInfo; AValue : Pointer); virtual;
- Add dyn arrays support to the ClearProperties method
- In SetArrayProperty, fix previous commit (fba7595b) because the
array properties were not being set and make the dyn array handling
code more typesafe.
- In SetObjectProperty use TObjectArray instead of Pointer to make the
dyn array handling code more typesafe.
- In ClearChildren use ClearProperty to do the work and simplify the code.
- Fix some compiler warnings and hints.
* Adapt fcl-web (and examples) to unicode rtl: Need widestringmanager, use echo as path, make runnable.
* Fix compilation with unicode rtl
* Fixes in PChar -> PansiChar
* Set result correctly in TCORSSupport.HandleRequest
* Avoid error by checking if content was already sent
* Create container with unique name, improve thread-safety
* Different PUT/PATCH. Allow legacy PUT
* Completion of put/patch split
* Correct params checking in case of array
* Fix interlockedincrement
fcl-web: gitignore for linux
fcl-web: simpleserver: fixed parsing config file
fcl-web: moved OnLog from TSimpleFileModule to TFPCustomFileModule
fcl-js: fixed writing small floats
* Dotted filenames for package fcl-js
* Dotted filenames for package fcl-web
* Fix default classname property
* Add possibility to read updated data
* Add support for select query parameters
* Some changes suggested by Edgar Fernando
* Add HTTP logging mechanism
* JSON-RPC 2.0 allows params to be optional
fcl-web: fixed av on logging TFPHTTPConnection.DoHandleRequest
httpserver: make sure that socket is freed even if StartServerSocket raised an exception
fcl-web: made TFPCustomHTTPServer.CreateUpgradeHandlerList virtual
fcl-web: added TCustomWebsocketUpgrader.OnConnect
fcl-web: TWSFramePayload.ReadData: check for endless loop and wait for new data
* .compiled files should not be checked in
fcl-net: fixed memleak in TFPThreadedConnectionHandler
fcl-web: TWSThreadedConnectionHandler.TWSConnectionThread.Execute: fixed handling exception
Changed the JS Writter to avoid access violation in the buffer.
* Undo wrongly added file
* Make sure it compiles with FPC 3.2.2 for pas2js...
* Some fixes for compilation with unicodertl (new methods after merge)
* Add possibility to return empty dataset instead of 404, add event to refine WHERE Clause in code
* Support for content-disposition: attachment
* Trigger OnHeaders after responsestatuscode is set. Fixes issue
gitlab 0040419
* Allow event handlers to modify input
* Correctly initialize some variables to avoid AV
fcl-js: fixed EscapeString for surrogates
* Patch from Dokkie8844 to ease implementation of certificate verification. Fixes issue
gitlab 0040480
* Debug capture separated out
* Use class instead of classname
fix EncodeURLElement string types
* Ensure code compiles with 3.2.2
fcl-js: fixed TBufferWriter on nodejs
* Some fixes in code generation
* Fix typo in enumeration value rloHTTP
* Make paramdefs owned, so IDE can trace back changes to owning component
* Avoid index out of bounds error
fcl-js: parse power token
* Write correct number of characters to log file
* Add FCM push notifications
* CLI example for FCM push messages
* Fixed namespaced compilation, rename sender to client to be in line with class name
HTTPClient: check for changed host/port for KeepConnection
* Correctly unregister all routes. Do not call register routes when already registered
* Print clickable URL with start location
* Make sure sentences end on point when needed.
Fixed work in ThreadMode := wtmNone mode.
For connections list TThreadList changed to safe TFPHashList.
* Fix compilation under unicode rtl
fcl-js: escape unicode whitespaces in string literals
+ Allow customization of response through callback
+ Allow customization of response through custom headers
+ Log error conditions (403,400,404)
* Show info in a more structured way
* Allow to compile with FPC 3.2.2
* Fix --coi option.
* Allow to specify custom response headers in config file [Headers] section
* Move simple server to unit so it can be reused (pas2js webcompiler)
* Rename version constant
* Add request ID handling and callback-based result
* OpenAPI helper units and classes
* OpenAPI support for SQLDBRest
* Patch from Andrew Haines to fix creating signature. Fixes issue
gitlab 0041058
- remove what appears to be debug output (will otherwise lead to exceptions on systems where Output is not open (e.g. Windows service))
fix KeepConnectionTimeout loop
The EHTTPClient class now implements an overloaded constructor that accepts both an error message and an associated HTTP status code, enabling retrieval of the HTTP error code when an exception occurs.
* Do not return empty fieldlist when generating SQL
* Fix case where 2 modules with same name are created at the same time (threading)
* Allow to set content stream on request
* Allow to send stream body
* Allow both body/response to be streams
* Accidentally reversed condition...
* Manually apply merge request !570
* Improve on ideas of merge request !570
Httpserver: make formsplit also work with chars before the start marker
* Parse HTTP date function
* Correctly handle returned cookies
* Add RequestHeaders for ease of use
* Fix http routing params
* Fixes + Add AddRequestHeader
* Add support for Server-Sent Events
TFPCustomHttpServer: protected property Server
* Proptype float gets priority
* Wait till pump thread stops, do not use checksynchronize. Fixes issue
gitlab 0041569
* CLose socket when ending eventstream
* When using thread pool, we cannot wait infinitely for data. Handle keepalive timeout as well. Fixes issue
gitlab 0039982
Web: Fixed compilation of "CmdClient" example on Windows with the "cwstring" unit
Fix for unicode compilation.
* Correctly initialize URL/URI from variables. Fixes issue
gitlab 0040246
* Remove unused statements
Revisions in bigsets in this set 55d33aa6a777625baa79f3368459f60ed1abd754